diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index ef33d93c..0acf1c15 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -659,7 +659,7 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/ReactCommon/yoga" SPEC CHECKSUMS: - boost: 57d2868c099736d80fcd648bf211b4431e51a558 + boost: 7dcd2de282d72e344012f7d6564d024930a6a440 CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54 FBLazyVector: dc178b8748748c036ef9493a5d59d6d1f91a36ce @@ -692,7 +692,7 @@ SPEC CHECKSUMS: React-jsiexecutor: 5a169b1dd1abad06bed40ab7e1aca883c657d865 React-jsinspector: 54205b269da20c51417e0fc02c4cde9f29a4bf1a React-logger: f42d2f2bc4cbb5d19d7c0ce84b8741b1e54e88c8 - react-native-live-markdown: 5722e2203fc2fab86dcb50fdaef92ca8b6c0fdec + react-native-live-markdown: 5df7530c7b987508b8634cee2c09092657e47021 React-NativeModulesApple: 9f72feb8a04020b32417f768a7e1e40eec91fef4 React-perflogger: cb433f318c6667060fc1f62e26eb58d6eb30a627 React-RCTActionSheet: 0af3f8ac067e8a1dde902810b7ad169d0a0ec31e diff --git a/example/src/App.tsx b/example/src/App.tsx index 6d14c907..39aae5be 100644 --- a/example/src/App.tsx +++ b/example/src/App.tsx @@ -53,8 +53,15 @@ function getReactNativeVersion() { return `${major}.${minor}.${patch}`; } +function getRandomColor() { + return `#${Math.floor(Math.random() * 16777215) + .toString(16) + .padStart(6, '0')}`; +} + export default function App() { const [value, setValue] = React.useState(DEFAULT_TEXT); + const [markdownStyle, setMarkdownStyle] = React.useState({}); // TODO: use MarkdownTextInput ref instead of TextInput ref const ref = React.useRef<TextInput>(null); @@ -89,6 +96,8 @@ export default function App() { onChangeText={setValue} style={styles.input} ref={ref} + markdownStyle={markdownStyle} + placeholder="Type here..." /> {/* <Text>TextInput singleline</Text> <TextInput @@ -126,12 +135,25 @@ export default function App() { /> <Button title="Reset" - onPress={() => setValue(DEFAULT_TEXT)} + onPress={() => { + setValue(DEFAULT_TEXT); + setMarkdownStyle({}); + }} /> <Button title="Clear" onPress={() => setValue('')} /> + <Button + title="Change style" + onPress={() => + setMarkdownStyle({ + link: { + color: getRandomColor(), + }, + }) + } + /> </View> ); } diff --git a/package.json b/package.json index c9160512..b2dcd6a7 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "lint:parser": "eslint parser --ext .js,.ts,.tsx", "lint:web": "eslint WebExample --ext .js,.ts,.tsx", "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib", - "prepare": "bob build", + "prepare": "bob build && mkdir -p lib/parser && cp parser/react-native-live-markdown-parser.js lib/parser/react-native-live-markdown-parser.js", "release": "release-it" }, "keywords": [ @@ -85,11 +85,13 @@ "eslint-plugin-promise": "^6.1.1", "eslint-plugin-tsdoc": "^0.2.17", "jest": "^28.1.1", + "jest-environment-jsdom": "^29.7.0", "pod-install": "^0.1.0", "prettier": "^2.0.5", "react": "18.2.0", "react-native": "0.72.9", "react-native-builder-bob": "^0.20.0", + "react-native-web": "^0.19.10", "release-it": "^15.0.0", "turbo": "^1.10.7", "typescript": "^5.3.3" @@ -113,7 +115,8 @@ "modulePathIgnorePatterns": [ "<rootDir>/example/node_modules", "<rootDir>/lib/" - ] + ], + "testEnvironment": "jsdom" }, "commitlint": { "extends": [ diff --git a/parser/__tests__/index.test.js b/parser/__tests__/index.test.js index e9eece68..daf9baa6 100644 --- a/parser/__tests__/index.test.js +++ b/parser/__tests__/index.test.js @@ -173,43 +173,43 @@ test('codeblock', () => { describe('blockquote', () => { test('with single space', () => { expect('> Hello world!').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 14], + ['syntax', 0, 1], ]); }); test('with multiple spaces', () => { expect('> Hello world!').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 19], + ['syntax', 0, 1], ]); }); test('without space', () => { expect('>Hello world!').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 13], + ['syntax', 0, 1], ]); }); }); test('multiple blockquotes', () => { expect('> Hello\n> beautiful\n> world').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 7], - ['syntax', 8, 1], + ['syntax', 0, 1], ['blockquote', 8, 11], - ['syntax', 20, 1], + ['syntax', 8, 1], ['blockquote', 20, 7], + ['syntax', 20, 1], ]); }); test('separate blockquotes', () => { expect('> Lorem ipsum\ndolor\n> sit amet').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 13], - ['syntax', 20, 1], + ['syntax', 0, 1], ['blockquote', 20, 10], + ['syntax', 20, 1], ]); }); @@ -223,14 +223,14 @@ test('h1', () => { test('nested bold and italic', () => { expect('*_Hello_*, _*world*_!').toBeParsedAs([ ['syntax', 0, 1], - ['syntax', 1, 1], ['bold', 1, 7], + ['syntax', 1, 1], ['italic', 2, 5], ['syntax', 7, 1], ['syntax', 8, 1], ['syntax', 11, 1], - ['syntax', 12, 1], ['italic', 12, 7], + ['syntax', 12, 1], ['bold', 13, 5], ['syntax', 18, 1], ['syntax', 19, 1], @@ -240,8 +240,8 @@ test('nested bold and italic', () => { describe('nested h1 in blockquote', () => { test('without spaces', () => { expect('># Hello world').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 14], + ['syntax', 0, 1], ['syntax', 1, 2], ['h1', 3, 11], ]); @@ -249,8 +249,8 @@ describe('nested h1 in blockquote', () => { test('with single space', () => { expect('> # Hello world').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 15], + ['syntax', 0, 1], ['syntax', 2, 2], ['h1', 4, 11], ]); @@ -258,8 +258,8 @@ describe('nested h1 in blockquote', () => { test('with multiple spaces after #', () => { expect('># Hello world').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 17], + ['syntax', 0, 1], ['syntax', 1, 2], ['h1', 3, 14], ]); @@ -270,22 +270,22 @@ describe('trailing whitespace', () => { describe('after blockquote', () => { test('nothing', () => { expect('> Hello world').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 13], + ['syntax', 0, 1], ]); }); test('single space', () => { expect('> Hello world ').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 14], + ['syntax', 0, 1], ]); }); test('newline', () => { expect('> Hello world\n').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 13], + ['syntax', 0, 1], ]); }); }); @@ -321,12 +321,12 @@ describe('trailing whitespace', () => { test('multiple blockquotes', () => { expect('> # Hello\n> # world').toBeParsedAs([ - ['syntax', 0, 1], ['blockquote', 0, 9], + ['syntax', 0, 1], ['syntax', 2, 2], ['h1', 4, 5], - ['syntax', 10, 1], ['blockquote', 10, 9], + ['syntax', 10, 1], ['syntax', 12, 2], ['h1', 14, 5], ]); diff --git a/parser/index.ts b/parser/index.ts index f15c85bc..a004b52e 100644 --- a/parser/index.ts +++ b/parser/index.ts @@ -159,8 +159,21 @@ function parseTreeToTextAndRanges(tree: StackItem): [string, Range[]] { return [text, ranges]; } +// getTagPriority returns a priority for a tag, higher priority means the tag should be processed first +function getTagPriority(tag: string) { + switch (tag) { + case 'blockquote': + return 2; + case 'h1': + return 1; + default: + return 0; + } +} + function sortRanges(ranges: Range[]) { - return ranges.sort((a, b) => a[1] - b[1]); // sort by location to properly handle bold+italic + // sort ranges by start position, then by length, then by tag hierarchy + return ranges.sort((a, b) => a[1] - b[1] || b[2] - a[2] || getTagPriority(b[0]) - getTagPriority(a[0]) || 0); } function parseExpensiMarkToRanges(markdown: string): Range[] { diff --git a/parser/react-native-live-markdown-parser.js b/parser/react-native-live-markdown-parser.js index 8d4956fc..3d7bd4c2 100644 --- a/parser/react-native-live-markdown-parser.js +++ b/parser/react-native-live-markdown-parser.js @@ -1,20 +1,20 @@ -"use strict";(()=>{var Sl=Object.create;var Dt=Object.defineProperty;var Ol=Object.getOwnPropertyDescriptor;var Nl=Object.getOwnPropertyNames;var Il=Object.getPrototypeOf,Rl=Object.prototype.hasOwnProperty;var m=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),Tl=(r,e)=>{for(var t in e)Dt(r,t,{get:e[t],enumerable:!0})},bl=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Nl(e))!Rl.call(r,a)&&a!==t&&Dt(r,a,{get:()=>e[a],enumerable:!(o=Ol(e,a))||o.enumerable});return r};var Ga=(r,e,t)=>(t=r!=null?Sl(Il(r)):{},bl(e||!r||!r.__esModule?Dt(t,"default",{value:r,enumerable:!0}):t,r));var xn=m(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.bodyRegExps={xml:/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g,html4:/∉|&(?:nbsp|iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|Atilde|Auml|Aring|AElig|Ccedil|Egrave|Eacute|Ecirc|Euml|Igrave|Iacute|Icirc|Iuml|ETH|Ntilde|Ograve|Oacute|Ocirc|Otilde|Ouml|times|Oslash|Ugrave|Uacute|Ucirc|Uuml|Yacute|THORN|szlig|agrave|aacute|acirc|atilde|auml|aring|aelig|ccedil|egrave|eacute|ecirc|euml|igrave|iacute|icirc|iuml|eth|ntilde|ograve|oacute|ocirc|otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|yuml|quot|amp|lt|gt|#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g,html5:/·|℗|⋇|⪧|⩺|⋗|⦕|⩼|⪆|⥸|⋗|⋛|⪌|≷|≳|⪦|⩹|⋖|⋋|⋉|⥶|⩻|⦖|◃|⊴|◂|∉|⋹̸|⋵̸|∉|⋷|⋶|∌|∌|⋾|⋽|∥|⊠|⨱|⨰|&(?:AElig|AMP|Aacute|Acirc|Agrave|Aring|Atilde|Auml|COPY|Ccedil|ETH|Eacute|Ecirc|Egrave|Euml|GT|Iacute|Icirc|Igrave|Iuml|LT|Ntilde|Oacute|Ocirc|Ograve|Oslash|Otilde|Ouml|QUOT|REG|THORN|Uacute|Ucirc|Ugrave|Uuml|Yacute|aacute|acirc|acute|aelig|agrave|amp|aring|atilde|auml|brvbar|ccedil|cedil|cent|copy|curren|deg|divide|eacute|ecirc|egrave|eth|euml|frac12|frac14|frac34|gt|iacute|icirc|iexcl|igrave|iquest|iuml|laquo|lt|macr|micro|middot|nbsp|not|ntilde|oacute|ocirc|ograve|ordf|ordm|oslash|otilde|ouml|para|plusmn|pound|quot|raquo|reg|sect|shy|sup1|sup2|sup3|szlig|thorn|times|uacute|ucirc|ugrave|uml|uuml|yacute|yen|yuml|#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g};it.namedReferences={xml:{entities:{"<":"<",">":">",""":'"',"'":"'","&":"&"},characters:{"<":"<",">":">",'"':""","'":"'","&":"&"}},html4:{entities:{"'":"'"," ":"\xA0"," ":"\xA0","¡":"\xA1","¡":"\xA1","¢":"\xA2","¢":"\xA2","£":"\xA3","£":"\xA3","¤":"\xA4","¤":"\xA4","¥":"\xA5","¥":"\xA5","¦":"\xA6","¦":"\xA6","§":"\xA7","§":"\xA7","¨":"\xA8","¨":"\xA8","©":"\xA9","©":"\xA9","ª":"\xAA","ª":"\xAA","«":"\xAB","«":"\xAB","¬":"\xAC","¬":"\xAC","­":"\xAD","­":"\xAD","®":"\xAE","®":"\xAE","¯":"\xAF","¯":"\xAF","°":"\xB0","°":"\xB0","±":"\xB1","±":"\xB1","²":"\xB2","²":"\xB2","³":"\xB3","³":"\xB3","´":"\xB4","´":"\xB4","µ":"\xB5","µ":"\xB5","¶":"\xB6","¶":"\xB6","·":"\xB7","·":"\xB7","¸":"\xB8","¸":"\xB8","¹":"\xB9","¹":"\xB9","º":"\xBA","º":"\xBA","»":"\xBB","»":"\xBB","¼":"\xBC","¼":"\xBC","½":"\xBD","½":"\xBD","¾":"\xBE","¾":"\xBE","¿":"\xBF","¿":"\xBF","À":"\xC0","À":"\xC0","Á":"\xC1","Á":"\xC1","Â":"\xC2","Â":"\xC2","Ã":"\xC3","Ã":"\xC3","Ä":"\xC4","Ä":"\xC4","Å":"\xC5","Å":"\xC5","Æ":"\xC6","Æ":"\xC6","Ç":"\xC7","Ç":"\xC7","È":"\xC8","È":"\xC8","É":"\xC9","É":"\xC9","Ê":"\xCA","Ê":"\xCA","Ë":"\xCB","Ë":"\xCB","Ì":"\xCC","Ì":"\xCC","Í":"\xCD","Í":"\xCD","Î":"\xCE","Î":"\xCE","Ï":"\xCF","Ï":"\xCF","Ð":"\xD0","Ð":"\xD0","Ñ":"\xD1","Ñ":"\xD1","Ò":"\xD2","Ò":"\xD2","Ó":"\xD3","Ó":"\xD3","Ô":"\xD4","Ô":"\xD4","Õ":"\xD5","Õ":"\xD5","Ö":"\xD6","Ö":"\xD6","×":"\xD7","×":"\xD7","Ø":"\xD8","Ø":"\xD8","Ù":"\xD9","Ù":"\xD9","Ú":"\xDA","Ú":"\xDA","Û":"\xDB","Û":"\xDB","Ü":"\xDC","Ü":"\xDC","Ý":"\xDD","Ý":"\xDD","Þ":"\xDE","Þ":"\xDE","ß":"\xDF","ß":"\xDF","à":"\xE0","à":"\xE0","á":"\xE1","á":"\xE1","â":"\xE2","â":"\xE2","ã":"\xE3","ã":"\xE3","ä":"\xE4","ä":"\xE4","å":"\xE5","å":"\xE5","æ":"\xE6","æ":"\xE6","ç":"\xE7","ç":"\xE7","è":"\xE8","è":"\xE8","é":"\xE9","é":"\xE9","ê":"\xEA","ê":"\xEA","ë":"\xEB","ë":"\xEB","ì":"\xEC","ì":"\xEC","í":"\xED","í":"\xED","î":"\xEE","î":"\xEE","ï":"\xEF","ï":"\xEF","ð":"\xF0","ð":"\xF0","ñ":"\xF1","ñ":"\xF1","ò":"\xF2","ò":"\xF2","ó":"\xF3","ó":"\xF3","ô":"\xF4","ô":"\xF4","õ":"\xF5","õ":"\xF5","ö":"\xF6","ö":"\xF6","÷":"\xF7","÷":"\xF7","ø":"\xF8","ø":"\xF8","ù":"\xF9","ù":"\xF9","ú":"\xFA","ú":"\xFA","û":"\xFB","û":"\xFB","ü":"\xFC","ü":"\xFC","ý":"\xFD","ý":"\xFD","þ":"\xFE","þ":"\xFE","ÿ":"\xFF","ÿ":"\xFF",""":'"',""":'"',"&":"&","&":"&","<":"<","<":"<",">":">",">":">","Œ":"\u0152","œ":"\u0153","Š":"\u0160","š":"\u0161","Ÿ":"\u0178","ˆ":"\u02C6","˜":"\u02DC"," ":"\u2002"," ":"\u2003"," ":"\u2009","‌":"\u200C","‍":"\u200D","‎":"\u200E","‏":"\u200F","–":"\u2013","—":"\u2014","‘":"\u2018","’":"\u2019","‚":"\u201A","“":"\u201C","”":"\u201D","„":"\u201E","†":"\u2020","‡":"\u2021","‰":"\u2030","‹":"\u2039","›":"\u203A","€":"\u20AC","ƒ":"\u0192","Α":"\u0391","Β":"\u0392","Γ":"\u0393","Δ":"\u0394","Ε":"\u0395","Ζ":"\u0396","Η":"\u0397","Θ":"\u0398","Ι":"\u0399","Κ":"\u039A","Λ":"\u039B","Μ":"\u039C","Ν":"\u039D","Ξ":"\u039E","Ο":"\u039F","Π":"\u03A0","Ρ":"\u03A1","Σ":"\u03A3","Τ":"\u03A4","Υ":"\u03A5","Φ":"\u03A6","Χ":"\u03A7","Ψ":"\u03A8","Ω":"\u03A9","α":"\u03B1","β":"\u03B2","γ":"\u03B3","δ":"\u03B4","ε":"\u03B5","ζ":"\u03B6","η":"\u03B7","θ":"\u03B8","ι":"\u03B9","κ":"\u03BA","λ":"\u03BB","μ":"\u03BC","ν":"\u03BD","ξ":"\u03BE","ο":"\u03BF","π":"\u03C0","ρ":"\u03C1","ς":"\u03C2","σ":"\u03C3","τ":"\u03C4","υ":"\u03C5","φ":"\u03C6","χ":"\u03C7","ψ":"\u03C8","ω":"\u03C9","ϑ":"\u03D1","ϒ":"\u03D2","ϖ":"\u03D6","•":"\u2022","…":"\u2026","′":"\u2032","″":"\u2033","‾":"\u203E","⁄":"\u2044","℘":"\u2118","ℑ":"\u2111","ℜ":"\u211C","™":"\u2122","ℵ":"\u2135","←":"\u2190","↑":"\u2191","→":"\u2192","↓":"\u2193","↔":"\u2194","↵":"\u21B5","⇐":"\u21D0","⇑":"\u21D1","⇒":"\u21D2","⇓":"\u21D3","⇔":"\u21D4","∀":"\u2200","∂":"\u2202","∃":"\u2203","∅":"\u2205","∇":"\u2207","∈":"\u2208","∉":"\u2209","∋":"\u220B","∏":"\u220F","∑":"\u2211","−":"\u2212","∗":"\u2217","√":"\u221A","∝":"\u221D","∞":"\u221E","∠":"\u2220","∧":"\u2227","∨":"\u2228","∩":"\u2229","∪":"\u222A","∫":"\u222B","∴":"\u2234","∼":"\u223C","≅":"\u2245","≈":"\u2248","≠":"\u2260","≡":"\u2261","≤":"\u2264","≥":"\u2265","⊂":"\u2282","⊃":"\u2283","⊄":"\u2284","⊆":"\u2286","⊇":"\u2287","⊕":"\u2295","⊗":"\u2297","⊥":"\u22A5","⋅":"\u22C5","⌈":"\u2308","⌉":"\u2309","⌊":"\u230A","⌋":"\u230B","⟨":"\u2329","⟩":"\u232A","◊":"\u25CA","♠":"\u2660","♣":"\u2663","♥":"\u2665","♦":"\u2666"},characters:{"'":"'","\xA0":" ","\xA1":"¡","\xA2":"¢","\xA3":"£","\xA4":"¤","\xA5":"¥","\xA6":"¦","\xA7":"§","\xA8":"¨","\xA9":"©",\u00AA:"ª","\xAB":"«","\xAC":"¬","\xAD":"­","\xAE":"®","\xAF":"¯","\xB0":"°","\xB1":"±","\xB2":"²","\xB3":"³","\xB4":"´",\u00B5:"µ","\xB6":"¶","\xB7":"·","\xB8":"¸","\xB9":"¹",\u00BA:"º","\xBB":"»","\xBC":"¼","\xBD":"½","\xBE":"¾","\xBF":"¿",\u00C0:"À",\u00C1:"Á",\u00C2:"Â",\u00C3:"Ã",\u00C4:"Ä",\u00C5:"Å",\u00C6:"Æ",\u00C7:"Ç",\u00C8:"È",\u00C9:"É",\u00CA:"Ê",\u00CB:"Ë",\u00CC:"Ì",\u00CD:"Í",\u00CE:"Î",\u00CF:"Ï",\u00D0:"Ð",\u00D1:"Ñ",\u00D2:"Ò",\u00D3:"Ó",\u00D4:"Ô",\u00D5:"Õ",\u00D6:"Ö","\xD7":"×",\u00D8:"Ø",\u00D9:"Ù",\u00DA:"Ú",\u00DB:"Û",\u00DC:"Ü",\u00DD:"Ý",\u00DE:"Þ",\u00DF:"ß",\u00E0:"à",\u00E1:"á",\u00E2:"â",\u00E3:"ã",\u00E4:"ä",\u00E5:"å",\u00E6:"æ",\u00E7:"ç",\u00E8:"è",\u00E9:"é",\u00EA:"ê",\u00EB:"ë",\u00EC:"ì",\u00ED:"í",\u00EE:"î",\u00EF:"ï",\u00F0:"ð",\u00F1:"ñ",\u00F2:"ò",\u00F3:"ó",\u00F4:"ô",\u00F5:"õ",\u00F6:"ö","\xF7":"÷",\u00F8:"ø",\u00F9:"ù",\u00FA:"ú",\u00FB:"û",\u00FC:"ü",\u00FD:"ý",\u00FE:"þ",\u00FF:"ÿ",'"':""","&":"&","<":"<",">":">",\u0152:"Œ",\u0153:"œ",\u0160:"Š",\u0161:"š",\u0178:"Ÿ","\u02C6":"ˆ","\u02DC":"˜","\u2002":" ","\u2003":" ","\u2009":" ","\u200C":"‌","\u200D":"‍","\u200E":"‎","\u200F":"‏","\u2013":"–","\u2014":"—","\u2018":"‘","\u2019":"’","\u201A":"‚","\u201C":"“","\u201D":"”","\u201E":"„","\u2020":"†","\u2021":"‡","\u2030":"‰","\u2039":"‹","\u203A":"›","\u20AC":"€",\u0192:"ƒ",\u0391:"Α",\u0392:"Β",\u0393:"Γ",\u0394:"Δ",\u0395:"Ε",\u0396:"Ζ",\u0397:"Η",\u0398:"Θ",\u0399:"Ι",\u039A:"Κ",\u039B:"Λ",\u039C:"Μ",\u039D:"Ν",\u039E:"Ξ",\u039F:"Ο",\u03A0:"Π",\u03A1:"Ρ",\u03A3:"Σ",\u03A4:"Τ",\u03A5:"Υ",\u03A6:"Φ",\u03A7:"Χ",\u03A8:"Ψ",\u03A9:"Ω",\u03B1:"α",\u03B2:"β",\u03B3:"γ",\u03B4:"δ",\u03B5:"ε",\u03B6:"ζ",\u03B7:"η",\u03B8:"θ",\u03B9:"ι",\u03BA:"κ",\u03BB:"λ",\u03BC:"μ",\u03BD:"ν",\u03BE:"ξ",\u03BF:"ο",\u03C0:"π",\u03C1:"ρ",\u03C2:"ς",\u03C3:"σ",\u03C4:"τ",\u03C5:"υ",\u03C6:"φ",\u03C7:"χ",\u03C8:"ψ",\u03C9:"ω",\u03D1:"ϑ",\u03D2:"ϒ",\u03D6:"ϖ","\u2022":"•","\u2026":"…","\u2032":"′","\u2033":"″","\u203E":"‾","\u2044":"⁄","\u2118":"℘",\u2111:"ℑ",\u211C:"ℜ","\u2122":"™",\u2135:"ℵ","\u2190":"←","\u2191":"↑","\u2192":"→","\u2193":"↓","\u2194":"↔","\u21B5":"↵","\u21D0":"⇐","\u21D1":"⇑","\u21D2":"⇒","\u21D3":"⇓","\u21D4":"⇔","\u2200":"∀","\u2202":"∂","\u2203":"∃","\u2205":"∅","\u2207":"∇","\u2208":"∈","\u2209":"∉","\u220B":"∋","\u220F":"∏","\u2211":"∑","\u2212":"−","\u2217":"∗","\u221A":"√","\u221D":"∝","\u221E":"∞","\u2220":"∠","\u2227":"∧","\u2228":"∨","\u2229":"∩","\u222A":"∪","\u222B":"∫","\u2234":"∴","\u223C":"∼","\u2245":"≅","\u2248":"≈","\u2260":"≠","\u2261":"≡","\u2264":"≤","\u2265":"≥","\u2282":"⊂","\u2283":"⊃","\u2284":"⊄","\u2286":"⊆","\u2287":"⊇","\u2295":"⊕","\u2297":"⊗","\u22A5":"⊥","\u22C5":"⋅","\u2308":"⌈","\u2309":"⌉","\u230A":"⌊","\u230B":"⌋","\u2329":"⟨","\u232A":"⟩","\u25CA":"◊","\u2660":"♠","\u2663":"♣","\u2665":"♥","\u2666":"♦"}},html5:{entities:{"Æ":"\xC6","Æ":"\xC6","&":"&","&":"&","Á":"\xC1","Á":"\xC1","Ă":"\u0102","Â":"\xC2","Â":"\xC2","А":"\u0410","𝔄":"\u{1D504}","À":"\xC0","À":"\xC0","Α":"\u0391","Ā":"\u0100","⩓":"\u2A53","Ą":"\u0104","𝔸":"\u{1D538}","⁡":"\u2061","Å":"\xC5","Å":"\xC5","𝒜":"\u{1D49C}","≔":"\u2254","Ã":"\xC3","Ã":"\xC3","Ä":"\xC4","Ä":"\xC4","∖":"\u2216","⫧":"\u2AE7","⌆":"\u2306","Б":"\u0411","∵":"\u2235","ℬ":"\u212C","Β":"\u0392","𝔅":"\u{1D505}","𝔹":"\u{1D539}","˘":"\u02D8","ℬ":"\u212C","≎":"\u224E","Ч":"\u0427","©":"\xA9","©":"\xA9","Ć":"\u0106","⋒":"\u22D2","ⅅ":"\u2145","ℭ":"\u212D","Č":"\u010C","Ç":"\xC7","Ç":"\xC7","Ĉ":"\u0108","∰":"\u2230","Ċ":"\u010A","¸":"\xB8","·":"\xB7","ℭ":"\u212D","Χ":"\u03A7","⊙":"\u2299","⊖":"\u2296","⊕":"\u2295","⊗":"\u2297","∲":"\u2232","”":"\u201D","’":"\u2019","∷":"\u2237","⩴":"\u2A74","≡":"\u2261","∯":"\u222F","∮":"\u222E","ℂ":"\u2102","∐":"\u2210","∳":"\u2233","⨯":"\u2A2F","𝒞":"\u{1D49E}","⋓":"\u22D3","≍":"\u224D","ⅅ":"\u2145","⤑":"\u2911","Ђ":"\u0402","Ѕ":"\u0405","Џ":"\u040F","‡":"\u2021","↡":"\u21A1","⫤":"\u2AE4","Ď":"\u010E","Д":"\u0414","∇":"\u2207","Δ":"\u0394","𝔇":"\u{1D507}","´":"\xB4","˙":"\u02D9","˝":"\u02DD","`":"`","˜":"\u02DC","⋄":"\u22C4","ⅆ":"\u2146","𝔻":"\u{1D53B}","¨":"\xA8","⃜":"\u20DC","≐":"\u2250","∯":"\u222F","¨":"\xA8","⇓":"\u21D3","⇐":"\u21D0","⇔":"\u21D4","⫤":"\u2AE4","⟸":"\u27F8","⟺":"\u27FA","⟹":"\u27F9","⇒":"\u21D2","⊨":"\u22A8","⇑":"\u21D1","⇕":"\u21D5","∥":"\u2225","↓":"\u2193","⤓":"\u2913","⇵":"\u21F5","̑":"\u0311","⥐":"\u2950","⥞":"\u295E","↽":"\u21BD","⥖":"\u2956","⥟":"\u295F","⇁":"\u21C1","⥗":"\u2957","⊤":"\u22A4","↧":"\u21A7","⇓":"\u21D3","𝒟":"\u{1D49F}","Đ":"\u0110","Ŋ":"\u014A","Ð":"\xD0","Ð":"\xD0","É":"\xC9","É":"\xC9","Ě":"\u011A","Ê":"\xCA","Ê":"\xCA","Э":"\u042D","Ė":"\u0116","𝔈":"\u{1D508}","È":"\xC8","È":"\xC8","∈":"\u2208","Ē":"\u0112","◻":"\u25FB","▫":"\u25AB","Ę":"\u0118","𝔼":"\u{1D53C}","Ε":"\u0395","⩵":"\u2A75","≂":"\u2242","⇌":"\u21CC","ℰ":"\u2130","⩳":"\u2A73","Η":"\u0397","Ë":"\xCB","Ë":"\xCB","∃":"\u2203","ⅇ":"\u2147","Ф":"\u0424","𝔉":"\u{1D509}","◼":"\u25FC","▪":"\u25AA","𝔽":"\u{1D53D}","∀":"\u2200","ℱ":"\u2131","ℱ":"\u2131","Ѓ":"\u0403",">":">",">":">","Γ":"\u0393","Ϝ":"\u03DC","Ğ":"\u011E","Ģ":"\u0122","Ĝ":"\u011C","Г":"\u0413","Ġ":"\u0120","𝔊":"\u{1D50A}","⋙":"\u22D9","𝔾":"\u{1D53E}","≥":"\u2265","⋛":"\u22DB","≧":"\u2267","⪢":"\u2AA2","≷":"\u2277","⩾":"\u2A7E","≳":"\u2273","𝒢":"\u{1D4A2}","≫":"\u226B","Ъ":"\u042A","ˇ":"\u02C7","^":"^","Ĥ":"\u0124","ℌ":"\u210C","ℋ":"\u210B","ℍ":"\u210D","─":"\u2500","ℋ":"\u210B","Ħ":"\u0126","≎":"\u224E","≏":"\u224F","Е":"\u0415","IJ":"\u0132","Ё":"\u0401","Í":"\xCD","Í":"\xCD","Î":"\xCE","Î":"\xCE","И":"\u0418","İ":"\u0130","ℑ":"\u2111","Ì":"\xCC","Ì":"\xCC","ℑ":"\u2111","Ī":"\u012A","ⅈ":"\u2148","⇒":"\u21D2","∬":"\u222C","∫":"\u222B","⋂":"\u22C2","⁣":"\u2063","⁢":"\u2062","Į":"\u012E","𝕀":"\u{1D540}","Ι":"\u0399","ℐ":"\u2110","Ĩ":"\u0128","І":"\u0406","Ï":"\xCF","Ï":"\xCF","Ĵ":"\u0134","Й":"\u0419","𝔍":"\u{1D50D}","𝕁":"\u{1D541}","𝒥":"\u{1D4A5}","Ј":"\u0408","Є":"\u0404","Х":"\u0425","Ќ":"\u040C","Κ":"\u039A","Ķ":"\u0136","К":"\u041A","𝔎":"\u{1D50E}","𝕂":"\u{1D542}","𝒦":"\u{1D4A6}","Љ":"\u0409","<":"<","<":"<","Ĺ":"\u0139","Λ":"\u039B","⟪":"\u27EA","ℒ":"\u2112","↞":"\u219E","Ľ":"\u013D","Ļ":"\u013B","Л":"\u041B","⟨":"\u27E8","←":"\u2190","⇤":"\u21E4","⇆":"\u21C6","⌈":"\u2308","⟦":"\u27E6","⥡":"\u2961","⇃":"\u21C3","⥙":"\u2959","⌊":"\u230A","↔":"\u2194","⥎":"\u294E","⊣":"\u22A3","↤":"\u21A4","⥚":"\u295A","⊲":"\u22B2","⧏":"\u29CF","⊴":"\u22B4","⥑":"\u2951","⥠":"\u2960","↿":"\u21BF","⥘":"\u2958","↼":"\u21BC","⥒":"\u2952","⇐":"\u21D0","⇔":"\u21D4","⋚":"\u22DA","≦":"\u2266","≶":"\u2276","⪡":"\u2AA1","⩽":"\u2A7D","≲":"\u2272","𝔏":"\u{1D50F}","⋘":"\u22D8","⇚":"\u21DA","Ŀ":"\u013F","⟵":"\u27F5","⟷":"\u27F7","⟶":"\u27F6","⟸":"\u27F8","⟺":"\u27FA","⟹":"\u27F9","𝕃":"\u{1D543}","↙":"\u2199","↘":"\u2198","ℒ":"\u2112","↰":"\u21B0","Ł":"\u0141","≪":"\u226A","⤅":"\u2905","М":"\u041C"," ":"\u205F","ℳ":"\u2133","𝔐":"\u{1D510}","∓":"\u2213","𝕄":"\u{1D544}","ℳ":"\u2133","Μ":"\u039C","Њ":"\u040A","Ń":"\u0143","Ň":"\u0147","Ņ":"\u0145","Н":"\u041D","​":"\u200B","​":"\u200B","​":"\u200B","​":"\u200B","≫":"\u226B","≪":"\u226A","
":` -`,"𝔑":"\u{1D511}","⁠":"\u2060"," ":"\xA0","ℕ":"\u2115","⫬":"\u2AEC","≢":"\u2262","≭":"\u226D","∦":"\u2226","∉":"\u2209","≠":"\u2260","≂̸":"\u2242\u0338","∄":"\u2204","≯":"\u226F","≱":"\u2271","≧̸":"\u2267\u0338","≫̸":"\u226B\u0338","≹":"\u2279","⩾̸":"\u2A7E\u0338","≵":"\u2275","≎̸":"\u224E\u0338","≏̸":"\u224F\u0338","⋪":"\u22EA","⧏̸":"\u29CF\u0338","⋬":"\u22EC","≮":"\u226E","≰":"\u2270","≸":"\u2278","≪̸":"\u226A\u0338","⩽̸":"\u2A7D\u0338","≴":"\u2274","⪢̸":"\u2AA2\u0338","⪡̸":"\u2AA1\u0338","⊀":"\u2280","⪯̸":"\u2AAF\u0338","⋠":"\u22E0","∌":"\u220C","⋫":"\u22EB","⧐̸":"\u29D0\u0338","⋭":"\u22ED","⊏̸":"\u228F\u0338","⋢":"\u22E2","⊐̸":"\u2290\u0338","⋣":"\u22E3","⊂⃒":"\u2282\u20D2","⊈":"\u2288","⊁":"\u2281","⪰̸":"\u2AB0\u0338","⋡":"\u22E1","≿̸":"\u227F\u0338","⊃⃒":"\u2283\u20D2","⊉":"\u2289","≁":"\u2241","≄":"\u2244","≇":"\u2247","≉":"\u2249","∤":"\u2224","𝒩":"\u{1D4A9}","Ñ":"\xD1","Ñ":"\xD1","Ν":"\u039D","Œ":"\u0152","Ó":"\xD3","Ó":"\xD3","Ô":"\xD4","Ô":"\xD4","О":"\u041E","Ő":"\u0150","𝔒":"\u{1D512}","Ò":"\xD2","Ò":"\xD2","Ō":"\u014C","Ω":"\u03A9","Ο":"\u039F","𝕆":"\u{1D546}","“":"\u201C","‘":"\u2018","⩔":"\u2A54","𝒪":"\u{1D4AA}","Ø":"\xD8","Ø":"\xD8","Õ":"\xD5","Õ":"\xD5","⨷":"\u2A37","Ö":"\xD6","Ö":"\xD6","‾":"\u203E","⏞":"\u23DE","⎴":"\u23B4","⏜":"\u23DC","∂":"\u2202","П":"\u041F","𝔓":"\u{1D513}","Φ":"\u03A6","Π":"\u03A0","±":"\xB1","ℌ":"\u210C","ℙ":"\u2119","⪻":"\u2ABB","≺":"\u227A","⪯":"\u2AAF","≼":"\u227C","≾":"\u227E","″":"\u2033","∏":"\u220F","∷":"\u2237","∝":"\u221D","𝒫":"\u{1D4AB}","Ψ":"\u03A8",""":'"',""":'"',"𝔔":"\u{1D514}","ℚ":"\u211A","𝒬":"\u{1D4AC}","⤐":"\u2910","®":"\xAE","®":"\xAE","Ŕ":"\u0154","⟫":"\u27EB","↠":"\u21A0","⤖":"\u2916","Ř":"\u0158","Ŗ":"\u0156","Р":"\u0420","ℜ":"\u211C","∋":"\u220B","⇋":"\u21CB","⥯":"\u296F","ℜ":"\u211C","Ρ":"\u03A1","⟩":"\u27E9","→":"\u2192","⇥":"\u21E5","⇄":"\u21C4","⌉":"\u2309","⟧":"\u27E7","⥝":"\u295D","⇂":"\u21C2","⥕":"\u2955","⌋":"\u230B","⊢":"\u22A2","↦":"\u21A6","⥛":"\u295B","⊳":"\u22B3","⧐":"\u29D0","⊵":"\u22B5","⥏":"\u294F","⥜":"\u295C","↾":"\u21BE","⥔":"\u2954","⇀":"\u21C0","⥓":"\u2953","⇒":"\u21D2","ℝ":"\u211D","⥰":"\u2970","⇛":"\u21DB","ℛ":"\u211B","↱":"\u21B1","⧴":"\u29F4","Щ":"\u0429","Ш":"\u0428","Ь":"\u042C","Ś":"\u015A","⪼":"\u2ABC","Š":"\u0160","Ş":"\u015E","Ŝ":"\u015C","С":"\u0421","𝔖":"\u{1D516}","↓":"\u2193","←":"\u2190","→":"\u2192","↑":"\u2191","Σ":"\u03A3","∘":"\u2218","𝕊":"\u{1D54A}","√":"\u221A","□":"\u25A1","⊓":"\u2293","⊏":"\u228F","⊑":"\u2291","⊐":"\u2290","⊒":"\u2292","⊔":"\u2294","𝒮":"\u{1D4AE}","⋆":"\u22C6","⋐":"\u22D0","⋐":"\u22D0","⊆":"\u2286","≻":"\u227B","⪰":"\u2AB0","≽":"\u227D","≿":"\u227F","∋":"\u220B","∑":"\u2211","⋑":"\u22D1","⊃":"\u2283","⊇":"\u2287","⋑":"\u22D1","Þ":"\xDE","Þ":"\xDE","™":"\u2122","Ћ":"\u040B","Ц":"\u0426","	":" ","Τ":"\u03A4","Ť":"\u0164","Ţ":"\u0162","Т":"\u0422","𝔗":"\u{1D517}","∴":"\u2234","Θ":"\u0398","  ":"\u205F\u200A"," ":"\u2009","∼":"\u223C","≃":"\u2243","≅":"\u2245","≈":"\u2248","𝕋":"\u{1D54B}","⃛":"\u20DB","𝒯":"\u{1D4AF}","Ŧ":"\u0166","Ú":"\xDA","Ú":"\xDA","↟":"\u219F","⥉":"\u2949","Ў":"\u040E","Ŭ":"\u016C","Û":"\xDB","Û":"\xDB","У":"\u0423","Ű":"\u0170","𝔘":"\u{1D518}","Ù":"\xD9","Ù":"\xD9","Ū":"\u016A","_":"_","⏟":"\u23DF","⎵":"\u23B5","⏝":"\u23DD","⋃":"\u22C3","⊎":"\u228E","Ų":"\u0172","𝕌":"\u{1D54C}","↑":"\u2191","⤒":"\u2912","⇅":"\u21C5","↕":"\u2195","⥮":"\u296E","⊥":"\u22A5","↥":"\u21A5","⇑":"\u21D1","⇕":"\u21D5","↖":"\u2196","↗":"\u2197","ϒ":"\u03D2","Υ":"\u03A5","Ů":"\u016E","𝒰":"\u{1D4B0}","Ũ":"\u0168","Ü":"\xDC","Ü":"\xDC","⊫":"\u22AB","⫫":"\u2AEB","В":"\u0412","⊩":"\u22A9","⫦":"\u2AE6","⋁":"\u22C1","‖":"\u2016","‖":"\u2016","∣":"\u2223","|":"|","❘":"\u2758","≀":"\u2240"," ":"\u200A","𝔙":"\u{1D519}","𝕍":"\u{1D54D}","𝒱":"\u{1D4B1}","⊪":"\u22AA","Ŵ":"\u0174","⋀":"\u22C0","𝔚":"\u{1D51A}","𝕎":"\u{1D54E}","𝒲":"\u{1D4B2}","𝔛":"\u{1D51B}","Ξ":"\u039E","𝕏":"\u{1D54F}","𝒳":"\u{1D4B3}","Я":"\u042F","Ї":"\u0407","Ю":"\u042E","Ý":"\xDD","Ý":"\xDD","Ŷ":"\u0176","Ы":"\u042B","𝔜":"\u{1D51C}","𝕐":"\u{1D550}","𝒴":"\u{1D4B4}","Ÿ":"\u0178","Ж":"\u0416","Ź":"\u0179","Ž":"\u017D","З":"\u0417","Ż":"\u017B","​":"\u200B","Ζ":"\u0396","ℨ":"\u2128","ℤ":"\u2124","𝒵":"\u{1D4B5}","á":"\xE1","á":"\xE1","ă":"\u0103","∾":"\u223E","∾̳":"\u223E\u0333","∿":"\u223F","â":"\xE2","â":"\xE2","´":"\xB4","´":"\xB4","а":"\u0430","æ":"\xE6","æ":"\xE6","⁡":"\u2061","𝔞":"\u{1D51E}","à":"\xE0","à":"\xE0","ℵ":"\u2135","ℵ":"\u2135","α":"\u03B1","ā":"\u0101","⨿":"\u2A3F","&":"&","&":"&","∧":"\u2227","⩕":"\u2A55","⩜":"\u2A5C","⩘":"\u2A58","⩚":"\u2A5A","∠":"\u2220","⦤":"\u29A4","∠":"\u2220","∡":"\u2221","⦨":"\u29A8","⦩":"\u29A9","⦪":"\u29AA","⦫":"\u29AB","⦬":"\u29AC","⦭":"\u29AD","⦮":"\u29AE","⦯":"\u29AF","∟":"\u221F","⊾":"\u22BE","⦝":"\u299D","∢":"\u2222","Å":"\xC5","⍼":"\u237C","ą":"\u0105","𝕒":"\u{1D552}","≈":"\u2248","⩰":"\u2A70","⩯":"\u2A6F","≊":"\u224A","≋":"\u224B","'":"'","≈":"\u2248","≊":"\u224A","å":"\xE5","å":"\xE5","𝒶":"\u{1D4B6}","*":"*","≈":"\u2248","≍":"\u224D","ã":"\xE3","ã":"\xE3","ä":"\xE4","ä":"\xE4","∳":"\u2233","⨑":"\u2A11","⫭":"\u2AED","≌":"\u224C","϶":"\u03F6","‵":"\u2035","∽":"\u223D","⋍":"\u22CD","⊽":"\u22BD","⌅":"\u2305","⌅":"\u2305","⎵":"\u23B5","⎶":"\u23B6","≌":"\u224C","б":"\u0431","„":"\u201E","∵":"\u2235","∵":"\u2235","⦰":"\u29B0","϶":"\u03F6","ℬ":"\u212C","β":"\u03B2","ℶ":"\u2136","≬":"\u226C","𝔟":"\u{1D51F}","⋂":"\u22C2","◯":"\u25EF","⋃":"\u22C3","⨀":"\u2A00","⨁":"\u2A01","⨂":"\u2A02","⨆":"\u2A06","★":"\u2605","▽":"\u25BD","△":"\u25B3","⨄":"\u2A04","⋁":"\u22C1","⋀":"\u22C0","⤍":"\u290D","⧫":"\u29EB","▪":"\u25AA","▴":"\u25B4","▾":"\u25BE","◂":"\u25C2","▸":"\u25B8","␣":"\u2423","▒":"\u2592","░":"\u2591","▓":"\u2593","█":"\u2588","=⃥":"=\u20E5","≡⃥":"\u2261\u20E5","⌐":"\u2310","𝕓":"\u{1D553}","⊥":"\u22A5","⊥":"\u22A5","⋈":"\u22C8","╗":"\u2557","╔":"\u2554","╖":"\u2556","╓":"\u2553","═":"\u2550","╦":"\u2566","╩":"\u2569","╤":"\u2564","╧":"\u2567","╝":"\u255D","╚":"\u255A","╜":"\u255C","╙":"\u2559","║":"\u2551","╬":"\u256C","╣":"\u2563","╠":"\u2560","╫":"\u256B","╢":"\u2562","╟":"\u255F","⧉":"\u29C9","╕":"\u2555","╒":"\u2552","┐":"\u2510","┌":"\u250C","─":"\u2500","╥":"\u2565","╨":"\u2568","┬":"\u252C","┴":"\u2534","⊟":"\u229F","⊞":"\u229E","⊠":"\u22A0","╛":"\u255B","╘":"\u2558","┘":"\u2518","└":"\u2514","│":"\u2502","╪":"\u256A","╡":"\u2561","╞":"\u255E","┼":"\u253C","┤":"\u2524","├":"\u251C","‵":"\u2035","˘":"\u02D8","¦":"\xA6","¦":"\xA6","𝒷":"\u{1D4B7}","⁏":"\u204F","∽":"\u223D","⋍":"\u22CD","\":"\\","⧅":"\u29C5","⟈":"\u27C8","•":"\u2022","•":"\u2022","≎":"\u224E","⪮":"\u2AAE","≏":"\u224F","≏":"\u224F","ć":"\u0107","∩":"\u2229","⩄":"\u2A44","⩉":"\u2A49","⩋":"\u2A4B","⩇":"\u2A47","⩀":"\u2A40","∩︀":"\u2229\uFE00","⁁":"\u2041","ˇ":"\u02C7","⩍":"\u2A4D","č":"\u010D","ç":"\xE7","ç":"\xE7","ĉ":"\u0109","⩌":"\u2A4C","⩐":"\u2A50","ċ":"\u010B","¸":"\xB8","¸":"\xB8","⦲":"\u29B2","¢":"\xA2","¢":"\xA2","·":"\xB7","𝔠":"\u{1D520}","ч":"\u0447","✓":"\u2713","✓":"\u2713","χ":"\u03C7","○":"\u25CB","⧃":"\u29C3","ˆ":"\u02C6","≗":"\u2257","↺":"\u21BA","↻":"\u21BB","®":"\xAE","Ⓢ":"\u24C8","⊛":"\u229B","⊚":"\u229A","⊝":"\u229D","≗":"\u2257","⨐":"\u2A10","⫯":"\u2AEF","⧂":"\u29C2","♣":"\u2663","♣":"\u2663",":":":","≔":"\u2254","≔":"\u2254",",":",","@":"@","∁":"\u2201","∘":"\u2218","∁":"\u2201","ℂ":"\u2102","≅":"\u2245","⩭":"\u2A6D","∮":"\u222E","𝕔":"\u{1D554}","∐":"\u2210","©":"\xA9","©":"\xA9","℗":"\u2117","↵":"\u21B5","✗":"\u2717","𝒸":"\u{1D4B8}","⫏":"\u2ACF","⫑":"\u2AD1","⫐":"\u2AD0","⫒":"\u2AD2","⋯":"\u22EF","⤸":"\u2938","⤵":"\u2935","⋞":"\u22DE","⋟":"\u22DF","↶":"\u21B6","⤽":"\u293D","∪":"\u222A","⩈":"\u2A48","⩆":"\u2A46","⩊":"\u2A4A","⊍":"\u228D","⩅":"\u2A45","∪︀":"\u222A\uFE00","↷":"\u21B7","⤼":"\u293C","⋞":"\u22DE","⋟":"\u22DF","⋎":"\u22CE","⋏":"\u22CF","¤":"\xA4","¤":"\xA4","↶":"\u21B6","↷":"\u21B7","⋎":"\u22CE","⋏":"\u22CF","∲":"\u2232","∱":"\u2231","⌭":"\u232D","⇓":"\u21D3","⥥":"\u2965","†":"\u2020","ℸ":"\u2138","↓":"\u2193","‐":"\u2010","⊣":"\u22A3","⤏":"\u290F","˝":"\u02DD","ď":"\u010F","д":"\u0434","ⅆ":"\u2146","‡":"\u2021","⇊":"\u21CA","⩷":"\u2A77","°":"\xB0","°":"\xB0","δ":"\u03B4","⦱":"\u29B1","⥿":"\u297F","𝔡":"\u{1D521}","⇃":"\u21C3","⇂":"\u21C2","⋄":"\u22C4","⋄":"\u22C4","♦":"\u2666","♦":"\u2666","¨":"\xA8","ϝ":"\u03DD","⋲":"\u22F2","÷":"\xF7","÷":"\xF7","÷":"\xF7","⋇":"\u22C7","⋇":"\u22C7","ђ":"\u0452","⌞":"\u231E","⌍":"\u230D","$":"$","𝕕":"\u{1D555}","˙":"\u02D9","≐":"\u2250","≑":"\u2251","∸":"\u2238","∔":"\u2214","⊡":"\u22A1","⌆":"\u2306","↓":"\u2193","⇊":"\u21CA","⇃":"\u21C3","⇂":"\u21C2","⤐":"\u2910","⌟":"\u231F","⌌":"\u230C","𝒹":"\u{1D4B9}","ѕ":"\u0455","⧶":"\u29F6","đ":"\u0111","⋱":"\u22F1","▿":"\u25BF","▾":"\u25BE","⇵":"\u21F5","⥯":"\u296F","⦦":"\u29A6","џ":"\u045F","⟿":"\u27FF","⩷":"\u2A77","≑":"\u2251","é":"\xE9","é":"\xE9","⩮":"\u2A6E","ě":"\u011B","≖":"\u2256","ê":"\xEA","ê":"\xEA","≕":"\u2255","э":"\u044D","ė":"\u0117","ⅇ":"\u2147","≒":"\u2252","𝔢":"\u{1D522}","⪚":"\u2A9A","è":"\xE8","è":"\xE8","⪖":"\u2A96","⪘":"\u2A98","⪙":"\u2A99","⏧":"\u23E7","ℓ":"\u2113","⪕":"\u2A95","⪗":"\u2A97","ē":"\u0113","∅":"\u2205","∅":"\u2205","∅":"\u2205"," ":"\u2004"," ":"\u2005"," ":"\u2003","ŋ":"\u014B"," ":"\u2002","ę":"\u0119","𝕖":"\u{1D556}","⋕":"\u22D5","⧣":"\u29E3","⩱":"\u2A71","ε":"\u03B5","ε":"\u03B5","ϵ":"\u03F5","≖":"\u2256","≕":"\u2255","≂":"\u2242","⪖":"\u2A96","⪕":"\u2A95","=":"=","≟":"\u225F","≡":"\u2261","⩸":"\u2A78","⧥":"\u29E5","≓":"\u2253","⥱":"\u2971","ℯ":"\u212F","≐":"\u2250","≂":"\u2242","η":"\u03B7","ð":"\xF0","ð":"\xF0","ë":"\xEB","ë":"\xEB","€":"\u20AC","!":"!","∃":"\u2203","ℰ":"\u2130","ⅇ":"\u2147","≒":"\u2252","ф":"\u0444","♀":"\u2640","ffi":"\uFB03","ff":"\uFB00","ffl":"\uFB04","𝔣":"\u{1D523}","fi":"\uFB01","fj":"fj","♭":"\u266D","fl":"\uFB02","▱":"\u25B1","ƒ":"\u0192","𝕗":"\u{1D557}","∀":"\u2200","⋔":"\u22D4","⫙":"\u2AD9","⨍":"\u2A0D","½":"\xBD","½":"\xBD","⅓":"\u2153","¼":"\xBC","¼":"\xBC","⅕":"\u2155","⅙":"\u2159","⅛":"\u215B","⅔":"\u2154","⅖":"\u2156","¾":"\xBE","¾":"\xBE","⅗":"\u2157","⅜":"\u215C","⅘":"\u2158","⅚":"\u215A","⅝":"\u215D","⅞":"\u215E","⁄":"\u2044","⌢":"\u2322","𝒻":"\u{1D4BB}","≧":"\u2267","⪌":"\u2A8C","ǵ":"\u01F5","γ":"\u03B3","ϝ":"\u03DD","⪆":"\u2A86","ğ":"\u011F","ĝ":"\u011D","г":"\u0433","ġ":"\u0121","≥":"\u2265","⋛":"\u22DB","≥":"\u2265","≧":"\u2267","⩾":"\u2A7E","⩾":"\u2A7E","⪩":"\u2AA9","⪀":"\u2A80","⪂":"\u2A82","⪄":"\u2A84","⋛︀":"\u22DB\uFE00","⪔":"\u2A94","𝔤":"\u{1D524}","≫":"\u226B","⋙":"\u22D9","ℷ":"\u2137","ѓ":"\u0453","≷":"\u2277","⪒":"\u2A92","⪥":"\u2AA5","⪤":"\u2AA4","≩":"\u2269","⪊":"\u2A8A","⪊":"\u2A8A","⪈":"\u2A88","⪈":"\u2A88","≩":"\u2269","⋧":"\u22E7","𝕘":"\u{1D558}","`":"`","ℊ":"\u210A","≳":"\u2273","⪎":"\u2A8E","⪐":"\u2A90",">":">",">":">","⪧":"\u2AA7","⩺":"\u2A7A","⋗":"\u22D7","⦕":"\u2995","⩼":"\u2A7C","⪆":"\u2A86","⥸":"\u2978","⋗":"\u22D7","⋛":"\u22DB","⪌":"\u2A8C","≷":"\u2277","≳":"\u2273","≩︀":"\u2269\uFE00","≩︀":"\u2269\uFE00","⇔":"\u21D4"," ":"\u200A","½":"\xBD","ℋ":"\u210B","ъ":"\u044A","↔":"\u2194","⥈":"\u2948","↭":"\u21AD","ℏ":"\u210F","ĥ":"\u0125","♥":"\u2665","♥":"\u2665","…":"\u2026","⊹":"\u22B9","𝔥":"\u{1D525}","⤥":"\u2925","⤦":"\u2926","⇿":"\u21FF","∻":"\u223B","↩":"\u21A9","↪":"\u21AA","𝕙":"\u{1D559}","―":"\u2015","𝒽":"\u{1D4BD}","ℏ":"\u210F","ħ":"\u0127","⁃":"\u2043","‐":"\u2010","í":"\xED","í":"\xED","⁣":"\u2063","î":"\xEE","î":"\xEE","и":"\u0438","е":"\u0435","¡":"\xA1","¡":"\xA1","⇔":"\u21D4","𝔦":"\u{1D526}","ì":"\xEC","ì":"\xEC","ⅈ":"\u2148","⨌":"\u2A0C","∭":"\u222D","⧜":"\u29DC","℩":"\u2129","ij":"\u0133","ī":"\u012B","ℑ":"\u2111","ℐ":"\u2110","ℑ":"\u2111","ı":"\u0131","⊷":"\u22B7","Ƶ":"\u01B5","∈":"\u2208","℅":"\u2105","∞":"\u221E","⧝":"\u29DD","ı":"\u0131","∫":"\u222B","⊺":"\u22BA","ℤ":"\u2124","⊺":"\u22BA","⨗":"\u2A17","⨼":"\u2A3C","ё":"\u0451","į":"\u012F","𝕚":"\u{1D55A}","ι":"\u03B9","⨼":"\u2A3C","¿":"\xBF","¿":"\xBF","𝒾":"\u{1D4BE}","∈":"\u2208","⋹":"\u22F9","⋵":"\u22F5","⋴":"\u22F4","⋳":"\u22F3","∈":"\u2208","⁢":"\u2062","ĩ":"\u0129","і":"\u0456","ï":"\xEF","ï":"\xEF","ĵ":"\u0135","й":"\u0439","𝔧":"\u{1D527}","ȷ":"\u0237","𝕛":"\u{1D55B}","𝒿":"\u{1D4BF}","ј":"\u0458","є":"\u0454","κ":"\u03BA","ϰ":"\u03F0","ķ":"\u0137","к":"\u043A","𝔨":"\u{1D528}","ĸ":"\u0138","х":"\u0445","ќ":"\u045C","𝕜":"\u{1D55C}","𝓀":"\u{1D4C0}","⇚":"\u21DA","⇐":"\u21D0","⤛":"\u291B","⤎":"\u290E","≦":"\u2266","⪋":"\u2A8B","⥢":"\u2962","ĺ":"\u013A","⦴":"\u29B4","ℒ":"\u2112","λ":"\u03BB","⟨":"\u27E8","⦑":"\u2991","⟨":"\u27E8","⪅":"\u2A85","«":"\xAB","«":"\xAB","←":"\u2190","⇤":"\u21E4","⤟":"\u291F","⤝":"\u291D","↩":"\u21A9","↫":"\u21AB","⤹":"\u2939","⥳":"\u2973","↢":"\u21A2","⪫":"\u2AAB","⤙":"\u2919","⪭":"\u2AAD","⪭︀":"\u2AAD\uFE00","⤌":"\u290C","❲":"\u2772","{":"{","[":"[","⦋":"\u298B","⦏":"\u298F","⦍":"\u298D","ľ":"\u013E","ļ":"\u013C","⌈":"\u2308","{":"{","л":"\u043B","⤶":"\u2936","“":"\u201C","„":"\u201E","⥧":"\u2967","⥋":"\u294B","↲":"\u21B2","≤":"\u2264","←":"\u2190","↢":"\u21A2","↽":"\u21BD","↼":"\u21BC","⇇":"\u21C7","↔":"\u2194","⇆":"\u21C6","⇋":"\u21CB","↭":"\u21AD","⋋":"\u22CB","⋚":"\u22DA","≤":"\u2264","≦":"\u2266","⩽":"\u2A7D","⩽":"\u2A7D","⪨":"\u2AA8","⩿":"\u2A7F","⪁":"\u2A81","⪃":"\u2A83","⋚︀":"\u22DA\uFE00","⪓":"\u2A93","⪅":"\u2A85","⋖":"\u22D6","⋚":"\u22DA","⪋":"\u2A8B","≶":"\u2276","≲":"\u2272","⥼":"\u297C","⌊":"\u230A","𝔩":"\u{1D529}","≶":"\u2276","⪑":"\u2A91","↽":"\u21BD","↼":"\u21BC","⥪":"\u296A","▄":"\u2584","љ":"\u0459","≪":"\u226A","⇇":"\u21C7","⌞":"\u231E","⥫":"\u296B","◺":"\u25FA","ŀ":"\u0140","⎰":"\u23B0","⎰":"\u23B0","≨":"\u2268","⪉":"\u2A89","⪉":"\u2A89","⪇":"\u2A87","⪇":"\u2A87","≨":"\u2268","⋦":"\u22E6","⟬":"\u27EC","⇽":"\u21FD","⟦":"\u27E6","⟵":"\u27F5","⟷":"\u27F7","⟼":"\u27FC","⟶":"\u27F6","↫":"\u21AB","↬":"\u21AC","⦅":"\u2985","𝕝":"\u{1D55D}","⨭":"\u2A2D","⨴":"\u2A34","∗":"\u2217","_":"_","◊":"\u25CA","◊":"\u25CA","⧫":"\u29EB","(":"(","⦓":"\u2993","⇆":"\u21C6","⌟":"\u231F","⇋":"\u21CB","⥭":"\u296D","‎":"\u200E","⊿":"\u22BF","‹":"\u2039","𝓁":"\u{1D4C1}","↰":"\u21B0","≲":"\u2272","⪍":"\u2A8D","⪏":"\u2A8F","[":"[","‘":"\u2018","‚":"\u201A","ł":"\u0142","<":"<","<":"<","⪦":"\u2AA6","⩹":"\u2A79","⋖":"\u22D6","⋋":"\u22CB","⋉":"\u22C9","⥶":"\u2976","⩻":"\u2A7B","⦖":"\u2996","◃":"\u25C3","⊴":"\u22B4","◂":"\u25C2","⥊":"\u294A","⥦":"\u2966","≨︀":"\u2268\uFE00","≨︀":"\u2268\uFE00","∺":"\u223A","¯":"\xAF","¯":"\xAF","♂":"\u2642","✠":"\u2720","✠":"\u2720","↦":"\u21A6","↦":"\u21A6","↧":"\u21A7","↤":"\u21A4","↥":"\u21A5","▮":"\u25AE","⨩":"\u2A29","м":"\u043C","—":"\u2014","∡":"\u2221","𝔪":"\u{1D52A}","℧":"\u2127","µ":"\xB5","µ":"\xB5","∣":"\u2223","*":"*","⫰":"\u2AF0","·":"\xB7","·":"\xB7","−":"\u2212","⊟":"\u229F","∸":"\u2238","⨪":"\u2A2A","⫛":"\u2ADB","…":"\u2026","∓":"\u2213","⊧":"\u22A7","𝕞":"\u{1D55E}","∓":"\u2213","𝓂":"\u{1D4C2}","∾":"\u223E","μ":"\u03BC","⊸":"\u22B8","⊸":"\u22B8","⋙̸":"\u22D9\u0338","≫⃒":"\u226B\u20D2","≫̸":"\u226B\u0338","⇍":"\u21CD","⇎":"\u21CE","⋘̸":"\u22D8\u0338","≪⃒":"\u226A\u20D2","≪̸":"\u226A\u0338","⇏":"\u21CF","⊯":"\u22AF","⊮":"\u22AE","∇":"\u2207","ń":"\u0144","∠⃒":"\u2220\u20D2","≉":"\u2249","⩰̸":"\u2A70\u0338","≋̸":"\u224B\u0338","ʼn":"\u0149","≉":"\u2249","♮":"\u266E","♮":"\u266E","ℕ":"\u2115"," ":"\xA0"," ":"\xA0","≎̸":"\u224E\u0338","≏̸":"\u224F\u0338","⩃":"\u2A43","ň":"\u0148","ņ":"\u0146","≇":"\u2247","⩭̸":"\u2A6D\u0338","⩂":"\u2A42","н":"\u043D","–":"\u2013","≠":"\u2260","⇗":"\u21D7","⤤":"\u2924","↗":"\u2197","↗":"\u2197","≐̸":"\u2250\u0338","≢":"\u2262","⤨":"\u2928","≂̸":"\u2242\u0338","∄":"\u2204","∄":"\u2204","𝔫":"\u{1D52B}","≧̸":"\u2267\u0338","≱":"\u2271","≱":"\u2271","≧̸":"\u2267\u0338","⩾̸":"\u2A7E\u0338","⩾̸":"\u2A7E\u0338","≵":"\u2275","≯":"\u226F","≯":"\u226F","⇎":"\u21CE","↮":"\u21AE","⫲":"\u2AF2","∋":"\u220B","⋼":"\u22FC","⋺":"\u22FA","∋":"\u220B","њ":"\u045A","⇍":"\u21CD","≦̸":"\u2266\u0338","↚":"\u219A","‥":"\u2025","≰":"\u2270","↚":"\u219A","↮":"\u21AE","≰":"\u2270","≦̸":"\u2266\u0338","⩽̸":"\u2A7D\u0338","⩽̸":"\u2A7D\u0338","≮":"\u226E","≴":"\u2274","≮":"\u226E","⋪":"\u22EA","⋬":"\u22EC","∤":"\u2224","𝕟":"\u{1D55F}","¬":"\xAC","¬":"\xAC","∉":"\u2209","⋹̸":"\u22F9\u0338","⋵̸":"\u22F5\u0338","∉":"\u2209","⋷":"\u22F7","⋶":"\u22F6","∌":"\u220C","∌":"\u220C","⋾":"\u22FE","⋽":"\u22FD","∦":"\u2226","∦":"\u2226","⫽⃥":"\u2AFD\u20E5","∂̸":"\u2202\u0338","⨔":"\u2A14","⊀":"\u2280","⋠":"\u22E0","⪯̸":"\u2AAF\u0338","⊀":"\u2280","⪯̸":"\u2AAF\u0338","⇏":"\u21CF","↛":"\u219B","⤳̸":"\u2933\u0338","↝̸":"\u219D\u0338","↛":"\u219B","⋫":"\u22EB","⋭":"\u22ED","⊁":"\u2281","⋡":"\u22E1","⪰̸":"\u2AB0\u0338","𝓃":"\u{1D4C3}","∤":"\u2224","∦":"\u2226","≁":"\u2241","≄":"\u2244","≄":"\u2244","∤":"\u2224","∦":"\u2226","⋢":"\u22E2","⋣":"\u22E3","⊄":"\u2284","⫅̸":"\u2AC5\u0338","⊈":"\u2288","⊂⃒":"\u2282\u20D2","⊈":"\u2288","⫅̸":"\u2AC5\u0338","⊁":"\u2281","⪰̸":"\u2AB0\u0338","⊅":"\u2285","⫆̸":"\u2AC6\u0338","⊉":"\u2289","⊃⃒":"\u2283\u20D2","⊉":"\u2289","⫆̸":"\u2AC6\u0338","≹":"\u2279","ñ":"\xF1","ñ":"\xF1","≸":"\u2278","⋪":"\u22EA","⋬":"\u22EC","⋫":"\u22EB","⋭":"\u22ED","ν":"\u03BD","#":"#","№":"\u2116"," ":"\u2007","⊭":"\u22AD","⤄":"\u2904","≍⃒":"\u224D\u20D2","⊬":"\u22AC","≥⃒":"\u2265\u20D2",">⃒":">\u20D2","⧞":"\u29DE","⤂":"\u2902","≤⃒":"\u2264\u20D2","<⃒":"<\u20D2","⊴⃒":"\u22B4\u20D2","⤃":"\u2903","⊵⃒":"\u22B5\u20D2","∼⃒":"\u223C\u20D2","⇖":"\u21D6","⤣":"\u2923","↖":"\u2196","↖":"\u2196","⤧":"\u2927","Ⓢ":"\u24C8","ó":"\xF3","ó":"\xF3","⊛":"\u229B","⊚":"\u229A","ô":"\xF4","ô":"\xF4","о":"\u043E","⊝":"\u229D","ő":"\u0151","⨸":"\u2A38","⊙":"\u2299","⦼":"\u29BC","œ":"\u0153","⦿":"\u29BF","𝔬":"\u{1D52C}","˛":"\u02DB","ò":"\xF2","ò":"\xF2","⧁":"\u29C1","⦵":"\u29B5","Ω":"\u03A9","∮":"\u222E","↺":"\u21BA","⦾":"\u29BE","⦻":"\u29BB","‾":"\u203E","⧀":"\u29C0","ō":"\u014D","ω":"\u03C9","ο":"\u03BF","⦶":"\u29B6","⊖":"\u2296","𝕠":"\u{1D560}","⦷":"\u29B7","⦹":"\u29B9","⊕":"\u2295","∨":"\u2228","↻":"\u21BB","⩝":"\u2A5D","ℴ":"\u2134","ℴ":"\u2134","ª":"\xAA","ª":"\xAA","º":"\xBA","º":"\xBA","⊶":"\u22B6","⩖":"\u2A56","⩗":"\u2A57","⩛":"\u2A5B","ℴ":"\u2134","ø":"\xF8","ø":"\xF8","⊘":"\u2298","õ":"\xF5","õ":"\xF5","⊗":"\u2297","⨶":"\u2A36","ö":"\xF6","ö":"\xF6","⌽":"\u233D","∥":"\u2225","¶":"\xB6","¶":"\xB6","∥":"\u2225","⫳":"\u2AF3","⫽":"\u2AFD","∂":"\u2202","п":"\u043F","%":"%",".":".","‰":"\u2030","⊥":"\u22A5","‱":"\u2031","𝔭":"\u{1D52D}","φ":"\u03C6","ϕ":"\u03D5","ℳ":"\u2133","☎":"\u260E","π":"\u03C0","⋔":"\u22D4","ϖ":"\u03D6","ℏ":"\u210F","ℎ":"\u210E","ℏ":"\u210F","+":"+","⨣":"\u2A23","⊞":"\u229E","⨢":"\u2A22","∔":"\u2214","⨥":"\u2A25","⩲":"\u2A72","±":"\xB1","±":"\xB1","⨦":"\u2A26","⨧":"\u2A27","±":"\xB1","⨕":"\u2A15","𝕡":"\u{1D561}","£":"\xA3","£":"\xA3","≺":"\u227A","⪳":"\u2AB3","⪷":"\u2AB7","≼":"\u227C","⪯":"\u2AAF","≺":"\u227A","⪷":"\u2AB7","≼":"\u227C","⪯":"\u2AAF","⪹":"\u2AB9","⪵":"\u2AB5","⋨":"\u22E8","≾":"\u227E","′":"\u2032","ℙ":"\u2119","⪵":"\u2AB5","⪹":"\u2AB9","⋨":"\u22E8","∏":"\u220F","⌮":"\u232E","⌒":"\u2312","⌓":"\u2313","∝":"\u221D","∝":"\u221D","≾":"\u227E","⊰":"\u22B0","𝓅":"\u{1D4C5}","ψ":"\u03C8"," ":"\u2008","𝔮":"\u{1D52E}","⨌":"\u2A0C","𝕢":"\u{1D562}","⁗":"\u2057","𝓆":"\u{1D4C6}","ℍ":"\u210D","⨖":"\u2A16","?":"?","≟":"\u225F",""":'"',""":'"',"⇛":"\u21DB","⇒":"\u21D2","⤜":"\u291C","⤏":"\u290F","⥤":"\u2964","∽̱":"\u223D\u0331","ŕ":"\u0155","√":"\u221A","⦳":"\u29B3","⟩":"\u27E9","⦒":"\u2992","⦥":"\u29A5","⟩":"\u27E9","»":"\xBB","»":"\xBB","→":"\u2192","⥵":"\u2975","⇥":"\u21E5","⤠":"\u2920","⤳":"\u2933","⤞":"\u291E","↪":"\u21AA","↬":"\u21AC","⥅":"\u2945","⥴":"\u2974","↣":"\u21A3","↝":"\u219D","⤚":"\u291A","∶":"\u2236","ℚ":"\u211A","⤍":"\u290D","❳":"\u2773","}":"}","]":"]","⦌":"\u298C","⦎":"\u298E","⦐":"\u2990","ř":"\u0159","ŗ":"\u0157","⌉":"\u2309","}":"}","р":"\u0440","⤷":"\u2937","⥩":"\u2969","”":"\u201D","”":"\u201D","↳":"\u21B3","ℜ":"\u211C","ℛ":"\u211B","ℜ":"\u211C","ℝ":"\u211D","▭":"\u25AD","®":"\xAE","®":"\xAE","⥽":"\u297D","⌋":"\u230B","𝔯":"\u{1D52F}","⇁":"\u21C1","⇀":"\u21C0","⥬":"\u296C","ρ":"\u03C1","ϱ":"\u03F1","→":"\u2192","↣":"\u21A3","⇁":"\u21C1","⇀":"\u21C0","⇄":"\u21C4","⇌":"\u21CC","⇉":"\u21C9","↝":"\u219D","⋌":"\u22CC","˚":"\u02DA","≓":"\u2253","⇄":"\u21C4","⇌":"\u21CC","‏":"\u200F","⎱":"\u23B1","⎱":"\u23B1","⫮":"\u2AEE","⟭":"\u27ED","⇾":"\u21FE","⟧":"\u27E7","⦆":"\u2986","𝕣":"\u{1D563}","⨮":"\u2A2E","⨵":"\u2A35",")":")","⦔":"\u2994","⨒":"\u2A12","⇉":"\u21C9","›":"\u203A","𝓇":"\u{1D4C7}","↱":"\u21B1","]":"]","’":"\u2019","’":"\u2019","⋌":"\u22CC","⋊":"\u22CA","▹":"\u25B9","⊵":"\u22B5","▸":"\u25B8","⧎":"\u29CE","⥨":"\u2968","℞":"\u211E","ś":"\u015B","‚":"\u201A","≻":"\u227B","⪴":"\u2AB4","⪸":"\u2AB8","š":"\u0161","≽":"\u227D","⪰":"\u2AB0","ş":"\u015F","ŝ":"\u015D","⪶":"\u2AB6","⪺":"\u2ABA","⋩":"\u22E9","⨓":"\u2A13","≿":"\u227F","с":"\u0441","⋅":"\u22C5","⊡":"\u22A1","⩦":"\u2A66","⇘":"\u21D8","⤥":"\u2925","↘":"\u2198","↘":"\u2198","§":"\xA7","§":"\xA7",";":";","⤩":"\u2929","∖":"\u2216","∖":"\u2216","✶":"\u2736","𝔰":"\u{1D530}","⌢":"\u2322","♯":"\u266F","щ":"\u0449","ш":"\u0448","∣":"\u2223","∥":"\u2225","­":"\xAD","­":"\xAD","σ":"\u03C3","ς":"\u03C2","ς":"\u03C2","∼":"\u223C","⩪":"\u2A6A","≃":"\u2243","≃":"\u2243","⪞":"\u2A9E","⪠":"\u2AA0","⪝":"\u2A9D","⪟":"\u2A9F","≆":"\u2246","⨤":"\u2A24","⥲":"\u2972","←":"\u2190","∖":"\u2216","⨳":"\u2A33","⧤":"\u29E4","∣":"\u2223","⌣":"\u2323","⪪":"\u2AAA","⪬":"\u2AAC","⪬︀":"\u2AAC\uFE00","ь":"\u044C","/":"/","⧄":"\u29C4","⌿":"\u233F","𝕤":"\u{1D564}","♠":"\u2660","♠":"\u2660","∥":"\u2225","⊓":"\u2293","⊓︀":"\u2293\uFE00","⊔":"\u2294","⊔︀":"\u2294\uFE00","⊏":"\u228F","⊑":"\u2291","⊏":"\u228F","⊑":"\u2291","⊐":"\u2290","⊒":"\u2292","⊐":"\u2290","⊒":"\u2292","□":"\u25A1","□":"\u25A1","▪":"\u25AA","▪":"\u25AA","→":"\u2192","𝓈":"\u{1D4C8}","∖":"\u2216","⌣":"\u2323","⋆":"\u22C6","☆":"\u2606","★":"\u2605","ϵ":"\u03F5","ϕ":"\u03D5","¯":"\xAF","⊂":"\u2282","⫅":"\u2AC5","⪽":"\u2ABD","⊆":"\u2286","⫃":"\u2AC3","⫁":"\u2AC1","⫋":"\u2ACB","⊊":"\u228A","⪿":"\u2ABF","⥹":"\u2979","⊂":"\u2282","⊆":"\u2286","⫅":"\u2AC5","⊊":"\u228A","⫋":"\u2ACB","⫇":"\u2AC7","⫕":"\u2AD5","⫓":"\u2AD3","≻":"\u227B","⪸":"\u2AB8","≽":"\u227D","⪰":"\u2AB0","⪺":"\u2ABA","⪶":"\u2AB6","⋩":"\u22E9","≿":"\u227F","∑":"\u2211","♪":"\u266A","¹":"\xB9","¹":"\xB9","²":"\xB2","²":"\xB2","³":"\xB3","³":"\xB3","⊃":"\u2283","⫆":"\u2AC6","⪾":"\u2ABE","⫘":"\u2AD8","⊇":"\u2287","⫄":"\u2AC4","⟉":"\u27C9","⫗":"\u2AD7","⥻":"\u297B","⫂":"\u2AC2","⫌":"\u2ACC","⊋":"\u228B","⫀":"\u2AC0","⊃":"\u2283","⊇":"\u2287","⫆":"\u2AC6","⊋":"\u228B","⫌":"\u2ACC","⫈":"\u2AC8","⫔":"\u2AD4","⫖":"\u2AD6","⇙":"\u21D9","⤦":"\u2926","↙":"\u2199","↙":"\u2199","⤪":"\u292A","ß":"\xDF","ß":"\xDF","⌖":"\u2316","τ":"\u03C4","⎴":"\u23B4","ť":"\u0165","ţ":"\u0163","т":"\u0442","⃛":"\u20DB","⌕":"\u2315","𝔱":"\u{1D531}","∴":"\u2234","∴":"\u2234","θ":"\u03B8","ϑ":"\u03D1","ϑ":"\u03D1","≈":"\u2248","∼":"\u223C"," ":"\u2009","≈":"\u2248","∼":"\u223C","þ":"\xFE","þ":"\xFE","˜":"\u02DC","×":"\xD7","×":"\xD7","⊠":"\u22A0","⨱":"\u2A31","⨰":"\u2A30","∭":"\u222D","⤨":"\u2928","⊤":"\u22A4","⌶":"\u2336","⫱":"\u2AF1","𝕥":"\u{1D565}","⫚":"\u2ADA","⤩":"\u2929","‴":"\u2034","™":"\u2122","▵":"\u25B5","▿":"\u25BF","◃":"\u25C3","⊴":"\u22B4","≜":"\u225C","▹":"\u25B9","⊵":"\u22B5","◬":"\u25EC","≜":"\u225C","⨺":"\u2A3A","⨹":"\u2A39","⧍":"\u29CD","⨻":"\u2A3B","⏢":"\u23E2","𝓉":"\u{1D4C9}","ц":"\u0446","ћ":"\u045B","ŧ":"\u0167","≬":"\u226C","↞":"\u219E","↠":"\u21A0","⇑":"\u21D1","⥣":"\u2963","ú":"\xFA","ú":"\xFA","↑":"\u2191","ў":"\u045E","ŭ":"\u016D","û":"\xFB","û":"\xFB","у":"\u0443","⇅":"\u21C5","ű":"\u0171","⥮":"\u296E","⥾":"\u297E","𝔲":"\u{1D532}","ù":"\xF9","ù":"\xF9","↿":"\u21BF","↾":"\u21BE","▀":"\u2580","⌜":"\u231C","⌜":"\u231C","⌏":"\u230F","◸":"\u25F8","ū":"\u016B","¨":"\xA8","¨":"\xA8","ų":"\u0173","𝕦":"\u{1D566}","↑":"\u2191","↕":"\u2195","↿":"\u21BF","↾":"\u21BE","⊎":"\u228E","υ":"\u03C5","ϒ":"\u03D2","υ":"\u03C5","⇈":"\u21C8","⌝":"\u231D","⌝":"\u231D","⌎":"\u230E","ů":"\u016F","◹":"\u25F9","𝓊":"\u{1D4CA}","⋰":"\u22F0","ũ":"\u0169","▵":"\u25B5","▴":"\u25B4","⇈":"\u21C8","ü":"\xFC","ü":"\xFC","⦧":"\u29A7","⇕":"\u21D5","⫨":"\u2AE8","⫩":"\u2AE9","⊨":"\u22A8","⦜":"\u299C","ϵ":"\u03F5","ϰ":"\u03F0","∅":"\u2205","ϕ":"\u03D5","ϖ":"\u03D6","∝":"\u221D","↕":"\u2195","ϱ":"\u03F1","ς":"\u03C2","⊊︀":"\u228A\uFE00","⫋︀":"\u2ACB\uFE00","⊋︀":"\u228B\uFE00","⫌︀":"\u2ACC\uFE00","ϑ":"\u03D1","⊲":"\u22B2","⊳":"\u22B3","в":"\u0432","⊢":"\u22A2","∨":"\u2228","⊻":"\u22BB","≚":"\u225A","⋮":"\u22EE","|":"|","|":"|","𝔳":"\u{1D533}","⊲":"\u22B2","⊂⃒":"\u2282\u20D2","⊃⃒":"\u2283\u20D2","𝕧":"\u{1D567}","∝":"\u221D","⊳":"\u22B3","𝓋":"\u{1D4CB}","⫋︀":"\u2ACB\uFE00","⊊︀":"\u228A\uFE00","⫌︀":"\u2ACC\uFE00","⊋︀":"\u228B\uFE00","⦚":"\u299A","ŵ":"\u0175","⩟":"\u2A5F","∧":"\u2227","≙":"\u2259","℘":"\u2118","𝔴":"\u{1D534}","𝕨":"\u{1D568}","℘":"\u2118","≀":"\u2240","≀":"\u2240","𝓌":"\u{1D4CC}","⋂":"\u22C2","◯":"\u25EF","⋃":"\u22C3","▽":"\u25BD","𝔵":"\u{1D535}","⟺":"\u27FA","⟷":"\u27F7","ξ":"\u03BE","⟸":"\u27F8","⟵":"\u27F5","⟼":"\u27FC","⋻":"\u22FB","⨀":"\u2A00","𝕩":"\u{1D569}","⨁":"\u2A01","⨂":"\u2A02","⟹":"\u27F9","⟶":"\u27F6","𝓍":"\u{1D4CD}","⨆":"\u2A06","⨄":"\u2A04","△":"\u25B3","⋁":"\u22C1","⋀":"\u22C0","ý":"\xFD","ý":"\xFD","я":"\u044F","ŷ":"\u0177","ы":"\u044B","¥":"\xA5","¥":"\xA5","𝔶":"\u{1D536}","ї":"\u0457","𝕪":"\u{1D56A}","𝓎":"\u{1D4CE}","ю":"\u044E","ÿ":"\xFF","ÿ":"\xFF","ź":"\u017A","ž":"\u017E","з":"\u0437","ż":"\u017C","ℨ":"\u2128","ζ":"\u03B6","𝔷":"\u{1D537}","ж":"\u0436","⇝":"\u21DD","𝕫":"\u{1D56B}","𝓏":"\u{1D4CF}","‍":"\u200D","‌":"\u200C"},characters:{\u00C6:"Æ","&":"&",\u00C1:"Á",\u0102:"Ă",\u00C2:"Â",\u0410:"А","\u{1D504}":"𝔄",\u00C0:"À",\u0391:"Α",\u0100:"Ā","\u2A53":"⩓",\u0104:"Ą","\u{1D538}":"𝔸","\u2061":"⁡",\u00C5:"Å","\u{1D49C}":"𝒜","\u2254":"≔",\u00C3:"Ã",\u00C4:"Ä","\u2216":"∖","\u2AE7":"⫧","\u2306":"⌆",\u0411:"Б","\u2235":"∵",\u212C:"ℬ",\u0392:"Β","\u{1D505}":"𝔅","\u{1D539}":"𝔹","\u02D8":"˘","\u224E":"≎",\u0427:"Ч","\xA9":"©",\u0106:"Ć","\u22D2":"⋒","\u2145":"ⅅ",\u212D:"ℭ",\u010C:"Č",\u00C7:"Ç",\u0108:"Ĉ","\u2230":"∰",\u010A:"Ċ","\xB8":"¸","\xB7":"·",\u03A7:"Χ","\u2299":"⊙","\u2296":"⊖","\u2295":"⊕","\u2297":"⊗","\u2232":"∲","\u201D":"”","\u2019":"’","\u2237":"∷","\u2A74":"⩴","\u2261":"≡","\u222F":"∯","\u222E":"∮",\u2102:"ℂ","\u2210":"∐","\u2233":"∳","\u2A2F":"⨯","\u{1D49E}":"𝒞","\u22D3":"⋓","\u224D":"≍","\u2911":"⤑",\u0402:"Ђ",\u0405:"Ѕ",\u040F:"Џ","\u2021":"‡","\u21A1":"↡","\u2AE4":"⫤",\u010E:"Ď",\u0414:"Д","\u2207":"∇",\u0394:"Δ","\u{1D507}":"𝔇","\xB4":"´","\u02D9":"˙","\u02DD":"˝","`":"`","\u02DC":"˜","\u22C4":"⋄","\u2146":"ⅆ","\u{1D53B}":"𝔻","\xA8":"¨","\u20DC":"⃜","\u2250":"≐","\u21D3":"⇓","\u21D0":"⇐","\u21D4":"⇔","\u27F8":"⟸","\u27FA":"⟺","\u27F9":"⟹","\u21D2":"⇒","\u22A8":"⊨","\u21D1":"⇑","\u21D5":"⇕","\u2225":"∥","\u2193":"↓","\u2913":"⤓","\u21F5":"⇵","\u0311":"̑","\u2950":"⥐","\u295E":"⥞","\u21BD":"↽","\u2956":"⥖","\u295F":"⥟","\u21C1":"⇁","\u2957":"⥗","\u22A4":"⊤","\u21A7":"↧","\u{1D49F}":"𝒟",\u0110:"Đ",\u014A:"Ŋ",\u00D0:"Ð",\u00C9:"É",\u011A:"Ě",\u00CA:"Ê",\u042D:"Э",\u0116:"Ė","\u{1D508}":"𝔈",\u00C8:"È","\u2208":"∈",\u0112:"Ē","\u25FB":"◻","\u25AB":"▫",\u0118:"Ę","\u{1D53C}":"𝔼",\u0395:"Ε","\u2A75":"⩵","\u2242":"≂","\u21CC":"⇌",\u2130:"ℰ","\u2A73":"⩳",\u0397:"Η",\u00CB:"Ë","\u2203":"∃","\u2147":"ⅇ",\u0424:"Ф","\u{1D509}":"𝔉","\u25FC":"◼","\u25AA":"▪","\u{1D53D}":"𝔽","\u2200":"∀",\u2131:"ℱ",\u0403:"Ѓ",">":">",\u0393:"Γ",\u03DC:"Ϝ",\u011E:"Ğ",\u0122:"Ģ",\u011C:"Ĝ",\u0413:"Г",\u0120:"Ġ","\u{1D50A}":"𝔊","\u22D9":"⋙","\u{1D53E}":"𝔾","\u2265":"≥","\u22DB":"⋛","\u2267":"≧","\u2AA2":"⪢","\u2277":"≷","\u2A7E":"⩾","\u2273":"≳","\u{1D4A2}":"𝒢","\u226B":"≫",\u042A:"Ъ","\u02C7":"ˇ","^":"^",\u0124:"Ĥ",\u210C:"ℌ",\u210B:"ℋ",\u210D:"ℍ","\u2500":"─",\u0126:"Ħ","\u224F":"≏",\u0415:"Е",\u0132:"IJ",\u0401:"Ё",\u00CD:"Í",\u00CE:"Î",\u0418:"И",\u0130:"İ",\u2111:"ℑ",\u00CC:"Ì",\u012A:"Ī","\u2148":"ⅈ","\u222C":"∬","\u222B":"∫","\u22C2":"⋂","\u2063":"⁣","\u2062":"⁢",\u012E:"Į","\u{1D540}":"𝕀",\u0399:"Ι",\u2110:"ℐ",\u0128:"Ĩ",\u0406:"І",\u00CF:"Ï",\u0134:"Ĵ",\u0419:"Й","\u{1D50D}":"𝔍","\u{1D541}":"𝕁","\u{1D4A5}":"𝒥",\u0408:"Ј",\u0404:"Є",\u0425:"Х",\u040C:"Ќ",\u039A:"Κ",\u0136:"Ķ",\u041A:"К","\u{1D50E}":"𝔎","\u{1D542}":"𝕂","\u{1D4A6}":"𝒦",\u0409:"Љ","<":"<",\u0139:"Ĺ",\u039B:"Λ","\u27EA":"⟪",\u2112:"ℒ","\u219E":"↞",\u013D:"Ľ",\u013B:"Ļ",\u041B:"Л","\u27E8":"⟨","\u2190":"←","\u21E4":"⇤","\u21C6":"⇆","\u2308":"⌈","\u27E6":"⟦","\u2961":"⥡","\u21C3":"⇃","\u2959":"⥙","\u230A":"⌊","\u2194":"↔","\u294E":"⥎","\u22A3":"⊣","\u21A4":"↤","\u295A":"⥚","\u22B2":"⊲","\u29CF":"⧏","\u22B4":"⊴","\u2951":"⥑","\u2960":"⥠","\u21BF":"↿","\u2958":"⥘","\u21BC":"↼","\u2952":"⥒","\u22DA":"⋚","\u2266":"≦","\u2276":"≶","\u2AA1":"⪡","\u2A7D":"⩽","\u2272":"≲","\u{1D50F}":"𝔏","\u22D8":"⋘","\u21DA":"⇚",\u013F:"Ŀ","\u27F5":"⟵","\u27F7":"⟷","\u27F6":"⟶","\u{1D543}":"𝕃","\u2199":"↙","\u2198":"↘","\u21B0":"↰",\u0141:"Ł","\u226A":"≪","\u2905":"⤅",\u041C:"М","\u205F":" ",\u2133:"ℳ","\u{1D510}":"𝔐","\u2213":"∓","\u{1D544}":"𝕄",\u039C:"Μ",\u040A:"Њ",\u0143:"Ń",\u0147:"Ň",\u0145:"Ņ",\u041D:"Н","\u200B":"​","\n":"
","\u{1D511}":"𝔑","\u2060":"⁠","\xA0":" ",\u2115:"ℕ","\u2AEC":"⫬","\u2262":"≢","\u226D":"≭","\u2226":"∦","\u2209":"∉","\u2260":"≠","\u2242\u0338":"≂̸","\u2204":"∄","\u226F":"≯","\u2271":"≱","\u2267\u0338":"≧̸","\u226B\u0338":"≫̸","\u2279":"≹","\u2A7E\u0338":"⩾̸","\u2275":"≵","\u224E\u0338":"≎̸","\u224F\u0338":"≏̸","\u22EA":"⋪","\u29CF\u0338":"⧏̸","\u22EC":"⋬","\u226E":"≮","\u2270":"≰","\u2278":"≸","\u226A\u0338":"≪̸","\u2A7D\u0338":"⩽̸","\u2274":"≴","\u2AA2\u0338":"⪢̸","\u2AA1\u0338":"⪡̸","\u2280":"⊀","\u2AAF\u0338":"⪯̸","\u22E0":"⋠","\u220C":"∌","\u22EB":"⋫","\u29D0\u0338":"⧐̸","\u22ED":"⋭","\u228F\u0338":"⊏̸","\u22E2":"⋢","\u2290\u0338":"⊐̸","\u22E3":"⋣","\u2282\u20D2":"⊂⃒","\u2288":"⊈","\u2281":"⊁","\u2AB0\u0338":"⪰̸","\u22E1":"⋡","\u227F\u0338":"≿̸","\u2283\u20D2":"⊃⃒","\u2289":"⊉","\u2241":"≁","\u2244":"≄","\u2247":"≇","\u2249":"≉","\u2224":"∤","\u{1D4A9}":"𝒩",\u00D1:"Ñ",\u039D:"Ν",\u0152:"Œ",\u00D3:"Ó",\u00D4:"Ô",\u041E:"О",\u0150:"Ő","\u{1D512}":"𝔒",\u00D2:"Ò",\u014C:"Ō",\u03A9:"Ω",\u039F:"Ο","\u{1D546}":"𝕆","\u201C":"“","\u2018":"‘","\u2A54":"⩔","\u{1D4AA}":"𝒪",\u00D8:"Ø",\u00D5:"Õ","\u2A37":"⨷",\u00D6:"Ö","\u203E":"‾","\u23DE":"⏞","\u23B4":"⎴","\u23DC":"⏜","\u2202":"∂",\u041F:"П","\u{1D513}":"𝔓",\u03A6:"Φ",\u03A0:"Π","\xB1":"±",\u2119:"ℙ","\u2ABB":"⪻","\u227A":"≺","\u2AAF":"⪯","\u227C":"≼","\u227E":"≾","\u2033":"″","\u220F":"∏","\u221D":"∝","\u{1D4AB}":"𝒫",\u03A8:"Ψ",'"':""","\u{1D514}":"𝔔",\u211A:"ℚ","\u{1D4AC}":"𝒬","\u2910":"⤐","\xAE":"®",\u0154:"Ŕ","\u27EB":"⟫","\u21A0":"↠","\u2916":"⤖",\u0158:"Ř",\u0156:"Ŗ",\u0420:"Р",\u211C:"ℜ","\u220B":"∋","\u21CB":"⇋","\u296F":"⥯",\u03A1:"Ρ","\u27E9":"⟩","\u2192":"→","\u21E5":"⇥","\u21C4":"⇄","\u2309":"⌉","\u27E7":"⟧","\u295D":"⥝","\u21C2":"⇂","\u2955":"⥕","\u230B":"⌋","\u22A2":"⊢","\u21A6":"↦","\u295B":"⥛","\u22B3":"⊳","\u29D0":"⧐","\u22B5":"⊵","\u294F":"⥏","\u295C":"⥜","\u21BE":"↾","\u2954":"⥔","\u21C0":"⇀","\u2953":"⥓",\u211D:"ℝ","\u2970":"⥰","\u21DB":"⇛",\u211B:"ℛ","\u21B1":"↱","\u29F4":"⧴",\u0429:"Щ",\u0428:"Ш",\u042C:"Ь",\u015A:"Ś","\u2ABC":"⪼",\u0160:"Š",\u015E:"Ş",\u015C:"Ŝ",\u0421:"С","\u{1D516}":"𝔖","\u2191":"↑",\u03A3:"Σ","\u2218":"∘","\u{1D54A}":"𝕊","\u221A":"√","\u25A1":"□","\u2293":"⊓","\u228F":"⊏","\u2291":"⊑","\u2290":"⊐","\u2292":"⊒","\u2294":"⊔","\u{1D4AE}":"𝒮","\u22C6":"⋆","\u22D0":"⋐","\u2286":"⊆","\u227B":"≻","\u2AB0":"⪰","\u227D":"≽","\u227F":"≿","\u2211":"∑","\u22D1":"⋑","\u2283":"⊃","\u2287":"⊇",\u00DE:"Þ","\u2122":"™",\u040B:"Ћ",\u0426:"Ц"," ":"	",\u03A4:"Τ",\u0164:"Ť",\u0162:"Ţ",\u0422:"Т","\u{1D517}":"𝔗","\u2234":"∴",\u0398:"Θ","\u205F\u200A":"  ","\u2009":" ","\u223C":"∼","\u2243":"≃","\u2245":"≅","\u2248":"≈","\u{1D54B}":"𝕋","\u20DB":"⃛","\u{1D4AF}":"𝒯",\u0166:"Ŧ",\u00DA:"Ú","\u219F":"↟","\u2949":"⥉",\u040E:"Ў",\u016C:"Ŭ",\u00DB:"Û",\u0423:"У",\u0170:"Ű","\u{1D518}":"𝔘",\u00D9:"Ù",\u016A:"Ū",_:"_","\u23DF":"⏟","\u23B5":"⎵","\u23DD":"⏝","\u22C3":"⋃","\u228E":"⊎",\u0172:"Ų","\u{1D54C}":"𝕌","\u2912":"⤒","\u21C5":"⇅","\u2195":"↕","\u296E":"⥮","\u22A5":"⊥","\u21A5":"↥","\u2196":"↖","\u2197":"↗",\u03D2:"ϒ",\u03A5:"Υ",\u016E:"Ů","\u{1D4B0}":"𝒰",\u0168:"Ũ",\u00DC:"Ü","\u22AB":"⊫","\u2AEB":"⫫",\u0412:"В","\u22A9":"⊩","\u2AE6":"⫦","\u22C1":"⋁","\u2016":"‖","\u2223":"∣","|":"|","\u2758":"❘","\u2240":"≀","\u200A":" ","\u{1D519}":"𝔙","\u{1D54D}":"𝕍","\u{1D4B1}":"𝒱","\u22AA":"⊪",\u0174:"Ŵ","\u22C0":"⋀","\u{1D51A}":"𝔚","\u{1D54E}":"𝕎","\u{1D4B2}":"𝒲","\u{1D51B}":"𝔛",\u039E:"Ξ","\u{1D54F}":"𝕏","\u{1D4B3}":"𝒳",\u042F:"Я",\u0407:"Ї",\u042E:"Ю",\u00DD:"Ý",\u0176:"Ŷ",\u042B:"Ы","\u{1D51C}":"𝔜","\u{1D550}":"𝕐","\u{1D4B4}":"𝒴",\u0178:"Ÿ",\u0416:"Ж",\u0179:"Ź",\u017D:"Ž",\u0417:"З",\u017B:"Ż",\u0396:"Ζ",\u2128:"ℨ",\u2124:"ℤ","\u{1D4B5}":"𝒵",\u00E1:"á",\u0103:"ă","\u223E":"∾","\u223E\u0333":"∾̳","\u223F":"∿",\u00E2:"â",\u0430:"а",\u00E6:"æ","\u{1D51E}":"𝔞",\u00E0:"à",\u2135:"ℵ",\u03B1:"α",\u0101:"ā","\u2A3F":"⨿","\u2227":"∧","\u2A55":"⩕","\u2A5C":"⩜","\u2A58":"⩘","\u2A5A":"⩚","\u2220":"∠","\u29A4":"⦤","\u2221":"∡","\u29A8":"⦨","\u29A9":"⦩","\u29AA":"⦪","\u29AB":"⦫","\u29AC":"⦬","\u29AD":"⦭","\u29AE":"⦮","\u29AF":"⦯","\u221F":"∟","\u22BE":"⊾","\u299D":"⦝","\u2222":"∢","\u237C":"⍼",\u0105:"ą","\u{1D552}":"𝕒","\u2A70":"⩰","\u2A6F":"⩯","\u224A":"≊","\u224B":"≋","'":"'",\u00E5:"å","\u{1D4B6}":"𝒶","*":"*",\u00E3:"ã",\u00E4:"ä","\u2A11":"⨑","\u2AED":"⫭","\u224C":"≌","\u03F6":"϶","\u2035":"‵","\u223D":"∽","\u22CD":"⋍","\u22BD":"⊽","\u2305":"⌅","\u23B6":"⎶",\u0431:"б","\u201E":"„","\u29B0":"⦰",\u03B2:"β",\u2136:"ℶ","\u226C":"≬","\u{1D51F}":"𝔟","\u25EF":"◯","\u2A00":"⨀","\u2A01":"⨁","\u2A02":"⨂","\u2A06":"⨆","\u2605":"★","\u25BD":"▽","\u25B3":"△","\u2A04":"⨄","\u290D":"⤍","\u29EB":"⧫","\u25B4":"▴","\u25BE":"▾","\u25C2":"◂","\u25B8":"▸","\u2423":"␣","\u2592":"▒","\u2591":"░","\u2593":"▓","\u2588":"█","=\u20E5":"=⃥","\u2261\u20E5":"≡⃥","\u2310":"⌐","\u{1D553}":"𝕓","\u22C8":"⋈","\u2557":"╗","\u2554":"╔","\u2556":"╖","\u2553":"╓","\u2550":"═","\u2566":"╦","\u2569":"╩","\u2564":"╤","\u2567":"╧","\u255D":"╝","\u255A":"╚","\u255C":"╜","\u2559":"╙","\u2551":"║","\u256C":"╬","\u2563":"╣","\u2560":"╠","\u256B":"╫","\u2562":"╢","\u255F":"╟","\u29C9":"⧉","\u2555":"╕","\u2552":"╒","\u2510":"┐","\u250C":"┌","\u2565":"╥","\u2568":"╨","\u252C":"┬","\u2534":"┴","\u229F":"⊟","\u229E":"⊞","\u22A0":"⊠","\u255B":"╛","\u2558":"╘","\u2518":"┘","\u2514":"└","\u2502":"│","\u256A":"╪","\u2561":"╡","\u255E":"╞","\u253C":"┼","\u2524":"┤","\u251C":"├","\xA6":"¦","\u{1D4B7}":"𝒷","\u204F":"⁏","\\":"\","\u29C5":"⧅","\u27C8":"⟈","\u2022":"•","\u2AAE":"⪮",\u0107:"ć","\u2229":"∩","\u2A44":"⩄","\u2A49":"⩉","\u2A4B":"⩋","\u2A47":"⩇","\u2A40":"⩀","\u2229\uFE00":"∩︀","\u2041":"⁁","\u2A4D":"⩍",\u010D:"č",\u00E7:"ç",\u0109:"ĉ","\u2A4C":"⩌","\u2A50":"⩐",\u010B:"ċ","\u29B2":"⦲","\xA2":"¢","\u{1D520}":"𝔠",\u0447:"ч","\u2713":"✓",\u03C7:"χ","\u25CB":"○","\u29C3":"⧃","\u02C6":"ˆ","\u2257":"≗","\u21BA":"↺","\u21BB":"↻","\u24C8":"Ⓢ","\u229B":"⊛","\u229A":"⊚","\u229D":"⊝","\u2A10":"⨐","\u2AEF":"⫯","\u29C2":"⧂","\u2663":"♣",":":":",",":",","@":"@","\u2201":"∁","\u2A6D":"⩭","\u{1D554}":"𝕔","\u2117":"℗","\u21B5":"↵","\u2717":"✗","\u{1D4B8}":"𝒸","\u2ACF":"⫏","\u2AD1":"⫑","\u2AD0":"⫐","\u2AD2":"⫒","\u22EF":"⋯","\u2938":"⤸","\u2935":"⤵","\u22DE":"⋞","\u22DF":"⋟","\u21B6":"↶","\u293D":"⤽","\u222A":"∪","\u2A48":"⩈","\u2A46":"⩆","\u2A4A":"⩊","\u228D":"⊍","\u2A45":"⩅","\u222A\uFE00":"∪︀","\u21B7":"↷","\u293C":"⤼","\u22CE":"⋎","\u22CF":"⋏","\xA4":"¤","\u2231":"∱","\u232D":"⌭","\u2965":"⥥","\u2020":"†",\u2138:"ℸ","\u2010":"‐","\u290F":"⤏",\u010F:"ď",\u0434:"д","\u21CA":"⇊","\u2A77":"⩷","\xB0":"°",\u03B4:"δ","\u29B1":"⦱","\u297F":"⥿","\u{1D521}":"𝔡","\u2666":"♦",\u03DD:"ϝ","\u22F2":"⋲","\xF7":"÷","\u22C7":"⋇",\u0452:"ђ","\u231E":"⌞","\u230D":"⌍",$:"$","\u{1D555}":"𝕕","\u2251":"≑","\u2238":"∸","\u2214":"∔","\u22A1":"⊡","\u231F":"⌟","\u230C":"⌌","\u{1D4B9}":"𝒹",\u0455:"ѕ","\u29F6":"⧶",\u0111:"đ","\u22F1":"⋱","\u25BF":"▿","\u29A6":"⦦",\u045F:"џ","\u27FF":"⟿",\u00E9:"é","\u2A6E":"⩮",\u011B:"ě","\u2256":"≖",\u00EA:"ê","\u2255":"≕",\u044D:"э",\u0117:"ė","\u2252":"≒","\u{1D522}":"𝔢","\u2A9A":"⪚",\u00E8:"è","\u2A96":"⪖","\u2A98":"⪘","\u2A99":"⪙","\u23E7":"⏧",\u2113:"ℓ","\u2A95":"⪕","\u2A97":"⪗",\u0113:"ē","\u2205":"∅","\u2004":" ","\u2005":" ","\u2003":" ",\u014B:"ŋ","\u2002":" ",\u0119:"ę","\u{1D556}":"𝕖","\u22D5":"⋕","\u29E3":"⧣","\u2A71":"⩱",\u03B5:"ε","\u03F5":"ϵ","=":"=","\u225F":"≟","\u2A78":"⩸","\u29E5":"⧥","\u2253":"≓","\u2971":"⥱",\u212F:"ℯ",\u03B7:"η",\u00F0:"ð",\u00EB:"ë","\u20AC":"€","!":"!",\u0444:"ф","\u2640":"♀",\uFB03:"ffi",\uFB00:"ff",\uFB04:"ffl","\u{1D523}":"𝔣",\uFB01:"fi",fj:"fj","\u266D":"♭",\uFB02:"fl","\u25B1":"▱",\u0192:"ƒ","\u{1D557}":"𝕗","\u22D4":"⋔","\u2AD9":"⫙","\u2A0D":"⨍","\xBD":"½","\u2153":"⅓","\xBC":"¼","\u2155":"⅕","\u2159":"⅙","\u215B":"⅛","\u2154":"⅔","\u2156":"⅖","\xBE":"¾","\u2157":"⅗","\u215C":"⅜","\u2158":"⅘","\u215A":"⅚","\u215D":"⅝","\u215E":"⅞","\u2044":"⁄","\u2322":"⌢","\u{1D4BB}":"𝒻","\u2A8C":"⪌",\u01F5:"ǵ",\u03B3:"γ","\u2A86":"⪆",\u011F:"ğ",\u011D:"ĝ",\u0433:"г",\u0121:"ġ","\u2AA9":"⪩","\u2A80":"⪀","\u2A82":"⪂","\u2A84":"⪄","\u22DB\uFE00":"⋛︀","\u2A94":"⪔","\u{1D524}":"𝔤",\u2137:"ℷ",\u0453:"ѓ","\u2A92":"⪒","\u2AA5":"⪥","\u2AA4":"⪤","\u2269":"≩","\u2A8A":"⪊","\u2A88":"⪈","\u22E7":"⋧","\u{1D558}":"𝕘",\u210A:"ℊ","\u2A8E":"⪎","\u2A90":"⪐","\u2AA7":"⪧","\u2A7A":"⩺","\u22D7":"⋗","\u2995":"⦕","\u2A7C":"⩼","\u2978":"⥸","\u2269\uFE00":"≩︀",\u044A:"ъ","\u2948":"⥈","\u21AD":"↭",\u210F:"ℏ",\u0125:"ĥ","\u2665":"♥","\u2026":"…","\u22B9":"⊹","\u{1D525}":"𝔥","\u2925":"⤥","\u2926":"⤦","\u21FF":"⇿","\u223B":"∻","\u21A9":"↩","\u21AA":"↪","\u{1D559}":"𝕙","\u2015":"―","\u{1D4BD}":"𝒽",\u0127:"ħ","\u2043":"⁃",\u00ED:"í",\u00EE:"î",\u0438:"и",\u0435:"е","\xA1":"¡","\u{1D526}":"𝔦",\u00EC:"ì","\u2A0C":"⨌","\u222D":"∭","\u29DC":"⧜","\u2129":"℩",\u0133:"ij",\u012B:"ī",\u0131:"ı","\u22B7":"⊷",\u01B5:"Ƶ","\u2105":"℅","\u221E":"∞","\u29DD":"⧝","\u22BA":"⊺","\u2A17":"⨗","\u2A3C":"⨼",\u0451:"ё",\u012F:"į","\u{1D55A}":"𝕚",\u03B9:"ι","\xBF":"¿","\u{1D4BE}":"𝒾","\u22F9":"⋹","\u22F5":"⋵","\u22F4":"⋴","\u22F3":"⋳",\u0129:"ĩ",\u0456:"і",\u00EF:"ï",\u0135:"ĵ",\u0439:"й","\u{1D527}":"𝔧","\u0237":"ȷ","\u{1D55B}":"𝕛","\u{1D4BF}":"𝒿",\u0458:"ј",\u0454:"є",\u03BA:"κ",\u03F0:"ϰ",\u0137:"ķ",\u043A:"к","\u{1D528}":"𝔨",\u0138:"ĸ",\u0445:"х",\u045C:"ќ","\u{1D55C}":"𝕜","\u{1D4C0}":"𝓀","\u291B":"⤛","\u290E":"⤎","\u2A8B":"⪋","\u2962":"⥢",\u013A:"ĺ","\u29B4":"⦴",\u03BB:"λ","\u2991":"⦑","\u2A85":"⪅","\xAB":"«","\u291F":"⤟","\u291D":"⤝","\u21AB":"↫","\u2939":"⤹","\u2973":"⥳","\u21A2":"↢","\u2AAB":"⪫","\u2919":"⤙","\u2AAD":"⪭","\u2AAD\uFE00":"⪭︀","\u290C":"⤌","\u2772":"❲","{":"{","[":"[","\u298B":"⦋","\u298F":"⦏","\u298D":"⦍",\u013E:"ľ",\u013C:"ļ",\u043B:"л","\u2936":"⤶","\u2967":"⥧","\u294B":"⥋","\u21B2":"↲","\u2264":"≤","\u21C7":"⇇","\u22CB":"⋋","\u2AA8":"⪨","\u2A7F":"⩿","\u2A81":"⪁","\u2A83":"⪃","\u22DA\uFE00":"⋚︀","\u2A93":"⪓","\u22D6":"⋖","\u297C":"⥼","\u{1D529}":"𝔩","\u2A91":"⪑","\u296A":"⥪","\u2584":"▄",\u0459:"љ","\u296B":"⥫","\u25FA":"◺",\u0140:"ŀ","\u23B0":"⎰","\u2268":"≨","\u2A89":"⪉","\u2A87":"⪇","\u22E6":"⋦","\u27EC":"⟬","\u21FD":"⇽","\u27FC":"⟼","\u21AC":"↬","\u2985":"⦅","\u{1D55D}":"𝕝","\u2A2D":"⨭","\u2A34":"⨴","\u2217":"∗","\u25CA":"◊","(":"(","\u2993":"⦓","\u296D":"⥭","\u200E":"‎","\u22BF":"⊿","\u2039":"‹","\u{1D4C1}":"𝓁","\u2A8D":"⪍","\u2A8F":"⪏","\u201A":"‚",\u0142:"ł","\u2AA6":"⪦","\u2A79":"⩹","\u22C9":"⋉","\u2976":"⥶","\u2A7B":"⩻","\u2996":"⦖","\u25C3":"◃","\u294A":"⥊","\u2966":"⥦","\u2268\uFE00":"≨︀","\u223A":"∺","\xAF":"¯","\u2642":"♂","\u2720":"✠","\u25AE":"▮","\u2A29":"⨩",\u043C:"м","\u2014":"—","\u{1D52A}":"𝔪","\u2127":"℧",\u00B5:"µ","\u2AF0":"⫰","\u2212":"−","\u2A2A":"⨪","\u2ADB":"⫛","\u22A7":"⊧","\u{1D55E}":"𝕞","\u{1D4C2}":"𝓂",\u03BC:"μ","\u22B8":"⊸","\u22D9\u0338":"⋙̸","\u226B\u20D2":"≫⃒","\u21CD":"⇍","\u21CE":"⇎","\u22D8\u0338":"⋘̸","\u226A\u20D2":"≪⃒","\u21CF":"⇏","\u22AF":"⊯","\u22AE":"⊮",\u0144:"ń","\u2220\u20D2":"∠⃒","\u2A70\u0338":"⩰̸","\u224B\u0338":"≋̸",\u0149:"ʼn","\u266E":"♮","\u2A43":"⩃",\u0148:"ň",\u0146:"ņ","\u2A6D\u0338":"⩭̸","\u2A42":"⩂",\u043D:"н","\u2013":"–","\u21D7":"⇗","\u2924":"⤤","\u2250\u0338":"≐̸","\u2928":"⤨","\u{1D52B}":"𝔫","\u21AE":"↮","\u2AF2":"⫲","\u22FC":"⋼","\u22FA":"⋺",\u045A:"њ","\u2266\u0338":"≦̸","\u219A":"↚","\u2025":"‥","\u{1D55F}":"𝕟","\xAC":"¬","\u22F9\u0338":"⋹̸","\u22F5\u0338":"⋵̸","\u22F7":"⋷","\u22F6":"⋶","\u22FE":"⋾","\u22FD":"⋽","\u2AFD\u20E5":"⫽⃥","\u2202\u0338":"∂̸","\u2A14":"⨔","\u219B":"↛","\u2933\u0338":"⤳̸","\u219D\u0338":"↝̸","\u{1D4C3}":"𝓃","\u2284":"⊄","\u2AC5\u0338":"⫅̸","\u2285":"⊅","\u2AC6\u0338":"⫆̸",\u00F1:"ñ",\u03BD:"ν","#":"#","\u2116":"№","\u2007":" ","\u22AD":"⊭","\u2904":"⤄","\u224D\u20D2":"≍⃒","\u22AC":"⊬","\u2265\u20D2":"≥⃒",">\u20D2":">⃒","\u29DE":"⧞","\u2902":"⤂","\u2264\u20D2":"≤⃒","<\u20D2":"<⃒","\u22B4\u20D2":"⊴⃒","\u2903":"⤃","\u22B5\u20D2":"⊵⃒","\u223C\u20D2":"∼⃒","\u21D6":"⇖","\u2923":"⤣","\u2927":"⤧",\u00F3:"ó",\u00F4:"ô",\u043E:"о",\u0151:"ő","\u2A38":"⨸","\u29BC":"⦼",\u0153:"œ","\u29BF":"⦿","\u{1D52C}":"𝔬","\u02DB":"˛",\u00F2:"ò","\u29C1":"⧁","\u29B5":"⦵","\u29BE":"⦾","\u29BB":"⦻","\u29C0":"⧀",\u014D:"ō",\u03C9:"ω",\u03BF:"ο","\u29B6":"⦶","\u{1D560}":"𝕠","\u29B7":"⦷","\u29B9":"⦹","\u2228":"∨","\u2A5D":"⩝",\u2134:"ℴ",\u00AA:"ª",\u00BA:"º","\u22B6":"⊶","\u2A56":"⩖","\u2A57":"⩗","\u2A5B":"⩛",\u00F8:"ø","\u2298":"⊘",\u00F5:"õ","\u2A36":"⨶",\u00F6:"ö","\u233D":"⌽","\xB6":"¶","\u2AF3":"⫳","\u2AFD":"⫽",\u043F:"п","%":"%",".":".","\u2030":"‰","\u2031":"‱","\u{1D52D}":"𝔭",\u03C6:"φ",\u03D5:"ϕ","\u260E":"☎",\u03C0:"π",\u03D6:"ϖ",\u210E:"ℎ","+":"+","\u2A23":"⨣","\u2A22":"⨢","\u2A25":"⨥","\u2A72":"⩲","\u2A26":"⨦","\u2A27":"⨧","\u2A15":"⨕","\u{1D561}":"𝕡","\xA3":"£","\u2AB3":"⪳","\u2AB7":"⪷","\u2AB9":"⪹","\u2AB5":"⪵","\u22E8":"⋨","\u2032":"′","\u232E":"⌮","\u2312":"⌒","\u2313":"⌓","\u22B0":"⊰","\u{1D4C5}":"𝓅",\u03C8:"ψ","\u2008":" ","\u{1D52E}":"𝔮","\u{1D562}":"𝕢","\u2057":"⁗","\u{1D4C6}":"𝓆","\u2A16":"⨖","?":"?","\u291C":"⤜","\u2964":"⥤","\u223D\u0331":"∽̱",\u0155:"ŕ","\u29B3":"⦳","\u2992":"⦒","\u29A5":"⦥","\xBB":"»","\u2975":"⥵","\u2920":"⤠","\u2933":"⤳","\u291E":"⤞","\u2945":"⥅","\u2974":"⥴","\u21A3":"↣","\u219D":"↝","\u291A":"⤚","\u2236":"∶","\u2773":"❳","}":"}","]":"]","\u298C":"⦌","\u298E":"⦎","\u2990":"⦐",\u0159:"ř",\u0157:"ŗ",\u0440:"р","\u2937":"⤷","\u2969":"⥩","\u21B3":"↳","\u25AD":"▭","\u297D":"⥽","\u{1D52F}":"𝔯","\u296C":"⥬",\u03C1:"ρ",\u03F1:"ϱ","\u21C9":"⇉","\u22CC":"⋌","\u02DA":"˚","\u200F":"‏","\u23B1":"⎱","\u2AEE":"⫮","\u27ED":"⟭","\u21FE":"⇾","\u2986":"⦆","\u{1D563}":"𝕣","\u2A2E":"⨮","\u2A35":"⨵",")":")","\u2994":"⦔","\u2A12":"⨒","\u203A":"›","\u{1D4C7}":"𝓇","\u22CA":"⋊","\u25B9":"▹","\u29CE":"⧎","\u2968":"⥨","\u211E":"℞",\u015B:"ś","\u2AB4":"⪴","\u2AB8":"⪸",\u0161:"š",\u015F:"ş",\u015D:"ŝ","\u2AB6":"⪶","\u2ABA":"⪺","\u22E9":"⋩","\u2A13":"⨓",\u0441:"с","\u22C5":"⋅","\u2A66":"⩦","\u21D8":"⇘","\xA7":"§",";":";","\u2929":"⤩","\u2736":"✶","\u{1D530}":"𝔰","\u266F":"♯",\u0449:"щ",\u0448:"ш","\xAD":"­",\u03C3:"σ",\u03C2:"ς","\u2A6A":"⩪","\u2A9E":"⪞","\u2AA0":"⪠","\u2A9D":"⪝","\u2A9F":"⪟","\u2246":"≆","\u2A24":"⨤","\u2972":"⥲","\u2A33":"⨳","\u29E4":"⧤","\u2323":"⌣","\u2AAA":"⪪","\u2AAC":"⪬","\u2AAC\uFE00":"⪬︀",\u044C:"ь","/":"/","\u29C4":"⧄","\u233F":"⌿","\u{1D564}":"𝕤","\u2660":"♠","\u2293\uFE00":"⊓︀","\u2294\uFE00":"⊔︀","\u{1D4C8}":"𝓈","\u2606":"☆","\u2282":"⊂","\u2AC5":"⫅","\u2ABD":"⪽","\u2AC3":"⫃","\u2AC1":"⫁","\u2ACB":"⫋","\u228A":"⊊","\u2ABF":"⪿","\u2979":"⥹","\u2AC7":"⫇","\u2AD5":"⫕","\u2AD3":"⫓","\u266A":"♪","\xB9":"¹","\xB2":"²","\xB3":"³","\u2AC6":"⫆","\u2ABE":"⪾","\u2AD8":"⫘","\u2AC4":"⫄","\u27C9":"⟉","\u2AD7":"⫗","\u297B":"⥻","\u2AC2":"⫂","\u2ACC":"⫌","\u228B":"⊋","\u2AC0":"⫀","\u2AC8":"⫈","\u2AD4":"⫔","\u2AD6":"⫖","\u21D9":"⇙","\u292A":"⤪",\u00DF:"ß","\u2316":"⌖",\u03C4:"τ",\u0165:"ť",\u0163:"ţ",\u0442:"т","\u2315":"⌕","\u{1D531}":"𝔱",\u03B8:"θ",\u03D1:"ϑ",\u00FE:"þ","\xD7":"×","\u2A31":"⨱","\u2A30":"⨰","\u2336":"⌶","\u2AF1":"⫱","\u{1D565}":"𝕥","\u2ADA":"⫚","\u2034":"‴","\u25B5":"▵","\u225C":"≜","\u25EC":"◬","\u2A3A":"⨺","\u2A39":"⨹","\u29CD":"⧍","\u2A3B":"⨻","\u23E2":"⏢","\u{1D4C9}":"𝓉",\u0446:"ц",\u045B:"ћ",\u0167:"ŧ","\u2963":"⥣",\u00FA:"ú",\u045E:"ў",\u016D:"ŭ",\u00FB:"û",\u0443:"у",\u0171:"ű","\u297E":"⥾","\u{1D532}":"𝔲",\u00F9:"ù","\u2580":"▀","\u231C":"⌜","\u230F":"⌏","\u25F8":"◸",\u016B:"ū",\u0173:"ų","\u{1D566}":"𝕦",\u03C5:"υ","\u21C8":"⇈","\u231D":"⌝","\u230E":"⌎",\u016F:"ů","\u25F9":"◹","\u{1D4CA}":"𝓊","\u22F0":"⋰",\u0169:"ũ",\u00FC:"ü","\u29A7":"⦧","\u2AE8":"⫨","\u2AE9":"⫩","\u299C":"⦜","\u228A\uFE00":"⊊︀","\u2ACB\uFE00":"⫋︀","\u228B\uFE00":"⊋︀","\u2ACC\uFE00":"⫌︀",\u0432:"в","\u22BB":"⊻","\u225A":"≚","\u22EE":"⋮","\u{1D533}":"𝔳","\u{1D567}":"𝕧","\u{1D4CB}":"𝓋","\u299A":"⦚",\u0175:"ŵ","\u2A5F":"⩟","\u2259":"≙","\u2118":"℘","\u{1D534}":"𝔴","\u{1D568}":"𝕨","\u{1D4CC}":"𝓌","\u{1D535}":"𝔵",\u03BE:"ξ","\u22FB":"⋻","\u{1D569}":"𝕩","\u{1D4CD}":"𝓍",\u00FD:"ý",\u044F:"я",\u0177:"ŷ",\u044B:"ы","\xA5":"¥","\u{1D536}":"𝔶",\u0457:"ї","\u{1D56A}":"𝕪","\u{1D4CE}":"𝓎",\u044E:"ю",\u00FF:"ÿ",\u017A:"ź",\u017E:"ž",\u0437:"з",\u017C:"ż",\u03B6:"ζ","\u{1D537}":"𝔷",\u0436:"ж","\u21DD":"⇝","\u{1D56B}":"𝕫","\u{1D4CF}":"𝓏","\u200D":"‍","\u200C":"‌"}}}});var Ln=m(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.numericUnicodeMap={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376}});var Cn=m(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.fromCodePoint=String.fromCodePoint||function(r){return String.fromCharCode(Math.floor((r-65536)/1024)+55296,(r-65536)%1024+56320)};Br.getCodePoint=String.prototype.codePointAt?function(r,e){return r.codePointAt(e)}:function(r,e){return(r.charCodeAt(e)-55296)*1024+r.charCodeAt(e+1)-56320+65536};Br.highSurrogateFrom=55296;Br.highSurrogateTo=56319});var qn=m(Ar=>{"use strict";var Ur=Ar&&Ar.__assign||function(){return Ur=Object.assign||function(r){for(var e,t=1,o=arguments.length;t<o;t++){e=arguments[t];for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(r[a]=e[a])}return r},Ur.apply(this,arguments)};Object.defineProperty(Ar,"__esModule",{value:!0});var Ne=xn(),wn=Ln(),_o=Cn(),Fo=Ur(Ur({},Ne.namedReferences),{all:Ne.namedReferences.html5}),kl={specialChars:/[<>'"&]/g,nonAscii:/[<>'"&\u0080-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,nonAsciiPrintable:/[<>'"&\x01-\x08\x11-\x15\x17-\x1F\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,nonAsciiPrintableOnly:/[\x01-\x08\x11-\x15\x17-\x1F\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,extensive:/[\x01-\x0c\x0e-\x1f\x21-\x2c\x2e-\x2f\x3a-\x40\x5b-\x60\x7b-\x7d\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g},Hl={mode:"specialChars",level:"all",numeric:"decimal"};function Xl(r,e){var p=e===void 0?Hl:e,u=p.mode,t=u===void 0?"specialChars":u,o=p.numeric,a=o===void 0?"decimal":o,n=p.level,i=n===void 0?"all":n;if(!r)return"";var s=kl[t],l=Fo[i].characters,c=a==="hexadecimal";s.lastIndex=0;var p=s.exec(r),u;if(p){u="";var o=0;do{o!==p.index&&(u+=r.substring(o,p.index));var n=p[0],f=l[n];if(!f){var O=n.length>1?_o.getCodePoint(n,0):n.charCodeAt(0);f=(c?"&#x"+O.toString(16):"&#"+O)+";"}u+=f,o=p.index+n.length}while(p=s.exec(r));o!==r.length&&(u+=r.substring(o))}else u=r;return u}Ar.encode=Xl;var $l={scope:"body",level:"all"},Bo=/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);/g,Uo=/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+)[;=]?/g,Dn={xml:{strict:Bo,attribute:Uo,body:Ne.bodyRegExps.xml},html4:{strict:Bo,attribute:Uo,body:Ne.bodyRegExps.html4},html5:{strict:Bo,attribute:Uo,body:Ne.bodyRegExps.html5}},Vl=Ur(Ur({},Dn),{all:Dn.html5}),Go=String.fromCharCode,Mn=Go(65533),Yl={level:"all"};function Kl(r,e){var o=(e===void 0?Yl:e).level,t=o===void 0?"all":o;if(!r)return"";var o=r,a=r[r.length-1],n=Fo[t].entities[r];if(n)o=n;else if(r[0]==="&"&&r[1]==="#"){var i=r[2],s=i=="x"||i=="X"?parseInt(r.substr(3),16):parseInt(r.substr(2));o=s>=1114111?Mn:s>65535?_o.fromCodePoint(s):Go(wn.numericUnicodeMap[s]||s)}return o}Ar.decodeEntity=Kl;function Wl(r,e){var t=e===void 0?$l:e,o=t.level,a=o===void 0?"all":o,n=t.scope,i=n===void 0?a==="xml"?"strict":"body":n;if(!r)return"";var s=Vl[a][i],l=Fo[a].entities,c=i==="attribute",p=i==="strict";s.lastIndex=0;var u=s.exec(r),f;if(u){f="";var O=0;do{O!==u.index&&(f+=r.substring(O,u.index));var N=u[0],T=N,b=N[N.length-1];if(c&&b==="=")T=N;else if(p&&b!==";")T=N;else{var X=l[N];if(X)T=X;else if(N[0]==="&"&&N[1]==="#"){var k=N[2],V=k=="x"||k=="X"?parseInt(N.substr(3),16):parseInt(N.substr(2));T=V>=1114111?Mn:V>65535?_o.fromCodePoint(V):Go(wn.numericUnicodeMap[V]||V)}}f+=T,O=u.index+N.length}while(u=s.exec(r));O!==r.length&&(f+=r.substring(O))}else f=r;return f}Ar.decode=Wl});var Un=m((aN,Bn)=>{"use strict";var zl="Function.prototype.bind called on incompatible ",Jl=Object.prototype.toString,Zl=Math.max,Ql="[object Function]",Pn=function(e,t){for(var o=[],a=0;a<e.length;a+=1)o[a]=e[a];for(var n=0;n<t.length;n+=1)o[n+e.length]=t[n];return o},jl=function(e,t){for(var o=[],a=t||0,n=0;a<e.length;a+=1,n+=1)o[n]=e[a];return o},rc=function(r,e){for(var t="",o=0;o<r.length;o+=1)t+=r[o],o+1<r.length&&(t+=e);return t};Bn.exports=function(e){var t=this;if(typeof t!="function"||Jl.apply(t)!==Ql)throw new TypeError(zl+t);for(var o=jl(arguments,1),a,n=function(){if(this instanceof a){var p=t.apply(this,Pn(o,arguments));return Object(p)===p?p:this}return t.apply(e,Pn(o,arguments))},i=Zl(0,t.length-o.length),s=[],l=0;l<i;l++)s[l]="$"+l;if(a=Function("binder","return function ("+rc(s,",")+"){ return binder.apply(this,arguments); }")(n),t.prototype){var c=function(){};c.prototype=t.prototype,a.prototype=new c,c.prototype=null}return a}});var st=m((nN,_n)=>{"use strict";var ec=Un();_n.exports=Function.prototype.bind||ec});var ko=m((iN,Fn)=>{"use strict";Fn.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},t=Symbol("test"),o=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(o)!=="[object Symbol]")return!1;var a=42;e[t]=a;for(t in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var n=Object.getOwnPropertySymbols(e);if(n.length!==1||n[0]!==t||!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var i=Object.getOwnPropertyDescriptor(e,t);if(i.value!==a||i.enumerable!==!0)return!1}return!0}});var Ho=m((sN,kn)=>{"use strict";var Gn=typeof Symbol<"u"&&Symbol,tc=ko();kn.exports=function(){return typeof Gn!="function"||typeof Symbol!="function"||typeof Gn("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:tc()}});var $n=m((lN,Xn)=>{"use strict";var Hn={foo:{}},oc=Object;Xn.exports=function(){return{__proto__:Hn}.foo===Hn.foo&&!({__proto__:null}instanceof oc)}});var Yn=m((cN,Vn)=>{"use strict";var ac=Function.prototype.call,nc=Object.prototype.hasOwnProperty,ic=st();Vn.exports=ic.call(ac,nc)});var L=m((uN,Zn)=>{"use strict";var E,kr=SyntaxError,Jn=Function,Gr=TypeError,Xo=function(r){try{return Jn('"use strict"; return ('+r+").constructor;")()}catch{}},yr=Object.getOwnPropertyDescriptor;if(yr)try{yr({},"")}catch{yr=null}var $o=function(){throw new Gr},sc=yr?function(){try{return arguments.callee,$o}catch{try{return yr(arguments,"callee").get}catch{return $o}}}():$o,_r=Ho()(),lc=$n()(),D=Object.getPrototypeOf||(lc?function(r){return r.__proto__}:null),Fr={},cc=typeof Uint8Array>"u"||!D?E:D(Uint8Array),vr={"%AggregateError%":typeof AggregateError>"u"?E:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?E:ArrayBuffer,"%ArrayIteratorPrototype%":_r&&D?D([][Symbol.iterator]()):E,"%AsyncFromSyncIteratorPrototype%":E,"%AsyncFunction%":Fr,"%AsyncGenerator%":Fr,"%AsyncGeneratorFunction%":Fr,"%AsyncIteratorPrototype%":Fr,"%Atomics%":typeof Atomics>"u"?E:Atomics,"%BigInt%":typeof BigInt>"u"?E:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?E:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?E:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?E:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?E:Float32Array,"%Float64Array%":typeof Float64Array>"u"?E:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?E:FinalizationRegistry,"%Function%":Jn,"%GeneratorFunction%":Fr,"%Int8Array%":typeof Int8Array>"u"?E:Int8Array,"%Int16Array%":typeof Int16Array>"u"?E:Int16Array,"%Int32Array%":typeof Int32Array>"u"?E:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":_r&&D?D(D([][Symbol.iterator]())):E,"%JSON%":typeof JSON=="object"?JSON:E,"%Map%":typeof Map>"u"?E:Map,"%MapIteratorPrototype%":typeof Map>"u"||!_r||!D?E:D(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?E:Promise,"%Proxy%":typeof Proxy>"u"?E:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?E:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?E:Set,"%SetIteratorPrototype%":typeof Set>"u"||!_r||!D?E:D(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?E:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":_r&&D?D(""[Symbol.iterator]()):E,"%Symbol%":_r?Symbol:E,"%SyntaxError%":kr,"%ThrowTypeError%":sc,"%TypedArray%":cc,"%TypeError%":Gr,"%Uint8Array%":typeof Uint8Array>"u"?E:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?E:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?E:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?E:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?E:WeakMap,"%WeakRef%":typeof WeakRef>"u"?E:WeakRef,"%WeakSet%":typeof WeakSet>"u"?E:WeakSet};if(D)try{null.error}catch(r){Kn=D(D(r)),vr["%Error.prototype%"]=Kn}var Kn,uc=function r(e){var t;if(e==="%AsyncFunction%")t=Xo("async function () {}");else if(e==="%GeneratorFunction%")t=Xo("function* () {}");else if(e==="%AsyncGeneratorFunction%")t=Xo("async function* () {}");else if(e==="%AsyncGenerator%"){var o=r("%AsyncGeneratorFunction%");o&&(t=o.prototype)}else if(e==="%AsyncIteratorPrototype%"){var a=r("%AsyncGenerator%");a&&D&&(t=D(a.prototype))}return vr[e]=t,t},Wn={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Ie=st(),lt=Yn(),pc=Ie.call(Function.call,Array.prototype.concat),fc=Ie.call(Function.apply,Array.prototype.splice),zn=Ie.call(Function.call,String.prototype.replace),ct=Ie.call(Function.call,String.prototype.slice),mc=Ie.call(Function.call,RegExp.prototype.exec),gc=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,dc=/\\(\\)?/g,hc=function(e){var t=ct(e,0,1),o=ct(e,-1);if(t==="%"&&o!=="%")throw new kr("invalid intrinsic syntax, expected closing `%`");if(o==="%"&&t!=="%")throw new kr("invalid intrinsic syntax, expected opening `%`");var a=[];return zn(e,gc,function(n,i,s,l){a[a.length]=s?zn(l,dc,"$1"):i||n}),a},Ec=function(e,t){var o=e,a;if(lt(Wn,o)&&(a=Wn[o],o="%"+a[0]+"%"),lt(vr,o)){var n=vr[o];if(n===Fr&&(n=uc(o)),typeof n>"u"&&!t)throw new Gr("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:a,name:o,value:n}}throw new kr("intrinsic "+e+" does not exist!")};Zn.exports=function(e,t){if(typeof e!="string"||e.length===0)throw new Gr("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new Gr('"allowMissing" argument must be a boolean');if(mc(/^%?[^%]*%?$/,e)===null)throw new kr("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var o=hc(e),a=o.length>0?o[0]:"",n=Ec("%"+a+"%",t),i=n.name,s=n.value,l=!1,c=n.alias;c&&(a=c[0],fc(o,pc([0,1],c)));for(var p=1,u=!0;p<o.length;p+=1){var f=o[p],O=ct(f,0,1),N=ct(f,-1);if((O==='"'||O==="'"||O==="`"||N==='"'||N==="'"||N==="`")&&O!==N)throw new kr("property names with quotes must have matching quotes");if((f==="constructor"||!u)&&(l=!0),a+="."+f,i="%"+a+"%",lt(vr,i))s=vr[i];else if(s!=null){if(!(f in s)){if(!t)throw new Gr("base intrinsic for "+e+" exists, but the property is not available.");return}if(yr&&p+1>=o.length){var T=yr(s,f);u=!!T,u&&"get"in T&&!("originalValue"in T.get)?s=T.get:s=s[f]}else u=lt(s,f),s=s[f];u&&!l&&(vr[i]=s)}}return s}});var ut=m((pN,Qn)=>{"use strict";var Ac=L(),Vo=Ac("%Object.defineProperty%",!0),Yo=function(){if(Vo)try{return Vo({},"a",{value:1}),!0}catch{return!1}return!1};Yo.hasArrayLengthDefineBug=function(){if(!Yo())return null;try{return Vo([],"length",{value:1}).length!==1}catch{return!0}};Qn.exports=Yo});var Ko=m((fN,jn)=>{"use strict";var yc=L(),pt=yc("%Object.getOwnPropertyDescriptor%",!0);if(pt)try{pt([],"length")}catch{pt=null}jn.exports=pt});var zo=m((mN,ei)=>{"use strict";var vc=ut()(),Wo=L(),Re=vc&&Wo("%Object.defineProperty%",!0);if(Re)try{Re({},"a",{value:1})}catch{Re=!1}var Sc=Wo("%SyntaxError%"),Hr=Wo("%TypeError%"),ri=Ko();ei.exports=function(e,t,o){if(!e||typeof e!="object"&&typeof e!="function")throw new Hr("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new Hr("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new Hr("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new Hr("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new Hr("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new Hr("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,n=arguments.length>4?arguments[4]:null,i=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!ri&&ri(e,t);if(Re)Re(e,t,{configurable:i===null&&l?l.configurable:!i,enumerable:a===null&&l?l.enumerable:!a,value:o,writable:n===null&&l?l.writable:!n});else if(s||!a&&!n&&!i)e[t]=o;else throw new Sc("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var si=m((gN,ii)=>{"use strict";var ni=L(),ti=zo(),Oc=ut()(),oi=Ko(),ai=ni("%TypeError%"),Nc=ni("%Math.floor%");ii.exports=function(e,t){if(typeof e!="function")throw new ai("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||Nc(t)!==t)throw new ai("`length` must be a positive 32-bit integer");var o=arguments.length>2&&!!arguments[2],a=!0,n=!0;if("length"in e&&oi){var i=oi(e,"length");i&&!i.configurable&&(a=!1),i&&!i.writable&&(n=!1)}return(a||n||!o)&&(Oc?ti(e,"length",t,!0,!0):ti(e,"length",t)),e}});var Zo=m((dN,ft)=>{"use strict";var Jo=st(),Xr=L(),Ic=si(),Rc=Xr("%TypeError%"),ci=Xr("%Function.prototype.apply%"),ui=Xr("%Function.prototype.call%"),pi=Xr("%Reflect.apply%",!0)||Jo.call(ui,ci),Te=Xr("%Object.defineProperty%",!0),Tc=Xr("%Math.max%");if(Te)try{Te({},"a",{value:1})}catch{Te=null}ft.exports=function(e){if(typeof e!="function")throw new Rc("a function is required");var t=pi(Jo,ui,arguments);return Ic(t,1+Tc(0,e.length-(arguments.length-1)),!0)};var li=function(){return pi(Jo,ci,arguments)};Te?Te(ft.exports,"apply",{value:li}):ft.exports.apply=li});var Qo=m((hN,mi)=>{"use strict";var fi=Object.prototype.toString;mi.exports=function(e){var t=fi.call(e),o=t==="[object Arguments]";return o||(o=t!=="[object Array]"&&e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&fi.call(e.callee)==="[object Function]"),o}});var Oi=m((EN,Si)=>{"use strict";var vi;Object.keys||(be=Object.prototype.hasOwnProperty,jo=Object.prototype.toString,gi=Qo(),ra=Object.prototype.propertyIsEnumerable,di=!ra.call({toString:null},"toString"),hi=ra.call(function(){},"prototype"),xe=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],mt=function(r){var e=r.constructor;return e&&e.prototype===r},Ei={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},Ai=function(){if(typeof window>"u")return!1;for(var r in window)try{if(!Ei["$"+r]&&be.call(window,r)&&window[r]!==null&&typeof window[r]=="object")try{mt(window[r])}catch{return!0}}catch{return!0}return!1}(),yi=function(r){if(typeof window>"u"||!Ai)return mt(r);try{return mt(r)}catch{return!1}},vi=function(e){var t=e!==null&&typeof e=="object",o=jo.call(e)==="[object Function]",a=gi(e),n=t&&jo.call(e)==="[object String]",i=[];if(!t&&!o&&!a)throw new TypeError("Object.keys called on a non-object");var s=hi&&o;if(n&&e.length>0&&!be.call(e,0))for(var l=0;l<e.length;++l)i.push(String(l));if(a&&e.length>0)for(var c=0;c<e.length;++c)i.push(String(c));else for(var p in e)!(s&&p==="prototype")&&be.call(e,p)&&i.push(String(p));if(di)for(var u=yi(e),f=0;f<xe.length;++f)!(u&&xe[f]==="constructor")&&be.call(e,xe[f])&&i.push(xe[f]);return i});var be,jo,gi,ra,di,hi,xe,mt,Ei,Ai,yi;Si.exports=vi});var Ti=m((AN,Ri)=>{"use strict";var bc=Array.prototype.slice,xc=Qo(),Ni=Object.keys,gt=Ni?function(e){return Ni(e)}:Oi(),Ii=Object.keys;gt.shim=function(){if(Object.keys){var e=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);e||(Object.keys=function(o){return xc(o)?Ii(bc.call(o)):Ii(o)})}else Object.keys=gt;return Object.keys||gt};Ri.exports=gt});var ea=m((yN,Ci)=>{"use strict";var Lc=Ti(),Cc=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",Dc=Object.prototype.toString,wc=Array.prototype.concat,bi=zo(),Mc=function(r){return typeof r=="function"&&Dc.call(r)==="[object Function]"},xi=ut()(),qc=function(r,e,t,o){if(e in r){if(o===!0){if(r[e]===t)return}else if(!Mc(o)||!o())return}xi?bi(r,e,t,!0):bi(r,e,t)},Li=function(r,e){var t=arguments.length>2?arguments[2]:{},o=Lc(e);Cc&&(o=wc.call(o,Object.getOwnPropertySymbols(e)));for(var a=0;a<o.length;a+=1)qc(r,o[a],e[o[a]],t[o[a]])};Li.supportsDescriptors=!!xi;Ci.exports=Li});var or=m((vN,Mi)=>{"use strict";var Di=L(),wi=Zo(),Pc=wi(Di("String.prototype.indexOf"));Mi.exports=function(e,t){var o=Di(e,!!t);return typeof o=="function"&&Pc(e,".prototype.")>-1?wi(o):o}});var Bi=m((SN,Pi)=>{"use strict";var Bc=L(),qi=Bc("%Array%"),Uc=!qi.isArray&&or()("Object.prototype.toString");Pi.exports=qi.isArray||function(e){return Uc(e)==="[object Array]"}});var ta=m((ON,Ui)=>{"use strict";Ui.exports=Bi()});var Gi=m((NN,Fi)=>{"use strict";var _i=L(),_c=or(),Fc=_i("%TypeError%"),Gc=ta(),kc=_i("%Reflect.apply%",!0)||_c("Function.prototype.apply");Fi.exports=function(e,t){var o=arguments.length>2?arguments[2]:[];if(!Gc(o))throw new Fc("Assertion failed: optional `argumentsList`, if provided, must be a List");return kc(e,t,o)}});var ki=m(()=>{});var we=m((TN,is)=>{var fa=typeof Map=="function"&&Map.prototype,oa=Object.getOwnPropertyDescriptor&&fa?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,ht=fa&&oa&&typeof oa.get=="function"?oa.get:null,Hi=fa&&Map.prototype.forEach,ma=typeof Set=="function"&&Set.prototype,aa=Object.getOwnPropertyDescriptor&&ma?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Et=ma&&aa&&typeof aa.get=="function"?aa.get:null,Xi=ma&&Set.prototype.forEach,Hc=typeof WeakMap=="function"&&WeakMap.prototype,Ce=Hc?WeakMap.prototype.has:null,Xc=typeof WeakSet=="function"&&WeakSet.prototype,De=Xc?WeakSet.prototype.has:null,$c=typeof WeakRef=="function"&&WeakRef.prototype,$i=$c?WeakRef.prototype.deref:null,Vc=Boolean.prototype.valueOf,Yc=Object.prototype.toString,Kc=Function.prototype.toString,Wc=String.prototype.match,ga=String.prototype.slice,nr=String.prototype.replace,zc=String.prototype.toUpperCase,Vi=String.prototype.toLowerCase,rs=RegExp.prototype.test,Yi=Array.prototype.concat,Q=Array.prototype.join,Jc=Array.prototype.slice,Ki=Math.floor,sa=typeof BigInt=="function"?BigInt.prototype.valueOf:null,na=Object.getOwnPropertySymbols,la=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,$r=typeof Symbol=="function"&&typeof Symbol.iterator=="object",q=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===$r||"symbol")?Symbol.toStringTag:null,es=Object.prototype.propertyIsEnumerable,Wi=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(r){return r.__proto__}:null);function zi(r,e){if(r===1/0||r===-1/0||r!==r||r&&r>-1e3&&r<1e3||rs.call(/e/,e))return e;var t=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof r=="number"){var o=r<0?-Ki(-r):Ki(r);if(o!==r){var a=String(o),n=ga.call(e,a.length+1);return nr.call(a,t,"$&_")+"."+nr.call(nr.call(n,/([0-9]{3})/g,"$&_"),/_$/,"")}}return nr.call(e,t,"$&_")}var ca=ki(),Ji=ca.custom,Zi=os(Ji)?Ji:null;is.exports=function r(e,t,o,a){var n=t||{};if(ar(n,"quoteStyle")&&n.quoteStyle!=="single"&&n.quoteStyle!=="double")throw new TypeError('option "quoteStyle" must be "single" or "double"');if(ar(n,"maxStringLength")&&(typeof n.maxStringLength=="number"?n.maxStringLength<0&&n.maxStringLength!==1/0:n.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var i=ar(n,"customInspect")?n.customInspect:!0;if(typeof i!="boolean"&&i!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(ar(n,"indent")&&n.indent!==null&&n.indent!==" "&&!(parseInt(n.indent,10)===n.indent&&n.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(ar(n,"numericSeparator")&&typeof n.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var s=n.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return ns(e,n);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var l=String(e);return s?zi(e,l):l}if(typeof e=="bigint"){var c=String(e)+"n";return s?zi(e,c):c}var p=typeof n.depth>"u"?5:n.depth;if(typeof o>"u"&&(o=0),o>=p&&p>0&&typeof e=="object")return ua(e)?"[Array]":"[Object]";var u=gu(n,o);if(typeof a>"u")a=[];else if(as(a,e)>=0)return"[Circular]";function f(Nr,Ue,vl){if(Ue&&(a=Jc.call(a),a.push(Ue)),vl){var Fa={depth:n.depth};return ar(n,"quoteStyle")&&(Fa.quoteStyle=n.quoteStyle),r(Nr,Fa,o+1,a)}return r(Nr,n,o+1,a)}if(typeof e=="function"&&!Qi(e)){var O=nu(e),N=dt(e,f);return"[Function"+(O?": "+O:" (anonymous)")+"]"+(N.length>0?" { "+Q.call(N,", ")+" }":"")}if(os(e)){var T=$r?nr.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):la.call(e);return typeof e=="object"&&!$r?Le(T):T}if(pu(e)){for(var b="<"+Vi.call(String(e.nodeName)),X=e.attributes||[],k=0;k<X.length;k++)b+=" "+X[k].name+"="+ts(Zc(X[k].value),"double",n);return b+=">",e.childNodes&&e.childNodes.length&&(b+="..."),b+="</"+Vi.call(String(e.nodeName))+">",b}if(ua(e)){if(e.length===0)return"[]";var V=dt(e,f);return u&&!mu(V)?"["+pa(V,u)+"]":"[ "+Q.call(V,", ")+" ]"}if(jc(e)){var Sr=dt(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!es.call(e,"cause")?"{ ["+String(e)+"] "+Q.call(Yi.call("[cause]: "+f(e.cause),Sr),", ")+" }":Sr.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Q.call(Sr,", ")+" }"}if(typeof e=="object"&&i){if(Zi&&typeof e[Zi]=="function"&&ca)return ca(e,{depth:p-o});if(i!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(iu(e)){var Kr=[];return Hi&&Hi.call(e,function(Nr,Ue){Kr.push(f(Ue,e,!0)+" => "+f(Nr,e))}),ji("Map",ht.call(e),Kr,u)}if(cu(e)){var Wr=[];return Xi&&Xi.call(e,function(Nr){Wr.push(f(Nr,e))}),ji("Set",Et.call(e),Wr,u)}if(su(e))return ia("WeakMap");if(uu(e))return ia("WeakSet");if(lu(e))return ia("WeakRef");if(eu(e))return Le(f(Number(e)));if(ou(e))return Le(f(sa.call(e)));if(tu(e))return Le(Vc.call(e));if(ru(e))return Le(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(e===global)return"{ [object globalThis] }";if(!Qc(e)&&!Qi(e)){var Or=dt(e,f),Ua=Wi?Wi(e)===Object.prototype:e instanceof Object||e.constructor===Object,Lt=e instanceof Object?"":"null prototype",_a=!Ua&&q&&Object(e)===e&&q in e?ga.call(ir(e),8,-1):Lt?"Object":"",yl=Ua||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",Ct=yl+(_a||Lt?"["+Q.call(Yi.call([],_a||[],Lt||[]),": ")+"] ":"");return Or.length===0?Ct+"{}":u?Ct+"{"+pa(Or,u)+"}":Ct+"{ "+Q.call(Or,", ")+" }"}return String(e)};function ts(r,e,t){var o=(t.quoteStyle||e)==="double"?'"':"'";return o+r+o}function Zc(r){return nr.call(String(r),/"/g,""")}function ua(r){return ir(r)==="[object Array]"&&(!q||!(typeof r=="object"&&q in r))}function Qc(r){return ir(r)==="[object Date]"&&(!q||!(typeof r=="object"&&q in r))}function Qi(r){return ir(r)==="[object RegExp]"&&(!q||!(typeof r=="object"&&q in r))}function jc(r){return ir(r)==="[object Error]"&&(!q||!(typeof r=="object"&&q in r))}function ru(r){return ir(r)==="[object String]"&&(!q||!(typeof r=="object"&&q in r))}function eu(r){return ir(r)==="[object Number]"&&(!q||!(typeof r=="object"&&q in r))}function tu(r){return ir(r)==="[object Boolean]"&&(!q||!(typeof r=="object"&&q in r))}function os(r){if($r)return r&&typeof r=="object"&&r instanceof Symbol;if(typeof r=="symbol")return!0;if(!r||typeof r!="object"||!la)return!1;try{return la.call(r),!0}catch{}return!1}function ou(r){if(!r||typeof r!="object"||!sa)return!1;try{return sa.call(r),!0}catch{}return!1}var au=Object.prototype.hasOwnProperty||function(r){return r in this};function ar(r,e){return au.call(r,e)}function ir(r){return Yc.call(r)}function nu(r){if(r.name)return r.name;var e=Wc.call(Kc.call(r),/^function\s*([\w$]+)/);return e?e[1]:null}function as(r,e){if(r.indexOf)return r.indexOf(e);for(var t=0,o=r.length;t<o;t++)if(r[t]===e)return t;return-1}function iu(r){if(!ht||!r||typeof r!="object")return!1;try{ht.call(r);try{Et.call(r)}catch{return!0}return r instanceof Map}catch{}return!1}function su(r){if(!Ce||!r||typeof r!="object")return!1;try{Ce.call(r,Ce);try{De.call(r,De)}catch{return!0}return r instanceof WeakMap}catch{}return!1}function lu(r){if(!$i||!r||typeof r!="object")return!1;try{return $i.call(r),!0}catch{}return!1}function cu(r){if(!Et||!r||typeof r!="object")return!1;try{Et.call(r);try{ht.call(r)}catch{return!0}return r instanceof Set}catch{}return!1}function uu(r){if(!De||!r||typeof r!="object")return!1;try{De.call(r,De);try{Ce.call(r,Ce)}catch{return!0}return r instanceof WeakSet}catch{}return!1}function pu(r){return!r||typeof r!="object"?!1:typeof HTMLElement<"u"&&r instanceof HTMLElement?!0:typeof r.nodeName=="string"&&typeof r.getAttribute=="function"}function ns(r,e){if(r.length>e.maxStringLength){var t=r.length-e.maxStringLength,o="... "+t+" more character"+(t>1?"s":"");return ns(ga.call(r,0,e.maxStringLength),e)+o}var a=nr.call(nr.call(r,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,fu);return ts(a,"single",e)}function fu(r){var e=r.charCodeAt(0),t={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return t?"\\"+t:"\\x"+(e<16?"0":"")+zc.call(e.toString(16))}function Le(r){return"Object("+r+")"}function ia(r){return r+" { ? }"}function ji(r,e,t,o){var a=o?pa(t,o):Q.call(t,", ");return r+" ("+e+") {"+a+"}"}function mu(r){for(var e=0;e<r.length;e++)if(as(r[e],` -`)>=0)return!1;return!0}function gu(r,e){var t;if(r.indent===" ")t=" ";else if(typeof r.indent=="number"&&r.indent>0)t=Q.call(Array(r.indent+1)," ");else return null;return{base:t,prev:Q.call(Array(e+1),t)}}function pa(r,e){if(r.length===0)return"";var t=` +"use strict";(()=>{var Ol=Object.create;var Dt=Object.defineProperty;var Nl=Object.getOwnPropertyDescriptor;var Il=Object.getOwnPropertyNames;var Rl=Object.getPrototypeOf,Tl=Object.prototype.hasOwnProperty;var m=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),bl=(r,e)=>{for(var t in e)Dt(r,t,{get:e[t],enumerable:!0})},xl=(r,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Il(e))!Tl.call(r,a)&&a!==t&&Dt(r,a,{get:()=>e[a],enumerable:!(o=Nl(e,a))||o.enumerable});return r};var Ga=(r,e,t)=>(t=r!=null?Ol(Rl(r)):{},xl(e||!r||!r.__esModule?Dt(t,"default",{value:r,enumerable:!0}):t,r));var xn=m(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.bodyRegExps={xml:/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g,html4:/∉|&(?:nbsp|iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|Atilde|Auml|Aring|AElig|Ccedil|Egrave|Eacute|Ecirc|Euml|Igrave|Iacute|Icirc|Iuml|ETH|Ntilde|Ograve|Oacute|Ocirc|Otilde|Ouml|times|Oslash|Ugrave|Uacute|Ucirc|Uuml|Yacute|THORN|szlig|agrave|aacute|acirc|atilde|auml|aring|aelig|ccedil|egrave|eacute|ecirc|euml|igrave|iacute|icirc|iuml|eth|ntilde|ograve|oacute|ocirc|otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|yuml|quot|amp|lt|gt|#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g,html5:/·|℗|⋇|⪧|⩺|⋗|⦕|⩼|⪆|⥸|⋗|⋛|⪌|≷|≳|⪦|⩹|⋖|⋋|⋉|⥶|⩻|⦖|◃|⊴|◂|∉|⋹̸|⋵̸|∉|⋷|⋶|∌|∌|⋾|⋽|∥|⊠|⨱|⨰|&(?:AElig|AMP|Aacute|Acirc|Agrave|Aring|Atilde|Auml|COPY|Ccedil|ETH|Eacute|Ecirc|Egrave|Euml|GT|Iacute|Icirc|Igrave|Iuml|LT|Ntilde|Oacute|Ocirc|Ograve|Oslash|Otilde|Ouml|QUOT|REG|THORN|Uacute|Ucirc|Ugrave|Uuml|Yacute|aacute|acirc|acute|aelig|agrave|amp|aring|atilde|auml|brvbar|ccedil|cedil|cent|copy|curren|deg|divide|eacute|ecirc|egrave|eth|euml|frac12|frac14|frac34|gt|iacute|icirc|iexcl|igrave|iquest|iuml|laquo|lt|macr|micro|middot|nbsp|not|ntilde|oacute|ocirc|ograve|ordf|ordm|oslash|otilde|ouml|para|plusmn|pound|quot|raquo|reg|sect|shy|sup1|sup2|sup3|szlig|thorn|times|uacute|ucirc|ugrave|uml|uuml|yacute|yen|yuml|#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g};it.namedReferences={xml:{entities:{"<":"<",">":">",""":'"',"'":"'","&":"&"},characters:{"<":"<",">":">",'"':""","'":"'","&":"&"}},html4:{entities:{"'":"'"," ":"\xA0"," ":"\xA0","¡":"\xA1","¡":"\xA1","¢":"\xA2","¢":"\xA2","£":"\xA3","£":"\xA3","¤":"\xA4","¤":"\xA4","¥":"\xA5","¥":"\xA5","¦":"\xA6","¦":"\xA6","§":"\xA7","§":"\xA7","¨":"\xA8","¨":"\xA8","©":"\xA9","©":"\xA9","ª":"\xAA","ª":"\xAA","«":"\xAB","«":"\xAB","¬":"\xAC","¬":"\xAC","­":"\xAD","­":"\xAD","®":"\xAE","®":"\xAE","¯":"\xAF","¯":"\xAF","°":"\xB0","°":"\xB0","±":"\xB1","±":"\xB1","²":"\xB2","²":"\xB2","³":"\xB3","³":"\xB3","´":"\xB4","´":"\xB4","µ":"\xB5","µ":"\xB5","¶":"\xB6","¶":"\xB6","·":"\xB7","·":"\xB7","¸":"\xB8","¸":"\xB8","¹":"\xB9","¹":"\xB9","º":"\xBA","º":"\xBA","»":"\xBB","»":"\xBB","¼":"\xBC","¼":"\xBC","½":"\xBD","½":"\xBD","¾":"\xBE","¾":"\xBE","¿":"\xBF","¿":"\xBF","À":"\xC0","À":"\xC0","Á":"\xC1","Á":"\xC1","Â":"\xC2","Â":"\xC2","Ã":"\xC3","Ã":"\xC3","Ä":"\xC4","Ä":"\xC4","Å":"\xC5","Å":"\xC5","Æ":"\xC6","Æ":"\xC6","Ç":"\xC7","Ç":"\xC7","È":"\xC8","È":"\xC8","É":"\xC9","É":"\xC9","Ê":"\xCA","Ê":"\xCA","Ë":"\xCB","Ë":"\xCB","Ì":"\xCC","Ì":"\xCC","Í":"\xCD","Í":"\xCD","Î":"\xCE","Î":"\xCE","Ï":"\xCF","Ï":"\xCF","Ð":"\xD0","Ð":"\xD0","Ñ":"\xD1","Ñ":"\xD1","Ò":"\xD2","Ò":"\xD2","Ó":"\xD3","Ó":"\xD3","Ô":"\xD4","Ô":"\xD4","Õ":"\xD5","Õ":"\xD5","Ö":"\xD6","Ö":"\xD6","×":"\xD7","×":"\xD7","Ø":"\xD8","Ø":"\xD8","Ù":"\xD9","Ù":"\xD9","Ú":"\xDA","Ú":"\xDA","Û":"\xDB","Û":"\xDB","Ü":"\xDC","Ü":"\xDC","Ý":"\xDD","Ý":"\xDD","Þ":"\xDE","Þ":"\xDE","ß":"\xDF","ß":"\xDF","à":"\xE0","à":"\xE0","á":"\xE1","á":"\xE1","â":"\xE2","â":"\xE2","ã":"\xE3","ã":"\xE3","ä":"\xE4","ä":"\xE4","å":"\xE5","å":"\xE5","æ":"\xE6","æ":"\xE6","ç":"\xE7","ç":"\xE7","è":"\xE8","è":"\xE8","é":"\xE9","é":"\xE9","ê":"\xEA","ê":"\xEA","ë":"\xEB","ë":"\xEB","ì":"\xEC","ì":"\xEC","í":"\xED","í":"\xED","î":"\xEE","î":"\xEE","ï":"\xEF","ï":"\xEF","ð":"\xF0","ð":"\xF0","ñ":"\xF1","ñ":"\xF1","ò":"\xF2","ò":"\xF2","ó":"\xF3","ó":"\xF3","ô":"\xF4","ô":"\xF4","õ":"\xF5","õ":"\xF5","ö":"\xF6","ö":"\xF6","÷":"\xF7","÷":"\xF7","ø":"\xF8","ø":"\xF8","ù":"\xF9","ù":"\xF9","ú":"\xFA","ú":"\xFA","û":"\xFB","û":"\xFB","ü":"\xFC","ü":"\xFC","ý":"\xFD","ý":"\xFD","þ":"\xFE","þ":"\xFE","ÿ":"\xFF","ÿ":"\xFF",""":'"',""":'"',"&":"&","&":"&","<":"<","<":"<",">":">",">":">","Œ":"\u0152","œ":"\u0153","Š":"\u0160","š":"\u0161","Ÿ":"\u0178","ˆ":"\u02C6","˜":"\u02DC"," ":"\u2002"," ":"\u2003"," ":"\u2009","‌":"\u200C","‍":"\u200D","‎":"\u200E","‏":"\u200F","–":"\u2013","—":"\u2014","‘":"\u2018","’":"\u2019","‚":"\u201A","“":"\u201C","”":"\u201D","„":"\u201E","†":"\u2020","‡":"\u2021","‰":"\u2030","‹":"\u2039","›":"\u203A","€":"\u20AC","ƒ":"\u0192","Α":"\u0391","Β":"\u0392","Γ":"\u0393","Δ":"\u0394","Ε":"\u0395","Ζ":"\u0396","Η":"\u0397","Θ":"\u0398","Ι":"\u0399","Κ":"\u039A","Λ":"\u039B","Μ":"\u039C","Ν":"\u039D","Ξ":"\u039E","Ο":"\u039F","Π":"\u03A0","Ρ":"\u03A1","Σ":"\u03A3","Τ":"\u03A4","Υ":"\u03A5","Φ":"\u03A6","Χ":"\u03A7","Ψ":"\u03A8","Ω":"\u03A9","α":"\u03B1","β":"\u03B2","γ":"\u03B3","δ":"\u03B4","ε":"\u03B5","ζ":"\u03B6","η":"\u03B7","θ":"\u03B8","ι":"\u03B9","κ":"\u03BA","λ":"\u03BB","μ":"\u03BC","ν":"\u03BD","ξ":"\u03BE","ο":"\u03BF","π":"\u03C0","ρ":"\u03C1","ς":"\u03C2","σ":"\u03C3","τ":"\u03C4","υ":"\u03C5","φ":"\u03C6","χ":"\u03C7","ψ":"\u03C8","ω":"\u03C9","ϑ":"\u03D1","ϒ":"\u03D2","ϖ":"\u03D6","•":"\u2022","…":"\u2026","′":"\u2032","″":"\u2033","‾":"\u203E","⁄":"\u2044","℘":"\u2118","ℑ":"\u2111","ℜ":"\u211C","™":"\u2122","ℵ":"\u2135","←":"\u2190","↑":"\u2191","→":"\u2192","↓":"\u2193","↔":"\u2194","↵":"\u21B5","⇐":"\u21D0","⇑":"\u21D1","⇒":"\u21D2","⇓":"\u21D3","⇔":"\u21D4","∀":"\u2200","∂":"\u2202","∃":"\u2203","∅":"\u2205","∇":"\u2207","∈":"\u2208","∉":"\u2209","∋":"\u220B","∏":"\u220F","∑":"\u2211","−":"\u2212","∗":"\u2217","√":"\u221A","∝":"\u221D","∞":"\u221E","∠":"\u2220","∧":"\u2227","∨":"\u2228","∩":"\u2229","∪":"\u222A","∫":"\u222B","∴":"\u2234","∼":"\u223C","≅":"\u2245","≈":"\u2248","≠":"\u2260","≡":"\u2261","≤":"\u2264","≥":"\u2265","⊂":"\u2282","⊃":"\u2283","⊄":"\u2284","⊆":"\u2286","⊇":"\u2287","⊕":"\u2295","⊗":"\u2297","⊥":"\u22A5","⋅":"\u22C5","⌈":"\u2308","⌉":"\u2309","⌊":"\u230A","⌋":"\u230B","⟨":"\u2329","⟩":"\u232A","◊":"\u25CA","♠":"\u2660","♣":"\u2663","♥":"\u2665","♦":"\u2666"},characters:{"'":"'","\xA0":" ","\xA1":"¡","\xA2":"¢","\xA3":"£","\xA4":"¤","\xA5":"¥","\xA6":"¦","\xA7":"§","\xA8":"¨","\xA9":"©",\u00AA:"ª","\xAB":"«","\xAC":"¬","\xAD":"­","\xAE":"®","\xAF":"¯","\xB0":"°","\xB1":"±","\xB2":"²","\xB3":"³","\xB4":"´",\u00B5:"µ","\xB6":"¶","\xB7":"·","\xB8":"¸","\xB9":"¹",\u00BA:"º","\xBB":"»","\xBC":"¼","\xBD":"½","\xBE":"¾","\xBF":"¿",\u00C0:"À",\u00C1:"Á",\u00C2:"Â",\u00C3:"Ã",\u00C4:"Ä",\u00C5:"Å",\u00C6:"Æ",\u00C7:"Ç",\u00C8:"È",\u00C9:"É",\u00CA:"Ê",\u00CB:"Ë",\u00CC:"Ì",\u00CD:"Í",\u00CE:"Î",\u00CF:"Ï",\u00D0:"Ð",\u00D1:"Ñ",\u00D2:"Ò",\u00D3:"Ó",\u00D4:"Ô",\u00D5:"Õ",\u00D6:"Ö","\xD7":"×",\u00D8:"Ø",\u00D9:"Ù",\u00DA:"Ú",\u00DB:"Û",\u00DC:"Ü",\u00DD:"Ý",\u00DE:"Þ",\u00DF:"ß",\u00E0:"à",\u00E1:"á",\u00E2:"â",\u00E3:"ã",\u00E4:"ä",\u00E5:"å",\u00E6:"æ",\u00E7:"ç",\u00E8:"è",\u00E9:"é",\u00EA:"ê",\u00EB:"ë",\u00EC:"ì",\u00ED:"í",\u00EE:"î",\u00EF:"ï",\u00F0:"ð",\u00F1:"ñ",\u00F2:"ò",\u00F3:"ó",\u00F4:"ô",\u00F5:"õ",\u00F6:"ö","\xF7":"÷",\u00F8:"ø",\u00F9:"ù",\u00FA:"ú",\u00FB:"û",\u00FC:"ü",\u00FD:"ý",\u00FE:"þ",\u00FF:"ÿ",'"':""","&":"&","<":"<",">":">",\u0152:"Œ",\u0153:"œ",\u0160:"Š",\u0161:"š",\u0178:"Ÿ","\u02C6":"ˆ","\u02DC":"˜","\u2002":" ","\u2003":" ","\u2009":" ","\u200C":"‌","\u200D":"‍","\u200E":"‎","\u200F":"‏","\u2013":"–","\u2014":"—","\u2018":"‘","\u2019":"’","\u201A":"‚","\u201C":"“","\u201D":"”","\u201E":"„","\u2020":"†","\u2021":"‡","\u2030":"‰","\u2039":"‹","\u203A":"›","\u20AC":"€",\u0192:"ƒ",\u0391:"Α",\u0392:"Β",\u0393:"Γ",\u0394:"Δ",\u0395:"Ε",\u0396:"Ζ",\u0397:"Η",\u0398:"Θ",\u0399:"Ι",\u039A:"Κ",\u039B:"Λ",\u039C:"Μ",\u039D:"Ν",\u039E:"Ξ",\u039F:"Ο",\u03A0:"Π",\u03A1:"Ρ",\u03A3:"Σ",\u03A4:"Τ",\u03A5:"Υ",\u03A6:"Φ",\u03A7:"Χ",\u03A8:"Ψ",\u03A9:"Ω",\u03B1:"α",\u03B2:"β",\u03B3:"γ",\u03B4:"δ",\u03B5:"ε",\u03B6:"ζ",\u03B7:"η",\u03B8:"θ",\u03B9:"ι",\u03BA:"κ",\u03BB:"λ",\u03BC:"μ",\u03BD:"ν",\u03BE:"ξ",\u03BF:"ο",\u03C0:"π",\u03C1:"ρ",\u03C2:"ς",\u03C3:"σ",\u03C4:"τ",\u03C5:"υ",\u03C6:"φ",\u03C7:"χ",\u03C8:"ψ",\u03C9:"ω",\u03D1:"ϑ",\u03D2:"ϒ",\u03D6:"ϖ","\u2022":"•","\u2026":"…","\u2032":"′","\u2033":"″","\u203E":"‾","\u2044":"⁄","\u2118":"℘",\u2111:"ℑ",\u211C:"ℜ","\u2122":"™",\u2135:"ℵ","\u2190":"←","\u2191":"↑","\u2192":"→","\u2193":"↓","\u2194":"↔","\u21B5":"↵","\u21D0":"⇐","\u21D1":"⇑","\u21D2":"⇒","\u21D3":"⇓","\u21D4":"⇔","\u2200":"∀","\u2202":"∂","\u2203":"∃","\u2205":"∅","\u2207":"∇","\u2208":"∈","\u2209":"∉","\u220B":"∋","\u220F":"∏","\u2211":"∑","\u2212":"−","\u2217":"∗","\u221A":"√","\u221D":"∝","\u221E":"∞","\u2220":"∠","\u2227":"∧","\u2228":"∨","\u2229":"∩","\u222A":"∪","\u222B":"∫","\u2234":"∴","\u223C":"∼","\u2245":"≅","\u2248":"≈","\u2260":"≠","\u2261":"≡","\u2264":"≤","\u2265":"≥","\u2282":"⊂","\u2283":"⊃","\u2284":"⊄","\u2286":"⊆","\u2287":"⊇","\u2295":"⊕","\u2297":"⊗","\u22A5":"⊥","\u22C5":"⋅","\u2308":"⌈","\u2309":"⌉","\u230A":"⌊","\u230B":"⌋","\u2329":"⟨","\u232A":"⟩","\u25CA":"◊","\u2660":"♠","\u2663":"♣","\u2665":"♥","\u2666":"♦"}},html5:{entities:{"Æ":"\xC6","Æ":"\xC6","&":"&","&":"&","Á":"\xC1","Á":"\xC1","Ă":"\u0102","Â":"\xC2","Â":"\xC2","А":"\u0410","𝔄":"\u{1D504}","À":"\xC0","À":"\xC0","Α":"\u0391","Ā":"\u0100","⩓":"\u2A53","Ą":"\u0104","𝔸":"\u{1D538}","⁡":"\u2061","Å":"\xC5","Å":"\xC5","𝒜":"\u{1D49C}","≔":"\u2254","Ã":"\xC3","Ã":"\xC3","Ä":"\xC4","Ä":"\xC4","∖":"\u2216","⫧":"\u2AE7","⌆":"\u2306","Б":"\u0411","∵":"\u2235","ℬ":"\u212C","Β":"\u0392","𝔅":"\u{1D505}","𝔹":"\u{1D539}","˘":"\u02D8","ℬ":"\u212C","≎":"\u224E","Ч":"\u0427","©":"\xA9","©":"\xA9","Ć":"\u0106","⋒":"\u22D2","ⅅ":"\u2145","ℭ":"\u212D","Č":"\u010C","Ç":"\xC7","Ç":"\xC7","Ĉ":"\u0108","∰":"\u2230","Ċ":"\u010A","¸":"\xB8","·":"\xB7","ℭ":"\u212D","Χ":"\u03A7","⊙":"\u2299","⊖":"\u2296","⊕":"\u2295","⊗":"\u2297","∲":"\u2232","”":"\u201D","’":"\u2019","∷":"\u2237","⩴":"\u2A74","≡":"\u2261","∯":"\u222F","∮":"\u222E","ℂ":"\u2102","∐":"\u2210","∳":"\u2233","⨯":"\u2A2F","𝒞":"\u{1D49E}","⋓":"\u22D3","≍":"\u224D","ⅅ":"\u2145","⤑":"\u2911","Ђ":"\u0402","Ѕ":"\u0405","Џ":"\u040F","‡":"\u2021","↡":"\u21A1","⫤":"\u2AE4","Ď":"\u010E","Д":"\u0414","∇":"\u2207","Δ":"\u0394","𝔇":"\u{1D507}","´":"\xB4","˙":"\u02D9","˝":"\u02DD","`":"`","˜":"\u02DC","⋄":"\u22C4","ⅆ":"\u2146","𝔻":"\u{1D53B}","¨":"\xA8","⃜":"\u20DC","≐":"\u2250","∯":"\u222F","¨":"\xA8","⇓":"\u21D3","⇐":"\u21D0","⇔":"\u21D4","⫤":"\u2AE4","⟸":"\u27F8","⟺":"\u27FA","⟹":"\u27F9","⇒":"\u21D2","⊨":"\u22A8","⇑":"\u21D1","⇕":"\u21D5","∥":"\u2225","↓":"\u2193","⤓":"\u2913","⇵":"\u21F5","̑":"\u0311","⥐":"\u2950","⥞":"\u295E","↽":"\u21BD","⥖":"\u2956","⥟":"\u295F","⇁":"\u21C1","⥗":"\u2957","⊤":"\u22A4","↧":"\u21A7","⇓":"\u21D3","𝒟":"\u{1D49F}","Đ":"\u0110","Ŋ":"\u014A","Ð":"\xD0","Ð":"\xD0","É":"\xC9","É":"\xC9","Ě":"\u011A","Ê":"\xCA","Ê":"\xCA","Э":"\u042D","Ė":"\u0116","𝔈":"\u{1D508}","È":"\xC8","È":"\xC8","∈":"\u2208","Ē":"\u0112","◻":"\u25FB","▫":"\u25AB","Ę":"\u0118","𝔼":"\u{1D53C}","Ε":"\u0395","⩵":"\u2A75","≂":"\u2242","⇌":"\u21CC","ℰ":"\u2130","⩳":"\u2A73","Η":"\u0397","Ë":"\xCB","Ë":"\xCB","∃":"\u2203","ⅇ":"\u2147","Ф":"\u0424","𝔉":"\u{1D509}","◼":"\u25FC","▪":"\u25AA","𝔽":"\u{1D53D}","∀":"\u2200","ℱ":"\u2131","ℱ":"\u2131","Ѓ":"\u0403",">":">",">":">","Γ":"\u0393","Ϝ":"\u03DC","Ğ":"\u011E","Ģ":"\u0122","Ĝ":"\u011C","Г":"\u0413","Ġ":"\u0120","𝔊":"\u{1D50A}","⋙":"\u22D9","𝔾":"\u{1D53E}","≥":"\u2265","⋛":"\u22DB","≧":"\u2267","⪢":"\u2AA2","≷":"\u2277","⩾":"\u2A7E","≳":"\u2273","𝒢":"\u{1D4A2}","≫":"\u226B","Ъ":"\u042A","ˇ":"\u02C7","^":"^","Ĥ":"\u0124","ℌ":"\u210C","ℋ":"\u210B","ℍ":"\u210D","─":"\u2500","ℋ":"\u210B","Ħ":"\u0126","≎":"\u224E","≏":"\u224F","Е":"\u0415","IJ":"\u0132","Ё":"\u0401","Í":"\xCD","Í":"\xCD","Î":"\xCE","Î":"\xCE","И":"\u0418","İ":"\u0130","ℑ":"\u2111","Ì":"\xCC","Ì":"\xCC","ℑ":"\u2111","Ī":"\u012A","ⅈ":"\u2148","⇒":"\u21D2","∬":"\u222C","∫":"\u222B","⋂":"\u22C2","⁣":"\u2063","⁢":"\u2062","Į":"\u012E","𝕀":"\u{1D540}","Ι":"\u0399","ℐ":"\u2110","Ĩ":"\u0128","І":"\u0406","Ï":"\xCF","Ï":"\xCF","Ĵ":"\u0134","Й":"\u0419","𝔍":"\u{1D50D}","𝕁":"\u{1D541}","𝒥":"\u{1D4A5}","Ј":"\u0408","Є":"\u0404","Х":"\u0425","Ќ":"\u040C","Κ":"\u039A","Ķ":"\u0136","К":"\u041A","𝔎":"\u{1D50E}","𝕂":"\u{1D542}","𝒦":"\u{1D4A6}","Љ":"\u0409","<":"<","<":"<","Ĺ":"\u0139","Λ":"\u039B","⟪":"\u27EA","ℒ":"\u2112","↞":"\u219E","Ľ":"\u013D","Ļ":"\u013B","Л":"\u041B","⟨":"\u27E8","←":"\u2190","⇤":"\u21E4","⇆":"\u21C6","⌈":"\u2308","⟦":"\u27E6","⥡":"\u2961","⇃":"\u21C3","⥙":"\u2959","⌊":"\u230A","↔":"\u2194","⥎":"\u294E","⊣":"\u22A3","↤":"\u21A4","⥚":"\u295A","⊲":"\u22B2","⧏":"\u29CF","⊴":"\u22B4","⥑":"\u2951","⥠":"\u2960","↿":"\u21BF","⥘":"\u2958","↼":"\u21BC","⥒":"\u2952","⇐":"\u21D0","⇔":"\u21D4","⋚":"\u22DA","≦":"\u2266","≶":"\u2276","⪡":"\u2AA1","⩽":"\u2A7D","≲":"\u2272","𝔏":"\u{1D50F}","⋘":"\u22D8","⇚":"\u21DA","Ŀ":"\u013F","⟵":"\u27F5","⟷":"\u27F7","⟶":"\u27F6","⟸":"\u27F8","⟺":"\u27FA","⟹":"\u27F9","𝕃":"\u{1D543}","↙":"\u2199","↘":"\u2198","ℒ":"\u2112","↰":"\u21B0","Ł":"\u0141","≪":"\u226A","⤅":"\u2905","М":"\u041C"," ":"\u205F","ℳ":"\u2133","𝔐":"\u{1D510}","∓":"\u2213","𝕄":"\u{1D544}","ℳ":"\u2133","Μ":"\u039C","Њ":"\u040A","Ń":"\u0143","Ň":"\u0147","Ņ":"\u0145","Н":"\u041D","​":"\u200B","​":"\u200B","​":"\u200B","​":"\u200B","≫":"\u226B","≪":"\u226A","
":` +`,"𝔑":"\u{1D511}","⁠":"\u2060"," ":"\xA0","ℕ":"\u2115","⫬":"\u2AEC","≢":"\u2262","≭":"\u226D","∦":"\u2226","∉":"\u2209","≠":"\u2260","≂̸":"\u2242\u0338","∄":"\u2204","≯":"\u226F","≱":"\u2271","≧̸":"\u2267\u0338","≫̸":"\u226B\u0338","≹":"\u2279","⩾̸":"\u2A7E\u0338","≵":"\u2275","≎̸":"\u224E\u0338","≏̸":"\u224F\u0338","⋪":"\u22EA","⧏̸":"\u29CF\u0338","⋬":"\u22EC","≮":"\u226E","≰":"\u2270","≸":"\u2278","≪̸":"\u226A\u0338","⩽̸":"\u2A7D\u0338","≴":"\u2274","⪢̸":"\u2AA2\u0338","⪡̸":"\u2AA1\u0338","⊀":"\u2280","⪯̸":"\u2AAF\u0338","⋠":"\u22E0","∌":"\u220C","⋫":"\u22EB","⧐̸":"\u29D0\u0338","⋭":"\u22ED","⊏̸":"\u228F\u0338","⋢":"\u22E2","⊐̸":"\u2290\u0338","⋣":"\u22E3","⊂⃒":"\u2282\u20D2","⊈":"\u2288","⊁":"\u2281","⪰̸":"\u2AB0\u0338","⋡":"\u22E1","≿̸":"\u227F\u0338","⊃⃒":"\u2283\u20D2","⊉":"\u2289","≁":"\u2241","≄":"\u2244","≇":"\u2247","≉":"\u2249","∤":"\u2224","𝒩":"\u{1D4A9}","Ñ":"\xD1","Ñ":"\xD1","Ν":"\u039D","Œ":"\u0152","Ó":"\xD3","Ó":"\xD3","Ô":"\xD4","Ô":"\xD4","О":"\u041E","Ő":"\u0150","𝔒":"\u{1D512}","Ò":"\xD2","Ò":"\xD2","Ō":"\u014C","Ω":"\u03A9","Ο":"\u039F","𝕆":"\u{1D546}","“":"\u201C","‘":"\u2018","⩔":"\u2A54","𝒪":"\u{1D4AA}","Ø":"\xD8","Ø":"\xD8","Õ":"\xD5","Õ":"\xD5","⨷":"\u2A37","Ö":"\xD6","Ö":"\xD6","‾":"\u203E","⏞":"\u23DE","⎴":"\u23B4","⏜":"\u23DC","∂":"\u2202","П":"\u041F","𝔓":"\u{1D513}","Φ":"\u03A6","Π":"\u03A0","±":"\xB1","ℌ":"\u210C","ℙ":"\u2119","⪻":"\u2ABB","≺":"\u227A","⪯":"\u2AAF","≼":"\u227C","≾":"\u227E","″":"\u2033","∏":"\u220F","∷":"\u2237","∝":"\u221D","𝒫":"\u{1D4AB}","Ψ":"\u03A8",""":'"',""":'"',"𝔔":"\u{1D514}","ℚ":"\u211A","𝒬":"\u{1D4AC}","⤐":"\u2910","®":"\xAE","®":"\xAE","Ŕ":"\u0154","⟫":"\u27EB","↠":"\u21A0","⤖":"\u2916","Ř":"\u0158","Ŗ":"\u0156","Р":"\u0420","ℜ":"\u211C","∋":"\u220B","⇋":"\u21CB","⥯":"\u296F","ℜ":"\u211C","Ρ":"\u03A1","⟩":"\u27E9","→":"\u2192","⇥":"\u21E5","⇄":"\u21C4","⌉":"\u2309","⟧":"\u27E7","⥝":"\u295D","⇂":"\u21C2","⥕":"\u2955","⌋":"\u230B","⊢":"\u22A2","↦":"\u21A6","⥛":"\u295B","⊳":"\u22B3","⧐":"\u29D0","⊵":"\u22B5","⥏":"\u294F","⥜":"\u295C","↾":"\u21BE","⥔":"\u2954","⇀":"\u21C0","⥓":"\u2953","⇒":"\u21D2","ℝ":"\u211D","⥰":"\u2970","⇛":"\u21DB","ℛ":"\u211B","↱":"\u21B1","⧴":"\u29F4","Щ":"\u0429","Ш":"\u0428","Ь":"\u042C","Ś":"\u015A","⪼":"\u2ABC","Š":"\u0160","Ş":"\u015E","Ŝ":"\u015C","С":"\u0421","𝔖":"\u{1D516}","↓":"\u2193","←":"\u2190","→":"\u2192","↑":"\u2191","Σ":"\u03A3","∘":"\u2218","𝕊":"\u{1D54A}","√":"\u221A","□":"\u25A1","⊓":"\u2293","⊏":"\u228F","⊑":"\u2291","⊐":"\u2290","⊒":"\u2292","⊔":"\u2294","𝒮":"\u{1D4AE}","⋆":"\u22C6","⋐":"\u22D0","⋐":"\u22D0","⊆":"\u2286","≻":"\u227B","⪰":"\u2AB0","≽":"\u227D","≿":"\u227F","∋":"\u220B","∑":"\u2211","⋑":"\u22D1","⊃":"\u2283","⊇":"\u2287","⋑":"\u22D1","Þ":"\xDE","Þ":"\xDE","™":"\u2122","Ћ":"\u040B","Ц":"\u0426","	":" ","Τ":"\u03A4","Ť":"\u0164","Ţ":"\u0162","Т":"\u0422","𝔗":"\u{1D517}","∴":"\u2234","Θ":"\u0398","  ":"\u205F\u200A"," ":"\u2009","∼":"\u223C","≃":"\u2243","≅":"\u2245","≈":"\u2248","𝕋":"\u{1D54B}","⃛":"\u20DB","𝒯":"\u{1D4AF}","Ŧ":"\u0166","Ú":"\xDA","Ú":"\xDA","↟":"\u219F","⥉":"\u2949","Ў":"\u040E","Ŭ":"\u016C","Û":"\xDB","Û":"\xDB","У":"\u0423","Ű":"\u0170","𝔘":"\u{1D518}","Ù":"\xD9","Ù":"\xD9","Ū":"\u016A","_":"_","⏟":"\u23DF","⎵":"\u23B5","⏝":"\u23DD","⋃":"\u22C3","⊎":"\u228E","Ų":"\u0172","𝕌":"\u{1D54C}","↑":"\u2191","⤒":"\u2912","⇅":"\u21C5","↕":"\u2195","⥮":"\u296E","⊥":"\u22A5","↥":"\u21A5","⇑":"\u21D1","⇕":"\u21D5","↖":"\u2196","↗":"\u2197","ϒ":"\u03D2","Υ":"\u03A5","Ů":"\u016E","𝒰":"\u{1D4B0}","Ũ":"\u0168","Ü":"\xDC","Ü":"\xDC","⊫":"\u22AB","⫫":"\u2AEB","В":"\u0412","⊩":"\u22A9","⫦":"\u2AE6","⋁":"\u22C1","‖":"\u2016","‖":"\u2016","∣":"\u2223","|":"|","❘":"\u2758","≀":"\u2240"," ":"\u200A","𝔙":"\u{1D519}","𝕍":"\u{1D54D}","𝒱":"\u{1D4B1}","⊪":"\u22AA","Ŵ":"\u0174","⋀":"\u22C0","𝔚":"\u{1D51A}","𝕎":"\u{1D54E}","𝒲":"\u{1D4B2}","𝔛":"\u{1D51B}","Ξ":"\u039E","𝕏":"\u{1D54F}","𝒳":"\u{1D4B3}","Я":"\u042F","Ї":"\u0407","Ю":"\u042E","Ý":"\xDD","Ý":"\xDD","Ŷ":"\u0176","Ы":"\u042B","𝔜":"\u{1D51C}","𝕐":"\u{1D550}","𝒴":"\u{1D4B4}","Ÿ":"\u0178","Ж":"\u0416","Ź":"\u0179","Ž":"\u017D","З":"\u0417","Ż":"\u017B","​":"\u200B","Ζ":"\u0396","ℨ":"\u2128","ℤ":"\u2124","𝒵":"\u{1D4B5}","á":"\xE1","á":"\xE1","ă":"\u0103","∾":"\u223E","∾̳":"\u223E\u0333","∿":"\u223F","â":"\xE2","â":"\xE2","´":"\xB4","´":"\xB4","а":"\u0430","æ":"\xE6","æ":"\xE6","⁡":"\u2061","𝔞":"\u{1D51E}","à":"\xE0","à":"\xE0","ℵ":"\u2135","ℵ":"\u2135","α":"\u03B1","ā":"\u0101","⨿":"\u2A3F","&":"&","&":"&","∧":"\u2227","⩕":"\u2A55","⩜":"\u2A5C","⩘":"\u2A58","⩚":"\u2A5A","∠":"\u2220","⦤":"\u29A4","∠":"\u2220","∡":"\u2221","⦨":"\u29A8","⦩":"\u29A9","⦪":"\u29AA","⦫":"\u29AB","⦬":"\u29AC","⦭":"\u29AD","⦮":"\u29AE","⦯":"\u29AF","∟":"\u221F","⊾":"\u22BE","⦝":"\u299D","∢":"\u2222","Å":"\xC5","⍼":"\u237C","ą":"\u0105","𝕒":"\u{1D552}","≈":"\u2248","⩰":"\u2A70","⩯":"\u2A6F","≊":"\u224A","≋":"\u224B","'":"'","≈":"\u2248","≊":"\u224A","å":"\xE5","å":"\xE5","𝒶":"\u{1D4B6}","*":"*","≈":"\u2248","≍":"\u224D","ã":"\xE3","ã":"\xE3","ä":"\xE4","ä":"\xE4","∳":"\u2233","⨑":"\u2A11","⫭":"\u2AED","≌":"\u224C","϶":"\u03F6","‵":"\u2035","∽":"\u223D","⋍":"\u22CD","⊽":"\u22BD","⌅":"\u2305","⌅":"\u2305","⎵":"\u23B5","⎶":"\u23B6","≌":"\u224C","б":"\u0431","„":"\u201E","∵":"\u2235","∵":"\u2235","⦰":"\u29B0","϶":"\u03F6","ℬ":"\u212C","β":"\u03B2","ℶ":"\u2136","≬":"\u226C","𝔟":"\u{1D51F}","⋂":"\u22C2","◯":"\u25EF","⋃":"\u22C3","⨀":"\u2A00","⨁":"\u2A01","⨂":"\u2A02","⨆":"\u2A06","★":"\u2605","▽":"\u25BD","△":"\u25B3","⨄":"\u2A04","⋁":"\u22C1","⋀":"\u22C0","⤍":"\u290D","⧫":"\u29EB","▪":"\u25AA","▴":"\u25B4","▾":"\u25BE","◂":"\u25C2","▸":"\u25B8","␣":"\u2423","▒":"\u2592","░":"\u2591","▓":"\u2593","█":"\u2588","=⃥":"=\u20E5","≡⃥":"\u2261\u20E5","⌐":"\u2310","𝕓":"\u{1D553}","⊥":"\u22A5","⊥":"\u22A5","⋈":"\u22C8","╗":"\u2557","╔":"\u2554","╖":"\u2556","╓":"\u2553","═":"\u2550","╦":"\u2566","╩":"\u2569","╤":"\u2564","╧":"\u2567","╝":"\u255D","╚":"\u255A","╜":"\u255C","╙":"\u2559","║":"\u2551","╬":"\u256C","╣":"\u2563","╠":"\u2560","╫":"\u256B","╢":"\u2562","╟":"\u255F","⧉":"\u29C9","╕":"\u2555","╒":"\u2552","┐":"\u2510","┌":"\u250C","─":"\u2500","╥":"\u2565","╨":"\u2568","┬":"\u252C","┴":"\u2534","⊟":"\u229F","⊞":"\u229E","⊠":"\u22A0","╛":"\u255B","╘":"\u2558","┘":"\u2518","└":"\u2514","│":"\u2502","╪":"\u256A","╡":"\u2561","╞":"\u255E","┼":"\u253C","┤":"\u2524","├":"\u251C","‵":"\u2035","˘":"\u02D8","¦":"\xA6","¦":"\xA6","𝒷":"\u{1D4B7}","⁏":"\u204F","∽":"\u223D","⋍":"\u22CD","\":"\\","⧅":"\u29C5","⟈":"\u27C8","•":"\u2022","•":"\u2022","≎":"\u224E","⪮":"\u2AAE","≏":"\u224F","≏":"\u224F","ć":"\u0107","∩":"\u2229","⩄":"\u2A44","⩉":"\u2A49","⩋":"\u2A4B","⩇":"\u2A47","⩀":"\u2A40","∩︀":"\u2229\uFE00","⁁":"\u2041","ˇ":"\u02C7","⩍":"\u2A4D","č":"\u010D","ç":"\xE7","ç":"\xE7","ĉ":"\u0109","⩌":"\u2A4C","⩐":"\u2A50","ċ":"\u010B","¸":"\xB8","¸":"\xB8","⦲":"\u29B2","¢":"\xA2","¢":"\xA2","·":"\xB7","𝔠":"\u{1D520}","ч":"\u0447","✓":"\u2713","✓":"\u2713","χ":"\u03C7","○":"\u25CB","⧃":"\u29C3","ˆ":"\u02C6","≗":"\u2257","↺":"\u21BA","↻":"\u21BB","®":"\xAE","Ⓢ":"\u24C8","⊛":"\u229B","⊚":"\u229A","⊝":"\u229D","≗":"\u2257","⨐":"\u2A10","⫯":"\u2AEF","⧂":"\u29C2","♣":"\u2663","♣":"\u2663",":":":","≔":"\u2254","≔":"\u2254",",":",","@":"@","∁":"\u2201","∘":"\u2218","∁":"\u2201","ℂ":"\u2102","≅":"\u2245","⩭":"\u2A6D","∮":"\u222E","𝕔":"\u{1D554}","∐":"\u2210","©":"\xA9","©":"\xA9","℗":"\u2117","↵":"\u21B5","✗":"\u2717","𝒸":"\u{1D4B8}","⫏":"\u2ACF","⫑":"\u2AD1","⫐":"\u2AD0","⫒":"\u2AD2","⋯":"\u22EF","⤸":"\u2938","⤵":"\u2935","⋞":"\u22DE","⋟":"\u22DF","↶":"\u21B6","⤽":"\u293D","∪":"\u222A","⩈":"\u2A48","⩆":"\u2A46","⩊":"\u2A4A","⊍":"\u228D","⩅":"\u2A45","∪︀":"\u222A\uFE00","↷":"\u21B7","⤼":"\u293C","⋞":"\u22DE","⋟":"\u22DF","⋎":"\u22CE","⋏":"\u22CF","¤":"\xA4","¤":"\xA4","↶":"\u21B6","↷":"\u21B7","⋎":"\u22CE","⋏":"\u22CF","∲":"\u2232","∱":"\u2231","⌭":"\u232D","⇓":"\u21D3","⥥":"\u2965","†":"\u2020","ℸ":"\u2138","↓":"\u2193","‐":"\u2010","⊣":"\u22A3","⤏":"\u290F","˝":"\u02DD","ď":"\u010F","д":"\u0434","ⅆ":"\u2146","‡":"\u2021","⇊":"\u21CA","⩷":"\u2A77","°":"\xB0","°":"\xB0","δ":"\u03B4","⦱":"\u29B1","⥿":"\u297F","𝔡":"\u{1D521}","⇃":"\u21C3","⇂":"\u21C2","⋄":"\u22C4","⋄":"\u22C4","♦":"\u2666","♦":"\u2666","¨":"\xA8","ϝ":"\u03DD","⋲":"\u22F2","÷":"\xF7","÷":"\xF7","÷":"\xF7","⋇":"\u22C7","⋇":"\u22C7","ђ":"\u0452","⌞":"\u231E","⌍":"\u230D","$":"$","𝕕":"\u{1D555}","˙":"\u02D9","≐":"\u2250","≑":"\u2251","∸":"\u2238","∔":"\u2214","⊡":"\u22A1","⌆":"\u2306","↓":"\u2193","⇊":"\u21CA","⇃":"\u21C3","⇂":"\u21C2","⤐":"\u2910","⌟":"\u231F","⌌":"\u230C","𝒹":"\u{1D4B9}","ѕ":"\u0455","⧶":"\u29F6","đ":"\u0111","⋱":"\u22F1","▿":"\u25BF","▾":"\u25BE","⇵":"\u21F5","⥯":"\u296F","⦦":"\u29A6","џ":"\u045F","⟿":"\u27FF","⩷":"\u2A77","≑":"\u2251","é":"\xE9","é":"\xE9","⩮":"\u2A6E","ě":"\u011B","≖":"\u2256","ê":"\xEA","ê":"\xEA","≕":"\u2255","э":"\u044D","ė":"\u0117","ⅇ":"\u2147","≒":"\u2252","𝔢":"\u{1D522}","⪚":"\u2A9A","è":"\xE8","è":"\xE8","⪖":"\u2A96","⪘":"\u2A98","⪙":"\u2A99","⏧":"\u23E7","ℓ":"\u2113","⪕":"\u2A95","⪗":"\u2A97","ē":"\u0113","∅":"\u2205","∅":"\u2205","∅":"\u2205"," ":"\u2004"," ":"\u2005"," ":"\u2003","ŋ":"\u014B"," ":"\u2002","ę":"\u0119","𝕖":"\u{1D556}","⋕":"\u22D5","⧣":"\u29E3","⩱":"\u2A71","ε":"\u03B5","ε":"\u03B5","ϵ":"\u03F5","≖":"\u2256","≕":"\u2255","≂":"\u2242","⪖":"\u2A96","⪕":"\u2A95","=":"=","≟":"\u225F","≡":"\u2261","⩸":"\u2A78","⧥":"\u29E5","≓":"\u2253","⥱":"\u2971","ℯ":"\u212F","≐":"\u2250","≂":"\u2242","η":"\u03B7","ð":"\xF0","ð":"\xF0","ë":"\xEB","ë":"\xEB","€":"\u20AC","!":"!","∃":"\u2203","ℰ":"\u2130","ⅇ":"\u2147","≒":"\u2252","ф":"\u0444","♀":"\u2640","ffi":"\uFB03","ff":"\uFB00","ffl":"\uFB04","𝔣":"\u{1D523}","fi":"\uFB01","fj":"fj","♭":"\u266D","fl":"\uFB02","▱":"\u25B1","ƒ":"\u0192","𝕗":"\u{1D557}","∀":"\u2200","⋔":"\u22D4","⫙":"\u2AD9","⨍":"\u2A0D","½":"\xBD","½":"\xBD","⅓":"\u2153","¼":"\xBC","¼":"\xBC","⅕":"\u2155","⅙":"\u2159","⅛":"\u215B","⅔":"\u2154","⅖":"\u2156","¾":"\xBE","¾":"\xBE","⅗":"\u2157","⅜":"\u215C","⅘":"\u2158","⅚":"\u215A","⅝":"\u215D","⅞":"\u215E","⁄":"\u2044","⌢":"\u2322","𝒻":"\u{1D4BB}","≧":"\u2267","⪌":"\u2A8C","ǵ":"\u01F5","γ":"\u03B3","ϝ":"\u03DD","⪆":"\u2A86","ğ":"\u011F","ĝ":"\u011D","г":"\u0433","ġ":"\u0121","≥":"\u2265","⋛":"\u22DB","≥":"\u2265","≧":"\u2267","⩾":"\u2A7E","⩾":"\u2A7E","⪩":"\u2AA9","⪀":"\u2A80","⪂":"\u2A82","⪄":"\u2A84","⋛︀":"\u22DB\uFE00","⪔":"\u2A94","𝔤":"\u{1D524}","≫":"\u226B","⋙":"\u22D9","ℷ":"\u2137","ѓ":"\u0453","≷":"\u2277","⪒":"\u2A92","⪥":"\u2AA5","⪤":"\u2AA4","≩":"\u2269","⪊":"\u2A8A","⪊":"\u2A8A","⪈":"\u2A88","⪈":"\u2A88","≩":"\u2269","⋧":"\u22E7","𝕘":"\u{1D558}","`":"`","ℊ":"\u210A","≳":"\u2273","⪎":"\u2A8E","⪐":"\u2A90",">":">",">":">","⪧":"\u2AA7","⩺":"\u2A7A","⋗":"\u22D7","⦕":"\u2995","⩼":"\u2A7C","⪆":"\u2A86","⥸":"\u2978","⋗":"\u22D7","⋛":"\u22DB","⪌":"\u2A8C","≷":"\u2277","≳":"\u2273","≩︀":"\u2269\uFE00","≩︀":"\u2269\uFE00","⇔":"\u21D4"," ":"\u200A","½":"\xBD","ℋ":"\u210B","ъ":"\u044A","↔":"\u2194","⥈":"\u2948","↭":"\u21AD","ℏ":"\u210F","ĥ":"\u0125","♥":"\u2665","♥":"\u2665","…":"\u2026","⊹":"\u22B9","𝔥":"\u{1D525}","⤥":"\u2925","⤦":"\u2926","⇿":"\u21FF","∻":"\u223B","↩":"\u21A9","↪":"\u21AA","𝕙":"\u{1D559}","―":"\u2015","𝒽":"\u{1D4BD}","ℏ":"\u210F","ħ":"\u0127","⁃":"\u2043","‐":"\u2010","í":"\xED","í":"\xED","⁣":"\u2063","î":"\xEE","î":"\xEE","и":"\u0438","е":"\u0435","¡":"\xA1","¡":"\xA1","⇔":"\u21D4","𝔦":"\u{1D526}","ì":"\xEC","ì":"\xEC","ⅈ":"\u2148","⨌":"\u2A0C","∭":"\u222D","⧜":"\u29DC","℩":"\u2129","ij":"\u0133","ī":"\u012B","ℑ":"\u2111","ℐ":"\u2110","ℑ":"\u2111","ı":"\u0131","⊷":"\u22B7","Ƶ":"\u01B5","∈":"\u2208","℅":"\u2105","∞":"\u221E","⧝":"\u29DD","ı":"\u0131","∫":"\u222B","⊺":"\u22BA","ℤ":"\u2124","⊺":"\u22BA","⨗":"\u2A17","⨼":"\u2A3C","ё":"\u0451","į":"\u012F","𝕚":"\u{1D55A}","ι":"\u03B9","⨼":"\u2A3C","¿":"\xBF","¿":"\xBF","𝒾":"\u{1D4BE}","∈":"\u2208","⋹":"\u22F9","⋵":"\u22F5","⋴":"\u22F4","⋳":"\u22F3","∈":"\u2208","⁢":"\u2062","ĩ":"\u0129","і":"\u0456","ï":"\xEF","ï":"\xEF","ĵ":"\u0135","й":"\u0439","𝔧":"\u{1D527}","ȷ":"\u0237","𝕛":"\u{1D55B}","𝒿":"\u{1D4BF}","ј":"\u0458","є":"\u0454","κ":"\u03BA","ϰ":"\u03F0","ķ":"\u0137","к":"\u043A","𝔨":"\u{1D528}","ĸ":"\u0138","х":"\u0445","ќ":"\u045C","𝕜":"\u{1D55C}","𝓀":"\u{1D4C0}","⇚":"\u21DA","⇐":"\u21D0","⤛":"\u291B","⤎":"\u290E","≦":"\u2266","⪋":"\u2A8B","⥢":"\u2962","ĺ":"\u013A","⦴":"\u29B4","ℒ":"\u2112","λ":"\u03BB","⟨":"\u27E8","⦑":"\u2991","⟨":"\u27E8","⪅":"\u2A85","«":"\xAB","«":"\xAB","←":"\u2190","⇤":"\u21E4","⤟":"\u291F","⤝":"\u291D","↩":"\u21A9","↫":"\u21AB","⤹":"\u2939","⥳":"\u2973","↢":"\u21A2","⪫":"\u2AAB","⤙":"\u2919","⪭":"\u2AAD","⪭︀":"\u2AAD\uFE00","⤌":"\u290C","❲":"\u2772","{":"{","[":"[","⦋":"\u298B","⦏":"\u298F","⦍":"\u298D","ľ":"\u013E","ļ":"\u013C","⌈":"\u2308","{":"{","л":"\u043B","⤶":"\u2936","“":"\u201C","„":"\u201E","⥧":"\u2967","⥋":"\u294B","↲":"\u21B2","≤":"\u2264","←":"\u2190","↢":"\u21A2","↽":"\u21BD","↼":"\u21BC","⇇":"\u21C7","↔":"\u2194","⇆":"\u21C6","⇋":"\u21CB","↭":"\u21AD","⋋":"\u22CB","⋚":"\u22DA","≤":"\u2264","≦":"\u2266","⩽":"\u2A7D","⩽":"\u2A7D","⪨":"\u2AA8","⩿":"\u2A7F","⪁":"\u2A81","⪃":"\u2A83","⋚︀":"\u22DA\uFE00","⪓":"\u2A93","⪅":"\u2A85","⋖":"\u22D6","⋚":"\u22DA","⪋":"\u2A8B","≶":"\u2276","≲":"\u2272","⥼":"\u297C","⌊":"\u230A","𝔩":"\u{1D529}","≶":"\u2276","⪑":"\u2A91","↽":"\u21BD","↼":"\u21BC","⥪":"\u296A","▄":"\u2584","љ":"\u0459","≪":"\u226A","⇇":"\u21C7","⌞":"\u231E","⥫":"\u296B","◺":"\u25FA","ŀ":"\u0140","⎰":"\u23B0","⎰":"\u23B0","≨":"\u2268","⪉":"\u2A89","⪉":"\u2A89","⪇":"\u2A87","⪇":"\u2A87","≨":"\u2268","⋦":"\u22E6","⟬":"\u27EC","⇽":"\u21FD","⟦":"\u27E6","⟵":"\u27F5","⟷":"\u27F7","⟼":"\u27FC","⟶":"\u27F6","↫":"\u21AB","↬":"\u21AC","⦅":"\u2985","𝕝":"\u{1D55D}","⨭":"\u2A2D","⨴":"\u2A34","∗":"\u2217","_":"_","◊":"\u25CA","◊":"\u25CA","⧫":"\u29EB","(":"(","⦓":"\u2993","⇆":"\u21C6","⌟":"\u231F","⇋":"\u21CB","⥭":"\u296D","‎":"\u200E","⊿":"\u22BF","‹":"\u2039","𝓁":"\u{1D4C1}","↰":"\u21B0","≲":"\u2272","⪍":"\u2A8D","⪏":"\u2A8F","[":"[","‘":"\u2018","‚":"\u201A","ł":"\u0142","<":"<","<":"<","⪦":"\u2AA6","⩹":"\u2A79","⋖":"\u22D6","⋋":"\u22CB","⋉":"\u22C9","⥶":"\u2976","⩻":"\u2A7B","⦖":"\u2996","◃":"\u25C3","⊴":"\u22B4","◂":"\u25C2","⥊":"\u294A","⥦":"\u2966","≨︀":"\u2268\uFE00","≨︀":"\u2268\uFE00","∺":"\u223A","¯":"\xAF","¯":"\xAF","♂":"\u2642","✠":"\u2720","✠":"\u2720","↦":"\u21A6","↦":"\u21A6","↧":"\u21A7","↤":"\u21A4","↥":"\u21A5","▮":"\u25AE","⨩":"\u2A29","м":"\u043C","—":"\u2014","∡":"\u2221","𝔪":"\u{1D52A}","℧":"\u2127","µ":"\xB5","µ":"\xB5","∣":"\u2223","*":"*","⫰":"\u2AF0","·":"\xB7","·":"\xB7","−":"\u2212","⊟":"\u229F","∸":"\u2238","⨪":"\u2A2A","⫛":"\u2ADB","…":"\u2026","∓":"\u2213","⊧":"\u22A7","𝕞":"\u{1D55E}","∓":"\u2213","𝓂":"\u{1D4C2}","∾":"\u223E","μ":"\u03BC","⊸":"\u22B8","⊸":"\u22B8","⋙̸":"\u22D9\u0338","≫⃒":"\u226B\u20D2","≫̸":"\u226B\u0338","⇍":"\u21CD","⇎":"\u21CE","⋘̸":"\u22D8\u0338","≪⃒":"\u226A\u20D2","≪̸":"\u226A\u0338","⇏":"\u21CF","⊯":"\u22AF","⊮":"\u22AE","∇":"\u2207","ń":"\u0144","∠⃒":"\u2220\u20D2","≉":"\u2249","⩰̸":"\u2A70\u0338","≋̸":"\u224B\u0338","ʼn":"\u0149","≉":"\u2249","♮":"\u266E","♮":"\u266E","ℕ":"\u2115"," ":"\xA0"," ":"\xA0","≎̸":"\u224E\u0338","≏̸":"\u224F\u0338","⩃":"\u2A43","ň":"\u0148","ņ":"\u0146","≇":"\u2247","⩭̸":"\u2A6D\u0338","⩂":"\u2A42","н":"\u043D","–":"\u2013","≠":"\u2260","⇗":"\u21D7","⤤":"\u2924","↗":"\u2197","↗":"\u2197","≐̸":"\u2250\u0338","≢":"\u2262","⤨":"\u2928","≂̸":"\u2242\u0338","∄":"\u2204","∄":"\u2204","𝔫":"\u{1D52B}","≧̸":"\u2267\u0338","≱":"\u2271","≱":"\u2271","≧̸":"\u2267\u0338","⩾̸":"\u2A7E\u0338","⩾̸":"\u2A7E\u0338","≵":"\u2275","≯":"\u226F","≯":"\u226F","⇎":"\u21CE","↮":"\u21AE","⫲":"\u2AF2","∋":"\u220B","⋼":"\u22FC","⋺":"\u22FA","∋":"\u220B","њ":"\u045A","⇍":"\u21CD","≦̸":"\u2266\u0338","↚":"\u219A","‥":"\u2025","≰":"\u2270","↚":"\u219A","↮":"\u21AE","≰":"\u2270","≦̸":"\u2266\u0338","⩽̸":"\u2A7D\u0338","⩽̸":"\u2A7D\u0338","≮":"\u226E","≴":"\u2274","≮":"\u226E","⋪":"\u22EA","⋬":"\u22EC","∤":"\u2224","𝕟":"\u{1D55F}","¬":"\xAC","¬":"\xAC","∉":"\u2209","⋹̸":"\u22F9\u0338","⋵̸":"\u22F5\u0338","∉":"\u2209","⋷":"\u22F7","⋶":"\u22F6","∌":"\u220C","∌":"\u220C","⋾":"\u22FE","⋽":"\u22FD","∦":"\u2226","∦":"\u2226","⫽⃥":"\u2AFD\u20E5","∂̸":"\u2202\u0338","⨔":"\u2A14","⊀":"\u2280","⋠":"\u22E0","⪯̸":"\u2AAF\u0338","⊀":"\u2280","⪯̸":"\u2AAF\u0338","⇏":"\u21CF","↛":"\u219B","⤳̸":"\u2933\u0338","↝̸":"\u219D\u0338","↛":"\u219B","⋫":"\u22EB","⋭":"\u22ED","⊁":"\u2281","⋡":"\u22E1","⪰̸":"\u2AB0\u0338","𝓃":"\u{1D4C3}","∤":"\u2224","∦":"\u2226","≁":"\u2241","≄":"\u2244","≄":"\u2244","∤":"\u2224","∦":"\u2226","⋢":"\u22E2","⋣":"\u22E3","⊄":"\u2284","⫅̸":"\u2AC5\u0338","⊈":"\u2288","⊂⃒":"\u2282\u20D2","⊈":"\u2288","⫅̸":"\u2AC5\u0338","⊁":"\u2281","⪰̸":"\u2AB0\u0338","⊅":"\u2285","⫆̸":"\u2AC6\u0338","⊉":"\u2289","⊃⃒":"\u2283\u20D2","⊉":"\u2289","⫆̸":"\u2AC6\u0338","≹":"\u2279","ñ":"\xF1","ñ":"\xF1","≸":"\u2278","⋪":"\u22EA","⋬":"\u22EC","⋫":"\u22EB","⋭":"\u22ED","ν":"\u03BD","#":"#","№":"\u2116"," ":"\u2007","⊭":"\u22AD","⤄":"\u2904","≍⃒":"\u224D\u20D2","⊬":"\u22AC","≥⃒":"\u2265\u20D2",">⃒":">\u20D2","⧞":"\u29DE","⤂":"\u2902","≤⃒":"\u2264\u20D2","<⃒":"<\u20D2","⊴⃒":"\u22B4\u20D2","⤃":"\u2903","⊵⃒":"\u22B5\u20D2","∼⃒":"\u223C\u20D2","⇖":"\u21D6","⤣":"\u2923","↖":"\u2196","↖":"\u2196","⤧":"\u2927","Ⓢ":"\u24C8","ó":"\xF3","ó":"\xF3","⊛":"\u229B","⊚":"\u229A","ô":"\xF4","ô":"\xF4","о":"\u043E","⊝":"\u229D","ő":"\u0151","⨸":"\u2A38","⊙":"\u2299","⦼":"\u29BC","œ":"\u0153","⦿":"\u29BF","𝔬":"\u{1D52C}","˛":"\u02DB","ò":"\xF2","ò":"\xF2","⧁":"\u29C1","⦵":"\u29B5","Ω":"\u03A9","∮":"\u222E","↺":"\u21BA","⦾":"\u29BE","⦻":"\u29BB","‾":"\u203E","⧀":"\u29C0","ō":"\u014D","ω":"\u03C9","ο":"\u03BF","⦶":"\u29B6","⊖":"\u2296","𝕠":"\u{1D560}","⦷":"\u29B7","⦹":"\u29B9","⊕":"\u2295","∨":"\u2228","↻":"\u21BB","⩝":"\u2A5D","ℴ":"\u2134","ℴ":"\u2134","ª":"\xAA","ª":"\xAA","º":"\xBA","º":"\xBA","⊶":"\u22B6","⩖":"\u2A56","⩗":"\u2A57","⩛":"\u2A5B","ℴ":"\u2134","ø":"\xF8","ø":"\xF8","⊘":"\u2298","õ":"\xF5","õ":"\xF5","⊗":"\u2297","⨶":"\u2A36","ö":"\xF6","ö":"\xF6","⌽":"\u233D","∥":"\u2225","¶":"\xB6","¶":"\xB6","∥":"\u2225","⫳":"\u2AF3","⫽":"\u2AFD","∂":"\u2202","п":"\u043F","%":"%",".":".","‰":"\u2030","⊥":"\u22A5","‱":"\u2031","𝔭":"\u{1D52D}","φ":"\u03C6","ϕ":"\u03D5","ℳ":"\u2133","☎":"\u260E","π":"\u03C0","⋔":"\u22D4","ϖ":"\u03D6","ℏ":"\u210F","ℎ":"\u210E","ℏ":"\u210F","+":"+","⨣":"\u2A23","⊞":"\u229E","⨢":"\u2A22","∔":"\u2214","⨥":"\u2A25","⩲":"\u2A72","±":"\xB1","±":"\xB1","⨦":"\u2A26","⨧":"\u2A27","±":"\xB1","⨕":"\u2A15","𝕡":"\u{1D561}","£":"\xA3","£":"\xA3","≺":"\u227A","⪳":"\u2AB3","⪷":"\u2AB7","≼":"\u227C","⪯":"\u2AAF","≺":"\u227A","⪷":"\u2AB7","≼":"\u227C","⪯":"\u2AAF","⪹":"\u2AB9","⪵":"\u2AB5","⋨":"\u22E8","≾":"\u227E","′":"\u2032","ℙ":"\u2119","⪵":"\u2AB5","⪹":"\u2AB9","⋨":"\u22E8","∏":"\u220F","⌮":"\u232E","⌒":"\u2312","⌓":"\u2313","∝":"\u221D","∝":"\u221D","≾":"\u227E","⊰":"\u22B0","𝓅":"\u{1D4C5}","ψ":"\u03C8"," ":"\u2008","𝔮":"\u{1D52E}","⨌":"\u2A0C","𝕢":"\u{1D562}","⁗":"\u2057","𝓆":"\u{1D4C6}","ℍ":"\u210D","⨖":"\u2A16","?":"?","≟":"\u225F",""":'"',""":'"',"⇛":"\u21DB","⇒":"\u21D2","⤜":"\u291C","⤏":"\u290F","⥤":"\u2964","∽̱":"\u223D\u0331","ŕ":"\u0155","√":"\u221A","⦳":"\u29B3","⟩":"\u27E9","⦒":"\u2992","⦥":"\u29A5","⟩":"\u27E9","»":"\xBB","»":"\xBB","→":"\u2192","⥵":"\u2975","⇥":"\u21E5","⤠":"\u2920","⤳":"\u2933","⤞":"\u291E","↪":"\u21AA","↬":"\u21AC","⥅":"\u2945","⥴":"\u2974","↣":"\u21A3","↝":"\u219D","⤚":"\u291A","∶":"\u2236","ℚ":"\u211A","⤍":"\u290D","❳":"\u2773","}":"}","]":"]","⦌":"\u298C","⦎":"\u298E","⦐":"\u2990","ř":"\u0159","ŗ":"\u0157","⌉":"\u2309","}":"}","р":"\u0440","⤷":"\u2937","⥩":"\u2969","”":"\u201D","”":"\u201D","↳":"\u21B3","ℜ":"\u211C","ℛ":"\u211B","ℜ":"\u211C","ℝ":"\u211D","▭":"\u25AD","®":"\xAE","®":"\xAE","⥽":"\u297D","⌋":"\u230B","𝔯":"\u{1D52F}","⇁":"\u21C1","⇀":"\u21C0","⥬":"\u296C","ρ":"\u03C1","ϱ":"\u03F1","→":"\u2192","↣":"\u21A3","⇁":"\u21C1","⇀":"\u21C0","⇄":"\u21C4","⇌":"\u21CC","⇉":"\u21C9","↝":"\u219D","⋌":"\u22CC","˚":"\u02DA","≓":"\u2253","⇄":"\u21C4","⇌":"\u21CC","‏":"\u200F","⎱":"\u23B1","⎱":"\u23B1","⫮":"\u2AEE","⟭":"\u27ED","⇾":"\u21FE","⟧":"\u27E7","⦆":"\u2986","𝕣":"\u{1D563}","⨮":"\u2A2E","⨵":"\u2A35",")":")","⦔":"\u2994","⨒":"\u2A12","⇉":"\u21C9","›":"\u203A","𝓇":"\u{1D4C7}","↱":"\u21B1","]":"]","’":"\u2019","’":"\u2019","⋌":"\u22CC","⋊":"\u22CA","▹":"\u25B9","⊵":"\u22B5","▸":"\u25B8","⧎":"\u29CE","⥨":"\u2968","℞":"\u211E","ś":"\u015B","‚":"\u201A","≻":"\u227B","⪴":"\u2AB4","⪸":"\u2AB8","š":"\u0161","≽":"\u227D","⪰":"\u2AB0","ş":"\u015F","ŝ":"\u015D","⪶":"\u2AB6","⪺":"\u2ABA","⋩":"\u22E9","⨓":"\u2A13","≿":"\u227F","с":"\u0441","⋅":"\u22C5","⊡":"\u22A1","⩦":"\u2A66","⇘":"\u21D8","⤥":"\u2925","↘":"\u2198","↘":"\u2198","§":"\xA7","§":"\xA7",";":";","⤩":"\u2929","∖":"\u2216","∖":"\u2216","✶":"\u2736","𝔰":"\u{1D530}","⌢":"\u2322","♯":"\u266F","щ":"\u0449","ш":"\u0448","∣":"\u2223","∥":"\u2225","­":"\xAD","­":"\xAD","σ":"\u03C3","ς":"\u03C2","ς":"\u03C2","∼":"\u223C","⩪":"\u2A6A","≃":"\u2243","≃":"\u2243","⪞":"\u2A9E","⪠":"\u2AA0","⪝":"\u2A9D","⪟":"\u2A9F","≆":"\u2246","⨤":"\u2A24","⥲":"\u2972","←":"\u2190","∖":"\u2216","⨳":"\u2A33","⧤":"\u29E4","∣":"\u2223","⌣":"\u2323","⪪":"\u2AAA","⪬":"\u2AAC","⪬︀":"\u2AAC\uFE00","ь":"\u044C","/":"/","⧄":"\u29C4","⌿":"\u233F","𝕤":"\u{1D564}","♠":"\u2660","♠":"\u2660","∥":"\u2225","⊓":"\u2293","⊓︀":"\u2293\uFE00","⊔":"\u2294","⊔︀":"\u2294\uFE00","⊏":"\u228F","⊑":"\u2291","⊏":"\u228F","⊑":"\u2291","⊐":"\u2290","⊒":"\u2292","⊐":"\u2290","⊒":"\u2292","□":"\u25A1","□":"\u25A1","▪":"\u25AA","▪":"\u25AA","→":"\u2192","𝓈":"\u{1D4C8}","∖":"\u2216","⌣":"\u2323","⋆":"\u22C6","☆":"\u2606","★":"\u2605","ϵ":"\u03F5","ϕ":"\u03D5","¯":"\xAF","⊂":"\u2282","⫅":"\u2AC5","⪽":"\u2ABD","⊆":"\u2286","⫃":"\u2AC3","⫁":"\u2AC1","⫋":"\u2ACB","⊊":"\u228A","⪿":"\u2ABF","⥹":"\u2979","⊂":"\u2282","⊆":"\u2286","⫅":"\u2AC5","⊊":"\u228A","⫋":"\u2ACB","⫇":"\u2AC7","⫕":"\u2AD5","⫓":"\u2AD3","≻":"\u227B","⪸":"\u2AB8","≽":"\u227D","⪰":"\u2AB0","⪺":"\u2ABA","⪶":"\u2AB6","⋩":"\u22E9","≿":"\u227F","∑":"\u2211","♪":"\u266A","¹":"\xB9","¹":"\xB9","²":"\xB2","²":"\xB2","³":"\xB3","³":"\xB3","⊃":"\u2283","⫆":"\u2AC6","⪾":"\u2ABE","⫘":"\u2AD8","⊇":"\u2287","⫄":"\u2AC4","⟉":"\u27C9","⫗":"\u2AD7","⥻":"\u297B","⫂":"\u2AC2","⫌":"\u2ACC","⊋":"\u228B","⫀":"\u2AC0","⊃":"\u2283","⊇":"\u2287","⫆":"\u2AC6","⊋":"\u228B","⫌":"\u2ACC","⫈":"\u2AC8","⫔":"\u2AD4","⫖":"\u2AD6","⇙":"\u21D9","⤦":"\u2926","↙":"\u2199","↙":"\u2199","⤪":"\u292A","ß":"\xDF","ß":"\xDF","⌖":"\u2316","τ":"\u03C4","⎴":"\u23B4","ť":"\u0165","ţ":"\u0163","т":"\u0442","⃛":"\u20DB","⌕":"\u2315","𝔱":"\u{1D531}","∴":"\u2234","∴":"\u2234","θ":"\u03B8","ϑ":"\u03D1","ϑ":"\u03D1","≈":"\u2248","∼":"\u223C"," ":"\u2009","≈":"\u2248","∼":"\u223C","þ":"\xFE","þ":"\xFE","˜":"\u02DC","×":"\xD7","×":"\xD7","⊠":"\u22A0","⨱":"\u2A31","⨰":"\u2A30","∭":"\u222D","⤨":"\u2928","⊤":"\u22A4","⌶":"\u2336","⫱":"\u2AF1","𝕥":"\u{1D565}","⫚":"\u2ADA","⤩":"\u2929","‴":"\u2034","™":"\u2122","▵":"\u25B5","▿":"\u25BF","◃":"\u25C3","⊴":"\u22B4","≜":"\u225C","▹":"\u25B9","⊵":"\u22B5","◬":"\u25EC","≜":"\u225C","⨺":"\u2A3A","⨹":"\u2A39","⧍":"\u29CD","⨻":"\u2A3B","⏢":"\u23E2","𝓉":"\u{1D4C9}","ц":"\u0446","ћ":"\u045B","ŧ":"\u0167","≬":"\u226C","↞":"\u219E","↠":"\u21A0","⇑":"\u21D1","⥣":"\u2963","ú":"\xFA","ú":"\xFA","↑":"\u2191","ў":"\u045E","ŭ":"\u016D","û":"\xFB","û":"\xFB","у":"\u0443","⇅":"\u21C5","ű":"\u0171","⥮":"\u296E","⥾":"\u297E","𝔲":"\u{1D532}","ù":"\xF9","ù":"\xF9","↿":"\u21BF","↾":"\u21BE","▀":"\u2580","⌜":"\u231C","⌜":"\u231C","⌏":"\u230F","◸":"\u25F8","ū":"\u016B","¨":"\xA8","¨":"\xA8","ų":"\u0173","𝕦":"\u{1D566}","↑":"\u2191","↕":"\u2195","↿":"\u21BF","↾":"\u21BE","⊎":"\u228E","υ":"\u03C5","ϒ":"\u03D2","υ":"\u03C5","⇈":"\u21C8","⌝":"\u231D","⌝":"\u231D","⌎":"\u230E","ů":"\u016F","◹":"\u25F9","𝓊":"\u{1D4CA}","⋰":"\u22F0","ũ":"\u0169","▵":"\u25B5","▴":"\u25B4","⇈":"\u21C8","ü":"\xFC","ü":"\xFC","⦧":"\u29A7","⇕":"\u21D5","⫨":"\u2AE8","⫩":"\u2AE9","⊨":"\u22A8","⦜":"\u299C","ϵ":"\u03F5","ϰ":"\u03F0","∅":"\u2205","ϕ":"\u03D5","ϖ":"\u03D6","∝":"\u221D","↕":"\u2195","ϱ":"\u03F1","ς":"\u03C2","⊊︀":"\u228A\uFE00","⫋︀":"\u2ACB\uFE00","⊋︀":"\u228B\uFE00","⫌︀":"\u2ACC\uFE00","ϑ":"\u03D1","⊲":"\u22B2","⊳":"\u22B3","в":"\u0432","⊢":"\u22A2","∨":"\u2228","⊻":"\u22BB","≚":"\u225A","⋮":"\u22EE","|":"|","|":"|","𝔳":"\u{1D533}","⊲":"\u22B2","⊂⃒":"\u2282\u20D2","⊃⃒":"\u2283\u20D2","𝕧":"\u{1D567}","∝":"\u221D","⊳":"\u22B3","𝓋":"\u{1D4CB}","⫋︀":"\u2ACB\uFE00","⊊︀":"\u228A\uFE00","⫌︀":"\u2ACC\uFE00","⊋︀":"\u228B\uFE00","⦚":"\u299A","ŵ":"\u0175","⩟":"\u2A5F","∧":"\u2227","≙":"\u2259","℘":"\u2118","𝔴":"\u{1D534}","𝕨":"\u{1D568}","℘":"\u2118","≀":"\u2240","≀":"\u2240","𝓌":"\u{1D4CC}","⋂":"\u22C2","◯":"\u25EF","⋃":"\u22C3","▽":"\u25BD","𝔵":"\u{1D535}","⟺":"\u27FA","⟷":"\u27F7","ξ":"\u03BE","⟸":"\u27F8","⟵":"\u27F5","⟼":"\u27FC","⋻":"\u22FB","⨀":"\u2A00","𝕩":"\u{1D569}","⨁":"\u2A01","⨂":"\u2A02","⟹":"\u27F9","⟶":"\u27F6","𝓍":"\u{1D4CD}","⨆":"\u2A06","⨄":"\u2A04","△":"\u25B3","⋁":"\u22C1","⋀":"\u22C0","ý":"\xFD","ý":"\xFD","я":"\u044F","ŷ":"\u0177","ы":"\u044B","¥":"\xA5","¥":"\xA5","𝔶":"\u{1D536}","ї":"\u0457","𝕪":"\u{1D56A}","𝓎":"\u{1D4CE}","ю":"\u044E","ÿ":"\xFF","ÿ":"\xFF","ź":"\u017A","ž":"\u017E","з":"\u0437","ż":"\u017C","ℨ":"\u2128","ζ":"\u03B6","𝔷":"\u{1D537}","ж":"\u0436","⇝":"\u21DD","𝕫":"\u{1D56B}","𝓏":"\u{1D4CF}","‍":"\u200D","‌":"\u200C"},characters:{\u00C6:"Æ","&":"&",\u00C1:"Á",\u0102:"Ă",\u00C2:"Â",\u0410:"А","\u{1D504}":"𝔄",\u00C0:"À",\u0391:"Α",\u0100:"Ā","\u2A53":"⩓",\u0104:"Ą","\u{1D538}":"𝔸","\u2061":"⁡",\u00C5:"Å","\u{1D49C}":"𝒜","\u2254":"≔",\u00C3:"Ã",\u00C4:"Ä","\u2216":"∖","\u2AE7":"⫧","\u2306":"⌆",\u0411:"Б","\u2235":"∵",\u212C:"ℬ",\u0392:"Β","\u{1D505}":"𝔅","\u{1D539}":"𝔹","\u02D8":"˘","\u224E":"≎",\u0427:"Ч","\xA9":"©",\u0106:"Ć","\u22D2":"⋒","\u2145":"ⅅ",\u212D:"ℭ",\u010C:"Č",\u00C7:"Ç",\u0108:"Ĉ","\u2230":"∰",\u010A:"Ċ","\xB8":"¸","\xB7":"·",\u03A7:"Χ","\u2299":"⊙","\u2296":"⊖","\u2295":"⊕","\u2297":"⊗","\u2232":"∲","\u201D":"”","\u2019":"’","\u2237":"∷","\u2A74":"⩴","\u2261":"≡","\u222F":"∯","\u222E":"∮",\u2102:"ℂ","\u2210":"∐","\u2233":"∳","\u2A2F":"⨯","\u{1D49E}":"𝒞","\u22D3":"⋓","\u224D":"≍","\u2911":"⤑",\u0402:"Ђ",\u0405:"Ѕ",\u040F:"Џ","\u2021":"‡","\u21A1":"↡","\u2AE4":"⫤",\u010E:"Ď",\u0414:"Д","\u2207":"∇",\u0394:"Δ","\u{1D507}":"𝔇","\xB4":"´","\u02D9":"˙","\u02DD":"˝","`":"`","\u02DC":"˜","\u22C4":"⋄","\u2146":"ⅆ","\u{1D53B}":"𝔻","\xA8":"¨","\u20DC":"⃜","\u2250":"≐","\u21D3":"⇓","\u21D0":"⇐","\u21D4":"⇔","\u27F8":"⟸","\u27FA":"⟺","\u27F9":"⟹","\u21D2":"⇒","\u22A8":"⊨","\u21D1":"⇑","\u21D5":"⇕","\u2225":"∥","\u2193":"↓","\u2913":"⤓","\u21F5":"⇵","\u0311":"̑","\u2950":"⥐","\u295E":"⥞","\u21BD":"↽","\u2956":"⥖","\u295F":"⥟","\u21C1":"⇁","\u2957":"⥗","\u22A4":"⊤","\u21A7":"↧","\u{1D49F}":"𝒟",\u0110:"Đ",\u014A:"Ŋ",\u00D0:"Ð",\u00C9:"É",\u011A:"Ě",\u00CA:"Ê",\u042D:"Э",\u0116:"Ė","\u{1D508}":"𝔈",\u00C8:"È","\u2208":"∈",\u0112:"Ē","\u25FB":"◻","\u25AB":"▫",\u0118:"Ę","\u{1D53C}":"𝔼",\u0395:"Ε","\u2A75":"⩵","\u2242":"≂","\u21CC":"⇌",\u2130:"ℰ","\u2A73":"⩳",\u0397:"Η",\u00CB:"Ë","\u2203":"∃","\u2147":"ⅇ",\u0424:"Ф","\u{1D509}":"𝔉","\u25FC":"◼","\u25AA":"▪","\u{1D53D}":"𝔽","\u2200":"∀",\u2131:"ℱ",\u0403:"Ѓ",">":">",\u0393:"Γ",\u03DC:"Ϝ",\u011E:"Ğ",\u0122:"Ģ",\u011C:"Ĝ",\u0413:"Г",\u0120:"Ġ","\u{1D50A}":"𝔊","\u22D9":"⋙","\u{1D53E}":"𝔾","\u2265":"≥","\u22DB":"⋛","\u2267":"≧","\u2AA2":"⪢","\u2277":"≷","\u2A7E":"⩾","\u2273":"≳","\u{1D4A2}":"𝒢","\u226B":"≫",\u042A:"Ъ","\u02C7":"ˇ","^":"^",\u0124:"Ĥ",\u210C:"ℌ",\u210B:"ℋ",\u210D:"ℍ","\u2500":"─",\u0126:"Ħ","\u224F":"≏",\u0415:"Е",\u0132:"IJ",\u0401:"Ё",\u00CD:"Í",\u00CE:"Î",\u0418:"И",\u0130:"İ",\u2111:"ℑ",\u00CC:"Ì",\u012A:"Ī","\u2148":"ⅈ","\u222C":"∬","\u222B":"∫","\u22C2":"⋂","\u2063":"⁣","\u2062":"⁢",\u012E:"Į","\u{1D540}":"𝕀",\u0399:"Ι",\u2110:"ℐ",\u0128:"Ĩ",\u0406:"І",\u00CF:"Ï",\u0134:"Ĵ",\u0419:"Й","\u{1D50D}":"𝔍","\u{1D541}":"𝕁","\u{1D4A5}":"𝒥",\u0408:"Ј",\u0404:"Є",\u0425:"Х",\u040C:"Ќ",\u039A:"Κ",\u0136:"Ķ",\u041A:"К","\u{1D50E}":"𝔎","\u{1D542}":"𝕂","\u{1D4A6}":"𝒦",\u0409:"Љ","<":"<",\u0139:"Ĺ",\u039B:"Λ","\u27EA":"⟪",\u2112:"ℒ","\u219E":"↞",\u013D:"Ľ",\u013B:"Ļ",\u041B:"Л","\u27E8":"⟨","\u2190":"←","\u21E4":"⇤","\u21C6":"⇆","\u2308":"⌈","\u27E6":"⟦","\u2961":"⥡","\u21C3":"⇃","\u2959":"⥙","\u230A":"⌊","\u2194":"↔","\u294E":"⥎","\u22A3":"⊣","\u21A4":"↤","\u295A":"⥚","\u22B2":"⊲","\u29CF":"⧏","\u22B4":"⊴","\u2951":"⥑","\u2960":"⥠","\u21BF":"↿","\u2958":"⥘","\u21BC":"↼","\u2952":"⥒","\u22DA":"⋚","\u2266":"≦","\u2276":"≶","\u2AA1":"⪡","\u2A7D":"⩽","\u2272":"≲","\u{1D50F}":"𝔏","\u22D8":"⋘","\u21DA":"⇚",\u013F:"Ŀ","\u27F5":"⟵","\u27F7":"⟷","\u27F6":"⟶","\u{1D543}":"𝕃","\u2199":"↙","\u2198":"↘","\u21B0":"↰",\u0141:"Ł","\u226A":"≪","\u2905":"⤅",\u041C:"М","\u205F":" ",\u2133:"ℳ","\u{1D510}":"𝔐","\u2213":"∓","\u{1D544}":"𝕄",\u039C:"Μ",\u040A:"Њ",\u0143:"Ń",\u0147:"Ň",\u0145:"Ņ",\u041D:"Н","\u200B":"​","\n":"
","\u{1D511}":"𝔑","\u2060":"⁠","\xA0":" ",\u2115:"ℕ","\u2AEC":"⫬","\u2262":"≢","\u226D":"≭","\u2226":"∦","\u2209":"∉","\u2260":"≠","\u2242\u0338":"≂̸","\u2204":"∄","\u226F":"≯","\u2271":"≱","\u2267\u0338":"≧̸","\u226B\u0338":"≫̸","\u2279":"≹","\u2A7E\u0338":"⩾̸","\u2275":"≵","\u224E\u0338":"≎̸","\u224F\u0338":"≏̸","\u22EA":"⋪","\u29CF\u0338":"⧏̸","\u22EC":"⋬","\u226E":"≮","\u2270":"≰","\u2278":"≸","\u226A\u0338":"≪̸","\u2A7D\u0338":"⩽̸","\u2274":"≴","\u2AA2\u0338":"⪢̸","\u2AA1\u0338":"⪡̸","\u2280":"⊀","\u2AAF\u0338":"⪯̸","\u22E0":"⋠","\u220C":"∌","\u22EB":"⋫","\u29D0\u0338":"⧐̸","\u22ED":"⋭","\u228F\u0338":"⊏̸","\u22E2":"⋢","\u2290\u0338":"⊐̸","\u22E3":"⋣","\u2282\u20D2":"⊂⃒","\u2288":"⊈","\u2281":"⊁","\u2AB0\u0338":"⪰̸","\u22E1":"⋡","\u227F\u0338":"≿̸","\u2283\u20D2":"⊃⃒","\u2289":"⊉","\u2241":"≁","\u2244":"≄","\u2247":"≇","\u2249":"≉","\u2224":"∤","\u{1D4A9}":"𝒩",\u00D1:"Ñ",\u039D:"Ν",\u0152:"Œ",\u00D3:"Ó",\u00D4:"Ô",\u041E:"О",\u0150:"Ő","\u{1D512}":"𝔒",\u00D2:"Ò",\u014C:"Ō",\u03A9:"Ω",\u039F:"Ο","\u{1D546}":"𝕆","\u201C":"“","\u2018":"‘","\u2A54":"⩔","\u{1D4AA}":"𝒪",\u00D8:"Ø",\u00D5:"Õ","\u2A37":"⨷",\u00D6:"Ö","\u203E":"‾","\u23DE":"⏞","\u23B4":"⎴","\u23DC":"⏜","\u2202":"∂",\u041F:"П","\u{1D513}":"𝔓",\u03A6:"Φ",\u03A0:"Π","\xB1":"±",\u2119:"ℙ","\u2ABB":"⪻","\u227A":"≺","\u2AAF":"⪯","\u227C":"≼","\u227E":"≾","\u2033":"″","\u220F":"∏","\u221D":"∝","\u{1D4AB}":"𝒫",\u03A8:"Ψ",'"':""","\u{1D514}":"𝔔",\u211A:"ℚ","\u{1D4AC}":"𝒬","\u2910":"⤐","\xAE":"®",\u0154:"Ŕ","\u27EB":"⟫","\u21A0":"↠","\u2916":"⤖",\u0158:"Ř",\u0156:"Ŗ",\u0420:"Р",\u211C:"ℜ","\u220B":"∋","\u21CB":"⇋","\u296F":"⥯",\u03A1:"Ρ","\u27E9":"⟩","\u2192":"→","\u21E5":"⇥","\u21C4":"⇄","\u2309":"⌉","\u27E7":"⟧","\u295D":"⥝","\u21C2":"⇂","\u2955":"⥕","\u230B":"⌋","\u22A2":"⊢","\u21A6":"↦","\u295B":"⥛","\u22B3":"⊳","\u29D0":"⧐","\u22B5":"⊵","\u294F":"⥏","\u295C":"⥜","\u21BE":"↾","\u2954":"⥔","\u21C0":"⇀","\u2953":"⥓",\u211D:"ℝ","\u2970":"⥰","\u21DB":"⇛",\u211B:"ℛ","\u21B1":"↱","\u29F4":"⧴",\u0429:"Щ",\u0428:"Ш",\u042C:"Ь",\u015A:"Ś","\u2ABC":"⪼",\u0160:"Š",\u015E:"Ş",\u015C:"Ŝ",\u0421:"С","\u{1D516}":"𝔖","\u2191":"↑",\u03A3:"Σ","\u2218":"∘","\u{1D54A}":"𝕊","\u221A":"√","\u25A1":"□","\u2293":"⊓","\u228F":"⊏","\u2291":"⊑","\u2290":"⊐","\u2292":"⊒","\u2294":"⊔","\u{1D4AE}":"𝒮","\u22C6":"⋆","\u22D0":"⋐","\u2286":"⊆","\u227B":"≻","\u2AB0":"⪰","\u227D":"≽","\u227F":"≿","\u2211":"∑","\u22D1":"⋑","\u2283":"⊃","\u2287":"⊇",\u00DE:"Þ","\u2122":"™",\u040B:"Ћ",\u0426:"Ц"," ":"	",\u03A4:"Τ",\u0164:"Ť",\u0162:"Ţ",\u0422:"Т","\u{1D517}":"𝔗","\u2234":"∴",\u0398:"Θ","\u205F\u200A":"  ","\u2009":" ","\u223C":"∼","\u2243":"≃","\u2245":"≅","\u2248":"≈","\u{1D54B}":"𝕋","\u20DB":"⃛","\u{1D4AF}":"𝒯",\u0166:"Ŧ",\u00DA:"Ú","\u219F":"↟","\u2949":"⥉",\u040E:"Ў",\u016C:"Ŭ",\u00DB:"Û",\u0423:"У",\u0170:"Ű","\u{1D518}":"𝔘",\u00D9:"Ù",\u016A:"Ū",_:"_","\u23DF":"⏟","\u23B5":"⎵","\u23DD":"⏝","\u22C3":"⋃","\u228E":"⊎",\u0172:"Ų","\u{1D54C}":"𝕌","\u2912":"⤒","\u21C5":"⇅","\u2195":"↕","\u296E":"⥮","\u22A5":"⊥","\u21A5":"↥","\u2196":"↖","\u2197":"↗",\u03D2:"ϒ",\u03A5:"Υ",\u016E:"Ů","\u{1D4B0}":"𝒰",\u0168:"Ũ",\u00DC:"Ü","\u22AB":"⊫","\u2AEB":"⫫",\u0412:"В","\u22A9":"⊩","\u2AE6":"⫦","\u22C1":"⋁","\u2016":"‖","\u2223":"∣","|":"|","\u2758":"❘","\u2240":"≀","\u200A":" ","\u{1D519}":"𝔙","\u{1D54D}":"𝕍","\u{1D4B1}":"𝒱","\u22AA":"⊪",\u0174:"Ŵ","\u22C0":"⋀","\u{1D51A}":"𝔚","\u{1D54E}":"𝕎","\u{1D4B2}":"𝒲","\u{1D51B}":"𝔛",\u039E:"Ξ","\u{1D54F}":"𝕏","\u{1D4B3}":"𝒳",\u042F:"Я",\u0407:"Ї",\u042E:"Ю",\u00DD:"Ý",\u0176:"Ŷ",\u042B:"Ы","\u{1D51C}":"𝔜","\u{1D550}":"𝕐","\u{1D4B4}":"𝒴",\u0178:"Ÿ",\u0416:"Ж",\u0179:"Ź",\u017D:"Ž",\u0417:"З",\u017B:"Ż",\u0396:"Ζ",\u2128:"ℨ",\u2124:"ℤ","\u{1D4B5}":"𝒵",\u00E1:"á",\u0103:"ă","\u223E":"∾","\u223E\u0333":"∾̳","\u223F":"∿",\u00E2:"â",\u0430:"а",\u00E6:"æ","\u{1D51E}":"𝔞",\u00E0:"à",\u2135:"ℵ",\u03B1:"α",\u0101:"ā","\u2A3F":"⨿","\u2227":"∧","\u2A55":"⩕","\u2A5C":"⩜","\u2A58":"⩘","\u2A5A":"⩚","\u2220":"∠","\u29A4":"⦤","\u2221":"∡","\u29A8":"⦨","\u29A9":"⦩","\u29AA":"⦪","\u29AB":"⦫","\u29AC":"⦬","\u29AD":"⦭","\u29AE":"⦮","\u29AF":"⦯","\u221F":"∟","\u22BE":"⊾","\u299D":"⦝","\u2222":"∢","\u237C":"⍼",\u0105:"ą","\u{1D552}":"𝕒","\u2A70":"⩰","\u2A6F":"⩯","\u224A":"≊","\u224B":"≋","'":"'",\u00E5:"å","\u{1D4B6}":"𝒶","*":"*",\u00E3:"ã",\u00E4:"ä","\u2A11":"⨑","\u2AED":"⫭","\u224C":"≌","\u03F6":"϶","\u2035":"‵","\u223D":"∽","\u22CD":"⋍","\u22BD":"⊽","\u2305":"⌅","\u23B6":"⎶",\u0431:"б","\u201E":"„","\u29B0":"⦰",\u03B2:"β",\u2136:"ℶ","\u226C":"≬","\u{1D51F}":"𝔟","\u25EF":"◯","\u2A00":"⨀","\u2A01":"⨁","\u2A02":"⨂","\u2A06":"⨆","\u2605":"★","\u25BD":"▽","\u25B3":"△","\u2A04":"⨄","\u290D":"⤍","\u29EB":"⧫","\u25B4":"▴","\u25BE":"▾","\u25C2":"◂","\u25B8":"▸","\u2423":"␣","\u2592":"▒","\u2591":"░","\u2593":"▓","\u2588":"█","=\u20E5":"=⃥","\u2261\u20E5":"≡⃥","\u2310":"⌐","\u{1D553}":"𝕓","\u22C8":"⋈","\u2557":"╗","\u2554":"╔","\u2556":"╖","\u2553":"╓","\u2550":"═","\u2566":"╦","\u2569":"╩","\u2564":"╤","\u2567":"╧","\u255D":"╝","\u255A":"╚","\u255C":"╜","\u2559":"╙","\u2551":"║","\u256C":"╬","\u2563":"╣","\u2560":"╠","\u256B":"╫","\u2562":"╢","\u255F":"╟","\u29C9":"⧉","\u2555":"╕","\u2552":"╒","\u2510":"┐","\u250C":"┌","\u2565":"╥","\u2568":"╨","\u252C":"┬","\u2534":"┴","\u229F":"⊟","\u229E":"⊞","\u22A0":"⊠","\u255B":"╛","\u2558":"╘","\u2518":"┘","\u2514":"└","\u2502":"│","\u256A":"╪","\u2561":"╡","\u255E":"╞","\u253C":"┼","\u2524":"┤","\u251C":"├","\xA6":"¦","\u{1D4B7}":"𝒷","\u204F":"⁏","\\":"\","\u29C5":"⧅","\u27C8":"⟈","\u2022":"•","\u2AAE":"⪮",\u0107:"ć","\u2229":"∩","\u2A44":"⩄","\u2A49":"⩉","\u2A4B":"⩋","\u2A47":"⩇","\u2A40":"⩀","\u2229\uFE00":"∩︀","\u2041":"⁁","\u2A4D":"⩍",\u010D:"č",\u00E7:"ç",\u0109:"ĉ","\u2A4C":"⩌","\u2A50":"⩐",\u010B:"ċ","\u29B2":"⦲","\xA2":"¢","\u{1D520}":"𝔠",\u0447:"ч","\u2713":"✓",\u03C7:"χ","\u25CB":"○","\u29C3":"⧃","\u02C6":"ˆ","\u2257":"≗","\u21BA":"↺","\u21BB":"↻","\u24C8":"Ⓢ","\u229B":"⊛","\u229A":"⊚","\u229D":"⊝","\u2A10":"⨐","\u2AEF":"⫯","\u29C2":"⧂","\u2663":"♣",":":":",",":",","@":"@","\u2201":"∁","\u2A6D":"⩭","\u{1D554}":"𝕔","\u2117":"℗","\u21B5":"↵","\u2717":"✗","\u{1D4B8}":"𝒸","\u2ACF":"⫏","\u2AD1":"⫑","\u2AD0":"⫐","\u2AD2":"⫒","\u22EF":"⋯","\u2938":"⤸","\u2935":"⤵","\u22DE":"⋞","\u22DF":"⋟","\u21B6":"↶","\u293D":"⤽","\u222A":"∪","\u2A48":"⩈","\u2A46":"⩆","\u2A4A":"⩊","\u228D":"⊍","\u2A45":"⩅","\u222A\uFE00":"∪︀","\u21B7":"↷","\u293C":"⤼","\u22CE":"⋎","\u22CF":"⋏","\xA4":"¤","\u2231":"∱","\u232D":"⌭","\u2965":"⥥","\u2020":"†",\u2138:"ℸ","\u2010":"‐","\u290F":"⤏",\u010F:"ď",\u0434:"д","\u21CA":"⇊","\u2A77":"⩷","\xB0":"°",\u03B4:"δ","\u29B1":"⦱","\u297F":"⥿","\u{1D521}":"𝔡","\u2666":"♦",\u03DD:"ϝ","\u22F2":"⋲","\xF7":"÷","\u22C7":"⋇",\u0452:"ђ","\u231E":"⌞","\u230D":"⌍",$:"$","\u{1D555}":"𝕕","\u2251":"≑","\u2238":"∸","\u2214":"∔","\u22A1":"⊡","\u231F":"⌟","\u230C":"⌌","\u{1D4B9}":"𝒹",\u0455:"ѕ","\u29F6":"⧶",\u0111:"đ","\u22F1":"⋱","\u25BF":"▿","\u29A6":"⦦",\u045F:"џ","\u27FF":"⟿",\u00E9:"é","\u2A6E":"⩮",\u011B:"ě","\u2256":"≖",\u00EA:"ê","\u2255":"≕",\u044D:"э",\u0117:"ė","\u2252":"≒","\u{1D522}":"𝔢","\u2A9A":"⪚",\u00E8:"è","\u2A96":"⪖","\u2A98":"⪘","\u2A99":"⪙","\u23E7":"⏧",\u2113:"ℓ","\u2A95":"⪕","\u2A97":"⪗",\u0113:"ē","\u2205":"∅","\u2004":" ","\u2005":" ","\u2003":" ",\u014B:"ŋ","\u2002":" ",\u0119:"ę","\u{1D556}":"𝕖","\u22D5":"⋕","\u29E3":"⧣","\u2A71":"⩱",\u03B5:"ε","\u03F5":"ϵ","=":"=","\u225F":"≟","\u2A78":"⩸","\u29E5":"⧥","\u2253":"≓","\u2971":"⥱",\u212F:"ℯ",\u03B7:"η",\u00F0:"ð",\u00EB:"ë","\u20AC":"€","!":"!",\u0444:"ф","\u2640":"♀",\uFB03:"ffi",\uFB00:"ff",\uFB04:"ffl","\u{1D523}":"𝔣",\uFB01:"fi",fj:"fj","\u266D":"♭",\uFB02:"fl","\u25B1":"▱",\u0192:"ƒ","\u{1D557}":"𝕗","\u22D4":"⋔","\u2AD9":"⫙","\u2A0D":"⨍","\xBD":"½","\u2153":"⅓","\xBC":"¼","\u2155":"⅕","\u2159":"⅙","\u215B":"⅛","\u2154":"⅔","\u2156":"⅖","\xBE":"¾","\u2157":"⅗","\u215C":"⅜","\u2158":"⅘","\u215A":"⅚","\u215D":"⅝","\u215E":"⅞","\u2044":"⁄","\u2322":"⌢","\u{1D4BB}":"𝒻","\u2A8C":"⪌",\u01F5:"ǵ",\u03B3:"γ","\u2A86":"⪆",\u011F:"ğ",\u011D:"ĝ",\u0433:"г",\u0121:"ġ","\u2AA9":"⪩","\u2A80":"⪀","\u2A82":"⪂","\u2A84":"⪄","\u22DB\uFE00":"⋛︀","\u2A94":"⪔","\u{1D524}":"𝔤",\u2137:"ℷ",\u0453:"ѓ","\u2A92":"⪒","\u2AA5":"⪥","\u2AA4":"⪤","\u2269":"≩","\u2A8A":"⪊","\u2A88":"⪈","\u22E7":"⋧","\u{1D558}":"𝕘",\u210A:"ℊ","\u2A8E":"⪎","\u2A90":"⪐","\u2AA7":"⪧","\u2A7A":"⩺","\u22D7":"⋗","\u2995":"⦕","\u2A7C":"⩼","\u2978":"⥸","\u2269\uFE00":"≩︀",\u044A:"ъ","\u2948":"⥈","\u21AD":"↭",\u210F:"ℏ",\u0125:"ĥ","\u2665":"♥","\u2026":"…","\u22B9":"⊹","\u{1D525}":"𝔥","\u2925":"⤥","\u2926":"⤦","\u21FF":"⇿","\u223B":"∻","\u21A9":"↩","\u21AA":"↪","\u{1D559}":"𝕙","\u2015":"―","\u{1D4BD}":"𝒽",\u0127:"ħ","\u2043":"⁃",\u00ED:"í",\u00EE:"î",\u0438:"и",\u0435:"е","\xA1":"¡","\u{1D526}":"𝔦",\u00EC:"ì","\u2A0C":"⨌","\u222D":"∭","\u29DC":"⧜","\u2129":"℩",\u0133:"ij",\u012B:"ī",\u0131:"ı","\u22B7":"⊷",\u01B5:"Ƶ","\u2105":"℅","\u221E":"∞","\u29DD":"⧝","\u22BA":"⊺","\u2A17":"⨗","\u2A3C":"⨼",\u0451:"ё",\u012F:"į","\u{1D55A}":"𝕚",\u03B9:"ι","\xBF":"¿","\u{1D4BE}":"𝒾","\u22F9":"⋹","\u22F5":"⋵","\u22F4":"⋴","\u22F3":"⋳",\u0129:"ĩ",\u0456:"і",\u00EF:"ï",\u0135:"ĵ",\u0439:"й","\u{1D527}":"𝔧","\u0237":"ȷ","\u{1D55B}":"𝕛","\u{1D4BF}":"𝒿",\u0458:"ј",\u0454:"є",\u03BA:"κ",\u03F0:"ϰ",\u0137:"ķ",\u043A:"к","\u{1D528}":"𝔨",\u0138:"ĸ",\u0445:"х",\u045C:"ќ","\u{1D55C}":"𝕜","\u{1D4C0}":"𝓀","\u291B":"⤛","\u290E":"⤎","\u2A8B":"⪋","\u2962":"⥢",\u013A:"ĺ","\u29B4":"⦴",\u03BB:"λ","\u2991":"⦑","\u2A85":"⪅","\xAB":"«","\u291F":"⤟","\u291D":"⤝","\u21AB":"↫","\u2939":"⤹","\u2973":"⥳","\u21A2":"↢","\u2AAB":"⪫","\u2919":"⤙","\u2AAD":"⪭","\u2AAD\uFE00":"⪭︀","\u290C":"⤌","\u2772":"❲","{":"{","[":"[","\u298B":"⦋","\u298F":"⦏","\u298D":"⦍",\u013E:"ľ",\u013C:"ļ",\u043B:"л","\u2936":"⤶","\u2967":"⥧","\u294B":"⥋","\u21B2":"↲","\u2264":"≤","\u21C7":"⇇","\u22CB":"⋋","\u2AA8":"⪨","\u2A7F":"⩿","\u2A81":"⪁","\u2A83":"⪃","\u22DA\uFE00":"⋚︀","\u2A93":"⪓","\u22D6":"⋖","\u297C":"⥼","\u{1D529}":"𝔩","\u2A91":"⪑","\u296A":"⥪","\u2584":"▄",\u0459:"љ","\u296B":"⥫","\u25FA":"◺",\u0140:"ŀ","\u23B0":"⎰","\u2268":"≨","\u2A89":"⪉","\u2A87":"⪇","\u22E6":"⋦","\u27EC":"⟬","\u21FD":"⇽","\u27FC":"⟼","\u21AC":"↬","\u2985":"⦅","\u{1D55D}":"𝕝","\u2A2D":"⨭","\u2A34":"⨴","\u2217":"∗","\u25CA":"◊","(":"(","\u2993":"⦓","\u296D":"⥭","\u200E":"‎","\u22BF":"⊿","\u2039":"‹","\u{1D4C1}":"𝓁","\u2A8D":"⪍","\u2A8F":"⪏","\u201A":"‚",\u0142:"ł","\u2AA6":"⪦","\u2A79":"⩹","\u22C9":"⋉","\u2976":"⥶","\u2A7B":"⩻","\u2996":"⦖","\u25C3":"◃","\u294A":"⥊","\u2966":"⥦","\u2268\uFE00":"≨︀","\u223A":"∺","\xAF":"¯","\u2642":"♂","\u2720":"✠","\u25AE":"▮","\u2A29":"⨩",\u043C:"м","\u2014":"—","\u{1D52A}":"𝔪","\u2127":"℧",\u00B5:"µ","\u2AF0":"⫰","\u2212":"−","\u2A2A":"⨪","\u2ADB":"⫛","\u22A7":"⊧","\u{1D55E}":"𝕞","\u{1D4C2}":"𝓂",\u03BC:"μ","\u22B8":"⊸","\u22D9\u0338":"⋙̸","\u226B\u20D2":"≫⃒","\u21CD":"⇍","\u21CE":"⇎","\u22D8\u0338":"⋘̸","\u226A\u20D2":"≪⃒","\u21CF":"⇏","\u22AF":"⊯","\u22AE":"⊮",\u0144:"ń","\u2220\u20D2":"∠⃒","\u2A70\u0338":"⩰̸","\u224B\u0338":"≋̸",\u0149:"ʼn","\u266E":"♮","\u2A43":"⩃",\u0148:"ň",\u0146:"ņ","\u2A6D\u0338":"⩭̸","\u2A42":"⩂",\u043D:"н","\u2013":"–","\u21D7":"⇗","\u2924":"⤤","\u2250\u0338":"≐̸","\u2928":"⤨","\u{1D52B}":"𝔫","\u21AE":"↮","\u2AF2":"⫲","\u22FC":"⋼","\u22FA":"⋺",\u045A:"њ","\u2266\u0338":"≦̸","\u219A":"↚","\u2025":"‥","\u{1D55F}":"𝕟","\xAC":"¬","\u22F9\u0338":"⋹̸","\u22F5\u0338":"⋵̸","\u22F7":"⋷","\u22F6":"⋶","\u22FE":"⋾","\u22FD":"⋽","\u2AFD\u20E5":"⫽⃥","\u2202\u0338":"∂̸","\u2A14":"⨔","\u219B":"↛","\u2933\u0338":"⤳̸","\u219D\u0338":"↝̸","\u{1D4C3}":"𝓃","\u2284":"⊄","\u2AC5\u0338":"⫅̸","\u2285":"⊅","\u2AC6\u0338":"⫆̸",\u00F1:"ñ",\u03BD:"ν","#":"#","\u2116":"№","\u2007":" ","\u22AD":"⊭","\u2904":"⤄","\u224D\u20D2":"≍⃒","\u22AC":"⊬","\u2265\u20D2":"≥⃒",">\u20D2":">⃒","\u29DE":"⧞","\u2902":"⤂","\u2264\u20D2":"≤⃒","<\u20D2":"<⃒","\u22B4\u20D2":"⊴⃒","\u2903":"⤃","\u22B5\u20D2":"⊵⃒","\u223C\u20D2":"∼⃒","\u21D6":"⇖","\u2923":"⤣","\u2927":"⤧",\u00F3:"ó",\u00F4:"ô",\u043E:"о",\u0151:"ő","\u2A38":"⨸","\u29BC":"⦼",\u0153:"œ","\u29BF":"⦿","\u{1D52C}":"𝔬","\u02DB":"˛",\u00F2:"ò","\u29C1":"⧁","\u29B5":"⦵","\u29BE":"⦾","\u29BB":"⦻","\u29C0":"⧀",\u014D:"ō",\u03C9:"ω",\u03BF:"ο","\u29B6":"⦶","\u{1D560}":"𝕠","\u29B7":"⦷","\u29B9":"⦹","\u2228":"∨","\u2A5D":"⩝",\u2134:"ℴ",\u00AA:"ª",\u00BA:"º","\u22B6":"⊶","\u2A56":"⩖","\u2A57":"⩗","\u2A5B":"⩛",\u00F8:"ø","\u2298":"⊘",\u00F5:"õ","\u2A36":"⨶",\u00F6:"ö","\u233D":"⌽","\xB6":"¶","\u2AF3":"⫳","\u2AFD":"⫽",\u043F:"п","%":"%",".":".","\u2030":"‰","\u2031":"‱","\u{1D52D}":"𝔭",\u03C6:"φ",\u03D5:"ϕ","\u260E":"☎",\u03C0:"π",\u03D6:"ϖ",\u210E:"ℎ","+":"+","\u2A23":"⨣","\u2A22":"⨢","\u2A25":"⨥","\u2A72":"⩲","\u2A26":"⨦","\u2A27":"⨧","\u2A15":"⨕","\u{1D561}":"𝕡","\xA3":"£","\u2AB3":"⪳","\u2AB7":"⪷","\u2AB9":"⪹","\u2AB5":"⪵","\u22E8":"⋨","\u2032":"′","\u232E":"⌮","\u2312":"⌒","\u2313":"⌓","\u22B0":"⊰","\u{1D4C5}":"𝓅",\u03C8:"ψ","\u2008":" ","\u{1D52E}":"𝔮","\u{1D562}":"𝕢","\u2057":"⁗","\u{1D4C6}":"𝓆","\u2A16":"⨖","?":"?","\u291C":"⤜","\u2964":"⥤","\u223D\u0331":"∽̱",\u0155:"ŕ","\u29B3":"⦳","\u2992":"⦒","\u29A5":"⦥","\xBB":"»","\u2975":"⥵","\u2920":"⤠","\u2933":"⤳","\u291E":"⤞","\u2945":"⥅","\u2974":"⥴","\u21A3":"↣","\u219D":"↝","\u291A":"⤚","\u2236":"∶","\u2773":"❳","}":"}","]":"]","\u298C":"⦌","\u298E":"⦎","\u2990":"⦐",\u0159:"ř",\u0157:"ŗ",\u0440:"р","\u2937":"⤷","\u2969":"⥩","\u21B3":"↳","\u25AD":"▭","\u297D":"⥽","\u{1D52F}":"𝔯","\u296C":"⥬",\u03C1:"ρ",\u03F1:"ϱ","\u21C9":"⇉","\u22CC":"⋌","\u02DA":"˚","\u200F":"‏","\u23B1":"⎱","\u2AEE":"⫮","\u27ED":"⟭","\u21FE":"⇾","\u2986":"⦆","\u{1D563}":"𝕣","\u2A2E":"⨮","\u2A35":"⨵",")":")","\u2994":"⦔","\u2A12":"⨒","\u203A":"›","\u{1D4C7}":"𝓇","\u22CA":"⋊","\u25B9":"▹","\u29CE":"⧎","\u2968":"⥨","\u211E":"℞",\u015B:"ś","\u2AB4":"⪴","\u2AB8":"⪸",\u0161:"š",\u015F:"ş",\u015D:"ŝ","\u2AB6":"⪶","\u2ABA":"⪺","\u22E9":"⋩","\u2A13":"⨓",\u0441:"с","\u22C5":"⋅","\u2A66":"⩦","\u21D8":"⇘","\xA7":"§",";":";","\u2929":"⤩","\u2736":"✶","\u{1D530}":"𝔰","\u266F":"♯",\u0449:"щ",\u0448:"ш","\xAD":"­",\u03C3:"σ",\u03C2:"ς","\u2A6A":"⩪","\u2A9E":"⪞","\u2AA0":"⪠","\u2A9D":"⪝","\u2A9F":"⪟","\u2246":"≆","\u2A24":"⨤","\u2972":"⥲","\u2A33":"⨳","\u29E4":"⧤","\u2323":"⌣","\u2AAA":"⪪","\u2AAC":"⪬","\u2AAC\uFE00":"⪬︀",\u044C:"ь","/":"/","\u29C4":"⧄","\u233F":"⌿","\u{1D564}":"𝕤","\u2660":"♠","\u2293\uFE00":"⊓︀","\u2294\uFE00":"⊔︀","\u{1D4C8}":"𝓈","\u2606":"☆","\u2282":"⊂","\u2AC5":"⫅","\u2ABD":"⪽","\u2AC3":"⫃","\u2AC1":"⫁","\u2ACB":"⫋","\u228A":"⊊","\u2ABF":"⪿","\u2979":"⥹","\u2AC7":"⫇","\u2AD5":"⫕","\u2AD3":"⫓","\u266A":"♪","\xB9":"¹","\xB2":"²","\xB3":"³","\u2AC6":"⫆","\u2ABE":"⪾","\u2AD8":"⫘","\u2AC4":"⫄","\u27C9":"⟉","\u2AD7":"⫗","\u297B":"⥻","\u2AC2":"⫂","\u2ACC":"⫌","\u228B":"⊋","\u2AC0":"⫀","\u2AC8":"⫈","\u2AD4":"⫔","\u2AD6":"⫖","\u21D9":"⇙","\u292A":"⤪",\u00DF:"ß","\u2316":"⌖",\u03C4:"τ",\u0165:"ť",\u0163:"ţ",\u0442:"т","\u2315":"⌕","\u{1D531}":"𝔱",\u03B8:"θ",\u03D1:"ϑ",\u00FE:"þ","\xD7":"×","\u2A31":"⨱","\u2A30":"⨰","\u2336":"⌶","\u2AF1":"⫱","\u{1D565}":"𝕥","\u2ADA":"⫚","\u2034":"‴","\u25B5":"▵","\u225C":"≜","\u25EC":"◬","\u2A3A":"⨺","\u2A39":"⨹","\u29CD":"⧍","\u2A3B":"⨻","\u23E2":"⏢","\u{1D4C9}":"𝓉",\u0446:"ц",\u045B:"ћ",\u0167:"ŧ","\u2963":"⥣",\u00FA:"ú",\u045E:"ў",\u016D:"ŭ",\u00FB:"û",\u0443:"у",\u0171:"ű","\u297E":"⥾","\u{1D532}":"𝔲",\u00F9:"ù","\u2580":"▀","\u231C":"⌜","\u230F":"⌏","\u25F8":"◸",\u016B:"ū",\u0173:"ų","\u{1D566}":"𝕦",\u03C5:"υ","\u21C8":"⇈","\u231D":"⌝","\u230E":"⌎",\u016F:"ů","\u25F9":"◹","\u{1D4CA}":"𝓊","\u22F0":"⋰",\u0169:"ũ",\u00FC:"ü","\u29A7":"⦧","\u2AE8":"⫨","\u2AE9":"⫩","\u299C":"⦜","\u228A\uFE00":"⊊︀","\u2ACB\uFE00":"⫋︀","\u228B\uFE00":"⊋︀","\u2ACC\uFE00":"⫌︀",\u0432:"в","\u22BB":"⊻","\u225A":"≚","\u22EE":"⋮","\u{1D533}":"𝔳","\u{1D567}":"𝕧","\u{1D4CB}":"𝓋","\u299A":"⦚",\u0175:"ŵ","\u2A5F":"⩟","\u2259":"≙","\u2118":"℘","\u{1D534}":"𝔴","\u{1D568}":"𝕨","\u{1D4CC}":"𝓌","\u{1D535}":"𝔵",\u03BE:"ξ","\u22FB":"⋻","\u{1D569}":"𝕩","\u{1D4CD}":"𝓍",\u00FD:"ý",\u044F:"я",\u0177:"ŷ",\u044B:"ы","\xA5":"¥","\u{1D536}":"𝔶",\u0457:"ї","\u{1D56A}":"𝕪","\u{1D4CE}":"𝓎",\u044E:"ю",\u00FF:"ÿ",\u017A:"ź",\u017E:"ž",\u0437:"з",\u017C:"ż",\u03B6:"ζ","\u{1D537}":"𝔷",\u0436:"ж","\u21DD":"⇝","\u{1D56B}":"𝕫","\u{1D4CF}":"𝓏","\u200D":"‍","\u200C":"‌"}}}});var Ln=m(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.numericUnicodeMap={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376}});var Cn=m(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.fromCodePoint=String.fromCodePoint||function(r){return String.fromCharCode(Math.floor((r-65536)/1024)+55296,(r-65536)%1024+56320)};Br.getCodePoint=String.prototype.codePointAt?function(r,e){return r.codePointAt(e)}:function(r,e){return(r.charCodeAt(e)-55296)*1024+r.charCodeAt(e+1)-56320+65536};Br.highSurrogateFrom=55296;Br.highSurrogateTo=56319});var qn=m(Ar=>{"use strict";var Ur=Ar&&Ar.__assign||function(){return Ur=Object.assign||function(r){for(var e,t=1,o=arguments.length;t<o;t++){e=arguments[t];for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(r[a]=e[a])}return r},Ur.apply(this,arguments)};Object.defineProperty(Ar,"__esModule",{value:!0});var Ne=xn(),wn=Ln(),_o=Cn(),Fo=Ur(Ur({},Ne.namedReferences),{all:Ne.namedReferences.html5}),Hl={specialChars:/[<>'"&]/g,nonAscii:/[<>'"&\u0080-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,nonAsciiPrintable:/[<>'"&\x01-\x08\x11-\x15\x17-\x1F\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,nonAsciiPrintableOnly:/[\x01-\x08\x11-\x15\x17-\x1F\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,extensive:/[\x01-\x0c\x0e-\x1f\x21-\x2c\x2e-\x2f\x3a-\x40\x5b-\x60\x7b-\x7d\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g},Xl={mode:"specialChars",level:"all",numeric:"decimal"};function $l(r,e){var p=e===void 0?Xl:e,u=p.mode,t=u===void 0?"specialChars":u,o=p.numeric,a=o===void 0?"decimal":o,n=p.level,i=n===void 0?"all":n;if(!r)return"";var s=Hl[t],l=Fo[i].characters,c=a==="hexadecimal";s.lastIndex=0;var p=s.exec(r),u;if(p){u="";var o=0;do{o!==p.index&&(u+=r.substring(o,p.index));var n=p[0],f=l[n];if(!f){var O=n.length>1?_o.getCodePoint(n,0):n.charCodeAt(0);f=(c?"&#x"+O.toString(16):"&#"+O)+";"}u+=f,o=p.index+n.length}while(p=s.exec(r));o!==r.length&&(u+=r.substring(o))}else u=r;return u}Ar.encode=$l;var Vl={scope:"body",level:"all"},Bo=/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);/g,Uo=/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+)[;=]?/g,Dn={xml:{strict:Bo,attribute:Uo,body:Ne.bodyRegExps.xml},html4:{strict:Bo,attribute:Uo,body:Ne.bodyRegExps.html4},html5:{strict:Bo,attribute:Uo,body:Ne.bodyRegExps.html5}},Yl=Ur(Ur({},Dn),{all:Dn.html5}),Go=String.fromCharCode,Mn=Go(65533),Kl={level:"all"};function Wl(r,e){var o=(e===void 0?Kl:e).level,t=o===void 0?"all":o;if(!r)return"";var o=r,a=r[r.length-1],n=Fo[t].entities[r];if(n)o=n;else if(r[0]==="&"&&r[1]==="#"){var i=r[2],s=i=="x"||i=="X"?parseInt(r.substr(3),16):parseInt(r.substr(2));o=s>=1114111?Mn:s>65535?_o.fromCodePoint(s):Go(wn.numericUnicodeMap[s]||s)}return o}Ar.decodeEntity=Wl;function zl(r,e){var t=e===void 0?Vl:e,o=t.level,a=o===void 0?"all":o,n=t.scope,i=n===void 0?a==="xml"?"strict":"body":n;if(!r)return"";var s=Yl[a][i],l=Fo[a].entities,c=i==="attribute",p=i==="strict";s.lastIndex=0;var u=s.exec(r),f;if(u){f="";var O=0;do{O!==u.index&&(f+=r.substring(O,u.index));var N=u[0],T=N,b=N[N.length-1];if(c&&b==="=")T=N;else if(p&&b!==";")T=N;else{var X=l[N];if(X)T=X;else if(N[0]==="&"&&N[1]==="#"){var k=N[2],V=k=="x"||k=="X"?parseInt(N.substr(3),16):parseInt(N.substr(2));T=V>=1114111?Mn:V>65535?_o.fromCodePoint(V):Go(wn.numericUnicodeMap[V]||V)}}f+=T,O=u.index+N.length}while(u=s.exec(r));O!==r.length&&(f+=r.substring(O))}else f=r;return f}Ar.decode=zl});var Un=m((nN,Bn)=>{"use strict";var Jl="Function.prototype.bind called on incompatible ",Zl=Object.prototype.toString,Ql=Math.max,jl="[object Function]",Pn=function(e,t){for(var o=[],a=0;a<e.length;a+=1)o[a]=e[a];for(var n=0;n<t.length;n+=1)o[n+e.length]=t[n];return o},rc=function(e,t){for(var o=[],a=t||0,n=0;a<e.length;a+=1,n+=1)o[n]=e[a];return o},ec=function(r,e){for(var t="",o=0;o<r.length;o+=1)t+=r[o],o+1<r.length&&(t+=e);return t};Bn.exports=function(e){var t=this;if(typeof t!="function"||Zl.apply(t)!==jl)throw new TypeError(Jl+t);for(var o=rc(arguments,1),a,n=function(){if(this instanceof a){var p=t.apply(this,Pn(o,arguments));return Object(p)===p?p:this}return t.apply(e,Pn(o,arguments))},i=Ql(0,t.length-o.length),s=[],l=0;l<i;l++)s[l]="$"+l;if(a=Function("binder","return function ("+ec(s,",")+"){ return binder.apply(this,arguments); }")(n),t.prototype){var c=function(){};c.prototype=t.prototype,a.prototype=new c,c.prototype=null}return a}});var st=m((iN,_n)=>{"use strict";var tc=Un();_n.exports=Function.prototype.bind||tc});var ko=m((sN,Fn)=>{"use strict";Fn.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},t=Symbol("test"),o=Object(t);if(typeof t=="string"||Object.prototype.toString.call(t)!=="[object Symbol]"||Object.prototype.toString.call(o)!=="[object Symbol]")return!1;var a=42;e[t]=a;for(t in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var n=Object.getOwnPropertySymbols(e);if(n.length!==1||n[0]!==t||!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var i=Object.getOwnPropertyDescriptor(e,t);if(i.value!==a||i.enumerable!==!0)return!1}return!0}});var Ho=m((lN,kn)=>{"use strict";var Gn=typeof Symbol<"u"&&Symbol,oc=ko();kn.exports=function(){return typeof Gn!="function"||typeof Symbol!="function"||typeof Gn("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:oc()}});var $n=m((cN,Xn)=>{"use strict";var Hn={foo:{}},ac=Object;Xn.exports=function(){return{__proto__:Hn}.foo===Hn.foo&&!({__proto__:null}instanceof ac)}});var Yn=m((uN,Vn)=>{"use strict";var nc=Function.prototype.call,ic=Object.prototype.hasOwnProperty,sc=st();Vn.exports=sc.call(nc,ic)});var L=m((pN,Zn)=>{"use strict";var E,kr=SyntaxError,Jn=Function,Gr=TypeError,Xo=function(r){try{return Jn('"use strict"; return ('+r+").constructor;")()}catch{}},yr=Object.getOwnPropertyDescriptor;if(yr)try{yr({},"")}catch{yr=null}var $o=function(){throw new Gr},lc=yr?function(){try{return arguments.callee,$o}catch{try{return yr(arguments,"callee").get}catch{return $o}}}():$o,_r=Ho()(),cc=$n()(),D=Object.getPrototypeOf||(cc?function(r){return r.__proto__}:null),Fr={},uc=typeof Uint8Array>"u"||!D?E:D(Uint8Array),vr={"%AggregateError%":typeof AggregateError>"u"?E:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?E:ArrayBuffer,"%ArrayIteratorPrototype%":_r&&D?D([][Symbol.iterator]()):E,"%AsyncFromSyncIteratorPrototype%":E,"%AsyncFunction%":Fr,"%AsyncGenerator%":Fr,"%AsyncGeneratorFunction%":Fr,"%AsyncIteratorPrototype%":Fr,"%Atomics%":typeof Atomics>"u"?E:Atomics,"%BigInt%":typeof BigInt>"u"?E:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?E:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?E:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?E:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?E:Float32Array,"%Float64Array%":typeof Float64Array>"u"?E:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?E:FinalizationRegistry,"%Function%":Jn,"%GeneratorFunction%":Fr,"%Int8Array%":typeof Int8Array>"u"?E:Int8Array,"%Int16Array%":typeof Int16Array>"u"?E:Int16Array,"%Int32Array%":typeof Int32Array>"u"?E:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":_r&&D?D(D([][Symbol.iterator]())):E,"%JSON%":typeof JSON=="object"?JSON:E,"%Map%":typeof Map>"u"?E:Map,"%MapIteratorPrototype%":typeof Map>"u"||!_r||!D?E:D(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?E:Promise,"%Proxy%":typeof Proxy>"u"?E:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?E:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?E:Set,"%SetIteratorPrototype%":typeof Set>"u"||!_r||!D?E:D(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?E:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":_r&&D?D(""[Symbol.iterator]()):E,"%Symbol%":_r?Symbol:E,"%SyntaxError%":kr,"%ThrowTypeError%":lc,"%TypedArray%":uc,"%TypeError%":Gr,"%Uint8Array%":typeof Uint8Array>"u"?E:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?E:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?E:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?E:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?E:WeakMap,"%WeakRef%":typeof WeakRef>"u"?E:WeakRef,"%WeakSet%":typeof WeakSet>"u"?E:WeakSet};if(D)try{null.error}catch(r){Kn=D(D(r)),vr["%Error.prototype%"]=Kn}var Kn,pc=function r(e){var t;if(e==="%AsyncFunction%")t=Xo("async function () {}");else if(e==="%GeneratorFunction%")t=Xo("function* () {}");else if(e==="%AsyncGeneratorFunction%")t=Xo("async function* () {}");else if(e==="%AsyncGenerator%"){var o=r("%AsyncGeneratorFunction%");o&&(t=o.prototype)}else if(e==="%AsyncIteratorPrototype%"){var a=r("%AsyncGenerator%");a&&D&&(t=D(a.prototype))}return vr[e]=t,t},Wn={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Ie=st(),lt=Yn(),fc=Ie.call(Function.call,Array.prototype.concat),mc=Ie.call(Function.apply,Array.prototype.splice),zn=Ie.call(Function.call,String.prototype.replace),ct=Ie.call(Function.call,String.prototype.slice),gc=Ie.call(Function.call,RegExp.prototype.exec),dc=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,hc=/\\(\\)?/g,Ec=function(e){var t=ct(e,0,1),o=ct(e,-1);if(t==="%"&&o!=="%")throw new kr("invalid intrinsic syntax, expected closing `%`");if(o==="%"&&t!=="%")throw new kr("invalid intrinsic syntax, expected opening `%`");var a=[];return zn(e,dc,function(n,i,s,l){a[a.length]=s?zn(l,hc,"$1"):i||n}),a},Ac=function(e,t){var o=e,a;if(lt(Wn,o)&&(a=Wn[o],o="%"+a[0]+"%"),lt(vr,o)){var n=vr[o];if(n===Fr&&(n=pc(o)),typeof n>"u"&&!t)throw new Gr("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:a,name:o,value:n}}throw new kr("intrinsic "+e+" does not exist!")};Zn.exports=function(e,t){if(typeof e!="string"||e.length===0)throw new Gr("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof t!="boolean")throw new Gr('"allowMissing" argument must be a boolean');if(gc(/^%?[^%]*%?$/,e)===null)throw new kr("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var o=Ec(e),a=o.length>0?o[0]:"",n=Ac("%"+a+"%",t),i=n.name,s=n.value,l=!1,c=n.alias;c&&(a=c[0],mc(o,fc([0,1],c)));for(var p=1,u=!0;p<o.length;p+=1){var f=o[p],O=ct(f,0,1),N=ct(f,-1);if((O==='"'||O==="'"||O==="`"||N==='"'||N==="'"||N==="`")&&O!==N)throw new kr("property names with quotes must have matching quotes");if((f==="constructor"||!u)&&(l=!0),a+="."+f,i="%"+a+"%",lt(vr,i))s=vr[i];else if(s!=null){if(!(f in s)){if(!t)throw new Gr("base intrinsic for "+e+" exists, but the property is not available.");return}if(yr&&p+1>=o.length){var T=yr(s,f);u=!!T,u&&"get"in T&&!("originalValue"in T.get)?s=T.get:s=s[f]}else u=lt(s,f),s=s[f];u&&!l&&(vr[i]=s)}}return s}});var ut=m((fN,Qn)=>{"use strict";var yc=L(),Vo=yc("%Object.defineProperty%",!0),Yo=function(){if(Vo)try{return Vo({},"a",{value:1}),!0}catch{return!1}return!1};Yo.hasArrayLengthDefineBug=function(){if(!Yo())return null;try{return Vo([],"length",{value:1}).length!==1}catch{return!0}};Qn.exports=Yo});var Ko=m((mN,jn)=>{"use strict";var vc=L(),pt=vc("%Object.getOwnPropertyDescriptor%",!0);if(pt)try{pt([],"length")}catch{pt=null}jn.exports=pt});var zo=m((gN,ei)=>{"use strict";var Sc=ut()(),Wo=L(),Re=Sc&&Wo("%Object.defineProperty%",!0);if(Re)try{Re({},"a",{value:1})}catch{Re=!1}var Oc=Wo("%SyntaxError%"),Hr=Wo("%TypeError%"),ri=Ko();ei.exports=function(e,t,o){if(!e||typeof e!="object"&&typeof e!="function")throw new Hr("`obj` must be an object or a function`");if(typeof t!="string"&&typeof t!="symbol")throw new Hr("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new Hr("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new Hr("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new Hr("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new Hr("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,n=arguments.length>4?arguments[4]:null,i=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!ri&&ri(e,t);if(Re)Re(e,t,{configurable:i===null&&l?l.configurable:!i,enumerable:a===null&&l?l.enumerable:!a,value:o,writable:n===null&&l?l.writable:!n});else if(s||!a&&!n&&!i)e[t]=o;else throw new Oc("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var si=m((dN,ii)=>{"use strict";var ni=L(),ti=zo(),Nc=ut()(),oi=Ko(),ai=ni("%TypeError%"),Ic=ni("%Math.floor%");ii.exports=function(e,t){if(typeof e!="function")throw new ai("`fn` is not a function");if(typeof t!="number"||t<0||t>4294967295||Ic(t)!==t)throw new ai("`length` must be a positive 32-bit integer");var o=arguments.length>2&&!!arguments[2],a=!0,n=!0;if("length"in e&&oi){var i=oi(e,"length");i&&!i.configurable&&(a=!1),i&&!i.writable&&(n=!1)}return(a||n||!o)&&(Nc?ti(e,"length",t,!0,!0):ti(e,"length",t)),e}});var Zo=m((hN,ft)=>{"use strict";var Jo=st(),Xr=L(),Rc=si(),Tc=Xr("%TypeError%"),ci=Xr("%Function.prototype.apply%"),ui=Xr("%Function.prototype.call%"),pi=Xr("%Reflect.apply%",!0)||Jo.call(ui,ci),Te=Xr("%Object.defineProperty%",!0),bc=Xr("%Math.max%");if(Te)try{Te({},"a",{value:1})}catch{Te=null}ft.exports=function(e){if(typeof e!="function")throw new Tc("a function is required");var t=pi(Jo,ui,arguments);return Rc(t,1+bc(0,e.length-(arguments.length-1)),!0)};var li=function(){return pi(Jo,ci,arguments)};Te?Te(ft.exports,"apply",{value:li}):ft.exports.apply=li});var Qo=m((EN,mi)=>{"use strict";var fi=Object.prototype.toString;mi.exports=function(e){var t=fi.call(e),o=t==="[object Arguments]";return o||(o=t!=="[object Array]"&&e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&fi.call(e.callee)==="[object Function]"),o}});var Oi=m((AN,Si)=>{"use strict";var vi;Object.keys||(be=Object.prototype.hasOwnProperty,jo=Object.prototype.toString,gi=Qo(),ra=Object.prototype.propertyIsEnumerable,di=!ra.call({toString:null},"toString"),hi=ra.call(function(){},"prototype"),xe=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],mt=function(r){var e=r.constructor;return e&&e.prototype===r},Ei={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},Ai=function(){if(typeof window>"u")return!1;for(var r in window)try{if(!Ei["$"+r]&&be.call(window,r)&&window[r]!==null&&typeof window[r]=="object")try{mt(window[r])}catch{return!0}}catch{return!0}return!1}(),yi=function(r){if(typeof window>"u"||!Ai)return mt(r);try{return mt(r)}catch{return!1}},vi=function(e){var t=e!==null&&typeof e=="object",o=jo.call(e)==="[object Function]",a=gi(e),n=t&&jo.call(e)==="[object String]",i=[];if(!t&&!o&&!a)throw new TypeError("Object.keys called on a non-object");var s=hi&&o;if(n&&e.length>0&&!be.call(e,0))for(var l=0;l<e.length;++l)i.push(String(l));if(a&&e.length>0)for(var c=0;c<e.length;++c)i.push(String(c));else for(var p in e)!(s&&p==="prototype")&&be.call(e,p)&&i.push(String(p));if(di)for(var u=yi(e),f=0;f<xe.length;++f)!(u&&xe[f]==="constructor")&&be.call(e,xe[f])&&i.push(xe[f]);return i});var be,jo,gi,ra,di,hi,xe,mt,Ei,Ai,yi;Si.exports=vi});var Ti=m((yN,Ri)=>{"use strict";var xc=Array.prototype.slice,Lc=Qo(),Ni=Object.keys,gt=Ni?function(e){return Ni(e)}:Oi(),Ii=Object.keys;gt.shim=function(){if(Object.keys){var e=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);e||(Object.keys=function(o){return Lc(o)?Ii(xc.call(o)):Ii(o)})}else Object.keys=gt;return Object.keys||gt};Ri.exports=gt});var ea=m((vN,Ci)=>{"use strict";var Cc=Ti(),Dc=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",wc=Object.prototype.toString,Mc=Array.prototype.concat,bi=zo(),qc=function(r){return typeof r=="function"&&wc.call(r)==="[object Function]"},xi=ut()(),Pc=function(r,e,t,o){if(e in r){if(o===!0){if(r[e]===t)return}else if(!qc(o)||!o())return}xi?bi(r,e,t,!0):bi(r,e,t)},Li=function(r,e){var t=arguments.length>2?arguments[2]:{},o=Cc(e);Dc&&(o=Mc.call(o,Object.getOwnPropertySymbols(e)));for(var a=0;a<o.length;a+=1)Pc(r,o[a],e[o[a]],t[o[a]])};Li.supportsDescriptors=!!xi;Ci.exports=Li});var or=m((SN,Mi)=>{"use strict";var Di=L(),wi=Zo(),Bc=wi(Di("String.prototype.indexOf"));Mi.exports=function(e,t){var o=Di(e,!!t);return typeof o=="function"&&Bc(e,".prototype.")>-1?wi(o):o}});var Bi=m((ON,Pi)=>{"use strict";var Uc=L(),qi=Uc("%Array%"),_c=!qi.isArray&&or()("Object.prototype.toString");Pi.exports=qi.isArray||function(e){return _c(e)==="[object Array]"}});var ta=m((NN,Ui)=>{"use strict";Ui.exports=Bi()});var Gi=m((IN,Fi)=>{"use strict";var _i=L(),Fc=or(),Gc=_i("%TypeError%"),kc=ta(),Hc=_i("%Reflect.apply%",!0)||Fc("Function.prototype.apply");Fi.exports=function(e,t){var o=arguments.length>2?arguments[2]:[];if(!kc(o))throw new Gc("Assertion failed: optional `argumentsList`, if provided, must be a List");return Hc(e,t,o)}});var ki=m(()=>{});var we=m((bN,is)=>{var fa=typeof Map=="function"&&Map.prototype,oa=Object.getOwnPropertyDescriptor&&fa?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,ht=fa&&oa&&typeof oa.get=="function"?oa.get:null,Hi=fa&&Map.prototype.forEach,ma=typeof Set=="function"&&Set.prototype,aa=Object.getOwnPropertyDescriptor&&ma?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Et=ma&&aa&&typeof aa.get=="function"?aa.get:null,Xi=ma&&Set.prototype.forEach,Xc=typeof WeakMap=="function"&&WeakMap.prototype,Ce=Xc?WeakMap.prototype.has:null,$c=typeof WeakSet=="function"&&WeakSet.prototype,De=$c?WeakSet.prototype.has:null,Vc=typeof WeakRef=="function"&&WeakRef.prototype,$i=Vc?WeakRef.prototype.deref:null,Yc=Boolean.prototype.valueOf,Kc=Object.prototype.toString,Wc=Function.prototype.toString,zc=String.prototype.match,ga=String.prototype.slice,nr=String.prototype.replace,Jc=String.prototype.toUpperCase,Vi=String.prototype.toLowerCase,rs=RegExp.prototype.test,Yi=Array.prototype.concat,Q=Array.prototype.join,Zc=Array.prototype.slice,Ki=Math.floor,sa=typeof BigInt=="function"?BigInt.prototype.valueOf:null,na=Object.getOwnPropertySymbols,la=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,$r=typeof Symbol=="function"&&typeof Symbol.iterator=="object",q=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===$r||"symbol")?Symbol.toStringTag:null,es=Object.prototype.propertyIsEnumerable,Wi=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(r){return r.__proto__}:null);function zi(r,e){if(r===1/0||r===-1/0||r!==r||r&&r>-1e3&&r<1e3||rs.call(/e/,e))return e;var t=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof r=="number"){var o=r<0?-Ki(-r):Ki(r);if(o!==r){var a=String(o),n=ga.call(e,a.length+1);return nr.call(a,t,"$&_")+"."+nr.call(nr.call(n,/([0-9]{3})/g,"$&_"),/_$/,"")}}return nr.call(e,t,"$&_")}var ca=ki(),Ji=ca.custom,Zi=os(Ji)?Ji:null;is.exports=function r(e,t,o,a){var n=t||{};if(ar(n,"quoteStyle")&&n.quoteStyle!=="single"&&n.quoteStyle!=="double")throw new TypeError('option "quoteStyle" must be "single" or "double"');if(ar(n,"maxStringLength")&&(typeof n.maxStringLength=="number"?n.maxStringLength<0&&n.maxStringLength!==1/0:n.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var i=ar(n,"customInspect")?n.customInspect:!0;if(typeof i!="boolean"&&i!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(ar(n,"indent")&&n.indent!==null&&n.indent!==" "&&!(parseInt(n.indent,10)===n.indent&&n.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(ar(n,"numericSeparator")&&typeof n.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var s=n.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return ns(e,n);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var l=String(e);return s?zi(e,l):l}if(typeof e=="bigint"){var c=String(e)+"n";return s?zi(e,c):c}var p=typeof n.depth>"u"?5:n.depth;if(typeof o>"u"&&(o=0),o>=p&&p>0&&typeof e=="object")return ua(e)?"[Array]":"[Object]";var u=du(n,o);if(typeof a>"u")a=[];else if(as(a,e)>=0)return"[Circular]";function f(Nr,Ue,Sl){if(Ue&&(a=Zc.call(a),a.push(Ue)),Sl){var Fa={depth:n.depth};return ar(n,"quoteStyle")&&(Fa.quoteStyle=n.quoteStyle),r(Nr,Fa,o+1,a)}return r(Nr,n,o+1,a)}if(typeof e=="function"&&!Qi(e)){var O=iu(e),N=dt(e,f);return"[Function"+(O?": "+O:" (anonymous)")+"]"+(N.length>0?" { "+Q.call(N,", ")+" }":"")}if(os(e)){var T=$r?nr.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):la.call(e);return typeof e=="object"&&!$r?Le(T):T}if(fu(e)){for(var b="<"+Vi.call(String(e.nodeName)),X=e.attributes||[],k=0;k<X.length;k++)b+=" "+X[k].name+"="+ts(Qc(X[k].value),"double",n);return b+=">",e.childNodes&&e.childNodes.length&&(b+="..."),b+="</"+Vi.call(String(e.nodeName))+">",b}if(ua(e)){if(e.length===0)return"[]";var V=dt(e,f);return u&&!gu(V)?"["+pa(V,u)+"]":"[ "+Q.call(V,", ")+" ]"}if(ru(e)){var Sr=dt(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!es.call(e,"cause")?"{ ["+String(e)+"] "+Q.call(Yi.call("[cause]: "+f(e.cause),Sr),", ")+" }":Sr.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Q.call(Sr,", ")+" }"}if(typeof e=="object"&&i){if(Zi&&typeof e[Zi]=="function"&&ca)return ca(e,{depth:p-o});if(i!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(su(e)){var Kr=[];return Hi&&Hi.call(e,function(Nr,Ue){Kr.push(f(Ue,e,!0)+" => "+f(Nr,e))}),ji("Map",ht.call(e),Kr,u)}if(uu(e)){var Wr=[];return Xi&&Xi.call(e,function(Nr){Wr.push(f(Nr,e))}),ji("Set",Et.call(e),Wr,u)}if(lu(e))return ia("WeakMap");if(pu(e))return ia("WeakSet");if(cu(e))return ia("WeakRef");if(tu(e))return Le(f(Number(e)));if(au(e))return Le(f(sa.call(e)));if(ou(e))return Le(Yc.call(e));if(eu(e))return Le(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(e===global)return"{ [object globalThis] }";if(!jc(e)&&!Qi(e)){var Or=dt(e,f),Ua=Wi?Wi(e)===Object.prototype:e instanceof Object||e.constructor===Object,Lt=e instanceof Object?"":"null prototype",_a=!Ua&&q&&Object(e)===e&&q in e?ga.call(ir(e),8,-1):Lt?"Object":"",vl=Ua||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",Ct=vl+(_a||Lt?"["+Q.call(Yi.call([],_a||[],Lt||[]),": ")+"] ":"");return Or.length===0?Ct+"{}":u?Ct+"{"+pa(Or,u)+"}":Ct+"{ "+Q.call(Or,", ")+" }"}return String(e)};function ts(r,e,t){var o=(t.quoteStyle||e)==="double"?'"':"'";return o+r+o}function Qc(r){return nr.call(String(r),/"/g,""")}function ua(r){return ir(r)==="[object Array]"&&(!q||!(typeof r=="object"&&q in r))}function jc(r){return ir(r)==="[object Date]"&&(!q||!(typeof r=="object"&&q in r))}function Qi(r){return ir(r)==="[object RegExp]"&&(!q||!(typeof r=="object"&&q in r))}function ru(r){return ir(r)==="[object Error]"&&(!q||!(typeof r=="object"&&q in r))}function eu(r){return ir(r)==="[object String]"&&(!q||!(typeof r=="object"&&q in r))}function tu(r){return ir(r)==="[object Number]"&&(!q||!(typeof r=="object"&&q in r))}function ou(r){return ir(r)==="[object Boolean]"&&(!q||!(typeof r=="object"&&q in r))}function os(r){if($r)return r&&typeof r=="object"&&r instanceof Symbol;if(typeof r=="symbol")return!0;if(!r||typeof r!="object"||!la)return!1;try{return la.call(r),!0}catch{}return!1}function au(r){if(!r||typeof r!="object"||!sa)return!1;try{return sa.call(r),!0}catch{}return!1}var nu=Object.prototype.hasOwnProperty||function(r){return r in this};function ar(r,e){return nu.call(r,e)}function ir(r){return Kc.call(r)}function iu(r){if(r.name)return r.name;var e=zc.call(Wc.call(r),/^function\s*([\w$]+)/);return e?e[1]:null}function as(r,e){if(r.indexOf)return r.indexOf(e);for(var t=0,o=r.length;t<o;t++)if(r[t]===e)return t;return-1}function su(r){if(!ht||!r||typeof r!="object")return!1;try{ht.call(r);try{Et.call(r)}catch{return!0}return r instanceof Map}catch{}return!1}function lu(r){if(!Ce||!r||typeof r!="object")return!1;try{Ce.call(r,Ce);try{De.call(r,De)}catch{return!0}return r instanceof WeakMap}catch{}return!1}function cu(r){if(!$i||!r||typeof r!="object")return!1;try{return $i.call(r),!0}catch{}return!1}function uu(r){if(!Et||!r||typeof r!="object")return!1;try{Et.call(r);try{ht.call(r)}catch{return!0}return r instanceof Set}catch{}return!1}function pu(r){if(!De||!r||typeof r!="object")return!1;try{De.call(r,De);try{Ce.call(r,Ce)}catch{return!0}return r instanceof WeakSet}catch{}return!1}function fu(r){return!r||typeof r!="object"?!1:typeof HTMLElement<"u"&&r instanceof HTMLElement?!0:typeof r.nodeName=="string"&&typeof r.getAttribute=="function"}function ns(r,e){if(r.length>e.maxStringLength){var t=r.length-e.maxStringLength,o="... "+t+" more character"+(t>1?"s":"");return ns(ga.call(r,0,e.maxStringLength),e)+o}var a=nr.call(nr.call(r,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,mu);return ts(a,"single",e)}function mu(r){var e=r.charCodeAt(0),t={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return t?"\\"+t:"\\x"+(e<16?"0":"")+Jc.call(e.toString(16))}function Le(r){return"Object("+r+")"}function ia(r){return r+" { ? }"}function ji(r,e,t,o){var a=o?pa(t,o):Q.call(t,", ");return r+" ("+e+") {"+a+"}"}function gu(r){for(var e=0;e<r.length;e++)if(as(r[e],` +`)>=0)return!1;return!0}function du(r,e){var t;if(r.indent===" ")t=" ";else if(typeof r.indent=="number"&&r.indent>0)t=Q.call(Array(r.indent+1)," ");else return null;return{base:t,prev:Q.call(Array(e+1),t)}}function pa(r,e){if(r.length===0)return"";var t=` `+e.prev+e.base;return t+Q.call(r,","+t)+` -`+e.prev}function dt(r,e){var t=ua(r),o=[];if(t){o.length=r.length;for(var a=0;a<r.length;a++)o[a]=ar(r,a)?e(r[a],r):""}var n=typeof na=="function"?na(r):[],i;if($r){i={};for(var s=0;s<n.length;s++)i["$"+n[s]]=n[s]}for(var l in r)ar(r,l)&&(t&&String(Number(l))===l&&l<r.length||$r&&i["$"+l]instanceof Symbol||(rs.call(/[^\w$]/,l)?o.push(e(l,r)+": "+e(r[l],r)):o.push(l+": "+e(r[l],r))));if(typeof na=="function")for(var c=0;c<n.length;c++)es.call(r,n[c])&&o.push("["+e(n[c])+"]: "+e(r[n[c]],r));return o}});var At=m((bN,ss)=>{"use strict";ss.exports=function(e){return typeof e=="string"||typeof e=="symbol"}});var cs=m((xN,ls)=>{"use strict";var du=L(),hu=du("%TypeError%"),Eu=we(),Au=At();ls.exports=function(e,t){if(!Au(t))throw new hu("Assertion failed: IsPropertyKey(P) is not true, got "+Eu(t));return e[t]}});var ms=m((LN,fs)=>{"use strict";var ps=Function.prototype.toString,Vr=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,ha,yt;if(typeof Vr=="function"&&typeof Object.defineProperty=="function")try{ha=Object.defineProperty({},"length",{get:function(){throw yt}}),yt={},Vr(function(){throw 42},null,ha)}catch(r){r!==yt&&(Vr=null)}else Vr=null;var yu=/^\s*class\b/,Ea=function(e){try{var t=ps.call(e);return yu.test(t)}catch{return!1}},da=function(e){try{return Ea(e)?!1:(ps.call(e),!0)}catch{return!1}},vt=Object.prototype.toString,vu="[object Object]",Su="[object Function]",Ou="[object GeneratorFunction]",Nu="[object HTMLAllCollection]",Iu="[object HTML document.all class]",Ru="[object HTMLCollection]",Tu=typeof Symbol=="function"&&!!Symbol.toStringTag,bu=!(0 in[,]),Aa=function(){return!1};typeof document=="object"&&(us=document.all,vt.call(us)===vt.call(document.all)&&(Aa=function(e){if((bu||!e)&&(typeof e>"u"||typeof e=="object"))try{var t=vt.call(e);return(t===Nu||t===Iu||t===Ru||t===vu)&&e("")==null}catch{}return!1}));var us;fs.exports=Vr?function(e){if(Aa(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{Vr(e,null,ha)}catch(t){if(t!==yt)return!1}return!Ea(e)&&da(e)}:function(e){if(Aa(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(Tu)return da(e);if(Ea(e))return!1;var t=vt.call(e);return t!==Su&&t!==Ou&&!/^\[object HTML/.test(t)?!1:da(e)}});var ya=m((CN,gs)=>{"use strict";gs.exports=ms()});var As=m((DN,Es)=>{"use strict";var xu=L(),ds=xu("%TypeError%"),Lu=cs(),Cu=ya(),Du=At(),hs=we();Es.exports=function(e,t){if(!Du(t))throw new ds("Assertion failed: IsPropertyKey(P) is not true");var o=Lu(e,t);if(o!=null){if(!Cu(o))throw new ds(hs(t)+" is not a function: "+hs(o));return o}}});var vs=m((wN,ys)=>{"use strict";var wu=ko();ys.exports=function(){return wu()&&!!Symbol.toStringTag}});var Na=m((MN,Is)=>{"use strict";var va=or(),Ss=vs()(),Os,Ns,Sa,Oa;Ss&&(Os=va("Object.prototype.hasOwnProperty"),Ns=va("RegExp.prototype.exec"),Sa={},St=function(){throw Sa},Oa={toString:St,valueOf:St},typeof Symbol.toPrimitive=="symbol"&&(Oa[Symbol.toPrimitive]=St));var St,Mu=va("Object.prototype.toString"),qu=Object.getOwnPropertyDescriptor,Pu="[object RegExp]";Is.exports=Ss?function(e){if(!e||typeof e!="object")return!1;var t=qu(e,"lastIndex"),o=t&&Os(t,"value");if(!o)return!1;try{Ns(e,Oa)}catch(a){return a===Sa}}:function(e){return!e||typeof e!="object"&&typeof e!="function"?!1:Mu(e)===Pu}});var Ts=m((qN,Rs)=>{"use strict";var Bu=or(),Uu=L(),_u=Na(),Fu=Bu("RegExp.prototype.exec"),Gu=Uu("%TypeError%");Rs.exports=function(e){if(!_u(e))throw new Gu("`regex` must be a RegExp");return function(o){return Fu(e,o)!==null}}});var xs=m((PN,bs)=>{"use strict";bs.exports=function(e,t){for(var o=0;o<e.length;o+=1)if(!t(e[o],o,e))return!1;return!0}});var Cs=m((BN,Ls)=>{"use strict";Ls.exports=function(e){if(e===null)return"Null";if(typeof e>"u")return"Undefined";if(typeof e=="function"||typeof e=="object")return"Object";if(typeof e=="number")return"Number";if(typeof e=="boolean")return"Boolean";if(typeof e=="string")return"String"}});var Me=m((UN,Ds)=>{"use strict";var ku=Cs();Ds.exports=function(e){return typeof e=="symbol"?"Symbol":typeof e=="bigint"?"BigInt":ku(e)}});var qs=m((_N,Ms)=>{"use strict";var Hu=L(),ws=Hu("%TypeError%"),Xu=we(),$u=At(),Vu=Me();Ms.exports=function(e,t){if(Vu(e)!=="Object")throw new ws("Assertion failed: Type(O) is not Object");if(!$u(t))throw new ws("Assertion failed: IsPropertyKey(P) is not true, got "+Xu(t));return e[t]}});var Bs=m((FN,Ps)=>{"use strict";var Yu=L(),Ku=Yu("%TypeError%");Ps.exports=function(e,t){if(e==null)throw new Ku(t||"Cannot call method on "+e);return e}});var Ia=m((GN,Us)=>{"use strict";Us.exports=Bs()});var Fs=m((kN,_s)=>{"use strict";var Wu=L(),zu=Wu("%Object%"),Ju=Ia();_s.exports=function(e){return Ju(e),zu(e)}});var Ra=m((HN,ks)=>{"use strict";var Gs=L(),Zu=Gs("%String%"),Qu=Gs("%TypeError%");ks.exports=function(e){if(typeof e=="symbol")throw new Qu("Cannot convert a Symbol value to a string");return Zu(e)}});var Ta=m((XN,Hs)=>{"use strict";Hs.exports=Number.isNaN||function(e){return e!==e}});var $s=m(($N,Xs)=>{"use strict";var ju=Ta();Xs.exports=function(r){return(typeof r=="number"||typeof r=="bigint")&&!ju(r)&&r!==1/0&&r!==-1/0}});var ba=m((VN,Ys)=>{"use strict";var Vs=L(),rp=Vs("%Math.abs%"),ep=Vs("%Math.floor%"),tp=Ta(),op=$s();Ys.exports=function(e){if(typeof e!="number"||tp(e)||!op(e))return!1;var t=rp(e);return ep(t)===t}});var Ws=m((YN,Ks)=>{"use strict";Ks.exports=function(e){return typeof e=="string"||typeof e>"u"}});var Qs=m((KN,Zs)=>{"use strict";var ap=L(),qe=ap("%TypeError%"),La=or(),np=Ts(),ip=xs(),Ot=La("String.prototype.charAt"),xa=La("String.prototype.slice"),sp=La("String.prototype.indexOf"),zs=parseInt,Nt=np(/^[0-9]$/),Js=we(),lp=qs(),cp=ta(),up=Fs(),pp=Ra(),sr=Me(),fp=ba(),mp=Ws();Zs.exports=function(e,t,o,a,n,i){if(sr(e)!=="String")throw new qe("Assertion failed: `matched` must be a String");var s=e.length;if(sr(t)!=="String")throw new qe("Assertion failed: `str` must be a String");var l=t.length;if(!fp(o)||o<0||o>l)throw new qe("Assertion failed: `position` must be a nonnegative integer, and less than or equal to the length of `string`, got "+Js(o));if(!cp(a)||!ip(a,mp))throw new qe("Assertion failed: `captures` must be a possibly-empty List of Strings or `undefined`, got "+Js(a));if(sr(i)!=="String")throw new qe("Assertion failed: `replacement` must be a String");var c=o+s,p=a.length;sr(n)!=="Undefined"&&(n=up(n));for(var u="",f=0;f<i.length;f+=1){var O=Ot(i,f),N=f+1>=i.length,T=f+2>=i.length;if(O==="$"&&!N){var b=Ot(i,f+1);if(b==="$")u+="$",f+=1;else if(b==="&")u+=e,f+=1;else if(b==="`")u+=o===0?"":xa(t,0,o-1),f+=1;else if(b==="'")u+=c>=l?"":xa(t,c),f+=1;else{var X=T?null:Ot(i,f+2);if(Nt(b)&&b!=="0"&&(T||!Nt(X))){var k=zs(b,10);u+=k<=p&&sr(a[k-1])==="Undefined"?"":a[k-1],f+=1}else if(Nt(b)&&(T||Nt(X))){var V=b+X,Sr=zs(V,10)-1;u+=V<=p&&sr(a[Sr])==="Undefined"?"":a[Sr],f+=2}else if(b==="<")if(sr(n)==="Undefined")u+="$<",f+=2;else{var Kr=sp(i,">",f);if(Kr>-1){var Wr=xa(i,f+2,Kr),Or=lp(n,Wr);sr(Or)!=="Undefined"&&(u+=pp(Or)),f+=("<"+Wr+">").length}}else u+="$"}}else u+=Ot(i,f)}return u}});var el=m((WN,rl)=>{"use strict";var gp=L(),dp=or(),Ca=gp("%TypeError%"),js=Me(),hp=ba(),Ep=dp("String.prototype.slice");rl.exports=function(e,t,o){if(js(e)!=="String")throw new Ca("Assertion failed: `string` must be a String");if(js(t)!=="String")throw new Ca("Assertion failed: `searchValue` must be a String");if(!hp(o)||o<0)throw new Ca("Assertion failed: `fromIndex` must be a non-negative integer");var a=e.length;if(t===""&&o<=a)return o;for(var n=t.length,i=o;i<=a-n;i+=1){var s=Ep(e,i,i+n);if(s===t)return i}return-1}});var wa=m((zN,nl)=>{"use strict";var tl=Gi(),Ap=As(),yp=Qs(),vp=ya(),Sp=Ia(),It=Ra(),ol=el(),Op=Me(),al=L(),Rt=or(),Np=Ho()(),Ip=Na(),Rp=al("%Math.max%"),Tp=al("%TypeError%"),bp=Rt("Array.prototype.push"),Da=Rt("String.prototype.slice"),xp=Rt("String.prototype.indexOf"),Lp=Rt("String.prototype.replace");nl.exports=function(e,t){var o=Sp(this),a=Ip(e);if(a&&xp(Da(e,e.source.length+2),"g")===-1)throw new TypeError("use .replace for a non-global regex. NOTE: this may be allowed in the future.");if(Np&&Symbol.replace){if(e!=null){var n=Ap(e,Symbol.replace);if(typeof n<"u")return tl(n,e,[o,t])}}else if(a)return Lp(o,e,t);var i=It(o),s=It(e),l=vp(t);l||(t=It(t));for(var c=s.length,p=Rp(1,c),u=[],f=ol(i,s,0);f!==-1;)bp(u,f),f=ol(i,s,f+p);for(var O=0,N="",T=0;T<u.length;T+=1){var b;if(l)b=It(tl(t,void 0,[s,u[T],i]));else{if(Op(t)!=="String")throw new Tp("Assertion failed: `replaceValue` should be a string at this point");var X=[];b=yp(s,i,u[T],X,void 0,t)}var k=Da(i,O,u[T]);N+=k+b,O=u[T]+c}return O<i.length&&(N+=Da(i,O)),N}});var Ma=m((JN,il)=>{"use strict";var Cp=wa();il.exports=function(){return String.prototype.replaceAll||Cp}});var ll=m((ZN,sl)=>{"use strict";var Dp=ea(),wp=Ma();sl.exports=function(){var e=wp();return Dp(String.prototype,{replaceAll:e},{replaceAll:function(){return String.prototype.replaceAll!==e}}),e}});var fl=m((QN,pl)=>{"use strict";var Mp=Zo(),qp=ea(),cl=wa(),Pp=Ma(),Bp=ll(),ul=Mp(cl);qp(ul,{getPolyfill:Pp,implementation:cl,shim:Bp});pl.exports=ul});var Mo={};Tl(Mo,{VERSION:()=>_e,after:()=>ho,all:()=>tt,allKeys:()=>K,any:()=>ot,assign:()=>pr,before:()=>pe,bind:()=>Ze,bindAll:()=>gn,chain:()=>lo,chunk:()=>wo,clone:()=>Qt,collect:()=>F,compact:()=>bo,compose:()=>go,constant:()=>jr,contains:()=>B,countBy:()=>Sn,create:()=>Zt,debounce:()=>fo,default:()=>bn,defaults:()=>We,defer:()=>dn,delay:()=>Qe,detect:()=>wr,difference:()=>nt,drop:()=>Er,each:()=>M,escape:()=>un,every:()=>tt,extend:()=>Ke,extendOwn:()=>pr,filter:()=>Y,find:()=>wr,findIndex:()=>Dr,findKey:()=>fe,findLastIndex:()=>je,findWhere:()=>Eo,first:()=>Se,flatten:()=>xo,foldl:()=>et,foldr:()=>Ao,forEach:()=>M,functions:()=>xr,get:()=>ie,groupBy:()=>yn,has:()=>ro,head:()=>Se,identity:()=>mr,include:()=>B,includes:()=>B,indexBy:()=>vn,indexOf:()=>rt,initial:()=>ve,inject:()=>et,intersection:()=>Lo,invert:()=>ae,invoke:()=>An,isArguments:()=>Tr,isArray:()=>U,isArrayBuffer:()=>Xe,isBoolean:()=>Zr,isDataView:()=>lr,isDate:()=>Wa,isElement:()=>Gt,isEmpty:()=>$t,isEqual:()=>Yt,isError:()=>Ja,isFinite:()=>Xt,isFunction:()=>S,isMap:()=>nn,isMatch:()=>oe,isNaN:()=>Qr,isNull:()=>Ft,isNumber:()=>ke,isObject:()=>P,isRegExp:()=>za,isSet:()=>ln,isString:()=>Ir,isSymbol:()=>He,isTypedArray:()=>Ve,isUndefined:()=>Jr,isWeakMap:()=>sn,isWeakSet:()=>cn,iteratee:()=>Lr,keys:()=>h,last:()=>To,lastIndexOf:()=>En,map:()=>F,mapObject:()=>eo,matcher:()=>Z,matches:()=>Z,max:()=>Ee,memoize:()=>uo,methods:()=>xr,min:()=>So,mixin:()=>Oe,negate:()=>dr,noop:()=>le,now:()=>er,object:()=>Co,omit:()=>Nn,once:()=>hn,pairs:()=>Jt,partial:()=>tr,partition:()=>On,pick:()=>at,pluck:()=>hr,property:()=>gr,propertyOf:()=>to,random:()=>Cr,range:()=>Do,reduce:()=>et,reduceRight:()=>Ao,reject:()=>yo,rest:()=>Er,restArguments:()=>v,result:()=>io,sample:()=>ye,select:()=>Y,shuffle:()=>Oo,size:()=>Io,some:()=>ot,sortBy:()=>No,sortedIndex:()=>ge,tail:()=>Er,take:()=>Se,tap:()=>jt,template:()=>no,templateSettings:()=>mn,throttle:()=>po,times:()=>oo,toArray:()=>Ae,toPath:()=>ze,transpose:()=>qr,unescape:()=>fn,union:()=>Rn,uniq:()=>Mr,unique:()=>Mr,uniqueId:()=>so,unzip:()=>qr,values:()=>H,where:()=>vo,without:()=>In,wrap:()=>mo,zip:()=>Tn});var _e="1.13.6",wt=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global||Function("return this")()||{},zr=Array.prototype,Fe=Object.prototype,Mt=typeof Symbol<"u"?Symbol.prototype:null,ka=zr.push,J=zr.slice,j=Fe.toString,Ha=Fe.hasOwnProperty,qt=typeof ArrayBuffer<"u",Xa=typeof DataView<"u",$a=Array.isArray,Pt=Object.keys,Bt=Object.create,Ut=qt&&ArrayBuffer.isView,Va=isNaN,Ya=isFinite,Ge=!{toString:null}.propertyIsEnumerable("toString"),_t=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],Ka=Math.pow(2,53)-1;function v(r,e){return e=e==null?r.length-1:+e,function(){for(var t=Math.max(arguments.length-e,0),o=Array(t),a=0;a<t;a++)o[a]=arguments[a+e];switch(e){case 0:return r.call(this,o);case 1:return r.call(this,arguments[0],o);case 2:return r.call(this,arguments[0],arguments[1],o)}var n=Array(e+1);for(a=0;a<e;a++)n[a]=arguments[a];return n[e]=o,r.apply(this,n)}}function P(r){var e=typeof r;return e==="function"||e==="object"&&!!r}function Ft(r){return r===null}function Jr(r){return r===void 0}function Zr(r){return r===!0||r===!1||j.call(r)==="[object Boolean]"}function Gt(r){return!!(r&&r.nodeType===1)}function A(r){var e="[object "+r+"]";return function(t){return j.call(t)===e}}var Ir=A("String");var ke=A("Number");var Wa=A("Date");var za=A("RegExp");var Ja=A("Error");var He=A("Symbol");var Xe=A("ArrayBuffer");var Za=A("Function"),xl=wt.document&&wt.document.childNodes;typeof/./!="function"&&typeof Int8Array!="object"&&typeof xl!="function"&&(Za=function(r){return typeof r=="function"||!1});var S=Za;var kt=A("Object");var $e=Xa&&kt(new DataView(new ArrayBuffer(8))),Rr=typeof Map<"u"&&kt(new Map);var Ll=A("DataView");function Cl(r){return r!=null&&S(r.getInt8)&&Xe(r.buffer)}var lr=$e?Cl:Ll;var U=$a||A("Array");function w(r,e){return r!=null&&Ha.call(r,e)}var Ht=A("Arguments");(function(){Ht(arguments)||(Ht=function(r){return w(r,"callee")})})();var Tr=Ht;function Xt(r){return!He(r)&&Ya(r)&&!isNaN(parseFloat(r))}function Qr(r){return ke(r)&&Va(r)}function jr(r){return function(){return r}}function re(r){return function(e){var t=r(e);return typeof t=="number"&&t>=0&&t<=Ka}}function ee(r){return function(e){return e?.[r]}}var cr=ee("byteLength");var Qa=re(cr);var Dl=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function wl(r){return Ut?Ut(r)&&!lr(r):Qa(r)&&Dl.test(j.call(r))}var Ve=qt?wl:jr(!1);var I=ee("length");function Ml(r){for(var e={},t=r.length,o=0;o<t;++o)e[r[o]]=!0;return{contains:function(a){return e[a]===!0},push:function(a){return e[a]=!0,r.push(a)}}}function te(r,e){e=Ml(e);var t=_t.length,o=r.constructor,a=S(o)&&o.prototype||Fe,n="constructor";for(w(r,n)&&!e.contains(n)&&e.push(n);t--;)n=_t[t],n in r&&r[n]!==a[n]&&!e.contains(n)&&e.push(n)}function h(r){if(!P(r))return[];if(Pt)return Pt(r);var e=[];for(var t in r)w(r,t)&&e.push(t);return Ge&&te(r,e),e}function $t(r){if(r==null)return!0;var e=I(r);return typeof e=="number"&&(U(r)||Ir(r)||Tr(r))?e===0:I(h(r))===0}function oe(r,e){var t=h(e),o=t.length;if(r==null)return!o;for(var a=Object(r),n=0;n<o;n++){var i=t[n];if(e[i]!==a[i]||!(i in a))return!1}return!0}function d(r){if(r instanceof d)return r;if(!(this instanceof d))return new d(r);this._wrapped=r}d.VERSION=_e;d.prototype.value=function(){return this._wrapped};d.prototype.valueOf=d.prototype.toJSON=d.prototype.value;d.prototype.toString=function(){return String(this._wrapped)};function Ye(r){return new Uint8Array(r.buffer||r,r.byteOffset||0,cr(r))}var ja="[object DataView]";function Vt(r,e,t,o){if(r===e)return r!==0||1/r===1/e;if(r==null||e==null)return!1;if(r!==r)return e!==e;var a=typeof r;return a!=="function"&&a!=="object"&&typeof e!="object"?!1:rn(r,e,t,o)}function rn(r,e,t,o){r instanceof d&&(r=r._wrapped),e instanceof d&&(e=e._wrapped);var a=j.call(r);if(a!==j.call(e))return!1;if($e&&a=="[object Object]"&&lr(r)){if(!lr(e))return!1;a=ja}switch(a){case"[object RegExp]":case"[object String]":return""+r==""+e;case"[object Number]":return+r!=+r?+e!=+e:+r==0?1/+r===1/e:+r==+e;case"[object Date]":case"[object Boolean]":return+r==+e;case"[object Symbol]":return Mt.valueOf.call(r)===Mt.valueOf.call(e);case"[object ArrayBuffer]":case ja:return rn(Ye(r),Ye(e),t,o)}var n=a==="[object Array]";if(!n&&Ve(r)){var i=cr(r);if(i!==cr(e))return!1;if(r.buffer===e.buffer&&r.byteOffset===e.byteOffset)return!0;n=!0}if(!n){if(typeof r!="object"||typeof e!="object")return!1;var s=r.constructor,l=e.constructor;if(s!==l&&!(S(s)&&s instanceof s&&S(l)&&l instanceof l)&&"constructor"in r&&"constructor"in e)return!1}t=t||[],o=o||[];for(var c=t.length;c--;)if(t[c]===r)return o[c]===e;if(t.push(r),o.push(e),n){if(c=r.length,c!==e.length)return!1;for(;c--;)if(!Vt(r[c],e[c],t,o))return!1}else{var p=h(r),u;if(c=p.length,h(e).length!==c)return!1;for(;c--;)if(u=p[c],!(w(e,u)&&Vt(r[u],e[u],t,o)))return!1}return t.pop(),o.pop(),!0}function Yt(r,e){return Vt(r,e)}function K(r){if(!P(r))return[];var e=[];for(var t in r)e.push(t);return Ge&&te(r,e),e}function br(r){var e=I(r);return function(t){if(t==null)return!1;var o=K(t);if(I(o))return!1;for(var a=0;a<e;a++)if(!S(t[r[a]]))return!1;return r!==zt||!S(t[Kt])}}var Kt="forEach",en="has",Wt=["clear","delete"],tn=["get",en,"set"],on=Wt.concat(Kt,tn),zt=Wt.concat(tn),an=["add"].concat(Wt,Kt,en);var nn=Rr?br(on):A("Map");var sn=Rr?br(zt):A("WeakMap");var ln=Rr?br(an):A("Set");var cn=A("WeakSet");function H(r){for(var e=h(r),t=e.length,o=Array(t),a=0;a<t;a++)o[a]=r[e[a]];return o}function Jt(r){for(var e=h(r),t=e.length,o=Array(t),a=0;a<t;a++)o[a]=[e[a],r[e[a]]];return o}function ae(r){for(var e={},t=h(r),o=0,a=t.length;o<a;o++)e[r[t[o]]]=t[o];return e}function xr(r){var e=[];for(var t in r)S(r[t])&&e.push(t);return e.sort()}function ur(r,e){return function(t){var o=arguments.length;if(e&&(t=Object(t)),o<2||t==null)return t;for(var a=1;a<o;a++)for(var n=arguments[a],i=r(n),s=i.length,l=0;l<s;l++){var c=i[l];(!e||t[c]===void 0)&&(t[c]=n[c])}return t}}var Ke=ur(K);var pr=ur(h);var We=ur(K,!0);function ql(){return function(){}}function ne(r){if(!P(r))return{};if(Bt)return Bt(r);var e=ql();e.prototype=r;var t=new e;return e.prototype=null,t}function Zt(r,e){var t=ne(r);return e&&pr(t,e),t}function Qt(r){return P(r)?U(r)?r.slice():Ke({},r):r}function jt(r,e){return e(r),r}function ze(r){return U(r)?r:[r]}d.toPath=ze;function W(r){return d.toPath(r)}function fr(r,e){for(var t=e.length,o=0;o<t;o++){if(r==null)return;r=r[e[o]]}return t?r:void 0}function ie(r,e,t){var o=fr(r,W(e));return Jr(o)?t:o}function ro(r,e){e=W(e);for(var t=e.length,o=0;o<t;o++){var a=e[o];if(!w(r,a))return!1;r=r[a]}return!!t}function mr(r){return r}function Z(r){return r=pr({},r),function(e){return oe(e,r)}}function gr(r){return r=W(r),function(e){return fr(e,r)}}function z(r,e,t){if(e===void 0)return r;switch(t??3){case 1:return function(o){return r.call(e,o)};case 3:return function(o,a,n){return r.call(e,o,a,n)};case 4:return function(o,a,n,i){return r.call(e,o,a,n,i)}}return function(){return r.apply(e,arguments)}}function se(r,e,t){return r==null?mr:S(r)?z(r,e,t):P(r)&&!U(r)?Z(r):gr(r)}function Lr(r,e){return se(r,e,1/0)}d.iteratee=Lr;function y(r,e,t){return d.iteratee!==Lr?d.iteratee(r,e):se(r,e,t)}function eo(r,e,t){e=y(e,t);for(var o=h(r),a=o.length,n={},i=0;i<a;i++){var s=o[i];n[s]=e(r[s],s,r)}return n}function le(){}function to(r){return r==null?le:function(e){return ie(r,e)}}function oo(r,e,t){var o=Array(Math.max(0,r));e=z(e,t,1);for(var a=0;a<r;a++)o[a]=e(a);return o}function Cr(r,e){return e==null&&(e=r,r=0),r+Math.floor(Math.random()*(e-r+1))}var er=Date.now||function(){return new Date().getTime()};function ce(r){var e=function(n){return r[n]},t="(?:"+h(r).join("|")+")",o=RegExp(t),a=RegExp(t,"g");return function(n){return n=n==null?"":""+n,o.test(n)?n.replace(a,e):n}}var Je={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"};var un=ce(Je);var pn=ae(Je);var fn=ce(pn);var mn=d.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var ao=/(.)^/,Pl={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Bl=/\\|'|\r|\n|\u2028|\u2029/g;function Ul(r){return"\\"+Pl[r]}var _l=/^\s*(\w|\$)+\s*$/;function no(r,e,t){!e&&t&&(e=t),e=We({},e,d.templateSettings);var o=RegExp([(e.escape||ao).source,(e.interpolate||ao).source,(e.evaluate||ao).source].join("|")+"|$","g"),a=0,n="__p+='";r.replace(o,function(c,p,u,f,O){return n+=r.slice(a,O).replace(Bl,Ul),a=O+c.length,p?n+=`'+ +`+e.prev}function dt(r,e){var t=ua(r),o=[];if(t){o.length=r.length;for(var a=0;a<r.length;a++)o[a]=ar(r,a)?e(r[a],r):""}var n=typeof na=="function"?na(r):[],i;if($r){i={};for(var s=0;s<n.length;s++)i["$"+n[s]]=n[s]}for(var l in r)ar(r,l)&&(t&&String(Number(l))===l&&l<r.length||$r&&i["$"+l]instanceof Symbol||(rs.call(/[^\w$]/,l)?o.push(e(l,r)+": "+e(r[l],r)):o.push(l+": "+e(r[l],r))));if(typeof na=="function")for(var c=0;c<n.length;c++)es.call(r,n[c])&&o.push("["+e(n[c])+"]: "+e(r[n[c]],r));return o}});var At=m((xN,ss)=>{"use strict";ss.exports=function(e){return typeof e=="string"||typeof e=="symbol"}});var cs=m((LN,ls)=>{"use strict";var hu=L(),Eu=hu("%TypeError%"),Au=we(),yu=At();ls.exports=function(e,t){if(!yu(t))throw new Eu("Assertion failed: IsPropertyKey(P) is not true, got "+Au(t));return e[t]}});var ms=m((CN,fs)=>{"use strict";var ps=Function.prototype.toString,Vr=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,ha,yt;if(typeof Vr=="function"&&typeof Object.defineProperty=="function")try{ha=Object.defineProperty({},"length",{get:function(){throw yt}}),yt={},Vr(function(){throw 42},null,ha)}catch(r){r!==yt&&(Vr=null)}else Vr=null;var vu=/^\s*class\b/,Ea=function(e){try{var t=ps.call(e);return vu.test(t)}catch{return!1}},da=function(e){try{return Ea(e)?!1:(ps.call(e),!0)}catch{return!1}},vt=Object.prototype.toString,Su="[object Object]",Ou="[object Function]",Nu="[object GeneratorFunction]",Iu="[object HTMLAllCollection]",Ru="[object HTML document.all class]",Tu="[object HTMLCollection]",bu=typeof Symbol=="function"&&!!Symbol.toStringTag,xu=!(0 in[,]),Aa=function(){return!1};typeof document=="object"&&(us=document.all,vt.call(us)===vt.call(document.all)&&(Aa=function(e){if((xu||!e)&&(typeof e>"u"||typeof e=="object"))try{var t=vt.call(e);return(t===Iu||t===Ru||t===Tu||t===Su)&&e("")==null}catch{}return!1}));var us;fs.exports=Vr?function(e){if(Aa(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{Vr(e,null,ha)}catch(t){if(t!==yt)return!1}return!Ea(e)&&da(e)}:function(e){if(Aa(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(bu)return da(e);if(Ea(e))return!1;var t=vt.call(e);return t!==Ou&&t!==Nu&&!/^\[object HTML/.test(t)?!1:da(e)}});var ya=m((DN,gs)=>{"use strict";gs.exports=ms()});var As=m((wN,Es)=>{"use strict";var Lu=L(),ds=Lu("%TypeError%"),Cu=cs(),Du=ya(),wu=At(),hs=we();Es.exports=function(e,t){if(!wu(t))throw new ds("Assertion failed: IsPropertyKey(P) is not true");var o=Cu(e,t);if(o!=null){if(!Du(o))throw new ds(hs(t)+" is not a function: "+hs(o));return o}}});var vs=m((MN,ys)=>{"use strict";var Mu=ko();ys.exports=function(){return Mu()&&!!Symbol.toStringTag}});var Na=m((qN,Is)=>{"use strict";var va=or(),Ss=vs()(),Os,Ns,Sa,Oa;Ss&&(Os=va("Object.prototype.hasOwnProperty"),Ns=va("RegExp.prototype.exec"),Sa={},St=function(){throw Sa},Oa={toString:St,valueOf:St},typeof Symbol.toPrimitive=="symbol"&&(Oa[Symbol.toPrimitive]=St));var St,qu=va("Object.prototype.toString"),Pu=Object.getOwnPropertyDescriptor,Bu="[object RegExp]";Is.exports=Ss?function(e){if(!e||typeof e!="object")return!1;var t=Pu(e,"lastIndex"),o=t&&Os(t,"value");if(!o)return!1;try{Ns(e,Oa)}catch(a){return a===Sa}}:function(e){return!e||typeof e!="object"&&typeof e!="function"?!1:qu(e)===Bu}});var Ts=m((PN,Rs)=>{"use strict";var Uu=or(),_u=L(),Fu=Na(),Gu=Uu("RegExp.prototype.exec"),ku=_u("%TypeError%");Rs.exports=function(e){if(!Fu(e))throw new ku("`regex` must be a RegExp");return function(o){return Gu(e,o)!==null}}});var xs=m((BN,bs)=>{"use strict";bs.exports=function(e,t){for(var o=0;o<e.length;o+=1)if(!t(e[o],o,e))return!1;return!0}});var Cs=m((UN,Ls)=>{"use strict";Ls.exports=function(e){if(e===null)return"Null";if(typeof e>"u")return"Undefined";if(typeof e=="function"||typeof e=="object")return"Object";if(typeof e=="number")return"Number";if(typeof e=="boolean")return"Boolean";if(typeof e=="string")return"String"}});var Me=m((_N,Ds)=>{"use strict";var Hu=Cs();Ds.exports=function(e){return typeof e=="symbol"?"Symbol":typeof e=="bigint"?"BigInt":Hu(e)}});var qs=m((FN,Ms)=>{"use strict";var Xu=L(),ws=Xu("%TypeError%"),$u=we(),Vu=At(),Yu=Me();Ms.exports=function(e,t){if(Yu(e)!=="Object")throw new ws("Assertion failed: Type(O) is not Object");if(!Vu(t))throw new ws("Assertion failed: IsPropertyKey(P) is not true, got "+$u(t));return e[t]}});var Bs=m((GN,Ps)=>{"use strict";var Ku=L(),Wu=Ku("%TypeError%");Ps.exports=function(e,t){if(e==null)throw new Wu(t||"Cannot call method on "+e);return e}});var Ia=m((kN,Us)=>{"use strict";Us.exports=Bs()});var Fs=m((HN,_s)=>{"use strict";var zu=L(),Ju=zu("%Object%"),Zu=Ia();_s.exports=function(e){return Zu(e),Ju(e)}});var Ra=m((XN,ks)=>{"use strict";var Gs=L(),Qu=Gs("%String%"),ju=Gs("%TypeError%");ks.exports=function(e){if(typeof e=="symbol")throw new ju("Cannot convert a Symbol value to a string");return Qu(e)}});var Ta=m(($N,Hs)=>{"use strict";Hs.exports=Number.isNaN||function(e){return e!==e}});var $s=m((VN,Xs)=>{"use strict";var rp=Ta();Xs.exports=function(r){return(typeof r=="number"||typeof r=="bigint")&&!rp(r)&&r!==1/0&&r!==-1/0}});var ba=m((YN,Ys)=>{"use strict";var Vs=L(),ep=Vs("%Math.abs%"),tp=Vs("%Math.floor%"),op=Ta(),ap=$s();Ys.exports=function(e){if(typeof e!="number"||op(e)||!ap(e))return!1;var t=ep(e);return tp(t)===t}});var Ws=m((KN,Ks)=>{"use strict";Ks.exports=function(e){return typeof e=="string"||typeof e>"u"}});var Qs=m((WN,Zs)=>{"use strict";var np=L(),qe=np("%TypeError%"),La=or(),ip=Ts(),sp=xs(),Ot=La("String.prototype.charAt"),xa=La("String.prototype.slice"),lp=La("String.prototype.indexOf"),zs=parseInt,Nt=ip(/^[0-9]$/),Js=we(),cp=qs(),up=ta(),pp=Fs(),fp=Ra(),sr=Me(),mp=ba(),gp=Ws();Zs.exports=function(e,t,o,a,n,i){if(sr(e)!=="String")throw new qe("Assertion failed: `matched` must be a String");var s=e.length;if(sr(t)!=="String")throw new qe("Assertion failed: `str` must be a String");var l=t.length;if(!mp(o)||o<0||o>l)throw new qe("Assertion failed: `position` must be a nonnegative integer, and less than or equal to the length of `string`, got "+Js(o));if(!up(a)||!sp(a,gp))throw new qe("Assertion failed: `captures` must be a possibly-empty List of Strings or `undefined`, got "+Js(a));if(sr(i)!=="String")throw new qe("Assertion failed: `replacement` must be a String");var c=o+s,p=a.length;sr(n)!=="Undefined"&&(n=pp(n));for(var u="",f=0;f<i.length;f+=1){var O=Ot(i,f),N=f+1>=i.length,T=f+2>=i.length;if(O==="$"&&!N){var b=Ot(i,f+1);if(b==="$")u+="$",f+=1;else if(b==="&")u+=e,f+=1;else if(b==="`")u+=o===0?"":xa(t,0,o-1),f+=1;else if(b==="'")u+=c>=l?"":xa(t,c),f+=1;else{var X=T?null:Ot(i,f+2);if(Nt(b)&&b!=="0"&&(T||!Nt(X))){var k=zs(b,10);u+=k<=p&&sr(a[k-1])==="Undefined"?"":a[k-1],f+=1}else if(Nt(b)&&(T||Nt(X))){var V=b+X,Sr=zs(V,10)-1;u+=V<=p&&sr(a[Sr])==="Undefined"?"":a[Sr],f+=2}else if(b==="<")if(sr(n)==="Undefined")u+="$<",f+=2;else{var Kr=lp(i,">",f);if(Kr>-1){var Wr=xa(i,f+2,Kr),Or=cp(n,Wr);sr(Or)!=="Undefined"&&(u+=fp(Or)),f+=("<"+Wr+">").length}}else u+="$"}}else u+=Ot(i,f)}return u}});var el=m((zN,rl)=>{"use strict";var dp=L(),hp=or(),Ca=dp("%TypeError%"),js=Me(),Ep=ba(),Ap=hp("String.prototype.slice");rl.exports=function(e,t,o){if(js(e)!=="String")throw new Ca("Assertion failed: `string` must be a String");if(js(t)!=="String")throw new Ca("Assertion failed: `searchValue` must be a String");if(!Ep(o)||o<0)throw new Ca("Assertion failed: `fromIndex` must be a non-negative integer");var a=e.length;if(t===""&&o<=a)return o;for(var n=t.length,i=o;i<=a-n;i+=1){var s=Ap(e,i,i+n);if(s===t)return i}return-1}});var wa=m((JN,nl)=>{"use strict";var tl=Gi(),yp=As(),vp=Qs(),Sp=ya(),Op=Ia(),It=Ra(),ol=el(),Np=Me(),al=L(),Rt=or(),Ip=Ho()(),Rp=Na(),Tp=al("%Math.max%"),bp=al("%TypeError%"),xp=Rt("Array.prototype.push"),Da=Rt("String.prototype.slice"),Lp=Rt("String.prototype.indexOf"),Cp=Rt("String.prototype.replace");nl.exports=function(e,t){var o=Op(this),a=Rp(e);if(a&&Lp(Da(e,e.source.length+2),"g")===-1)throw new TypeError("use .replace for a non-global regex. NOTE: this may be allowed in the future.");if(Ip&&Symbol.replace){if(e!=null){var n=yp(e,Symbol.replace);if(typeof n<"u")return tl(n,e,[o,t])}}else if(a)return Cp(o,e,t);var i=It(o),s=It(e),l=Sp(t);l||(t=It(t));for(var c=s.length,p=Tp(1,c),u=[],f=ol(i,s,0);f!==-1;)xp(u,f),f=ol(i,s,f+p);for(var O=0,N="",T=0;T<u.length;T+=1){var b;if(l)b=It(tl(t,void 0,[s,u[T],i]));else{if(Np(t)!=="String")throw new bp("Assertion failed: `replaceValue` should be a string at this point");var X=[];b=vp(s,i,u[T],X,void 0,t)}var k=Da(i,O,u[T]);N+=k+b,O=u[T]+c}return O<i.length&&(N+=Da(i,O)),N}});var Ma=m((ZN,il)=>{"use strict";var Dp=wa();il.exports=function(){return String.prototype.replaceAll||Dp}});var ll=m((QN,sl)=>{"use strict";var wp=ea(),Mp=Ma();sl.exports=function(){var e=Mp();return wp(String.prototype,{replaceAll:e},{replaceAll:function(){return String.prototype.replaceAll!==e}}),e}});var fl=m((jN,pl)=>{"use strict";var qp=Zo(),Pp=ea(),cl=wa(),Bp=Ma(),Up=ll(),ul=qp(cl);Pp(ul,{getPolyfill:Bp,implementation:cl,shim:Up});pl.exports=ul});var Mo={};bl(Mo,{VERSION:()=>_e,after:()=>ho,all:()=>tt,allKeys:()=>K,any:()=>ot,assign:()=>pr,before:()=>pe,bind:()=>Ze,bindAll:()=>gn,chain:()=>lo,chunk:()=>wo,clone:()=>Qt,collect:()=>F,compact:()=>bo,compose:()=>go,constant:()=>jr,contains:()=>B,countBy:()=>Sn,create:()=>Zt,debounce:()=>fo,default:()=>bn,defaults:()=>We,defer:()=>dn,delay:()=>Qe,detect:()=>wr,difference:()=>nt,drop:()=>Er,each:()=>M,escape:()=>un,every:()=>tt,extend:()=>Ke,extendOwn:()=>pr,filter:()=>Y,find:()=>wr,findIndex:()=>Dr,findKey:()=>fe,findLastIndex:()=>je,findWhere:()=>Eo,first:()=>Se,flatten:()=>xo,foldl:()=>et,foldr:()=>Ao,forEach:()=>M,functions:()=>xr,get:()=>ie,groupBy:()=>yn,has:()=>ro,head:()=>Se,identity:()=>mr,include:()=>B,includes:()=>B,indexBy:()=>vn,indexOf:()=>rt,initial:()=>ve,inject:()=>et,intersection:()=>Lo,invert:()=>ae,invoke:()=>An,isArguments:()=>Tr,isArray:()=>U,isArrayBuffer:()=>Xe,isBoolean:()=>Zr,isDataView:()=>lr,isDate:()=>Wa,isElement:()=>Gt,isEmpty:()=>$t,isEqual:()=>Yt,isError:()=>Ja,isFinite:()=>Xt,isFunction:()=>S,isMap:()=>nn,isMatch:()=>oe,isNaN:()=>Qr,isNull:()=>Ft,isNumber:()=>ke,isObject:()=>P,isRegExp:()=>za,isSet:()=>ln,isString:()=>Ir,isSymbol:()=>He,isTypedArray:()=>Ve,isUndefined:()=>Jr,isWeakMap:()=>sn,isWeakSet:()=>cn,iteratee:()=>Lr,keys:()=>h,last:()=>To,lastIndexOf:()=>En,map:()=>F,mapObject:()=>eo,matcher:()=>Z,matches:()=>Z,max:()=>Ee,memoize:()=>uo,methods:()=>xr,min:()=>So,mixin:()=>Oe,negate:()=>dr,noop:()=>le,now:()=>er,object:()=>Co,omit:()=>Nn,once:()=>hn,pairs:()=>Jt,partial:()=>tr,partition:()=>On,pick:()=>at,pluck:()=>hr,property:()=>gr,propertyOf:()=>to,random:()=>Cr,range:()=>Do,reduce:()=>et,reduceRight:()=>Ao,reject:()=>yo,rest:()=>Er,restArguments:()=>v,result:()=>io,sample:()=>ye,select:()=>Y,shuffle:()=>Oo,size:()=>Io,some:()=>ot,sortBy:()=>No,sortedIndex:()=>ge,tail:()=>Er,take:()=>Se,tap:()=>jt,template:()=>no,templateSettings:()=>mn,throttle:()=>po,times:()=>oo,toArray:()=>Ae,toPath:()=>ze,transpose:()=>qr,unescape:()=>fn,union:()=>Rn,uniq:()=>Mr,unique:()=>Mr,uniqueId:()=>so,unzip:()=>qr,values:()=>H,where:()=>vo,without:()=>In,wrap:()=>mo,zip:()=>Tn});var _e="1.13.6",wt=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global||Function("return this")()||{},zr=Array.prototype,Fe=Object.prototype,Mt=typeof Symbol<"u"?Symbol.prototype:null,ka=zr.push,J=zr.slice,j=Fe.toString,Ha=Fe.hasOwnProperty,qt=typeof ArrayBuffer<"u",Xa=typeof DataView<"u",$a=Array.isArray,Pt=Object.keys,Bt=Object.create,Ut=qt&&ArrayBuffer.isView,Va=isNaN,Ya=isFinite,Ge=!{toString:null}.propertyIsEnumerable("toString"),_t=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],Ka=Math.pow(2,53)-1;function v(r,e){return e=e==null?r.length-1:+e,function(){for(var t=Math.max(arguments.length-e,0),o=Array(t),a=0;a<t;a++)o[a]=arguments[a+e];switch(e){case 0:return r.call(this,o);case 1:return r.call(this,arguments[0],o);case 2:return r.call(this,arguments[0],arguments[1],o)}var n=Array(e+1);for(a=0;a<e;a++)n[a]=arguments[a];return n[e]=o,r.apply(this,n)}}function P(r){var e=typeof r;return e==="function"||e==="object"&&!!r}function Ft(r){return r===null}function Jr(r){return r===void 0}function Zr(r){return r===!0||r===!1||j.call(r)==="[object Boolean]"}function Gt(r){return!!(r&&r.nodeType===1)}function A(r){var e="[object "+r+"]";return function(t){return j.call(t)===e}}var Ir=A("String");var ke=A("Number");var Wa=A("Date");var za=A("RegExp");var Ja=A("Error");var He=A("Symbol");var Xe=A("ArrayBuffer");var Za=A("Function"),Ll=wt.document&&wt.document.childNodes;typeof/./!="function"&&typeof Int8Array!="object"&&typeof Ll!="function"&&(Za=function(r){return typeof r=="function"||!1});var S=Za;var kt=A("Object");var $e=Xa&&kt(new DataView(new ArrayBuffer(8))),Rr=typeof Map<"u"&&kt(new Map);var Cl=A("DataView");function Dl(r){return r!=null&&S(r.getInt8)&&Xe(r.buffer)}var lr=$e?Dl:Cl;var U=$a||A("Array");function w(r,e){return r!=null&&Ha.call(r,e)}var Ht=A("Arguments");(function(){Ht(arguments)||(Ht=function(r){return w(r,"callee")})})();var Tr=Ht;function Xt(r){return!He(r)&&Ya(r)&&!isNaN(parseFloat(r))}function Qr(r){return ke(r)&&Va(r)}function jr(r){return function(){return r}}function re(r){return function(e){var t=r(e);return typeof t=="number"&&t>=0&&t<=Ka}}function ee(r){return function(e){return e?.[r]}}var cr=ee("byteLength");var Qa=re(cr);var wl=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function Ml(r){return Ut?Ut(r)&&!lr(r):Qa(r)&&wl.test(j.call(r))}var Ve=qt?Ml:jr(!1);var I=ee("length");function ql(r){for(var e={},t=r.length,o=0;o<t;++o)e[r[o]]=!0;return{contains:function(a){return e[a]===!0},push:function(a){return e[a]=!0,r.push(a)}}}function te(r,e){e=ql(e);var t=_t.length,o=r.constructor,a=S(o)&&o.prototype||Fe,n="constructor";for(w(r,n)&&!e.contains(n)&&e.push(n);t--;)n=_t[t],n in r&&r[n]!==a[n]&&!e.contains(n)&&e.push(n)}function h(r){if(!P(r))return[];if(Pt)return Pt(r);var e=[];for(var t in r)w(r,t)&&e.push(t);return Ge&&te(r,e),e}function $t(r){if(r==null)return!0;var e=I(r);return typeof e=="number"&&(U(r)||Ir(r)||Tr(r))?e===0:I(h(r))===0}function oe(r,e){var t=h(e),o=t.length;if(r==null)return!o;for(var a=Object(r),n=0;n<o;n++){var i=t[n];if(e[i]!==a[i]||!(i in a))return!1}return!0}function d(r){if(r instanceof d)return r;if(!(this instanceof d))return new d(r);this._wrapped=r}d.VERSION=_e;d.prototype.value=function(){return this._wrapped};d.prototype.valueOf=d.prototype.toJSON=d.prototype.value;d.prototype.toString=function(){return String(this._wrapped)};function Ye(r){return new Uint8Array(r.buffer||r,r.byteOffset||0,cr(r))}var ja="[object DataView]";function Vt(r,e,t,o){if(r===e)return r!==0||1/r===1/e;if(r==null||e==null)return!1;if(r!==r)return e!==e;var a=typeof r;return a!=="function"&&a!=="object"&&typeof e!="object"?!1:rn(r,e,t,o)}function rn(r,e,t,o){r instanceof d&&(r=r._wrapped),e instanceof d&&(e=e._wrapped);var a=j.call(r);if(a!==j.call(e))return!1;if($e&&a=="[object Object]"&&lr(r)){if(!lr(e))return!1;a=ja}switch(a){case"[object RegExp]":case"[object String]":return""+r==""+e;case"[object Number]":return+r!=+r?+e!=+e:+r==0?1/+r===1/e:+r==+e;case"[object Date]":case"[object Boolean]":return+r==+e;case"[object Symbol]":return Mt.valueOf.call(r)===Mt.valueOf.call(e);case"[object ArrayBuffer]":case ja:return rn(Ye(r),Ye(e),t,o)}var n=a==="[object Array]";if(!n&&Ve(r)){var i=cr(r);if(i!==cr(e))return!1;if(r.buffer===e.buffer&&r.byteOffset===e.byteOffset)return!0;n=!0}if(!n){if(typeof r!="object"||typeof e!="object")return!1;var s=r.constructor,l=e.constructor;if(s!==l&&!(S(s)&&s instanceof s&&S(l)&&l instanceof l)&&"constructor"in r&&"constructor"in e)return!1}t=t||[],o=o||[];for(var c=t.length;c--;)if(t[c]===r)return o[c]===e;if(t.push(r),o.push(e),n){if(c=r.length,c!==e.length)return!1;for(;c--;)if(!Vt(r[c],e[c],t,o))return!1}else{var p=h(r),u;if(c=p.length,h(e).length!==c)return!1;for(;c--;)if(u=p[c],!(w(e,u)&&Vt(r[u],e[u],t,o)))return!1}return t.pop(),o.pop(),!0}function Yt(r,e){return Vt(r,e)}function K(r){if(!P(r))return[];var e=[];for(var t in r)e.push(t);return Ge&&te(r,e),e}function br(r){var e=I(r);return function(t){if(t==null)return!1;var o=K(t);if(I(o))return!1;for(var a=0;a<e;a++)if(!S(t[r[a]]))return!1;return r!==zt||!S(t[Kt])}}var Kt="forEach",en="has",Wt=["clear","delete"],tn=["get",en,"set"],on=Wt.concat(Kt,tn),zt=Wt.concat(tn),an=["add"].concat(Wt,Kt,en);var nn=Rr?br(on):A("Map");var sn=Rr?br(zt):A("WeakMap");var ln=Rr?br(an):A("Set");var cn=A("WeakSet");function H(r){for(var e=h(r),t=e.length,o=Array(t),a=0;a<t;a++)o[a]=r[e[a]];return o}function Jt(r){for(var e=h(r),t=e.length,o=Array(t),a=0;a<t;a++)o[a]=[e[a],r[e[a]]];return o}function ae(r){for(var e={},t=h(r),o=0,a=t.length;o<a;o++)e[r[t[o]]]=t[o];return e}function xr(r){var e=[];for(var t in r)S(r[t])&&e.push(t);return e.sort()}function ur(r,e){return function(t){var o=arguments.length;if(e&&(t=Object(t)),o<2||t==null)return t;for(var a=1;a<o;a++)for(var n=arguments[a],i=r(n),s=i.length,l=0;l<s;l++){var c=i[l];(!e||t[c]===void 0)&&(t[c]=n[c])}return t}}var Ke=ur(K);var pr=ur(h);var We=ur(K,!0);function Pl(){return function(){}}function ne(r){if(!P(r))return{};if(Bt)return Bt(r);var e=Pl();e.prototype=r;var t=new e;return e.prototype=null,t}function Zt(r,e){var t=ne(r);return e&&pr(t,e),t}function Qt(r){return P(r)?U(r)?r.slice():Ke({},r):r}function jt(r,e){return e(r),r}function ze(r){return U(r)?r:[r]}d.toPath=ze;function W(r){return d.toPath(r)}function fr(r,e){for(var t=e.length,o=0;o<t;o++){if(r==null)return;r=r[e[o]]}return t?r:void 0}function ie(r,e,t){var o=fr(r,W(e));return Jr(o)?t:o}function ro(r,e){e=W(e);for(var t=e.length,o=0;o<t;o++){var a=e[o];if(!w(r,a))return!1;r=r[a]}return!!t}function mr(r){return r}function Z(r){return r=pr({},r),function(e){return oe(e,r)}}function gr(r){return r=W(r),function(e){return fr(e,r)}}function z(r,e,t){if(e===void 0)return r;switch(t??3){case 1:return function(o){return r.call(e,o)};case 3:return function(o,a,n){return r.call(e,o,a,n)};case 4:return function(o,a,n,i){return r.call(e,o,a,n,i)}}return function(){return r.apply(e,arguments)}}function se(r,e,t){return r==null?mr:S(r)?z(r,e,t):P(r)&&!U(r)?Z(r):gr(r)}function Lr(r,e){return se(r,e,1/0)}d.iteratee=Lr;function y(r,e,t){return d.iteratee!==Lr?d.iteratee(r,e):se(r,e,t)}function eo(r,e,t){e=y(e,t);for(var o=h(r),a=o.length,n={},i=0;i<a;i++){var s=o[i];n[s]=e(r[s],s,r)}return n}function le(){}function to(r){return r==null?le:function(e){return ie(r,e)}}function oo(r,e,t){var o=Array(Math.max(0,r));e=z(e,t,1);for(var a=0;a<r;a++)o[a]=e(a);return o}function Cr(r,e){return e==null&&(e=r,r=0),r+Math.floor(Math.random()*(e-r+1))}var er=Date.now||function(){return new Date().getTime()};function ce(r){var e=function(n){return r[n]},t="(?:"+h(r).join("|")+")",o=RegExp(t),a=RegExp(t,"g");return function(n){return n=n==null?"":""+n,o.test(n)?n.replace(a,e):n}}var Je={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"};var un=ce(Je);var pn=ae(Je);var fn=ce(pn);var mn=d.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var ao=/(.)^/,Bl={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Ul=/\\|'|\r|\n|\u2028|\u2029/g;function _l(r){return"\\"+Bl[r]}var Fl=/^\s*(\w|\$)+\s*$/;function no(r,e,t){!e&&t&&(e=t),e=We({},e,d.templateSettings);var o=RegExp([(e.escape||ao).source,(e.interpolate||ao).source,(e.evaluate||ao).source].join("|")+"|$","g"),a=0,n="__p+='";r.replace(o,function(c,p,u,f,O){return n+=r.slice(a,O).replace(Ul,_l),a=O+c.length,p?n+=`'+ ((__t=(`+p+`))==null?'':_.escape(__t))+ '`:u?n+=`'+ ((__t=(`+u+`))==null?'':__t)+ '`:f&&(n+=`'; `+f+` __p+='`),c}),n+=`'; -`;var i=e.variable;if(i){if(!_l.test(i))throw new Error("variable is not a bare identifier: "+i)}else n=`with(obj||{}){ +`;var i=e.variable;if(i){if(!Fl.test(i))throw new Error("variable is not a bare identifier: "+i)}else n=`with(obj||{}){ `+n+`} `,i="obj";n=`var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; `+n+`return __p; `;var s;try{s=new Function(i,"_",n)}catch(c){throw c.source=n,c}var l=function(c){return s.call(this,c,d)};return l.source="function("+i+`){ -`+n+"}",l}function io(r,e,t){e=W(e);var o=e.length;if(!o)return S(t)?t.call(r):t;for(var a=0;a<o;a++){var n=r?.[e[a]];n===void 0&&(n=t,a=o),r=S(n)?n.call(r):n}return r}var Fl=0;function so(r){var e=++Fl+"";return r?r+e:e}function lo(r){var e=d(r);return e._chain=!0,e}function ue(r,e,t,o,a){if(!(o instanceof e))return r.apply(t,a);var n=ne(r.prototype),i=r.apply(n,a);return P(i)?i:n}var co=v(function(r,e){var t=co.placeholder,o=function(){for(var a=0,n=e.length,i=Array(n),s=0;s<n;s++)i[s]=e[s]===t?arguments[a++]:e[s];for(;a<arguments.length;)i.push(arguments[a++]);return ue(r,o,this,this,i)};return o});co.placeholder=d;var tr=co;var Ze=v(function(r,e,t){if(!S(r))throw new TypeError("Bind must be called on a function");var o=v(function(a){return ue(r,o,e,this,t.concat(a))});return o});var R=re(I);function _(r,e,t,o){if(o=o||[],!e&&e!==0)e=1/0;else if(e<=0)return o.concat(r);for(var a=o.length,n=0,i=I(r);n<i;n++){var s=r[n];if(R(s)&&(U(s)||Tr(s)))if(e>1)_(s,e-1,t,o),a=o.length;else for(var l=0,c=s.length;l<c;)o[a++]=s[l++];else t||(o[a++]=s)}return o}var gn=v(function(r,e){e=_(e,!1,!1);var t=e.length;if(t<1)throw new Error("bindAll must be passed function names");for(;t--;){var o=e[t];r[o]=Ze(r[o],r)}return r});function uo(r,e){var t=function(o){var a=t.cache,n=""+(e?e.apply(this,arguments):o);return w(a,n)||(a[n]=r.apply(this,arguments)),a[n]};return t.cache={},t}var Qe=v(function(r,e,t){return setTimeout(function(){return r.apply(null,t)},e)});var dn=tr(Qe,d,1);function po(r,e,t){var o,a,n,i,s=0;t||(t={});var l=function(){s=t.leading===!1?0:er(),o=null,i=r.apply(a,n),o||(a=n=null)},c=function(){var p=er();!s&&t.leading===!1&&(s=p);var u=e-(p-s);return a=this,n=arguments,u<=0||u>e?(o&&(clearTimeout(o),o=null),s=p,i=r.apply(a,n),o||(a=n=null)):!o&&t.trailing!==!1&&(o=setTimeout(l,u)),i};return c.cancel=function(){clearTimeout(o),s=0,o=a=n=null},c}function fo(r,e,t){var o,a,n,i,s,l=function(){var p=er()-a;e>p?o=setTimeout(l,e-p):(o=null,t||(i=r.apply(s,n)),o||(n=s=null))},c=v(function(p){return s=this,n=p,a=er(),o||(o=setTimeout(l,e),t&&(i=r.apply(s,n))),i});return c.cancel=function(){clearTimeout(o),o=n=s=null},c}function mo(r,e){return tr(e,r)}function dr(r){return function(){return!r.apply(this,arguments)}}function go(){var r=arguments,e=r.length-1;return function(){for(var t=e,o=r[e].apply(this,arguments);t--;)o=r[t].call(this,o);return o}}function ho(r,e){return function(){if(--r<1)return e.apply(this,arguments)}}function pe(r,e){var t;return function(){return--r>0&&(t=e.apply(this,arguments)),r<=1&&(e=null),t}}var hn=tr(pe,2);function fe(r,e,t){e=y(e,t);for(var o=h(r),a,n=0,i=o.length;n<i;n++)if(a=o[n],e(r[a],a,r))return a}function me(r){return function(e,t,o){t=y(t,o);for(var a=I(e),n=r>0?0:a-1;n>=0&&n<a;n+=r)if(t(e[n],n,e))return n;return-1}}var Dr=me(1);var je=me(-1);function ge(r,e,t,o){t=y(t,o,1);for(var a=t(e),n=0,i=I(r);n<i;){var s=Math.floor((n+i)/2);t(r[s])<a?n=s+1:i=s}return n}function de(r,e,t){return function(o,a,n){var i=0,s=I(o);if(typeof n=="number")r>0?i=n>=0?n:Math.max(n+s,i):s=n>=0?Math.min(n+1,s):n+s+1;else if(t&&n&&s)return n=t(o,a),o[n]===a?n:-1;if(a!==a)return n=e(J.call(o,i,s),Qr),n>=0?n+i:-1;for(n=r>0?i:s-1;n>=0&&n<s;n+=r)if(o[n]===a)return n;return-1}}var rt=de(1,Dr,ge);var En=de(-1,je);function wr(r,e,t){var o=R(r)?Dr:fe,a=o(r,e,t);if(a!==void 0&&a!==-1)return r[a]}function Eo(r,e){return wr(r,Z(e))}function M(r,e,t){e=z(e,t);var o,a;if(R(r))for(o=0,a=r.length;o<a;o++)e(r[o],o,r);else{var n=h(r);for(o=0,a=n.length;o<a;o++)e(r[n[o]],n[o],r)}return r}function F(r,e,t){e=y(e,t);for(var o=!R(r)&&h(r),a=(o||r).length,n=Array(a),i=0;i<a;i++){var s=o?o[i]:i;n[i]=e(r[s],s,r)}return n}function he(r){var e=function(t,o,a,n){var i=!R(t)&&h(t),s=(i||t).length,l=r>0?0:s-1;for(n||(a=t[i?i[l]:l],l+=r);l>=0&&l<s;l+=r){var c=i?i[l]:l;a=o(a,t[c],c,t)}return a};return function(t,o,a,n){var i=arguments.length>=3;return e(t,z(o,n,4),a,i)}}var et=he(1);var Ao=he(-1);function Y(r,e,t){var o=[];return e=y(e,t),M(r,function(a,n,i){e(a,n,i)&&o.push(a)}),o}function yo(r,e,t){return Y(r,dr(y(e)),t)}function tt(r,e,t){e=y(e,t);for(var o=!R(r)&&h(r),a=(o||r).length,n=0;n<a;n++){var i=o?o[n]:n;if(!e(r[i],i,r))return!1}return!0}function ot(r,e,t){e=y(e,t);for(var o=!R(r)&&h(r),a=(o||r).length,n=0;n<a;n++){var i=o?o[n]:n;if(e(r[i],i,r))return!0}return!1}function B(r,e,t,o){return R(r)||(r=H(r)),(typeof t!="number"||o)&&(t=0),rt(r,e,t)>=0}var An=v(function(r,e,t){var o,a;return S(e)?a=e:(e=W(e),o=e.slice(0,-1),e=e[e.length-1]),F(r,function(n){var i=a;if(!i){if(o&&o.length&&(n=fr(n,o)),n==null)return;i=n[e]}return i==null?i:i.apply(n,t)})});function hr(r,e){return F(r,gr(e))}function vo(r,e){return Y(r,Z(e))}function Ee(r,e,t){var o=-1/0,a=-1/0,n,i;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=R(r)?r:H(r);for(var s=0,l=r.length;s<l;s++)n=r[s],n!=null&&n>o&&(o=n)}else e=y(e,t),M(r,function(c,p,u){i=e(c,p,u),(i>a||i===-1/0&&o===-1/0)&&(o=c,a=i)});return o}function So(r,e,t){var o=1/0,a=1/0,n,i;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=R(r)?r:H(r);for(var s=0,l=r.length;s<l;s++)n=r[s],n!=null&&n<o&&(o=n)}else e=y(e,t),M(r,function(c,p,u){i=e(c,p,u),(i<a||i===1/0&&o===1/0)&&(o=c,a=i)});return o}var Gl=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function Ae(r){return r?U(r)?J.call(r):Ir(r)?r.match(Gl):R(r)?F(r,mr):H(r):[]}function ye(r,e,t){if(e==null||t)return R(r)||(r=H(r)),r[Cr(r.length-1)];var o=Ae(r),a=I(o);e=Math.max(Math.min(e,a),0);for(var n=a-1,i=0;i<e;i++){var s=Cr(i,n),l=o[i];o[i]=o[s],o[s]=l}return o.slice(0,e)}function Oo(r){return ye(r,1/0)}function No(r,e,t){var o=0;return e=y(e,t),hr(F(r,function(a,n,i){return{value:a,index:o++,criteria:e(a,n,i)}}).sort(function(a,n){var i=a.criteria,s=n.criteria;if(i!==s){if(i>s||i===void 0)return 1;if(i<s||s===void 0)return-1}return a.index-n.index}),"value")}function rr(r,e){return function(t,o,a){var n=e?[[],[]]:{};return o=y(o,a),M(t,function(i,s){var l=o(i,s,t);r(n,i,l)}),n}}var yn=rr(function(r,e,t){w(r,t)?r[t].push(e):r[t]=[e]});var vn=rr(function(r,e,t){r[t]=e});var Sn=rr(function(r,e,t){w(r,t)?r[t]++:r[t]=1});var On=rr(function(r,e,t){r[t?0:1].push(e)},!0);function Io(r){return r==null?0:R(r)?r.length:h(r).length}function Ro(r,e,t){return e in t}var at=v(function(r,e){var t={},o=e[0];if(r==null)return t;S(o)?(e.length>1&&(o=z(o,e[1])),e=K(r)):(o=Ro,e=_(e,!1,!1),r=Object(r));for(var a=0,n=e.length;a<n;a++){var i=e[a],s=r[i];o(s,i,r)&&(t[i]=s)}return t});var Nn=v(function(r,e){var t=e[0],o;return S(t)?(t=dr(t),e.length>1&&(o=e[1])):(e=F(_(e,!1,!1),String),t=function(a,n){return!B(e,n)}),at(r,t,o)});function ve(r,e,t){return J.call(r,0,Math.max(0,r.length-(e==null||t?1:e)))}function Se(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[0]:ve(r,r.length-e)}function Er(r,e,t){return J.call(r,e==null||t?1:e)}function To(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[r.length-1]:Er(r,Math.max(0,r.length-e))}function bo(r){return Y(r,Boolean)}function xo(r,e){return _(r,e,!1)}var nt=v(function(r,e){return e=_(e,!0,!0),Y(r,function(t){return!B(e,t)})});var In=v(function(r,e){return nt(r,e)});function Mr(r,e,t,o){Zr(e)||(o=t,t=e,e=!1),t!=null&&(t=y(t,o));for(var a=[],n=[],i=0,s=I(r);i<s;i++){var l=r[i],c=t?t(l,i,r):l;e&&!t?((!i||n!==c)&&a.push(l),n=c):t?B(n,c)||(n.push(c),a.push(l)):B(a,l)||a.push(l)}return a}var Rn=v(function(r){return Mr(_(r,!0,!0))});function Lo(r){for(var e=[],t=arguments.length,o=0,a=I(r);o<a;o++){var n=r[o];if(!B(e,n)){var i;for(i=1;i<t&&B(arguments[i],n);i++);i===t&&e.push(n)}}return e}function qr(r){for(var e=r&&Ee(r,I).length||0,t=Array(e),o=0;o<e;o++)t[o]=hr(r,o);return t}var Tn=v(qr);function Co(r,e){for(var t={},o=0,a=I(r);o<a;o++)e?t[r[o]]=e[o]:t[r[o][0]]=r[o][1];return t}function Do(r,e,t){e==null&&(e=r||0,r=0),t||(t=e<r?-1:1);for(var o=Math.max(Math.ceil((e-r)/t),0),a=Array(o),n=0;n<o;n++,r+=t)a[n]=r;return a}function wo(r,e){if(e==null||e<1)return[];for(var t=[],o=0,a=r.length;o<a;)t.push(J.call(r,o,o+=e));return t}function Pr(r,e){return r._chain?d(e).chain():e}function Oe(r){return M(xr(r),function(e){var t=d[e]=r[e];d.prototype[e]=function(){var o=[this._wrapped];return ka.apply(o,arguments),Pr(this,t.apply(d,o))}}),d}M(["pop","push","reverse","shift","sort","splice","unshift"],function(r){var e=zr[r];d.prototype[r]=function(){var t=this._wrapped;return t!=null&&(e.apply(t,arguments),(r==="shift"||r==="splice")&&t.length===0&&delete t[0]),Pr(this,t)}});M(["concat","join","slice"],function(r){var e=zr[r];d.prototype[r]=function(){var t=this._wrapped;return t!=null&&(t=e.apply(t,arguments)),Pr(this,t)}});var bn=d;var qo=Oe(Mo);qo._=qo;var x=qo;var xt=Ga(qn()),Al=Ga(fl());var Pe="(?=((?=[\\w'#%+-]+(?:\\.[\\w'#%+-]+)*@)[\\w\\.'#%+-]{1,64}@(?:(?=[a-z\\d]+(?:-+[a-z\\d]+)*\\.)(?:[a-z\\d-]{1,63}\\.)+[a-z]{2,63})(?= |_|\\b))(?<end>.*))\\S{3,254}(?=\\k<end>$)",Up="YYYY-MM-DD",_p="https://d2k5nsl2zxldvw.cloudfront.net",g=`${_p}/images/`,C={CORPAY_DIRECT_REIMBURSEMENT_CURRENCIES:["USD","GBP","EUR","AUD","CAD"],ACH_DEFAULT_MAX_AMOUNT_LIMIT:2e6,MILEAGE_IRS_RATE:new Date>new Date(2019,1,1)?.545:.58,MAX_TRIAL_BONUS_DAYS:42,COUNTRY:{US:"US",AU:"AU",UK:"UK",NZ:"NZ"},CURRENCIES:{US:"USD",AU:"AUD",UK:"GBP",NZ:"NZD"},STATES:{AK:{stateISO:"AK",stateName:"Alaska"},AL:{stateISO:"AL",stateName:"Alabama"},AR:{stateISO:"AR",stateName:"Arkansas"},AZ:{stateISO:"AZ",stateName:"Arizona"},CA:{stateISO:"CA",stateName:"California"},CO:{stateISO:"CO",stateName:"Colorado"},CT:{stateISO:"CT",stateName:"Connecticut"},DE:{stateISO:"DE",stateName:"Delaware"},FL:{stateISO:"FL",stateName:"Florida"},GA:{stateISO:"GA",stateName:"Georgia"},HI:{stateISO:"HI",stateName:"Hawaii"},IA:{stateISO:"IA",stateName:"Iowa"},ID:{stateISO:"ID",stateName:"Idaho"},IL:{stateISO:"IL",stateName:"Illinois"},IN:{stateISO:"IN",stateName:"Indiana"},KS:{stateISO:"KS",stateName:"Kansas"},KY:{stateISO:"KY",stateName:"Kentucky"},LA:{stateISO:"LA",stateName:"Louisiana"},MA:{stateISO:"MA",stateName:"Massachusetts"},MD:{stateISO:"MD",stateName:"Maryland"},ME:{stateISO:"ME",stateName:"Maine"},MI:{stateISO:"MI",stateName:"Michigan"},MN:{stateISO:"MN",stateName:"Minnesota"},MO:{stateISO:"MO",stateName:"Missouri"},MS:{stateISO:"MS",stateName:"Mississippi"},MT:{stateISO:"MT",stateName:"Montana"},NC:{stateISO:"NC",stateName:"North Carolina"},ND:{stateISO:"ND",stateName:"North Dakota"},NE:{stateISO:"NE",stateName:"Nebraska"},NH:{stateISO:"NH",stateName:"New Hampshire"},NJ:{stateISO:"NJ",stateName:"New Jersey"},NM:{stateISO:"NM",stateName:"New Mexico"},NV:{stateISO:"NV",stateName:"Nevada"},NY:{stateISO:"NY",stateName:"New York"},OH:{stateISO:"OH",stateName:"Ohio"},OK:{stateISO:"OK",stateName:"Oklahoma"},OR:{stateISO:"OR",stateName:"Oregon"},PA:{stateISO:"PA",stateName:"Pennsylvania"},PR:{stateISO:"PR",stateName:"Puerto Rico"},RI:{stateISO:"RI",stateName:"Rhode Island"},SC:{stateISO:"SC",stateName:"South Carolina"},SD:{stateISO:"SD",stateName:"South Dakota"},TN:{stateISO:"TN",stateName:"Tennessee"},TX:{stateISO:"TX",stateName:"Texas"},UT:{stateISO:"UT",stateName:"Utah"},VA:{stateISO:"VA",stateName:"Virginia"},VT:{stateISO:"VT",stateName:"Vermont"},WA:{stateISO:"WA",stateName:"Washington"},WI:{stateISO:"WI",stateName:"Wisconsin"},WV:{stateISO:"WV",stateName:"West Virginia"},WY:{stateISO:"WY",stateName:"Wyoming"},DC:{stateISO:"DC",stateName:"District Of Columbia"}},SPECIAL_CHARS_TO_REMOVE:"$*.+!(,=",REG_EXP:{DOMAIN:/^[\w-\.]*\.\w{2,}$/,EMAIL_PART:Pe,FREE_NAME:/^[^\r\n\t]{1,256}$/,MASKED_CARD:/^\d{0,6}[X]+\d{4,7}$/,EMAIL:new RegExp(`^${Pe}$`,"i"),EXTRACT_EMAIL:new RegExp(Pe,"gi"),EMAIL_SEARCH:new RegExp(Pe,"gi"),HYPERLINK:new RegExp("^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u00a1-\\uffff][a-z0-9\\u00a1-\\uffff_-]{0,62})?[a-z0-9\\u00a1-\\uffff]\\.)+(?:[a-z\\u00a1-\\uffff]{2,}\\.?))(?::\\d{2,5})?(?:[/?#]\\S*)?$","i"),MARKDOWN_EMAIL:Pe,EMOJIS:/[\u200d\u{1f1e6}-\u{1f1ff}\u{1f3fb}-\u{1f3ff}\u{e0020}-\u{e007f}\u20E3\uFE0F]|[#*0-9]\uFE0F?\u20E3/gu},REPORT:{LIMIT_PRINT_PDF:250,ACH_LIMIT:2e6,ACH_DEFAULT_DAYS:4,TITLE_FORMULA:"{report:title}",MAX_AGE_SAME_COMMENT:300,SMARTREPORT_AGENT_EMAIL:"smartreports@expensify.com"},URL:{FORUM_ROOT:"https://community.expensify.com/",RECEIPTS:{DEVELOPMENT:"https://www.expensify.com.dev/receipts/",STAGING:"https://staging.expensify.com/receipts/",PRODUCTION:"https://www.expensify.com/receipts/"},CLOUDFRONT:"https://d2k5nsl2zxldvw.cloudfront.net",CLOUDFRONT_IMG:"https://d2k5nsl2zxldvw.cloudfront.net/images/",CLOUDFRONT_FILES:"https://d2k5nsl2zxldvw.cloudfront.net/files/",EXPENSIFY_SYNC_MANAGER:"quickbooksdesktop/Expensify_QuickBooksDesktop_Setup_2300802.exe",USEDOT_ROOT:"https://use.expensify.com/",ITUNES_SUBSCRIPTION:"https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions"},DATE:{FORMAT_STRING:"yyyy-MM-dd",FORMAT_STRING_PRETTY:"MMM d, yyyy",MOMENT_FORMAT_STRING:Up,MOMENT_DATE_TIME:"YYYY-MM-DD HH:mm",MOMENT_DATE_TIME_PRETTY:"MMM DD YYYY h:mma",MOMENT_DATE_TIME_TIMEZONE:"YYYY-MM-DDTHH:mm:ssZ",MOMENT_US_DATE:"MMM D, YYYY",MOMENT_US_DATE_LONG:"MMMM D, YYYY",MOMENT_US_MONTH_YEAR_LONG:"MMMM YYYY",TIMEZONE_OFFSET_MS:new Date().getTimezoneOffset()*6e4,SHORT_MONTH_SHORT_DAY:"MMM d",LONG_YEAR_MONTH_DAY_24_TIME:"yyyy-MM-dd HH:mm:ss",SHORT_MONTH_DAY_LOCAL_TIME:"MMM D [at] LT",SHORT_MONTH_DAY_YEAR_LOCAL_TIME:"MMM D, YYYY [at] LT"},FUNC_DIE_MESSAGE:"Aborting JavaScript execution",EMAIL_DELIVERY_FAILURE_VALIDITY:1209600,BILL_PROCESSING_PARTNER_NAME:"expensify.cash",BILL_PROCESSING_EMAIL_DOMAIN:"expensify.cash",BANK_IMPORT:{BANK_STATUS_BROKEN:2},BANK_ACCOUNT:{VERIFICATION_MAX_ATTEMPTS:7},EXPENSIFY_EMAILS:["concierge@expensify.com","help@expensify.com","receipts@expensify.com","chronos@expensify.com","qa@expensify.com","contributors@expensify.com","firstresponders@expensify.com","qa+travisreceipts@expensify.com","bills@expensify.com","studentambassadors@expensify.com","accounting@expensify.com","payroll@expensify.com","svfg@expensify.com","integrationtestingcreds@expensify.com","admin@expensify.com"],INVALID_APPROVER_AND_SHAREE_EMAILS:["concierge@expensify.com","help@expensify.com","receipts@expensify.com","chronos@expensify.com","qa@expensify.com","contributors@expensify.com","firstresponders@expensify.com","qa+travisreceipts@expensify.com","bills@expensify.com","admin@expensify.com"],SMART_SCAN:{COST:20,FREE_NUMBER:25},SMS:{DOMAIN:"expensify.sms",E164_REGEX:/^\+?[1-9]\d{1,14}$/},PASSWORD_COMPLEXITY_REGEX_STRING:"^(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{8,}$",INTEGRATIONS:{DATA_MAPPING:{NONE:"NONE",TAG:"TAG",REPORT_FIELD:"REPORT_FIELD",DEFAULT:"DEFAULT"},EXPORT_DATE:{LAST_EXPENSE:"LAST_EXPENSE",REPORT_EXPORTED:"REPORT_EXPORTED",REPORT_SUBMITTED:"REPORT_SUBMITTED"},XERO_HQ_CONNECTION_NAME:"xerohq",EXPENSIFY_SYNC_MANAGER_VERSION:"23.0.802.0"},INTEGRATION_TYPES:{ACCOUNTING:"accounting",HR:"hr"},DIRECT_INTEGRATIONS:{zenefits:{value:"zenefits",text:"Zenefits",image:`${g}icons/export-icons/zenefit.svg`,gray_image:`${g}icons/export-icons/zenefit_gray.svg`,alert_image:`${g}icons/export-icons/zenefit_alert.svg`,types:["hr"],isCorporateOnly:!1},gusto:{value:"gusto",text:"Gusto",image:`${g}icons/export-icons/gusto.svg`,gray_image:`${g}icons/export-icons/gusto_gray.svg`,alert_image:`${g}icons/export-icons/gusto_alert.svg`,types:["hr"],isCorporateOnly:!1},quickbooksOnline:{value:"quickbooksOnline",text:"QuickBooks Online",image:`${g}icons/export-icons/quickbooks.svg`,gray_image:`${g}icons/export-icons/quickbooks_gray.svg`,alert_image:`${g}icons/export-icons/quickbooks_alert.svg`,types:["hr","accounting"],isCorporateOnly:!1},xero:{value:"xero",text:"Xero",image:`${g}icons/export-icons/xero.svg`,gray_image:`${g}icons/export-icons/xero_gray.svg`,alert_image:`${g}icons/export-icons/xero_alert.svg`,types:["accounting"],isCorporateOnly:!1},netsuite:{value:"netsuite",text:"NetSuite",image:`${g}icons/export-icons/netsuite.svg`,gray_image:`${g}icons/export-icons/netsuite_gray.svg`,alert_image:`${g}icons/export-icons/netsuite_alert.svg`,types:["hr","accounting"],isCorporateOnly:!0},quickbooksDesktop:{value:"qbd",text:"QuickBooks Desktop",image:`${g}icons/export-icons/quickbooks.svg`,gray_image:`${g}icons/export-icons/quickbooks_gray.svg`,alert_image:`${g}icons/export-icons/quickbooks_alert.svg`,types:["accounting"],isCorporateOnly:!1},intacct:{value:"intacct",text:"Sage Intacct",image:`${g}icons/export-icons/sage.svg`,gray_image:`${g}icons/export-icons/sage_gray.svg`,alert_image:`${g}icons/export-icons/sage_alert.svg`,types:["hr","accounting"],isCorporateOnly:!0},financialforce:{value:"financialforce",text:"FinancialForce",image:`${g}icons/export-icons/financialforce.svg`,gray_image:`${g}icons/export-icons/financialforce_gray.svg`,alert_image:`${g}icons/export-icons/financialforce_alert.svg`,types:["accounting"],isCorporateOnly:!0}},INDIRECT_INTEGRATIONS:{microsoft_dynamics:{value:"microsoft_dynamics",text:"Microsoft Dynamics",image:`${g}icons/export-icons/microsoft_dynamics.svg`,gray_image:`${g}icons/export-icons/microsoft_dynamics_gray.svg`,types:["accounting"],isCorporateOnly:!0},oracle:{value:"oracle",text:"Oracle",image:`${g}icons/export-icons/oracle.svg`,gray_image:`${g}icons/export-icons/oracle_gray.svg`,types:["hr","accounting"],isCorporateOnly:!0},sage:{value:"sage",text:"Sage",image:`${g}icons/export-icons/sage.svg`,gray_image:`${g}icons/export-icons/sage_gray.svg`,types:["accounting"],isCorporateOnly:!0},sap:{value:"sap",text:"SAP",image:`${g}icons/export-icons/sap.svg`,gray_image:`${g}icons/export-icons/sap_gray.svg`,types:["accounting"],isCorporateOnly:!0},myob:{value:"myob",text:"MYOB",image:`${g}icons/export-icons/myob.svg`,gray_image:`${g}icons/export-icons/myob_gray.svg`,types:["accounting"],isCorporateOnly:!0},workday:{value:"workday",text:"Workday",image:`${g}icons/export-icons/workday.svg`,gray_image:`${g}icons/export-icons/workday_gray.svg`,types:["hr"],isCorporateOnly:!0},adp:{value:"adp",text:"ADP",image:`${g}icons/export-icons/adp.svg`,types:["hr"],isCorporateOnly:!0},generic_indirect_connection:{value:"generic_indirect_connection",text:"Other",image:`${g}icons/accounting-other--blue.svg`,types:["hr","accounting"]}},DEFAULT_IS_TEMPLATES:{default:{value:"default_template",text:"Basic Export",image:`${g}icons/accounting-other--blue.svg`},tag:{value:"tag_template",text:"Tag Export",image:`${g}icons/accounting-other--blue.svg`},category:{value:"category_template",text:"Category Export",image:`${g}icons/accounting-other--blue.svg`},detailed:{value:"detailed_export",text:"All Data - Expense Level Export",image:`${g}icons/accounting-other--blue.svg`},report:{value:"report_level_export",text:"All Data - Report Level Export",image:`${g}icons/accounting-other--blue.svg`},tax:{value:"multiple_tax_export",text:"Canadian Multiple Tax Export",image:`${g}icons/accounting-other--blue.svg`},perdiem:{value:"per_diem_export",text:"Per Diem Export",image:`${g}icons/accounting-other--blue.svg`},attendees:{value:"attendee_audit_export",text:"Attendee Audit Export",image:`${g}icons/accounting-other--blue.svg`}},NVP:{DISMISSED_VIOLATIONS:"dismissedViolations"},FILESIZE:{BYTES_IN_MEGABYTE:1e6,MAX:1e7},PARTNER_NAMES:{IPHONE:"iphone",ANDROID:"android",CHAT:"chat-expensify-com"},LOGIN_TYPES:{WEB:"login",MOBILE:"device"},EXPENSIFY_CARD:{FEED_NAME:"Expensify Card",FRAUD_STATES:{NONE:0,DOMAIN_CARDS_REIMBURSEMENTS_INVESTIGATION:1,DOMAIN_CARDS_RAPID_INCREASE_INVESTIGATION:2,DOMAIN_CARDS_RAPID_INCREASE_CLEARED:3,DOMAIN_CARDS_RAPID_INCREASE_CONFIRMED:4,INDIVIDUAL_CARD_RAPID_INCREASE_INVESTIGATION:5,INDIVIDUAL_CARD_RAPID_INCREASE_CLEARED:6,INDIVIDUAL_CARD_RAPID_INCREASE_CONFIRMED:7,SUSPICIOUS_PAN_ENTRY:8,SUSPICIOUS_PAN_ENTRY_CLEARED:9,SUSPICIOUS_PAN_ENTRY_CONFIRMED:10}},TRAVEL_BOOKING:{OPTIONS:{shortFlightFare:{economy:"Economy",premiumEconomy:"Premium Economy",business:"Business",first:"First"},longFlightFare:{economy:"Economy",premiumEconomy:"Premium Economy",business:"Business",first:"First"},hotelStar:{oneStar:"1",twoStars:"2",threeStars:"3",fourStars:"4",fiveStars:"5"}},DEFAULT_OPTIONS:{shortFlightFare:"economy",longFlightFare:"economy",hotelStar:"fourStars"}},EXPENSIFY_DOMAINS:["expensify.com","expensifail.com","expensicorp.com"],SUBSCRIPTION_CHANGE_REASONS:{TOO_LIMITED:{id:"tooLimited",label:"Functionality needs improvement",prompt:"What software are you migrating to and what led to this decision?"},TOO_EXPENSIVE:{id:"tooExpensive",label:"Too expensive",prompt:"What software are you migrating to and what led to this decision?"},INADEQUATE_SUPPORT:{id:"inadequateSupport",label:"Inadequate customer support",prompt:"What software are you migrating to and what led to this decision?"},BUSINESS_CLOSING:{id:"businessClosing",label:"Company closing, downsizing, or acquired",prompt:"What software are you migrating to and what led to this decision?"}}};var Fp="XN--VERMGENSBERATUNG-PWB|XN--VERMGENSBERATER-CTB|XN--CLCHC0EA0B2G2A9GCD|XN--W4R85EL8FHU5DNRA|TRAVELERSINSURANCE|NORTHWESTERNMUTUAL|XN--XKC2DL3A5EE0H|XN--MGBERP4A5D4AR|XN--MGBAI9AZGQP6J|XN--MGBAH1A3HJKRD|XN--BCK1B9A5DRE4C|XN--5SU34J936BGSG|XN--3OQ18VL8PN36A|XN--XKC2AL3HYE2A|XN--MGBCPQ6GPA1A|XN--MGBA7C0BBN0A|XN--FZYS8D69UVGM|XN--NQV7FS00EMA|XN--MGBC0A9AZCG|XN--MGBAAKC7DVF|XN--MGBA3A4F16A|XN--LGBBAT1AD8J|XN--KCRX77D1X4A|XN--I1B6B1A6A2E|SANDVIKCOROMANT|KERRYPROPERTIES|AMERICANEXPRESS|XN--RVC1E0AM3E|XN--MGBX4CD0AB|XN--MGBI4ECEXP|XN--MGBCA7DZDO|XN--MGBBH1A71E|XN--MGBAYH7GPA|XN--MGBAAM7A8H|XN--MGBA3A3EJT|XN--JLQ61U9W7B|XN--JLQ480N2RG|XN--H2BREG3EVE|XN--FIQ228C5HS|XN--B4W605FERD|XN--80AQECDR1A|XN--6QQ986B3XL|XN--54B7FTA0CC|WEATHERCHANNEL|KERRYLOGISTICS|COOKINGCHANNEL|CANCERRESEARCH|BANANAREPUBLIC|AMERICANFAMILY|AFAMILYCOMPANY|XN--YGBI2AMMX|XN--YFRO4I67O|XN--TIQ49XQYJ|XN--H2BRJ9C8C|XN--FZC2C9E2C|XN--FPCRJ9C3D|XN--ECKVDTC9D|XN--CCKWCXETD|WOLTERSKLUWER|TRAVELCHANNEL|SPREADBETTING|LIFEINSURANCE|INTERNATIONAL|XN--QCKA1PMC|XN--OGBPF8FL|XN--NGBE9E0A|XN--NGBC5AZD|XN--MK1BU44C|XN--MGBT3DHD|XN--MGBPL2FH|XN--MGBGU82A|XN--MGBAB2BD|XN--MGB9AWBF|XN--GCKR3F0F|XN--8Y0A063A|XN--80ASEHDB|XN--80ADXHKS|XN--4DBRK0CE|XN--45BR5CYL|XN--3E0B707E|VERSICHERUNG|SCHOLARSHIPS|LPLFINANCIAL|CONSTRUCTION|XN--ZFR164B|XN--XHQ521B|XN--W4RS40L|XN--VUQ861B|XN--T60B56A|XN--SES554G|XN--S9BRJ9C|XN--ROVU88B|XN--RHQV96G|XN--Q9JYB4C|XN--PGBS0DH|XN--OTU796D|XN--NYQY26A|XN--MIX891F|XN--MGBTX2B|XN--MGBBH1A|XN--KPRY57D|XN--KPRW13D|XN--JVR189M|XN--J6W193G|XN--IMR513N|XN--HXT814E|XN--H2BRJ9C|XN--GK3AT1E|XN--GECRJ9C|XN--G2XX48C|XN--FLW351E|XN--FJQ720A|XN--FCT429K|XN--EFVY88H|XN--D1ACJ3B|XN--CZR694B|XN--CCK2B3B|XN--9KRT00A|XN--80AO21A|XN--6FRZ82G|XN--55QW42G|XN--45BRJ9C|XN--42C2D9A|XN--3HCRJ9C|XN--3DS443G|XN--3BST00M|XN--2SCRJ9C|XN--1QQW23A|XN--1CK2E1B|XN--11B4C3D|WILLIAMHILL|REDUMBRELLA|PROGRESSIVE|PRODUCTIONS|PLAYSTATION|PHOTOGRAPHY|OLAYANGROUP|MOTORCYCLES|LAMBORGHINI|KERRYHOTELS|INVESTMENTS|FOODNETWORK|ENTERPRISES|ENGINEERING|CREDITUNION|CONTRACTORS|CALVINKLEIN|BRIDGESTONE|BLOCKBUSTER|BLACKFRIDAY|BARCLAYCARD|ACCOUNTANTS|XN--Y9A3AQ|XN--WGBL6A|XN--WGBH1C|XN--UNUP4Y|XN--Q7CE6A|XN--PSSY2U|XN--O3CW4H|XN--MXTQ1M|XN--KPUT3I|XN--IO0A7I|XN--FIQZ9S|XN--FIQS8S|XN--FIQ64B|XN--CZRU2D|XN--CZRS0T|XN--CG4BKI|XN--C2BR7G|XN--9ET52U|XN--9DBQ2A|XN--90A3AC|XN--80ASWG|XN--5TZM5G|XN--55QX5D|XN--4GBRIM|XN--45Q11C|XN--3PXU8K|XN--30RR7Y|VOLKSWAGEN|VLAANDEREN|UNIVERSITY|TECHNOLOGY|TATAMOTORS|SWIFTCOVER|SCHAEFFLER|RESTAURANT|REPUBLICAN|REALESTATE|PRUDENTIAL|PROTECTION|PROPERTIES|ONYOURSIDE|NEXTDIRECT|NATIONWIDE|MITSUBISHI|MANAGEMENT|INDUSTRIES|IMMOBILIEN|HEALTHCARE|FOUNDATION|EXTRASPACE|EUROVISION|CUISINELLA|CREDITCARD|CONSULTING|CAPITALONE|BOEHRINGER|BNPPARIBAS|BASKETBALL|ASSOCIATES|APARTMENTS|ACCOUNTANT|YODOBASHI|XN--VHQUV|XN--TCKWE|XN--QXA6A|XN--P1ACF|XN--NQV7F|XN--NGBRX|XN--L1ACC|XN--J1AMH|XN--J1AEF|XN--FHBEI|XN--E1A4C|XN--D1ALF|XN--C1AVG|XN--90AIS|VACATIONS|TRAVELERS|STOCKHOLM|STATEFARM|STATEBANK|SOLUTIONS|SHANGRILA|SCJOHNSON|RICHARDLI|PRAMERICA|PASSAGENS|PANASONIC|MICROSOFT|MELBOURNE|MARSHALLS|MARKETING|LIFESTYLE|LANDROVER|LANCASTER|KUOKGROUP|INSURANCE|INSTITUTE|HOMESENSE|HOMEGOODS|HOMEDEPOT|HISAMITSU|GOLDPOINT|FURNITURE|FUJIXEROX|FRONTDOOR|FRESENIUS|FIRESTONE|FINANCIAL|FAIRWINDS|EQUIPMENT|EDUCATION|DIRECTORY|COMMUNITY|CHRISTMAS|BLOOMBERG|BARCELONA|AQUARELLE|ANALYTICS|AMSTERDAM|ALLFINANZ|ALFAROMEO|ACCENTURE|YOKOHAMA|XN--QXAM|XN--P1AI|XN--NODE|XN--90AE|WOODSIDE|VERISIGN|VENTURES|VANGUARD|TRAINING|SUPPLIES|STCGROUP|SOFTWARE|SOFTBANK|SHOWTIME|SHOPPING|SERVICES|SECURITY|SAMSCLUB|SAARLAND|RELIANCE|REDSTONE|PROPERTY|PLUMBING|PICTURES|PHARMACY|PARTNERS|OBSERVER|MORTGAGE|MERCKMSD|MEMORIAL|MCKINSEY|MASERATI|MARRIOTT|LUNDBECK|LIGHTING|JPMORGAN|ISTANBUL|IPIRANGA|INFINITI|HOSPITAL|HOLDINGS|HELSINKI|HDFCBANK|GUARDIAN|GRAPHICS|GRAINGER|GOODYEAR|FRONTIER|FOOTBALL|FIRMDALE|FIDELITY|FEEDBACK|EXCHANGE|ETISALAT|ERICSSON|ENGINEER|DOWNLOAD|DISCOVER|DISCOUNT|DIAMONDS|DEMOCRAT|DELOITTE|DELIVERY|COMPUTER|COMMBANK|CLOTHING|CLINIQUE|CLEANING|CITYEATS|CIPRIANI|CATHOLIC|CATERING|CAPETOWN|BUSINESS|BUILDERS|BUDAPEST|BRUSSELS|BROADWAY|BRADESCO|BOUTIQUE|BASEBALL|BARGAINS|BAREFOOT|BARCLAYS|ATTORNEY|ALLSTATE|AIRFORCE|ABUDHABI|ZUERICH|YOUTUBE|YAMAXUN|XFINITY|WINNERS|WINDOWS|WHOSWHO|WEDDING|WEBSITE|WEATHER|WATCHES|WANGGOU|WALMART|TRADING|TOSHIBA|TIFFANY|TICKETS|THEATRE|THEATER|TEMASEK|SYSTEMS|SURGERY|SUPPORT|STORAGE|STAPLES|SINGLES|SHIKSHA|SCIENCE|SCHWARZ|SCHMIDT|SANDVIK|SAMSUNG|REXROTH|REVIEWS|RENTALS|RECIPES|REALTOR|POLITIE|PIONEER|PHILIPS|ORIGINS|ORGANIC|OLDNAVY|OKINAWA|NEUSTAR|NETWORK|NETFLIX|NETBANK|MONSTER|MARKETS|LINCOLN|LIMITED|LECLERC|LATROBE|LASALLE|LANXESS|LACAIXA|KOMATSU|KITCHEN|JUNIPER|JEWELRY|ISMAILI|HYUNDAI|HOTMAIL|HOTELES|HOSTING|HOLIDAY|HITACHI|HANGOUT|HAMBURG|GUITARS|GROCERY|GODADDY|GENTING|GALLERY|FUJITSU|FROGANS|FORSALE|FLOWERS|FLORIST|FLIGHTS|FITNESS|FISHING|FINANCE|FERRERO|FERRARI|FASHION|FARMERS|EXPRESS|EXPOSED|DOMAINS|DIGITAL|DENTIST|CRUISES|CRICKET|COURSES|COUPONS|COUNTRY|CORSICA|COOKING|CONTACT|COMPARE|COMPANY|COMCAST|COLOGNE|COLLEGE|CLUBMED|CITADEL|CHINTAI|CHARITY|CHANNEL|CAREERS|CARAVAN|CAPITAL|BUGATTI|BROTHER|BOOKING|BESTBUY|BENTLEY|BAUHAUS|BANAMEX|AVIANCA|AUSPOST|AUDIBLE|AUCTION|ATHLETA|ANDROID|ALIBABA|AGAKHAN|ACADEMY|ABOGADO|ZAPPOS|YANDEX|YACHTS|XIHUAN|WEBCAM|WALTER|VUELOS|VOYAGE|VOTING|VISION|VIRGIN|VILLAS|VIKING|VIAJES|UNICOM|TRAVEL|TOYOTA|TKMAXX|TJMAXX|TIENDA|TENNIS|TATTOO|TARGET|TAOBAO|TAIPEI|SYDNEY|SWATCH|SUZUKI|SUPPLY|STUDIO|STREAM|SOCIAL|SOCCER|SHOUJI|SELECT|SECURE|SEARCH|SCHULE|SCHOOL|SANOFI|SAKURA|SAFETY|RYUKYU|ROGERS|ROCHER|REVIEW|REPORT|REPAIR|REISEN|REALTY|RACING|QUEBEC|PICTET|PHYSIO|PHOTOS|PFIZER|OTSUKA|ORANGE|ORACLE|ONLINE|OLAYAN|OFFICE|NOWRUZ|NORTON|NISSAY|NISSAN|NATURA|NAGOYA|MUTUAL|MUSEUM|MOSCOW|MORMON|MONASH|MOBILE|MATTEL|MARKET|MAKEUP|MAISON|MADRID|LUXURY|LONDON|LOCKER|LIVING|LEFRAK|LAWYER|LATINO|LANCIA|KOSHER|KINDLE|KINDER|KAUFEN|JUEGOS|JOBURG|JAGUAR|INTUIT|INSURE|IMAMAT|HUGHES|HOTELS|HOCKEY|HIPHOP|HERMES|HEALTH|GRATIS|GOOGLE|GLOBAL|GIVING|GEORGE|GARDEN|GALLUP|FUTBOL|FLICKR|FAMILY|EXPERT|EVENTS|ESTATE|ENERGY|EMERCK|DURBAN|DUPONT|DUNLOP|DOCTOR|DIRECT|DESIGN|DENTAL|DEGREE|DEALER|DATSUN|DATING|CRUISE|CREDIT|COUPON|CONDOS|COMSEC|COFFEE|CLINIC|CLAIMS|CIRCLE|CHURCH|CHROME|CHANEL|CENTER|CASINO|CAREER|CAMERA|BROKER|BOSTON|BOSTIK|BHARTI|BERLIN|BEAUTY|BAYERN|AUTHOR|ARAMCO|ANQUAN|AMAZON|ALSTOM|ALSACE|ALIPAY|AIRTEL|AIRBUS|AGENCY|AFRICA|ABBVIE|ABBOTT|ABARTH|YAHOO|XEROX|WORLD|WORKS|WEIBO|WEBER|WATCH|WALES|VOLVO|VODKA|VIDEO|VEGAS|UBANK|TUSHU|TUNES|TRUST|TRADE|TOURS|TOTAL|TORAY|TOOLS|TOKYO|TODAY|TMALL|TIROL|TIRES|TATAR|SWISS|SUCKS|STYLE|STUDY|STORE|STADA|SPORT|SPACE|SOLAR|SMILE|SMART|SLING|SKYPE|SHOES|SHELL|SHARP|SEVEN|SENER|SALON|RUGBY|RODEO|ROCKS|RICOH|REISE|REHAB|RADIO|QUEST|PROMO|PRIME|PRESS|PRAXI|POKER|PLACE|PIZZA|PHOTO|PHONE|PARTY|PARTS|PARIS|OSAKA|OMEGA|NOWTV|NOKIA|NINJA|NIKON|NEXUS|MOVIE|MONEY|MIAMI|MEDIA|MANGO|MACYS|LOTTO|LOTTE|LOCUS|LOANS|LIXIL|LIPSY|LINDE|LILLY|LEXUS|LEGAL|LEASE|LAMER|KYOTO|KOELN|JETZT|IVECO|IRISH|IKANO|HYATT|HOUSE|HORSE|HONDA|HOMES|GUIDE|GUCCI|GROUP|GRIPE|GREEN|GMAIL|GLOBO|GLASS|GLADE|GIVES|GIFTS|GAMES|GALLO|FORUM|FOREX|FINAL|FEDEX|FAITH|EPSON|EMAIL|EDEKA|EARTH|DUBAI|DRIVE|DELTA|DEALS|DANCE|DABUR|CYMRU|CROWN|CODES|COACH|CLOUD|CLICK|CITIC|CISCO|CHEAP|CHASE|CARDS|CANON|BUILD|BOSCH|BOATS|BLACK|BINGO|BIBLE|BEATS|BAIDU|AZURE|AUTOS|AUDIO|ARCHI|APPLE|AMICA|AMFAM|AETNA|ADULT|ACTOR|ZONE|ZERO|ZARA|YOGA|XBOX|WORK|WINE|WIKI|WIEN|WEIR|WANG|VOTO|VOTE|VIVO|VIVA|VISA|VANA|TUBE|TOYS|TOWN|TIPS|TIAA|TEVA|TECH|TEAM|TAXI|TALK|SURF|STAR|SPOT|SONY|SONG|SOHU|SNCF|SKIN|SITE|SINA|SILK|SHOW|SHOP|SHIA|SHAW|SEXY|SEEK|SEAT|SCOT|SAXO|SAVE|SARL|SALE|SAFE|RUHR|RSVP|ROOM|RMIT|RICH|REST|RENT|REIT|READ|RAID|QPON|PROF|PROD|POST|PORN|POHL|PLUS|PLAY|PINK|PING|PICS|PCCW|PARS|PAGE|OPEN|OLLO|NIKE|NICO|NEXT|NEWS|NAVY|NAME|MOTO|MODA|MOBI|MINT|MINI|MENU|MEME|MEET|MAIF|LUXE|LTDA|LOVE|LOFT|LOAN|LIVE|LINK|LIMO|LIKE|LIFE|LIDL|LGBT|LEGO|LAND|KRED|KPMG|KIWI|KDDI|JPRS|JOBS|JEEP|JAVA|ITAU|INFO|IMMO|IMDB|IEEE|ICBC|HSBC|HOST|HGTV|HERE|HELP|HDFC|HAUS|HAIR|GURU|GUGE|GOOG|GOLF|GOLD|GMBH|GIFT|GGEE|GENT|GBIZ|GAME|FUND|FREE|FORD|FOOD|FLIR|FISH|FIRE|FILM|FIDO|FIAT|FAST|FARM|FANS|FAIL|FAGE|ERNI|DVAG|DUCK|DOCS|DISH|DIET|DESI|DELL|DEAL|DCLK|DATE|DATA|CYOU|COOP|COOL|CLUB|CITY|CITI|CHAT|CERN|CBRE|CASH|CASE|CASA|CARS|CARE|CAMP|CALL|CAFE|BUZZ|BOOK|BOND|BOFA|BLUE|BLOG|BING|BIKE|BEST|BEER|BBVA|BANK|BAND|BABY|AUTO|AUDI|ASIA|ASDA|ARTE|ARPA|ARMY|ARAB|AMEX|ALLY|AKDN|AERO|ADAC|ABLE|AARP|ZIP|YUN|YOU|XYZ|XXX|XIN|WTF|WTC|WOW|WME|WIN|WED|VIP|VIN|VIG|VET|UPS|UOL|UNO|UBS|TVS|TUI|TRV|TOP|TJX|THD|TEL|TDK|TCI|TAX|TAB|STC|SRL|SPA|SOY|SKY|SKI|SFR|SEX|SEW|SES|SCB|SCA|SBS|SBI|SAS|SAP|RWE|RUN|RIP|RIO|RIL|REN|RED|QVC|PWC|PUB|PRU|PRO|PNC|PIN|PID|PHD|PET|PAY|OVH|OTT|ORG|OOO|ONL|ONG|ONE|OFF|OBI|NYC|NTT|NRW|NRA|NOW|NHK|NGO|NFL|NEW|NET|NEC|NBA|NAB|MTR|MTN|MSD|MOV|MOM|MOI|MOE|MMA|MLS|MLB|MIT|MIL|MEN|MED|MBA|MAP|MAN|LTD|LPL|LOL|LLP|LLC|LDS|LAW|LAT|KRD|KPN|KIM|KIA|KFH|JOY|JOT|JNJ|JMP|JLL|JIO|JCB|ITV|IST|INT|INK|ING|INC|IFM|ICU|ICE|IBM|HOW|HOT|HKT|HIV|HBO|GOV|GOT|GOP|GOO|GMX|GMO|GLE|GEA|GDN|GAY|GAP|GAL|FYI|FUN|FTR|FRL|FOX|FOO|FLY|FIT|FAN|EUS|ESQ|EDU|ECO|EAT|DVR|DTV|DOT|DOG|DNP|DIY|DHL|DEV|DDS|DAY|DAD|CSC|CRS|CPA|COM|CFD|CFA|CEO|CBS|CBN|CBA|CAT|CAR|CAM|CAL|CAB|BZH|BUY|BOX|BOT|BOO|BOM|BMW|BMS|BIZ|BIO|BID|BET|BCN|BCG|BBT|BBC|BAR|AXA|AWS|ART|APP|AOL|ANZ|AIG|AFL|AEG|ADS|ACO|ABC|ABB|AAA|ZW|ZM|ZA|YT|YE|WS|WF|VU|VN|VI|VG|VE|VC|VA|UZ|UY|US|UK|UG|UA|TZ|TW|TV|TT|TR|TO|TN|TM|TL|TK|TJ|TH|TG|TF|TD|TC|SZ|SY|SX|SV|SU|ST|SS|SR|SO|SN|SM|SL|SK|SJ|SI|SH|SG|SE|SD|SC|SB|SA|RW|RU|RS|RO|RE|QA|PY|PW|PT|PS|PR|PN|PM|PL|PK|PH|PG|PF|PE|PA|OM|NZ|NU|NR|NP|NO|NL|NI|NG|NF|NE|NC|NA|MZ|MY|MX|MW|MV|MU|MT|MS|MR|MQ|MP|MO|MN|MM|ML|MK|MH|MG|ME|MD|MC|MA|LY|LV|LU|LT|LS|LR|LK|LI|LC|LB|LA|KZ|KY|KW|KR|KP|KN|KM|KI|KH|KG|KE|JP|JO|JM|JE|IT|IS|IR|IQ|IO|IN|IM|IL|IE|ID|HU|HT|HR|HN|HM|HK|GY|GW|GU|GT|GS|GR|GQ|GP|GN|GM|GL|GI|GH|GG|GF|GE|GD|GB|GA|FR|FO|FM|FK|FJ|FI|EU|ET|ES|ER|EG|EE|EC|DZ|DO|DM|DK|DJ|DE|CZ|CY|CX|CW|CV|CU|CR|CO|CN|CM|CL|CK|CI|CH|CG|CF|CD|CC|CA|BZ|BY|BW|BV|BT|BS|BR|BO|BN|BM|BJ|BI|BH|BG|BF|BE|BD|BB|BA|AZ|AX|AW|AU|AT|AS|AR|AQ|AO|AM|AL|AI|AG|AF|AE|AD|AC|SJC|RNO|LAX",ml=Fp;var gl="([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])",Tt="((ht|f)tps?:\\/\\/)",Gp=`${Tt}?((?:www\\.)?[a-z0-9](?:[-a-z0-9]*[a-z0-9])?\\.)+(?:${ml})(?:\\:${gl}|\\b|(?=_))(?!@(?:[a-z\\d-]+\\.)+[a-z]{2,})`,Be=r=>`(?:${r}|&(?:amp|#x27);)`,dl=`(?:${Be("[.,=(+$!*]")}?\\/${Be("[-\\w$@.+!*:(),=%~]")}*${Be("[-\\w~@:%)]")}|\\/)*`,hl=`(?:\\?${Be("[-\\w$@.+!*()\\/,=%{}:;\\[\\]\\|_|~]")}*)?`,El=`(?:#${Be("[-\\w$@.+!*()[\\],=%;\\/:~]")}*)?`,Yr=`((${Gp})${dl}(?:${hl}|${El})*)`,tI=Yr.replace(`${Tt}?`,Tt),kp=`${Tt}([a-z0-9](?:[-a-z0-9]*[a-z0-9])?\\.)*(?:[a-z0-9](?:[-a-z0-9]*[a-z0-9])?)(?:\\:${gl}|\\b|(?=_))`,qa=`((${kp})${dl}(?:${hl}|${El})*)`,bt=`(${qa}|${Yr})`;var Hp=new RegExp(`@${C.SMS.DOMAIN}`,"gi"),Xp={endsWith(r,e){return!r||!e?!1:r.substr(-e.length)===e},fromUSDToNumber(r,e){let t=String(r).replace(/[^\d.\-()]+/g,"");return t.match(/\(.*\)/)&&(t=`-${t.replace(/[()]/g,"")}`),t=Number(t)*100,t=Math.round(t*1e3)/1e3,e?t:Math.round(t)},truncateInMiddle(r,e){if(r.length<=e)return r;let t="...",o=(e-t.length)/2,a=r.substr(0,Math.ceil(o)),n=r.substr(r.length-Math.floor(o));return a+t+n},nl2br(r){return r.replace(/\n/g,"<br />")},htmlDecode(r){return typeof jQuery<"u"?jQuery("<textarea/>").html(r).text():(0,xt.decode)(r)},htmlEncode(r){return typeof jQuery<"u"?jQuery("<textarea/>").text(r).html():(0,xt.encode)(r)},safeEscape(r){return x.escape(x.unescape(r))},htmlEncodingInsensitiveEquals(r,e){return r===e||this.htmlDecode(r)===e||this.htmlEncode(r)===e},makeID(r){return`id_${String(r).replace(/[^A-Za-z0-9]/g,"_").toUpperCase()}`},extractID(r){let e=r.match(/id[A-Z0-9_]+/);return e.length>0?e[0]:null},recapitalize(r){let e=String(r);if(e.length<=0)return e;e=e.substr(0,1).toUpperCase()+e.substr(1).toLowerCase();function t(o,a,n){return a+n.toUpperCase()}return e.replace(new RegExp("([^A-Za-z'.0-9])([a-z])","g"),t)},sanitizeToAlphaNumeric(r){return String(r).replace(/[^\d\w]/g,"_")},stripNonNumeric(r){return String(r).replace(/[^\d]/g,"")},stripNonASCIICharacters(r){return String(r).replace(/[\u0000-\u0019\u0080-\uffff]/g,"")},shortenText(r,e){let t=String(r).replace(/\s+/g," "),o=t.substr(0,e-3);return t.length>e?`${o}...`:t},getRawByteSize(r){let t=String(r).charCodeAt();return t<128?1:t<2048?2:t<65536?3:t<1<<21?4:t<1<<26?5:t<1<<31?6:Number.NaN},getByteLength(r){let e=String(r),t=0;for(let o=0;o<e.length;o++)t+=this.getRawByteSize(e[o]);return t},shortenByByte(r,e){let t=String(r),o=0;for(let a=0;a<t.length;a++){let n=this.getRawByteSize(t[a]);if(n+o>e)return`${t.substr(0,a-3)}...`;o+=n}return t},startsWith(r,e){return this.isString(r)&&this.isString(e)&&r.substring(0,e.length)===e},stripHTML(r){return this.isString(r)?r.replace(/<[^>]*>?/gm,""):""},UCFirst(r){return r.substr(0,1).toUpperCase()+r.substr(1)},cutAfter(r,e){let t=r.indexOf(e);return t!==-1?r.substring(0,t):r},cutBefore(r,e){let t=r.indexOf(e);return t!==-1?r.substring(t+e.length):r},isValidDomainName(r){return!!String(r).match(C.REG_EXP.DOMAIN)},isValidURL(r){return!!String(r).match(C.REG_EXP.HYPERLINK)},isValidEmail(r){return!!String(r).match(C.REG_EXP.EMAIL)},isValidEmailMarkdown(r){return!!String(r).match(`^${C.REG_EXP.MARKDOWN_EMAIL}$`)},removeTrailingComma(r){return r.trim().replace(/(,$)/g,"")},areValidEmails(r){let e=this.removeTrailingComma(r);if(e==="")return!0;let t=e.split(","),o=!0;for(let a=0;a<t.length;a+=1)this.isValidEmail(t[a].trim())||(o=!1);return o},extractEmail(r){return String(r).match(C.REG_EXP.EMAIL_SEARCH)},extractEmailDomain(r){return this.cutBefore(r,"@")},extractCompanyNameFromEmailDomain(r){let e=this.extractEmailDomain(r);if(!e)return null;let t=e.split(".");return t.length?t[0]:null},extractEmailLocalPart(r){return this.cutAfter(r,"@")},sanitizePhoneNumber(r){let e=r.replace(/(?!^\+)\D/g,"");return e.length<=15&&e.length>=10?e:null},sanitizeEmail(r){let e=r.toLowerCase().trim();return C.REG_EXP.EMAIL.test(e)?e:null},escapeForRegExp(r){return r.replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&")},escapeForExpenseRule(r){return r.replace(/[-[\]/{}()*+?\\^$|]/g,"\\$&")},addBackslashBeforeColonsForTagNamesComingFromQBD(r){return r.replace(/([^\\]):/g,"$1\\:")},stripBackslashes(r){return r.replace(/\\/g,"")},isOfLength(r,e,t){return!(!this.isString(r)||r.length<e||!this.isUndefined(t)&&r.length>t)},occurences(r,e,t){let o=0,a=0,n=String(r),i=String(e);if(i.length<=0)return n.length+1;let s=t?1:i.length;for(;a>=0;)a=n.indexOf(i,a),a>=0&&(o+=1,a+=s);return o},ucwords(r){return String(r).replace(/^([a-z\u00E0-\u00FC])|\s+([a-z\u00E0-\u00FC])/g,e=>e.toUpperCase())},contains(r,e){return r.indexOf(e)!==-1},caseInsensitiveContains(r,e){return this.contains(r.toLowerCase(),e.toLowerCase())},caseInsensitiveCompare(r,e){let t=r.toLocaleLowerCase(),o=e.toLocaleLowerCase();return this.compare(t,o)},caseInsensitiveEquals(r,e){return this.caseInsensitiveCompare(r,e)===0},compare(r,e){return r<e?-1:r>e?1:0},isFileExtensionSmartReportsValid(r){let e=["xls","xlsx","xlsm","xltm"],t=r.split(".").pop().toLowerCase();return e.indexOf(t)>-1},maskPAN(r){let e=String(r),t=e.length;if(t<6||t>20)return this.maskFirstNCharacters(e,t,"X");if(t<14)return this.maskFirstNCharacters(e,t-4,"X");let o=e.substr(0,6),a=e.substr(7),n=this.maskFirstNCharacters(a,t-11,"X");return`${o}${n}`},isString(r){return this.isTypeOf(r,"String")},isNumber(r){return this.isTypeOf(r,"Number")},isTypeOf(r,e){return Object.prototype.toString.call(r)===`[object ${e}]`},isUndefined(r){return r===void 0},maskFirstNCharacters(r,e,t){return!this.isString(r)||!this.isString(t)||r.length===0||!this.isNumber(e)?r:r.substring(0,e).replace(/./g,t)+r.substring(e)},trim(r){return $.trim(r)},percentageStringToNumber(r){return Number(this.cutAfter(r,"%"))},removeSpaces(r){return String(r).replace(" ","")},pluralize(r,e,t){return!t||t>1?e:r},isEncryptedCardNumber(r){return/^[\da-fA-F]+$/.test(r)?r.length%32===0:/^[vV][\d]+:[\da-fA-F]+$/.test(r)?r.split(":")[1].length%32===0:!1},toBool(r){return this.isString(r)?r.toLowerCase()==="true":!!r},maskedEquals(r,e,t){let o=r.match(/.{1,1}/g),a=e.match(/.{1,1}/g),n=t||"X";if(o.length!==a.length)return!1;for(let i=0;i<o.length;i+=1)if(o[i]!==a[i]&&o[i]!==n&&a[i]!==n)return!1;return!0},boldify(r,e){return r.replace(e,"<strong>$1</strong>")},isValidPhone(r){return C.SMS.E164_REGEX.test(r)},isValidMention(r){if(/[\s@]/g.test(r.charAt(0)))return!0;let e=r.charAt(0),t=r.charAt(r.length-1);return/[*~_'"]/g.test(e)&&/[*~_'"]/g.test(t)&&e===t},removeSMSDomain(r){return r.replace(Hp,"")},isSMSLogin(r){return this.isValidPhone(this.removeSMSDomain(r))},matchAll(r,e){let t=[];return r.replace(e,(...o)=>{let a=Array.prototype.slice.call(o,0,-2);a.input=o[o.length-1],a.index=o[o.length-2],t.push(a)}),t},guid(r=""){function e(){return Math.floor((1+Math.random())*65536).toString(16).substring(1)}return`${r}${e()}${e()}-${e()}-${e()}-${e()}-${e()}${e()}${e()}`},normalizeUrl(r){return typeof r=="string"&&r.startsWith("/")?r:`/${r}`},sanitizeURL(r){let t=new RegExp(`^${Yr}$`,"i").exec(r);return t?(t[3]?t[2]:`https://${t[2]}`).toLowerCase()+this.cutBefore(t[1],t[2]):r},result(r,...e){return x.isFunction(r)?r(...e):r},getExtension(r){return x.first(x.last(r.split(".")).split("?")).toLowerCase()},isPDF(r){return this.getExtension(r)==="pdf"},isImage(r){return x.contains(["jpeg","jpg","gif","png","bmp","webp"],this.getExtension(r))},isDomainEmail(r){return this.startsWith(r,"+@")},replaceAll(r,e,t){return(0,Al.default)(r,e,t)}},G=Xp;var $p=new RegExp(`\\[([^\\][]*(?:\\[[^\\][]*][^\\][]*)*)]\\(${bt}\\)(?![^<]*(<\\/pre>|<\\/code>))`,"gi"),Pa='<span class="c-mrkdwn__br" data-stringify-type="paragraph-break" style="box-sizing: inherit; display: block; height: unset;"></span>',Ba={initializer(){this.rules=[{name:"codeFence",regex:/(```[\n]?)((?:\s*?(?![\n]?```(?!`))[\S])+\s*?)((?=\n?)```)/g,replacement:(r,e,t)=>`<pre>${t.replace(/(?:(?![\n\r])\s)/g," ")}</pre>`,rawInputReplacement:(r,e,t)=>{let o=r.replace(/(?:```)([\s\S]*?)(?:```)/g,"$1"),a=t.replace(/(?:(?![\n\r])\s)/g," ");return`<pre data-code-raw="${x.escape(o)}">${a}</pre>`}},{name:"inlineCodeBlock",regex:/(\B|_|)`(?:(?!(?:(?!`).)*?<pre>))(.*?\S.*?)`(\B|_|)(?!`|[^<]*<\/pre>)/g,replacement:(r,e,t,o)=>/^[`]+$/i.test(t)?r:`${e}<code>${t}</code>${o}`},{name:"email",process:(r,e,t)=>{let o=new RegExp(`(?!\\[\\s*\\])\\[([^[\\]]*)]\\((mailto:)?${C.REG_EXP.MARKDOWN_EMAIL}\\)`,"gim");return this.modifyTextForEmailLinks(o,r,e,t)},replacement:(r,e,t)=>{if(e.match(C.REG_EXP.EMOJIS)||!e.trim())return r;let o=e.trim(),a=`mailto:${t}`;return`<a href="${a}">${o===a?t:o}</a>`},rawInputReplacement:(r,e,t,o)=>{if(e.match(C.REG_EXP.EMOJIS)||!e.trim())return r;let a=t?t+o:o;return`<a href="${`mailto:${o}`}" data-raw-href="${a}" data-link-variant="labeled">${e}</a>`}},{name:"heading1",process:(r,e,t=!1)=>{let o=t?/^# ( *(?! )(?:(?!<pre>|\n|\r\n).)+)/gm:/^# +(?! )((?:(?!<pre>|\n|\r\n).)+)/gm;return r.replace(o,e)},replacement:"<h1>$1</h1>"},{name:"link",process:(r,e)=>this.modifyTextForUrlLinks($p,r,e),replacement:(r,e,t)=>e.match(C.REG_EXP.EMOJIS)||!e.trim()?r:`<a href="${G.sanitizeURL(t)}" target="_blank" rel="noreferrer noopener">${e.trim()}</a>`,rawInputReplacement:(r,e,t)=>e.match(C.REG_EXP.EMOJIS)||!e.trim()?r:`<a href="${G.sanitizeURL(t)}" data-raw-href="${t}" data-link-variant="labeled" target="_blank" rel="noreferrer noopener">${e.trim()}</a>`},{name:"hereMentions",regex:/([a-zA-Z0-9.!$%&+/=?^`{|}_-]?)(@here)([.!$%&+/=?^`{|}_-]?)(?=\b)(?!([\w'#%+-]*@(?:[a-z\d-]+\.)+[a-z]{2,}(?:\s|$|@here))|((?:(?!<a).)+)?<\/a>|[^<]*(<\/pre>|<\/code>))/gm,replacement:(r,e,t,o)=>G.isValidMention(r)?`${e}<mention-here>${t}</mention-here>${o}`:r},{name:"userMentions",regex:new RegExp(`(@here|[a-zA-Z0-9.!$%&+=?^\`{|}-]?)(@${C.REG_EXP.EMAIL_PART})(?!((?:(?!<a).)+)?<\\/a>|[^<]*(<\\/pre>|<\\/code>))`,"gim"),replacement:(r,e,t)=>G.isValidMention(r)?`${e}<mention-user>${t}</mention-user>`:r},{name:"hereMentionAfterUserMentions",regex:/(<\/mention-user>)(@here)(?=\b)/gm,replacement:"$1<mention-here>$2</mention-here>"},{name:"autolink",process:(r,e)=>{let t=new RegExp(`(?![^<]*>|[^<>]*<\\/(?!h1>))([_*~]*?)${bt}\\1(?!((?:(?!<a).)+)?<\\/a>|[^<]*(<\\/pre>|<\\/code>))`,"gi");return this.modifyTextForUrlLinks(t,r,e)},replacement:(r,e,t)=>{let o=G.sanitizeURL(t);return`${e}<a href="${o}" target="_blank" rel="noreferrer noopener">${t}</a>${e}`},rawInputReplacement:(r,e,t)=>{let o=G.sanitizeURL(t);return`${e}<a href="${o}" data-raw-href="${t}" data-link-variant="auto" target="_blank" rel="noreferrer noopener">${t}</a>${e}`}},{name:"quote",process:(r,e,t=!1)=>{let o=new RegExp(/^> *(?! )(?![^<]*(?:<\/pre>|<\/code>))([^\v\n\r]+)/gm);return t?r.replace(o,a=>e(a,t)):this.modifyTextForQuote(o,r,e)},replacement:(r,e=!1)=>{let t=!1,o=r.replace(/^>( )?/gm,(n,i)=>(t=!!i,"")),a=this.replace(o,{filterRules:["heading1"],shouldEscapeText:!1,shouldKeepRawInput:e});return`<blockquote>${t?" ":""}${a}</blockquote>`}},{name:"italic",regex:/(\b_+|\b)(?!_blank")_((?![\s_])[\s\S]*?[^\s_])_(?![^\W_])(?![^<]*(<\/pre>|<\/code>|<\/a>|<\/mention-user>|_blank))/g,replacement:(r,e,t)=>t.includes("<pre>")||this.containsNonPairTag(t)?r:String(t).match(`^${C.REG_EXP.MARKDOWN_EMAIL}`)?`<em>${e}${t}</em>`:`${e}<em>${t}</em>`},{name:"autoEmail",regex:new RegExp(`([^\\w'#%+-]|^)${C.REG_EXP.MARKDOWN_EMAIL}(?!((?:(?!<a).)+)?<\\/a>|[^<>]*<\\/(?!em|h1|blockquote))`,"gim"),replacement:'$1<a href="mailto:$2">$2</a>',rawInputReplacement:'$1<a href="mailto:$2" data-raw-href="$2" data-link-variant="auto">$2</a>'},{name:"bold",regex:/\B\*((?![\s*])[\s\S]*?[^\s*])\*\B(?![^<]*(<\/pre>|<\/code>|<\/a>))/g,replacement:(r,e)=>e.includes("<pre>")||this.containsNonPairTag(e)?r:`<strong>${e}</strong>`},{name:"strikethrough",regex:/\B~((?![\s~])[\s\S]*?[^\s~])~\B(?![^<]*(<\/pre>|<\/code>|<\/a>))/g,replacement:(r,e)=>e.includes("<pre>")||this.containsNonPairTag(e)?r:`<del>${e}</del>`},{name:"newline",regex:/\r?\n/g,replacement:"<br />"},{name:"replacepre",regex:/<\/pre>\s*<br\s*[/]?>/gi,replacement:"</pre>"},{name:"replaceh1br",regex:/<\/h1><br\s*[/]?>/gi,replacement:"</h1>"}],this.htmlToMarkdownRules=[{name:"replacepre",regex:/<\/pre>(.)/gi,replacement:"</pre><br />$1"},{name:"exclude",regex:new RegExp([`<(script|style)(?:"[^"]*"|'[^']*'|[^'">])*>([\\s\\S]*?)<\\/\\1>`,`(?![^<]*(<\\/pre>|<\\/code>))( +`+n+"}",l}function io(r,e,t){e=W(e);var o=e.length;if(!o)return S(t)?t.call(r):t;for(var a=0;a<o;a++){var n=r?.[e[a]];n===void 0&&(n=t,a=o),r=S(n)?n.call(r):n}return r}var Gl=0;function so(r){var e=++Gl+"";return r?r+e:e}function lo(r){var e=d(r);return e._chain=!0,e}function ue(r,e,t,o,a){if(!(o instanceof e))return r.apply(t,a);var n=ne(r.prototype),i=r.apply(n,a);return P(i)?i:n}var co=v(function(r,e){var t=co.placeholder,o=function(){for(var a=0,n=e.length,i=Array(n),s=0;s<n;s++)i[s]=e[s]===t?arguments[a++]:e[s];for(;a<arguments.length;)i.push(arguments[a++]);return ue(r,o,this,this,i)};return o});co.placeholder=d;var tr=co;var Ze=v(function(r,e,t){if(!S(r))throw new TypeError("Bind must be called on a function");var o=v(function(a){return ue(r,o,e,this,t.concat(a))});return o});var R=re(I);function _(r,e,t,o){if(o=o||[],!e&&e!==0)e=1/0;else if(e<=0)return o.concat(r);for(var a=o.length,n=0,i=I(r);n<i;n++){var s=r[n];if(R(s)&&(U(s)||Tr(s)))if(e>1)_(s,e-1,t,o),a=o.length;else for(var l=0,c=s.length;l<c;)o[a++]=s[l++];else t||(o[a++]=s)}return o}var gn=v(function(r,e){e=_(e,!1,!1);var t=e.length;if(t<1)throw new Error("bindAll must be passed function names");for(;t--;){var o=e[t];r[o]=Ze(r[o],r)}return r});function uo(r,e){var t=function(o){var a=t.cache,n=""+(e?e.apply(this,arguments):o);return w(a,n)||(a[n]=r.apply(this,arguments)),a[n]};return t.cache={},t}var Qe=v(function(r,e,t){return setTimeout(function(){return r.apply(null,t)},e)});var dn=tr(Qe,d,1);function po(r,e,t){var o,a,n,i,s=0;t||(t={});var l=function(){s=t.leading===!1?0:er(),o=null,i=r.apply(a,n),o||(a=n=null)},c=function(){var p=er();!s&&t.leading===!1&&(s=p);var u=e-(p-s);return a=this,n=arguments,u<=0||u>e?(o&&(clearTimeout(o),o=null),s=p,i=r.apply(a,n),o||(a=n=null)):!o&&t.trailing!==!1&&(o=setTimeout(l,u)),i};return c.cancel=function(){clearTimeout(o),s=0,o=a=n=null},c}function fo(r,e,t){var o,a,n,i,s,l=function(){var p=er()-a;e>p?o=setTimeout(l,e-p):(o=null,t||(i=r.apply(s,n)),o||(n=s=null))},c=v(function(p){return s=this,n=p,a=er(),o||(o=setTimeout(l,e),t&&(i=r.apply(s,n))),i});return c.cancel=function(){clearTimeout(o),o=n=s=null},c}function mo(r,e){return tr(e,r)}function dr(r){return function(){return!r.apply(this,arguments)}}function go(){var r=arguments,e=r.length-1;return function(){for(var t=e,o=r[e].apply(this,arguments);t--;)o=r[t].call(this,o);return o}}function ho(r,e){return function(){if(--r<1)return e.apply(this,arguments)}}function pe(r,e){var t;return function(){return--r>0&&(t=e.apply(this,arguments)),r<=1&&(e=null),t}}var hn=tr(pe,2);function fe(r,e,t){e=y(e,t);for(var o=h(r),a,n=0,i=o.length;n<i;n++)if(a=o[n],e(r[a],a,r))return a}function me(r){return function(e,t,o){t=y(t,o);for(var a=I(e),n=r>0?0:a-1;n>=0&&n<a;n+=r)if(t(e[n],n,e))return n;return-1}}var Dr=me(1);var je=me(-1);function ge(r,e,t,o){t=y(t,o,1);for(var a=t(e),n=0,i=I(r);n<i;){var s=Math.floor((n+i)/2);t(r[s])<a?n=s+1:i=s}return n}function de(r,e,t){return function(o,a,n){var i=0,s=I(o);if(typeof n=="number")r>0?i=n>=0?n:Math.max(n+s,i):s=n>=0?Math.min(n+1,s):n+s+1;else if(t&&n&&s)return n=t(o,a),o[n]===a?n:-1;if(a!==a)return n=e(J.call(o,i,s),Qr),n>=0?n+i:-1;for(n=r>0?i:s-1;n>=0&&n<s;n+=r)if(o[n]===a)return n;return-1}}var rt=de(1,Dr,ge);var En=de(-1,je);function wr(r,e,t){var o=R(r)?Dr:fe,a=o(r,e,t);if(a!==void 0&&a!==-1)return r[a]}function Eo(r,e){return wr(r,Z(e))}function M(r,e,t){e=z(e,t);var o,a;if(R(r))for(o=0,a=r.length;o<a;o++)e(r[o],o,r);else{var n=h(r);for(o=0,a=n.length;o<a;o++)e(r[n[o]],n[o],r)}return r}function F(r,e,t){e=y(e,t);for(var o=!R(r)&&h(r),a=(o||r).length,n=Array(a),i=0;i<a;i++){var s=o?o[i]:i;n[i]=e(r[s],s,r)}return n}function he(r){var e=function(t,o,a,n){var i=!R(t)&&h(t),s=(i||t).length,l=r>0?0:s-1;for(n||(a=t[i?i[l]:l],l+=r);l>=0&&l<s;l+=r){var c=i?i[l]:l;a=o(a,t[c],c,t)}return a};return function(t,o,a,n){var i=arguments.length>=3;return e(t,z(o,n,4),a,i)}}var et=he(1);var Ao=he(-1);function Y(r,e,t){var o=[];return e=y(e,t),M(r,function(a,n,i){e(a,n,i)&&o.push(a)}),o}function yo(r,e,t){return Y(r,dr(y(e)),t)}function tt(r,e,t){e=y(e,t);for(var o=!R(r)&&h(r),a=(o||r).length,n=0;n<a;n++){var i=o?o[n]:n;if(!e(r[i],i,r))return!1}return!0}function ot(r,e,t){e=y(e,t);for(var o=!R(r)&&h(r),a=(o||r).length,n=0;n<a;n++){var i=o?o[n]:n;if(e(r[i],i,r))return!0}return!1}function B(r,e,t,o){return R(r)||(r=H(r)),(typeof t!="number"||o)&&(t=0),rt(r,e,t)>=0}var An=v(function(r,e,t){var o,a;return S(e)?a=e:(e=W(e),o=e.slice(0,-1),e=e[e.length-1]),F(r,function(n){var i=a;if(!i){if(o&&o.length&&(n=fr(n,o)),n==null)return;i=n[e]}return i==null?i:i.apply(n,t)})});function hr(r,e){return F(r,gr(e))}function vo(r,e){return Y(r,Z(e))}function Ee(r,e,t){var o=-1/0,a=-1/0,n,i;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=R(r)?r:H(r);for(var s=0,l=r.length;s<l;s++)n=r[s],n!=null&&n>o&&(o=n)}else e=y(e,t),M(r,function(c,p,u){i=e(c,p,u),(i>a||i===-1/0&&o===-1/0)&&(o=c,a=i)});return o}function So(r,e,t){var o=1/0,a=1/0,n,i;if(e==null||typeof e=="number"&&typeof r[0]!="object"&&r!=null){r=R(r)?r:H(r);for(var s=0,l=r.length;s<l;s++)n=r[s],n!=null&&n<o&&(o=n)}else e=y(e,t),M(r,function(c,p,u){i=e(c,p,u),(i<a||i===1/0&&o===1/0)&&(o=c,a=i)});return o}var kl=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g;function Ae(r){return r?U(r)?J.call(r):Ir(r)?r.match(kl):R(r)?F(r,mr):H(r):[]}function ye(r,e,t){if(e==null||t)return R(r)||(r=H(r)),r[Cr(r.length-1)];var o=Ae(r),a=I(o);e=Math.max(Math.min(e,a),0);for(var n=a-1,i=0;i<e;i++){var s=Cr(i,n),l=o[i];o[i]=o[s],o[s]=l}return o.slice(0,e)}function Oo(r){return ye(r,1/0)}function No(r,e,t){var o=0;return e=y(e,t),hr(F(r,function(a,n,i){return{value:a,index:o++,criteria:e(a,n,i)}}).sort(function(a,n){var i=a.criteria,s=n.criteria;if(i!==s){if(i>s||i===void 0)return 1;if(i<s||s===void 0)return-1}return a.index-n.index}),"value")}function rr(r,e){return function(t,o,a){var n=e?[[],[]]:{};return o=y(o,a),M(t,function(i,s){var l=o(i,s,t);r(n,i,l)}),n}}var yn=rr(function(r,e,t){w(r,t)?r[t].push(e):r[t]=[e]});var vn=rr(function(r,e,t){r[t]=e});var Sn=rr(function(r,e,t){w(r,t)?r[t]++:r[t]=1});var On=rr(function(r,e,t){r[t?0:1].push(e)},!0);function Io(r){return r==null?0:R(r)?r.length:h(r).length}function Ro(r,e,t){return e in t}var at=v(function(r,e){var t={},o=e[0];if(r==null)return t;S(o)?(e.length>1&&(o=z(o,e[1])),e=K(r)):(o=Ro,e=_(e,!1,!1),r=Object(r));for(var a=0,n=e.length;a<n;a++){var i=e[a],s=r[i];o(s,i,r)&&(t[i]=s)}return t});var Nn=v(function(r,e){var t=e[0],o;return S(t)?(t=dr(t),e.length>1&&(o=e[1])):(e=F(_(e,!1,!1),String),t=function(a,n){return!B(e,n)}),at(r,t,o)});function ve(r,e,t){return J.call(r,0,Math.max(0,r.length-(e==null||t?1:e)))}function Se(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[0]:ve(r,r.length-e)}function Er(r,e,t){return J.call(r,e==null||t?1:e)}function To(r,e,t){return r==null||r.length<1?e==null||t?void 0:[]:e==null||t?r[r.length-1]:Er(r,Math.max(0,r.length-e))}function bo(r){return Y(r,Boolean)}function xo(r,e){return _(r,e,!1)}var nt=v(function(r,e){return e=_(e,!0,!0),Y(r,function(t){return!B(e,t)})});var In=v(function(r,e){return nt(r,e)});function Mr(r,e,t,o){Zr(e)||(o=t,t=e,e=!1),t!=null&&(t=y(t,o));for(var a=[],n=[],i=0,s=I(r);i<s;i++){var l=r[i],c=t?t(l,i,r):l;e&&!t?((!i||n!==c)&&a.push(l),n=c):t?B(n,c)||(n.push(c),a.push(l)):B(a,l)||a.push(l)}return a}var Rn=v(function(r){return Mr(_(r,!0,!0))});function Lo(r){for(var e=[],t=arguments.length,o=0,a=I(r);o<a;o++){var n=r[o];if(!B(e,n)){var i;for(i=1;i<t&&B(arguments[i],n);i++);i===t&&e.push(n)}}return e}function qr(r){for(var e=r&&Ee(r,I).length||0,t=Array(e),o=0;o<e;o++)t[o]=hr(r,o);return t}var Tn=v(qr);function Co(r,e){for(var t={},o=0,a=I(r);o<a;o++)e?t[r[o]]=e[o]:t[r[o][0]]=r[o][1];return t}function Do(r,e,t){e==null&&(e=r||0,r=0),t||(t=e<r?-1:1);for(var o=Math.max(Math.ceil((e-r)/t),0),a=Array(o),n=0;n<o;n++,r+=t)a[n]=r;return a}function wo(r,e){if(e==null||e<1)return[];for(var t=[],o=0,a=r.length;o<a;)t.push(J.call(r,o,o+=e));return t}function Pr(r,e){return r._chain?d(e).chain():e}function Oe(r){return M(xr(r),function(e){var t=d[e]=r[e];d.prototype[e]=function(){var o=[this._wrapped];return ka.apply(o,arguments),Pr(this,t.apply(d,o))}}),d}M(["pop","push","reverse","shift","sort","splice","unshift"],function(r){var e=zr[r];d.prototype[r]=function(){var t=this._wrapped;return t!=null&&(e.apply(t,arguments),(r==="shift"||r==="splice")&&t.length===0&&delete t[0]),Pr(this,t)}});M(["concat","join","slice"],function(r){var e=zr[r];d.prototype[r]=function(){var t=this._wrapped;return t!=null&&(t=e.apply(t,arguments)),Pr(this,t)}});var bn=d;var qo=Oe(Mo);qo._=qo;var x=qo;var xt=Ga(qn()),Al=Ga(fl());var Pe="(?=((?=[\\w'#%+-]+(?:\\.[\\w'#%+-]+)*@)[\\w\\.'#%+-]{1,64}@(?:(?=[a-z\\d]+(?:-+[a-z\\d]+)*\\.)(?:[a-z\\d-]{1,63}\\.)+[a-z]{2,63})(?= |_|\\b))(?<end>.*))\\S{3,254}(?=\\k<end>$)",_p="YYYY-MM-DD",Fp="https://d2k5nsl2zxldvw.cloudfront.net",g=`${Fp}/images/`,C={CORPAY_DIRECT_REIMBURSEMENT_CURRENCIES:["USD","GBP","EUR","AUD","CAD"],ACH_DEFAULT_MAX_AMOUNT_LIMIT:2e6,MILEAGE_IRS_RATE:new Date>new Date(2019,1,1)?.545:.58,MAX_TRIAL_BONUS_DAYS:42,COUNTRY:{US:"US",AU:"AU",UK:"UK",NZ:"NZ"},CURRENCIES:{US:"USD",AU:"AUD",UK:"GBP",NZ:"NZD"},STATES:{AK:{stateISO:"AK",stateName:"Alaska"},AL:{stateISO:"AL",stateName:"Alabama"},AR:{stateISO:"AR",stateName:"Arkansas"},AZ:{stateISO:"AZ",stateName:"Arizona"},CA:{stateISO:"CA",stateName:"California"},CO:{stateISO:"CO",stateName:"Colorado"},CT:{stateISO:"CT",stateName:"Connecticut"},DE:{stateISO:"DE",stateName:"Delaware"},FL:{stateISO:"FL",stateName:"Florida"},GA:{stateISO:"GA",stateName:"Georgia"},HI:{stateISO:"HI",stateName:"Hawaii"},IA:{stateISO:"IA",stateName:"Iowa"},ID:{stateISO:"ID",stateName:"Idaho"},IL:{stateISO:"IL",stateName:"Illinois"},IN:{stateISO:"IN",stateName:"Indiana"},KS:{stateISO:"KS",stateName:"Kansas"},KY:{stateISO:"KY",stateName:"Kentucky"},LA:{stateISO:"LA",stateName:"Louisiana"},MA:{stateISO:"MA",stateName:"Massachusetts"},MD:{stateISO:"MD",stateName:"Maryland"},ME:{stateISO:"ME",stateName:"Maine"},MI:{stateISO:"MI",stateName:"Michigan"},MN:{stateISO:"MN",stateName:"Minnesota"},MO:{stateISO:"MO",stateName:"Missouri"},MS:{stateISO:"MS",stateName:"Mississippi"},MT:{stateISO:"MT",stateName:"Montana"},NC:{stateISO:"NC",stateName:"North Carolina"},ND:{stateISO:"ND",stateName:"North Dakota"},NE:{stateISO:"NE",stateName:"Nebraska"},NH:{stateISO:"NH",stateName:"New Hampshire"},NJ:{stateISO:"NJ",stateName:"New Jersey"},NM:{stateISO:"NM",stateName:"New Mexico"},NV:{stateISO:"NV",stateName:"Nevada"},NY:{stateISO:"NY",stateName:"New York"},OH:{stateISO:"OH",stateName:"Ohio"},OK:{stateISO:"OK",stateName:"Oklahoma"},OR:{stateISO:"OR",stateName:"Oregon"},PA:{stateISO:"PA",stateName:"Pennsylvania"},PR:{stateISO:"PR",stateName:"Puerto Rico"},RI:{stateISO:"RI",stateName:"Rhode Island"},SC:{stateISO:"SC",stateName:"South Carolina"},SD:{stateISO:"SD",stateName:"South Dakota"},TN:{stateISO:"TN",stateName:"Tennessee"},TX:{stateISO:"TX",stateName:"Texas"},UT:{stateISO:"UT",stateName:"Utah"},VA:{stateISO:"VA",stateName:"Virginia"},VT:{stateISO:"VT",stateName:"Vermont"},WA:{stateISO:"WA",stateName:"Washington"},WI:{stateISO:"WI",stateName:"Wisconsin"},WV:{stateISO:"WV",stateName:"West Virginia"},WY:{stateISO:"WY",stateName:"Wyoming"},DC:{stateISO:"DC",stateName:"District Of Columbia"}},SPECIAL_CHARS_TO_REMOVE:"$*.+!(,=",REG_EXP:{DOMAIN:/^[\w-\.]*\.\w{2,}$/,EMAIL_PART:Pe,FREE_NAME:/^[^\r\n\t]{1,256}$/,MASKED_CARD:/^\d{0,6}[X]+\d{4,7}$/,EMAIL:new RegExp(`^${Pe}$`,"i"),EXTRACT_EMAIL:new RegExp(Pe,"gi"),EMAIL_SEARCH:new RegExp(Pe,"gi"),HYPERLINK:new RegExp("^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u00a1-\\uffff][a-z0-9\\u00a1-\\uffff_-]{0,62})?[a-z0-9\\u00a1-\\uffff]\\.)+(?:[a-z\\u00a1-\\uffff]{2,}\\.?))(?::\\d{2,5})?(?:[/?#]\\S*)?$","i"),MARKDOWN_EMAIL:Pe,EMOJIS:/[\u200d\u{1f1e6}-\u{1f1ff}\u{1f3fb}-\u{1f3ff}\u{e0020}-\u{e007f}\u20E3\uFE0F]|[#*0-9]\uFE0F?\u20E3/gu},REPORT:{LIMIT_PRINT_PDF:250,ACH_LIMIT:2e6,ACH_DEFAULT_DAYS:4,TITLE_FORMULA:"{report:title}",MAX_AGE_SAME_COMMENT:300,SMARTREPORT_AGENT_EMAIL:"smartreports@expensify.com"},URL:{FORUM_ROOT:"https://community.expensify.com/",RECEIPTS:{DEVELOPMENT:"https://www.expensify.com.dev/receipts/",STAGING:"https://staging.expensify.com/receipts/",PRODUCTION:"https://www.expensify.com/receipts/"},CLOUDFRONT:"https://d2k5nsl2zxldvw.cloudfront.net",CLOUDFRONT_IMG:"https://d2k5nsl2zxldvw.cloudfront.net/images/",CLOUDFRONT_FILES:"https://d2k5nsl2zxldvw.cloudfront.net/files/",EXPENSIFY_SYNC_MANAGER:"quickbooksdesktop/Expensify_QuickBooksDesktop_Setup_2300802.exe",USEDOT_ROOT:"https://use.expensify.com/",ITUNES_SUBSCRIPTION:"https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions"},DATE:{FORMAT_STRING:"yyyy-MM-dd",FORMAT_STRING_PRETTY:"MMM d, yyyy",MOMENT_FORMAT_STRING:_p,MOMENT_DATE_TIME:"YYYY-MM-DD HH:mm",MOMENT_DATE_TIME_PRETTY:"MMM DD YYYY h:mma",MOMENT_DATE_TIME_TIMEZONE:"YYYY-MM-DDTHH:mm:ssZ",MOMENT_US_DATE:"MMM D, YYYY",MOMENT_US_DATE_LONG:"MMMM D, YYYY",MOMENT_US_MONTH_YEAR_LONG:"MMMM YYYY",TIMEZONE_OFFSET_MS:new Date().getTimezoneOffset()*6e4,SHORT_MONTH_SHORT_DAY:"MMM d",LONG_YEAR_MONTH_DAY_24_TIME:"yyyy-MM-dd HH:mm:ss",SHORT_MONTH_DAY_LOCAL_TIME:"MMM D [at] LT",SHORT_MONTH_DAY_YEAR_LOCAL_TIME:"MMM D, YYYY [at] LT"},FUNC_DIE_MESSAGE:"Aborting JavaScript execution",EMAIL_DELIVERY_FAILURE_VALIDITY:1209600,BILL_PROCESSING_PARTNER_NAME:"expensify.cash",BILL_PROCESSING_EMAIL_DOMAIN:"expensify.cash",BANK_IMPORT:{BANK_STATUS_BROKEN:2},BANK_ACCOUNT:{VERIFICATION_MAX_ATTEMPTS:7},EXPENSIFY_EMAILS:["concierge@expensify.com","help@expensify.com","receipts@expensify.com","chronos@expensify.com","qa@expensify.com","contributors@expensify.com","firstresponders@expensify.com","qa+travisreceipts@expensify.com","bills@expensify.com","studentambassadors@expensify.com","accounting@expensify.com","payroll@expensify.com","svfg@expensify.com","integrationtestingcreds@expensify.com","admin@expensify.com"],INVALID_APPROVER_AND_SHAREE_EMAILS:["concierge@expensify.com","help@expensify.com","receipts@expensify.com","chronos@expensify.com","qa@expensify.com","contributors@expensify.com","firstresponders@expensify.com","qa+travisreceipts@expensify.com","bills@expensify.com","admin@expensify.com"],SMART_SCAN:{COST:20,FREE_NUMBER:25},SMS:{DOMAIN:"expensify.sms",E164_REGEX:/^\+?[1-9]\d{1,14}$/},PASSWORD_COMPLEXITY_REGEX_STRING:"^(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{8,}$",INTEGRATIONS:{DATA_MAPPING:{NONE:"NONE",TAG:"TAG",REPORT_FIELD:"REPORT_FIELD",DEFAULT:"DEFAULT"},EXPORT_DATE:{LAST_EXPENSE:"LAST_EXPENSE",REPORT_EXPORTED:"REPORT_EXPORTED",REPORT_SUBMITTED:"REPORT_SUBMITTED"},XERO_HQ_CONNECTION_NAME:"xerohq",EXPENSIFY_SYNC_MANAGER_VERSION:"23.0.802.0"},INTEGRATION_TYPES:{ACCOUNTING:"accounting",HR:"hr"},DIRECT_INTEGRATIONS:{zenefits:{value:"zenefits",text:"Zenefits",image:`${g}icons/export-icons/zenefit.svg`,gray_image:`${g}icons/export-icons/zenefit_gray.svg`,alert_image:`${g}icons/export-icons/zenefit_alert.svg`,types:["hr"],isCorporateOnly:!1},gusto:{value:"gusto",text:"Gusto",image:`${g}icons/export-icons/gusto.svg`,gray_image:`${g}icons/export-icons/gusto_gray.svg`,alert_image:`${g}icons/export-icons/gusto_alert.svg`,types:["hr"],isCorporateOnly:!1},quickbooksOnline:{value:"quickbooksOnline",text:"QuickBooks Online",image:`${g}icons/export-icons/quickbooks.svg`,gray_image:`${g}icons/export-icons/quickbooks_gray.svg`,alert_image:`${g}icons/export-icons/quickbooks_alert.svg`,types:["hr","accounting"],isCorporateOnly:!1},xero:{value:"xero",text:"Xero",image:`${g}icons/export-icons/xero.svg`,gray_image:`${g}icons/export-icons/xero_gray.svg`,alert_image:`${g}icons/export-icons/xero_alert.svg`,types:["accounting"],isCorporateOnly:!1},netsuite:{value:"netsuite",text:"NetSuite",image:`${g}icons/export-icons/netsuite.svg`,gray_image:`${g}icons/export-icons/netsuite_gray.svg`,alert_image:`${g}icons/export-icons/netsuite_alert.svg`,types:["hr","accounting"],isCorporateOnly:!0},quickbooksDesktop:{value:"qbd",text:"QuickBooks Desktop",image:`${g}icons/export-icons/quickbooks.svg`,gray_image:`${g}icons/export-icons/quickbooks_gray.svg`,alert_image:`${g}icons/export-icons/quickbooks_alert.svg`,types:["accounting"],isCorporateOnly:!1},intacct:{value:"intacct",text:"Sage Intacct",image:`${g}icons/export-icons/sage.svg`,gray_image:`${g}icons/export-icons/sage_gray.svg`,alert_image:`${g}icons/export-icons/sage_alert.svg`,types:["hr","accounting"],isCorporateOnly:!0},financialforce:{value:"financialforce",text:"FinancialForce",image:`${g}icons/export-icons/financialforce.svg`,gray_image:`${g}icons/export-icons/financialforce_gray.svg`,alert_image:`${g}icons/export-icons/financialforce_alert.svg`,types:["accounting"],isCorporateOnly:!0}},INDIRECT_INTEGRATIONS:{microsoft_dynamics:{value:"microsoft_dynamics",text:"Microsoft Dynamics",image:`${g}icons/export-icons/microsoft_dynamics.svg`,gray_image:`${g}icons/export-icons/microsoft_dynamics_gray.svg`,types:["accounting"],isCorporateOnly:!0},oracle:{value:"oracle",text:"Oracle",image:`${g}icons/export-icons/oracle.svg`,gray_image:`${g}icons/export-icons/oracle_gray.svg`,types:["hr","accounting"],isCorporateOnly:!0},sage:{value:"sage",text:"Sage",image:`${g}icons/export-icons/sage.svg`,gray_image:`${g}icons/export-icons/sage_gray.svg`,types:["accounting"],isCorporateOnly:!0},sap:{value:"sap",text:"SAP",image:`${g}icons/export-icons/sap.svg`,gray_image:`${g}icons/export-icons/sap_gray.svg`,types:["accounting"],isCorporateOnly:!0},myob:{value:"myob",text:"MYOB",image:`${g}icons/export-icons/myob.svg`,gray_image:`${g}icons/export-icons/myob_gray.svg`,types:["accounting"],isCorporateOnly:!0},workday:{value:"workday",text:"Workday",image:`${g}icons/export-icons/workday.svg`,gray_image:`${g}icons/export-icons/workday_gray.svg`,types:["hr"],isCorporateOnly:!0},adp:{value:"adp",text:"ADP",image:`${g}icons/export-icons/adp.svg`,types:["hr"],isCorporateOnly:!0},generic_indirect_connection:{value:"generic_indirect_connection",text:"Other",image:`${g}icons/accounting-other--blue.svg`,types:["hr","accounting"]}},DEFAULT_IS_TEMPLATES:{default:{value:"default_template",text:"Basic Export",image:`${g}icons/accounting-other--blue.svg`},tag:{value:"tag_template",text:"Tag Export",image:`${g}icons/accounting-other--blue.svg`},category:{value:"category_template",text:"Category Export",image:`${g}icons/accounting-other--blue.svg`},detailed:{value:"detailed_export",text:"All Data - Expense Level Export",image:`${g}icons/accounting-other--blue.svg`},report:{value:"report_level_export",text:"All Data - Report Level Export",image:`${g}icons/accounting-other--blue.svg`},tax:{value:"multiple_tax_export",text:"Canadian Multiple Tax Export",image:`${g}icons/accounting-other--blue.svg`},perdiem:{value:"per_diem_export",text:"Per Diem Export",image:`${g}icons/accounting-other--blue.svg`},attendees:{value:"attendee_audit_export",text:"Attendee Audit Export",image:`${g}icons/accounting-other--blue.svg`}},NVP:{DISMISSED_VIOLATIONS:"dismissedViolations"},FILESIZE:{BYTES_IN_MEGABYTE:1e6,MAX:1e7},PARTNER_NAMES:{IPHONE:"iphone",ANDROID:"android",CHAT:"chat-expensify-com"},LOGIN_TYPES:{WEB:"login",MOBILE:"device"},EXPENSIFY_CARD:{FEED_NAME:"Expensify Card",FRAUD_STATES:{NONE:0,DOMAIN_CARDS_REIMBURSEMENTS_INVESTIGATION:1,DOMAIN_CARDS_RAPID_INCREASE_INVESTIGATION:2,DOMAIN_CARDS_RAPID_INCREASE_CLEARED:3,DOMAIN_CARDS_RAPID_INCREASE_CONFIRMED:4,INDIVIDUAL_CARD_RAPID_INCREASE_INVESTIGATION:5,INDIVIDUAL_CARD_RAPID_INCREASE_CLEARED:6,INDIVIDUAL_CARD_RAPID_INCREASE_CONFIRMED:7,SUSPICIOUS_PAN_ENTRY:8,SUSPICIOUS_PAN_ENTRY_CLEARED:9,SUSPICIOUS_PAN_ENTRY_CONFIRMED:10}},TRAVEL_BOOKING:{OPTIONS:{shortFlightFare:{economy:"Economy",premiumEconomy:"Premium Economy",business:"Business",first:"First"},longFlightFare:{economy:"Economy",premiumEconomy:"Premium Economy",business:"Business",first:"First"},hotelStar:{oneStar:"1",twoStars:"2",threeStars:"3",fourStars:"4",fiveStars:"5"}},DEFAULT_OPTIONS:{shortFlightFare:"economy",longFlightFare:"economy",hotelStar:"fourStars"}},EXPENSIFY_DOMAINS:["expensify.com","expensifail.com","expensicorp.com"],SUBSCRIPTION_CHANGE_REASONS:{TOO_LIMITED:{id:"tooLimited",label:"Functionality needs improvement",prompt:"What software are you migrating to and what led to this decision?"},TOO_EXPENSIVE:{id:"tooExpensive",label:"Too expensive",prompt:"What software are you migrating to and what led to this decision?"},INADEQUATE_SUPPORT:{id:"inadequateSupport",label:"Inadequate customer support",prompt:"What software are you migrating to and what led to this decision?"},BUSINESS_CLOSING:{id:"businessClosing",label:"Company closing, downsizing, or acquired",prompt:"What software are you migrating to and what led to this decision?"}}};var Gp="XN--VERMGENSBERATUNG-PWB|XN--VERMGENSBERATER-CTB|XN--CLCHC0EA0B2G2A9GCD|XN--W4R85EL8FHU5DNRA|TRAVELERSINSURANCE|NORTHWESTERNMUTUAL|XN--XKC2DL3A5EE0H|XN--MGBERP4A5D4AR|XN--MGBAI9AZGQP6J|XN--MGBAH1A3HJKRD|XN--BCK1B9A5DRE4C|XN--5SU34J936BGSG|XN--3OQ18VL8PN36A|XN--XKC2AL3HYE2A|XN--MGBCPQ6GPA1A|XN--MGBA7C0BBN0A|XN--FZYS8D69UVGM|XN--NQV7FS00EMA|XN--MGBC0A9AZCG|XN--MGBAAKC7DVF|XN--MGBA3A4F16A|XN--LGBBAT1AD8J|XN--KCRX77D1X4A|XN--I1B6B1A6A2E|SANDVIKCOROMANT|KERRYPROPERTIES|AMERICANEXPRESS|XN--RVC1E0AM3E|XN--MGBX4CD0AB|XN--MGBI4ECEXP|XN--MGBCA7DZDO|XN--MGBBH1A71E|XN--MGBAYH7GPA|XN--MGBAAM7A8H|XN--MGBA3A3EJT|XN--JLQ61U9W7B|XN--JLQ480N2RG|XN--H2BREG3EVE|XN--FIQ228C5HS|XN--B4W605FERD|XN--80AQECDR1A|XN--6QQ986B3XL|XN--54B7FTA0CC|WEATHERCHANNEL|KERRYLOGISTICS|COOKINGCHANNEL|CANCERRESEARCH|BANANAREPUBLIC|AMERICANFAMILY|AFAMILYCOMPANY|XN--YGBI2AMMX|XN--YFRO4I67O|XN--TIQ49XQYJ|XN--H2BRJ9C8C|XN--FZC2C9E2C|XN--FPCRJ9C3D|XN--ECKVDTC9D|XN--CCKWCXETD|WOLTERSKLUWER|TRAVELCHANNEL|SPREADBETTING|LIFEINSURANCE|INTERNATIONAL|XN--QCKA1PMC|XN--OGBPF8FL|XN--NGBE9E0A|XN--NGBC5AZD|XN--MK1BU44C|XN--MGBT3DHD|XN--MGBPL2FH|XN--MGBGU82A|XN--MGBAB2BD|XN--MGB9AWBF|XN--GCKR3F0F|XN--8Y0A063A|XN--80ASEHDB|XN--80ADXHKS|XN--4DBRK0CE|XN--45BR5CYL|XN--3E0B707E|VERSICHERUNG|SCHOLARSHIPS|LPLFINANCIAL|CONSTRUCTION|XN--ZFR164B|XN--XHQ521B|XN--W4RS40L|XN--VUQ861B|XN--T60B56A|XN--SES554G|XN--S9BRJ9C|XN--ROVU88B|XN--RHQV96G|XN--Q9JYB4C|XN--PGBS0DH|XN--OTU796D|XN--NYQY26A|XN--MIX891F|XN--MGBTX2B|XN--MGBBH1A|XN--KPRY57D|XN--KPRW13D|XN--JVR189M|XN--J6W193G|XN--IMR513N|XN--HXT814E|XN--H2BRJ9C|XN--GK3AT1E|XN--GECRJ9C|XN--G2XX48C|XN--FLW351E|XN--FJQ720A|XN--FCT429K|XN--EFVY88H|XN--D1ACJ3B|XN--CZR694B|XN--CCK2B3B|XN--9KRT00A|XN--80AO21A|XN--6FRZ82G|XN--55QW42G|XN--45BRJ9C|XN--42C2D9A|XN--3HCRJ9C|XN--3DS443G|XN--3BST00M|XN--2SCRJ9C|XN--1QQW23A|XN--1CK2E1B|XN--11B4C3D|WILLIAMHILL|REDUMBRELLA|PROGRESSIVE|PRODUCTIONS|PLAYSTATION|PHOTOGRAPHY|OLAYANGROUP|MOTORCYCLES|LAMBORGHINI|KERRYHOTELS|INVESTMENTS|FOODNETWORK|ENTERPRISES|ENGINEERING|CREDITUNION|CONTRACTORS|CALVINKLEIN|BRIDGESTONE|BLOCKBUSTER|BLACKFRIDAY|BARCLAYCARD|ACCOUNTANTS|XN--Y9A3AQ|XN--WGBL6A|XN--WGBH1C|XN--UNUP4Y|XN--Q7CE6A|XN--PSSY2U|XN--O3CW4H|XN--MXTQ1M|XN--KPUT3I|XN--IO0A7I|XN--FIQZ9S|XN--FIQS8S|XN--FIQ64B|XN--CZRU2D|XN--CZRS0T|XN--CG4BKI|XN--C2BR7G|XN--9ET52U|XN--9DBQ2A|XN--90A3AC|XN--80ASWG|XN--5TZM5G|XN--55QX5D|XN--4GBRIM|XN--45Q11C|XN--3PXU8K|XN--30RR7Y|VOLKSWAGEN|VLAANDEREN|UNIVERSITY|TECHNOLOGY|TATAMOTORS|SWIFTCOVER|SCHAEFFLER|RESTAURANT|REPUBLICAN|REALESTATE|PRUDENTIAL|PROTECTION|PROPERTIES|ONYOURSIDE|NEXTDIRECT|NATIONWIDE|MITSUBISHI|MANAGEMENT|INDUSTRIES|IMMOBILIEN|HEALTHCARE|FOUNDATION|EXTRASPACE|EUROVISION|CUISINELLA|CREDITCARD|CONSULTING|CAPITALONE|BOEHRINGER|BNPPARIBAS|BASKETBALL|ASSOCIATES|APARTMENTS|ACCOUNTANT|YODOBASHI|XN--VHQUV|XN--TCKWE|XN--QXA6A|XN--P1ACF|XN--NQV7F|XN--NGBRX|XN--L1ACC|XN--J1AMH|XN--J1AEF|XN--FHBEI|XN--E1A4C|XN--D1ALF|XN--C1AVG|XN--90AIS|VACATIONS|TRAVELERS|STOCKHOLM|STATEFARM|STATEBANK|SOLUTIONS|SHANGRILA|SCJOHNSON|RICHARDLI|PRAMERICA|PASSAGENS|PANASONIC|MICROSOFT|MELBOURNE|MARSHALLS|MARKETING|LIFESTYLE|LANDROVER|LANCASTER|KUOKGROUP|INSURANCE|INSTITUTE|HOMESENSE|HOMEGOODS|HOMEDEPOT|HISAMITSU|GOLDPOINT|FURNITURE|FUJIXEROX|FRONTDOOR|FRESENIUS|FIRESTONE|FINANCIAL|FAIRWINDS|EQUIPMENT|EDUCATION|DIRECTORY|COMMUNITY|CHRISTMAS|BLOOMBERG|BARCELONA|AQUARELLE|ANALYTICS|AMSTERDAM|ALLFINANZ|ALFAROMEO|ACCENTURE|YOKOHAMA|XN--QXAM|XN--P1AI|XN--NODE|XN--90AE|WOODSIDE|VERISIGN|VENTURES|VANGUARD|TRAINING|SUPPLIES|STCGROUP|SOFTWARE|SOFTBANK|SHOWTIME|SHOPPING|SERVICES|SECURITY|SAMSCLUB|SAARLAND|RELIANCE|REDSTONE|PROPERTY|PLUMBING|PICTURES|PHARMACY|PARTNERS|OBSERVER|MORTGAGE|MERCKMSD|MEMORIAL|MCKINSEY|MASERATI|MARRIOTT|LUNDBECK|LIGHTING|JPMORGAN|ISTANBUL|IPIRANGA|INFINITI|HOSPITAL|HOLDINGS|HELSINKI|HDFCBANK|GUARDIAN|GRAPHICS|GRAINGER|GOODYEAR|FRONTIER|FOOTBALL|FIRMDALE|FIDELITY|FEEDBACK|EXCHANGE|ETISALAT|ERICSSON|ENGINEER|DOWNLOAD|DISCOVER|DISCOUNT|DIAMONDS|DEMOCRAT|DELOITTE|DELIVERY|COMPUTER|COMMBANK|CLOTHING|CLINIQUE|CLEANING|CITYEATS|CIPRIANI|CATHOLIC|CATERING|CAPETOWN|BUSINESS|BUILDERS|BUDAPEST|BRUSSELS|BROADWAY|BRADESCO|BOUTIQUE|BASEBALL|BARGAINS|BAREFOOT|BARCLAYS|ATTORNEY|ALLSTATE|AIRFORCE|ABUDHABI|ZUERICH|YOUTUBE|YAMAXUN|XFINITY|WINNERS|WINDOWS|WHOSWHO|WEDDING|WEBSITE|WEATHER|WATCHES|WANGGOU|WALMART|TRADING|TOSHIBA|TIFFANY|TICKETS|THEATRE|THEATER|TEMASEK|SYSTEMS|SURGERY|SUPPORT|STORAGE|STAPLES|SINGLES|SHIKSHA|SCIENCE|SCHWARZ|SCHMIDT|SANDVIK|SAMSUNG|REXROTH|REVIEWS|RENTALS|RECIPES|REALTOR|POLITIE|PIONEER|PHILIPS|ORIGINS|ORGANIC|OLDNAVY|OKINAWA|NEUSTAR|NETWORK|NETFLIX|NETBANK|MONSTER|MARKETS|LINCOLN|LIMITED|LECLERC|LATROBE|LASALLE|LANXESS|LACAIXA|KOMATSU|KITCHEN|JUNIPER|JEWELRY|ISMAILI|HYUNDAI|HOTMAIL|HOTELES|HOSTING|HOLIDAY|HITACHI|HANGOUT|HAMBURG|GUITARS|GROCERY|GODADDY|GENTING|GALLERY|FUJITSU|FROGANS|FORSALE|FLOWERS|FLORIST|FLIGHTS|FITNESS|FISHING|FINANCE|FERRERO|FERRARI|FASHION|FARMERS|EXPRESS|EXPOSED|DOMAINS|DIGITAL|DENTIST|CRUISES|CRICKET|COURSES|COUPONS|COUNTRY|CORSICA|COOKING|CONTACT|COMPARE|COMPANY|COMCAST|COLOGNE|COLLEGE|CLUBMED|CITADEL|CHINTAI|CHARITY|CHANNEL|CAREERS|CARAVAN|CAPITAL|BUGATTI|BROTHER|BOOKING|BESTBUY|BENTLEY|BAUHAUS|BANAMEX|AVIANCA|AUSPOST|AUDIBLE|AUCTION|ATHLETA|ANDROID|ALIBABA|AGAKHAN|ACADEMY|ABOGADO|ZAPPOS|YANDEX|YACHTS|XIHUAN|WEBCAM|WALTER|VUELOS|VOYAGE|VOTING|VISION|VIRGIN|VILLAS|VIKING|VIAJES|UNICOM|TRAVEL|TOYOTA|TKMAXX|TJMAXX|TIENDA|TENNIS|TATTOO|TARGET|TAOBAO|TAIPEI|SYDNEY|SWATCH|SUZUKI|SUPPLY|STUDIO|STREAM|SOCIAL|SOCCER|SHOUJI|SELECT|SECURE|SEARCH|SCHULE|SCHOOL|SANOFI|SAKURA|SAFETY|RYUKYU|ROGERS|ROCHER|REVIEW|REPORT|REPAIR|REISEN|REALTY|RACING|QUEBEC|PICTET|PHYSIO|PHOTOS|PFIZER|OTSUKA|ORANGE|ORACLE|ONLINE|OLAYAN|OFFICE|NOWRUZ|NORTON|NISSAY|NISSAN|NATURA|NAGOYA|MUTUAL|MUSEUM|MOSCOW|MORMON|MONASH|MOBILE|MATTEL|MARKET|MAKEUP|MAISON|MADRID|LUXURY|LONDON|LOCKER|LIVING|LEFRAK|LAWYER|LATINO|LANCIA|KOSHER|KINDLE|KINDER|KAUFEN|JUEGOS|JOBURG|JAGUAR|INTUIT|INSURE|IMAMAT|HUGHES|HOTELS|HOCKEY|HIPHOP|HERMES|HEALTH|GRATIS|GOOGLE|GLOBAL|GIVING|GEORGE|GARDEN|GALLUP|FUTBOL|FLICKR|FAMILY|EXPERT|EVENTS|ESTATE|ENERGY|EMERCK|DURBAN|DUPONT|DUNLOP|DOCTOR|DIRECT|DESIGN|DENTAL|DEGREE|DEALER|DATSUN|DATING|CRUISE|CREDIT|COUPON|CONDOS|COMSEC|COFFEE|CLINIC|CLAIMS|CIRCLE|CHURCH|CHROME|CHANEL|CENTER|CASINO|CAREER|CAMERA|BROKER|BOSTON|BOSTIK|BHARTI|BERLIN|BEAUTY|BAYERN|AUTHOR|ARAMCO|ANQUAN|AMAZON|ALSTOM|ALSACE|ALIPAY|AIRTEL|AIRBUS|AGENCY|AFRICA|ABBVIE|ABBOTT|ABARTH|YAHOO|XEROX|WORLD|WORKS|WEIBO|WEBER|WATCH|WALES|VOLVO|VODKA|VIDEO|VEGAS|UBANK|TUSHU|TUNES|TRUST|TRADE|TOURS|TOTAL|TORAY|TOOLS|TOKYO|TODAY|TMALL|TIROL|TIRES|TATAR|SWISS|SUCKS|STYLE|STUDY|STORE|STADA|SPORT|SPACE|SOLAR|SMILE|SMART|SLING|SKYPE|SHOES|SHELL|SHARP|SEVEN|SENER|SALON|RUGBY|RODEO|ROCKS|RICOH|REISE|REHAB|RADIO|QUEST|PROMO|PRIME|PRESS|PRAXI|POKER|PLACE|PIZZA|PHOTO|PHONE|PARTY|PARTS|PARIS|OSAKA|OMEGA|NOWTV|NOKIA|NINJA|NIKON|NEXUS|MOVIE|MONEY|MIAMI|MEDIA|MANGO|MACYS|LOTTO|LOTTE|LOCUS|LOANS|LIXIL|LIPSY|LINDE|LILLY|LEXUS|LEGAL|LEASE|LAMER|KYOTO|KOELN|JETZT|IVECO|IRISH|IKANO|HYATT|HOUSE|HORSE|HONDA|HOMES|GUIDE|GUCCI|GROUP|GRIPE|GREEN|GMAIL|GLOBO|GLASS|GLADE|GIVES|GIFTS|GAMES|GALLO|FORUM|FOREX|FINAL|FEDEX|FAITH|EPSON|EMAIL|EDEKA|EARTH|DUBAI|DRIVE|DELTA|DEALS|DANCE|DABUR|CYMRU|CROWN|CODES|COACH|CLOUD|CLICK|CITIC|CISCO|CHEAP|CHASE|CARDS|CANON|BUILD|BOSCH|BOATS|BLACK|BINGO|BIBLE|BEATS|BAIDU|AZURE|AUTOS|AUDIO|ARCHI|APPLE|AMICA|AMFAM|AETNA|ADULT|ACTOR|ZONE|ZERO|ZARA|YOGA|XBOX|WORK|WINE|WIKI|WIEN|WEIR|WANG|VOTO|VOTE|VIVO|VIVA|VISA|VANA|TUBE|TOYS|TOWN|TIPS|TIAA|TEVA|TECH|TEAM|TAXI|TALK|SURF|STAR|SPOT|SONY|SONG|SOHU|SNCF|SKIN|SITE|SINA|SILK|SHOW|SHOP|SHIA|SHAW|SEXY|SEEK|SEAT|SCOT|SAXO|SAVE|SARL|SALE|SAFE|RUHR|RSVP|ROOM|RMIT|RICH|REST|RENT|REIT|READ|RAID|QPON|PROF|PROD|POST|PORN|POHL|PLUS|PLAY|PINK|PING|PICS|PCCW|PARS|PAGE|OPEN|OLLO|NIKE|NICO|NEXT|NEWS|NAVY|NAME|MOTO|MODA|MOBI|MINT|MINI|MENU|MEME|MEET|MAIF|LUXE|LTDA|LOVE|LOFT|LOAN|LIVE|LINK|LIMO|LIKE|LIFE|LIDL|LGBT|LEGO|LAND|KRED|KPMG|KIWI|KDDI|JPRS|JOBS|JEEP|JAVA|ITAU|INFO|IMMO|IMDB|IEEE|ICBC|HSBC|HOST|HGTV|HERE|HELP|HDFC|HAUS|HAIR|GURU|GUGE|GOOG|GOLF|GOLD|GMBH|GIFT|GGEE|GENT|GBIZ|GAME|FUND|FREE|FORD|FOOD|FLIR|FISH|FIRE|FILM|FIDO|FIAT|FAST|FARM|FANS|FAIL|FAGE|ERNI|DVAG|DUCK|DOCS|DISH|DIET|DESI|DELL|DEAL|DCLK|DATE|DATA|CYOU|COOP|COOL|CLUB|CITY|CITI|CHAT|CERN|CBRE|CASH|CASE|CASA|CARS|CARE|CAMP|CALL|CAFE|BUZZ|BOOK|BOND|BOFA|BLUE|BLOG|BING|BIKE|BEST|BEER|BBVA|BANK|BAND|BABY|AUTO|AUDI|ASIA|ASDA|ARTE|ARPA|ARMY|ARAB|AMEX|ALLY|AKDN|AERO|ADAC|ABLE|AARP|ZIP|YUN|YOU|XYZ|XXX|XIN|WTF|WTC|WOW|WME|WIN|WED|VIP|VIN|VIG|VET|UPS|UOL|UNO|UBS|TVS|TUI|TRV|TOP|TJX|THD|TEL|TDK|TCI|TAX|TAB|STC|SRL|SPA|SOY|SKY|SKI|SFR|SEX|SEW|SES|SCB|SCA|SBS|SBI|SAS|SAP|RWE|RUN|RIP|RIO|RIL|REN|RED|QVC|PWC|PUB|PRU|PRO|PNC|PIN|PID|PHD|PET|PAY|OVH|OTT|ORG|OOO|ONL|ONG|ONE|OFF|OBI|NYC|NTT|NRW|NRA|NOW|NHK|NGO|NFL|NEW|NET|NEC|NBA|NAB|MTR|MTN|MSD|MOV|MOM|MOI|MOE|MMA|MLS|MLB|MIT|MIL|MEN|MED|MBA|MAP|MAN|LTD|LPL|LOL|LLP|LLC|LDS|LAW|LAT|KRD|KPN|KIM|KIA|KFH|JOY|JOT|JNJ|JMP|JLL|JIO|JCB|ITV|IST|INT|INK|ING|INC|IFM|ICU|ICE|IBM|HOW|HOT|HKT|HIV|HBO|GOV|GOT|GOP|GOO|GMX|GMO|GLE|GEA|GDN|GAY|GAP|GAL|FYI|FUN|FTR|FRL|FOX|FOO|FLY|FIT|FAN|EUS|ESQ|EDU|ECO|EAT|DVR|DTV|DOT|DOG|DNP|DIY|DHL|DEV|DDS|DAY|DAD|CSC|CRS|CPA|COM|CFD|CFA|CEO|CBS|CBN|CBA|CAT|CAR|CAM|CAL|CAB|BZH|BUY|BOX|BOT|BOO|BOM|BMW|BMS|BIZ|BIO|BID|BET|BCN|BCG|BBT|BBC|BAR|AXA|AWS|ART|APP|AOL|ANZ|AIG|AFL|AEG|ADS|ACO|ABC|ABB|AAA|ZW|ZM|ZA|YT|YE|WS|WF|VU|VN|VI|VG|VE|VC|VA|UZ|UY|US|UK|UG|UA|TZ|TW|TV|TT|TR|TO|TN|TM|TL|TK|TJ|TH|TG|TF|TD|TC|SZ|SY|SX|SV|SU|ST|SS|SR|SO|SN|SM|SL|SK|SJ|SI|SH|SG|SE|SD|SC|SB|SA|RW|RU|RS|RO|RE|QA|PY|PW|PT|PS|PR|PN|PM|PL|PK|PH|PG|PF|PE|PA|OM|NZ|NU|NR|NP|NO|NL|NI|NG|NF|NE|NC|NA|MZ|MY|MX|MW|MV|MU|MT|MS|MR|MQ|MP|MO|MN|MM|ML|MK|MH|MG|ME|MD|MC|MA|LY|LV|LU|LT|LS|LR|LK|LI|LC|LB|LA|KZ|KY|KW|KR|KP|KN|KM|KI|KH|KG|KE|JP|JO|JM|JE|IT|IS|IR|IQ|IO|IN|IM|IL|IE|ID|HU|HT|HR|HN|HM|HK|GY|GW|GU|GT|GS|GR|GQ|GP|GN|GM|GL|GI|GH|GG|GF|GE|GD|GB|GA|FR|FO|FM|FK|FJ|FI|EU|ET|ES|ER|EG|EE|EC|DZ|DO|DM|DK|DJ|DE|CZ|CY|CX|CW|CV|CU|CR|CO|CN|CM|CL|CK|CI|CH|CG|CF|CD|CC|CA|BZ|BY|BW|BV|BT|BS|BR|BO|BN|BM|BJ|BI|BH|BG|BF|BE|BD|BB|BA|AZ|AX|AW|AU|AT|AS|AR|AQ|AO|AM|AL|AI|AG|AF|AE|AD|AC|SJC|RNO|LAX",ml=Gp;var gl="([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])",Tt="((ht|f)tps?:\\/\\/)",kp=`${Tt}?((?:www\\.)?[a-z0-9](?:[-a-z0-9]*[a-z0-9])?\\.)+(?:${ml})(?:\\:${gl}|\\b|(?=_))(?!@(?:[a-z\\d-]+\\.)+[a-z]{2,})`,Be=r=>`(?:${r}|&(?:amp|#x27);)`,dl=`(?:${Be("[.,=(+$!*]")}?\\/${Be("[-\\w$@.+!*:(),=%~]")}*${Be("[-\\w~@:%)]")}|\\/)*`,hl=`(?:\\?${Be("[-\\w$@.+!*()\\/,=%{}:;\\[\\]\\|_|~]")}*)?`,El=`(?:#${Be("[-\\w$@.+!*()[\\],=%;\\/:~]")}*)?`,Yr=`((${kp})${dl}(?:${hl}|${El})*)`,oI=Yr.replace(`${Tt}?`,Tt),Hp=`${Tt}([a-z0-9](?:[-a-z0-9]*[a-z0-9])?\\.)*(?:[a-z0-9](?:[-a-z0-9]*[a-z0-9])?)(?:\\:${gl}|\\b|(?=_))`,qa=`((${Hp})${dl}(?:${hl}|${El})*)`,bt=`(${qa}|${Yr})`;var Xp=new RegExp(`@${C.SMS.DOMAIN}`,"gi"),$p={endsWith(r,e){return!r||!e?!1:r.substr(-e.length)===e},fromUSDToNumber(r,e){let t=String(r).replace(/[^\d.\-()]+/g,"");return t.match(/\(.*\)/)&&(t=`-${t.replace(/[()]/g,"")}`),t=Number(t)*100,t=Math.round(t*1e3)/1e3,e?t:Math.round(t)},truncateInMiddle(r,e){if(r.length<=e)return r;let t="...",o=(e-t.length)/2,a=r.substr(0,Math.ceil(o)),n=r.substr(r.length-Math.floor(o));return a+t+n},nl2br(r){return r.replace(/\n/g,"<br />")},htmlDecode(r){return typeof jQuery<"u"?jQuery("<textarea/>").html(r).text():(0,xt.decode)(r)},htmlEncode(r){return typeof jQuery<"u"?jQuery("<textarea/>").text(r).html():(0,xt.encode)(r)},safeEscape(r){return x.escape(x.unescape(r))},htmlEncodingInsensitiveEquals(r,e){return r===e||this.htmlDecode(r)===e||this.htmlEncode(r)===e},makeID(r){return`id_${String(r).replace(/[^A-Za-z0-9]/g,"_").toUpperCase()}`},extractID(r){let e=r.match(/id[A-Z0-9_]+/);return e.length>0?e[0]:null},recapitalize(r){let e=String(r);if(e.length<=0)return e;e=e.substr(0,1).toUpperCase()+e.substr(1).toLowerCase();function t(o,a,n){return a+n.toUpperCase()}return e.replace(new RegExp("([^A-Za-z'.0-9])([a-z])","g"),t)},sanitizeToAlphaNumeric(r){return String(r).replace(/[^\d\w]/g,"_")},stripNonNumeric(r){return String(r).replace(/[^\d]/g,"")},stripNonASCIICharacters(r){return String(r).replace(/[\u0000-\u0019\u0080-\uffff]/g,"")},shortenText(r,e){let t=String(r).replace(/\s+/g," "),o=t.substr(0,e-3);return t.length>e?`${o}...`:t},getRawByteSize(r){let t=String(r).charCodeAt();return t<128?1:t<2048?2:t<65536?3:t<1<<21?4:t<1<<26?5:t<1<<31?6:Number.NaN},getByteLength(r){let e=String(r),t=0;for(let o=0;o<e.length;o++)t+=this.getRawByteSize(e[o]);return t},shortenByByte(r,e){let t=String(r),o=0;for(let a=0;a<t.length;a++){let n=this.getRawByteSize(t[a]);if(n+o>e)return`${t.substr(0,a-3)}...`;o+=n}return t},startsWith(r,e){return this.isString(r)&&this.isString(e)&&r.substring(0,e.length)===e},stripHTML(r){return this.isString(r)?r.replace(/<[^>]*>?/gm,""):""},UCFirst(r){return r.substr(0,1).toUpperCase()+r.substr(1)},cutAfter(r,e){let t=r.indexOf(e);return t!==-1?r.substring(0,t):r},cutBefore(r,e){let t=r.indexOf(e);return t!==-1?r.substring(t+e.length):r},isValidDomainName(r){return!!String(r).match(C.REG_EXP.DOMAIN)},isValidURL(r){return!!String(r).match(C.REG_EXP.HYPERLINK)},isValidEmail(r){return!!String(r).match(C.REG_EXP.EMAIL)},isValidEmailMarkdown(r){return!!String(r).match(`^${C.REG_EXP.MARKDOWN_EMAIL}$`)},removeTrailingComma(r){return r.trim().replace(/(,$)/g,"")},areValidEmails(r){let e=this.removeTrailingComma(r);if(e==="")return!0;let t=e.split(","),o=!0;for(let a=0;a<t.length;a+=1)this.isValidEmail(t[a].trim())||(o=!1);return o},extractEmail(r){return String(r).match(C.REG_EXP.EMAIL_SEARCH)},extractEmailDomain(r){return this.cutBefore(r,"@")},extractCompanyNameFromEmailDomain(r){let e=this.extractEmailDomain(r);if(!e)return null;let t=e.split(".");return t.length?t[0]:null},extractEmailLocalPart(r){return this.cutAfter(r,"@")},sanitizePhoneNumber(r){let e=r.replace(/(?!^\+)\D/g,"");return e.length<=15&&e.length>=10?e:null},sanitizeEmail(r){let e=r.toLowerCase().trim();return C.REG_EXP.EMAIL.test(e)?e:null},escapeForRegExp(r){return r.replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&")},escapeForExpenseRule(r){return r.replace(/[-[\]/{}()*+?\\^$|]/g,"\\$&")},addBackslashBeforeColonsForTagNamesComingFromQBD(r){return r.replace(/([^\\]):/g,"$1\\:")},stripBackslashes(r){return r.replace(/\\/g,"")},isOfLength(r,e,t){return!(!this.isString(r)||r.length<e||!this.isUndefined(t)&&r.length>t)},occurences(r,e,t){let o=0,a=0,n=String(r),i=String(e);if(i.length<=0)return n.length+1;let s=t?1:i.length;for(;a>=0;)a=n.indexOf(i,a),a>=0&&(o+=1,a+=s);return o},ucwords(r){return String(r).replace(/^([a-z\u00E0-\u00FC])|\s+([a-z\u00E0-\u00FC])/g,e=>e.toUpperCase())},contains(r,e){return r.indexOf(e)!==-1},caseInsensitiveContains(r,e){return this.contains(r.toLowerCase(),e.toLowerCase())},caseInsensitiveCompare(r,e){let t=r.toLocaleLowerCase(),o=e.toLocaleLowerCase();return this.compare(t,o)},caseInsensitiveEquals(r,e){return this.caseInsensitiveCompare(r,e)===0},compare(r,e){return r<e?-1:r>e?1:0},isFileExtensionSmartReportsValid(r){let e=["xls","xlsx","xlsm","xltm"],t=r.split(".").pop().toLowerCase();return e.indexOf(t)>-1},maskPAN(r){let e=String(r),t=e.length;if(t<6||t>20)return this.maskFirstNCharacters(e,t,"X");if(t<14)return this.maskFirstNCharacters(e,t-4,"X");let o=e.substr(0,6),a=e.substr(7),n=this.maskFirstNCharacters(a,t-11,"X");return`${o}${n}`},isString(r){return this.isTypeOf(r,"String")},isNumber(r){return this.isTypeOf(r,"Number")},isTypeOf(r,e){return Object.prototype.toString.call(r)===`[object ${e}]`},isUndefined(r){return r===void 0},maskFirstNCharacters(r,e,t){return!this.isString(r)||!this.isString(t)||r.length===0||!this.isNumber(e)?r:r.substring(0,e).replace(/./g,t)+r.substring(e)},trim(r){return $.trim(r)},percentageStringToNumber(r){return Number(this.cutAfter(r,"%"))},removeSpaces(r){return String(r).replace(" ","")},pluralize(r,e,t){return!t||t>1?e:r},isEncryptedCardNumber(r){return/^[\da-fA-F]+$/.test(r)?r.length%32===0:/^[vV][\d]+:[\da-fA-F]+$/.test(r)?r.split(":")[1].length%32===0:!1},toBool(r){return this.isString(r)?r.toLowerCase()==="true":!!r},maskedEquals(r,e,t){let o=r.match(/.{1,1}/g),a=e.match(/.{1,1}/g),n=t||"X";if(o.length!==a.length)return!1;for(let i=0;i<o.length;i+=1)if(o[i]!==a[i]&&o[i]!==n&&a[i]!==n)return!1;return!0},boldify(r,e){return r.replace(e,"<strong>$1</strong>")},isValidPhone(r){return C.SMS.E164_REGEX.test(r)},isValidMention(r){if(/[\s@]/g.test(r.charAt(0)))return!0;let e=r.charAt(0),t=r.charAt(r.length-1);return/[*~_'"]/g.test(e)&&/[*~_'"]/g.test(t)&&e===t},removeSMSDomain(r){return r.replace(Xp,"")},isSMSLogin(r){return this.isValidPhone(this.removeSMSDomain(r))},matchAll(r,e){let t=[];return r.replace(e,(...o)=>{let a=Array.prototype.slice.call(o,0,-2);a.input=o[o.length-1],a.index=o[o.length-2],t.push(a)}),t},guid(r=""){function e(){return Math.floor((1+Math.random())*65536).toString(16).substring(1)}return`${r}${e()}${e()}-${e()}-${e()}-${e()}-${e()}${e()}${e()}`},normalizeUrl(r){return typeof r=="string"&&r.startsWith("/")?r:`/${r}`},sanitizeURL(r){let t=new RegExp(`^${Yr}$`,"i").exec(r);return t?(t[3]?t[2]:`https://${t[2]}`).toLowerCase()+this.cutBefore(t[1],t[2]):r},result(r,...e){return x.isFunction(r)?r(...e):r},getExtension(r){return x.first(x.last(r.split(".")).split("?")).toLowerCase()},isPDF(r){return this.getExtension(r)==="pdf"},isImage(r){return x.contains(["jpeg","jpg","gif","png","bmp","webp"],this.getExtension(r))},isDomainEmail(r){return this.startsWith(r,"+@")},replaceAll(r,e,t){return(0,Al.default)(r,e,t)}},G=$p;var Vp=new RegExp(`\\[([^\\][]*(?:\\[[^\\][]*][^\\][]*)*)]\\(${bt}\\)(?![^<]*(<\\/pre>|<\\/code>))`,"gi"),Pa='<span class="c-mrkdwn__br" data-stringify-type="paragraph-break" style="box-sizing: inherit; display: block; height: unset;"></span>',Ba={initializer(){this.rules=[{name:"codeFence",regex:/(```[\n]?)((?:\s*?(?![\n]?```(?!`))[\S])+\s*?)((?=\n?)```)/g,replacement:(r,e,t)=>`<pre>${t.replace(/(?:(?![\n\r])\s)/g," ")}</pre>`,rawInputReplacement:(r,e,t)=>{let o=r.replace(/(?:```)([\s\S]*?)(?:```)/g,"$1"),a=t.replace(/(?:(?![\n\r])\s)/g," ");return`<pre data-code-raw="${x.escape(o)}">${a}</pre>`}},{name:"inlineCodeBlock",regex:/(\B|_|)`(?:(?!(?:(?!`).)*?<pre>))(.*?\S.*?)`(\B|_|)(?!`|[^<]*<\/pre>)/g,replacement:(r,e,t,o)=>/^[`]+$/i.test(t)?r:`${e}<code>${t}</code>${o}`},{name:"email",process:(r,e,t)=>{let o=new RegExp(`(?!\\[\\s*\\])\\[([^[\\]]*)]\\((mailto:)?${C.REG_EXP.MARKDOWN_EMAIL}\\)`,"gim");return this.modifyTextForEmailLinks(o,r,e,t)},replacement:(r,e,t)=>{if(e.match(C.REG_EXP.EMOJIS)||!e.trim())return r;let o=e.trim(),a=`mailto:${t}`;return`<a href="${a}">${o===a?t:o}</a>`},rawInputReplacement:(r,e,t,o)=>{if(e.match(C.REG_EXP.EMOJIS)||!e.trim())return r;let a=t?t+o:o;return`<a href="${`mailto:${o}`}" data-raw-href="${a}" data-link-variant="labeled">${e}</a>`}},{name:"heading1",process:(r,e,t=!1)=>{let o=t?/^# ( *(?! )(?:(?!<pre>|\n|\r\n).)+)/gm:/^# +(?! )((?:(?!<pre>|\n|\r\n).)+)/gm;return r.replace(o,e)},replacement:"<h1>$1</h1>"},{name:"link",process:(r,e)=>this.modifyTextForUrlLinks(Vp,r,e),replacement:(r,e,t)=>e.match(C.REG_EXP.EMOJIS)||!e.trim()?r:`<a href="${G.sanitizeURL(t)}" target="_blank" rel="noreferrer noopener">${e.trim()}</a>`,rawInputReplacement:(r,e,t)=>e.match(C.REG_EXP.EMOJIS)||!e.trim()?r:`<a href="${G.sanitizeURL(t)}" data-raw-href="${t}" data-link-variant="labeled" target="_blank" rel="noreferrer noopener">${e.trim()}</a>`},{name:"hereMentions",regex:/([a-zA-Z0-9.!$%&+/=?^`{|}_-]?)(@here)([.!$%&+/=?^`{|}_-]?)(?=\b)(?!([\w'#%+-]*@(?:[a-z\d-]+\.)+[a-z]{2,}(?:\s|$|@here))|((?:(?!<a).)+)?<\/a>|[^<]*(<\/pre>|<\/code>))/gm,replacement:(r,e,t,o)=>G.isValidMention(r)?`${e}<mention-here>${t}</mention-here>${o}`:r},{name:"userMentions",regex:new RegExp(`(@here|[a-zA-Z0-9.!$%&+=?^\`{|}-]?)(@${C.REG_EXP.EMAIL_PART})(?!((?:(?!<a).)+)?<\\/a>|[^<]*(<\\/pre>|<\\/code>))`,"gim"),replacement:(r,e,t)=>G.isValidMention(r)?`${e}<mention-user>${t}</mention-user>`:r},{name:"hereMentionAfterUserMentions",regex:/(<\/mention-user>)(@here)(?=\b)/gm,replacement:"$1<mention-here>$2</mention-here>"},{name:"autolink",process:(r,e)=>{let t=new RegExp(`(?![^<]*>|[^<>]*<\\/(?!h1>))([_*~]*?)${bt}\\1(?!((?:(?!<a).)+)?<\\/a>|[^<]*(<\\/pre>|<\\/code>))`,"gi");return this.modifyTextForUrlLinks(t,r,e)},replacement:(r,e,t)=>{let o=G.sanitizeURL(t);return`${e}<a href="${o}" target="_blank" rel="noreferrer noopener">${t}</a>${e}`},rawInputReplacement:(r,e,t)=>{let o=G.sanitizeURL(t);return`${e}<a href="${o}" data-raw-href="${t}" data-link-variant="auto" target="_blank" rel="noreferrer noopener">${t}</a>${e}`}},{name:"quote",process:(r,e,t=!1)=>{let o=new RegExp(/^> *(?! )(?![^<]*(?:<\/pre>|<\/code>))([^\v\n\r]+)/gm);return t?r.replace(o,a=>e(a,t)):this.modifyTextForQuote(o,r,e)},replacement:(r,e=!1)=>{let t=!1,o=r.replace(/^>( )?/gm,(n,i)=>(t=!!i,"")),a=this.replace(o,{filterRules:["heading1"],shouldEscapeText:!1,shouldKeepRawInput:e});return`<blockquote>${t?" ":""}${a}</blockquote>`}},{name:"italic",regex:/(\b_+|\b)(?!_blank")_((?![\s_])[\s\S]*?[^\s_])_(?![^\W_])(?![^<]*(<\/pre>|<\/code>|<\/a>|<\/mention-user>|_blank))/g,replacement:(r,e,t)=>t.includes("<pre>")||this.containsNonPairTag(t)?r:String(t).match(`^${C.REG_EXP.MARKDOWN_EMAIL}`)?`<em>${e}${t}</em>`:`${e}<em>${t}</em>`},{name:"autoEmail",regex:new RegExp(`([^\\w'#%+-]|^)${C.REG_EXP.MARKDOWN_EMAIL}(?!((?:(?!<a).)+)?<\\/a>|[^<>]*<\\/(?!em|h1|blockquote))`,"gim"),replacement:'$1<a href="mailto:$2">$2</a>',rawInputReplacement:'$1<a href="mailto:$2" data-raw-href="$2" data-link-variant="auto">$2</a>'},{name:"bold",regex:/\B\*((?![\s*])[\s\S]*?[^\s*])\*\B(?![^<]*(<\/pre>|<\/code>|<\/a>))/g,replacement:(r,e)=>e.includes("<pre>")||this.containsNonPairTag(e)?r:`<strong>${e}</strong>`},{name:"strikethrough",regex:/\B~((?![\s~])[\s\S]*?[^\s~])~\B(?![^<]*(<\/pre>|<\/code>|<\/a>))/g,replacement:(r,e)=>e.includes("<pre>")||this.containsNonPairTag(e)?r:`<del>${e}</del>`},{name:"newline",regex:/\r?\n/g,replacement:"<br />"},{name:"replacepre",regex:/<\/pre>\s*<br\s*[/]?>/gi,replacement:"</pre>"},{name:"replaceh1br",regex:/<\/h1><br\s*[/]?>/gi,replacement:"</h1>"}],this.htmlToMarkdownRules=[{name:"replacepre",regex:/<\/pre>(.)/gi,replacement:"</pre><br />$1"},{name:"exclude",regex:new RegExp([`<(script|style)(?:"[^"]*"|'[^']*'|[^'">])*>([\\s\\S]*?)<\\/\\1>`,`(?![^<]*(<\\/pre>|<\\/code>))( |\r )?`].join(""),"gim"),replacement:""},{name:"nested",regex:/<(pre)(?:"[^"]*"|'[^']*'|[^'">])*><(div|code)(?:"[^"]*"|'[^']*'|[^'">])*>([\s\S]*?)<\/\2><\/pre>/gi,replacement:"<pre>$3</pre>"},{name:"newline",pre:r=>r.replace("<br></br>","<br/>").replace("<br><br/>","<br/>").replace(/(<tr.*?<\/tr>)/g,"$1<br/>").replace("<br/></tbody>","").replace(Pa+Pa,"<br/><br/><br/>").replace(Pa,"<br/><br/>"),regex:/<br(?:"[^"]*"|'[^']*'|[^'"><])*>\n?/gi,replacement:` `},{name:"heading1",regex:/[^\S\r\n]*<(h1)(?:"[^"]*"|'[^']*'|[^'">])*>(.*?)<\/\1>(?![^<]*(<\/pre>|<\/code>))/gi,replacement:"<h1># $2</h1>"},{name:"listItem",regex:/\s*<(li)(?:"[^"]*"|'[^']*'|[^'">])*>(.*?)<\/\1>(?![^<]*(<\/pre>|<\/code>))\s*/gi,replacement:"<li> $2</li>"},{name:"italic",regex:/<(em|i)(?:"[^"]*"|'[^']*'|[^'">])*>([\s\S]*?)<\/\1>(?![^<]*(<\/pre>|<\/code>))/gi,replacement:"_$2_"},{name:"bold",regex:/<(b|strong)(?:"[^"]*"|'[^']*'|[^'">])*>([\s\S]*?)<\/\1>(?![^<]*(<\/pre>|<\/code>))/gi,replacement:"*$2*"},{name:"strikethrough",regex:/<(del)(?:"[^"]*"|'[^']*'|[^'">])*>([\s\S]*?)<\/\1>(?![^<]*(<\/pre>|<\/code>))/gi,replacement:"~$2~"},{name:"quote",regex:/<(blockquote|q)(?:"[^"]*"|'[^']*'|[^'">])*>([\s\S]*?)<\/\1>(?![^<]*(<\/pre>|<\/code>))/gi,replacement:(r,e,t)=>`<blockquote>${t.replace(/\n?(<h1># )/g,"$1").replace(/(<h1>|<\/h1>)+/g,` @@ -31,4 +31,4 @@ $2`},{name:"removeStyle",regex:/<style>.*?<\/style>/gi,replacement:""},{name:"st `:(a!==""&&(o+=this.formatTextForQuote(r,a,t),a=""),l===s.length-1?o+=`${s[l]}`:o+=`${s[l]} `,i&&(i=!G.contains(s[l],"</pre>")));a!==""&&(o+=this.formatTextForQuote(r,a,t))}else o=e;return o},formatTextForQuote(r,e,t){if(e.match(r)){let o=e.split(` `).map(a=>a.substr(4).trim()).join(` -`);return o=o.trim(),t(o)}return e},containsNonPairTag(r){let e=/<([a-z][a-z0-9-]*)\b[^>]*>|<\/([a-z][a-z0-9-]*)\s*>/gi,t=[],o=e.exec(r);for(;o;){let a=o[1],n=o[2];if(a&&a!=="br")t.push(a);else if(n){let i=t.pop();if(n!==i)return!0}o=e.exec(r)}return t.length!==0},extractLinksInMarkdownComment(r){try{let e=this.replace(r,{filterRules:["link"]}),t=new RegExp(`<a href="${bt}" target="_blank" rel="noreferrer noopener">`,"gi"),o=[...e.matchAll(t)];return x.map(o,n=>G.sanitizeURL(n[1]))}catch(e){console.warn("Error parsing url in ExpensiMark.extractLinksInMarkdownComment",{error:e});return}},getRemovedMarkdownLinks(r,e){let t=this.extractLinksInMarkdownComment(r),o=this.extractLinksInMarkdownComment(e);return t===void 0||o===void 0?[]:x.difference(t,o)}};Ba.initializer();function Vp(r){return Ba.replace(r,{shouldKeepRawInput:!0})}function Yp(r){let e=[],t=0;for(;;){let o=r.indexOf("<",t);if(o===-1){t<r.length&&e.push(["TEXT",r.substring(t)]);break}o!==t&&e.push(["TEXT",r.substring(t,o)]);let a=r.indexOf(">",o);if(a===-1)throw new Error('Invalid HTML: no matching ">"');e.push(["HTML",r.substring(o,a+1)]),t=a+1}return e}function Kp(r){let e=[{tag:"<>",children:[]}];if(r.forEach(([t,o])=>{if(t==="TEXT"){let a=x.unescape(o);e[e.length-1].children.push(a)}else if(t==="HTML")if(o.startsWith("</")){let a=e.pop();e[e.length-1].children.push(a)}else e.push({tag:o,children:[]});else throw new Error(`Unknown token type: ${t}`)}),e.length!==1)throw new Error("Invalid HTML: unclosed tags");return e[0]}function Wp(r){let e="";function t(s){typeof s=="string"?e+=s:s.children.forEach(i)}function o(s){a(s,"syntax")}function a(s,l){let c=e.length;t(s);let p=e.length;n.push([l,c,p-c])}let n=[];function i(s){if(typeof s=="string")e+=s;else if(s.tag==="<>")t(s);else if(s.tag==="<strong>")o("*"),a(s,"bold"),o("*");else if(s.tag==="<em>")o("_"),a(s,"italic"),o("_");else if(s.tag==="<del>")o("~"),a(s,"strikethrough"),o("~");else if(s.tag==="<code>")o("`"),a(s,"code"),o("`");else if(s.tag==="<mention-here>")a(s,"mention-here");else if(s.tag==="<mention-user>")a(s,"mention-user");else if(s.tag==="<blockquote>"){o(">"),a(s,"blockquote");let l=n?.[n.length-1];l[1]-=1,l[2]+=1}else if(s.tag==="<h1>")o("# "),a(s,"h1");else if(s.tag.startsWith("<pre")){let l=x.unescape(s.tag.match(/data-code-raw="([^"]*)"/)[1]);o("```"),a(l,"pre"),o("```")}else if(s.tag.startsWith('<a href="')){let l=s.tag.match(/href="([^"]*)"/)[1],c=x.unescape(l),p=s.tag.match(/link-variant="([^"]*)"/)[1]==="labeled",u=s.tag.match(/data-raw-href="([^"]*)"/),f=u?x.unescape(u[1]):c;!p&&s.children.length===1&&typeof s.children[0]=="string"&&(s.children[0]===f||`mailto:${s.children[0]}`===c)?a(s.children[0],"link"):(o("["),t(s),o("]("),a(f,"link"),o(")"))}else throw new Error("Unknown tag: "+s.tag)}return i(r),[e,n]}function zp(r){return r.sort((e,t)=>e[1]-t[1])}function Jp(r){let e=Vp(r),t=Yp(e),o=Kp(t),[a,n]=Wp(o);return a!==r?[]:zp(n)}globalThis.parseExpensiMarkToRanges=Jp;})(); +`);return o=o.trim(),t(o)}return e},containsNonPairTag(r){let e=/<([a-z][a-z0-9-]*)\b[^>]*>|<\/([a-z][a-z0-9-]*)\s*>/gi,t=[],o=e.exec(r);for(;o;){let a=o[1],n=o[2];if(a&&a!=="br")t.push(a);else if(n){let i=t.pop();if(n!==i)return!0}o=e.exec(r)}return t.length!==0},extractLinksInMarkdownComment(r){try{let e=this.replace(r,{filterRules:["link"]}),t=new RegExp(`<a href="${bt}" target="_blank" rel="noreferrer noopener">`,"gi"),o=[...e.matchAll(t)];return x.map(o,n=>G.sanitizeURL(n[1]))}catch(e){console.warn("Error parsing url in ExpensiMark.extractLinksInMarkdownComment",{error:e});return}},getRemovedMarkdownLinks(r,e){let t=this.extractLinksInMarkdownComment(r),o=this.extractLinksInMarkdownComment(e);return t===void 0||o===void 0?[]:x.difference(t,o)}};Ba.initializer();function Yp(r){return Ba.replace(r,{shouldKeepRawInput:!0})}function Kp(r){let e=[],t=0;for(;;){let o=r.indexOf("<",t);if(o===-1){t<r.length&&e.push(["TEXT",r.substring(t)]);break}o!==t&&e.push(["TEXT",r.substring(t,o)]);let a=r.indexOf(">",o);if(a===-1)throw new Error('Invalid HTML: no matching ">"');e.push(["HTML",r.substring(o,a+1)]),t=a+1}return e}function Wp(r){let e=[{tag:"<>",children:[]}];if(r.forEach(([t,o])=>{if(t==="TEXT"){let a=x.unescape(o);e[e.length-1].children.push(a)}else if(t==="HTML")if(o.startsWith("</")){let a=e.pop();e[e.length-1].children.push(a)}else e.push({tag:o,children:[]});else throw new Error(`Unknown token type: ${t}`)}),e.length!==1)throw new Error("Invalid HTML: unclosed tags");return e[0]}function zp(r){let e="";function t(s){typeof s=="string"?e+=s:s.children.forEach(i)}function o(s){a(s,"syntax")}function a(s,l){let c=e.length;t(s);let p=e.length;n.push([l,c,p-c])}let n=[];function i(s){if(typeof s=="string")e+=s;else if(s.tag==="<>")t(s);else if(s.tag==="<strong>")o("*"),a(s,"bold"),o("*");else if(s.tag==="<em>")o("_"),a(s,"italic"),o("_");else if(s.tag==="<del>")o("~"),a(s,"strikethrough"),o("~");else if(s.tag==="<code>")o("`"),a(s,"code"),o("`");else if(s.tag==="<mention-here>")a(s,"mention-here");else if(s.tag==="<mention-user>")a(s,"mention-user");else if(s.tag==="<blockquote>"){if(o(">"),a(s,"blockquote"),n.length>0){let l=n[n.length-1];l[1]-=1,l[2]+=1}}else if(s.tag==="<h1>")o("# "),a(s,"h1");else if(s.tag.startsWith("<pre")){let l=x.unescape(s.tag.match(/data-code-raw="([^"]*)"/)[1]);o("```"),a(l,"pre"),o("```")}else if(s.tag.startsWith('<a href="')){let l=s.tag.match(/href="([^"]*)"/)[1],c=x.unescape(l),p=s.tag.match(/link-variant="([^"]*)"/)[1]==="labeled",u=s.tag.match(/data-raw-href="([^"]*)"/),f=u?x.unescape(u[1]):c;!p&&s.children.length===1&&typeof s.children[0]=="string"&&(s.children[0]===f||`mailto:${s.children[0]}`===c)?a(s.children[0],"link"):(o("["),t(s),o("]("),a(f,"link"),o(")"))}else throw new Error("Unknown tag: {node.tag}")}return i(r),[e,n]}function yl(r){switch(r){case"blockquote":return 2;case"h1":return 1;default:return 0}}function Jp(r){return r.sort((e,t)=>e[1]-t[1]||t[2]-e[2]||yl(t[0])-yl(e[0])||0)}function Zp(r){let e=Yp(r),t=Kp(e),o=Wp(t),[a,n]=zp(o);return a!==r?[]:Jp(n)}globalThis.parseExpensiMarkToRanges=Zp;})(); diff --git a/src/MarkdownTextInput.tsx b/src/MarkdownTextInput.tsx index b2414d38..41a00187 100644 --- a/src/MarkdownTextInput.tsx +++ b/src/MarkdownTextInput.tsx @@ -1,72 +1,16 @@ +import {StyleSheet, TextInput, processColor} from 'react-native'; import React from 'react'; -import {Platform, StyleSheet, TextInput, processColor} from 'react-native'; import type {TextInputProps} from 'react-native'; - -import type * as MarkdownTextInputDecoractorView from './MarkdownTextInputDecoratorViewNativeComponent'; import MarkdownTextInputDecoratorViewNativeComponent from './MarkdownTextInputDecoratorViewNativeComponent'; +import type * as MarkdownTextInputDecoratorViewNativeComponentTypes from './MarkdownTextInputDecoratorViewNativeComponent'; +import * as StyleUtils from './styleUtils'; +import type * as StyleUtilsTypes from './styleUtils'; -type MarkdownStyle = MarkdownTextInputDecoractorView.MarkdownStyle; - -const FONT_FAMILY_MONOSPACE = Platform.select({ - ios: 'Courier', - default: 'monospace', -}); - -function makeDefaultMarkdownStyle(): MarkdownStyle { - return { - syntax: { - color: 'gray', - }, - link: { - color: 'blue', - }, - h1: { - fontSize: 25, - }, - blockquote: { - borderColor: 'gray', - borderWidth: 6, - marginLeft: 6, - paddingLeft: 6, - }, - code: { - fontFamily: FONT_FAMILY_MONOSPACE, - color: 'black', - backgroundColor: 'lightgray', - }, - pre: { - fontFamily: FONT_FAMILY_MONOSPACE, - color: 'black', - backgroundColor: 'lightgray', - }, - mentionHere: { - color: 'green', - backgroundColor: 'lime', - }, - mentionUser: { - color: 'blue', - backgroundColor: 'cyan', - }, - }; -} +type PartialMarkdownStyle = StyleUtilsTypes.PartialMarkdownStyle; +type MarkdownStyle = MarkdownTextInputDecoratorViewNativeComponentTypes.MarkdownStyle; -type PartialMarkdownStyle = Partial<{ - [K in keyof MarkdownStyle]: Partial<MarkdownStyle[K]>; -}>; - -function mergeMarkdownStyleWithDefault(input: PartialMarkdownStyle | undefined): MarkdownStyle { - const output = makeDefaultMarkdownStyle(); - - if (input !== undefined) { - Object.keys(input).forEach((key) => { - if (!(key in output)) { - return; - } - Object.assign(output[key as keyof MarkdownStyle], input[key as keyof MarkdownStyle]); - }); - } - - return output; +interface MarkdownTextInputProps extends TextInputProps { + markdownStyle?: PartialMarkdownStyle; } function processColorsInMarkdownStyle(input: MarkdownStyle): MarkdownStyle { @@ -87,11 +31,7 @@ function processColorsInMarkdownStyle(input: MarkdownStyle): MarkdownStyle { } function processMarkdownStyle(input: PartialMarkdownStyle | undefined): MarkdownStyle { - return processColorsInMarkdownStyle(mergeMarkdownStyleWithDefault(input)); -} - -interface MarkdownTextInputProps extends TextInputProps { - markdownStyle?: PartialMarkdownStyle; + return processColorsInMarkdownStyle(StyleUtils.mergeMarkdownStyleWithDefault(input)); } const MarkdownTextInput = React.forwardRef<TextInput, MarkdownTextInputProps>((props, ref) => { diff --git a/src/MarkdownTextInput.web.tsx b/src/MarkdownTextInput.web.tsx index 035a9d6f..6c36c771 100644 --- a/src/MarkdownTextInput.web.tsx +++ b/src/MarkdownTextInput.web.tsx @@ -1,22 +1,480 @@ -import {TextInput} from 'react-native'; +/* eslint-disable @typescript-eslint/no-explicit-any */ +import type { + TextInput, + TextInputSubmitEditingEventData, + TextStyle, + NativeSyntheticEvent, + TextInputSelectionChangeEventData, + TextInputProps, + TextInputKeyPressEventData, + TextInputFocusEventData, +} from 'react-native'; +import React, {useEffect, useRef, useCallback, useMemo} from 'react'; +import type {CSSProperties, MutableRefObject, ReactEventHandler, FocusEventHandler, MouseEvent, KeyboardEvent, SyntheticEvent} from 'react'; +import {StyleSheet} from 'react-native'; +import * as ParseUtils from './web/parserUtils'; +import * as CursorUtils from './web/cursorUtils'; +import * as StyleUtils from './styleUtils'; +import type * as MarkdownTextInputDecoratorViewNativeComponent from './MarkdownTextInputDecoratorViewNativeComponent'; +import './web/MarkdownTextInput.css'; +import InputHistory from './web/InputHistory'; -import React from 'react'; -import type {TextInputProps} from 'react-native'; +require('../parser/react-native-live-markdown-parser.js'); + +let createReactDOMStyle: (style: any) => any; +try { + createReactDOMStyle = + // eslint-disable-next-line @typescript-eslint/no-var-requires + require('react-native-web/dist/exports/StyleSheet/compiler/createReactDOMStyle').default; +} catch (e) { + throw new Error('[react-native-live-markdown] Function `createReactDOMStyle` from react-native-web not found. Please make sure that you are using React Native Web 0.18 or newer.'); +} + +let preprocessStyle: (style: any) => any; +try { + preprocessStyle = + // eslint-disable-next-line @typescript-eslint/no-var-requires + require('react-native-web/dist/exports/StyleSheet/preprocess').default; +} catch (e) { + throw new Error('[react-native-live-markdown] Function `preprocessStyle` from react-native-web not found.'); +} + +let dangerousStyleValue: (name: string, value: any, isCustomProperty: boolean) => any; +try { + dangerousStyleValue = + // eslint-disable-next-line @typescript-eslint/no-var-requires + require('react-native-web/dist/modules/setValueForStyles/dangerousStyleValue').default; +} catch (e) { + throw new Error('[react-native-live-markdown] Function `dangerousStyleValue` from react-native-web not found.'); +} + +type MarkdownStyle = MarkdownTextInputDecoratorViewNativeComponent.MarkdownStyle; -// eslint-disable-next-line @typescript-eslint/no-empty-interface interface MarkdownTextInputProps extends TextInputProps { - // nothing here -} - -// eslint-disable-next-line arrow-body-style -const MarkdownTextInput = React.forwardRef<TextInput, MarkdownTextInputProps>((props, ref) => { - // TODO: add web implementation here - return ( - <TextInput - {...props} - ref={ref} - /> - ); + markdownStyle?: MarkdownStyle; + onClick?: (e: MouseEvent<HTMLDivElement>) => void; + dir?: string; +} + +interface MarkdownNativeEvent extends Event { + inputType: string; +} + +type Selection = { + start: number; + end: number; +}; + +let focusTimeout: NodeJS.Timeout | null = null; + +// Removes one '\n' from the end of the string that were added by contentEditable div +function normalizeValue(value: string) { + return value.replace(/\n$/, ''); +} + +// If an Input Method Editor is processing key input, the 'keyCode' is 229. +// https://www.w3.org/TR/uievents/#determine-keydown-keyup-keyCode +function isEventComposing(nativeEvent: globalThis.KeyboardEvent) { + return nativeEvent.isComposing || nativeEvent.keyCode === 229; +} + +const ZERO_WIDTH_SPACE = '\u200B'; + +function getPlaceholderValue(placeholder: string | undefined) { + if (!placeholder) { + return ZERO_WIDTH_SPACE; + } + return placeholder.length ? placeholder : ZERO_WIDTH_SPACE; +} + +function processUnitsInMarkdownStyle(input: MarkdownStyle): MarkdownStyle { + const output = JSON.parse(JSON.stringify(input)); + + Object.keys(output).forEach((key) => { + const obj = output[key]; + Object.keys(obj).forEach((prop) => { + obj[prop] = dangerousStyleValue(prop, obj[prop], false); + }); + }); + + return output as MarkdownStyle; +} + +function processMarkdownStyle(input: MarkdownStyle | undefined): MarkdownStyle { + return processUnitsInMarkdownStyle(StyleUtils.mergeMarkdownStyleWithDefault(input)); +} + +const MarkdownTextInput = React.forwardRef<TextInput, MarkdownTextInputProps>( + ( + { + accessibilityLabel, + accessibilityLabelledBy, + accessibilityRole, + autoCapitalize = 'sentences', + autoCorrect = true, + blurOnSubmit = false, + clearTextOnFocus, + dir = 'auto', + multiline = false, + markdownStyle, + onBlur, + onChange, + onChangeText, + onClick, + onFocus, + onKeyPress, + onSelectionChange, + onSubmitEditing, + placeholder, + placeholderTextColor = `rgba(0,0,0,0.2)`, + selectTextOnFocus, + spellCheck, + style = {}, + value, + }, + ref, + ) => { + const divRef = useRef<HTMLDivElement | null>(null); + const currentlyFocusedField = useRef<HTMLDivElement | null>(null); + const contentSelection = useRef<Selection | null>(null); + const className = `react-native-live-markdown-input-${multiline ? 'multiline' : 'singleline'}`; + const history = useRef<InputHistory>(); + if (!history.current) { + history.current = new InputHistory(100); + } + + const flattenedStyle = useMemo(() => StyleSheet.flatten(style), [style]); + + // Empty placeholder would collapse the div, so we need to use zero-width space to prevent it + const heightSafePlaceholder = useMemo(() => getPlaceholderValue(placeholder), [placeholder]); + const parseText = useCallback( + (target: HTMLDivElement, text: string | null, customMarkdownStyles: MarkdownStyle, cursorPosition: number | null = null, shouldAddToHistory = true) => { + if (text === null) { + return {text: target.innerText, cursorPosition: null}; + } + const parsedText = ParseUtils.parseText(target, text, cursorPosition, customMarkdownStyles, !multiline); + if (history.current && shouldAddToHistory) { + history.current.debouncedAdd(parsedText.text, parsedText.cursorPosition); + } + return parsedText; + }, + [multiline], + ); + + const processedMarkdownStyle = useMemo(() => { + const newMarkdownStyle = processMarkdownStyle(markdownStyle); + if (divRef.current) { + parseText(divRef.current, divRef.current.innerText, newMarkdownStyle); + } + return newMarkdownStyle; + }, [markdownStyle]); + + const undo = useCallback( + (target: HTMLDivElement) => { + if (!history.current) return ''; + const item = history.current.undo(); + return parseText(target, item ? item.text : null, processedMarkdownStyle, item ? item.cursorPosition : null, false).text; + }, + [processedMarkdownStyle], + ); + + const redo = useCallback( + (target: HTMLDivElement) => { + if (!history.current) return ''; + const item = history.current.redo(); + return parseText(target, item ? item.text : null, processedMarkdownStyle, item ? item.cursorPosition : null, false).text; + }, + [processedMarkdownStyle], + ); + + // We have to process value property since contentEditable div adds one additional '\n' at the end of the text if we are entering new line + const processedValue = useMemo(() => { + if (value && value[value.length - 1] === '\n') { + return `${value}\n`; + } + return value; + }, [value]); + + const setEventProps = useCallback((e: NativeSyntheticEvent<any>) => { + if (divRef.current) { + const text = normalizeValue(divRef.current.innerText || ''); + if (typeof e.target !== 'number') { + // TODO: change the logic here so every event have value property + (e.target as HTMLInputElement).value = text; + } + e.nativeEvent.text = text; + } + return e; + }, []); + + // Placeholder text color logic + const updateTextColor = useCallback((node: HTMLDivElement, text: string) => { + // eslint-disable-next-line no-param-reassign -- we need to change the style of the node, so we need to modify it + node.style.color = String(placeholder && (text === '' || text === '\n') ? placeholderTextColor : (style as TextStyle).color || 'black'); + }, []); + + const handleOnChangeText = useCallback( + (e: SyntheticEvent<HTMLDivElement>) => { + if (!divRef.current || !(e.target instanceof HTMLElement)) { + return; + } + + let text = ''; + const nativeEvent = e.nativeEvent as MarkdownNativeEvent; + switch (nativeEvent.inputType) { + case 'historyUndo': + text = undo(divRef.current); + break; + case 'historyRedo': + text = redo(divRef.current); + break; + default: + text = parseText(divRef.current, e.target.innerText, processedMarkdownStyle).text; + } + updateTextColor(divRef.current, e.target.innerText); + + if (onChange) { + const event = e as unknown as NativeSyntheticEvent<any>; + setEventProps(event); + onChange(event); + } + + if (onChangeText) { + const normalizedText = normalizeValue(text); + onChangeText(normalizedText); + } + }, + [multiline, onChange, onChangeText, setEventProps, processedMarkdownStyle], + ); + + const handleKeyPress = useCallback( + (e: KeyboardEvent<HTMLDivElement>) => { + if (!divRef.current) { + return; + } + + const hostNode = e.target; + e.stopPropagation(); + + if (e.key === 'z' && e.metaKey) { + e.preventDefault(); + const nativeEvent = e.nativeEvent as unknown as MarkdownNativeEvent; + if (e.shiftKey) { + nativeEvent.inputType = 'historyRedo'; + } else { + nativeEvent.inputType = 'historyUndo'; + } + + handleOnChangeText(e); + return; + } + + const blurOnSubmitDefault = !multiline; + const shouldBlurOnSubmit = blurOnSubmit === null ? blurOnSubmitDefault : blurOnSubmit; + + const nativeEvent = e.nativeEvent; + const isComposing = isEventComposing(nativeEvent); + + const event = e as unknown as NativeSyntheticEvent<TextInputKeyPressEventData>; + setEventProps(event); + if (onKeyPress) { + onKeyPress(event); + } + + if ( + e.key === 'Enter' && + !e.shiftKey && + // Do not call submit if composition is occuring. + !isComposing && + !e.isDefaultPrevented() + ) { + // prevent "Enter" from inserting a newline or submitting a form + e.preventDefault(); + if ((blurOnSubmit || !multiline) && onSubmitEditing) { + onSubmitEditing(event as unknown as NativeSyntheticEvent<TextInputSubmitEditingEventData>); + } else { + e.preventDefault(); + // We need to change normal behavior of "Enter" key to insert a line breaks, to prevent wrapping contentEditable text in <div> tags. + // Thanks to that in every situation we have proper amount of new lines in our parsed text. Without it pressing enter in empty lines will add 2 more new lines. + if (multiline) { + document.execCommand('insertLineBreak'); + } + } + + if ((shouldBlurOnSubmit && hostNode !== null) || !multiline) { + setTimeout(() => divRef.current && divRef.current.blur(), 0); + } + } + }, + [onKeyPress], + ); + + const handleSelectionChange: ReactEventHandler<HTMLDivElement> = useCallback( + (event) => { + const e = event as unknown as NativeSyntheticEvent<TextInputSelectionChangeEventData>; + setEventProps(e); + const selection = CursorUtils.getCurrentCursorPosition(e.target as unknown as HTMLElement); + contentSelection.current = selection; + if (onSelectionChange) { + e.nativeEvent.selection = selection; + onSelectionChange(e); + } + }, + [onSelectionChange, setEventProps], + ); + + const handleFocus: FocusEventHandler<HTMLDivElement> = useCallback( + (event) => { + const e = event as unknown as NativeSyntheticEvent<TextInputFocusEventData>; + const hostNode = e.target as unknown as HTMLDivElement; + currentlyFocusedField.current = hostNode; + setEventProps(e); + if (divRef.current && contentSelection.current) { + CursorUtils.setCursorPosition(divRef.current, contentSelection.current.start || divRef.current.innerText.length, !multiline); + } + + if (onFocus) { + setEventProps(e); + onFocus(e); + } + + if (hostNode !== null) { + if (clearTextOnFocus && divRef.current) { + divRef.current.innerText = ''; + } + if (selectTextOnFocus) { + // Safari requires selection to occur in a setTimeout + if (focusTimeout !== null) { + clearTimeout(focusTimeout); + } + focusTimeout = setTimeout(() => { + if (hostNode === null) { + return; + } + document.execCommand('selectAll', false, ''); + }, 0); + } + } + }, + [clearTextOnFocus, multiline, onFocus, selectTextOnFocus, setEventProps], + ); + + const handleBlur: FocusEventHandler<HTMLDivElement> = useCallback( + (event) => { + const e = event as unknown as NativeSyntheticEvent<TextInputFocusEventData>; + currentlyFocusedField.current = null; + if (onBlur) { + setEventProps(e); + onBlur(e); + } + }, + [onBlur, setEventProps], + ); + + const handleClick = useCallback( + (e: MouseEvent<HTMLDivElement, globalThis.MouseEvent>) => { + if (!onClick || !divRef.current) { + return; + } + (e.target as HTMLInputElement).value = normalizeValue(divRef.current.innerText || ''); + onClick(e); + }, + [onClick], + ); + + const setRef = (currentRef: HTMLDivElement | null) => { + const r = currentRef; + if (r) { + (r as unknown as TextInput).isFocused = () => document.activeElement === r; + (r as unknown as TextInput).clear = () => { + r.innerText = ''; + updateTextColor(r, ''); + }; + + if (value === '' || value === undefined) { + updateTextColor(r, r.innerText); + } + } + + if (ref) { + if (typeof ref === 'object') { + // eslint-disable-next-line no-param-reassign + (ref as MutableRefObject<HTMLDivElement | null>).current = r; + } else if (typeof ref === 'function') { + (ref as (elementRef: HTMLDivElement | null) => void)(r); + } + } + divRef.current = r; + }; + + useEffect(() => { + if (!divRef.current || processedValue === divRef.current.innerText) { + return; + } + + if (value === undefined) { + parseText(divRef.current, divRef.current.innerText, processedMarkdownStyle); + return; + } + + const text = processedValue !== undefined ? processedValue : ''; + parseText(divRef.current, text, processedMarkdownStyle); + if ((divRef.current as unknown as TextInput).isFocused()) { + contentSelection.current = { + start: text.length, + end: text.length, + }; + } + updateTextColor(divRef.current, value); + }, [multiline, processedMarkdownStyle, processedValue]); + + return ( + // eslint-disable-next-line jsx-a11y/no-static-element-interactions + <div + ref={setRef} + contentEditable + style={ + StyleSheet.flatten([ + styles.defaultInputStyles, + flattenedStyle && { + caretColor: (flattenedStyle as TextStyle).color || 'black', + }, + createReactDOMStyle(preprocessStyle(flattenedStyle)), + ]) as CSSProperties + } + role={accessibilityRole || 'textbox'} + aria-label={accessibilityLabel} + aria-labelledby={`${accessibilityLabelledBy}`} + aria-placeholder={heightSafePlaceholder} + aria-multiline={multiline} + autoCorrect={autoCorrect ? 'on' : 'off'} + autoCapitalize={autoCapitalize} + className={className} + onKeyDown={handleKeyPress} + onInput={handleOnChangeText} + onSelect={handleSelectionChange} + onClick={handleClick} + onFocus={handleFocus} + onBlur={handleBlur} + placeholder={heightSafePlaceholder} + spellCheck={spellCheck} + dir={dir} + /> + ); + }, +); + +const styles = StyleSheet.create({ + defaultInputStyles: { + borderColor: 'black', + borderWidth: 1, + borderStyle: 'solid', + fontFamily: 'sans-serif', + boxSizing: 'border-box', + whiteSpace: 'pre-wrap', + overflow: 'scroll', + scrollbarWidth: 'none', + }, }); export default MarkdownTextInput; diff --git a/src/__tests__/index.test.tsx b/src/__tests__/index.test.tsx index bf84291a..8fa87992 100644 --- a/src/__tests__/index.test.tsx +++ b/src/__tests__/index.test.tsx @@ -1 +1,264 @@ -it.todo('write a test'); +/* eslint-disable @typescript-eslint/no-explicit-any */ +import {expect} from '@jest/globals'; +import type {MatcherFunction} from 'expect'; +import * as ParserUtils from '../web/parserUtils'; +import type * as MarkdownTypes from '../web/parserUtils'; + +require('../../parser/react-native-live-markdown-parser.js'); + +type MarkdownType = MarkdownTypes.MarkdownType; + +const toBeParsedAsHTML: MatcherFunction<[expectedHTML: string]> = function (actual, expectedHTML) { + if (typeof actual !== 'string') { + throw new Error('Actual value must be a string'); + } + let expected = expectedHTML; + const ranges = global.parseExpensiMarkToRanges(actual); + const markdownRanges: MarkdownTypes.MarkdownRange[] = ranges.map((range) => { + const [type, startIndex, length] = range; + return { + type: type as MarkdownType, + startIndex, + length, + }; + }); + + const actualDOM = ParserUtils.parseRangesToHTMLNodes(actual, markdownRanges, {}, true); + const actualHTML = actualDOM.innerHTML; + + if (actualHTML === expected) { + expected = actualHTML; + } + if (actualHTML !== expected) { + return { + pass: false, + message: () => `Expected:\t${JSON.stringify(expected)},\n got:\t${JSON.stringify(actualHTML)}`, + }; + } + return {message: () => '', pass: true}; +}; + +expect.extend({ + toBeParsedAsHTML, +}); + +declare module 'expect' { + interface AsymmetricMatchers { + toBeParsedAsHTML(expectedHTML: string): void; + } + interface Matchers<R> { + toBeParsedAsHTML(expectedHTML: string): R; + } +} + +test('empty string', () => { + expect('').toBeParsedAsHTML(''); +}); + +test('no formatting', () => { + expect('Hello, world!').toBeParsedAsHTML('Hello, world!'); +}); + +test('bold', () => { + expect('Hello, *world*').toBeParsedAsHTML('Hello, <span class="syntax">*</span><span class="bold">world</span><span class="syntax">*</span>'); +}); + +test('italic', () => { + expect('Hello, _world_!').toBeParsedAsHTML('Hello, <span class="syntax">_</span><span class="italic">world</span><span class="syntax">_</span>!'); +}); + +test('strikethrough', () => { + expect('Hello, ~world~!').toBeParsedAsHTML('Hello, <span class="syntax">~</span><span class="strikethrough">world</span><span class="syntax">~</span>!'); +}); + +describe('mention-here', () => { + test('normal', () => { + expect('@here Hello!').toBeParsedAsHTML('<span class="mention-here">@here</span> Hello!'); + }); + + test('with punctation marks', () => { + expect('@here!').toBeParsedAsHTML('<span class="mention-here">@here</span>!'); + }); + + test('at the beginning of a heading', () => { + expect('# @here').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1"><span class="mention-here">@here</span></span>'); + }); +}); + +describe('mention-user', () => { + test('normal', () => { + expect('@mail@mail.com Hello!').toBeParsedAsHTML('<span class="mention-user">@mail@mail.com</span> Hello!'); + }); + + test('with punctation marks', () => { + expect('@mail@mail.com!').toBeParsedAsHTML('<span class="mention-user">@mail@mail.com</span>!'); + }); + + test('at the beginning of a heading', () => { + expect('# @mail@mail.com').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1"><span class="mention-user">@mail@mail.com</span></span>'); + }); +}); + +describe('link', () => { + test('plain link', () => { + expect('https://example.com').toBeParsedAsHTML('<span class="link">https://example.com</span>'); + }); + + test('labeled link', () => { + expect('[Link](https://example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>Link<span class="syntax">](</span><span class="link">https://example.com</span><span class="syntax">)</span>', + ); + }); + + test('link with same label as href', () => { + expect('[https://example.com](https://example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>https://example.com<span class="syntax">](</span><span class="link">https://example.com</span><span class="syntax">)</span>', + ); + }); + + test('link with query string', () => { + expect('https://example.com?name=John&age=25&city=NewYork').toBeParsedAsHTML('<span class="link">https://example.com?name=John&age=25&city=NewYork</span>'); + }); +}); + +describe('email', () => { + test('plain email', () => { + expect('someone@example.com').toBeParsedAsHTML('<span class="link">someone@example.com</span>'); + }); + + test('labeled email', () => { + expect('[Email](mailto:someone@example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>Email<span class="syntax">](</span><span class="link">mailto:someone@example.com</span><span class="syntax">)</span>', + ); + }); +}); + +describe('email with same label as address', () => { + test('label and address without "mailto:"', () => { + expect('[someone@example.com](someone@example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>someone@example.com<span class="syntax">](</span><span class="link">someone@example.com</span><span class="syntax">)</span>', + ); + }); + + test('label with "mailto:"', () => { + expect('[mailto:someone@example.com](someone@example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>mailto:someone@example.com<span class="syntax">](</span><span class="link">someone@example.com</span><span class="syntax">)</span>', + ); + }); + + test('address with "mailto:"', () => { + expect('[someone@example.com](mailto:someone@example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>someone@example.com<span class="syntax">](</span><span class="link">mailto:someone@example.com</span><span class="syntax">)</span>', + ); + }); + + test('label and address with "mailto:"', () => { + expect('[mailto:someone@example.com](mailto:someone@example.com)').toBeParsedAsHTML( + '<span class="syntax">[</span>mailto:someone@example.com<span class="syntax">](</span><span class="link">mailto:someone@example.com</span><span class="syntax">)</span>', + ); + }); +}); + +test('inline code', () => { + expect('Hello `world`!').toBeParsedAsHTML('Hello <span class="syntax">`</span><span class="code">world</span><span class="syntax">`</span>!'); +}); + +test('codeblock', () => { + expect('```\nHello world!\n```').toBeParsedAsHTML('<span class="syntax">```</span><span class="pre"><br>Hello world!<br></span><span class="syntax">```</span>'); +}); + +describe('quote', () => { + test('with single space', () => { + expect('> Hello world!').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span> Hello world!</span>'); + }); + + test('with multiple spaces', () => { + expect('> Hello world!').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span> Hello world!</span>'); + }); + + test('without space', () => { + expect('>Hello world!').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span>Hello world!</span>'); + }); +}); + +test('multiple blockquotes', () => { + expect('> Hello\n> beautiful\n> world').toBeParsedAsHTML( + '<span class="blockquote"><span class="syntax">></span> Hello</span><br><span class="blockquote"><span class="syntax">></span> beautiful</span><br><span class="blockquote"><span class="syntax">></span> world</span>', + ); +}); + +test('separate blockquotes', () => { + expect('> Lorem ipsum\ndolor\n> sit amet').toBeParsedAsHTML( + '<span class="blockquote"><span class="syntax">></span> Lorem ipsum</span><br>dolor<br><span class="blockquote"><span class="syntax">></span> sit amet</span>', + ); +}); + +test('nested blockquotes', () => { + expect('>>>> Lorem ipsum dolor sit amet').toBeParsedAsHTML( + '<span class="blockquote"><span class="syntax">></span><span class="blockquote"><span class="syntax">></span><span class="blockquote"><span class="syntax">></span><span class="blockquote"><span class="syntax">></span> Lorem ipsum dolor sit amet</span></span></span></span>', + ); +}); + +test('heading', () => { + expect('# Hello world').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1">Hello world</span>'); +}); + +test('nested bold and italic', () => { + expect('*_Hello_*, _*world*_!').toBeParsedAsHTML( + '<span class="syntax">*</span><span class="bold"><span class="syntax">_</span><span class="italic">Hello</span><span class="syntax">_</span></span><span class="syntax">*</span>, <span class="syntax">_</span><span class="italic"><span class="syntax">*</span><span class="bold">world</span><span class="syntax">*</span></span><span class="syntax">_</span>!', + ); +}); + +describe('nested heading in blockquote', () => { + test('without spaces', () => { + expect('># Hello world').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span><span class="syntax"># </span><span class="h1">Hello world</span></span>'); + }); + + test('with single space', () => { + expect('> # Hello world').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span> <span class="syntax"># </span><span class="h1">Hello world</span></span>'); + }); + + test('with multiple spaces after #', () => { + expect('># Hello world').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span><span class="syntax"># </span><span class="h1"> Hello world</span></span>'); + }); +}); + +describe('trailing whitespace', () => { + describe('after blockquote', () => { + test('nothing', () => { + expect('> Hello world').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span> Hello world</span>'); + }); + + test('single space', () => { + expect('> Hello world ').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span> Hello world </span>'); + }); + + test('newline', () => { + expect('> Hello world\n').toBeParsedAsHTML('<span class="blockquote"><span class="syntax">></span> Hello world</span><br>'); + }); + }); + + describe('after heading', () => { + test('nothing', () => { + expect('# Hello world').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1">Hello world</span>'); + }); + + test('single space', () => { + expect('# Hello world ').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1">Hello world </span>'); + }); + + test('multiple spaces', () => { + expect('# Hello world ').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1"> Hello world </span>'); + }); + + test('newline', () => { + expect('# Hello world\n').toBeParsedAsHTML('<span class="syntax"># </span><span class="h1">Hello world</span><br>'); + }); + + test('multiple quotes', () => { + expect('> # Hello\n> # world').toBeParsedAsHTML( + '<span class="blockquote"><span class="syntax">></span> <span class="syntax"># </span><span class="h1">Hello</span></span><br><span class="blockquote"><span class="syntax">></span> <span class="syntax"># </span><span class="h1">world</span></span>', + ); + }); + }); +}); diff --git a/src/react-native-web.d.ts b/src/react-native-web.d.ts new file mode 100644 index 00000000..72002b36 --- /dev/null +++ b/src/react-native-web.d.ts @@ -0,0 +1 @@ +declare module 'react-native-web/dist/exports/StyleSheet/compiler/createReactDOMStyle'; diff --git a/src/styleUtils.ts b/src/styleUtils.ts new file mode 100644 index 00000000..dd11ae40 --- /dev/null +++ b/src/styleUtils.ts @@ -0,0 +1,70 @@ +import {Platform} from 'react-native'; +import type * as MarkdownTextInputDecoractorView from './MarkdownTextInputDecoratorViewNativeComponent'; + +type MarkdownStyle = MarkdownTextInputDecoractorView.MarkdownStyle; + +type PartialMarkdownStyle = Partial<{ + [K in keyof MarkdownStyle]: Partial<MarkdownStyle[K]>; +}>; + +const FONT_FAMILY_MONOSPACE = Platform.select({ + ios: 'Courier', + default: 'monospace', +}); + +function makeDefaultMarkdownStyle(): MarkdownStyle { + return { + syntax: { + color: 'gray', + }, + link: { + color: 'blue', + }, + h1: { + fontSize: 25, + }, + blockquote: { + borderColor: 'gray', + borderWidth: 6, + marginLeft: 6, + paddingLeft: 6, + }, + code: { + fontFamily: FONT_FAMILY_MONOSPACE, + color: 'black', + backgroundColor: 'lightgray', + }, + pre: { + fontFamily: FONT_FAMILY_MONOSPACE, + color: 'black', + backgroundColor: 'lightgray', + }, + mentionHere: { + color: 'green', + backgroundColor: 'lime', + }, + mentionUser: { + color: 'blue', + backgroundColor: 'cyan', + }, + }; +} + +function mergeMarkdownStyleWithDefault(input: PartialMarkdownStyle | undefined): MarkdownStyle { + const output = makeDefaultMarkdownStyle(); + + if (input !== undefined) { + Object.keys(input).forEach((key) => { + if (!(key in output)) { + return; + } + Object.assign(output[key as keyof MarkdownStyle], input[key as keyof MarkdownStyle]); + }); + } + + return output; +} + +export type {PartialMarkdownStyle}; + +export {mergeMarkdownStyleWithDefault}; diff --git a/src/web/InputHistory.ts b/src/web/InputHistory.ts new file mode 100644 index 00000000..48ff58e5 --- /dev/null +++ b/src/web/InputHistory.ts @@ -0,0 +1,90 @@ +type HistoryItem = { + text: string; + cursorPosition: number | null; +}; + +export default class InputHistory { + depth: number; + + history: HistoryItem[]; + + historyIndex: number; + + currentText: string | null = null; + + timeout: NodeJS.Timeout | null = null; + + debounceTime: number; + + constructor(depth: number, debounceTime = 200) { + this.depth = depth; + this.history = []; + this.historyIndex = 0; + this.debounceTime = debounceTime; + } + + debouncedAdd(text: string, cursorPosition: number): void { + this.currentText = text; + + if (this.timeout) { + clearTimeout(this.timeout); + } + + this.timeout = setTimeout(() => { + if (this.currentText == null) { + return; + } + this.add(this.currentText, cursorPosition); + this.currentText = null; + }, this.debounceTime); + } + + add(text: string, cursorPosition: number): void { + if (this.history.length > 0) { + const lastItem = this.history[this.history.length - 1]; + if (lastItem && text === lastItem.text) { + return; + } + } + + if (this.historyIndex < this.history.length - 1) { + this.history.splice(this.historyIndex + 1); + } + + this.history.push({text, cursorPosition}); + if (this.history.length > this.depth) { + this.history.shift(); + } + + this.historyIndex = this.history.length - 1; + } + + undo(): HistoryItem | null { + if (this.currentText !== null && this.timeout) { + clearTimeout(this.timeout); + return this.history[this.history.length - 1] || null; + } + + if (this.history.length === 0) { + return null; + } + + if (this.historyIndex > 0) { + this.historyIndex -= 1; + } + return this.history[this.historyIndex] || null; + } + + redo(): HistoryItem | null { + if (this.history.length === 0 || (this.currentText !== null && this.timeout)) { + return null; + } + + if (this.historyIndex < this.history.length - 1) { + this.historyIndex += 1; + } else { + return null; + } + return this.history[this.historyIndex] || null; + } +} diff --git a/src/web/MarkdownTextInput.css b/src/web/MarkdownTextInput.css new file mode 100644 index 00000000..81f1c94a --- /dev/null +++ b/src/web/MarkdownTextInput.css @@ -0,0 +1,24 @@ +.react-native-live-markdown-input-singleline[contenteditable='true'] { + white-space: nowrap; + overflow: auto; +} + +.react-native-live-markdown-input-singleline[contenteditable='true']::-webkit-scrollbar { + display: none; +} + +.react-native-live-markdown-input-singleline[contenteditable='true'] br { + display: none; +} + +.react-native-live-markdown-input-singleline[contenteditable='true'] * { + display: inline; + white-space: nowrap; +} + +.react-native-live-markdown-input-singleline[contenteditable='true']:empty::before, +.react-native-live-markdown-input-multiline[contenteditable='true']:empty::before { + pointer-events: none; + display: block; /* For Firefox */ + content: attr(placeholder); +} diff --git a/src/web/cursorUtils.ts b/src/web/cursorUtils.ts new file mode 100644 index 00000000..b0864afb --- /dev/null +++ b/src/web/cursorUtils.ts @@ -0,0 +1,87 @@ +function createRange(node: HTMLElement, targetPosition: number, ignoreNewLines = false) { + const range = document.createRange(); + range.selectNode(node); + + let pos = 0; + const stack: Node[] = [node]; + while (stack.length > 0) { + const current = stack.pop(); + if (!current) { + break; + } + if (current.nodeType === Node.TEXT_NODE || current.nodeName === 'BR') { + const textContentLength = current.textContent ? current.textContent.length : 0; + const len = current.nodeName === 'BR' ? 1 : textContentLength; + if (pos + len >= targetPosition) { + if (current.nodeName === 'BR') { + range.setStartAfter(current); + (current as HTMLElement).scrollIntoView(); + } else { + range.setStart(current, targetPosition - pos); + } + return range; + } + pos += len; + } else if (current.childNodes && current.childNodes.length > 0) { + for (let i = current.childNodes.length - 1; i >= 0; i--) { + const currentNode = current.childNodes[i]; + if (currentNode && (!ignoreNewLines || (ignoreNewLines && currentNode.nodeName !== 'BR'))) { + stack.push(currentNode); + } + } + } + } + + range.setStart(node, node.childNodes.length); + return range; +} + +function setCursorPosition(target: HTMLElement, targetPosition: number, ignoreNewLines = false) { + const range = createRange(target, targetPosition, ignoreNewLines); + const selection = window.getSelection(); + if (selection) { + range.collapse(true); + selection.removeAllRanges(); + selection.addRange(range); + } +} + +function moveCursorToEnd(target: HTMLElement) { + const range = document.createRange(); + const selection = window.getSelection(); + if (selection) { + range.setStart(target, target.childNodes.length); + range.collapse(true); + selection.removeAllRanges(); + selection.addRange(range); + } +} + +function getIndexedPosition(target: HTMLElement, range: Range, isStart: boolean) { + const marker = document.createTextNode('\0'); + const rangeClone = range.cloneRange(); + + rangeClone.collapse(isStart); + + rangeClone.insertNode(marker); + const position = target.innerText.indexOf('\0'); + if (marker.parentNode) { + marker.parentNode.removeChild(marker); + } + + return position; +} + +function getCurrentCursorPosition(target: HTMLElement) { + const selection = document.getSelection(); + if (!selection || selection.rangeCount === 0) { + return {start: target.innerText.length, end: target.innerText.length}; + } + + const range = selection.getRangeAt(0); + const start = getIndexedPosition(target, range, true); + const end = getIndexedPosition(target, range, false); + return {start, end}; +} + +export {getCurrentCursorPosition, moveCursorToEnd, setCursorPosition}; diff --git a/src/web/parserUtils.ts b/src/web/parserUtils.ts new file mode 100644 index 00000000..fa1c2a4a --- /dev/null +++ b/src/web/parserUtils.ts @@ -0,0 +1,208 @@ +import * as CursorUtils from './cursorUtils'; +import type * as StyleUtilsTypes from '../styleUtils'; + +type PartialMarkdownStyle = StyleUtilsTypes.PartialMarkdownStyle; + +type MarkdownType = 'bold' | 'italic' | 'strikethrough' | 'link' | 'code' | 'pre' | 'blockquote' | 'h1' | 'syntax' | 'mention-here' | 'mention-user'; + +type MarkdownRange = { + type: MarkdownType; + startIndex: number; + length: number; +}; + +type NestedNode = { + node: HTMLElement; + endIndex: number; +}; + +function addStyling(targetElement: HTMLElement, type: MarkdownType, markdownStyle: PartialMarkdownStyle) { + const node = targetElement; + switch (type) { + case 'syntax': + Object.assign(node.style, markdownStyle.syntax); + break; + case 'bold': + node.style.fontWeight = 'bold'; + break; + case 'italic': + node.style.fontStyle = 'italic'; + break; + case 'strikethrough': + node.style.textDecoration = 'line-through'; + break; + case 'mention-here': + Object.assign(node.style, markdownStyle.mentionHere); + break; + case 'mention-user': + Object.assign(node.style, markdownStyle.mentionUser); + break; + case 'link': + Object.assign(node.style, { + ...markdownStyle.link, + textDecoration: 'underline', + }); + break; + case 'code': + Object.assign(node.style, markdownStyle.code); + break; + case 'pre': + Object.assign(node.style, markdownStyle.pre); + break; + + case 'blockquote': + Object.assign(node.style, { + ...markdownStyle.blockquote, + borderLeftStyle: 'solid', + display: 'inline-block', + maxWidth: '100%', + boxSizing: 'border-box', + }); + break; + case 'h1': + Object.assign(node.style, { + ...markdownStyle.h1, + fontWeight: 'bold', + }); + break; + default: + break; + } +} + +function addSubstringAsTextNode(root: HTMLElement, text: string, startIndex: number, endIndex: number) { + const substring = text.substring(startIndex, endIndex); + if (substring.length > 0) { + root.appendChild(document.createTextNode(substring)); + } +} + +function addTextWithNewlines(root: HTMLElement, text: string, startIndex: number, endIndex: number) { + const textAfterLastRange = text.substring(startIndex, endIndex); + if (textAfterLastRange.length > 0) { + textAfterLastRange.split('\n').forEach((line, index, array) => { + if (index < array.length - 1) { + addSubstringAsTextNode(root, line, 0, line.length); + root.appendChild(document.createElement('br')); + } else { + addSubstringAsTextNode(root, line, 0, line.length); + } + }); + } +} + +function parseRangesToHTMLNodes(text: string, ranges: MarkdownRange[], markdownStyle: PartialMarkdownStyle = {}, disableInlineStyles = false): HTMLElement { + const root: HTMLElement = document.createElement('span'); + root.className = 'root'; + const textLength = text.length; + if (ranges.length === 0) { + addTextWithNewlines(root, text, 0, textLength); + return root; + } + + const stack = [...ranges]; + const nestedStack: NestedNode[] = [{node: root, endIndex: textLength}]; + let lastRangeEndIndex = 0; + while (stack.length > 0) { + const range = stack.shift(); + if (!range) { + break; + } + let currentRoot = nestedStack[nestedStack.length - 1]; + if (!currentRoot) { + break; + } + + const endOfCurrentRange = range.startIndex + range.length; + const nextRangeStartIndex = stack.length > 0 && !!stack[0] ? stack[0].startIndex || 0 : textLength; + + addTextWithNewlines(currentRoot.node, text, lastRangeEndIndex, range.startIndex); // add text with newlines before current range + + const span = document.createElement('span'); + if (disableInlineStyles) { + span.className = range.type; + } else { + addStyling(span, range.type, markdownStyle); + } + + if (stack.length > 0 && nextRangeStartIndex < endOfCurrentRange && range.type !== 'syntax') { + // tag nesting + currentRoot.node.appendChild(span); + nestedStack.push({node: span, endIndex: endOfCurrentRange}); + lastRangeEndIndex = range.startIndex; + } else { + addTextWithNewlines(span, text, range.startIndex, endOfCurrentRange); + currentRoot.node.appendChild(span); + lastRangeEndIndex = endOfCurrentRange; + + // end of tag nesting + while (nestedStack.length - 1 > 0 && nextRangeStartIndex >= currentRoot.endIndex) { + addTextWithNewlines(currentRoot.node, text, lastRangeEndIndex, currentRoot.endIndex); + const prevRoot = nestedStack.pop(); + if (!prevRoot) { + break; + } + lastRangeEndIndex = prevRoot.endIndex; + currentRoot = nestedStack[nestedStack.length - 1] || currentRoot; + } + } + } + + if (nestedStack.length > 1) { + const lastNestedNode = nestedStack[nestedStack.length - 1]; + if (lastNestedNode) { + root.appendChild(lastNestedNode.node); + } + } + + addTextWithNewlines(root, text, lastRangeEndIndex, textLength); + return root; +} + +function parseText( + target: HTMLElement, + text: string, + curosrPositionIndex: number | null, + markdownStyle: PartialMarkdownStyle = {}, + disableNewLinesInCursorPositioning = false, + alwaysMoveCursorToTheEnd = false, +) { + const targetElement = target; + + let cursorPosition: number | null = curosrPositionIndex; + const isFocused = document.activeElement === target; + if (isFocused && curosrPositionIndex === null) { + cursorPosition = CursorUtils.getCurrentCursorPosition(target).start; + } + const ranges = global.parseExpensiMarkToRanges(text); + + const markdownRanges: MarkdownRange[] = ranges.map((range) => { + const [type, startIndex, length] = range; + return { + type: type as MarkdownType, + startIndex, + length, + }; + }); + + targetElement.innerHTML = ''; + targetElement.innerText = ''; + + // We don't want to parse text with single '\n', because contentEditable represents it as invisible <br /> + if (!!text && text !== '\n') { + const dom = parseRangesToHTMLNodes(text, markdownRanges, markdownStyle); + target.appendChild(dom); + } + + if (alwaysMoveCursorToTheEnd) { + CursorUtils.moveCursorToEnd(target); + } else if (isFocused && cursorPosition !== null) { + CursorUtils.setCursorPosition(target, cursorPosition, disableNewLinesInCursorPositioning); + } + + return {text: target.innerText, cursorPosition: cursorPosition || 0}; +} + +export {parseText, parseRangesToHTMLNodes}; + +export type {MarkdownRange, MarkdownType}; diff --git a/tsconfig.json b/tsconfig.json index ae47164a..b8a0c641 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,7 +9,7 @@ "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "jsx": "react", - "lib": ["esnext"], + "lib": ["esnext", "dom"], "module": "esnext", "moduleResolution": "node", "noFallthroughCasesInSwitch": true, diff --git a/yarn.lock b/yarn.lock index 29366c24..ad77dc60 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1620,7 +1620,7 @@ __metadata: languageName: node linkType: hard -"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.20.0, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.4.5, @babel/runtime@npm:^7.8.4": +"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.20.0, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.4.5, @babel/runtime@npm:^7.8.4": version: 7.23.8 resolution: "@babel/runtime@npm:7.23.8" dependencies: @@ -1784,11 +1784,13 @@ __metadata: eslint-plugin-promise: ^6.1.1 eslint-plugin-tsdoc: ^0.2.17 jest: ^28.1.1 + jest-environment-jsdom: ^29.7.0 pod-install: ^0.1.0 prettier: ^2.0.5 react: 18.2.0 react-native: 0.72.9 react-native-builder-bob: ^0.20.0 + react-native-web: ^0.19.10 release-it: ^15.0.0 turbo: ^1.10.7 typescript: ^5.3.3 @@ -2806,6 +2808,13 @@ __metadata: languageName: node linkType: hard +"@react-native/normalize-color@npm:^2.1.0": + version: 2.1.0 + resolution: "@react-native/normalize-color@npm:2.1.0" + checksum: 8ccbd40b3c7629f1dc97b3e9aadd95fd3507fcf2e37535a6299a70436ab891c34cbdc4240b07380553d6e85dd909e23d5773b5be1da2906b026312e0b0768838 + languageName: node + linkType: hard + "@react-native/normalize-colors@npm:<0.73.0, @react-native/normalize-colors@npm:^0.72.0": version: 0.72.0 resolution: "@react-native/normalize-colors@npm:0.72.0" @@ -2928,6 +2937,13 @@ __metadata: languageName: node linkType: hard +"@tootallnate/once@npm:2": + version: 2.0.0 + resolution: "@tootallnate/once@npm:2.0.0" + checksum: ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 + languageName: node + linkType: hard + "@types/babel__core@npm:^7.1.14": version: 7.20.5 resolution: "@types/babel__core@npm:7.20.5" @@ -3020,6 +3036,17 @@ __metadata: languageName: node linkType: hard +"@types/jsdom@npm:^20.0.0": + version: 20.0.1 + resolution: "@types/jsdom@npm:20.0.1" + dependencies: + "@types/node": "*" + "@types/tough-cookie": "*" + parse5: ^7.0.0 + checksum: d55402c5256ef451f93a6e3d3881f98339fe73a5ac2030588df056d6835df8367b5a857b48d27528289057e26dcdd3f502edc00cb877c79174cb3a4c7f2198c1 + languageName: node + linkType: hard + "@types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -3119,6 +3146,13 @@ __metadata: languageName: node linkType: hard +"@types/tough-cookie@npm:*": + version: 4.0.5 + resolution: "@types/tough-cookie@npm:4.0.5" + checksum: f19409d0190b179331586365912920d192733112a195e870c7f18d20ac8adb7ad0b0ff69dad430dba8bc2be09593453a719cfea92dc3bda19748fd158fe1498d + languageName: node + linkType: hard + "@types/yargs-parser@npm:*": version: 21.0.3 resolution: "@types/yargs-parser@npm:21.0.3" @@ -3416,6 +3450,13 @@ __metadata: languageName: node linkType: hard +"abab@npm:^2.0.6": + version: 2.0.6 + resolution: "abab@npm:2.0.6" + checksum: 6ffc1af4ff315066c62600123990d87551ceb0aafa01e6539da77b0f5987ac7019466780bf480f1787576d4385e3690c81ccc37cfda12819bf510b8ab47e5a3e + languageName: node + linkType: hard + "abbrev@npm:^2.0.0": version: 2.0.0 resolution: "abbrev@npm:2.0.0" @@ -3442,6 +3483,16 @@ __metadata: languageName: node linkType: hard +"acorn-globals@npm:^7.0.0": + version: 7.0.1 + resolution: "acorn-globals@npm:7.0.1" + dependencies: + acorn: ^8.1.0 + acorn-walk: ^8.0.2 + checksum: 2a2998a547af6d0db5f0cdb90acaa7c3cbca6709010e02121fb8b8617c0fbd8bab0b869579903fde358ac78454356a14fadcc1a672ecb97b04b1c2ccba955ce8 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.2.0, acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -3451,7 +3502,7 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^8.2.0": +"acorn-walk@npm:^8.0.2, acorn-walk@npm:^8.2.0": version: 8.3.2 resolution: "acorn-walk@npm:8.3.2" checksum: 3626b9d26a37b1b427796feaa5261faf712307a8920392c8dce9a5739fb31077667f4ad2ec71c7ac6aaf9f61f04a9d3d67ff56f459587206fc04aa31c27ef392 @@ -3467,7 +3518,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.7.0, acorn@npm:^8.8.2, acorn@npm:^8.9.0": +"acorn@npm:^8.1.0, acorn@npm:^8.7.0, acorn@npm:^8.8.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -3483,6 +3534,15 @@ __metadata: languageName: node linkType: hard +"agent-base@npm:6": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: 4 + checksum: f52b6872cc96fd5f622071b71ef200e01c7c4c454ee68bc9accca90c98cfb39f2810e3e9aa330435835eedc8c23f4f8a15267f67c6e245d2b33757575bdac49d + languageName: node + linkType: hard + "agent-base@npm:^7.0.2, agent-base@npm:^7.1.0": version: 7.1.0 resolution: "agent-base@npm:7.1.0" @@ -3787,7 +3847,7 @@ __metadata: languageName: node linkType: hard -"asap@npm:~2.0.6": +"asap@npm:~2.0.3, asap@npm:~2.0.6": version: 2.0.6 resolution: "asap@npm:2.0.6" checksum: b296c92c4b969e973260e47523207cd5769abd27c245a68c26dc7a0fe8053c55bb04360237cb51cab1df52be939da77150ace99ad331fb7fb13b3423ed73ff3d @@ -3865,6 +3925,13 @@ __metadata: languageName: node linkType: hard +"asynckit@npm:^0.4.0": + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be + languageName: node + linkType: hard + "available-typed-arrays@npm:^1.0.5": version: 1.0.5 resolution: "available-typed-arrays@npm:1.0.5" @@ -4653,6 +4720,15 @@ __metadata: languageName: node linkType: hard +"combined-stream@npm:^1.0.8": + version: 1.0.8 + resolution: "combined-stream@npm:1.0.8" + dependencies: + delayed-stream: ~1.0.0 + checksum: 49fa4aeb4916567e33ea81d088f6584749fc90c7abec76fd516bf1c5aa5c79f3584b5ba3de6b86d26ddd64bae5329c4c7479343250cfe71c75bb366eae53bb7c + languageName: node + linkType: hard + "command-exists@npm:^1.2.8": version: 1.2.9 resolution: "command-exists@npm:1.2.9" @@ -5055,6 +5131,15 @@ __metadata: languageName: node linkType: hard +"cross-fetch@npm:^3.1.5": + version: 3.1.8 + resolution: "cross-fetch@npm:3.1.8" + dependencies: + node-fetch: ^2.6.12 + checksum: 78f993fa099eaaa041122ab037fe9503ecbbcb9daef234d1d2e0b9230a983f64d645d088c464e21a247b825a08dc444a6e7064adfa93536d3a9454b4745b3632 + languageName: node + linkType: hard + "cross-spawn@npm:^6.0.5": version: 6.0.5 resolution: "cross-spawn@npm:6.0.5" @@ -5088,6 +5173,38 @@ __metadata: languageName: node linkType: hard +"css-in-js-utils@npm:^3.1.0": + version: 3.1.0 + resolution: "css-in-js-utils@npm:3.1.0" + dependencies: + hyphenate-style-name: ^1.0.3 + checksum: 066318e918c04a5e5bce46b38fe81052ea6ac051bcc6d3c369a1d59ceb1546cb2b6086901ab5d22be084122ee3732169996a3dfb04d3406eaee205af77aec61b + languageName: node + linkType: hard + +"cssom@npm:^0.5.0": + version: 0.5.0 + resolution: "cssom@npm:0.5.0" + checksum: 823471aa30091c59e0a305927c30e7768939b6af70405808f8d2ce1ca778cddcb24722717392438329d1691f9a87cb0183b64b8d779b56a961546d54854fde01 + languageName: node + linkType: hard + +"cssom@npm:~0.3.6": + version: 0.3.8 + resolution: "cssom@npm:0.3.8" + checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 + languageName: node + linkType: hard + +"cssstyle@npm:^2.3.0": + version: 2.3.0 + resolution: "cssstyle@npm:2.3.0" + dependencies: + cssom: ~0.3.6 + checksum: 5f05e6fd2e3df0b44695c2f08b9ef38b011862b274e320665176467c0725e44a53e341bc4959a41176e83b66064ab786262e7380fd1cabeae6efee0d255bb4e3 + languageName: node + linkType: hard + "csstype@npm:^3.0.2": version: 3.1.3 resolution: "csstype@npm:3.1.3" @@ -5123,6 +5240,17 @@ __metadata: languageName: node linkType: hard +"data-urls@npm:^3.0.2": + version: 3.0.2 + resolution: "data-urls@npm:3.0.2" + dependencies: + abab: ^2.0.6 + whatwg-mimetype: ^3.0.0 + whatwg-url: ^11.0.0 + checksum: 033fc3dd0fba6d24bc9a024ddcf9923691dd24f90a3d26f6545d6a2f71ec6956f93462f2cdf2183cc46f10dc01ed3bcb36731a8208456eb1a08147e571fe2a76 + languageName: node + linkType: hard + "dateformat@npm:^3.0.0": version: 3.0.3 resolution: "dateformat@npm:3.0.3" @@ -5191,6 +5319,13 @@ __metadata: languageName: node linkType: hard +"decimal.js@npm:^10.4.2": + version: 10.4.3 + resolution: "decimal.js@npm:10.4.3" + checksum: 796404dcfa9d1dbfdc48870229d57f788b48c21c603c3f6554a1c17c10195fc1024de338b0cf9e1efe0c7c167eeb18f04548979bcc5fdfabebb7cc0ae3287bae + languageName: node + linkType: hard + "decompress-response@npm:^6.0.0": version: 6.0.0 resolution: "decompress-response@npm:6.0.0" @@ -5352,6 +5487,13 @@ __metadata: languageName: node linkType: hard +"delayed-stream@npm:~1.0.0": + version: 1.0.0 + resolution: "delayed-stream@npm:1.0.0" + checksum: 46fe6e83e2cb1d85ba50bd52803c68be9bd953282fa7096f51fc29edd5d67ff84ff753c51966061e5ba7cb5e47ef6d36a91924eddb7f3f3483b1c560f77a0020 + languageName: node + linkType: hard + "denodeify@npm:^1.2.1": version: 1.2.1 resolution: "denodeify@npm:1.2.1" @@ -5439,6 +5581,15 @@ __metadata: languageName: node linkType: hard +"domexception@npm:^4.0.0": + version: 4.0.0 + resolution: "domexception@npm:4.0.0" + dependencies: + webidl-conversions: ^7.0.0 + checksum: ddbc1268edf33a8ba02ccc596735ede80375ee0cf124b30d2f05df5b464ba78ef4f49889b6391df4a04954e63d42d5631c7fcf8b1c4f12bc531252977a5f13d5 + languageName: node + linkType: hard + "dot-prop@npm:^5.1.0": version: 5.3.0 resolution: "dot-prop@npm:5.3.0" @@ -5531,6 +5682,13 @@ __metadata: languageName: node linkType: hard +"entities@npm:^4.4.0": + version: 4.5.0 + resolution: "entities@npm:4.5.0" + checksum: 853f8ebd5b425d350bffa97dd6958143179a5938352ccae092c62d1267c4e392a039be1bae7d51b6e4ffad25f51f9617531fedf5237f15df302ccfb452cbf2d7 + languageName: node + linkType: hard + "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -5774,6 +5932,24 @@ __metadata: languageName: node linkType: hard +"escodegen@npm:^2.0.0": + version: 2.1.0 + resolution: "escodegen@npm:2.1.0" + dependencies: + esprima: ^4.0.1 + estraverse: ^5.2.0 + esutils: ^2.0.2 + source-map: ~0.6.1 + dependenciesMeta: + source-map: + optional: true + bin: + escodegen: bin/escodegen.js + esgenerate: bin/esgenerate.js + checksum: 096696407e161305cd05aebb95134ad176708bc5cb13d0dcc89a5fcbb959b8ed757e7f2591a5f8036f8f4952d4a724de0df14cd419e29212729fa6df5ce16bf6 + languageName: node + linkType: hard + "eslint-config-airbnb-base@npm:14.0.0": version: 14.0.0 resolution: "eslint-config-airbnb-base@npm:14.0.0" @@ -6544,6 +6720,13 @@ __metadata: languageName: node linkType: hard +"fast-loops@npm:^1.1.3": + version: 1.1.3 + resolution: "fast-loops@npm:1.1.3" + checksum: b674378ba2ed8364ca1a00768636e88b22201c8d010fa62a8588a4cace04f90bac46714c13cf638be82b03438d2fe813600da32291fb47297a1bd7fa6cef0cee + languageName: node + linkType: hard + "fast-xml-parser@npm:^4.0.12": version: 4.3.3 resolution: "fast-xml-parser@npm:4.3.3" @@ -6573,6 +6756,28 @@ __metadata: languageName: node linkType: hard +"fbjs-css-vars@npm:^1.0.0": + version: 1.0.2 + resolution: "fbjs-css-vars@npm:1.0.2" + checksum: 72baf6d22c45b75109118b4daecb6c8016d4c83c8c0f23f683f22e9d7c21f32fff6201d288df46eb561e3c7d4bb4489b8ad140b7f56444c453ba407e8bd28511 + languageName: node + linkType: hard + +"fbjs@npm:^3.0.4": + version: 3.0.5 + resolution: "fbjs@npm:3.0.5" + dependencies: + cross-fetch: ^3.1.5 + fbjs-css-vars: ^1.0.0 + loose-envify: ^1.0.0 + object-assign: ^4.1.0 + promise: ^7.1.1 + setimmediate: ^1.0.5 + ua-parser-js: ^1.0.35 + checksum: e609b5b64686bc96495a5c67728ed9b2710b9b3d695c5759c5f5e47c9483d1c323543ac777a86459e3694efc5712c6ce7212e944feb19752867d699568bb0e54 + languageName: node + linkType: hard + "fetch-blob@npm:^3.1.2, fetch-blob@npm:^3.1.4": version: 3.2.0 resolution: "fetch-blob@npm:3.2.0" @@ -6786,6 +6991,17 @@ __metadata: languageName: node linkType: hard +"form-data@npm:^4.0.0": + version: 4.0.0 + resolution: "form-data@npm:4.0.0" + dependencies: + asynckit: ^0.4.0 + combined-stream: ^1.0.8 + mime-types: ^2.1.12 + checksum: 01135bf8675f9d5c61ff18e2e2932f719ca4de964e3be90ef4c36aacfc7b9cb2fceb5eca0b7e0190e3383fe51c5b37f4cb80b62ca06a99aaabfcfd6ac7c9328c + languageName: node + linkType: hard + "formdata-polyfill@npm:^4.0.10": version: 4.0.10 resolution: "formdata-polyfill@npm:4.0.10" @@ -7385,6 +7601,15 @@ __metadata: languageName: node linkType: hard +"html-encoding-sniffer@npm:^3.0.0": + version: 3.0.0 + resolution: "html-encoding-sniffer@npm:3.0.0" + dependencies: + whatwg-encoding: ^2.0.0 + checksum: 8d806aa00487e279e5ccb573366a951a9f68f65c90298eac9c3a2b440a7ffe46615aff2995a2f61c6746c639234e6179a97e18ca5ccbbf93d3725ef2099a4502 + languageName: node + linkType: hard + "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -7412,6 +7637,17 @@ __metadata: languageName: node linkType: hard +"http-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "http-proxy-agent@npm:5.0.0" + dependencies: + "@tootallnate/once": 2 + agent-base: 6 + debug: 4 + checksum: e2ee1ff1656a131953839b2a19cd1f3a52d97c25ba87bd2559af6ae87114abf60971e498021f9b73f9fd78aea8876d1fb0d4656aac8a03c6caa9fc175f22b786 + languageName: node + linkType: hard + "http-proxy-agent@npm:^7.0.0": version: 7.0.0 resolution: "http-proxy-agent@npm:7.0.0" @@ -7432,6 +7668,16 @@ __metadata: languageName: node linkType: hard +"https-proxy-agent@npm:^5.0.1": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" + dependencies: + agent-base: 6 + debug: 4 + checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 + languageName: node + linkType: hard + "https-proxy-agent@npm:^7.0.0, https-proxy-agent@npm:^7.0.1": version: 7.0.2 resolution: "https-proxy-agent@npm:7.0.2" @@ -7463,16 +7709,14 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:^0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: ">= 2.1.2 < 3" - checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 +"hyphenate-style-name@npm:^1.0.3": + version: 1.0.4 + resolution: "hyphenate-style-name@npm:1.0.4" + checksum: 4f5bf4b055089754924babebaa23c17845937bcca6aee95d5d015f8fa1e6814279002bd6a9e541e3fac2cd02519fc76305396727066c57c8e21a7e73e7a12137 languageName: node linkType: hard -"iconv-lite@npm:^0.6.2": +"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" dependencies: @@ -7481,6 +7725,15 @@ __metadata: languageName: node linkType: hard +"iconv-lite@npm:^0.4.24": + version: 0.4.24 + resolution: "iconv-lite@npm:0.4.24" + dependencies: + safer-buffer: ">= 2.1.2 < 3" + checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 + languageName: node + linkType: hard + "ieee754@npm:^1.1.13, ieee754@npm:^1.2.1": version: 1.2.1 resolution: "ieee754@npm:1.2.1" @@ -7604,6 +7857,16 @@ __metadata: languageName: node linkType: hard +"inline-style-prefixer@npm:^6.0.1": + version: 6.0.4 + resolution: "inline-style-prefixer@npm:6.0.4" + dependencies: + css-in-js-utils: ^3.1.0 + fast-loops: ^1.1.3 + checksum: caf7a75d18acbedc7e3b8bfac17563082becd2df6b65accad964a6afdf490329b42315c37fe65ba0177cc10fd32809eb40d62aba23a0118c74d87d4fc58defa2 + languageName: node + linkType: hard + "inquirer@npm:9.2.6": version: 9.2.6 resolution: "inquirer@npm:9.2.6" @@ -8028,6 +8291,13 @@ __metadata: languageName: node linkType: hard +"is-potential-custom-element-name@npm:^1.0.1": + version: 1.0.1 + resolution: "is-potential-custom-element-name@npm:1.0.1" + checksum: ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab + languageName: node + linkType: hard + "is-regex@npm:^1.1.4": version: 1.1.4 resolution: "is-regex@npm:1.1.4" @@ -8487,6 +8757,27 @@ __metadata: languageName: node linkType: hard +"jest-environment-jsdom@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-environment-jsdom@npm:29.7.0" + dependencies: + "@jest/environment": ^29.7.0 + "@jest/fake-timers": ^29.7.0 + "@jest/types": ^29.6.3 + "@types/jsdom": ^20.0.0 + "@types/node": "*" + jest-mock: ^29.7.0 + jest-util: ^29.7.0 + jsdom: ^20.0.0 + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 559aac134c196fccc1dfc794d8fc87377e9f78e894bb13012b0831d88dec0abd7ece99abec69da564b8073803be4f04a9eb4f4d1bb80e29eec0cb252c254deb8 + languageName: node + linkType: hard + "jest-environment-node@npm:^28.1.3": version: 28.1.3 resolution: "jest-environment-node@npm:28.1.3" @@ -9005,6 +9296,45 @@ __metadata: languageName: node linkType: hard +"jsdom@npm:^20.0.0": + version: 20.0.3 + resolution: "jsdom@npm:20.0.3" + dependencies: + abab: ^2.0.6 + acorn: ^8.8.1 + acorn-globals: ^7.0.0 + cssom: ^0.5.0 + cssstyle: ^2.3.0 + data-urls: ^3.0.2 + decimal.js: ^10.4.2 + domexception: ^4.0.0 + escodegen: ^2.0.0 + form-data: ^4.0.0 + html-encoding-sniffer: ^3.0.0 + http-proxy-agent: ^5.0.0 + https-proxy-agent: ^5.0.1 + is-potential-custom-element-name: ^1.0.1 + nwsapi: ^2.2.2 + parse5: ^7.1.1 + saxes: ^6.0.0 + symbol-tree: ^3.2.4 + tough-cookie: ^4.1.2 + w3c-xmlserializer: ^4.0.0 + webidl-conversions: ^7.0.0 + whatwg-encoding: ^2.0.0 + whatwg-mimetype: ^3.0.0 + whatwg-url: ^11.0.0 + ws: ^8.11.0 + xml-name-validator: ^4.0.0 + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 6e2ae21db397133a061b270c26d2dbc0b9051733ea3b896a7ece78d79f475ff0974f766a413c1198a79c793159119169f2335ddb23150348fbfdcfa6f3105536 + languageName: node + linkType: hard + "jsesc@npm:^2.5.1": version: 2.5.2 resolution: "jsesc@npm:2.5.2" @@ -9534,6 +9864,13 @@ __metadata: languageName: node linkType: hard +"memoize-one@npm:^6.0.0": + version: 6.0.0 + resolution: "memoize-one@npm:6.0.0" + checksum: f185ea69f7cceae5d1cb596266dcffccf545e8e7b4106ec6aa93b71ab9d16460dd118ac8b12982c55f6d6322fcc1485de139df07eacffaae94888b9b3ad7675f + languageName: node + linkType: hard + "meow@npm:^10.1.3": version: 10.1.5 resolution: "meow@npm:10.1.5" @@ -9918,7 +10255,7 @@ __metadata: languageName: node linkType: hard -"mime-types@npm:2.1.35, mime-types@npm:^2.1.27, mime-types@npm:~2.1.34": +"mime-types@npm:2.1.35, mime-types@npm:^2.1.12, mime-types@npm:^2.1.27, mime-types@npm:~2.1.34": version: 2.1.35 resolution: "mime-types@npm:2.1.35" dependencies: @@ -10263,7 +10600,7 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:^2.2.0, node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.7": +"node-fetch@npm:^2.2.0, node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.12, node-fetch@npm:^2.6.7": version: 2.7.0 resolution: "node-fetch@npm:2.7.0" dependencies: @@ -10392,6 +10729,13 @@ __metadata: languageName: node linkType: hard +"nwsapi@npm:^2.2.2": + version: 2.2.7 + resolution: "nwsapi@npm:2.2.7" + checksum: cab25f7983acec7e23490fec3ef7be608041b460504229770e3bfcf9977c41d6fe58f518994d3bd9aa3a101f501089a3d4a63536f4ff8ae4b8c4ca23bdbfda4e + languageName: node + linkType: hard + "ob1@npm:0.76.8": version: 0.76.8 resolution: "ob1@npm:0.76.8" @@ -10399,7 +10743,7 @@ __metadata: languageName: node linkType: hard -"object-assign@npm:^4.1.1": +"object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f @@ -10828,6 +11172,15 @@ __metadata: languageName: node linkType: hard +"parse5@npm:^7.0.0, parse5@npm:^7.1.1": + version: 7.1.2 + resolution: "parse5@npm:7.1.2" + dependencies: + entities: ^4.4.0 + checksum: 59465dd05eb4c5ec87b76173d1c596e152a10e290b7abcda1aecf0f33be49646ea74840c69af975d7887543ea45564801736356c568d6b5e71792fd0f4055713 + languageName: node + linkType: hard + "parseurl@npm:~1.3.3": version: 1.3.3 resolution: "parseurl@npm:1.3.3" @@ -10988,6 +11341,13 @@ __metadata: languageName: node linkType: hard +"postcss-value-parser@npm:^4.2.0": + version: 4.2.0 + resolution: "postcss-value-parser@npm:4.2.0" + checksum: 819ffab0c9d51cf0acbabf8996dffbfafbafa57afc0e4c98db88b67f2094cb44488758f06e5da95d7036f19556a4a732525e84289a425f4f6fd8e412a9d7442f + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -11100,6 +11460,15 @@ __metadata: languageName: node linkType: hard +"promise@npm:^7.1.1": + version: 7.3.1 + resolution: "promise@npm:7.3.1" + dependencies: + asap: ~2.0.3 + checksum: 475bb069130179fbd27ed2ab45f26d8862376a137a57314cf53310bdd85cc986a826fd585829be97ebc0aaf10e9d8e68be1bfe5a4a0364144b1f9eedfa940cf1 + languageName: node + linkType: hard + "promise@npm:^8.3.0": version: 8.3.0 resolution: "promise@npm:8.3.0" @@ -11167,6 +11536,13 @@ __metadata: languageName: node linkType: hard +"psl@npm:^1.1.33": + version: 1.9.0 + resolution: "psl@npm:1.9.0" + checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d + languageName: node + linkType: hard + "pump@npm:^3.0.0": version: 3.0.0 resolution: "pump@npm:3.0.0" @@ -11177,7 +11553,7 @@ __metadata: languageName: node linkType: hard -"punycode@npm:^2.1.0": +"punycode@npm:^2.1.0, punycode@npm:^2.1.1": version: 2.3.1 resolution: "punycode@npm:2.3.1" checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 @@ -11200,6 +11576,13 @@ __metadata: languageName: node linkType: hard +"querystringify@npm:^2.1.1": + version: 2.2.0 + resolution: "querystringify@npm:2.2.0" + checksum: 5641ea231bad7ef6d64d9998faca95611ed4b11c2591a8cae741e178a974f6a8e0ebde008475259abe1621cb15e692404e6b6626e927f7b849d5c09392604b15 + languageName: node + linkType: hard + "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" @@ -11315,6 +11698,25 @@ __metadata: languageName: node linkType: hard +"react-native-web@npm:^0.19.10": + version: 0.19.10 + resolution: "react-native-web@npm:0.19.10" + dependencies: + "@babel/runtime": ^7.18.6 + "@react-native/normalize-color": ^2.1.0 + fbjs: ^3.0.4 + inline-style-prefixer: ^6.0.1 + memoize-one: ^6.0.0 + nullthrows: ^1.1.1 + postcss-value-parser: ^4.2.0 + styleq: ^0.1.3 + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + checksum: d0a75d777fdd97ff513e2c2bb90512fbfeca2176916f1257085ee505b37c9c6dda64aefa863c970702aeca99d4d898cce843d74ecdaeb080875131cb1373d0dc + languageName: node + linkType: hard + "react-native@npm:0.72.9": version: 0.72.9 resolution: "react-native@npm:0.72.9" @@ -11705,6 +12107,13 @@ __metadata: languageName: node linkType: hard +"requires-port@npm:^1.0.0": + version: 1.0.0 + resolution: "requires-port@npm:1.0.0" + checksum: eee0e303adffb69be55d1a214e415cf42b7441ae858c76dfc5353148644f6fd6e698926fc4643f510d5c126d12a705e7c8ed7e38061113bdf37547ab356797ff + languageName: node + linkType: hard + "reselect@npm:^4.1.7": version: 4.1.8 resolution: "reselect@npm:4.1.8" @@ -11994,6 +12403,15 @@ __metadata: languageName: node linkType: hard +"saxes@npm:^6.0.0": + version: 6.0.0 + resolution: "saxes@npm:6.0.0" + dependencies: + xmlchars: ^2.2.0 + checksum: d3fa3e2aaf6c65ed52ee993aff1891fc47d5e47d515164b5449cbf5da2cbdc396137e55590472e64c5c436c14ae64a8a03c29b9e7389fc6f14035cf4e982ef3b + languageName: node + linkType: hard + "scheduler@npm:0.24.0-canary-efb381bbf-20230505": version: 0.24.0-canary-efb381bbf-20230505 resolution: "scheduler@npm:0.24.0-canary-efb381bbf-20230505" @@ -12134,6 +12552,13 @@ __metadata: languageName: node linkType: hard +"setimmediate@npm:^1.0.5": + version: 1.0.5 + resolution: "setimmediate@npm:1.0.5" + checksum: c9a6f2c5b51a2dabdc0247db9c46460152ffc62ee139f3157440bd48e7c59425093f42719ac1d7931f054f153e2d26cf37dfeb8da17a794a58198a2705e527fd + languageName: node + linkType: hard + "setprototypeof@npm:1.2.0": version: 1.2.0 resolution: "setprototypeof@npm:1.2.0" @@ -12665,6 +13090,13 @@ __metadata: languageName: node linkType: hard +"styleq@npm:^0.1.3": + version: 0.1.3 + resolution: "styleq@npm:0.1.3" + checksum: 14a8d23abd914166a9b4bd04ed753bd91363f0e029ee4a94ec2c7dc37d3213fe01fceee22dc655288da3ae89f5dc01cec42d5e2b58478b0dea33bf5bdf509be1 + languageName: node + linkType: hard + "sudo-prompt@npm:^9.0.0": version: 9.2.1 resolution: "sudo-prompt@npm:9.2.1" @@ -12716,6 +13148,13 @@ __metadata: languageName: node linkType: hard +"symbol-tree@npm:^3.2.4": + version: 3.2.4 + resolution: "symbol-tree@npm:3.2.4" + checksum: 6e8fc7e1486b8b54bea91199d9535bb72f10842e40c79e882fc94fb7b14b89866adf2fd79efa5ebb5b658bc07fb459ccce5ac0e99ef3d72f474e74aaf284029d + languageName: node + linkType: hard + "table@npm:^5.2.3": version: 5.4.6 resolution: "table@npm:5.4.6" @@ -12879,6 +13318,27 @@ __metadata: languageName: node linkType: hard +"tough-cookie@npm:^4.1.2": + version: 4.1.3 + resolution: "tough-cookie@npm:4.1.3" + dependencies: + psl: ^1.1.33 + punycode: ^2.1.1 + universalify: ^0.2.0 + url-parse: ^1.5.3 + checksum: c9226afff36492a52118432611af083d1d8493a53ff41ec4ea48e5b583aec744b989e4280bcf476c910ec1525a89a4a0f1cae81c08b18fb2ec3a9b3a72b91dcc + languageName: node + linkType: hard + +"tr46@npm:^3.0.0": + version: 3.0.0 + resolution: "tr46@npm:3.0.0" + dependencies: + punycode: ^2.1.1 + checksum: 44c3cc6767fb800490e6e9fd64fd49041aa4e49e1f6a012b34a75de739cc9ed3a6405296072c1df8b6389ae139c5e7c6496f659cfe13a04a4bff3a1422981270 + languageName: node + linkType: hard + "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" @@ -13181,6 +13641,13 @@ __metadata: languageName: node linkType: hard +"ua-parser-js@npm:^1.0.35": + version: 1.0.37 + resolution: "ua-parser-js@npm:1.0.37" + checksum: 4d481c720d523366d7762dc8a46a1b58967d979aacf786f9ceceb1cd767de069f64a4bdffb63956294f1c0696eb465ddb950f28ba90571709e33521b4bd75e07 + languageName: node + linkType: hard + "uglify-es@npm:^3.1.9": version: 3.3.10 resolution: "uglify-es@npm:3.3.10" @@ -13307,6 +13774,13 @@ __metadata: languageName: node linkType: hard +"universalify@npm:^0.2.0": + version: 0.2.0 + resolution: "universalify@npm:0.2.0" + checksum: e86134cb12919d177c2353196a4cc09981524ee87abf621f7bc8d249dbbbebaec5e7d1314b96061497981350df786e4c5128dbf442eba104d6e765bc260678b5 + languageName: node + linkType: hard + "universalify@npm:^2.0.0": version: 2.0.1 resolution: "universalify@npm:2.0.1" @@ -13380,6 +13854,16 @@ __metadata: languageName: node linkType: hard +"url-parse@npm:^1.5.3": + version: 1.5.10 + resolution: "url-parse@npm:1.5.10" + dependencies: + querystringify: ^2.1.1 + requires-port: ^1.0.0 + checksum: fbdba6b1d83336aca2216bbdc38ba658d9cfb8fc7f665eb8b17852de638ff7d1a162c198a8e4ed66001ddbf6c9888d41e4798912c62b4fd777a31657989f7bdf + languageName: node + linkType: hard + "use-sync-external-store@npm:^1.0.0": version: 1.2.0 resolution: "use-sync-external-store@npm:1.2.0" @@ -13457,6 +13941,15 @@ __metadata: languageName: node linkType: hard +"w3c-xmlserializer@npm:^4.0.0": + version: 4.0.0 + resolution: "w3c-xmlserializer@npm:4.0.0" + dependencies: + xml-name-validator: ^4.0.0 + checksum: eba070e78deb408ae8defa4d36b429f084b2b47a4741c4a9be3f27a0a3d1845e277e3072b04391a138f7e43776842627d1334e448ff13ff90ad9fb1214ee7091 + languageName: node + linkType: hard + "walker@npm:^1.0.7, walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" @@ -13489,6 +13982,22 @@ __metadata: languageName: node linkType: hard +"webidl-conversions@npm:^7.0.0": + version: 7.0.0 + resolution: "webidl-conversions@npm:7.0.0" + checksum: f05588567a2a76428515333eff87200fae6c83c3948a7482ebb109562971e77ef6dc49749afa58abb993391227c5697b3ecca52018793e0cb4620a48f10bd21b + languageName: node + linkType: hard + +"whatwg-encoding@npm:^2.0.0": + version: 2.0.0 + resolution: "whatwg-encoding@npm:2.0.0" + dependencies: + iconv-lite: 0.6.3 + checksum: 7087810c410aa9b689cbd6af8773341a53cdc1f3aae2a882c163bd5522ec8ca4cdfc269aef417a5792f411807d5d77d50df4c24e3abb00bb60192858a40cc675 + languageName: node + linkType: hard + "whatwg-fetch@npm:^3.0.0": version: 3.6.20 resolution: "whatwg-fetch@npm:3.6.20" @@ -13496,6 +14005,23 @@ __metadata: languageName: node linkType: hard +"whatwg-mimetype@npm:^3.0.0": + version: 3.0.0 + resolution: "whatwg-mimetype@npm:3.0.0" + checksum: ce08bbb36b6aaf64f3a84da89707e3e6a31e5ab1c1a2379fd68df79ba712a4ab090904f0b50e6693b0dafc8e6343a6157e40bf18fdffd26e513cf95ee2a59824 + languageName: node + linkType: hard + +"whatwg-url@npm:^11.0.0": + version: 11.0.0 + resolution: "whatwg-url@npm:11.0.0" + dependencies: + tr46: ^3.0.0 + webidl-conversions: ^7.0.0 + checksum: ed4826aaa57e66bb3488a4b25c9cd476c46ba96052747388b5801f137dd740b73fde91ad207d96baf9f17fbcc80fc1a477ad65181b5eb5fa718d27c69501d7af + languageName: node + linkType: hard + "whatwg-url@npm:^5.0.0": version: 5.0.0 resolution: "whatwg-url@npm:5.0.0" @@ -13749,6 +14275,21 @@ __metadata: languageName: node linkType: hard +"ws@npm:^8.11.0": + version: 8.15.1 + resolution: "ws@npm:8.15.1" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ">=5.0.2" + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 8c67365f6e6134278ad635d558bfce466d7ef7543a043baea333aaa430429f0af8a130c0c36e7dd78f918d68167a659ba9b5067330b77c4b279e91533395952b + languageName: node + linkType: hard + "xdg-basedir@npm:^5.0.1, xdg-basedir@npm:^5.1.0": version: 5.1.0 resolution: "xdg-basedir@npm:5.1.0" @@ -13756,6 +14297,20 @@ __metadata: languageName: node linkType: hard +"xml-name-validator@npm:^4.0.0": + version: 4.0.0 + resolution: "xml-name-validator@npm:4.0.0" + checksum: af100b79c29804f05fa35aa3683e29a321db9b9685d5e5febda3fa1e40f13f85abc40f45a6b2bf7bee33f68a1dc5e8eaef4cec100a304a9db565e6061d4cb5ad + languageName: node + linkType: hard + +"xmlchars@npm:^2.2.0": + version: 2.2.0 + resolution: "xmlchars@npm:2.2.0" + checksum: 8c70ac94070ccca03f47a81fcce3b271bd1f37a591bf5424e787ae313fcb9c212f5f6786e1fa82076a2c632c0141552babcd85698c437506dfa6ae2d58723062 + languageName: node + linkType: hard + "xtend@npm:~4.0.1": version: 4.0.2 resolution: "xtend@npm:4.0.2"