"use strict";(self.webpackChunk_rocket_chat_fuselage_ui_kit=self.webpackChunk_rocket_chat_fuselage_ui_kit||[]).push([[652],{"../../node_modules/katex/dist/katex.mjs":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{Ay:()=>katex});class SourceLocation{constructor(lexer,start,end){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=lexer,this.start=start,this.end=end}static range(first,second){return second?first&&first.loc&&second.loc&&first.loc.lexer===second.loc.lexer?new SourceLocation(first.loc.lexer,first.loc.start,second.loc.end):null:first&&first.loc}}class Token{constructor(text,loc){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=text,this.loc=loc}range(endToken,text){return new Token(text,SourceLocation.range(this,endToken))}}class ParseError{constructor(message,token){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var start,end,error="KaTeX parse error: "+message,loc=token&&token.loc;if(loc&&loc.start<=loc.end){var input=loc.lexer.input;start=loc.start,end=loc.end,start===input.length?error+=" at end of input: ":error+=" at position "+(start+1)+": ";var underlined=input.slice(start,end).replace(/[^]/g,"$&̲");error+=(start>15?"…"+input.slice(start-15,start):input.slice(0,start))+underlined+(end+15<input.length?input.slice(end,end+15)+"…":input.slice(end))}var self=new Error(error);return self.name="ParseError",self.__proto__=ParseError.prototype,self.position=start,null!=start&&null!=end&&(self.length=end-start),self.rawMessage=message,self}}ParseError.prototype.__proto__=Error.prototype;var uppercase=/([A-Z])/g,ESCAPE_LOOKUP={"&":"&",">":">","<":"<",'"':""","'":"'"},ESCAPE_REGEX=/[&><"']/g;var getBaseElem=function getBaseElem(group){return"ordgroup"===group.type||"color"===group.type?1===group.body.length?getBaseElem(group.body[0]):group:"font"===group.type?getBaseElem(group.body):group},utils={contains:function contains(list,elem){return-1!==list.indexOf(elem)},deflt:function deflt(setting,defaultIfUndefined){return void 0===setting?defaultIfUndefined:setting},escape:function escape(text){return String(text).replace(ESCAPE_REGEX,(match=>ESCAPE_LOOKUP[match]))},hyphenate:function hyphenate(str){return str.replace(uppercase,"-$1").toLowerCase()},getBaseElem,isCharacterBox:function isCharacterBox(group){var baseElem=getBaseElem(group);return"mathord"===baseElem.type||"textord"===baseElem.type||"atom"===baseElem.type},protocolFromUrl:function protocolFromUrl(url){var protocol=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(url);return protocol?":"!==protocol[2]?null:/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(protocol[1])?protocol[1].toLowerCase():null:"_relative"}},SETTINGS_SCHEMA={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:color=>"#"+color},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(def,defs)=>(defs.push(def),defs)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:t=>Math.max(0,t),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:s=>Math.max(0,s),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:n=>Math.max(0,n),cli:"-e, --max-expand <n>",cliProcessor:n=>"Infinity"===n?1/0:parseInt(n)},globalGroup:{type:"boolean",cli:!1}};function getDefaultValue(schema){if(schema.default)return schema.default;var type=schema.type,defaultType=Array.isArray(type)?type[0]:type;if("string"!=typeof defaultType)return defaultType.enum[0];switch(defaultType){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}class Settings{constructor(options){for(var prop in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,options=options||{},SETTINGS_SCHEMA)if(SETTINGS_SCHEMA.hasOwnProperty(prop)){var schema=SETTINGS_SCHEMA[prop];this[prop]=void 0!==options[prop]?schema.processor?schema.processor(options[prop]):options[prop]:getDefaultValue(schema)}}reportNonstrict(errorCode,errorMsg,token){var strict=this.strict;if("function"==typeof strict&&(strict=strict(errorCode,errorMsg,token)),strict&&"ignore"!==strict){if(!0===strict||"error"===strict)throw new ParseError("LaTeX-incompatible input and strict mode is set to 'error': "+errorMsg+" ["+errorCode+"]",token);"warn"===strict?"undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+errorMsg+" ["+errorCode+"]"):"undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+strict+"': "+errorMsg+" ["+errorCode+"]")}}useStrictBehavior(errorCode,errorMsg,token){var strict=this.strict;if("function"==typeof strict)try{strict=strict(errorCode,errorMsg,token)}catch(error){strict="error"}return!(!strict||"ignore"===strict)&&(!0===strict||"error"===strict||("warn"===strict?("undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+errorMsg+" ["+errorCode+"]"),!1):("undefined"!=typeof console&&console.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+strict+"': "+errorMsg+" ["+errorCode+"]"),!1)))}isTrusted(context){if(context.url&&!context.protocol){var protocol=utils.protocolFromUrl(context.url);if(null==protocol)return!1;context.protocol=protocol}var trust="function"==typeof this.trust?this.trust(context):this.trust;return Boolean(trust)}}class Style{constructor(id,size,cramped){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=id,this.size=size,this.cramped=cramped}sup(){return styles[sup[this.id]]}sub(){return styles[sub[this.id]]}fracNum(){return styles[fracNum[this.id]]}fracDen(){return styles[fracDen[this.id]]}cramp(){return styles[cramp[this.id]]}text(){return styles[text$1[this.id]]}isTight(){return this.size>=2}}var styles=[new Style(0,0,!1),new Style(1,0,!0),new Style(2,1,!1),new Style(3,1,!0),new Style(4,2,!1),new Style(5,2,!0),new Style(6,3,!1),new Style(7,3,!0)],sup=[4,5,4,5,6,7,6,7],sub=[5,5,5,5,7,7,7,7],fracNum=[2,3,4,5,6,7,6,7],fracDen=[3,3,5,5,7,7,7,7],cramp=[1,1,3,3,5,5,7,7],text$1=[0,1,2,3,2,3,2,3],Style$1={DISPLAY:styles[0],TEXT:styles[2],SCRIPT:styles[4],SCRIPTSCRIPT:styles[6]},scriptData=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];var allBlocks=[];function supportedCodepoint(codepoint){for(var i=0;i<allBlocks.length;i+=2)if(codepoint>=allBlocks[i]&&codepoint<=allBlocks[i+1])return!0;return!1}scriptData.forEach((s=>s.blocks.forEach((b=>allBlocks.push(...b)))));var path={doubleleftarrow:"M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z",doublerightarrow:"M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z",leftarrow:"M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z",leftbrace:"M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z",leftbraceunder:"M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z",leftgroup:"M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z",leftgroupunder:"M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z",leftharpoon:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z",leftharpoonplus:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z",leftharpoondown:"M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z",leftharpoondownplus:"M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z",lefthook:"M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z",leftlinesegment:"M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z",leftmapsto:"M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z",leftToFrom:"M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z",longequal:"M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z",midbrace:"M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z",midbraceunder:"M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z",oiintSize1:"M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z",oiintSize2:"M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z",oiiintSize1:"M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z",oiiintSize2:"M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z",rightarrow:"M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z",rightbrace:"M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z",rightbraceunder:"M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z",rightgroup:"M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z",rightgroupunder:"M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z",rightharpoon:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z",rightharpoonplus:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z",rightharpoondown:"M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z",rightharpoondownplus:"M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z",righthook:"M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z",rightlinesegment:"M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z",rightToFrom:"M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z",twoheadleftarrow:"M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z",twoheadrightarrow:"M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z",tilde1:"M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z",tilde2:"M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z",tilde3:"M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z",tilde4:"M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z",vec:"M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z",widehat1:"M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z",widehat2:"M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat3:"M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat4:"M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widecheck1:"M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z",widecheck2:"M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck3:"M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck4:"M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",baraboveleftarrow:"M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z",rightarrowabovebar:"M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z",baraboveshortleftharpoon:"M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z",rightharpoonaboveshortbar:"M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z",shortbaraboveleftharpoon:"M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z",shortrightharpoonabovebar:"M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z"};class DocumentFragment{constructor(children){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=children,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(className){return utils.contains(this.classes,className)}toNode(){for(var frag=document.createDocumentFragment(),i=0;i<this.children.length;i++)frag.appendChild(this.children[i].toNode());return frag}toMarkup(){for(var markup="",i=0;i<this.children.length;i++)markup+=this.children[i].toMarkup();return markup}toText(){return this.children.map((child=>child.toText())).join("")}}var fontMetricsData={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},sigmasAndXis={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},extraCharacterMap={Å:"A",Ð:"D",Þ:"o",å:"a",ð:"d",þ:"o",А:"A",Б:"B",В:"B",Г:"F",Д:"A",Е:"E",Ж:"K",З:"3",И:"N",Й:"N",К:"K",Л:"N",М:"M",Н:"H",О:"O",П:"N",Р:"P",С:"C",Т:"T",У:"y",Ф:"O",Х:"X",Ц:"U",Ч:"h",Ш:"W",Щ:"W",Ъ:"B",Ы:"X",Ь:"B",Э:"3",Ю:"X",Я:"R",а:"a",б:"b",в:"a",г:"r",д:"y",е:"e",ж:"m",з:"e",и:"n",й:"n",к:"n",л:"n",м:"m",н:"n",о:"o",п:"n",р:"p",с:"c",т:"o",у:"y",ф:"b",х:"x",ц:"n",ч:"n",ш:"w",щ:"w",ъ:"a",ы:"m",ь:"a",э:"e",ю:"m",я:"r"};function getCharacterMetrics(character,font,mode){if(!fontMetricsData[font])throw new Error("Font metrics not found for font: "+font+".");var ch=character.charCodeAt(0),metrics=fontMetricsData[font][ch];if(!metrics&&character[0]in extraCharacterMap&&(ch=extraCharacterMap[character[0]].charCodeAt(0),metrics=fontMetricsData[font][ch]),metrics||"text"!==mode||supportedCodepoint(ch)&&(metrics=fontMetricsData[font][77]),metrics)return{depth:metrics[0],height:metrics[1],italic:metrics[2],skew:metrics[3],width:metrics[4]}}var fontMetricsBySizeIndex={};var sizeStyleMap=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],sizeMultipliers=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],sizeAtStyle=function sizeAtStyle(size,style){return style.size<2?size:sizeStyleMap[size-1][style.size-1]};class Options{constructor(data){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=data.style,this.color=data.color,this.size=data.size||Options.BASESIZE,this.textSize=data.textSize||this.size,this.phantom=!!data.phantom,this.font=data.font||"",this.fontFamily=data.fontFamily||"",this.fontWeight=data.fontWeight||"",this.fontShape=data.fontShape||"",this.sizeMultiplier=sizeMultipliers[this.size-1],this.maxSize=data.maxSize,this.minRuleThickness=data.minRuleThickness,this._fontMetrics=void 0}extend(extension){var data={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var key in extension)extension.hasOwnProperty(key)&&(data[key]=extension[key]);return new Options(data)}havingStyle(style){return this.style===style?this:this.extend({style,size:sizeAtStyle(this.textSize,style)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(size){return this.size===size&&this.textSize===size?this:this.extend({style:this.style.text(),size,textSize:size,sizeMultiplier:sizeMultipliers[size-1]})}havingBaseStyle(style){style=style||this.style.text();var wantSize=sizeAtStyle(Options.BASESIZE,style);return this.size===wantSize&&this.textSize===Options.BASESIZE&&this.style===style?this:this.extend({style,size:wantSize})}havingBaseSizing(){var size;switch(this.style.id){case 4:case 5:size=3;break;case 6:case 7:size=1;break;default:size=6}return this.extend({style:this.style.text(),size})}withColor(color){return this.extend({color})}withPhantom(){return this.extend({phantom:!0})}withFont(font){return this.extend({font})}withTextFontFamily(fontFamily){return this.extend({fontFamily,font:""})}withTextFontWeight(fontWeight){return this.extend({fontWeight,font:""})}withTextFontShape(fontShape){return this.extend({fontShape,font:""})}sizingClasses(oldOptions){return oldOptions.size!==this.size?["sizing","reset-size"+oldOptions.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==Options.BASESIZE?["sizing","reset-size"+this.size,"size"+Options.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=function getGlobalMetrics(size){var sizeIndex;if(!fontMetricsBySizeIndex[sizeIndex=size>=5?0:size>=3?1:2]){var metrics=fontMetricsBySizeIndex[sizeIndex]={cssEmPerMu:sigmasAndXis.quad[sizeIndex]/18};for(var key in sigmasAndXis)sigmasAndXis.hasOwnProperty(key)&&(metrics[key]=sigmasAndXis[key][sizeIndex])}return fontMetricsBySizeIndex[sizeIndex]}(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}}Options.BASESIZE=6;var ptPerUnit={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:1.00375,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:1.00375},relativeUnit={ex:!0,em:!0,mu:!0},validUnit=function validUnit(unit){return"string"!=typeof unit&&(unit=unit.unit),unit in ptPerUnit||unit in relativeUnit||"ex"===unit},calculateSize=function calculateSize(sizeValue,options){var scale;if(sizeValue.unit in ptPerUnit)scale=ptPerUnit[sizeValue.unit]/options.fontMetrics().ptPerEm/options.sizeMultiplier;else if("mu"===sizeValue.unit)scale=options.fontMetrics().cssEmPerMu;else{var unitOptions;if(unitOptions=options.style.isTight()?options.havingStyle(options.style.text()):options,"ex"===sizeValue.unit)scale=unitOptions.fontMetrics().xHeight;else{if("em"!==sizeValue.unit)throw new ParseError("Invalid unit: '"+sizeValue.unit+"'");scale=unitOptions.fontMetrics().quad}unitOptions!==options&&(scale*=unitOptions.sizeMultiplier/options.sizeMultiplier)}return Math.min(sizeValue.number*scale,options.maxSize)},makeEm=function makeEm(n){return+n.toFixed(4)+"em"},createClass=function createClass(classes){return classes.filter((cls=>cls)).join(" ")},initNode=function initNode(classes,options,style){if(this.classes=classes||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=style||{},options){options.style.isTight()&&this.classes.push("mtight");var color=options.getColor();color&&(this.style.color=color)}},toNode=function toNode(tagName){var node=document.createElement(tagName);for(var style in node.className=createClass(this.classes),this.style)this.style.hasOwnProperty(style)&&(node.style[style]=this.style[style]);for(var attr in this.attributes)this.attributes.hasOwnProperty(attr)&&node.setAttribute(attr,this.attributes[attr]);for(var i=0;i<this.children.length;i++)node.appendChild(this.children[i].toNode());return node},invalidAttributeNameRegex=/[\s"'>/=\x00-\x1f]/,toMarkup=function toMarkup(tagName){var markup="<"+tagName;this.classes.length&&(markup+=' class="'+utils.escape(createClass(this.classes))+'"');var styles="";for(var style in this.style)this.style.hasOwnProperty(style)&&(styles+=utils.hyphenate(style)+":"+this.style[style]+";");for(var attr in styles&&(markup+=' style="'+utils.escape(styles)+'"'),this.attributes)if(this.attributes.hasOwnProperty(attr)){if(invalidAttributeNameRegex.test(attr))throw new ParseError("Invalid attribute name '"+attr+"'");markup+=" "+attr+'="'+utils.escape(this.attributes[attr])+'"'}markup+=">";for(var i=0;i<this.children.length;i++)markup+=this.children[i].toMarkup();return markup+="</"+tagName+">"};class Span{constructor(classes,children,options,style){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,initNode.call(this,classes,options,style),this.children=children||[]}setAttribute(attribute,value){this.attributes[attribute]=value}hasClass(className){return utils.contains(this.classes,className)}toNode(){return toNode.call(this,"span")}toMarkup(){return toMarkup.call(this,"span")}}class Anchor{constructor(href,classes,children,options){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,initNode.call(this,classes,options),this.children=children||[],this.setAttribute("href",href)}setAttribute(attribute,value){this.attributes[attribute]=value}hasClass(className){return utils.contains(this.classes,className)}toNode(){return toNode.call(this,"a")}toMarkup(){return toMarkup.call(this,"a")}}class Img{constructor(src,alt,style){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=alt,this.src=src,this.classes=["mord"],this.style=style}hasClass(className){return utils.contains(this.classes,className)}toNode(){var node=document.createElement("img");for(var style in node.src=this.src,node.alt=this.alt,node.className="mord",this.style)this.style.hasOwnProperty(style)&&(node.style[style]=this.style[style]);return node}toMarkup(){var markup='<img src="'+utils.escape(this.src)+'" alt="'+utils.escape(this.alt)+'"',styles="";for(var style in this.style)this.style.hasOwnProperty(style)&&(styles+=utils.hyphenate(style)+":"+this.style[style]+";");return styles&&(markup+=' style="'+utils.escape(styles)+'"'),markup+="'/>"}}var iCombinations={î:"ı̂",ï:"ı̈",í:"ı́",ì:"ı̀"};class SymbolNode{constructor(text,height,depth,italic,skew,width,classes,style){this.text=void 0,this.height=void 0,this.depth=void 0,this.italic=void 0,this.skew=void 0,this.width=void 0,this.maxFontSize=void 0,this.classes=void 0,this.style=void 0,this.text=text,this.height=height||0,this.depth=depth||0,this.italic=italic||0,this.skew=skew||0,this.width=width||0,this.classes=classes||[],this.style=style||{},this.maxFontSize=0;var script=function scriptFromCodepoint(codepoint){for(var i=0;i<scriptData.length;i++)for(var script=scriptData[i],_i=0;_i<script.blocks.length;_i++){var block=script.blocks[_i];if(codepoint>=block[0]&&codepoint<=block[1])return script.name}return null}(this.text.charCodeAt(0));script&&this.classes.push(script+"_fallback"),/[îïíì]/.test(this.text)&&(this.text=iCombinations[this.text])}hasClass(className){return utils.contains(this.classes,className)}toNode(){var node=document.createTextNode(this.text),span=null;for(var style in this.italic>0&&((span=document.createElement("span")).style.marginRight=makeEm(this.italic)),this.classes.length>0&&((span=span||document.createElement("span")).className=createClass(this.classes)),this.style)this.style.hasOwnProperty(style)&&((span=span||document.createElement("span")).style[style]=this.style[style]);return span?(span.appendChild(node),span):node}toMarkup(){var needsSpan=!1,markup="<span";this.classes.length&&(needsSpan=!0,markup+=' class="',markup+=utils.escape(createClass(this.classes)),markup+='"');var styles="";for(var style in this.italic>0&&(styles+="margin-right:"+this.italic+"em;"),this.style)this.style.hasOwnProperty(style)&&(styles+=utils.hyphenate(style)+":"+this.style[style]+";");styles&&(needsSpan=!0,markup+=' style="'+utils.escape(styles)+'"');var escaped=utils.escape(this.text);return needsSpan?(markup+=">",markup+=escaped,markup+="</span>"):escaped}}class SvgNode{constructor(children,attributes){this.children=void 0,this.attributes=void 0,this.children=children||[],this.attributes=attributes||{}}toNode(){var node=document.createElementNS("http://www.w3.org/2000/svg","svg");for(var attr in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,attr)&&node.setAttribute(attr,this.attributes[attr]);for(var i=0;i<this.children.length;i++)node.appendChild(this.children[i].toNode());return node}toMarkup(){var markup='<svg xmlns="http://www.w3.org/2000/svg"';for(var attr in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,attr)&&(markup+=" "+attr+'="'+utils.escape(this.attributes[attr])+'"');markup+=">";for(var i=0;i<this.children.length;i++)markup+=this.children[i].toMarkup();return markup+="</svg>"}}class PathNode{constructor(pathName,alternate){this.pathName=void 0,this.alternate=void 0,this.pathName=pathName,this.alternate=alternate}toNode(){var node=document.createElementNS("http://www.w3.org/2000/svg","path");return this.alternate?node.setAttribute("d",this.alternate):node.setAttribute("d",path[this.pathName]),node}toMarkup(){return this.alternate?'<path d="'+utils.escape(this.alternate)+'"/>':'<path d="'+utils.escape(path[this.pathName])+'"/>'}}class LineNode{constructor(attributes){this.attributes=void 0,this.attributes=attributes||{}}toNode(){var node=document.createElementNS("http://www.w3.org/2000/svg","line");for(var attr in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,attr)&&node.setAttribute(attr,this.attributes[attr]);return node}toMarkup(){var markup="<line";for(var attr in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,attr)&&(markup+=" "+attr+'="'+utils.escape(this.attributes[attr])+'"');return markup+="/>"}}function assertSymbolDomNode(group){if(group instanceof SymbolNode)return group;throw new Error("Expected symbolNode but got "+String(group)+".")}var ATOMS={bin:1,close:1,inner:1,open:1,punct:1,rel:1},NON_ATOMS={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1},symbols={math:{},text:{}};function defineSymbol(mode,font,group,replace,name,acceptUnicodeChar){symbols[mode][name]={font,group,replace},acceptUnicodeChar&&replace&&(symbols[mode][replace]=symbols[mode][name])}var math="math",text="text",main="main",ams="ams",accent="accent-token",bin="bin",close="close",mathord="mathord",op="op-token",open="open",rel="rel",textord="textord";defineSymbol(math,main,rel,"≡","\\equiv",!0),defineSymbol(math,main,rel,"≺","\\prec",!0),defineSymbol(math,main,rel,"≻","\\succ",!0),defineSymbol(math,main,rel,"∼","\\sim",!0),defineSymbol(math,main,rel,"⊥","\\perp"),defineSymbol(math,main,rel,"⪯","\\preceq",!0),defineSymbol(math,main,rel,"⪰","\\succeq",!0),defineSymbol(math,main,rel,"≃","\\simeq",!0),defineSymbol(math,main,rel,"∣","\\mid",!0),defineSymbol(math,main,rel,"≪","\\ll",!0),defineSymbol(math,main,rel,"≫","\\gg",!0),defineSymbol(math,main,rel,"≍","\\asymp",!0),defineSymbol(math,main,rel,"∥","\\parallel"),defineSymbol(math,main,rel,"⋈","\\bowtie",!0),defineSymbol(math,main,rel,"⌣","\\smile",!0),defineSymbol(math,main,rel,"⊑","\\sqsubseteq",!0),defineSymbol(math,main,rel,"⊒","\\sqsupseteq",!0),defineSymbol(math,main,rel,"≐","\\doteq",!0),defineSymbol(math,main,rel,"⌢","\\frown",!0),defineSymbol(math,main,rel,"∋","\\ni",!0),defineSymbol(math,main,rel,"∝","\\propto",!0),defineSymbol(math,main,rel,"⊢","\\vdash",!0),defineSymbol(math,main,rel,"⊣","\\dashv",!0),defineSymbol(math,main,rel,"∋","\\owns"),defineSymbol(math,main,"punct",".","\\ldotp"),defineSymbol(math,main,"punct","⋅","\\cdotp"),defineSymbol(math,main,textord,"#","\\#"),defineSymbol(text,main,textord,"#","\\#"),defineSymbol(math,main,textord,"&","\\&"),defineSymbol(text,main,textord,"&","\\&"),defineSymbol(math,main,textord,"ℵ","\\aleph",!0),defineSymbol(math,main,textord,"∀","\\forall",!0),defineSymbol(math,main,textord,"ℏ","\\hbar",!0),defineSymbol(math,main,textord,"∃","\\exists",!0),defineSymbol(math,main,textord,"∇","\\nabla",!0),defineSymbol(math,main,textord,"♭","\\flat",!0),defineSymbol(math,main,textord,"ℓ","\\ell",!0),defineSymbol(math,main,textord,"♮","\\natural",!0),defineSymbol(math,main,textord,"♣","\\clubsuit",!0),defineSymbol(math,main,textord,"℘","\\wp",!0),defineSymbol(math,main,textord,"♯","\\sharp",!0),defineSymbol(math,main,textord,"♢","\\diamondsuit",!0),defineSymbol(math,main,textord,"ℜ","\\Re",!0),defineSymbol(math,main,textord,"♡","\\heartsuit",!0),defineSymbol(math,main,textord,"ℑ","\\Im",!0),defineSymbol(math,main,textord,"♠","\\spadesuit",!0),defineSymbol(math,main,textord,"§","\\S",!0),defineSymbol(text,main,textord,"§","\\S"),defineSymbol(math,main,textord,"¶","\\P",!0),defineSymbol(text,main,textord,"¶","\\P"),defineSymbol(math,main,textord,"†","\\dag"),defineSymbol(text,main,textord,"†","\\dag"),defineSymbol(text,main,textord,"†","\\textdagger"),defineSymbol(math,main,textord,"‡","\\ddag"),defineSymbol(text,main,textord,"‡","\\ddag"),defineSymbol(text,main,textord,"‡","\\textdaggerdbl"),defineSymbol(math,main,close,"⎱","\\rmoustache",!0),defineSymbol(math,main,open,"⎰","\\lmoustache",!0),defineSymbol(math,main,close,"⟯","\\rgroup",!0),defineSymbol(math,main,open,"⟮","\\lgroup",!0),defineSymbol(math,main,bin,"∓","\\mp",!0),defineSymbol(math,main,bin,"⊖","\\ominus",!0),defineSymbol(math,main,bin,"⊎","\\uplus",!0),defineSymbol(math,main,bin,"⊓","\\sqcap",!0),defineSymbol(math,main,bin,"∗","\\ast"),defineSymbol(math,main,bin,"⊔","\\sqcup",!0),defineSymbol(math,main,bin,"◯","\\bigcirc",!0),defineSymbol(math,main,bin,"∙","\\bullet",!0),defineSymbol(math,main,bin,"‡","\\ddagger"),defineSymbol(math,main,bin,"≀","\\wr",!0),defineSymbol(math,main,bin,"⨿","\\amalg"),defineSymbol(math,main,bin,"&","\\And"),defineSymbol(math,main,rel,"⟵","\\longleftarrow",!0),defineSymbol(math,main,rel,"⇐","\\Leftarrow",!0),defineSymbol(math,main,rel,"⟸","\\Longleftarrow",!0),defineSymbol(math,main,rel,"⟶","\\longrightarrow",!0),defineSymbol(math,main,rel,"⇒","\\Rightarrow",!0),defineSymbol(math,main,rel,"⟹","\\Longrightarrow",!0),defineSymbol(math,main,rel,"↔","\\leftrightarrow",!0),defineSymbol(math,main,rel,"⟷","\\longleftrightarrow",!0),defineSymbol(math,main,rel,"⇔","\\Leftrightarrow",!0),defineSymbol(math,main,rel,"⟺","\\Longleftrightarrow",!0),defineSymbol(math,main,rel,"↦","\\mapsto",!0),defineSymbol(math,main,rel,"⟼","\\longmapsto",!0),defineSymbol(math,main,rel,"↗","\\nearrow",!0),defineSymbol(math,main,rel,"↩","\\hookleftarrow",!0),defineSymbol(math,main,rel,"↪","\\hookrightarrow",!0),defineSymbol(math,main,rel,"↘","\\searrow",!0),defineSymbol(math,main,rel,"↼","\\leftharpoonup",!0),defineSymbol(math,main,rel,"⇀","\\rightharpoonup",!0),defineSymbol(math,main,rel,"↙","\\swarrow",!0),defineSymbol(math,main,rel,"↽","\\leftharpoondown",!0),defineSymbol(math,main,rel,"⇁","\\rightharpoondown",!0),defineSymbol(math,main,rel,"↖","\\nwarrow",!0),defineSymbol(math,main,rel,"⇌","\\rightleftharpoons",!0),defineSymbol(math,ams,rel,"≮","\\nless",!0),defineSymbol(math,ams,rel,"","\\@nleqslant"),defineSymbol(math,ams,rel,"","\\@nleqq"),defineSymbol(math,ams,rel,"⪇","\\lneq",!0),defineSymbol(math,ams,rel,"≨","\\lneqq",!0),defineSymbol(math,ams,rel,"","\\@lvertneqq"),defineSymbol(math,ams,rel,"⋦","\\lnsim",!0),defineSymbol(math,ams,rel,"⪉","\\lnapprox",!0),defineSymbol(math,ams,rel,"⊀","\\nprec",!0),defineSymbol(math,ams,rel,"⋠","\\npreceq",!0),defineSymbol(math,ams,rel,"⋨","\\precnsim",!0),defineSymbol(math,ams,rel,"⪹","\\precnapprox",!0),defineSymbol(math,ams,rel,"≁","\\nsim",!0),defineSymbol(math,ams,rel,"","\\@nshortmid"),defineSymbol(math,ams,rel,"∤","\\nmid",!0),defineSymbol(math,ams,rel,"⊬","\\nvdash",!0),defineSymbol(math,ams,rel,"⊭","\\nvDash",!0),defineSymbol(math,ams,rel,"⋪","\\ntriangleleft"),defineSymbol(math,ams,rel,"⋬","\\ntrianglelefteq",!0),defineSymbol(math,ams,rel,"⊊","\\subsetneq",!0),defineSymbol(math,ams,rel,"","\\@varsubsetneq"),defineSymbol(math,ams,rel,"⫋","\\subsetneqq",!0),defineSymbol(math,ams,rel,"","\\@varsubsetneqq"),defineSymbol(math,ams,rel,"≯","\\ngtr",!0),defineSymbol(math,ams,rel,"","\\@ngeqslant"),defineSymbol(math,ams,rel,"","\\@ngeqq"),defineSymbol(math,ams,rel,"⪈","\\gneq",!0),defineSymbol(math,ams,rel,"≩","\\gneqq",!0),defineSymbol(math,ams,rel,"","\\@gvertneqq"),defineSymbol(math,ams,rel,"⋧","\\gnsim",!0),defineSymbol(math,ams,rel,"⪊","\\gnapprox",!0),defineSymbol(math,ams,rel,"⊁","\\nsucc",!0),defineSymbol(math,ams,rel,"⋡","\\nsucceq",!0),defineSymbol(math,ams,rel,"⋩","\\succnsim",!0),defineSymbol(math,ams,rel,"⪺","\\succnapprox",!0),defineSymbol(math,ams,rel,"≆","\\ncong",!0),defineSymbol(math,ams,rel,"","\\@nshortparallel"),defineSymbol(math,ams,rel,"∦","\\nparallel",!0),defineSymbol(math,ams,rel,"⊯","\\nVDash",!0),defineSymbol(math,ams,rel,"⋫","\\ntriangleright"),defineSymbol(math,ams,rel,"⋭","\\ntrianglerighteq",!0),defineSymbol(math,ams,rel,"","\\@nsupseteqq"),defineSymbol(math,ams,rel,"⊋","\\supsetneq",!0),defineSymbol(math,ams,rel,"","\\@varsupsetneq"),defineSymbol(math,ams,rel,"⫌","\\supsetneqq",!0),defineSymbol(math,ams,rel,"","\\@varsupsetneqq"),defineSymbol(math,ams,rel,"⊮","\\nVdash",!0),defineSymbol(math,ams,rel,"⪵","\\precneqq",!0),defineSymbol(math,ams,rel,"⪶","\\succneqq",!0),defineSymbol(math,ams,rel,"","\\@nsubseteqq"),defineSymbol(math,ams,bin,"⊴","\\unlhd"),defineSymbol(math,ams,bin,"⊵","\\unrhd"),defineSymbol(math,ams,rel,"↚","\\nleftarrow",!0),defineSymbol(math,ams,rel,"↛","\\nrightarrow",!0),defineSymbol(math,ams,rel,"⇍","\\nLeftarrow",!0),defineSymbol(math,ams,rel,"⇏","\\nRightarrow",!0),defineSymbol(math,ams,rel,"↮","\\nleftrightarrow",!0),defineSymbol(math,ams,rel,"⇎","\\nLeftrightarrow",!0),defineSymbol(math,ams,rel,"△","\\vartriangle"),defineSymbol(math,ams,textord,"ℏ","\\hslash"),defineSymbol(math,ams,textord,"▽","\\triangledown"),defineSymbol(math,ams,textord,"◊","\\lozenge"),defineSymbol(math,ams,textord,"Ⓢ","\\circledS"),defineSymbol(math,ams,textord,"®","\\circledR"),defineSymbol(text,ams,textord,"®","\\circledR"),defineSymbol(math,ams,textord,"∡","\\measuredangle",!0),defineSymbol(math,ams,textord,"∄","\\nexists"),defineSymbol(math,ams,textord,"℧","\\mho"),defineSymbol(math,ams,textord,"Ⅎ","\\Finv",!0),defineSymbol(math,ams,textord,"⅁","\\Game",!0),defineSymbol(math,ams,textord,"‵","\\backprime"),defineSymbol(math,ams,textord,"▲","\\blacktriangle"),defineSymbol(math,ams,textord,"▼","\\blacktriangledown"),defineSymbol(math,ams,textord,"■","\\blacksquare"),defineSymbol(math,ams,textord,"⧫","\\blacklozenge"),defineSymbol(math,ams,textord,"★","\\bigstar"),defineSymbol(math,ams,textord,"∢","\\sphericalangle",!0),defineSymbol(math,ams,textord,"∁","\\complement",!0),defineSymbol(math,ams,textord,"ð","\\eth",!0),defineSymbol(text,main,textord,"ð","ð"),defineSymbol(math,ams,textord,"╱","\\diagup"),defineSymbol(math,ams,textord,"╲","\\diagdown"),defineSymbol(math,ams,textord,"□","\\square"),defineSymbol(math,ams,textord,"□","\\Box"),defineSymbol(math,ams,textord,"◊","\\Diamond"),defineSymbol(math,ams,textord,"¥","\\yen",!0),defineSymbol(text,ams,textord,"¥","\\yen",!0),defineSymbol(math,ams,textord,"✓","\\checkmark",!0),defineSymbol(text,ams,textord,"✓","\\checkmark"),defineSymbol(math,ams,textord,"ℶ","\\beth",!0),defineSymbol(math,ams,textord,"ℸ","\\daleth",!0),defineSymbol(math,ams,textord,"ℷ","\\gimel",!0),defineSymbol(math,ams,textord,"ϝ","\\digamma",!0),defineSymbol(math,ams,textord,"ϰ","\\varkappa"),defineSymbol(math,ams,open,"┌","\\@ulcorner",!0),defineSymbol(math,ams,close,"┐","\\@urcorner",!0),defineSymbol(math,ams,open,"└","\\@llcorner",!0),defineSymbol(math,ams,close,"┘","\\@lrcorner",!0),defineSymbol(math,ams,rel,"≦","\\leqq",!0),defineSymbol(math,ams,rel,"⩽","\\leqslant",!0),defineSymbol(math,ams,rel,"⪕","\\eqslantless",!0),defineSymbol(math,ams,rel,"≲","\\lesssim",!0),defineSymbol(math,ams,rel,"⪅","\\lessapprox",!0),defineSymbol(math,ams,rel,"≊","\\approxeq",!0),defineSymbol(math,ams,bin,"⋖","\\lessdot"),defineSymbol(math,ams,rel,"⋘","\\lll",!0),defineSymbol(math,ams,rel,"≶","\\lessgtr",!0),defineSymbol(math,ams,rel,"⋚","\\lesseqgtr",!0),defineSymbol(math,ams,rel,"⪋","\\lesseqqgtr",!0),defineSymbol(math,ams,rel,"≑","\\doteqdot"),defineSymbol(math,ams,rel,"≓","\\risingdotseq",!0),defineSymbol(math,ams,rel,"≒","\\fallingdotseq",!0),defineSymbol(math,ams,rel,"∽","\\backsim",!0),defineSymbol(math,ams,rel,"⋍","\\backsimeq",!0),defineSymbol(math,ams,rel,"⫅","\\subseteqq",!0),defineSymbol(math,ams,rel,"⋐","\\Subset",!0),defineSymbol(math,ams,rel,"⊏","\\sqsubset",!0),defineSymbol(math,ams,rel,"≼","\\preccurlyeq",!0),defineSymbol(math,ams,rel,"⋞","\\curlyeqprec",!0),defineSymbol(math,ams,rel,"≾","\\precsim",!0),defineSymbol(math,ams,rel,"⪷","\\precapprox",!0),defineSymbol(math,ams,rel,"⊲","\\vartriangleleft"),defineSymbol(math,ams,rel,"⊴","\\trianglelefteq"),defineSymbol(math,ams,rel,"⊨","\\vDash",!0),defineSymbol(math,ams,rel,"⊪","\\Vvdash",!0),defineSymbol(math,ams,rel,"⌣","\\smallsmile"),defineSymbol(math,ams,rel,"⌢","\\smallfrown"),defineSymbol(math,ams,rel,"≏","\\bumpeq",!0),defineSymbol(math,ams,rel,"≎","\\Bumpeq",!0),defineSymbol(math,ams,rel,"≧","\\geqq",!0),defineSymbol(math,ams,rel,"⩾","\\geqslant",!0),defineSymbol(math,ams,rel,"⪖","\\eqslantgtr",!0),defineSymbol(math,ams,rel,"≳","\\gtrsim",!0),defineSymbol(math,ams,rel,"⪆","\\gtrapprox",!0),defineSymbol(math,ams,bin,"⋗","\\gtrdot"),defineSymbol(math,ams,rel,"⋙","\\ggg",!0),defineSymbol(math,ams,rel,"≷","\\gtrless",!0),defineSymbol(math,ams,rel,"⋛","\\gtreqless",!0),defineSymbol(math,ams,rel,"⪌","\\gtreqqless",!0),defineSymbol(math,ams,rel,"≖","\\eqcirc",!0),defineSymbol(math,ams,rel,"≗","\\circeq",!0),defineSymbol(math,ams,rel,"≜","\\triangleq",!0),defineSymbol(math,ams,rel,"∼","\\thicksim"),defineSymbol(math,ams,rel,"≈","\\thickapprox"),defineSymbol(math,ams,rel,"⫆","\\supseteqq",!0),defineSymbol(math,ams,rel,"⋑","\\Supset",!0),defineSymbol(math,ams,rel,"⊐","\\sqsupset",!0),defineSymbol(math,ams,rel,"≽","\\succcurlyeq",!0),defineSymbol(math,ams,rel,"⋟","\\curlyeqsucc",!0),defineSymbol(math,ams,rel,"≿","\\succsim",!0),defineSymbol(math,ams,rel,"⪸","\\succapprox",!0),defineSymbol(math,ams,rel,"⊳","\\vartriangleright"),defineSymbol(math,ams,rel,"⊵","\\trianglerighteq"),defineSymbol(math,ams,rel,"⊩","\\Vdash",!0),defineSymbol(math,ams,rel,"∣","\\shortmid"),defineSymbol(math,ams,rel,"∥","\\shortparallel"),defineSymbol(math,ams,rel,"≬","\\between",!0),defineSymbol(math,ams,rel,"⋔","\\pitchfork",!0),defineSymbol(math,ams,rel,"∝","\\varpropto"),defineSymbol(math,ams,rel,"◀","\\blacktriangleleft"),defineSymbol(math,ams,rel,"∴","\\therefore",!0),defineSymbol(math,ams,rel,"∍","\\backepsilon"),defineSymbol(math,ams,rel,"▶","\\blacktriangleright"),defineSymbol(math,ams,rel,"∵","\\because",!0),defineSymbol(math,ams,rel,"⋘","\\llless"),defineSymbol(math,ams,rel,"⋙","\\gggtr"),defineSymbol(math,ams,bin,"⊲","\\lhd"),defineSymbol(math,ams,bin,"⊳","\\rhd"),defineSymbol(math,ams,rel,"≂","\\eqsim",!0),defineSymbol(math,main,rel,"⋈","\\Join"),defineSymbol(math,ams,rel,"≑","\\Doteq",!0),defineSymbol(math,ams,bin,"∔","\\dotplus",!0),defineSymbol(math,ams,bin,"∖","\\smallsetminus"),defineSymbol(math,ams,bin,"⋒","\\Cap",!0),defineSymbol(math,ams,bin,"⋓","\\Cup",!0),defineSymbol(math,ams,bin,"⩞","\\doublebarwedge",!0),defineSymbol(math,ams,bin,"⊟","\\boxminus",!0),defineSymbol(math,ams,bin,"⊞","\\boxplus",!0),defineSymbol(math,ams,bin,"⋇","\\divideontimes",!0),defineSymbol(math,ams,bin,"⋉","\\ltimes",!0),defineSymbol(math,ams,bin,"⋊","\\rtimes",!0),defineSymbol(math,ams,bin,"⋋","\\leftthreetimes",!0),defineSymbol(math,ams,bin,"⋌","\\rightthreetimes",!0),defineSymbol(math,ams,bin,"⋏","\\curlywedge",!0),defineSymbol(math,ams,bin,"⋎","\\curlyvee",!0),defineSymbol(math,ams,bin,"⊝","\\circleddash",!0),defineSymbol(math,ams,bin,"⊛","\\circledast",!0),defineSymbol(math,ams,bin,"⋅","\\centerdot"),defineSymbol(math,ams,bin,"⊺","\\intercal",!0),defineSymbol(math,ams,bin,"⋒","\\doublecap"),defineSymbol(math,ams,bin,"⋓","\\doublecup"),defineSymbol(math,ams,bin,"⊠","\\boxtimes",!0),defineSymbol(math,ams,rel,"⇢","\\dashrightarrow",!0),defineSymbol(math,ams,rel,"⇠","\\dashleftarrow",!0),defineSymbol(math,ams,rel,"⇇","\\leftleftarrows",!0),defineSymbol(math,ams,rel,"⇆","\\leftrightarrows",!0),defineSymbol(math,ams,rel,"⇚","\\Lleftarrow",!0),defineSymbol(math,ams,rel,"↞","\\twoheadleftarrow",!0),defineSymbol(math,ams,rel,"↢","\\leftarrowtail",!0),defineSymbol(math,ams,rel,"↫","\\looparrowleft",!0),defineSymbol(math,ams,rel,"⇋","\\leftrightharpoons",!0),defineSymbol(math,ams,rel,"↶","\\curvearrowleft",!0),defineSymbol(math,ams,rel,"↺","\\circlearrowleft",!0),defineSymbol(math,ams,rel,"↰","\\Lsh",!0),defineSymbol(math,ams,rel,"⇈","\\upuparrows",!0),defineSymbol(math,ams,rel,"↿","\\upharpoonleft",!0),defineSymbol(math,ams,rel,"⇃","\\downharpoonleft",!0),defineSymbol(math,main,rel,"⊶","\\origof",!0),defineSymbol(math,main,rel,"⊷","\\imageof",!0),defineSymbol(math,ams,rel,"⊸","\\multimap",!0),defineSymbol(math,ams,rel,"↭","\\leftrightsquigarrow",!0),defineSymbol(math,ams,rel,"⇉","\\rightrightarrows",!0),defineSymbol(math,ams,rel,"⇄","\\rightleftarrows",!0),defineSymbol(math,ams,rel,"↠","\\twoheadrightarrow",!0),defineSymbol(math,ams,rel,"↣","\\rightarrowtail",!0),defineSymbol(math,ams,rel,"↬","\\looparrowright",!0),defineSymbol(math,ams,rel,"↷","\\curvearrowright",!0),defineSymbol(math,ams,rel,"↻","\\circlearrowright",!0),defineSymbol(math,ams,rel,"↱","\\Rsh",!0),defineSymbol(math,ams,rel,"⇊","\\downdownarrows",!0),defineSymbol(math,ams,rel,"↾","\\upharpoonright",!0),defineSymbol(math,ams,rel,"⇂","\\downharpoonright",!0),defineSymbol(math,ams,rel,"⇝","\\rightsquigarrow",!0),defineSymbol(math,ams,rel,"⇝","\\leadsto"),defineSymbol(math,ams,rel,"⇛","\\Rrightarrow",!0),defineSymbol(math,ams,rel,"↾","\\restriction"),defineSymbol(math,main,textord,"‘","`"),defineSymbol(math,main,textord,"$","\\$"),defineSymbol(text,main,textord,"$","\\$"),defineSymbol(text,main,textord,"$","\\textdollar"),defineSymbol(math,main,textord,"%","\\%"),defineSymbol(text,main,textord,"%","\\%"),defineSymbol(math,main,textord,"_","\\_"),defineSymbol(text,main,textord,"_","\\_"),defineSymbol(text,main,textord,"_","\\textunderscore"),defineSymbol(math,main,textord,"∠","\\angle",!0),defineSymbol(math,main,textord,"∞","\\infty",!0),defineSymbol(math,main,textord,"′","\\prime"),defineSymbol(math,main,textord,"△","\\triangle"),defineSymbol(math,main,textord,"Γ","\\Gamma",!0),defineSymbol(math,main,textord,"Δ","\\Delta",!0),defineSymbol(math,main,textord,"Θ","\\Theta",!0),defineSymbol(math,main,textord,"Λ","\\Lambda",!0),defineSymbol(math,main,textord,"Ξ","\\Xi",!0),defineSymbol(math,main,textord,"Π","\\Pi",!0),defineSymbol(math,main,textord,"Σ","\\Sigma",!0),defineSymbol(math,main,textord,"Υ","\\Upsilon",!0),defineSymbol(math,main,textord,"Φ","\\Phi",!0),defineSymbol(math,main,textord,"Ψ","\\Psi",!0),defineSymbol(math,main,textord,"Ω","\\Omega",!0),defineSymbol(math,main,textord,"A","Α"),defineSymbol(math,main,textord,"B","Β"),defineSymbol(math,main,textord,"E","Ε"),defineSymbol(math,main,textord,"Z","Ζ"),defineSymbol(math,main,textord,"H","Η"),defineSymbol(math,main,textord,"I","Ι"),defineSymbol(math,main,textord,"K","Κ"),defineSymbol(math,main,textord,"M","Μ"),defineSymbol(math,main,textord,"N","Ν"),defineSymbol(math,main,textord,"O","Ο"),defineSymbol(math,main,textord,"P","Ρ"),defineSymbol(math,main,textord,"T","Τ"),defineSymbol(math,main,textord,"X","Χ"),defineSymbol(math,main,textord,"¬","\\neg",!0),defineSymbol(math,main,textord,"¬","\\lnot"),defineSymbol(math,main,textord,"⊤","\\top"),defineSymbol(math,main,textord,"⊥","\\bot"),defineSymbol(math,main,textord,"∅","\\emptyset"),defineSymbol(math,ams,textord,"∅","\\varnothing"),defineSymbol(math,main,mathord,"α","\\alpha",!0),defineSymbol(math,main,mathord,"β","\\beta",!0),defineSymbol(math,main,mathord,"γ","\\gamma",!0),defineSymbol(math,main,mathord,"δ","\\delta",!0),defineSymbol(math,main,mathord,"ϵ","\\epsilon",!0),defineSymbol(math,main,mathord,"ζ","\\zeta",!0),defineSymbol(math,main,mathord,"η","\\eta",!0),defineSymbol(math,main,mathord,"θ","\\theta",!0),defineSymbol(math,main,mathord,"ι","\\iota",!0),defineSymbol(math,main,mathord,"κ","\\kappa",!0),defineSymbol(math,main,mathord,"λ","\\lambda",!0),defineSymbol(math,main,mathord,"μ","\\mu",!0),defineSymbol(math,main,mathord,"ν","\\nu",!0),defineSymbol(math,main,mathord,"ξ","\\xi",!0),defineSymbol(math,main,mathord,"ο","\\omicron",!0),defineSymbol(math,main,mathord,"π","\\pi",!0),defineSymbol(math,main,mathord,"ρ","\\rho",!0),defineSymbol(math,main,mathord,"σ","\\sigma",!0),defineSymbol(math,main,mathord,"τ","\\tau",!0),defineSymbol(math,main,mathord,"υ","\\upsilon",!0),defineSymbol(math,main,mathord,"ϕ","\\phi",!0),defineSymbol(math,main,mathord,"χ","\\chi",!0),defineSymbol(math,main,mathord,"ψ","\\psi",!0),defineSymbol(math,main,mathord,"ω","\\omega",!0),defineSymbol(math,main,mathord,"ε","\\varepsilon",!0),defineSymbol(math,main,mathord,"ϑ","\\vartheta",!0),defineSymbol(math,main,mathord,"ϖ","\\varpi",!0),defineSymbol(math,main,mathord,"ϱ","\\varrho",!0),defineSymbol(math,main,mathord,"ς","\\varsigma",!0),defineSymbol(math,main,mathord,"φ","\\varphi",!0),defineSymbol(math,main,bin,"∗","*",!0),defineSymbol(math,main,bin,"+","+"),defineSymbol(math,main,bin,"−","-",!0),defineSymbol(math,main,bin,"⋅","\\cdot",!0),defineSymbol(math,main,bin,"∘","\\circ",!0),defineSymbol(math,main,bin,"÷","\\div",!0),defineSymbol(math,main,bin,"±","\\pm",!0),defineSymbol(math,main,bin,"×","\\times",!0),defineSymbol(math,main,bin,"∩","\\cap",!0),defineSymbol(math,main,bin,"∪","\\cup",!0),defineSymbol(math,main,bin,"∖","\\setminus",!0),defineSymbol(math,main,bin,"∧","\\land"),defineSymbol(math,main,bin,"∨","\\lor"),defineSymbol(math,main,bin,"∧","\\wedge",!0),defineSymbol(math,main,bin,"∨","\\vee",!0),defineSymbol(math,main,textord,"√","\\surd"),defineSymbol(math,main,open,"⟨","\\langle",!0),defineSymbol(math,main,open,"∣","\\lvert"),defineSymbol(math,main,open,"∥","\\lVert"),defineSymbol(math,main,close,"?","?"),defineSymbol(math,main,close,"!","!"),defineSymbol(math,main,close,"⟩","\\rangle",!0),defineSymbol(math,main,close,"∣","\\rvert"),defineSymbol(math,main,close,"∥","\\rVert"),defineSymbol(math,main,rel,"=","="),defineSymbol(math,main,rel,":",":"),defineSymbol(math,main,rel,"≈","\\approx",!0),defineSymbol(math,main,rel,"≅","\\cong",!0),defineSymbol(math,main,rel,"≥","\\ge"),defineSymbol(math,main,rel,"≥","\\geq",!0),defineSymbol(math,main,rel,"←","\\gets"),defineSymbol(math,main,rel,">","\\gt",!0),defineSymbol(math,main,rel,"∈","\\in",!0),defineSymbol(math,main,rel,"","\\@not"),defineSymbol(math,main,rel,"⊂","\\subset",!0),defineSymbol(math,main,rel,"⊃","\\supset",!0),defineSymbol(math,main,rel,"⊆","\\subseteq",!0),defineSymbol(math,main,rel,"⊇","\\supseteq",!0),defineSymbol(math,ams,rel,"⊈","\\nsubseteq",!0),defineSymbol(math,ams,rel,"⊉","\\nsupseteq",!0),defineSymbol(math,main,rel,"⊨","\\models"),defineSymbol(math,main,rel,"←","\\leftarrow",!0),defineSymbol(math,main,rel,"≤","\\le"),defineSymbol(math,main,rel,"≤","\\leq",!0),defineSymbol(math,main,rel,"<","\\lt",!0),defineSymbol(math,main,rel,"→","\\rightarrow",!0),defineSymbol(math,main,rel,"→","\\to"),defineSymbol(math,ams,rel,"≱","\\ngeq",!0),defineSymbol(math,ams,rel,"≰","\\nleq",!0),defineSymbol(math,main,"spacing"," ","\\ "),defineSymbol(math,main,"spacing"," ","\\space"),defineSymbol(math,main,"spacing"," ","\\nobreakspace"),defineSymbol(text,main,"spacing"," ","\\ "),defineSymbol(text,main,"spacing"," "," "),defineSymbol(text,main,"spacing"," ","\\space"),defineSymbol(text,main,"spacing"," ","\\nobreakspace"),defineSymbol(math,main,"spacing",null,"\\nobreak"),defineSymbol(math,main,"spacing",null,"\\allowbreak"),defineSymbol(math,main,"punct",",",","),defineSymbol(math,main,"punct",";",";"),defineSymbol(math,ams,bin,"⊼","\\barwedge",!0),defineSymbol(math,ams,bin,"⊻","\\veebar",!0),defineSymbol(math,main,bin,"⊙","\\odot",!0),defineSymbol(math,main,bin,"⊕","\\oplus",!0),defineSymbol(math,main,bin,"⊗","\\otimes",!0),defineSymbol(math,main,textord,"∂","\\partial",!0),defineSymbol(math,main,bin,"⊘","\\oslash",!0),defineSymbol(math,ams,bin,"⊚","\\circledcirc",!0),defineSymbol(math,ams,bin,"⊡","\\boxdot",!0),defineSymbol(math,main,bin,"△","\\bigtriangleup"),defineSymbol(math,main,bin,"▽","\\bigtriangledown"),defineSymbol(math,main,bin,"†","\\dagger"),defineSymbol(math,main,bin,"⋄","\\diamond"),defineSymbol(math,main,bin,"⋆","\\star"),defineSymbol(math,main,bin,"◃","\\triangleleft"),defineSymbol(math,main,bin,"▹","\\triangleright"),defineSymbol(math,main,open,"{","\\{"),defineSymbol(text,main,textord,"{","\\{"),defineSymbol(text,main,textord,"{","\\textbraceleft"),defineSymbol(math,main,close,"}","\\}"),defineSymbol(text,main,textord,"}","\\}"),defineSymbol(text,main,textord,"}","\\textbraceright"),defineSymbol(math,main,open,"{","\\lbrace"),defineSymbol(math,main,close,"}","\\rbrace"),defineSymbol(math,main,open,"[","\\lbrack",!0),defineSymbol(text,main,textord,"[","\\lbrack",!0),defineSymbol(math,main,close,"]","\\rbrack",!0),defineSymbol(text,main,textord,"]","\\rbrack",!0),defineSymbol(math,main,open,"(","\\lparen",!0),defineSymbol(math,main,close,")","\\rparen",!0),defineSymbol(text,main,textord,"<","\\textless",!0),defineSymbol(text,main,textord,">","\\textgreater",!0),defineSymbol(math,main,open,"⌊","\\lfloor",!0),defineSymbol(math,main,close,"⌋","\\rfloor",!0),defineSymbol(math,main,open,"⌈","\\lceil",!0),defineSymbol(math,main,close,"⌉","\\rceil",!0),defineSymbol(math,main,textord,"\\","\\backslash"),defineSymbol(math,main,textord,"∣","|"),defineSymbol(math,main,textord,"∣","\\vert"),defineSymbol(text,main,textord,"|","\\textbar",!0),defineSymbol(math,main,textord,"∥","\\|"),defineSymbol(math,main,textord,"∥","\\Vert"),defineSymbol(text,main,textord,"∥","\\textbardbl"),defineSymbol(text,main,textord,"~","\\textasciitilde"),defineSymbol(text,main,textord,"\\","\\textbackslash"),defineSymbol(text,main,textord,"^","\\textasciicircum"),defineSymbol(math,main,rel,"↑","\\uparrow",!0),defineSymbol(math,main,rel,"⇑","\\Uparrow",!0),defineSymbol(math,main,rel,"↓","\\downarrow",!0),defineSymbol(math,main,rel,"⇓","\\Downarrow",!0),defineSymbol(math,main,rel,"↕","\\updownarrow",!0),defineSymbol(math,main,rel,"⇕","\\Updownarrow",!0),defineSymbol(math,main,op,"∐","\\coprod"),defineSymbol(math,main,op,"⋁","\\bigvee"),defineSymbol(math,main,op,"⋀","\\bigwedge"),defineSymbol(math,main,op,"⨄","\\biguplus"),defineSymbol(math,main,op,"⋂","\\bigcap"),defineSymbol(math,main,op,"⋃","\\bigcup"),defineSymbol(math,main,op,"∫","\\int"),defineSymbol(math,main,op,"∫","\\intop"),defineSymbol(math,main,op,"∬","\\iint"),defineSymbol(math,main,op,"∭","\\iiint"),defineSymbol(math,main,op,"∏","\\prod"),defineSymbol(math,main,op,"∑","\\sum"),defineSymbol(math,main,op,"⨂","\\bigotimes"),defineSymbol(math,main,op,"⨁","\\bigoplus"),defineSymbol(math,main,op,"⨀","\\bigodot"),defineSymbol(math,main,op,"∮","\\oint"),defineSymbol(math,main,op,"∯","\\oiint"),defineSymbol(math,main,op,"∰","\\oiiint"),defineSymbol(math,main,op,"⨆","\\bigsqcup"),defineSymbol(math,main,op,"∫","\\smallint"),defineSymbol(text,main,"inner","…","\\textellipsis"),defineSymbol(math,main,"inner","…","\\mathellipsis"),defineSymbol(text,main,"inner","…","\\ldots",!0),defineSymbol(math,main,"inner","…","\\ldots",!0),defineSymbol(math,main,"inner","⋯","\\@cdots",!0),defineSymbol(math,main,"inner","⋱","\\ddots",!0),defineSymbol(math,main,textord,"⋮","\\varvdots"),defineSymbol(text,main,textord,"⋮","\\varvdots"),defineSymbol(math,main,accent,"ˊ","\\acute"),defineSymbol(math,main,accent,"ˋ","\\grave"),defineSymbol(math,main,accent,"¨","\\ddot"),defineSymbol(math,main,accent,"~","\\tilde"),defineSymbol(math,main,accent,"ˉ","\\bar"),defineSymbol(math,main,accent,"˘","\\breve"),defineSymbol(math,main,accent,"ˇ","\\check"),defineSymbol(math,main,accent,"^","\\hat"),defineSymbol(math,main,accent,"⃗","\\vec"),defineSymbol(math,main,accent,"˙","\\dot"),defineSymbol(math,main,accent,"˚","\\mathring"),defineSymbol(math,main,mathord,"","\\@imath"),defineSymbol(math,main,mathord,"","\\@jmath"),defineSymbol(math,main,textord,"ı","ı"),defineSymbol(math,main,textord,"ȷ","ȷ"),defineSymbol(text,main,textord,"ı","\\i",!0),defineSymbol(text,main,textord,"ȷ","\\j",!0),defineSymbol(text,main,textord,"ß","\\ss",!0),defineSymbol(text,main,textord,"æ","\\ae",!0),defineSymbol(text,main,textord,"œ","\\oe",!0),defineSymbol(text,main,textord,"ø","\\o",!0),defineSymbol(text,main,textord,"Æ","\\AE",!0),defineSymbol(text,main,textord,"Œ","\\OE",!0),defineSymbol(text,main,textord,"Ø","\\O",!0),defineSymbol(text,main,accent,"ˊ","\\'"),defineSymbol(text,main,accent,"ˋ","\\`"),defineSymbol(text,main,accent,"ˆ","\\^"),defineSymbol(text,main,accent,"˜","\\~"),defineSymbol(text,main,accent,"ˉ","\\="),defineSymbol(text,main,accent,"˘","\\u"),defineSymbol(text,main,accent,"˙","\\."),defineSymbol(text,main,accent,"¸","\\c"),defineSymbol(text,main,accent,"˚","\\r"),defineSymbol(text,main,accent,"ˇ","\\v"),defineSymbol(text,main,accent,"¨",'\\"'),defineSymbol(text,main,accent,"˝","\\H"),defineSymbol(text,main,accent,"◯","\\textcircled");var ligatures={"--":!0,"---":!0,"``":!0,"''":!0};defineSymbol(text,main,textord,"–","--",!0),defineSymbol(text,main,textord,"–","\\textendash"),defineSymbol(text,main,textord,"—","---",!0),defineSymbol(text,main,textord,"—","\\textemdash"),defineSymbol(text,main,textord,"‘","`",!0),defineSymbol(text,main,textord,"‘","\\textquoteleft"),defineSymbol(text,main,textord,"’","'",!0),defineSymbol(text,main,textord,"’","\\textquoteright"),defineSymbol(text,main,textord,"“","``",!0),defineSymbol(text,main,textord,"“","\\textquotedblleft"),defineSymbol(text,main,textord,"”","''",!0),defineSymbol(text,main,textord,"”","\\textquotedblright"),defineSymbol(math,main,textord,"°","\\degree",!0),defineSymbol(text,main,textord,"°","\\degree"),defineSymbol(text,main,textord,"°","\\textdegree",!0),defineSymbol(math,main,textord,"£","\\pounds"),defineSymbol(math,main,textord,"£","\\mathsterling",!0),defineSymbol(text,main,textord,"£","\\pounds"),defineSymbol(text,main,textord,"£","\\textsterling",!0),defineSymbol(math,ams,textord,"✠","\\maltese"),defineSymbol(text,ams,textord,"✠","\\maltese");for(var i=0;i<14;i++){var ch='0123456789/@."'.charAt(i);defineSymbol(math,main,textord,ch,ch)}for(var _i=0;_i<25;_i++){var _ch='0123456789!@*()-=+";:?/.,'.charAt(_i);defineSymbol(text,main,textord,_ch,_ch)}for(var letters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",_i2=0;_i2<52;_i2++){var _ch2=letters.charAt(_i2);defineSymbol(math,main,mathord,_ch2,_ch2),defineSymbol(text,main,textord,_ch2,_ch2)}defineSymbol(math,ams,textord,"C","ℂ"),defineSymbol(text,ams,textord,"C","ℂ"),defineSymbol(math,ams,textord,"H","ℍ"),defineSymbol(text,ams,textord,"H","ℍ"),defineSymbol(math,ams,textord,"N","ℕ"),defineSymbol(text,ams,textord,"N","ℕ"),defineSymbol(math,ams,textord,"P","ℙ"),defineSymbol(text,ams,textord,"P","ℙ"),defineSymbol(math,ams,textord,"Q","ℚ"),defineSymbol(text,ams,textord,"Q","ℚ"),defineSymbol(math,ams,textord,"R","ℝ"),defineSymbol(text,ams,textord,"R","ℝ"),defineSymbol(math,ams,textord,"Z","ℤ"),defineSymbol(text,ams,textord,"Z","ℤ"),defineSymbol(math,main,mathord,"h","ℎ"),defineSymbol(text,main,mathord,"h","ℎ");for(var wideChar="",_i3=0;_i3<52;_i3++){var _ch3=letters.charAt(_i3);defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56320+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56372+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56424+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56580+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56684+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56736+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56788+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56840+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56944+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),_i3<26&&(defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56632+_i3)),defineSymbol(text,main,textord,_ch3,wideChar),defineSymbol(math,main,mathord,_ch3,wideChar=String.fromCharCode(55349,56476+_i3)),defineSymbol(text,main,textord,_ch3,wideChar))}defineSymbol(math,main,mathord,"k",wideChar=String.fromCharCode(55349,56668)),defineSymbol(text,main,textord,"k",wideChar);for(var _i4=0;_i4<10;_i4++){var _ch4=_i4.toString();defineSymbol(math,main,mathord,_ch4,wideChar=String.fromCharCode(55349,57294+_i4)),defineSymbol(text,main,textord,_ch4,wideChar),defineSymbol(math,main,mathord,_ch4,wideChar=String.fromCharCode(55349,57314+_i4)),defineSymbol(text,main,textord,_ch4,wideChar),defineSymbol(math,main,mathord,_ch4,wideChar=String.fromCharCode(55349,57324+_i4)),defineSymbol(text,main,textord,_ch4,wideChar),defineSymbol(math,main,mathord,_ch4,wideChar=String.fromCharCode(55349,57334+_i4)),defineSymbol(text,main,textord,_ch4,wideChar)}for(var _i5=0;_i5<3;_i5++){var _ch5="ÐÞþ".charAt(_i5);defineSymbol(math,main,mathord,_ch5,_ch5),defineSymbol(text,main,textord,_ch5,_ch5)}var wideLatinLetterData=[["mathbf","textbf","Main-Bold"],["mathbf","textbf","Main-Bold"],["mathnormal","textit","Math-Italic"],["mathnormal","textit","Math-Italic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["mathscr","textscr","Script-Regular"],["","",""],["","",""],["","",""],["mathfrak","textfrak","Fraktur-Regular"],["mathfrak","textfrak","Fraktur-Regular"],["mathbb","textbb","AMS-Regular"],["mathbb","textbb","AMS-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathitsf","textitsf","SansSerif-Italic"],["mathitsf","textitsf","SansSerif-Italic"],["","",""],["","",""],["mathtt","texttt","Typewriter-Regular"],["mathtt","texttt","Typewriter-Regular"]],wideNumeralData=[["mathbf","textbf","Main-Bold"],["","",""],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathtt","texttt","Typewriter-Regular"]],lookupSymbol=function lookupSymbol(value,fontName,mode){return symbols[mode][value]&&symbols[mode][value].replace&&(value=symbols[mode][value].replace),{value,metrics:getCharacterMetrics(value,fontName,mode)}},makeSymbol=function makeSymbol(value,fontName,mode,options,classes){var symbolNode,lookup=lookupSymbol(value,fontName,mode),metrics=lookup.metrics;if(value=lookup.value,metrics){var italic=metrics.italic;("text"===mode||options&&"mathit"===options.font)&&(italic=0),symbolNode=new SymbolNode(value,metrics.height,metrics.depth,italic,metrics.skew,metrics.width,classes)}else"undefined"!=typeof console&&console.warn("No character metrics for '"+value+"' in style '"+fontName+"' and mode '"+mode+"'"),symbolNode=new SymbolNode(value,0,0,0,0,0,classes);if(options){symbolNode.maxFontSize=options.sizeMultiplier,options.style.isTight()&&symbolNode.classes.push("mtight");var color=options.getColor();color&&(symbolNode.style.color=color)}return symbolNode},canCombine=(prev,next)=>{if(createClass(prev.classes)!==createClass(next.classes)||prev.skew!==next.skew||prev.maxFontSize!==next.maxFontSize)return!1;if(1===prev.classes.length){var cls=prev.classes[0];if("mbin"===cls||"mord"===cls)return!1}for(var style in prev.style)if(prev.style.hasOwnProperty(style)&&prev.style[style]!==next.style[style])return!1;for(var _style in next.style)if(next.style.hasOwnProperty(_style)&&prev.style[_style]!==next.style[_style])return!1;return!0},sizeElementFromChildren=function sizeElementFromChildren(elem){for(var height=0,depth=0,maxFontSize=0,i=0;i<elem.children.length;i++){var child=elem.children[i];child.height>height&&(height=child.height),child.depth>depth&&(depth=child.depth),child.maxFontSize>maxFontSize&&(maxFontSize=child.maxFontSize)}elem.height=height,elem.depth=depth,elem.maxFontSize=maxFontSize},makeSpan$2=function makeSpan(classes,children,options,style){var span=new Span(classes,children,options,style);return sizeElementFromChildren(span),span},makeSvgSpan=(classes,children,options,style)=>new Span(classes,children,options,style),makeFragment=function makeFragment(children){var fragment=new DocumentFragment(children);return sizeElementFromChildren(fragment),fragment},retrieveTextFontName=function retrieveTextFontName(fontFamily,fontWeight,fontShape){var baseFontName="";switch(fontFamily){case"amsrm":baseFontName="AMS";break;case"textrm":baseFontName="Main";break;case"textsf":baseFontName="SansSerif";break;case"texttt":baseFontName="Typewriter";break;default:baseFontName=fontFamily}return baseFontName+"-"+("textbf"===fontWeight&&"textit"===fontShape?"BoldItalic":"textbf"===fontWeight?"Bold":"textit"===fontWeight?"Italic":"Regular")},fontMap={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},svgData={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},buildCommon={fontMap,makeSymbol,mathsym:function mathsym(value,mode,options,classes){return void 0===classes&&(classes=[]),"boldsymbol"===options.font&&lookupSymbol(value,"Main-Bold",mode).metrics?makeSymbol(value,"Main-Bold",mode,options,classes.concat(["mathbf"])):"\\"===value||"main"===symbols[mode][value].font?makeSymbol(value,"Main-Regular",mode,options,classes):makeSymbol(value,"AMS-Regular",mode,options,classes.concat(["amsrm"]))},makeSpan:makeSpan$2,makeSvgSpan,makeLineSpan:function makeLineSpan(className,options,thickness){var line=makeSpan$2([className],[],options);return line.height=Math.max(thickness||options.fontMetrics().defaultRuleThickness,options.minRuleThickness),line.style.borderBottomWidth=makeEm(line.height),line.maxFontSize=1,line},makeAnchor:function makeAnchor(href,classes,children,options){var anchor=new Anchor(href,classes,children,options);return sizeElementFromChildren(anchor),anchor},makeFragment,wrapFragment:function wrapFragment(group,options){return group instanceof DocumentFragment?makeSpan$2([],[group],options):group},makeVList:function makeVList(params,options){for(var{children,depth}=function getVListChildrenAndDepth(params){if("individualShift"===params.positionType){for(var oldChildren=params.children,children=[oldChildren[0]],_depth=-oldChildren[0].shift-oldChildren[0].elem.depth,currPos=_depth,i=1;i<oldChildren.length;i++){var diff=-oldChildren[i].shift-currPos-oldChildren[i].elem.depth,size=diff-(oldChildren[i-1].elem.height+oldChildren[i-1].elem.depth);currPos+=diff,children.push({type:"kern",size}),children.push(oldChildren[i])}return{children,depth:_depth}}var depth;if("top"===params.positionType){for(var bottom=params.positionData,_i=0;_i<params.children.length;_i++){var child=params.children[_i];bottom-="kern"===child.type?child.size:child.elem.height+child.elem.depth}depth=bottom}else if("bottom"===params.positionType)depth=-params.positionData;else{var firstChild=params.children[0];if("elem"!==firstChild.type)throw new Error('First child must have type "elem".');if("shift"===params.positionType)depth=-firstChild.elem.depth-params.positionData;else{if("firstBaseline"!==params.positionType)throw new Error("Invalid positionType "+params.positionType+".");depth=-firstChild.elem.depth}}return{children:params.children,depth}}(params),pstrutSize=0,i=0;i<children.length;i++){var child=children[i];if("elem"===child.type){var elem=child.elem;pstrutSize=Math.max(pstrutSize,elem.maxFontSize,elem.height)}}pstrutSize+=2;var pstrut=makeSpan$2(["pstrut"],[]);pstrut.style.height=makeEm(pstrutSize);for(var realChildren=[],minPos=depth,maxPos=depth,currPos=depth,_i2=0;_i2<children.length;_i2++){var _child=children[_i2];if("kern"===_child.type)currPos+=_child.size;else{var _elem=_child.elem,classes=_child.wrapperClasses||[],style=_child.wrapperStyle||{},childWrap=makeSpan$2(classes,[pstrut,_elem],void 0,style);childWrap.style.top=makeEm(-pstrutSize-currPos-_elem.depth),_child.marginLeft&&(childWrap.style.marginLeft=_child.marginLeft),_child.marginRight&&(childWrap.style.marginRight=_child.marginRight),realChildren.push(childWrap),currPos+=_elem.height+_elem.depth}minPos=Math.min(minPos,currPos),maxPos=Math.max(maxPos,currPos)}var rows,vlist=makeSpan$2(["vlist"],realChildren);if(vlist.style.height=makeEm(maxPos),minPos<0){var emptySpan=makeSpan$2([],[]),depthStrut=makeSpan$2(["vlist"],[emptySpan]);depthStrut.style.height=makeEm(-minPos);var topStrut=makeSpan$2(["vlist-s"],[new SymbolNode("")]);rows=[makeSpan$2(["vlist-r"],[vlist,topStrut]),makeSpan$2(["vlist-r"],[depthStrut])]}else rows=[makeSpan$2(["vlist-r"],[vlist])];var vtable=makeSpan$2(["vlist-t"],rows);return 2===rows.length&&vtable.classes.push("vlist-t2"),vtable.height=maxPos,vtable.depth=-minPos,vtable},makeOrd:function makeOrd(group,options,type){var mode=group.mode,text=group.text,classes=["mord"],isFont="math"===mode||"text"===mode&&options.font,fontOrFamily=isFont?options.font:options.fontFamily,wideFontName="",wideFontClass="";if(55349===text.charCodeAt(0)&&([wideFontName,wideFontClass]=function wideCharacterFont(wideChar,mode){var codePoint=1024*(wideChar.charCodeAt(0)-55296)+(wideChar.charCodeAt(1)-56320)+65536,j="math"===mode?0:1;if(119808<=codePoint&&codePoint<120484){var i=Math.floor((codePoint-119808)/26);return[wideLatinLetterData[i][2],wideLatinLetterData[i][j]]}if(120782<=codePoint&&codePoint<=120831){var _i=Math.floor((codePoint-120782)/10);return[wideNumeralData[_i][2],wideNumeralData[_i][j]]}if(120485===codePoint||120486===codePoint)return[wideLatinLetterData[0][2],wideLatinLetterData[0][j]];if(120486<codePoint&&codePoint<120782)return["",""];throw new ParseError("Unsupported character: "+wideChar)}(text,mode)),wideFontName.length>0)return makeSymbol(text,wideFontName,mode,options,classes.concat(wideFontClass));if(fontOrFamily){var fontName,fontClasses;if("boldsymbol"===fontOrFamily){var fontData=function boldsymbol(value,mode,options,classes,type){return"textord"!==type&&lookupSymbol(value,"Math-BoldItalic",mode).metrics?{fontName:"Math-BoldItalic",fontClass:"boldsymbol"}:{fontName:"Main-Bold",fontClass:"mathbf"}}(text,mode,0,0,type);fontName=fontData.fontName,fontClasses=[fontData.fontClass]}else isFont?(fontName=fontMap[fontOrFamily].fontName,fontClasses=[fontOrFamily]):(fontName=retrieveTextFontName(fontOrFamily,options.fontWeight,options.fontShape),fontClasses=[fontOrFamily,options.fontWeight,options.fontShape]);if(lookupSymbol(text,fontName,mode).metrics)return makeSymbol(text,fontName,mode,options,classes.concat(fontClasses));if(ligatures.hasOwnProperty(text)&&"Typewriter"===fontName.slice(0,10)){for(var parts=[],i=0;i<text.length;i++)parts.push(makeSymbol(text[i],fontName,mode,options,classes.concat(fontClasses)));return makeFragment(parts)}}if("mathord"===type)return makeSymbol(text,"Math-Italic",mode,options,classes.concat(["mathnormal"]));if("textord"===type){var font=symbols[mode][text]&&symbols[mode][text].font;if("ams"===font){var _fontName=retrieveTextFontName("amsrm",options.fontWeight,options.fontShape);return makeSymbol(text,_fontName,mode,options,classes.concat("amsrm",options.fontWeight,options.fontShape))}if("main"!==font&&font){var _fontName3=retrieveTextFontName(font,options.fontWeight,options.fontShape);return makeSymbol(text,_fontName3,mode,options,classes.concat(_fontName3,options.fontWeight,options.fontShape))}var _fontName2=retrieveTextFontName("textrm",options.fontWeight,options.fontShape);return makeSymbol(text,_fontName2,mode,options,classes.concat(options.fontWeight,options.fontShape))}throw new Error("unexpected type: "+type+" in makeOrd")},makeGlue:(measurement,options)=>{var rule=makeSpan$2(["mspace"],[],options),size=calculateSize(measurement,options);return rule.style.marginRight=makeEm(size),rule},staticSvg:function staticSvg(value,options){var[pathName,width,height]=svgData[value],path=new PathNode(pathName),svgNode=new SvgNode([path],{width:makeEm(width),height:makeEm(height),style:"width:"+makeEm(width),viewBox:"0 0 "+1e3*width+" "+1e3*height,preserveAspectRatio:"xMinYMin"}),span=makeSvgSpan(["overlay"],[svgNode],options);return span.height=height,span.style.height=makeEm(height),span.style.width=makeEm(width),span},svgData,tryCombineChars:chars=>{for(var i=0;i<chars.length-1;i++){var prev=chars[i],next=chars[i+1];prev instanceof SymbolNode&&next instanceof SymbolNode&&canCombine(prev,next)&&(prev.text+=next.text,prev.height=Math.max(prev.height,next.height),prev.depth=Math.max(prev.depth,next.depth),prev.italic=next.italic,chars.splice(i+1,1),i--)}return chars}},thinspace={number:3,unit:"mu"},mediumspace={number:4,unit:"mu"},thickspace={number:5,unit:"mu"},spacings={mord:{mop:thinspace,mbin:mediumspace,mrel:thickspace,minner:thinspace},mop:{mord:thinspace,mop:thinspace,mrel:thickspace,minner:thinspace},mbin:{mord:mediumspace,mop:mediumspace,mopen:mediumspace,minner:mediumspace},mrel:{mord:thickspace,mop:thickspace,mopen:thickspace,minner:thickspace},mopen:{},mclose:{mop:thinspace,mbin:mediumspace,mrel:thickspace,minner:thinspace},mpunct:{mord:thinspace,mop:thinspace,mrel:thickspace,mopen:thinspace,mclose:thinspace,mpunct:thinspace,minner:thinspace},minner:{mord:thinspace,mop:thinspace,mbin:mediumspace,mrel:thickspace,mopen:thinspace,mpunct:thinspace,minner:thinspace}},tightSpacings={mord:{mop:thinspace},mop:{mord:thinspace,mop:thinspace},mbin:{},mrel:{},mopen:{},mclose:{mop:thinspace},mpunct:{},minner:{mop:thinspace}},_functions={},_htmlGroupBuilders={},_mathmlGroupBuilders={};function defineFunction(_ref){for(var{type,names,props,handler,htmlBuilder,mathmlBuilder}=_ref,data={type,numArgs:props.numArgs,argTypes:props.argTypes,allowedInArgument:!!props.allowedInArgument,allowedInText:!!props.allowedInText,allowedInMath:void 0===props.allowedInMath||props.allowedInMath,numOptionalArgs:props.numOptionalArgs||0,infix:!!props.infix,primitive:!!props.primitive,handler},i=0;i<names.length;++i)_functions[names[i]]=data;type&&(htmlBuilder&&(_htmlGroupBuilders[type]=htmlBuilder),mathmlBuilder&&(_mathmlGroupBuilders[type]=mathmlBuilder))}function defineFunctionBuilders(_ref2){var{type,htmlBuilder,mathmlBuilder}=_ref2;defineFunction({type,names:[],props:{numArgs:0},handler(){throw new Error("Should never be called.")},htmlBuilder,mathmlBuilder})}var normalizeArgument=function normalizeArgument(arg){return"ordgroup"===arg.type&&1===arg.body.length?arg.body[0]:arg},ordargument=function ordargument(arg){return"ordgroup"===arg.type?arg.body:[arg]},makeSpan$1=buildCommon.makeSpan,binLeftCanceller=["leftmost","mbin","mopen","mrel","mop","mpunct"],binRightCanceller=["rightmost","mrel","mclose","mpunct"],styleMap$1={display:Style$1.DISPLAY,text:Style$1.TEXT,script:Style$1.SCRIPT,scriptscript:Style$1.SCRIPTSCRIPT},DomEnum={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},buildExpression$1=function buildExpression(expression,options,isRealGroup,surrounding){void 0===surrounding&&(surrounding=[null,null]);for(var groups=[],i=0;i<expression.length;i++){var output=buildGroup$1(expression[i],options);if(output instanceof DocumentFragment){var children=output.children;groups.push(...children)}else groups.push(output)}if(buildCommon.tryCombineChars(groups),!isRealGroup)return groups;var glueOptions=options;if(1===expression.length){var node=expression[0];"sizing"===node.type?glueOptions=options.havingSize(node.size):"styling"===node.type&&(glueOptions=options.havingStyle(styleMap$1[node.style]))}var dummyPrev=makeSpan$1([surrounding[0]||"leftmost"],[],options),dummyNext=makeSpan$1([surrounding[1]||"rightmost"],[],options),isRoot="root"===isRealGroup;return traverseNonSpaceNodes(groups,((node,prev)=>{var prevType=prev.classes[0],type=node.classes[0];"mbin"===prevType&&utils.contains(binRightCanceller,type)?prev.classes[0]="mord":"mbin"===type&&utils.contains(binLeftCanceller,prevType)&&(node.classes[0]="mord")}),{node:dummyPrev},dummyNext,isRoot),traverseNonSpaceNodes(groups,((node,prev)=>{var prevType=getTypeOfDomTree(prev),type=getTypeOfDomTree(node),space=prevType&&type?node.hasClass("mtight")?tightSpacings[prevType][type]:spacings[prevType][type]:null;if(space)return buildCommon.makeGlue(space,glueOptions)}),{node:dummyPrev},dummyNext,isRoot),groups},traverseNonSpaceNodes=function traverseNonSpaceNodes(nodes,callback,prev,next,isRoot){next&&nodes.push(next);for(var i=0;i<nodes.length;i++){var node=nodes[i],partialGroup=checkPartialGroup(node);if(partialGroup)traverseNonSpaceNodes(partialGroup.children,callback,prev,null,isRoot);else{var nonspace=!node.hasClass("mspace");if(nonspace){var result=callback(node,prev.node);result&&(prev.insertAfter?prev.insertAfter(result):(nodes.unshift(result),i++))}nonspace?prev.node=node:isRoot&&node.hasClass("newline")&&(prev.node=makeSpan$1(["leftmost"])),prev.insertAfter=(index=>n=>{nodes.splice(index+1,0,n),i++})(i)}}next&&nodes.pop()},checkPartialGroup=function checkPartialGroup(node){return node instanceof DocumentFragment||node instanceof Anchor||node instanceof Span&&node.hasClass("enclosing")?node:null},getOutermostNode=function getOutermostNode(node,side){var partialGroup=checkPartialGroup(node);if(partialGroup){var children=partialGroup.children;if(children.length){if("right"===side)return getOutermostNode(children[children.length-1],"right");if("left"===side)return getOutermostNode(children[0],"left")}}return node},getTypeOfDomTree=function getTypeOfDomTree(node,side){return node?(side&&(node=getOutermostNode(node,side)),DomEnum[node.classes[0]]||null):null},makeNullDelimiter=function makeNullDelimiter(options,classes){var moreClasses=["nulldelimiter"].concat(options.baseSizingClasses());return makeSpan$1(classes.concat(moreClasses))},buildGroup$1=function buildGroup(group,options,baseOptions){if(!group)return makeSpan$1();if(_htmlGroupBuilders[group.type]){var groupNode=_htmlGroupBuilders[group.type](group,options);if(baseOptions&&options.size!==baseOptions.size){groupNode=makeSpan$1(options.sizingClasses(baseOptions),[groupNode],options);var multiplier=options.sizeMultiplier/baseOptions.sizeMultiplier;groupNode.height*=multiplier,groupNode.depth*=multiplier}return groupNode}throw new ParseError("Got group of unknown type: '"+group.type+"'")};function buildHTMLUnbreakable(children,options){var body=makeSpan$1(["base"],children,options),strut=makeSpan$1(["strut"]);return strut.style.height=makeEm(body.height+body.depth),body.depth&&(strut.style.verticalAlign=makeEm(-body.depth)),body.children.unshift(strut),body}function buildHTML(tree,options){var tag=null;1===tree.length&&"tag"===tree[0].type&&(tag=tree[0].tag,tree=tree[0].body);var eqnNum,expression=buildExpression$1(tree,options,"root");2===expression.length&&expression[1].hasClass("tag")&&(eqnNum=expression.pop());for(var tagChild,children=[],parts=[],i=0;i<expression.length;i++)if(parts.push(expression[i]),expression[i].hasClass("mbin")||expression[i].hasClass("mrel")||expression[i].hasClass("allowbreak")){for(var nobreak=!1;i<expression.length-1&&expression[i+1].hasClass("mspace")&&!expression[i+1].hasClass("newline");)i++,parts.push(expression[i]),expression[i].hasClass("nobreak")&&(nobreak=!0);nobreak||(children.push(buildHTMLUnbreakable(parts,options)),parts=[])}else expression[i].hasClass("newline")&&(parts.pop(),parts.length>0&&(children.push(buildHTMLUnbreakable(parts,options)),parts=[]),children.push(expression[i]));parts.length>0&&children.push(buildHTMLUnbreakable(parts,options)),tag?((tagChild=buildHTMLUnbreakable(buildExpression$1(tag,options,!0))).classes=["tag"],children.push(tagChild)):eqnNum&&children.push(eqnNum);var htmlNode=makeSpan$1(["katex-html"],children);if(htmlNode.setAttribute("aria-hidden","true"),tagChild){var strut=tagChild.children[0];strut.style.height=makeEm(htmlNode.height+htmlNode.depth),htmlNode.depth&&(strut.style.verticalAlign=makeEm(-htmlNode.depth))}return htmlNode}function newDocumentFragment(children){return new DocumentFragment(children)}class MathNode{constructor(type,children,classes){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=type,this.attributes={},this.children=children||[],this.classes=classes||[]}setAttribute(name,value){this.attributes[name]=value}getAttribute(name){return this.attributes[name]}toNode(){var node=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var attr in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,attr)&&node.setAttribute(attr,this.attributes[attr]);this.classes.length>0&&(node.className=createClass(this.classes));for(var i=0;i<this.children.length;i++)if(this.children[i]instanceof TextNode&&this.children[i+1]instanceof TextNode){for(var text=this.children[i].toText()+this.children[++i].toText();this.children[i+1]instanceof TextNode;)text+=this.children[++i].toText();node.appendChild(new TextNode(text).toNode())}else node.appendChild(this.children[i].toNode());return node}toMarkup(){var markup="<"+this.type;for(var attr in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,attr)&&(markup+=" "+attr+'="',markup+=utils.escape(this.attributes[attr]),markup+='"');this.classes.length>0&&(markup+=' class ="'+utils.escape(createClass(this.classes))+'"'),markup+=">";for(var i=0;i<this.children.length;i++)markup+=this.children[i].toMarkup();return markup+="</"+this.type+">"}toText(){return this.children.map((child=>child.toText())).join("")}}class TextNode{constructor(text){this.text=void 0,this.text=text}toNode(){return document.createTextNode(this.text)}toMarkup(){return utils.escape(this.toText())}toText(){return this.text}}var mathMLTree={MathNode,TextNode,SpaceNode:class SpaceNode{constructor(width){this.width=void 0,this.character=void 0,this.width=width,this.character=width>=.05555&&width<=.05556?" ":width>=.1666&&width<=.1667?" ":width>=.2222&&width<=.2223?" ":width>=.2777&&width<=.2778?" ":width>=-.05556&&width<=-.05555?" ":width>=-.1667&&width<=-.1666?" ":width>=-.2223&&width<=-.2222?" ":width>=-.2778&&width<=-.2777?" ":null}toNode(){if(this.character)return document.createTextNode(this.character);var node=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return node.setAttribute("width",makeEm(this.width)),node}toMarkup(){return this.character?"<mtext>"+this.character+"</mtext>":'<mspace width="'+makeEm(this.width)+'"/>'}toText(){return this.character?this.character:" "}},newDocumentFragment},makeText=function makeText(text,mode,options){return!symbols[mode][text]||!symbols[mode][text].replace||55349===text.charCodeAt(0)||ligatures.hasOwnProperty(text)&&options&&(options.fontFamily&&"tt"===options.fontFamily.slice(4,6)||options.font&&"tt"===options.font.slice(4,6))||(text=symbols[mode][text].replace),new mathMLTree.TextNode(text)},makeRow=function makeRow(body){return 1===body.length?body[0]:new mathMLTree.MathNode("mrow",body)},getVariant=function getVariant(group,options){if("texttt"===options.fontFamily)return"monospace";if("textsf"===options.fontFamily)return"textit"===options.fontShape&&"textbf"===options.fontWeight?"sans-serif-bold-italic":"textit"===options.fontShape?"sans-serif-italic":"textbf"===options.fontWeight?"bold-sans-serif":"sans-serif";if("textit"===options.fontShape&&"textbf"===options.fontWeight)return"bold-italic";if("textit"===options.fontShape)return"italic";if("textbf"===options.fontWeight)return"bold";var font=options.font;if(!font||"mathnormal"===font)return null;var mode=group.mode;if("mathit"===font)return"italic";if("boldsymbol"===font)return"textord"===group.type?"bold":"bold-italic";if("mathbf"===font)return"bold";if("mathbb"===font)return"double-struck";if("mathsfit"===font)return"sans-serif-italic";if("mathfrak"===font)return"fraktur";if("mathscr"===font||"mathcal"===font)return"script";if("mathsf"===font)return"sans-serif";if("mathtt"===font)return"monospace";var text=group.text;return utils.contains(["\\imath","\\jmath"],text)?null:(symbols[mode][text]&&symbols[mode][text].replace&&(text=symbols[mode][text].replace),getCharacterMetrics(text,buildCommon.fontMap[font].fontName,mode)?buildCommon.fontMap[font].variant:null)};function isNumberPunctuation(group){if(!group)return!1;if("mi"===group.type&&1===group.children.length){var child=group.children[0];return child instanceof TextNode&&"."===child.text}if("mo"===group.type&&1===group.children.length&&"true"===group.getAttribute("separator")&&"0em"===group.getAttribute("lspace")&&"0em"===group.getAttribute("rspace")){var _child=group.children[0];return _child instanceof TextNode&&","===_child.text}return!1}var buildExpression=function buildExpression(expression,options,isOrdgroup){if(1===expression.length){var group=buildGroup(expression[0],options);return isOrdgroup&&group instanceof MathNode&&"mo"===group.type&&(group.setAttribute("lspace","0em"),group.setAttribute("rspace","0em")),[group]}for(var lastGroup,groups=[],i=0;i<expression.length;i++){var _group=buildGroup(expression[i],options);if(_group instanceof MathNode&&lastGroup instanceof MathNode){if("mtext"===_group.type&&"mtext"===lastGroup.type&&_group.getAttribute("mathvariant")===lastGroup.getAttribute("mathvariant")){lastGroup.children.push(..._group.children);continue}if("mn"===_group.type&&"mn"===lastGroup.type){lastGroup.children.push(..._group.children);continue}if(isNumberPunctuation(_group)&&"mn"===lastGroup.type){lastGroup.children.push(..._group.children);continue}if("mn"===_group.type&&isNumberPunctuation(lastGroup))_group.children=[...lastGroup.children,..._group.children],groups.pop();else if(("msup"===_group.type||"msub"===_group.type)&&_group.children.length>=1&&("mn"===lastGroup.type||isNumberPunctuation(lastGroup))){var base=_group.children[0];base instanceof MathNode&&"mn"===base.type&&(base.children=[...lastGroup.children,...base.children],groups.pop())}else if("mi"===lastGroup.type&&1===lastGroup.children.length){var lastChild=lastGroup.children[0];if(lastChild instanceof TextNode&&"̸"===lastChild.text&&("mo"===_group.type||"mi"===_group.type||"mn"===_group.type)){var child=_group.children[0];child instanceof TextNode&&child.text.length>0&&(child.text=child.text.slice(0,1)+"̸"+child.text.slice(1),groups.pop())}}}groups.push(_group),lastGroup=_group}return groups},buildExpressionRow=function buildExpressionRow(expression,options,isOrdgroup){return makeRow(buildExpression(expression,options,isOrdgroup))},buildGroup=function buildGroup(group,options){if(!group)return new mathMLTree.MathNode("mrow");if(_mathmlGroupBuilders[group.type])return _mathmlGroupBuilders[group.type](group,options);throw new ParseError("Got group of unknown type: '"+group.type+"'")};function buildMathML(tree,texExpression,options,isDisplayMode,forMathmlOnly){var wrapper,expression=buildExpression(tree,options);wrapper=1===expression.length&&expression[0]instanceof MathNode&&utils.contains(["mrow","mtable"],expression[0].type)?expression[0]:new mathMLTree.MathNode("mrow",expression);var annotation=new mathMLTree.MathNode("annotation",[new mathMLTree.TextNode(texExpression)]);annotation.setAttribute("encoding","application/x-tex");var semantics=new mathMLTree.MathNode("semantics",[wrapper,annotation]),math=new mathMLTree.MathNode("math",[semantics]);math.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),isDisplayMode&&math.setAttribute("display","block");var wrapperClass=forMathmlOnly?"katex":"katex-mathml";return buildCommon.makeSpan([wrapperClass],[math])}var optionsFromSettings=function optionsFromSettings(settings){return new Options({style:settings.displayMode?Style$1.DISPLAY:Style$1.TEXT,maxSize:settings.maxSize,minRuleThickness:settings.minRuleThickness})},displayWrap=function displayWrap(node,settings){if(settings.displayMode){var classes=["katex-display"];settings.leqno&&classes.push("leqno"),settings.fleqn&&classes.push("fleqn"),node=buildCommon.makeSpan(classes,[node])}return node},stretchyCodePoint={widehat:"^",widecheck:"ˇ",widetilde:"~",utilde:"~",overleftarrow:"←",underleftarrow:"←",xleftarrow:"←",overrightarrow:"→",underrightarrow:"→",xrightarrow:"→",underbrace:"⏟",overbrace:"⏞",overgroup:"⏠",undergroup:"⏡",overleftrightarrow:"↔",underleftrightarrow:"↔",xleftrightarrow:"↔",Overrightarrow:"⇒",xRightarrow:"⇒",overleftharpoon:"↼",xleftharpoonup:"↼",overrightharpoon:"⇀",xrightharpoonup:"⇀",xLeftarrow:"⇐",xLeftrightarrow:"⇔",xhookleftarrow:"↩",xhookrightarrow:"↪",xmapsto:"↦",xrightharpoondown:"⇁",xleftharpoondown:"↽",xrightleftharpoons:"⇌",xleftrightharpoons:"⇋",xtwoheadleftarrow:"↞",xtwoheadrightarrow:"↠",xlongequal:"=",xtofrom:"⇄",xrightleftarrows:"⇄",xrightequilibrium:"⇌",xleftequilibrium:"⇋","\\cdrightarrow":"→","\\cdleftarrow":"←","\\cdlongequal":"="},katexImagesData={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},stretchy_encloseSpan=function encloseSpan(inner,label,topPad,bottomPad,options){var img,totalHeight=inner.height+inner.depth+topPad+bottomPad;if(/fbox|color|angl/.test(label)){if(img=buildCommon.makeSpan(["stretchy",label],[],options),"fbox"===label){var color=options.color&&options.getColor();color&&(img.style.borderColor=color)}}else{var lines=[];/^[bx]cancel$/.test(label)&&lines.push(new LineNode({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(label)&&lines.push(new LineNode({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var svgNode=new SvgNode(lines,{width:"100%",height:makeEm(totalHeight)});img=buildCommon.makeSvgSpan([],[svgNode],options)}return img.height=totalHeight,img.style.height=makeEm(totalHeight),img},stretchy_mathMLnode=function mathMLnode(label){var node=new mathMLTree.MathNode("mo",[new mathMLTree.TextNode(stretchyCodePoint[label.replace(/^\\/,"")])]);return node.setAttribute("stretchy","true"),node},stretchy_svgSpan=function svgSpan(group,options){var{span,minWidth,height}=function buildSvgSpan_(){var viewBoxWidth=4e5,label=group.label.slice(1);if(utils.contains(["widehat","widecheck","widetilde","utilde"],label)){var viewBoxHeight,pathName,_height,numChars=function groupLength(arg){return"ordgroup"===arg.type?arg.body.length:1}(group.base);if(numChars>5)"widehat"===label||"widecheck"===label?(viewBoxHeight=420,viewBoxWidth=2364,_height=.42,pathName=label+"4"):(viewBoxHeight=312,viewBoxWidth=2340,_height=.34,pathName="tilde4");else{var imgIndex=[1,1,2,2,3,3][numChars];"widehat"===label||"widecheck"===label?(viewBoxWidth=[0,1062,2364,2364,2364][imgIndex],viewBoxHeight=[0,239,300,360,420][imgIndex],_height=[0,.24,.3,.3,.36,.42][imgIndex],pathName=label+imgIndex):(viewBoxWidth=[0,600,1033,2339,2340][imgIndex],viewBoxHeight=[0,260,286,306,312][imgIndex],_height=[0,.26,.286,.3,.306,.34][imgIndex],pathName="tilde"+imgIndex)}var path=new PathNode(pathName),svgNode=new SvgNode([path],{width:"100%",height:makeEm(_height),viewBox:"0 0 "+viewBoxWidth+" "+viewBoxHeight,preserveAspectRatio:"none"});return{span:buildCommon.makeSvgSpan([],[svgNode],options),minWidth:0,height:_height}}var widthClasses,aligns,spans=[],data=katexImagesData[label],[paths,_minWidth,_viewBoxHeight]=data,_height2=_viewBoxHeight/1e3,numSvgChildren=paths.length;if(1===numSvgChildren)widthClasses=["hide-tail"],aligns=[data[3]];else if(2===numSvgChildren)widthClasses=["halfarrow-left","halfarrow-right"],aligns=["xMinYMin","xMaxYMin"];else{if(3!==numSvgChildren)throw new Error("Correct katexImagesData or update code here to support\n "+numSvgChildren+" children.");widthClasses=["brace-left","brace-center","brace-right"],aligns=["xMinYMin","xMidYMin","xMaxYMin"]}for(var i=0;i<numSvgChildren;i++){var _path=new PathNode(paths[i]),_svgNode=new SvgNode([_path],{width:"400em",height:makeEm(_height2),viewBox:"0 0 "+viewBoxWidth+" "+_viewBoxHeight,preserveAspectRatio:aligns[i]+" slice"}),_span=buildCommon.makeSvgSpan([widthClasses[i]],[_svgNode],options);if(1===numSvgChildren)return{span:_span,minWidth:_minWidth,height:_height2};_span.style.height=makeEm(_height2),spans.push(_span)}return{span:buildCommon.makeSpan(["stretchy"],spans,options),minWidth:_minWidth,height:_height2}}();return span.height=height,span.style.height=makeEm(height),minWidth>0&&(span.style.minWidth=makeEm(minWidth)),span};function assertNodeType(node,type){if(!node||node.type!==type)throw new Error("Expected node of type "+type+", but got "+(node?"node of type "+node.type:String(node)));return node}function assertSymbolNodeType(node){var typedNode=checkSymbolNodeType(node);if(!typedNode)throw new Error("Expected node of symbol group type, but got "+(node?"node of type "+node.type:String(node)));return typedNode}function checkSymbolNodeType(node){return node&&("atom"===node.type||NON_ATOMS.hasOwnProperty(node.type))?node:null}var htmlBuilder$a=(grp,options)=>{var base,group,supSubGroup;grp&&"supsub"===grp.type?(base=(group=assertNodeType(grp.base,"accent")).base,grp.base=base,supSubGroup=function assertSpan(group){if(group instanceof Span)return group;throw new Error("Expected span<HtmlDomNode> but got "+String(group)+".")}(buildGroup$1(grp,options)),grp.base=group):base=(group=assertNodeType(grp,"accent")).base;var body=buildGroup$1(base,options.havingCrampedStyle()),skew=0;if(group.isShifty&&utils.isCharacterBox(base)){var baseChar=utils.getBaseElem(base);skew=assertSymbolDomNode(buildGroup$1(baseChar,options.havingCrampedStyle())).skew}var accentBody,accentBelow="\\c"===group.label,clearance=accentBelow?body.height+body.depth:Math.min(body.height,options.fontMetrics().xHeight);if(group.isStretchy)accentBody=stretchy_svgSpan(group,options),accentBody=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:body},{type:"elem",elem:accentBody,wrapperClasses:["svg-align"],wrapperStyle:skew>0?{width:"calc(100% - "+makeEm(2*skew)+")",marginLeft:makeEm(2*skew)}:void 0}]},options);else{var accent,width;"\\vec"===group.label?(accent=buildCommon.staticSvg("vec",options),width=buildCommon.svgData.vec[1]):((accent=assertSymbolDomNode(accent=buildCommon.makeOrd({mode:group.mode,text:group.label},options,"textord"))).italic=0,width=accent.width,accentBelow&&(clearance+=accent.depth)),accentBody=buildCommon.makeSpan(["accent-body"],[accent]);var accentFull="\\textcircled"===group.label;accentFull&&(accentBody.classes.push("accent-full"),clearance=body.height);var left=skew;accentFull||(left-=width/2),accentBody.style.left=makeEm(left),"\\textcircled"===group.label&&(accentBody.style.top=".2em"),accentBody=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:body},{type:"kern",size:-clearance},{type:"elem",elem:accentBody}]},options)}var accentWrap=buildCommon.makeSpan(["mord","accent"],[accentBody],options);return supSubGroup?(supSubGroup.children[0]=accentWrap,supSubGroup.height=Math.max(accentWrap.height,supSubGroup.height),supSubGroup.classes[0]="mord",supSubGroup):accentWrap},mathmlBuilder$9=(group,options)=>{var accentNode=group.isStretchy?stretchy_mathMLnode(group.label):new mathMLTree.MathNode("mo",[makeText(group.label,group.mode)]),node=new mathMLTree.MathNode("mover",[buildGroup(group.base,options),accentNode]);return node.setAttribute("accent","true"),node},NON_STRETCHY_ACCENT_REGEX=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((accent=>"\\"+accent)).join("|"));defineFunction({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:(context,args)=>{var base=normalizeArgument(args[0]),isStretchy=!NON_STRETCHY_ACCENT_REGEX.test(context.funcName),isShifty=!isStretchy||"\\widehat"===context.funcName||"\\widetilde"===context.funcName||"\\widecheck"===context.funcName;return{type:"accent",mode:context.parser.mode,label:context.funcName,isStretchy,isShifty,base}},htmlBuilder:htmlBuilder$a,mathmlBuilder:mathmlBuilder$9}),defineFunction({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(context,args)=>{var base=args[0],mode=context.parser.mode;return"math"===mode&&(context.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+context.funcName+" works only in text mode"),mode="text"),{type:"accent",mode,label:context.funcName,isStretchy:!1,isShifty:!0,base}},htmlBuilder:htmlBuilder$a,mathmlBuilder:mathmlBuilder$9}),defineFunction({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(_ref,args)=>{var{parser,funcName}=_ref,base=args[0];return{type:"accentUnder",mode:parser.mode,label:funcName,base}},htmlBuilder:(group,options)=>{var innerGroup=buildGroup$1(group.base,options),accentBody=stretchy_svgSpan(group,options),kern="\\utilde"===group.label?.12:0,vlist=buildCommon.makeVList({positionType:"top",positionData:innerGroup.height,children:[{type:"elem",elem:accentBody,wrapperClasses:["svg-align"]},{type:"kern",size:kern},{type:"elem",elem:innerGroup}]},options);return buildCommon.makeSpan(["mord","accentunder"],[vlist],options)},mathmlBuilder:(group,options)=>{var accentNode=stretchy_mathMLnode(group.label),node=new mathMLTree.MathNode("munder",[buildGroup(group.base,options),accentNode]);return node.setAttribute("accentunder","true"),node}});var paddedNode=group=>{var node=new mathMLTree.MathNode("mpadded",group?[group]:[]);return node.setAttribute("width","+0.6em"),node.setAttribute("lspace","0.3em"),node};defineFunction({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(_ref,args,optArgs){var{parser,funcName}=_ref;return{type:"xArrow",mode:parser.mode,label:funcName,body:args[0],below:optArgs[0]}},htmlBuilder(group,options){var lowerGroup,style=options.style,newOptions=options.havingStyle(style.sup()),upperGroup=buildCommon.wrapFragment(buildGroup$1(group.body,newOptions,options),options),arrowPrefix="\\x"===group.label.slice(0,2)?"x":"cd";upperGroup.classes.push(arrowPrefix+"-arrow-pad"),group.below&&(newOptions=options.havingStyle(style.sub()),(lowerGroup=buildCommon.wrapFragment(buildGroup$1(group.below,newOptions,options),options)).classes.push(arrowPrefix+"-arrow-pad"));var vlist,arrowBody=stretchy_svgSpan(group,options),arrowShift=-options.fontMetrics().axisHeight+.5*arrowBody.height,upperShift=-options.fontMetrics().axisHeight-.5*arrowBody.height-.111;if((upperGroup.depth>.25||"\\xleftequilibrium"===group.label)&&(upperShift-=upperGroup.depth),lowerGroup){var lowerShift=-options.fontMetrics().axisHeight+lowerGroup.height+.5*arrowBody.height+.111;vlist=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:upperGroup,shift:upperShift},{type:"elem",elem:arrowBody,shift:arrowShift},{type:"elem",elem:lowerGroup,shift:lowerShift}]},options)}else vlist=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:upperGroup,shift:upperShift},{type:"elem",elem:arrowBody,shift:arrowShift}]},options);return vlist.children[0].children[0].children[1].classes.push("svg-align"),buildCommon.makeSpan(["mrel","x-arrow"],[vlist],options)},mathmlBuilder(group,options){var node,arrowNode=stretchy_mathMLnode(group.label);if(arrowNode.setAttribute("minsize","x"===group.label.charAt(0)?"1.75em":"3.0em"),group.body){var upperNode=paddedNode(buildGroup(group.body,options));if(group.below){var lowerNode=paddedNode(buildGroup(group.below,options));node=new mathMLTree.MathNode("munderover",[arrowNode,lowerNode,upperNode])}else node=new mathMLTree.MathNode("mover",[arrowNode,upperNode])}else if(group.below){var _lowerNode=paddedNode(buildGroup(group.below,options));node=new mathMLTree.MathNode("munder",[arrowNode,_lowerNode])}else node=paddedNode(),node=new mathMLTree.MathNode("mover",[arrowNode,node]);return node}});var makeSpan=buildCommon.makeSpan;function htmlBuilder$9(group,options){var elements=buildExpression$1(group.body,options,!0);return makeSpan([group.mclass],elements,options)}function mathmlBuilder$8(group,options){var node,inner=buildExpression(group.body,options);return"minner"===group.mclass?node=new mathMLTree.MathNode("mpadded",inner):"mord"===group.mclass?group.isCharacterBox?(node=inner[0]).type="mi":node=new mathMLTree.MathNode("mi",inner):(group.isCharacterBox?(node=inner[0]).type="mo":node=new mathMLTree.MathNode("mo",inner),"mbin"===group.mclass?(node.attributes.lspace="0.22em",node.attributes.rspace="0.22em"):"mpunct"===group.mclass?(node.attributes.lspace="0em",node.attributes.rspace="0.17em"):"mopen"===group.mclass||"mclose"===group.mclass?(node.attributes.lspace="0em",node.attributes.rspace="0em"):"minner"===group.mclass&&(node.attributes.lspace="0.0556em",node.attributes.width="+0.1111em")),node}defineFunction({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(_ref,args){var{parser,funcName}=_ref,body=args[0];return{type:"mclass",mode:parser.mode,mclass:"m"+funcName.slice(5),body:ordargument(body),isCharacterBox:utils.isCharacterBox(body)}},htmlBuilder:htmlBuilder$9,mathmlBuilder:mathmlBuilder$8});var binrelClass=arg=>{var atom="ordgroup"===arg.type&&arg.body.length?arg.body[0]:arg;return"atom"!==atom.type||"bin"!==atom.family&&"rel"!==atom.family?"mord":"m"+atom.family};defineFunction({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(_ref2,args){var{parser}=_ref2;return{type:"mclass",mode:parser.mode,mclass:binrelClass(args[0]),body:ordargument(args[1]),isCharacterBox:utils.isCharacterBox(args[1])}}}),defineFunction({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(_ref3,args){var mclass,{parser,funcName}=_ref3,baseArg=args[1],shiftedArg=args[0];mclass="\\stackrel"!==funcName?binrelClass(baseArg):"mrel";var baseOp={type:"op",mode:baseArg.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:"\\stackrel"!==funcName,body:ordargument(baseArg)},supsub={type:"supsub",mode:shiftedArg.mode,base:baseOp,sup:"\\underset"===funcName?null:shiftedArg,sub:"\\underset"===funcName?shiftedArg:null};return{type:"mclass",mode:parser.mode,mclass,body:[supsub],isCharacterBox:utils.isCharacterBox(supsub)}},htmlBuilder:htmlBuilder$9,mathmlBuilder:mathmlBuilder$8}),defineFunction({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(_ref,args){var{parser}=_ref;return{type:"pmb",mode:parser.mode,mclass:binrelClass(args[0]),body:ordargument(args[0])}},htmlBuilder(group,options){var elements=buildExpression$1(group.body,options,!0),node=buildCommon.makeSpan([group.mclass],elements,options);return node.style.textShadow="0.02em 0.01em 0.04px",node},mathmlBuilder(group,style){var inner=buildExpression(group.body,style),node=new mathMLTree.MathNode("mstyle",inner);return node.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),node}});var cdArrowFunctionName={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},isStartOfArrow=node=>"textord"===node.type&&"@"===node.text;function cdArrow(arrowChar,labels,parser){var funcName=cdArrowFunctionName[arrowChar];switch(funcName){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return parser.callFunction(funcName,[labels[0]],[labels[1]]);case"\\uparrow":case"\\downarrow":var bareArrow={type:"atom",text:funcName,mode:"math",family:"rel"},arrowGroup={type:"ordgroup",mode:"math",body:[parser.callFunction("\\\\cdleft",[labels[0]],[]),parser.callFunction("\\Big",[bareArrow],[]),parser.callFunction("\\\\cdright",[labels[1]],[])]};return parser.callFunction("\\\\cdparent",[arrowGroup],[]);case"\\\\cdlongequal":return parser.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":return parser.callFunction("\\Big",[{type:"textord",text:"\\Vert",mode:"math"}],[]);default:return{type:"textord",text:" ",mode:"math"}}}defineFunction({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(_ref,args){var{parser,funcName}=_ref;return{type:"cdlabel",mode:parser.mode,side:funcName.slice(4),label:args[0]}},htmlBuilder(group,options){var newOptions=options.havingStyle(options.style.sup()),label=buildCommon.wrapFragment(buildGroup$1(group.label,newOptions,options),options);return label.classes.push("cd-label-"+group.side),label.style.bottom=makeEm(.8-label.depth),label.height=0,label.depth=0,label},mathmlBuilder(group,options){var label=new mathMLTree.MathNode("mrow",[buildGroup(group.label,options)]);return(label=new mathMLTree.MathNode("mpadded",[label])).setAttribute("width","0"),"left"===group.side&&label.setAttribute("lspace","-1width"),label.setAttribute("voffset","0.7em"),(label=new mathMLTree.MathNode("mstyle",[label])).setAttribute("displaystyle","false"),label.setAttribute("scriptlevel","1"),label}}),defineFunction({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(_ref2,args){var{parser}=_ref2;return{type:"cdlabelparent",mode:parser.mode,fragment:args[0]}},htmlBuilder(group,options){var parent=buildCommon.wrapFragment(buildGroup$1(group.fragment,options),options);return parent.classes.push("cd-vert-arrow"),parent},mathmlBuilder:(group,options)=>new mathMLTree.MathNode("mrow",[buildGroup(group.fragment,options)])}),defineFunction({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(_ref,args){for(var{parser}=_ref,group=assertNodeType(args[0],"ordgroup").body,number="",i=0;i<group.length;i++){number+=assertNodeType(group[i],"textord").text}var text,code=parseInt(number);if(isNaN(code))throw new ParseError("\\@char has non-numeric argument "+number);if(code<0||code>=1114111)throw new ParseError("\\@char with invalid code point "+number);return code<=65535?text=String.fromCharCode(code):(code-=65536,text=String.fromCharCode(55296+(code>>10),56320+(1023&code))),{type:"textord",mode:parser.mode,text}}});var htmlBuilder$8=(group,options)=>{var elements=buildExpression$1(group.body,options.withColor(group.color),!1);return buildCommon.makeFragment(elements)},mathmlBuilder$7=(group,options)=>{var inner=buildExpression(group.body,options.withColor(group.color)),node=new mathMLTree.MathNode("mstyle",inner);return node.setAttribute("mathcolor",group.color),node};defineFunction({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(_ref,args){var{parser}=_ref,color=assertNodeType(args[0],"color-token").color,body=args[1];return{type:"color",mode:parser.mode,color,body:ordargument(body)}},htmlBuilder:htmlBuilder$8,mathmlBuilder:mathmlBuilder$7}),defineFunction({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(_ref2,args){var{parser,breakOnTokenText}=_ref2,color=assertNodeType(args[0],"color-token").color;parser.gullet.macros.set("\\current@color",color);var body=parser.parseExpression(!0,breakOnTokenText);return{type:"color",mode:parser.mode,color,body}},htmlBuilder:htmlBuilder$8,mathmlBuilder:mathmlBuilder$7}),defineFunction({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(_ref,args,optArgs){var{parser}=_ref,size="["===parser.gullet.future().text?parser.parseSizeGroup(!0):null,newLine=!parser.settings.displayMode||!parser.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:parser.mode,newLine,size:size&&assertNodeType(size,"size").value}},htmlBuilder(group,options){var span=buildCommon.makeSpan(["mspace"],[],options);return group.newLine&&(span.classes.push("newline"),group.size&&(span.style.marginTop=makeEm(calculateSize(group.size,options)))),span},mathmlBuilder(group,options){var node=new mathMLTree.MathNode("mspace");return group.newLine&&(node.setAttribute("linebreak","newline"),group.size&&node.setAttribute("height",makeEm(calculateSize(group.size,options)))),node}});var globalMap={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},checkControlSequence=tok=>{var name=tok.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(name))throw new ParseError("Expected a control sequence",tok);return name},letCommand=(parser,name,tok,global)=>{var macro=parser.gullet.macros.get(tok.text);null==macro&&(tok.noexpand=!0,macro={tokens:[tok],numArgs:0,unexpandable:!parser.gullet.isExpandable(tok.text)}),parser.gullet.macros.set(name,macro,global)};defineFunction({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(_ref){var{parser,funcName}=_ref;parser.consumeSpaces();var token=parser.fetch();if(globalMap[token.text])return"\\global"!==funcName&&"\\\\globallong"!==funcName||(token.text=globalMap[token.text]),assertNodeType(parser.parseFunction(),"internal");throw new ParseError("Invalid token after macro prefix",token)}}),defineFunction({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(_ref2){var{parser,funcName}=_ref2,tok=parser.gullet.popToken(),name=tok.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(name))throw new ParseError("Expected a control sequence",tok);for(var insert,numArgs=0,delimiters=[[]];"{"!==parser.gullet.future().text;)if("#"===(tok=parser.gullet.popToken()).text){if("{"===parser.gullet.future().text){insert=parser.gullet.future(),delimiters[numArgs].push("{");break}if(tok=parser.gullet.popToken(),!/^[1-9]$/.test(tok.text))throw new ParseError('Invalid argument number "'+tok.text+'"');if(parseInt(tok.text)!==numArgs+1)throw new ParseError('Argument number "'+tok.text+'" out of order');numArgs++,delimiters.push([])}else{if("EOF"===tok.text)throw new ParseError("Expected a macro definition");delimiters[numArgs].push(tok.text)}var{tokens}=parser.gullet.consumeArg();return insert&&tokens.unshift(insert),"\\edef"!==funcName&&"\\xdef"!==funcName||(tokens=parser.gullet.expandTokens(tokens)).reverse(),parser.gullet.macros.set(name,{tokens,numArgs,delimiters},funcName===globalMap[funcName]),{type:"internal",mode:parser.mode}}}),defineFunction({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(_ref3){var{parser,funcName}=_ref3,name=checkControlSequence(parser.gullet.popToken());parser.gullet.consumeSpaces();var tok=(parser=>{var tok=parser.gullet.popToken();return"="===tok.text&&" "===(tok=parser.gullet.popToken()).text&&(tok=parser.gullet.popToken()),tok})(parser);return letCommand(parser,name,tok,"\\\\globallet"===funcName),{type:"internal",mode:parser.mode}}}),defineFunction({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(_ref4){var{parser,funcName}=_ref4,name=checkControlSequence(parser.gullet.popToken()),middle=parser.gullet.popToken(),tok=parser.gullet.popToken();return letCommand(parser,name,tok,"\\\\globalfuture"===funcName),parser.gullet.pushToken(tok),parser.gullet.pushToken(middle),{type:"internal",mode:parser.mode}}});var getMetrics=function getMetrics(symbol,font,mode){var metrics=getCharacterMetrics(symbols.math[symbol]&&symbols.math[symbol].replace||symbol,font,mode);if(!metrics)throw new Error("Unsupported symbol "+symbol+" and font size "+font+".");return metrics},styleWrap=function styleWrap(delim,toStyle,options,classes){var newOptions=options.havingBaseStyle(toStyle),span=buildCommon.makeSpan(classes.concat(newOptions.sizingClasses(options)),[delim],options),delimSizeMultiplier=newOptions.sizeMultiplier/options.sizeMultiplier;return span.height*=delimSizeMultiplier,span.depth*=delimSizeMultiplier,span.maxFontSize=newOptions.sizeMultiplier,span},centerSpan=function centerSpan(span,options,style){var newOptions=options.havingBaseStyle(style),shift=(1-options.sizeMultiplier/newOptions.sizeMultiplier)*options.fontMetrics().axisHeight;span.classes.push("delimcenter"),span.style.top=makeEm(shift),span.height-=shift,span.depth+=shift},makeLargeDelim=function makeLargeDelim(delim,size,center,options,mode,classes){var inner=function mathrmSize(value,size,mode,options){return buildCommon.makeSymbol(value,"Size"+size+"-Regular",mode,options)}(delim,size,mode,options),span=styleWrap(buildCommon.makeSpan(["delimsizing","size"+size],[inner],options),Style$1.TEXT,options,classes);return center&¢erSpan(span,options,Style$1.TEXT),span},makeGlyphSpan=function makeGlyphSpan(symbol,font,mode){var sizeClass;return sizeClass="Size1-Regular"===font?"delim-size1":"delim-size4",{type:"elem",elem:buildCommon.makeSpan(["delimsizinginner",sizeClass],[buildCommon.makeSpan([],[buildCommon.makeSymbol(symbol,font,mode)])])}},makeInner=function makeInner(ch,height,options){var width=fontMetricsData["Size4-Regular"][ch.charCodeAt(0)]?fontMetricsData["Size4-Regular"][ch.charCodeAt(0)][4]:fontMetricsData["Size1-Regular"][ch.charCodeAt(0)][4],path=new PathNode("inner",function innerPath(name,height){switch(name){case"⎜":return"M291 0 H417 V"+height+" H291z M291 0 H417 V"+height+" H291z";case"∣":return"M145 0 H188 V"+height+" H145z M145 0 H188 V"+height+" H145z";case"∥":return"M145 0 H188 V"+height+" H145z M145 0 H188 V"+height+" H145zM367 0 H410 V"+height+" H367z M367 0 H410 V"+height+" H367z";case"⎟":return"M457 0 H583 V"+height+" H457z M457 0 H583 V"+height+" H457z";case"⎢":return"M319 0 H403 V"+height+" H319z M319 0 H403 V"+height+" H319z";case"⎥":return"M263 0 H347 V"+height+" H263z M263 0 H347 V"+height+" H263z";case"⎪":return"M384 0 H504 V"+height+" H384z M384 0 H504 V"+height+" H384z";case"⏐":return"M312 0 H355 V"+height+" H312z M312 0 H355 V"+height+" H312z";case"‖":return"M257 0 H300 V"+height+" H257z M257 0 H300 V"+height+" H257zM478 0 H521 V"+height+" H478z M478 0 H521 V"+height+" H478z";default:return""}}(ch,Math.round(1e3*height))),svgNode=new SvgNode([path],{width:makeEm(width),height:makeEm(height),style:"width:"+makeEm(width),viewBox:"0 0 "+1e3*width+" "+Math.round(1e3*height),preserveAspectRatio:"xMinYMin"}),span=buildCommon.makeSvgSpan([],[svgNode],options);return span.height=height,span.style.height=makeEm(height),span.style.width=makeEm(width),{type:"elem",elem:span}},lap={type:"kern",size:-.008},verts=["|","\\lvert","\\rvert","\\vert"],doubleVerts=["\\|","\\lVert","\\rVert","\\Vert"],makeStackedDelim=function makeStackedDelim(delim,heightTotal,center,options,mode,classes){var top,middle,repeat,bottom,svgLabel="",viewBoxWidth=0;top=repeat=bottom=delim,middle=null;var font="Size1-Regular";"\\uparrow"===delim?repeat=bottom="⏐":"\\Uparrow"===delim?repeat=bottom="‖":"\\downarrow"===delim?top=repeat="⏐":"\\Downarrow"===delim?top=repeat="‖":"\\updownarrow"===delim?(top="\\uparrow",repeat="⏐",bottom="\\downarrow"):"\\Updownarrow"===delim?(top="\\Uparrow",repeat="‖",bottom="\\Downarrow"):utils.contains(verts,delim)?(repeat="∣",svgLabel="vert",viewBoxWidth=333):utils.contains(doubleVerts,delim)?(repeat="∥",svgLabel="doublevert",viewBoxWidth=556):"["===delim||"\\lbrack"===delim?(top="⎡",repeat="⎢",bottom="⎣",font="Size4-Regular",svgLabel="lbrack",viewBoxWidth=667):"]"===delim||"\\rbrack"===delim?(top="⎤",repeat="⎥",bottom="⎦",font="Size4-Regular",svgLabel="rbrack",viewBoxWidth=667):"\\lfloor"===delim||"⌊"===delim?(repeat=top="⎢",bottom="⎣",font="Size4-Regular",svgLabel="lfloor",viewBoxWidth=667):"\\lceil"===delim||"⌈"===delim?(top="⎡",repeat=bottom="⎢",font="Size4-Regular",svgLabel="lceil",viewBoxWidth=667):"\\rfloor"===delim||"⌋"===delim?(repeat=top="⎥",bottom="⎦",font="Size4-Regular",svgLabel="rfloor",viewBoxWidth=667):"\\rceil"===delim||"⌉"===delim?(top="⎤",repeat=bottom="⎥",font="Size4-Regular",svgLabel="rceil",viewBoxWidth=667):"("===delim||"\\lparen"===delim?(top="⎛",repeat="⎜",bottom="⎝",font="Size4-Regular",svgLabel="lparen",viewBoxWidth=875):")"===delim||"\\rparen"===delim?(top="⎞",repeat="⎟",bottom="⎠",font="Size4-Regular",svgLabel="rparen",viewBoxWidth=875):"\\{"===delim||"\\lbrace"===delim?(top="⎧",middle="⎨",bottom="⎩",repeat="⎪",font="Size4-Regular"):"\\}"===delim||"\\rbrace"===delim?(top="⎫",middle="⎬",bottom="⎭",repeat="⎪",font="Size4-Regular"):"\\lgroup"===delim||"⟮"===delim?(top="⎧",bottom="⎩",repeat="⎪",font="Size4-Regular"):"\\rgroup"===delim||"⟯"===delim?(top="⎫",bottom="⎭",repeat="⎪",font="Size4-Regular"):"\\lmoustache"===delim||"⎰"===delim?(top="⎧",bottom="⎭",repeat="⎪",font="Size4-Regular"):"\\rmoustache"!==delim&&"⎱"!==delim||(top="⎫",bottom="⎩",repeat="⎪",font="Size4-Regular");var topMetrics=getMetrics(top,font,mode),topHeightTotal=topMetrics.height+topMetrics.depth,repeatMetrics=getMetrics(repeat,font,mode),repeatHeightTotal=repeatMetrics.height+repeatMetrics.depth,bottomMetrics=getMetrics(bottom,font,mode),bottomHeightTotal=bottomMetrics.height+bottomMetrics.depth,middleHeightTotal=0,middleFactor=1;if(null!==middle){var middleMetrics=getMetrics(middle,font,mode);middleHeightTotal=middleMetrics.height+middleMetrics.depth,middleFactor=2}var minHeight=topHeightTotal+bottomHeightTotal+middleHeightTotal,realHeightTotal=minHeight+Math.max(0,Math.ceil((heightTotal-minHeight)/(middleFactor*repeatHeightTotal)))*middleFactor*repeatHeightTotal,axisHeight=options.fontMetrics().axisHeight;center&&(axisHeight*=options.sizeMultiplier);var depth=realHeightTotal/2-axisHeight,stack=[];if(svgLabel.length>0){var midHeight=realHeightTotal-topHeightTotal-bottomHeightTotal,viewBoxHeight=Math.round(1e3*realHeightTotal),pathStr=function tallDelim(label,midHeight){switch(label){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+midHeight+" v1759 h347 v-84\nH403z M403 1759 V0 H319 V1759 v"+midHeight+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+midHeight+" v1759 H0 v84 H347z\nM347 1759 V0 H263 V1759 v"+midHeight+" v1759 h84z";case"vert":return"M145 15 v585 v"+midHeight+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-midHeight+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v"+midHeight+" v585 h43z";case"doublevert":return"M145 15 v585 v"+midHeight+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-midHeight+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v"+midHeight+" v585 h43z\nM367 15 v585 v"+midHeight+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-midHeight+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M410 15 H367 v585 v"+midHeight+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+midHeight+" v1715 h263 v84 H319z\nMM319 602 V0 H403 V602 v"+midHeight+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+midHeight+" v1799 H0 v-84 H319z\nMM319 602 V0 H403 V602 v"+midHeight+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+midHeight+" v602 h84z\nM403 1759 V0 H319 V1759 v"+midHeight+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+midHeight+" v602 h84z\nM347 1759 V0 h-84 V1759 v"+midHeight+" v602 h84z";case"lparen":return"M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1\nc-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,\n-36,557 l0,"+(midHeight+84)+"c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,\n949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9\nc0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,\n-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189\nl0,-"+(midHeight+92)+"c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,\n-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z";case"rparen":return"M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,\n63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5\nc11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,"+(midHeight+9)+"\nc-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664\nc-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11\nc0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17\nc242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558\nl0,-"+(midHeight+144)+"c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,\n-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z";default:throw new Error("Unknown stretchy delimiter.")}}(svgLabel,Math.round(1e3*midHeight)),path=new PathNode(svgLabel,pathStr),width=(viewBoxWidth/1e3).toFixed(3)+"em",height=(viewBoxHeight/1e3).toFixed(3)+"em",svg=new SvgNode([path],{width,height,viewBox:"0 0 "+viewBoxWidth+" "+viewBoxHeight}),wrapper=buildCommon.makeSvgSpan([],[svg],options);wrapper.height=viewBoxHeight/1e3,wrapper.style.width=width,wrapper.style.height=height,stack.push({type:"elem",elem:wrapper})}else{if(stack.push(makeGlyphSpan(bottom,font,mode)),stack.push(lap),null===middle){var innerHeight=realHeightTotal-topHeightTotal-bottomHeightTotal+.016;stack.push(makeInner(repeat,innerHeight,options))}else{var _innerHeight=(realHeightTotal-topHeightTotal-bottomHeightTotal-middleHeightTotal)/2+.016;stack.push(makeInner(repeat,_innerHeight,options)),stack.push(lap),stack.push(makeGlyphSpan(middle,font,mode)),stack.push(lap),stack.push(makeInner(repeat,_innerHeight,options))}stack.push(lap),stack.push(makeGlyphSpan(top,font,mode))}var newOptions=options.havingBaseStyle(Style$1.TEXT),inner=buildCommon.makeVList({positionType:"bottom",positionData:depth,children:stack},newOptions);return styleWrap(buildCommon.makeSpan(["delimsizing","mult"],[inner],newOptions),Style$1.TEXT,options,classes)},sqrtSvg=function sqrtSvg(sqrtName,height,viewBoxHeight,extraVinculum,options){var path=function sqrtPath(size,extraVinculum,viewBoxHeight){extraVinculum*=1e3;var path="";switch(size){case"sqrtMain":path=function sqrtMain(extraVinculum,hLinePad){return"M95,"+(622+extraVinculum+hLinePad)+"\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl"+extraVinculum/2.075+" -"+extraVinculum+"\nc5.3,-9.3,12,-14,20,-14\nH400000v"+(40+extraVinculum)+"H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM"+(834+extraVinculum)+" "+hLinePad+"h400000v"+(40+extraVinculum)+"h-400000z"}(extraVinculum,80);break;case"sqrtSize1":path=function sqrtSize1(extraVinculum,hLinePad){return"M263,"+(601+extraVinculum+hLinePad)+"c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl"+extraVinculum/2.084+" -"+extraVinculum+"\nc4.7,-7.3,11,-11,19,-11\nH40000v"+(40+extraVinculum)+"H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM"+(1001+extraVinculum)+" "+hLinePad+"h400000v"+(40+extraVinculum)+"h-400000z"}(extraVinculum,80);break;case"sqrtSize2":path=function sqrtSize2(extraVinculum,hLinePad){return"M983 "+(10+extraVinculum+hLinePad)+"\nl"+extraVinculum/3.13+" -"+extraVinculum+"\nc4,-6.7,10,-10,18,-10 H400000v"+(40+extraVinculum)+"\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM"+(1001+extraVinculum)+" "+hLinePad+"h400000v"+(40+extraVinculum)+"h-400000z"}(extraVinculum,80);break;case"sqrtSize3":path=function sqrtSize3(extraVinculum,hLinePad){return"M424,"+(2398+extraVinculum+hLinePad)+"\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl"+extraVinculum/4.223+" -"+extraVinculum+"c4,-6.7,10,-10,18,-10 H400000\nv"+(40+extraVinculum)+"H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M"+(1001+extraVinculum)+" "+hLinePad+"\nh400000v"+(40+extraVinculum)+"h-400000z"}(extraVinculum,80);break;case"sqrtSize4":path=function sqrtSize4(extraVinculum,hLinePad){return"M473,"+(2713+extraVinculum+hLinePad)+"\nc339.3,-1799.3,509.3,-2700,510,-2702 l"+extraVinculum/5.298+" -"+extraVinculum+"\nc3.3,-7.3,9.3,-11,18,-11 H400000v"+(40+extraVinculum)+"H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM"+(1001+extraVinculum)+" "+hLinePad+"h400000v"+(40+extraVinculum)+"H1017.7z"}(extraVinculum,80);break;case"sqrtTall":path=function sqrtTall(extraVinculum,hLinePad,viewBoxHeight){return"M702 "+(extraVinculum+hLinePad)+"H400000"+(40+extraVinculum)+"\nH742v"+(viewBoxHeight-54-hLinePad-extraVinculum)+"l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 "+hLinePad+"H400000v"+(40+extraVinculum)+"H742z"}(extraVinculum,80,viewBoxHeight)}return path}(sqrtName,extraVinculum,viewBoxHeight),pathNode=new PathNode(sqrtName,path),svg=new SvgNode([pathNode],{width:"400em",height:makeEm(height),viewBox:"0 0 400000 "+viewBoxHeight,preserveAspectRatio:"xMinYMin slice"});return buildCommon.makeSvgSpan(["hide-tail"],[svg],options)},stackLargeDelimiters=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"],stackAlwaysDelimiters=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"],stackNeverDelimiters=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],sizeToMaxHeight=[0,1.2,1.8,2.4,3],stackNeverDelimiterSequence=[{type:"small",style:Style$1.SCRIPTSCRIPT},{type:"small",style:Style$1.SCRIPT},{type:"small",style:Style$1.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],stackAlwaysDelimiterSequence=[{type:"small",style:Style$1.SCRIPTSCRIPT},{type:"small",style:Style$1.SCRIPT},{type:"small",style:Style$1.TEXT},{type:"stack"}],stackLargeDelimiterSequence=[{type:"small",style:Style$1.SCRIPTSCRIPT},{type:"small",style:Style$1.SCRIPT},{type:"small",style:Style$1.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],delimTypeToFont=function delimTypeToFont(type){if("small"===type.type)return"Main-Regular";if("large"===type.type)return"Size"+type.size+"-Regular";if("stack"===type.type)return"Size4-Regular";throw new Error("Add support for delim type '"+type.type+"' here.")},traverseSequence=function traverseSequence(delim,height,sequence,options){for(var i=Math.min(2,3-options.style.size);i<sequence.length&&"stack"!==sequence[i].type;i++){var metrics=getMetrics(delim,delimTypeToFont(sequence[i]),"math"),heightDepth=metrics.height+metrics.depth;if("small"===sequence[i].type&&(heightDepth*=options.havingBaseStyle(sequence[i].style).sizeMultiplier),heightDepth>height)return sequence[i]}return sequence[sequence.length-1]},makeCustomSizedDelim=function makeCustomSizedDelim(delim,height,center,options,mode,classes){var sequence;"<"===delim||"\\lt"===delim||"⟨"===delim?delim="\\langle":">"!==delim&&"\\gt"!==delim&&"⟩"!==delim||(delim="\\rangle"),sequence=utils.contains(stackNeverDelimiters,delim)?stackNeverDelimiterSequence:utils.contains(stackLargeDelimiters,delim)?stackLargeDelimiterSequence:stackAlwaysDelimiterSequence;var delimType=traverseSequence(delim,height,sequence,options);return"small"===delimType.type?function makeSmallDelim(delim,style,center,options,mode,classes){var text=buildCommon.makeSymbol(delim,"Main-Regular",mode,options),span=styleWrap(text,style,options,classes);return center&¢erSpan(span,options,style),span}(delim,delimType.style,center,options,mode,classes):"large"===delimType.type?makeLargeDelim(delim,delimType.size,center,options,mode,classes):makeStackedDelim(delim,height,center,options,mode,classes)},delimiter={sqrtImage:function makeSqrtImage(height,options){var span,advanceWidth,newOptions=options.havingBaseSizing(),delim=traverseSequence("\\surd",height*newOptions.sizeMultiplier,stackLargeDelimiterSequence,newOptions),sizeMultiplier=newOptions.sizeMultiplier,extraVinculum=Math.max(0,options.minRuleThickness-options.fontMetrics().sqrtRuleThickness),spanHeight=0,texHeight=0,viewBoxHeight=0;return"small"===delim.type?(height<1?sizeMultiplier=1:height<1.4&&(sizeMultiplier=.7),texHeight=(1+extraVinculum)/sizeMultiplier,(span=sqrtSvg("sqrtMain",spanHeight=(1+extraVinculum+.08)/sizeMultiplier,viewBoxHeight=1e3+1e3*extraVinculum+80,extraVinculum,options)).style.minWidth="0.853em",advanceWidth=.833/sizeMultiplier):"large"===delim.type?(viewBoxHeight=1080*sizeToMaxHeight[delim.size],texHeight=(sizeToMaxHeight[delim.size]+extraVinculum)/sizeMultiplier,spanHeight=(sizeToMaxHeight[delim.size]+extraVinculum+.08)/sizeMultiplier,(span=sqrtSvg("sqrtSize"+delim.size,spanHeight,viewBoxHeight,extraVinculum,options)).style.minWidth="1.02em",advanceWidth=1/sizeMultiplier):(spanHeight=height+extraVinculum+.08,texHeight=height+extraVinculum,viewBoxHeight=Math.floor(1e3*height+extraVinculum)+80,(span=sqrtSvg("sqrtTall",spanHeight,viewBoxHeight,extraVinculum,options)).style.minWidth="0.742em",advanceWidth=1.056),span.height=texHeight,span.style.height=makeEm(spanHeight),{span,advanceWidth,ruleWidth:(options.fontMetrics().sqrtRuleThickness+extraVinculum)*sizeMultiplier}},sizedDelim:function makeSizedDelim(delim,size,options,mode,classes){if("<"===delim||"\\lt"===delim||"⟨"===delim?delim="\\langle":">"!==delim&&"\\gt"!==delim&&"⟩"!==delim||(delim="\\rangle"),utils.contains(stackLargeDelimiters,delim)||utils.contains(stackNeverDelimiters,delim))return makeLargeDelim(delim,size,!1,options,mode,classes);if(utils.contains(stackAlwaysDelimiters,delim))return makeStackedDelim(delim,sizeToMaxHeight[size],!1,options,mode,classes);throw new ParseError("Illegal delimiter: '"+delim+"'")},sizeToMaxHeight,customSizedDelim:makeCustomSizedDelim,leftRightDelim:function makeLeftRightDelim(delim,height,depth,options,mode,classes){var axisHeight=options.fontMetrics().axisHeight*options.sizeMultiplier,delimiterExtend=5/options.fontMetrics().ptPerEm,maxDistFromAxis=Math.max(height-axisHeight,depth+axisHeight),totalHeight=Math.max(maxDistFromAxis/500*901,2*maxDistFromAxis-delimiterExtend);return makeCustomSizedDelim(delim,totalHeight,!0,options,mode,classes)}},delimiterSizes={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},delimiters=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","<",">","\\langle","⟨","\\rangle","⟩","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];function checkDelimiter(delim,context){var symDelim=checkSymbolNodeType(delim);if(symDelim&&utils.contains(delimiters,symDelim.text))return symDelim;throw new ParseError(symDelim?"Invalid delimiter '"+symDelim.text+"' after '"+context.funcName+"'":"Invalid delimiter type '"+delim.type+"'",delim)}function assertParsed(group){if(!group.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}defineFunction({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:(context,args)=>{var delim=checkDelimiter(args[0],context);return{type:"delimsizing",mode:context.parser.mode,size:delimiterSizes[context.funcName].size,mclass:delimiterSizes[context.funcName].mclass,delim:delim.text}},htmlBuilder:(group,options)=>"."===group.delim?buildCommon.makeSpan([group.mclass]):delimiter.sizedDelim(group.delim,group.size,options,group.mode,[group.mclass]),mathmlBuilder:group=>{var children=[];"."!==group.delim&&children.push(makeText(group.delim,group.mode));var node=new mathMLTree.MathNode("mo",children);"mopen"===group.mclass||"mclose"===group.mclass?node.setAttribute("fence","true"):node.setAttribute("fence","false"),node.setAttribute("stretchy","true");var size=makeEm(delimiter.sizeToMaxHeight[group.size]);return node.setAttribute("minsize",size),node.setAttribute("maxsize",size),node}}),defineFunction({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(context,args)=>{var color=context.parser.gullet.macros.get("\\current@color");if(color&&"string"!=typeof color)throw new ParseError("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:context.parser.mode,delim:checkDelimiter(args[0],context).text,color}}}),defineFunction({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(context,args)=>{var delim=checkDelimiter(args[0],context),parser=context.parser;++parser.leftrightDepth;var body=parser.parseExpression(!1);--parser.leftrightDepth,parser.expect("\\right",!1);var right=assertNodeType(parser.parseFunction(),"leftright-right");return{type:"leftright",mode:parser.mode,body,left:delim.text,right:right.delim,rightColor:right.color}},htmlBuilder:(group,options)=>{assertParsed(group);for(var leftDelim,rightDelim,inner=buildExpression$1(group.body,options,!0,["mopen","mclose"]),innerHeight=0,innerDepth=0,hadMiddle=!1,i=0;i<inner.length;i++)inner[i].isMiddle?hadMiddle=!0:(innerHeight=Math.max(inner[i].height,innerHeight),innerDepth=Math.max(inner[i].depth,innerDepth));if(innerHeight*=options.sizeMultiplier,innerDepth*=options.sizeMultiplier,leftDelim="."===group.left?makeNullDelimiter(options,["mopen"]):delimiter.leftRightDelim(group.left,innerHeight,innerDepth,options,group.mode,["mopen"]),inner.unshift(leftDelim),hadMiddle)for(var _i=1;_i<inner.length;_i++){var isMiddle=inner[_i].isMiddle;isMiddle&&(inner[_i]=delimiter.leftRightDelim(isMiddle.delim,innerHeight,innerDepth,isMiddle.options,group.mode,[]))}if("."===group.right)rightDelim=makeNullDelimiter(options,["mclose"]);else{var colorOptions=group.rightColor?options.withColor(group.rightColor):options;rightDelim=delimiter.leftRightDelim(group.right,innerHeight,innerDepth,colorOptions,group.mode,["mclose"])}return inner.push(rightDelim),buildCommon.makeSpan(["minner"],inner,options)},mathmlBuilder:(group,options)=>{assertParsed(group);var inner=buildExpression(group.body,options);if("."!==group.left){var leftNode=new mathMLTree.MathNode("mo",[makeText(group.left,group.mode)]);leftNode.setAttribute("fence","true"),inner.unshift(leftNode)}if("."!==group.right){var rightNode=new mathMLTree.MathNode("mo",[makeText(group.right,group.mode)]);rightNode.setAttribute("fence","true"),group.rightColor&&rightNode.setAttribute("mathcolor",group.rightColor),inner.push(rightNode)}return makeRow(inner)}}),defineFunction({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(context,args)=>{var delim=checkDelimiter(args[0],context);if(!context.parser.leftrightDepth)throw new ParseError("\\middle without preceding \\left",delim);return{type:"middle",mode:context.parser.mode,delim:delim.text}},htmlBuilder:(group,options)=>{var middleDelim;if("."===group.delim)middleDelim=makeNullDelimiter(options,[]);else{middleDelim=delimiter.sizedDelim(group.delim,1,options,group.mode,[]);var isMiddle={delim:group.delim,options};middleDelim.isMiddle=isMiddle}return middleDelim},mathmlBuilder:(group,options)=>{var textNode="\\vert"===group.delim||"|"===group.delim?makeText("|","text"):makeText(group.delim,group.mode),middleNode=new mathMLTree.MathNode("mo",[textNode]);return middleNode.setAttribute("fence","true"),middleNode.setAttribute("lspace","0.05em"),middleNode.setAttribute("rspace","0.05em"),middleNode}});var htmlBuilder$7=(group,options)=>{var img,vlist,inner=buildCommon.wrapFragment(buildGroup$1(group.body,options),options),label=group.label.slice(1),scale=options.sizeMultiplier,imgShift=0,isSingleChar=utils.isCharacterBox(group.body);if("sout"===label)(img=buildCommon.makeSpan(["stretchy","sout"])).height=options.fontMetrics().defaultRuleThickness/scale,imgShift=-.5*options.fontMetrics().xHeight;else if("phase"===label){var lineWeight=calculateSize({number:.6,unit:"pt"},options),clearance=calculateSize({number:.35,unit:"ex"},options);scale/=options.havingBaseSizing().sizeMultiplier;var angleHeight=inner.height+inner.depth+lineWeight+clearance;inner.style.paddingLeft=makeEm(angleHeight/2+lineWeight);var viewBoxHeight=Math.floor(1e3*angleHeight*scale),path=function phasePath(y){return"M400000 "+y+" H0 L"+y/2+" 0 l65 45 L145 "+(y-80)+" H400000z"}(viewBoxHeight),svgNode=new SvgNode([new PathNode("phase",path)],{width:"400em",height:makeEm(viewBoxHeight/1e3),viewBox:"0 0 400000 "+viewBoxHeight,preserveAspectRatio:"xMinYMin slice"});(img=buildCommon.makeSvgSpan(["hide-tail"],[svgNode],options)).style.height=makeEm(angleHeight),imgShift=inner.depth+lineWeight+clearance}else{/cancel/.test(label)?isSingleChar||inner.classes.push("cancel-pad"):"angl"===label?inner.classes.push("anglpad"):inner.classes.push("boxpad");var topPad=0,bottomPad=0,ruleThickness=0;/box/.test(label)?(ruleThickness=Math.max(options.fontMetrics().fboxrule,options.minRuleThickness),bottomPad=topPad=options.fontMetrics().fboxsep+("colorbox"===label?0:ruleThickness)):"angl"===label?(topPad=4*(ruleThickness=Math.max(options.fontMetrics().defaultRuleThickness,options.minRuleThickness)),bottomPad=Math.max(0,.25-inner.depth)):bottomPad=topPad=isSingleChar?.2:0,img=stretchy_encloseSpan(inner,label,topPad,bottomPad,options),/fbox|boxed|fcolorbox/.test(label)?(img.style.borderStyle="solid",img.style.borderWidth=makeEm(ruleThickness)):"angl"===label&&.049!==ruleThickness&&(img.style.borderTopWidth=makeEm(ruleThickness),img.style.borderRightWidth=makeEm(ruleThickness)),imgShift=inner.depth+bottomPad,group.backgroundColor&&(img.style.backgroundColor=group.backgroundColor,group.borderColor&&(img.style.borderColor=group.borderColor))}if(group.backgroundColor)vlist=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:img,shift:imgShift},{type:"elem",elem:inner,shift:0}]},options);else{var classes=/cancel|phase/.test(label)?["svg-align"]:[];vlist=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:inner,shift:0},{type:"elem",elem:img,shift:imgShift,wrapperClasses:classes}]},options)}return/cancel/.test(label)&&(vlist.height=inner.height,vlist.depth=inner.depth),/cancel/.test(label)&&!isSingleChar?buildCommon.makeSpan(["mord","cancel-lap"],[vlist],options):buildCommon.makeSpan(["mord"],[vlist],options)},mathmlBuilder$6=(group,options)=>{var fboxsep=0,node=new mathMLTree.MathNode(group.label.indexOf("colorbox")>-1?"mpadded":"menclose",[buildGroup(group.body,options)]);switch(group.label){case"\\cancel":node.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":node.setAttribute("notation","downdiagonalstrike");break;case"\\phase":node.setAttribute("notation","phasorangle");break;case"\\sout":node.setAttribute("notation","horizontalstrike");break;case"\\fbox":node.setAttribute("notation","box");break;case"\\angl":node.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(fboxsep=options.fontMetrics().fboxsep*options.fontMetrics().ptPerEm,node.setAttribute("width","+"+2*fboxsep+"pt"),node.setAttribute("height","+"+2*fboxsep+"pt"),node.setAttribute("lspace",fboxsep+"pt"),node.setAttribute("voffset",fboxsep+"pt"),"\\fcolorbox"===group.label){var thk=Math.max(options.fontMetrics().fboxrule,options.minRuleThickness);node.setAttribute("style","border: "+thk+"em solid "+String(group.borderColor))}break;case"\\xcancel":node.setAttribute("notation","updiagonalstrike downdiagonalstrike")}return group.backgroundColor&&node.setAttribute("mathbackground",group.backgroundColor),node};defineFunction({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(_ref,args,optArgs){var{parser,funcName}=_ref,color=assertNodeType(args[0],"color-token").color,body=args[1];return{type:"enclose",mode:parser.mode,label:funcName,backgroundColor:color,body}},htmlBuilder:htmlBuilder$7,mathmlBuilder:mathmlBuilder$6}),defineFunction({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(_ref2,args,optArgs){var{parser,funcName}=_ref2,borderColor=assertNodeType(args[0],"color-token").color,backgroundColor=assertNodeType(args[1],"color-token").color,body=args[2];return{type:"enclose",mode:parser.mode,label:funcName,backgroundColor,borderColor,body}},htmlBuilder:htmlBuilder$7,mathmlBuilder:mathmlBuilder$6}),defineFunction({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(_ref3,args){var{parser}=_ref3;return{type:"enclose",mode:parser.mode,label:"\\fbox",body:args[0]}}}),defineFunction({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(_ref4,args){var{parser,funcName}=_ref4,body=args[0];return{type:"enclose",mode:parser.mode,label:funcName,body}},htmlBuilder:htmlBuilder$7,mathmlBuilder:mathmlBuilder$6}),defineFunction({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(_ref5,args){var{parser}=_ref5;return{type:"enclose",mode:parser.mode,label:"\\angl",body:args[0]}}});var _environments={};function defineEnvironment(_ref){for(var{type,names,props,handler,htmlBuilder,mathmlBuilder}=_ref,data={type,numArgs:props.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler},i=0;i<names.length;++i)_environments[names[i]]=data;htmlBuilder&&(_htmlGroupBuilders[type]=htmlBuilder),mathmlBuilder&&(_mathmlGroupBuilders[type]=mathmlBuilder)}var _macros={};function defineMacro(name,body){_macros[name]=body}function getHLines(parser){var hlineInfo=[];parser.consumeSpaces();var nxt=parser.fetch().text;for("\\relax"===nxt&&(parser.consume(),parser.consumeSpaces(),nxt=parser.fetch().text);"\\hline"===nxt||"\\hdashline"===nxt;)parser.consume(),hlineInfo.push("\\hdashline"===nxt),parser.consumeSpaces(),nxt=parser.fetch().text;return hlineInfo}var validateAmsEnvironmentContext=context=>{if(!context.parser.settings.displayMode)throw new ParseError("{"+context.envName+"} can be used only in display mode.")};function getAutoTag(name){if(-1===name.indexOf("ed"))return-1===name.indexOf("*")}function parseArray(parser,_ref,style){var{hskipBeforeAndAfter,addJot,cols,arraystretch,colSeparationType,autoTag,singleRow,emptySingleRow,maxNumCols,leqno}=_ref;if(parser.gullet.beginGroup(),singleRow||parser.gullet.macros.set("\\cr","\\\\\\relax"),!arraystretch){var stretch=parser.gullet.expandMacroAsText("\\arraystretch");if(null==stretch)arraystretch=1;else if(!(arraystretch=parseFloat(stretch))||arraystretch<0)throw new ParseError("Invalid \\arraystretch: "+stretch)}parser.gullet.beginGroup();var row=[],body=[row],rowGaps=[],hLinesBeforeRow=[],tags=null!=autoTag?[]:void 0;function beginRow(){autoTag&&parser.gullet.macros.set("\\@eqnsw","1",!0)}function endRow(){tags&&(parser.gullet.macros.get("\\df@tag")?(tags.push(parser.subparse([new Token("\\df@tag")])),parser.gullet.macros.set("\\df@tag",void 0,!0)):tags.push(Boolean(autoTag)&&"1"===parser.gullet.macros.get("\\@eqnsw")))}for(beginRow(),hLinesBeforeRow.push(getHLines(parser));;){var cell=parser.parseExpression(!1,singleRow?"\\end":"\\\\");parser.gullet.endGroup(),parser.gullet.beginGroup(),cell={type:"ordgroup",mode:parser.mode,body:cell},style&&(cell={type:"styling",mode:parser.mode,style,body:[cell]}),row.push(cell);var next=parser.fetch().text;if("&"===next){if(maxNumCols&&row.length===maxNumCols){if(singleRow||colSeparationType)throw new ParseError("Too many tab characters: &",parser.nextToken);parser.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}parser.consume()}else{if("\\end"===next){endRow(),1===row.length&&"styling"===cell.type&&0===cell.body[0].body.length&&(body.length>1||!emptySingleRow)&&body.pop(),hLinesBeforeRow.length<body.length+1&&hLinesBeforeRow.push([]);break}if("\\\\"!==next)throw new ParseError("Expected & or \\\\ or \\cr or \\end",parser.nextToken);parser.consume();var size=void 0;" "!==parser.gullet.future().text&&(size=parser.parseSizeGroup(!0)),rowGaps.push(size?size.value:null),endRow(),hLinesBeforeRow.push(getHLines(parser)),row=[],body.push(row),beginRow()}}return parser.gullet.endGroup(),parser.gullet.endGroup(),{type:"array",mode:parser.mode,addJot,arraystretch,body,cols,rowGaps,hskipBeforeAndAfter,hLinesBeforeRow,colSeparationType,tags,leqno}}function dCellStyle(envName){return"d"===envName.slice(0,1)?"display":"text"}var htmlBuilder$6=function htmlBuilder(group,options){var r,c,nr=group.body.length,hLinesBeforeRow=group.hLinesBeforeRow,nc=0,body=new Array(nr),hlines=[],ruleThickness=Math.max(options.fontMetrics().arrayRuleWidth,options.minRuleThickness),pt=1/options.fontMetrics().ptPerEm,arraycolsep=5*pt;group.colSeparationType&&"small"===group.colSeparationType&&(arraycolsep=options.havingStyle(Style$1.SCRIPT).sizeMultiplier/options.sizeMultiplier*.2778);var baselineskip="CD"===group.colSeparationType?calculateSize({number:3,unit:"ex"},options):12*pt,jot=3*pt,arrayskip=group.arraystretch*baselineskip,arstrutHeight=.7*arrayskip,arstrutDepth=.3*arrayskip,totalHeight=0;function setHLinePos(hlinesInGap){for(var i=0;i<hlinesInGap.length;++i)i>0&&(totalHeight+=.25),hlines.push({pos:totalHeight,isDashed:hlinesInGap[i]})}for(setHLinePos(hLinesBeforeRow[0]),r=0;r<group.body.length;++r){var inrow=group.body[r],height=arstrutHeight,depth=arstrutDepth;nc<inrow.length&&(nc=inrow.length);var outrow=new Array(inrow.length);for(c=0;c<inrow.length;++c){var elt=buildGroup$1(inrow[c],options);depth<elt.depth&&(depth=elt.depth),height<elt.height&&(height=elt.height),outrow[c]=elt}var rowGap=group.rowGaps[r],gap=0;rowGap&&(gap=calculateSize(rowGap,options))>0&&(depth<(gap+=arstrutDepth)&&(depth=gap),gap=0),group.addJot&&(depth+=jot),outrow.height=height,outrow.depth=depth,totalHeight+=height,outrow.pos=totalHeight,totalHeight+=depth+gap,body[r]=outrow,setHLinePos(hLinesBeforeRow[r+1])}var colSep,colDescrNum,offset=totalHeight/2+options.fontMetrics().axisHeight,colDescriptions=group.cols||[],cols=[],tagSpans=[];if(group.tags&&group.tags.some((tag=>tag)))for(r=0;r<nr;++r){var rw=body[r],shift=rw.pos-offset,tag=group.tags[r],tagSpan=void 0;(tagSpan=!0===tag?buildCommon.makeSpan(["eqn-num"],[],options):!1===tag?buildCommon.makeSpan([],[],options):buildCommon.makeSpan([],buildExpression$1(tag,options,!0),options)).depth=rw.depth,tagSpan.height=rw.height,tagSpans.push({type:"elem",elem:tagSpan,shift})}for(c=0,colDescrNum=0;c<nc||colDescrNum<colDescriptions.length;++c,++colDescrNum){for(var colDescr=colDescriptions[colDescrNum]||{},firstSeparator=!0;"separator"===colDescr.type;){if(firstSeparator||((colSep=buildCommon.makeSpan(["arraycolsep"],[])).style.width=makeEm(options.fontMetrics().doubleRuleSep),cols.push(colSep)),"|"!==colDescr.separator&&":"!==colDescr.separator)throw new ParseError("Invalid separator type: "+colDescr.separator);var lineType="|"===colDescr.separator?"solid":"dashed",separator=buildCommon.makeSpan(["vertical-separator"],[],options);separator.style.height=makeEm(totalHeight),separator.style.borderRightWidth=makeEm(ruleThickness),separator.style.borderRightStyle=lineType,separator.style.margin="0 "+makeEm(-ruleThickness/2);var _shift=totalHeight-offset;_shift&&(separator.style.verticalAlign=makeEm(-_shift)),cols.push(separator),colDescr=colDescriptions[++colDescrNum]||{},firstSeparator=!1}if(!(c>=nc)){var sepwidth=void 0;(c>0||group.hskipBeforeAndAfter)&&0!==(sepwidth=utils.deflt(colDescr.pregap,arraycolsep))&&((colSep=buildCommon.makeSpan(["arraycolsep"],[])).style.width=makeEm(sepwidth),cols.push(colSep));var col=[];for(r=0;r<nr;++r){var row=body[r],elem=row[c];if(elem){var _shift2=row.pos-offset;elem.depth=row.depth,elem.height=row.height,col.push({type:"elem",elem,shift:_shift2})}}col=buildCommon.makeVList({positionType:"individualShift",children:col},options),col=buildCommon.makeSpan(["col-align-"+(colDescr.align||"c")],[col]),cols.push(col),(c<nc-1||group.hskipBeforeAndAfter)&&0!==(sepwidth=utils.deflt(colDescr.postgap,arraycolsep))&&((colSep=buildCommon.makeSpan(["arraycolsep"],[])).style.width=makeEm(sepwidth),cols.push(colSep))}}if(body=buildCommon.makeSpan(["mtable"],cols),hlines.length>0){for(var line=buildCommon.makeLineSpan("hline",options,ruleThickness),dashes=buildCommon.makeLineSpan("hdashline",options,ruleThickness),vListElems=[{type:"elem",elem:body,shift:0}];hlines.length>0;){var hline=hlines.pop(),lineShift=hline.pos-offset;hline.isDashed?vListElems.push({type:"elem",elem:dashes,shift:lineShift}):vListElems.push({type:"elem",elem:line,shift:lineShift})}body=buildCommon.makeVList({positionType:"individualShift",children:vListElems},options)}if(0===tagSpans.length)return buildCommon.makeSpan(["mord"],[body],options);var eqnNumCol=buildCommon.makeVList({positionType:"individualShift",children:tagSpans},options);return eqnNumCol=buildCommon.makeSpan(["tag"],[eqnNumCol],options),buildCommon.makeFragment([body,eqnNumCol])},alignMap={c:"center ",l:"left ",r:"right "},mathmlBuilder$5=function mathmlBuilder(group,options){for(var tbl=[],glue=new mathMLTree.MathNode("mtd",[],["mtr-glue"]),tag=new mathMLTree.MathNode("mtd",[],["mml-eqn-num"]),i=0;i<group.body.length;i++){for(var rw=group.body[i],row=[],j=0;j<rw.length;j++)row.push(new mathMLTree.MathNode("mtd",[buildGroup(rw[j],options)]));group.tags&&group.tags[i]&&(row.unshift(glue),row.push(glue),group.leqno?row.unshift(tag):row.push(tag)),tbl.push(new mathMLTree.MathNode("mtr",row))}var table=new mathMLTree.MathNode("mtable",tbl),gap=.5===group.arraystretch?.1:.16+group.arraystretch-1+(group.addJot?.09:0);table.setAttribute("rowspacing",makeEm(gap));var menclose="",align="";if(group.cols&&group.cols.length>0){var cols=group.cols,columnLines="",prevTypeWasAlign=!1,iStart=0,iEnd=cols.length;"separator"===cols[0].type&&(menclose+="top ",iStart=1),"separator"===cols[cols.length-1].type&&(menclose+="bottom ",iEnd-=1);for(var _i=iStart;_i<iEnd;_i++)"align"===cols[_i].type?(align+=alignMap[cols[_i].align],prevTypeWasAlign&&(columnLines+="none "),prevTypeWasAlign=!0):"separator"===cols[_i].type&&prevTypeWasAlign&&(columnLines+="|"===cols[_i].separator?"solid ":"dashed ",prevTypeWasAlign=!1);table.setAttribute("columnalign",align.trim()),/[sd]/.test(columnLines)&&table.setAttribute("columnlines",columnLines.trim())}if("align"===group.colSeparationType){for(var _cols=group.cols||[],spacing="",_i2=1;_i2<_cols.length;_i2++)spacing+=_i2%2?"0em ":"1em ";table.setAttribute("columnspacing",spacing.trim())}else"alignat"===group.colSeparationType||"gather"===group.colSeparationType?table.setAttribute("columnspacing","0em"):"small"===group.colSeparationType?table.setAttribute("columnspacing","0.2778em"):"CD"===group.colSeparationType?table.setAttribute("columnspacing","0.5em"):table.setAttribute("columnspacing","1em");var rowLines="",hlines=group.hLinesBeforeRow;menclose+=hlines[0].length>0?"left ":"",menclose+=hlines[hlines.length-1].length>0?"right ":"";for(var _i3=1;_i3<hlines.length-1;_i3++)rowLines+=0===hlines[_i3].length?"none ":hlines[_i3][0]?"dashed ":"solid ";return/[sd]/.test(rowLines)&&table.setAttribute("rowlines",rowLines.trim()),""!==menclose&&(table=new mathMLTree.MathNode("menclose",[table])).setAttribute("notation",menclose.trim()),group.arraystretch&&group.arraystretch<1&&(table=new mathMLTree.MathNode("mstyle",[table])).setAttribute("scriptlevel","1"),table},alignedHandler=function alignedHandler(context,args){-1===context.envName.indexOf("ed")&&validateAmsEnvironmentContext(context);var numMaths,cols=[],separationType=context.envName.indexOf("at")>-1?"alignat":"align",isSplit="split"===context.envName,res=parseArray(context.parser,{cols,addJot:!0,autoTag:isSplit?void 0:getAutoTag(context.envName),emptySingleRow:!0,colSeparationType:separationType,maxNumCols:isSplit?2:void 0,leqno:context.parser.settings.leqno},"display"),numCols=0,emptyGroup={type:"ordgroup",mode:context.mode,body:[]};if(args[0]&&"ordgroup"===args[0].type){for(var arg0="",i=0;i<args[0].body.length;i++){arg0+=assertNodeType(args[0].body[i],"textord").text}numMaths=Number(arg0),numCols=2*numMaths}var isAligned=!numCols;res.body.forEach((function(row){for(var _i4=1;_i4<row.length;_i4+=2){var styling=assertNodeType(row[_i4],"styling");assertNodeType(styling.body[0],"ordgroup").body.unshift(emptyGroup)}if(isAligned)numCols<row.length&&(numCols=row.length);else{var curMaths=row.length/2;if(numMaths<curMaths)throw new ParseError("Too many math in a row: expected "+numMaths+", but got "+curMaths,row[0])}}));for(var _i5=0;_i5<numCols;++_i5){var align="r",pregap=0;_i5%2==1?align="l":_i5>0&&isAligned&&(pregap=1),cols[_i5]={type:"align",align,pregap,postgap:0}}return res.colSeparationType=isAligned?"align":"alignat",res};defineEnvironment({type:"array",names:["array","darray"],props:{numArgs:1},handler(context,args){var cols=(checkSymbolNodeType(args[0])?[args[0]]:assertNodeType(args[0],"ordgroup").body).map((function(nde){var ca=assertSymbolNodeType(nde).text;if(-1!=="lcr".indexOf(ca))return{type:"align",align:ca};if("|"===ca)return{type:"separator",separator:"|"};if(":"===ca)return{type:"separator",separator:":"};throw new ParseError("Unknown column alignment: "+ca,nde)})),res={cols,hskipBeforeAndAfter:!0,maxNumCols:cols.length};return parseArray(context.parser,res,dCellStyle(context.envName))},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(context){var delimiters={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[context.envName.replace("*","")],colAlign="c",payload={hskipBeforeAndAfter:!1,cols:[{type:"align",align:colAlign}]};if("*"===context.envName.charAt(context.envName.length-1)){var parser=context.parser;if(parser.consumeSpaces(),"["===parser.fetch().text){if(parser.consume(),parser.consumeSpaces(),colAlign=parser.fetch().text,-1==="lcr".indexOf(colAlign))throw new ParseError("Expected l or c or r",parser.nextToken);parser.consume(),parser.consumeSpaces(),parser.expect("]"),parser.consume(),payload.cols=[{type:"align",align:colAlign}]}}var res=parseArray(context.parser,payload,dCellStyle(context.envName)),numCols=Math.max(0,...res.body.map((row=>row.length)));return res.cols=new Array(numCols).fill({type:"align",align:colAlign}),delimiters?{type:"leftright",mode:context.mode,body:[res],left:delimiters[0],right:delimiters[1],rightColor:void 0}:res},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(context){var res=parseArray(context.parser,{arraystretch:.5},"script");return res.colSeparationType="small",res},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["subarray"],props:{numArgs:1},handler(context,args){var cols=(checkSymbolNodeType(args[0])?[args[0]]:assertNodeType(args[0],"ordgroup").body).map((function(nde){var ca=assertSymbolNodeType(nde).text;if(-1!=="lc".indexOf(ca))return{type:"align",align:ca};throw new ParseError("Unknown column alignment: "+ca,nde)}));if(cols.length>1)throw new ParseError("{subarray} can contain only one column");var res={cols,hskipBeforeAndAfter:!1,arraystretch:.5};if((res=parseArray(context.parser,res,"script")).body.length>0&&res.body[0].length>1)throw new ParseError("{subarray} can contain only one column");return res},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(context){var res=parseArray(context.parser,{arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},dCellStyle(context.envName));return{type:"leftright",mode:context.mode,body:[res],left:context.envName.indexOf("r")>-1?".":"\\{",right:context.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:alignedHandler,htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(context){utils.contains(["gather","gather*"],context.envName)&&validateAmsEnvironmentContext(context);var res={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:getAutoTag(context.envName),emptySingleRow:!0,leqno:context.parser.settings.leqno};return parseArray(context.parser,res,"display")},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:alignedHandler,htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(context){validateAmsEnvironmentContext(context);var res={autoTag:getAutoTag(context.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:context.parser.settings.leqno};return parseArray(context.parser,res,"display")},htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineEnvironment({type:"array",names:["CD"],props:{numArgs:0},handler:context=>(validateAmsEnvironmentContext(context),function parseCD(parser){var parsedRows=[];for(parser.gullet.beginGroup(),parser.gullet.macros.set("\\cr","\\\\\\relax"),parser.gullet.beginGroup();;){parsedRows.push(parser.parseExpression(!1,"\\\\")),parser.gullet.endGroup(),parser.gullet.beginGroup();var next=parser.fetch().text;if("&"!==next&&"\\\\"!==next){if("\\end"===next){0===parsedRows[parsedRows.length-1].length&&parsedRows.pop();break}throw new ParseError("Expected \\\\ or \\cr or \\end",parser.nextToken)}parser.consume()}for(var node,endChar,row=[],body=[row],i=0;i<parsedRows.length;i++){for(var rowNodes=parsedRows[i],cell={type:"styling",body:[],mode:"math",style:"display"},j=0;j<rowNodes.length;j++)if(isStartOfArrow(rowNodes[j])){row.push(cell);var arrowChar=assertSymbolNodeType(rowNodes[j+=1]).text,labels=new Array(2);if(labels[0]={type:"ordgroup",mode:"math",body:[]},labels[1]={type:"ordgroup",mode:"math",body:[]},"=|.".indexOf(arrowChar)>-1);else{if(!("<>AV".indexOf(arrowChar)>-1))throw new ParseError('Expected one of "<>AV=|." after @',rowNodes[j]);for(var labelNum=0;labelNum<2;labelNum++){for(var inLabel=!0,k=j+1;k<rowNodes.length;k++){if(endChar=arrowChar,("mathord"===(node=rowNodes[k]).type||"atom"===node.type)&&node.text===endChar){inLabel=!1,j=k;break}if(isStartOfArrow(rowNodes[k]))throw new ParseError("Missing a "+arrowChar+" character to complete a CD arrow.",rowNodes[k]);labels[labelNum].body.push(rowNodes[k])}if(inLabel)throw new ParseError("Missing a "+arrowChar+" character to complete a CD arrow.",rowNodes[j])}}var wrappedArrow={type:"styling",body:[cdArrow(arrowChar,labels,parser)],mode:"math",style:"display"};row.push(wrappedArrow),cell={type:"styling",body:[],mode:"math",style:"display"}}else cell.body.push(rowNodes[j]);i%2==0?row.push(cell):row.shift(),row=[],body.push(row)}return parser.gullet.endGroup(),parser.gullet.endGroup(),{type:"array",mode:"math",body,arraystretch:1,addJot:!0,rowGaps:[null],cols:new Array(body[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25}),colSeparationType:"CD",hLinesBeforeRow:new Array(body.length+1).fill([])}}(context.parser)),htmlBuilder:htmlBuilder$6,mathmlBuilder:mathmlBuilder$5}),defineMacro("\\nonumber","\\gdef\\@eqnsw{0}"),defineMacro("\\notag","\\nonumber"),defineFunction({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(context,args){throw new ParseError(context.funcName+" valid only within array environment")}});var environments=_environments;defineFunction({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(_ref,args){var{parser,funcName}=_ref,nameGroup=args[0];if("ordgroup"!==nameGroup.type)throw new ParseError("Invalid environment name",nameGroup);for(var envName="",i=0;i<nameGroup.body.length;++i)envName+=assertNodeType(nameGroup.body[i],"textord").text;if("\\begin"===funcName){if(!environments.hasOwnProperty(envName))throw new ParseError("No such environment: "+envName,nameGroup);var env=environments[envName],{args:_args,optArgs}=parser.parseArguments("\\begin{"+envName+"}",env),context={mode:parser.mode,envName,parser},result=env.handler(context,_args,optArgs);parser.expect("\\end",!1);var endNameToken=parser.nextToken,end=assertNodeType(parser.parseFunction(),"environment");if(end.name!==envName)throw new ParseError("Mismatch: \\begin{"+envName+"} matched by \\end{"+end.name+"}",endNameToken);return result}return{type:"environment",mode:parser.mode,name:envName,nameGroup}}});var htmlBuilder$5=(group,options)=>{var font=group.font,newOptions=options.withFont(font);return buildGroup$1(group.body,newOptions)},mathmlBuilder$4=(group,options)=>{var font=group.font,newOptions=options.withFont(font);return buildGroup(group.body,newOptions)},fontAliases={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};defineFunction({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(_ref,args)=>{var{parser,funcName}=_ref,body=normalizeArgument(args[0]),func=funcName;return func in fontAliases&&(func=fontAliases[func]),{type:"font",mode:parser.mode,font:func.slice(1),body}},htmlBuilder:htmlBuilder$5,mathmlBuilder:mathmlBuilder$4}),defineFunction({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(_ref2,args)=>{var{parser}=_ref2,body=args[0],isCharacterBox=utils.isCharacterBox(body);return{type:"mclass",mode:parser.mode,mclass:binrelClass(body),body:[{type:"font",mode:parser.mode,font:"boldsymbol",body}],isCharacterBox}}}),defineFunction({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(_ref3,args)=>{var{parser,funcName,breakOnTokenText}=_ref3,{mode}=parser,body=parser.parseExpression(!0,breakOnTokenText);return{type:"font",mode,font:"math"+funcName.slice(1),body:{type:"ordgroup",mode:parser.mode,body}}},htmlBuilder:htmlBuilder$5,mathmlBuilder:mathmlBuilder$4});var adjustStyle=(size,originalStyle)=>{var style=originalStyle;return"display"===size?style=style.id>=Style$1.SCRIPT.id?style.text():Style$1.DISPLAY:"text"===size&&style.size===Style$1.DISPLAY.size?style=Style$1.TEXT:"script"===size?style=Style$1.SCRIPT:"scriptscript"===size&&(style=Style$1.SCRIPTSCRIPT),style},htmlBuilder$4=(group,options)=>{var newOptions,style=adjustStyle(group.size,options.style),nstyle=style.fracNum(),dstyle=style.fracDen();newOptions=options.havingStyle(nstyle);var numerm=buildGroup$1(group.numer,newOptions,options);if(group.continued){var hStrut=8.5/options.fontMetrics().ptPerEm,dStrut=3.5/options.fontMetrics().ptPerEm;numerm.height=numerm.height<hStrut?hStrut:numerm.height,numerm.depth=numerm.depth<dStrut?dStrut:numerm.depth}newOptions=options.havingStyle(dstyle);var rule,ruleWidth,ruleSpacing,numShift,clearance,denomShift,frac,delimSize,leftDelim,rightDelim,denomm=buildGroup$1(group.denom,newOptions,options);if(group.hasBarLine?(group.barSize?(ruleWidth=calculateSize(group.barSize,options),rule=buildCommon.makeLineSpan("frac-line",options,ruleWidth)):rule=buildCommon.makeLineSpan("frac-line",options),ruleWidth=rule.height,ruleSpacing=rule.height):(rule=null,ruleWidth=0,ruleSpacing=options.fontMetrics().defaultRuleThickness),style.size===Style$1.DISPLAY.size||"display"===group.size?(numShift=options.fontMetrics().num1,clearance=ruleWidth>0?3*ruleSpacing:7*ruleSpacing,denomShift=options.fontMetrics().denom1):(ruleWidth>0?(numShift=options.fontMetrics().num2,clearance=ruleSpacing):(numShift=options.fontMetrics().num3,clearance=3*ruleSpacing),denomShift=options.fontMetrics().denom2),rule){var axisHeight=options.fontMetrics().axisHeight;numShift-numerm.depth-(axisHeight+.5*ruleWidth)<clearance&&(numShift+=clearance-(numShift-numerm.depth-(axisHeight+.5*ruleWidth))),axisHeight-.5*ruleWidth-(denomm.height-denomShift)<clearance&&(denomShift+=clearance-(axisHeight-.5*ruleWidth-(denomm.height-denomShift)));var midShift=-(axisHeight-.5*ruleWidth);frac=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:denomm,shift:denomShift},{type:"elem",elem:rule,shift:midShift},{type:"elem",elem:numerm,shift:-numShift}]},options)}else{var candidateClearance=numShift-numerm.depth-(denomm.height-denomShift);candidateClearance<clearance&&(numShift+=.5*(clearance-candidateClearance),denomShift+=.5*(clearance-candidateClearance)),frac=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:denomm,shift:denomShift},{type:"elem",elem:numerm,shift:-numShift}]},options)}return newOptions=options.havingStyle(style),frac.height*=newOptions.sizeMultiplier/options.sizeMultiplier,frac.depth*=newOptions.sizeMultiplier/options.sizeMultiplier,delimSize=style.size===Style$1.DISPLAY.size?options.fontMetrics().delim1:style.size===Style$1.SCRIPTSCRIPT.size?options.havingStyle(Style$1.SCRIPT).fontMetrics().delim2:options.fontMetrics().delim2,leftDelim=null==group.leftDelim?makeNullDelimiter(options,["mopen"]):delimiter.customSizedDelim(group.leftDelim,delimSize,!0,options.havingStyle(style),group.mode,["mopen"]),rightDelim=group.continued?buildCommon.makeSpan([]):null==group.rightDelim?makeNullDelimiter(options,["mclose"]):delimiter.customSizedDelim(group.rightDelim,delimSize,!0,options.havingStyle(style),group.mode,["mclose"]),buildCommon.makeSpan(["mord"].concat(newOptions.sizingClasses(options)),[leftDelim,buildCommon.makeSpan(["mfrac"],[frac]),rightDelim],options)},mathmlBuilder$3=(group,options)=>{var node=new mathMLTree.MathNode("mfrac",[buildGroup(group.numer,options),buildGroup(group.denom,options)]);if(group.hasBarLine){if(group.barSize){var ruleWidth=calculateSize(group.barSize,options);node.setAttribute("linethickness",makeEm(ruleWidth))}}else node.setAttribute("linethickness","0px");var style=adjustStyle(group.size,options.style);if(style.size!==options.style.size){node=new mathMLTree.MathNode("mstyle",[node]);var isDisplay=style.size===Style$1.DISPLAY.size?"true":"false";node.setAttribute("displaystyle",isDisplay),node.setAttribute("scriptlevel","0")}if(null!=group.leftDelim||null!=group.rightDelim){var withDelims=[];if(null!=group.leftDelim){var leftOp=new mathMLTree.MathNode("mo",[new mathMLTree.TextNode(group.leftDelim.replace("\\",""))]);leftOp.setAttribute("fence","true"),withDelims.push(leftOp)}if(withDelims.push(node),null!=group.rightDelim){var rightOp=new mathMLTree.MathNode("mo",[new mathMLTree.TextNode(group.rightDelim.replace("\\",""))]);rightOp.setAttribute("fence","true"),withDelims.push(rightOp)}return makeRow(withDelims)}return node};defineFunction({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(_ref,args)=>{var hasBarLine,{parser,funcName}=_ref,numer=args[0],denom=args[1],leftDelim=null,rightDelim=null,size="auto";switch(funcName){case"\\dfrac":case"\\frac":case"\\tfrac":hasBarLine=!0;break;case"\\\\atopfrac":hasBarLine=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":hasBarLine=!1,leftDelim="(",rightDelim=")";break;case"\\\\bracefrac":hasBarLine=!1,leftDelim="\\{",rightDelim="\\}";break;case"\\\\brackfrac":hasBarLine=!1,leftDelim="[",rightDelim="]";break;default:throw new Error("Unrecognized genfrac command")}switch(funcName){case"\\dfrac":case"\\dbinom":size="display";break;case"\\tfrac":case"\\tbinom":size="text"}return{type:"genfrac",mode:parser.mode,continued:!1,numer,denom,hasBarLine,leftDelim,rightDelim,size,barSize:null}},htmlBuilder:htmlBuilder$4,mathmlBuilder:mathmlBuilder$3}),defineFunction({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:(_ref2,args)=>{var{parser,funcName}=_ref2,numer=args[0],denom=args[1];return{type:"genfrac",mode:parser.mode,continued:!0,numer,denom,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}}}),defineFunction({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(_ref3){var replaceWith,{parser,funcName,token}=_ref3;switch(funcName){case"\\over":replaceWith="\\frac";break;case"\\choose":replaceWith="\\binom";break;case"\\atop":replaceWith="\\\\atopfrac";break;case"\\brace":replaceWith="\\\\bracefrac";break;case"\\brack":replaceWith="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:parser.mode,replaceWith,token}}});var stylArray=["display","text","script","scriptscript"],delimFromValue=function delimFromValue(delimString){var delim=null;return delimString.length>0&&(delim="."===(delim=delimString)?null:delim),delim};defineFunction({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(_ref4,args){var hasBarLine,{parser}=_ref4,numer=args[4],denom=args[5],leftNode=normalizeArgument(args[0]),leftDelim="atom"===leftNode.type&&"open"===leftNode.family?delimFromValue(leftNode.text):null,rightNode=normalizeArgument(args[1]),rightDelim="atom"===rightNode.type&&"close"===rightNode.family?delimFromValue(rightNode.text):null,barNode=assertNodeType(args[2],"size"),barSize=null;hasBarLine=!!barNode.isBlank||(barSize=barNode.value).number>0;var size="auto",styl=args[3];if("ordgroup"===styl.type){if(styl.body.length>0){var textOrd=assertNodeType(styl.body[0],"textord");size=stylArray[Number(textOrd.text)]}}else styl=assertNodeType(styl,"textord"),size=stylArray[Number(styl.text)];return{type:"genfrac",mode:parser.mode,numer,denom,continued:!1,hasBarLine,barSize,leftDelim,rightDelim,size}},htmlBuilder:htmlBuilder$4,mathmlBuilder:mathmlBuilder$3}),defineFunction({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(_ref5,args){var{parser,funcName,token}=_ref5;return{type:"infix",mode:parser.mode,replaceWith:"\\\\abovefrac",size:assertNodeType(args[0],"size").value,token}}}),defineFunction({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(_ref6,args)=>{var{parser,funcName}=_ref6,numer=args[0],barSize=function assert(value){if(!value)throw new Error("Expected non-null, but got "+String(value));return value}(assertNodeType(args[1],"infix").size),denom=args[2],hasBarLine=barSize.number>0;return{type:"genfrac",mode:parser.mode,numer,denom,continued:!1,hasBarLine,barSize,leftDelim:null,rightDelim:null,size:"auto"}},htmlBuilder:htmlBuilder$4,mathmlBuilder:mathmlBuilder$3});var htmlBuilder$3=(grp,options)=>{var supSubGroup,group,style=options.style;"supsub"===grp.type?(supSubGroup=grp.sup?buildGroup$1(grp.sup,options.havingStyle(style.sup()),options):buildGroup$1(grp.sub,options.havingStyle(style.sub()),options),group=assertNodeType(grp.base,"horizBrace")):group=assertNodeType(grp,"horizBrace");var vlist,body=buildGroup$1(group.base,options.havingBaseStyle(Style$1.DISPLAY)),braceBody=stretchy_svgSpan(group,options);if(group.isOver?(vlist=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:body},{type:"kern",size:.1},{type:"elem",elem:braceBody}]},options)).children[0].children[0].children[1].classes.push("svg-align"):(vlist=buildCommon.makeVList({positionType:"bottom",positionData:body.depth+.1+braceBody.height,children:[{type:"elem",elem:braceBody},{type:"kern",size:.1},{type:"elem",elem:body}]},options)).children[0].children[0].children[0].classes.push("svg-align"),supSubGroup){var vSpan=buildCommon.makeSpan(["mord",group.isOver?"mover":"munder"],[vlist],options);vlist=group.isOver?buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:vSpan},{type:"kern",size:.2},{type:"elem",elem:supSubGroup}]},options):buildCommon.makeVList({positionType:"bottom",positionData:vSpan.depth+.2+supSubGroup.height+supSubGroup.depth,children:[{type:"elem",elem:supSubGroup},{type:"kern",size:.2},{type:"elem",elem:vSpan}]},options)}return buildCommon.makeSpan(["mord",group.isOver?"mover":"munder"],[vlist],options)};defineFunction({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(_ref,args){var{parser,funcName}=_ref;return{type:"horizBrace",mode:parser.mode,label:funcName,isOver:/^\\over/.test(funcName),base:args[0]}},htmlBuilder:htmlBuilder$3,mathmlBuilder:(group,options)=>{var accentNode=stretchy_mathMLnode(group.label);return new mathMLTree.MathNode(group.isOver?"mover":"munder",[buildGroup(group.base,options),accentNode])}}),defineFunction({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(_ref,args)=>{var{parser}=_ref,body=args[1],href=assertNodeType(args[0],"url").url;return parser.settings.isTrusted({command:"\\href",url:href})?{type:"href",mode:parser.mode,href,body:ordargument(body)}:parser.formatUnsupportedCmd("\\href")},htmlBuilder:(group,options)=>{var elements=buildExpression$1(group.body,options,!1);return buildCommon.makeAnchor(group.href,[],elements,options)},mathmlBuilder:(group,options)=>{var math=buildExpressionRow(group.body,options);return math instanceof MathNode||(math=new MathNode("mrow",[math])),math.setAttribute("href",group.href),math}}),defineFunction({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(_ref2,args)=>{var{parser}=_ref2,href=assertNodeType(args[0],"url").url;if(!parser.settings.isTrusted({command:"\\url",url:href}))return parser.formatUnsupportedCmd("\\url");for(var chars=[],i=0;i<href.length;i++){var c=href[i];"~"===c&&(c="\\textasciitilde"),chars.push({type:"textord",mode:"text",text:c})}var body={type:"text",mode:parser.mode,font:"\\texttt",body:chars};return{type:"href",mode:parser.mode,href,body:ordargument(body)}}}),defineFunction({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(_ref,args){var{parser}=_ref;return{type:"hbox",mode:parser.mode,body:ordargument(args[0])}},htmlBuilder(group,options){var elements=buildExpression$1(group.body,options,!1);return buildCommon.makeFragment(elements)},mathmlBuilder:(group,options)=>new mathMLTree.MathNode("mrow",buildExpression(group.body,options))}),defineFunction({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(_ref,args)=>{var trustContext,{parser,funcName,token}=_ref,value=assertNodeType(args[0],"raw").string,body=args[1];parser.settings.strict&&parser.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var attributes={};switch(funcName){case"\\htmlClass":attributes.class=value,trustContext={command:"\\htmlClass",class:value};break;case"\\htmlId":attributes.id=value,trustContext={command:"\\htmlId",id:value};break;case"\\htmlStyle":attributes.style=value,trustContext={command:"\\htmlStyle",style:value};break;case"\\htmlData":for(var data=value.split(","),i=0;i<data.length;i++){var keyVal=data[i].split("=");if(2!==keyVal.length)throw new ParseError("Error parsing key-value for \\htmlData");attributes["data-"+keyVal[0].trim()]=keyVal[1].trim()}trustContext={command:"\\htmlData",attributes};break;default:throw new Error("Unrecognized html command")}return parser.settings.isTrusted(trustContext)?{type:"html",mode:parser.mode,attributes,body:ordargument(body)}:parser.formatUnsupportedCmd(funcName)},htmlBuilder:(group,options)=>{var elements=buildExpression$1(group.body,options,!1),classes=["enclosing"];group.attributes.class&&classes.push(...group.attributes.class.trim().split(/\s+/));var span=buildCommon.makeSpan(classes,elements,options);for(var attr in group.attributes)"class"!==attr&&group.attributes.hasOwnProperty(attr)&&span.setAttribute(attr,group.attributes[attr]);return span},mathmlBuilder:(group,options)=>buildExpressionRow(group.body,options)}),defineFunction({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:(_ref,args)=>{var{parser}=_ref;return{type:"htmlmathml",mode:parser.mode,html:ordargument(args[0]),mathml:ordargument(args[1])}},htmlBuilder:(group,options)=>{var elements=buildExpression$1(group.html,options,!1);return buildCommon.makeFragment(elements)},mathmlBuilder:(group,options)=>buildExpressionRow(group.mathml,options)});var sizeData=function sizeData(str){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(str))return{number:+str,unit:"bp"};var match=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(str);if(!match)throw new ParseError("Invalid size: '"+str+"' in \\includegraphics");var data={number:+(match[1]+match[2]),unit:match[3]};if(!validUnit(data))throw new ParseError("Invalid unit: '"+data.unit+"' in \\includegraphics.");return data};defineFunction({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(_ref,args,optArgs)=>{var{parser}=_ref,width={number:0,unit:"em"},height={number:.9,unit:"em"},totalheight={number:0,unit:"em"},alt="";if(optArgs[0])for(var attributes=assertNodeType(optArgs[0],"raw").string.split(","),i=0;i<attributes.length;i++){var keyVal=attributes[i].split("=");if(2===keyVal.length){var str=keyVal[1].trim();switch(keyVal[0].trim()){case"alt":alt=str;break;case"width":width=sizeData(str);break;case"height":height=sizeData(str);break;case"totalheight":totalheight=sizeData(str);break;default:throw new ParseError("Invalid key: '"+keyVal[0]+"' in \\includegraphics.")}}}var src=assertNodeType(args[0],"url").url;return""===alt&&(alt=(alt=(alt=src).replace(/^.*[\\/]/,"")).substring(0,alt.lastIndexOf("."))),parser.settings.isTrusted({command:"\\includegraphics",url:src})?{type:"includegraphics",mode:parser.mode,alt,width,height,totalheight,src}:parser.formatUnsupportedCmd("\\includegraphics")},htmlBuilder:(group,options)=>{var height=calculateSize(group.height,options),depth=0;group.totalheight.number>0&&(depth=calculateSize(group.totalheight,options)-height);var width=0;group.width.number>0&&(width=calculateSize(group.width,options));var style={height:makeEm(height+depth)};width>0&&(style.width=makeEm(width)),depth>0&&(style.verticalAlign=makeEm(-depth));var node=new Img(group.src,group.alt,style);return node.height=height,node.depth=depth,node},mathmlBuilder:(group,options)=>{var node=new mathMLTree.MathNode("mglyph",[]);node.setAttribute("alt",group.alt);var height=calculateSize(group.height,options),depth=0;if(group.totalheight.number>0&&(depth=calculateSize(group.totalheight,options)-height,node.setAttribute("valign",makeEm(-depth))),node.setAttribute("height",makeEm(height+depth)),group.width.number>0){var width=calculateSize(group.width,options);node.setAttribute("width",makeEm(width))}return node.setAttribute("src",group.src),node}}),defineFunction({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(_ref,args){var{parser,funcName}=_ref,size=assertNodeType(args[0],"size");if(parser.settings.strict){var mathFunction="m"===funcName[1],muUnit="mu"===size.value.unit;mathFunction?(muUnit||parser.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+funcName+" supports only mu units, not "+size.value.unit+" units"),"math"!==parser.mode&&parser.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+funcName+" works only in math mode")):muUnit&&parser.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+funcName+" doesn't support mu units")}return{type:"kern",mode:parser.mode,dimension:size.value}},htmlBuilder:(group,options)=>buildCommon.makeGlue(group.dimension,options),mathmlBuilder(group,options){var dimension=calculateSize(group.dimension,options);return new mathMLTree.SpaceNode(dimension)}}),defineFunction({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(_ref,args)=>{var{parser,funcName}=_ref,body=args[0];return{type:"lap",mode:parser.mode,alignment:funcName.slice(5),body}},htmlBuilder:(group,options)=>{var inner;"clap"===group.alignment?(inner=buildCommon.makeSpan([],[buildGroup$1(group.body,options)]),inner=buildCommon.makeSpan(["inner"],[inner],options)):inner=buildCommon.makeSpan(["inner"],[buildGroup$1(group.body,options)]);var fix=buildCommon.makeSpan(["fix"],[]),node=buildCommon.makeSpan([group.alignment],[inner,fix],options),strut=buildCommon.makeSpan(["strut"]);return strut.style.height=makeEm(node.height+node.depth),node.depth&&(strut.style.verticalAlign=makeEm(-node.depth)),node.children.unshift(strut),node=buildCommon.makeSpan(["thinbox"],[node],options),buildCommon.makeSpan(["mord","vbox"],[node],options)},mathmlBuilder:(group,options)=>{var node=new mathMLTree.MathNode("mpadded",[buildGroup(group.body,options)]);if("rlap"!==group.alignment){var offset="llap"===group.alignment?"-1":"-0.5";node.setAttribute("lspace",offset+"width")}return node.setAttribute("width","0px"),node}}),defineFunction({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(_ref,args){var{funcName,parser}=_ref,outerMode=parser.mode;parser.switchMode("math");var close="\\("===funcName?"\\)":"$",body=parser.parseExpression(!1,close);return parser.expect(close),parser.switchMode(outerMode),{type:"styling",mode:parser.mode,style:"text",body}}}),defineFunction({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(context,args){throw new ParseError("Mismatched "+context.funcName)}});var chooseMathStyle=(group,options)=>{switch(options.style.size){case Style$1.DISPLAY.size:return group.display;case Style$1.TEXT.size:return group.text;case Style$1.SCRIPT.size:return group.script;case Style$1.SCRIPTSCRIPT.size:return group.scriptscript;default:return group.text}};defineFunction({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(_ref,args)=>{var{parser}=_ref;return{type:"mathchoice",mode:parser.mode,display:ordargument(args[0]),text:ordargument(args[1]),script:ordargument(args[2]),scriptscript:ordargument(args[3])}},htmlBuilder:(group,options)=>{var body=chooseMathStyle(group,options),elements=buildExpression$1(body,options,!1);return buildCommon.makeFragment(elements)},mathmlBuilder:(group,options)=>{var body=chooseMathStyle(group,options);return buildExpressionRow(body,options)}});var assembleSupSub=(base,supGroup,subGroup,options,style,slant,baseShift)=>{base=buildCommon.makeSpan([],[base]);var sub,sup,finalGroup,subIsSingleCharacter=subGroup&&utils.isCharacterBox(subGroup);if(supGroup){var elem=buildGroup$1(supGroup,options.havingStyle(style.sup()),options);sup={elem,kern:Math.max(options.fontMetrics().bigOpSpacing1,options.fontMetrics().bigOpSpacing3-elem.depth)}}if(subGroup){var _elem=buildGroup$1(subGroup,options.havingStyle(style.sub()),options);sub={elem:_elem,kern:Math.max(options.fontMetrics().bigOpSpacing2,options.fontMetrics().bigOpSpacing4-_elem.height)}}if(sup&&sub){var bottom=options.fontMetrics().bigOpSpacing5+sub.elem.height+sub.elem.depth+sub.kern+base.depth+baseShift;finalGroup=buildCommon.makeVList({positionType:"bottom",positionData:bottom,children:[{type:"kern",size:options.fontMetrics().bigOpSpacing5},{type:"elem",elem:sub.elem,marginLeft:makeEm(-slant)},{type:"kern",size:sub.kern},{type:"elem",elem:base},{type:"kern",size:sup.kern},{type:"elem",elem:sup.elem,marginLeft:makeEm(slant)},{type:"kern",size:options.fontMetrics().bigOpSpacing5}]},options)}else if(sub){var top=base.height-baseShift;finalGroup=buildCommon.makeVList({positionType:"top",positionData:top,children:[{type:"kern",size:options.fontMetrics().bigOpSpacing5},{type:"elem",elem:sub.elem,marginLeft:makeEm(-slant)},{type:"kern",size:sub.kern},{type:"elem",elem:base}]},options)}else{if(!sup)return base;var _bottom=base.depth+baseShift;finalGroup=buildCommon.makeVList({positionType:"bottom",positionData:_bottom,children:[{type:"elem",elem:base},{type:"kern",size:sup.kern},{type:"elem",elem:sup.elem,marginLeft:makeEm(slant)},{type:"kern",size:options.fontMetrics().bigOpSpacing5}]},options)}var parts=[finalGroup];if(sub&&0!==slant&&!subIsSingleCharacter){var spacer=buildCommon.makeSpan(["mspace"],[],options);spacer.style.marginRight=makeEm(slant),parts.unshift(spacer)}return buildCommon.makeSpan(["mop","op-limits"],parts,options)},noSuccessor=["\\smallint"],htmlBuilder$2=(grp,options)=>{var supGroup,subGroup,group,hasLimits=!1;"supsub"===grp.type?(supGroup=grp.sup,subGroup=grp.sub,group=assertNodeType(grp.base,"op"),hasLimits=!0):group=assertNodeType(grp,"op");var base,style=options.style,large=!1;if(style.size===Style$1.DISPLAY.size&&group.symbol&&!utils.contains(noSuccessor,group.name)&&(large=!0),group.symbol){var fontName=large?"Size2-Regular":"Size1-Regular",stash="";if("\\oiint"!==group.name&&"\\oiiint"!==group.name||(stash=group.name.slice(1),group.name="oiint"===stash?"\\iint":"\\iiint"),base=buildCommon.makeSymbol(group.name,fontName,"math",options,["mop","op-symbol",large?"large-op":"small-op"]),stash.length>0){var italic=base.italic,oval=buildCommon.staticSvg(stash+"Size"+(large?"2":"1"),options);base=buildCommon.makeVList({positionType:"individualShift",children:[{type:"elem",elem:base,shift:0},{type:"elem",elem:oval,shift:large?.08:0}]},options),group.name="\\"+stash,base.classes.unshift("mop"),base.italic=italic}}else if(group.body){var inner=buildExpression$1(group.body,options,!0);1===inner.length&&inner[0]instanceof SymbolNode?(base=inner[0]).classes[0]="mop":base=buildCommon.makeSpan(["mop"],inner,options)}else{for(var output=[],i=1;i<group.name.length;i++)output.push(buildCommon.mathsym(group.name[i],group.mode,options));base=buildCommon.makeSpan(["mop"],output,options)}var baseShift=0,slant=0;return(base instanceof SymbolNode||"\\oiint"===group.name||"\\oiiint"===group.name)&&!group.suppressBaseShift&&(baseShift=(base.height-base.depth)/2-options.fontMetrics().axisHeight,slant=base.italic),hasLimits?assembleSupSub(base,supGroup,subGroup,options,style,slant,baseShift):(baseShift&&(base.style.position="relative",base.style.top=makeEm(baseShift)),base)},mathmlBuilder$1=(group,options)=>{var node;if(group.symbol)node=new MathNode("mo",[makeText(group.name,group.mode)]),utils.contains(noSuccessor,group.name)&&node.setAttribute("largeop","false");else if(group.body)node=new MathNode("mo",buildExpression(group.body,options));else{node=new MathNode("mi",[new TextNode(group.name.slice(1))]);var operator=new MathNode("mo",[makeText("","text")]);node=group.parentIsSupSub?new MathNode("mrow",[node,operator]):newDocumentFragment([node,operator])}return node},singleCharBigOps={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","⋁":"\\bigvee","⋂":"\\bigcap","⋃":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};defineFunction({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","⋁","⋂","⋃","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(_ref,args)=>{var{parser,funcName}=_ref,fName=funcName;return 1===fName.length&&(fName=singleCharBigOps[fName]),{type:"op",mode:parser.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:fName}},htmlBuilder:htmlBuilder$2,mathmlBuilder:mathmlBuilder$1}),defineFunction({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(_ref2,args)=>{var{parser}=_ref2,body=args[0];return{type:"op",mode:parser.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:ordargument(body)}},htmlBuilder:htmlBuilder$2,mathmlBuilder:mathmlBuilder$1});var singleCharIntegrals={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};defineFunction({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(_ref3){var{parser,funcName}=_ref3;return{type:"op",mode:parser.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:funcName}},htmlBuilder:htmlBuilder$2,mathmlBuilder:mathmlBuilder$1}),defineFunction({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(_ref4){var{parser,funcName}=_ref4;return{type:"op",mode:parser.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:funcName}},htmlBuilder:htmlBuilder$2,mathmlBuilder:mathmlBuilder$1}),defineFunction({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0},handler(_ref5){var{parser,funcName}=_ref5,fName=funcName;return 1===fName.length&&(fName=singleCharIntegrals[fName]),{type:"op",mode:parser.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:fName}},htmlBuilder:htmlBuilder$2,mathmlBuilder:mathmlBuilder$1});var htmlBuilder$1=(grp,options)=>{var supGroup,subGroup,group,base,hasLimits=!1;if("supsub"===grp.type?(supGroup=grp.sup,subGroup=grp.sub,group=assertNodeType(grp.base,"operatorname"),hasLimits=!0):group=assertNodeType(grp,"operatorname"),group.body.length>0){for(var body=group.body.map((child=>{var childText=child.text;return"string"==typeof childText?{type:"textord",mode:child.mode,text:childText}:child})),expression=buildExpression$1(body,options.withFont("mathrm"),!0),i=0;i<expression.length;i++){var child=expression[i];child instanceof SymbolNode&&(child.text=child.text.replace(/\u2212/,"-").replace(/\u2217/,"*"))}base=buildCommon.makeSpan(["mop"],expression,options)}else base=buildCommon.makeSpan(["mop"],[],options);return hasLimits?assembleSupSub(base,supGroup,subGroup,options,options.style,0,0):base};function sizingGroup(value,options,baseOptions){for(var inner=buildExpression$1(value,options,!1),multiplier=options.sizeMultiplier/baseOptions.sizeMultiplier,i=0;i<inner.length;i++){var pos=inner[i].classes.indexOf("sizing");pos<0?Array.prototype.push.apply(inner[i].classes,options.sizingClasses(baseOptions)):inner[i].classes[pos+1]==="reset-size"+options.size&&(inner[i].classes[pos+1]="reset-size"+baseOptions.size),inner[i].height*=multiplier,inner[i].depth*=multiplier}return buildCommon.makeFragment(inner)}defineFunction({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(_ref,args)=>{var{parser,funcName}=_ref,body=args[0];return{type:"operatorname",mode:parser.mode,body:ordargument(body),alwaysHandleSupSub:"\\operatornamewithlimits"===funcName,limits:!1,parentIsSupSub:!1}},htmlBuilder:htmlBuilder$1,mathmlBuilder:(group,options)=>{for(var expression=buildExpression(group.body,options.withFont("mathrm")),isAllString=!0,i=0;i<expression.length;i++){var node=expression[i];if(node instanceof mathMLTree.SpaceNode);else if(node instanceof mathMLTree.MathNode)switch(node.type){case"mi":case"mn":case"ms":case"mspace":case"mtext":break;case"mo":var child=node.children[0];1===node.children.length&&child instanceof mathMLTree.TextNode?child.text=child.text.replace(/\u2212/,"-").replace(/\u2217/,"*"):isAllString=!1;break;default:isAllString=!1}else isAllString=!1}if(isAllString){var word=expression.map((node=>node.toText())).join("");expression=[new mathMLTree.TextNode(word)]}var identifier=new mathMLTree.MathNode("mi",expression);identifier.setAttribute("mathvariant","normal");var operator=new mathMLTree.MathNode("mo",[makeText("","text")]);return group.parentIsSupSub?new mathMLTree.MathNode("mrow",[identifier,operator]):mathMLTree.newDocumentFragment([identifier,operator])}}),defineMacro("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@"),defineFunctionBuilders({type:"ordgroup",htmlBuilder:(group,options)=>group.semisimple?buildCommon.makeFragment(buildExpression$1(group.body,options,!1)):buildCommon.makeSpan(["mord"],buildExpression$1(group.body,options,!0),options),mathmlBuilder:(group,options)=>buildExpressionRow(group.body,options,!0)}),defineFunction({type:"overline",names:["\\overline"],props:{numArgs:1},handler(_ref,args){var{parser}=_ref,body=args[0];return{type:"overline",mode:parser.mode,body}},htmlBuilder(group,options){var innerGroup=buildGroup$1(group.body,options.havingCrampedStyle()),line=buildCommon.makeLineSpan("overline-line",options),defaultRuleThickness=options.fontMetrics().defaultRuleThickness,vlist=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:innerGroup},{type:"kern",size:3*defaultRuleThickness},{type:"elem",elem:line},{type:"kern",size:defaultRuleThickness}]},options);return buildCommon.makeSpan(["mord","overline"],[vlist],options)},mathmlBuilder(group,options){var operator=new mathMLTree.MathNode("mo",[new mathMLTree.TextNode("‾")]);operator.setAttribute("stretchy","true");var node=new mathMLTree.MathNode("mover",[buildGroup(group.body,options),operator]);return node.setAttribute("accent","true"),node}}),defineFunction({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(_ref,args)=>{var{parser}=_ref,body=args[0];return{type:"phantom",mode:parser.mode,body:ordargument(body)}},htmlBuilder:(group,options)=>{var elements=buildExpression$1(group.body,options.withPhantom(),!1);return buildCommon.makeFragment(elements)},mathmlBuilder:(group,options)=>{var inner=buildExpression(group.body,options);return new mathMLTree.MathNode("mphantom",inner)}}),defineFunction({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:(_ref2,args)=>{var{parser}=_ref2,body=args[0];return{type:"hphantom",mode:parser.mode,body}},htmlBuilder:(group,options)=>{var node=buildCommon.makeSpan([],[buildGroup$1(group.body,options.withPhantom())]);if(node.height=0,node.depth=0,node.children)for(var i=0;i<node.children.length;i++)node.children[i].height=0,node.children[i].depth=0;return node=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:node}]},options),buildCommon.makeSpan(["mord"],[node],options)},mathmlBuilder:(group,options)=>{var inner=buildExpression(ordargument(group.body),options),phantom=new mathMLTree.MathNode("mphantom",inner),node=new mathMLTree.MathNode("mpadded",[phantom]);return node.setAttribute("height","0px"),node.setAttribute("depth","0px"),node}}),defineFunction({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(_ref3,args)=>{var{parser}=_ref3,body=args[0];return{type:"vphantom",mode:parser.mode,body}},htmlBuilder:(group,options)=>{var inner=buildCommon.makeSpan(["inner"],[buildGroup$1(group.body,options.withPhantom())]),fix=buildCommon.makeSpan(["fix"],[]);return buildCommon.makeSpan(["mord","rlap"],[inner,fix],options)},mathmlBuilder:(group,options)=>{var inner=buildExpression(ordargument(group.body),options),phantom=new mathMLTree.MathNode("mphantom",inner),node=new mathMLTree.MathNode("mpadded",[phantom]);return node.setAttribute("width","0px"),node}}),defineFunction({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(_ref,args){var{parser}=_ref,amount=assertNodeType(args[0],"size").value,body=args[1];return{type:"raisebox",mode:parser.mode,dy:amount,body}},htmlBuilder(group,options){var body=buildGroup$1(group.body,options),dy=calculateSize(group.dy,options);return buildCommon.makeVList({positionType:"shift",positionData:-dy,children:[{type:"elem",elem:body}]},options)},mathmlBuilder(group,options){var node=new mathMLTree.MathNode("mpadded",[buildGroup(group.body,options)]),dy=group.dy.number+group.dy.unit;return node.setAttribute("voffset",dy),node}}),defineFunction({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(_ref){var{parser}=_ref;return{type:"internal",mode:parser.mode}}}),defineFunction({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(_ref,args,optArgs){var{parser}=_ref,shift=optArgs[0],width=assertNodeType(args[0],"size"),height=assertNodeType(args[1],"size");return{type:"rule",mode:parser.mode,shift:shift&&assertNodeType(shift,"size").value,width:width.value,height:height.value}},htmlBuilder(group,options){var rule=buildCommon.makeSpan(["mord","rule"],[],options),width=calculateSize(group.width,options),height=calculateSize(group.height,options),shift=group.shift?calculateSize(group.shift,options):0;return rule.style.borderRightWidth=makeEm(width),rule.style.borderTopWidth=makeEm(height),rule.style.bottom=makeEm(shift),rule.width=width,rule.height=height+shift,rule.depth=-shift,rule.maxFontSize=1.125*height*options.sizeMultiplier,rule},mathmlBuilder(group,options){var width=calculateSize(group.width,options),height=calculateSize(group.height,options),shift=group.shift?calculateSize(group.shift,options):0,color=options.color&&options.getColor()||"black",rule=new mathMLTree.MathNode("mspace");rule.setAttribute("mathbackground",color),rule.setAttribute("width",makeEm(width)),rule.setAttribute("height",makeEm(height));var wrapper=new mathMLTree.MathNode("mpadded",[rule]);return shift>=0?wrapper.setAttribute("height",makeEm(shift)):(wrapper.setAttribute("height",makeEm(shift)),wrapper.setAttribute("depth",makeEm(-shift))),wrapper.setAttribute("voffset",makeEm(shift)),wrapper}});var sizeFuncs=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];defineFunction({type:"sizing",names:sizeFuncs,props:{numArgs:0,allowedInText:!0},handler:(_ref,args)=>{var{breakOnTokenText,funcName,parser}=_ref,body=parser.parseExpression(!1,breakOnTokenText);return{type:"sizing",mode:parser.mode,size:sizeFuncs.indexOf(funcName)+1,body}},htmlBuilder:(group,options)=>{var newOptions=options.havingSize(group.size);return sizingGroup(group.body,newOptions,options)},mathmlBuilder:(group,options)=>{var newOptions=options.havingSize(group.size),inner=buildExpression(group.body,newOptions),node=new mathMLTree.MathNode("mstyle",inner);return node.setAttribute("mathsize",makeEm(newOptions.sizeMultiplier)),node}}),defineFunction({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(_ref,args,optArgs)=>{var{parser}=_ref,smashHeight=!1,smashDepth=!1,tbArg=optArgs[0]&&assertNodeType(optArgs[0],"ordgroup");if(tbArg)for(var letter="",i=0;i<tbArg.body.length;++i){if("t"===(letter=tbArg.body[i].text))smashHeight=!0;else{if("b"!==letter){smashHeight=!1,smashDepth=!1;break}smashDepth=!0}}else smashHeight=!0,smashDepth=!0;var body=args[0];return{type:"smash",mode:parser.mode,body,smashHeight,smashDepth}},htmlBuilder:(group,options)=>{var node=buildCommon.makeSpan([],[buildGroup$1(group.body,options)]);if(!group.smashHeight&&!group.smashDepth)return node;if(group.smashHeight&&(node.height=0,node.children))for(var i=0;i<node.children.length;i++)node.children[i].height=0;if(group.smashDepth&&(node.depth=0,node.children))for(var _i=0;_i<node.children.length;_i++)node.children[_i].depth=0;var smashedNode=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:node}]},options);return buildCommon.makeSpan(["mord"],[smashedNode],options)},mathmlBuilder:(group,options)=>{var node=new mathMLTree.MathNode("mpadded",[buildGroup(group.body,options)]);return group.smashHeight&&node.setAttribute("height","0px"),group.smashDepth&&node.setAttribute("depth","0px"),node}}),defineFunction({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(_ref,args,optArgs){var{parser}=_ref,index=optArgs[0],body=args[0];return{type:"sqrt",mode:parser.mode,body,index}},htmlBuilder(group,options){var inner=buildGroup$1(group.body,options.havingCrampedStyle());0===inner.height&&(inner.height=options.fontMetrics().xHeight),inner=buildCommon.wrapFragment(inner,options);var theta=options.fontMetrics().defaultRuleThickness,phi=theta;options.style.id<Style$1.TEXT.id&&(phi=options.fontMetrics().xHeight);var lineClearance=theta+phi/4,minDelimiterHeight=inner.height+inner.depth+lineClearance+theta,{span:img,ruleWidth,advanceWidth}=delimiter.sqrtImage(minDelimiterHeight,options),delimDepth=img.height-ruleWidth;delimDepth>inner.height+inner.depth+lineClearance&&(lineClearance=(lineClearance+delimDepth-inner.height-inner.depth)/2);var imgShift=img.height-inner.height-lineClearance-ruleWidth;inner.style.paddingLeft=makeEm(advanceWidth);var body=buildCommon.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:inner,wrapperClasses:["svg-align"]},{type:"kern",size:-(inner.height+imgShift)},{type:"elem",elem:img},{type:"kern",size:ruleWidth}]},options);if(group.index){var newOptions=options.havingStyle(Style$1.SCRIPTSCRIPT),rootm=buildGroup$1(group.index,newOptions,options),toShift=.6*(body.height-body.depth),rootVList=buildCommon.makeVList({positionType:"shift",positionData:-toShift,children:[{type:"elem",elem:rootm}]},options),rootVListWrap=buildCommon.makeSpan(["root"],[rootVList]);return buildCommon.makeSpan(["mord","sqrt"],[rootVListWrap,body],options)}return buildCommon.makeSpan(["mord","sqrt"],[body],options)},mathmlBuilder(group,options){var{body,index}=group;return index?new mathMLTree.MathNode("mroot",[buildGroup(body,options),buildGroup(index,options)]):new mathMLTree.MathNode("msqrt",[buildGroup(body,options)])}});var styleMap={display:Style$1.DISPLAY,text:Style$1.TEXT,script:Style$1.SCRIPT,scriptscript:Style$1.SCRIPTSCRIPT};defineFunction({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(_ref,args){var{breakOnTokenText,funcName,parser}=_ref,body=parser.parseExpression(!0,breakOnTokenText),style=funcName.slice(1,funcName.length-5);return{type:"styling",mode:parser.mode,style,body}},htmlBuilder(group,options){var newStyle=styleMap[group.style],newOptions=options.havingStyle(newStyle).withFont("");return sizingGroup(group.body,newOptions,options)},mathmlBuilder(group,options){var newStyle=styleMap[group.style],newOptions=options.havingStyle(newStyle),inner=buildExpression(group.body,newOptions),node=new mathMLTree.MathNode("mstyle",inner),attr={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]}[group.style];return node.setAttribute("scriptlevel",attr[0]),node.setAttribute("displaystyle",attr[1]),node}});defineFunctionBuilders({type:"supsub",htmlBuilder(group,options){var builderDelegate=function htmlBuilderDelegate(group,options){var base=group.base;return base?"op"===base.type?base.limits&&(options.style.size===Style$1.DISPLAY.size||base.alwaysHandleSupSub)?htmlBuilder$2:null:"operatorname"===base.type?base.alwaysHandleSupSub&&(options.style.size===Style$1.DISPLAY.size||base.limits)?htmlBuilder$1:null:"accent"===base.type?utils.isCharacterBox(base.base)?htmlBuilder$a:null:"horizBrace"===base.type&&!group.sub===base.isOver?htmlBuilder$3:null:null}(group,options);if(builderDelegate)return builderDelegate(group,options);var supm,subm,minSupShift,{base:valueBase,sup:valueSup,sub:valueSub}=group,base=buildGroup$1(valueBase,options),metrics=options.fontMetrics(),supShift=0,subShift=0,isCharacterBox=valueBase&&utils.isCharacterBox(valueBase);if(valueSup){var newOptions=options.havingStyle(options.style.sup());supm=buildGroup$1(valueSup,newOptions,options),isCharacterBox||(supShift=base.height-newOptions.fontMetrics().supDrop*newOptions.sizeMultiplier/options.sizeMultiplier)}if(valueSub){var _newOptions=options.havingStyle(options.style.sub());subm=buildGroup$1(valueSub,_newOptions,options),isCharacterBox||(subShift=base.depth+_newOptions.fontMetrics().subDrop*_newOptions.sizeMultiplier/options.sizeMultiplier)}minSupShift=options.style===Style$1.DISPLAY?metrics.sup1:options.style.cramped?metrics.sup3:metrics.sup2;var supsub,multiplier=options.sizeMultiplier,marginRight=makeEm(.5/metrics.ptPerEm/multiplier),marginLeft=null;if(subm){var isOiint=group.base&&"op"===group.base.type&&group.base.name&&("\\oiint"===group.base.name||"\\oiiint"===group.base.name);(base instanceof SymbolNode||isOiint)&&(marginLeft=makeEm(-base.italic))}if(supm&&subm){supShift=Math.max(supShift,minSupShift,supm.depth+.25*metrics.xHeight),subShift=Math.max(subShift,metrics.sub2);var maxWidth=4*metrics.defaultRuleThickness;if(supShift-supm.depth-(subm.height-subShift)<maxWidth){subShift=maxWidth-(supShift-supm.depth)+subm.height;var psi=.8*metrics.xHeight-(supShift-supm.depth);psi>0&&(supShift+=psi,subShift-=psi)}var vlistElem=[{type:"elem",elem:subm,shift:subShift,marginRight,marginLeft},{type:"elem",elem:supm,shift:-supShift,marginRight}];supsub=buildCommon.makeVList({positionType:"individualShift",children:vlistElem},options)}else if(subm){subShift=Math.max(subShift,metrics.sub1,subm.height-.8*metrics.xHeight);var _vlistElem=[{type:"elem",elem:subm,marginLeft,marginRight}];supsub=buildCommon.makeVList({positionType:"shift",positionData:subShift,children:_vlistElem},options)}else{if(!supm)throw new Error("supsub must have either sup or sub.");supShift=Math.max(supShift,minSupShift,supm.depth+.25*metrics.xHeight),supsub=buildCommon.makeVList({positionType:"shift",positionData:-supShift,children:[{type:"elem",elem:supm,marginRight}]},options)}var mclass=getTypeOfDomTree(base,"right")||"mord";return buildCommon.makeSpan([mclass],[base,buildCommon.makeSpan(["msupsub"],[supsub])],options)},mathmlBuilder(group,options){var isOver,isBrace=!1;group.base&&"horizBrace"===group.base.type&&!!group.sup===group.base.isOver&&(isBrace=!0,isOver=group.base.isOver),!group.base||"op"!==group.base.type&&"operatorname"!==group.base.type||(group.base.parentIsSupSub=!0);var nodeType,children=[buildGroup(group.base,options)];if(group.sub&&children.push(buildGroup(group.sub,options)),group.sup&&children.push(buildGroup(group.sup,options)),isBrace)nodeType=isOver?"mover":"munder";else if(group.sub)if(group.sup){var _base2=group.base;nodeType=_base2&&"op"===_base2.type&&_base2.limits&&options.style===Style$1.DISPLAY||_base2&&"operatorname"===_base2.type&&_base2.alwaysHandleSupSub&&(options.style===Style$1.DISPLAY||_base2.limits)?"munderover":"msubsup"}else{var _base=group.base;nodeType=_base&&"op"===_base.type&&_base.limits&&(options.style===Style$1.DISPLAY||_base.alwaysHandleSupSub)||_base&&"operatorname"===_base.type&&_base.alwaysHandleSupSub&&(_base.limits||options.style===Style$1.DISPLAY)?"munder":"msub"}else{var base=group.base;nodeType=base&&"op"===base.type&&base.limits&&(options.style===Style$1.DISPLAY||base.alwaysHandleSupSub)||base&&"operatorname"===base.type&&base.alwaysHandleSupSub&&(base.limits||options.style===Style$1.DISPLAY)?"mover":"msup"}return new mathMLTree.MathNode(nodeType,children)}}),defineFunctionBuilders({type:"atom",htmlBuilder:(group,options)=>buildCommon.mathsym(group.text,group.mode,options,["m"+group.family]),mathmlBuilder(group,options){var node=new mathMLTree.MathNode("mo",[makeText(group.text,group.mode)]);if("bin"===group.family){var variant=getVariant(group,options);"bold-italic"===variant&&node.setAttribute("mathvariant",variant)}else"punct"===group.family?node.setAttribute("separator","true"):"open"!==group.family&&"close"!==group.family||node.setAttribute("stretchy","false");return node}});var defaultVariant={mi:"italic",mn:"normal",mtext:"normal"};defineFunctionBuilders({type:"mathord",htmlBuilder:(group,options)=>buildCommon.makeOrd(group,options,"mathord"),mathmlBuilder(group,options){var node=new mathMLTree.MathNode("mi",[makeText(group.text,group.mode,options)]),variant=getVariant(group,options)||"italic";return variant!==defaultVariant[node.type]&&node.setAttribute("mathvariant",variant),node}}),defineFunctionBuilders({type:"textord",htmlBuilder:(group,options)=>buildCommon.makeOrd(group,options,"textord"),mathmlBuilder(group,options){var node,text=makeText(group.text,group.mode,options),variant=getVariant(group,options)||"normal";return node="text"===group.mode?new mathMLTree.MathNode("mtext",[text]):/[0-9]/.test(group.text)?new mathMLTree.MathNode("mn",[text]):"\\prime"===group.text?new mathMLTree.MathNode("mo",[text]):new mathMLTree.MathNode("mi",[text]),variant!==defaultVariant[node.type]&&node.setAttribute("mathvariant",variant),node}});var cssSpace={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},regularSpace={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};defineFunctionBuilders({type:"spacing",htmlBuilder(group,options){if(regularSpace.hasOwnProperty(group.text)){var className=regularSpace[group.text].className||"";if("text"===group.mode){var ord=buildCommon.makeOrd(group,options,"textord");return ord.classes.push(className),ord}return buildCommon.makeSpan(["mspace",className],[buildCommon.mathsym(group.text,group.mode,options)],options)}if(cssSpace.hasOwnProperty(group.text))return buildCommon.makeSpan(["mspace",cssSpace[group.text]],[],options);throw new ParseError('Unknown type of space "'+group.text+'"')},mathmlBuilder(group,options){if(!regularSpace.hasOwnProperty(group.text)){if(cssSpace.hasOwnProperty(group.text))return new mathMLTree.MathNode("mspace");throw new ParseError('Unknown type of space "'+group.text+'"')}return new mathMLTree.MathNode("mtext",[new mathMLTree.TextNode(" ")])}});var pad=()=>{var padNode=new mathMLTree.MathNode("mtd",[]);return padNode.setAttribute("width","50%"),padNode};defineFunctionBuilders({type:"tag",mathmlBuilder(group,options){var table=new mathMLTree.MathNode("mtable",[new mathMLTree.MathNode("mtr",[pad(),new mathMLTree.MathNode("mtd",[buildExpressionRow(group.body,options)]),pad(),new mathMLTree.MathNode("mtd",[buildExpressionRow(group.tag,options)])])]);return table.setAttribute("width","100%"),table}});var textFontFamilies={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},textFontWeights={"\\textbf":"textbf","\\textmd":"textmd"},textFontShapes={"\\textit":"textit","\\textup":"textup"},optionsWithFont=(group,options)=>{var font=group.font;return font?textFontFamilies[font]?options.withTextFontFamily(textFontFamilies[font]):textFontWeights[font]?options.withTextFontWeight(textFontWeights[font]):"\\emph"===font?"textit"===options.fontShape?options.withTextFontShape("textup"):options.withTextFontShape("textit"):options.withTextFontShape(textFontShapes[font]):options};defineFunction({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(_ref,args){var{parser,funcName}=_ref,body=args[0];return{type:"text",mode:parser.mode,body:ordargument(body),font:funcName}},htmlBuilder(group,options){var newOptions=optionsWithFont(group,options),inner=buildExpression$1(group.body,newOptions,!0);return buildCommon.makeSpan(["mord","text"],inner,newOptions)},mathmlBuilder(group,options){var newOptions=optionsWithFont(group,options);return buildExpressionRow(group.body,newOptions)}}),defineFunction({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(_ref,args){var{parser}=_ref;return{type:"underline",mode:parser.mode,body:args[0]}},htmlBuilder(group,options){var innerGroup=buildGroup$1(group.body,options),line=buildCommon.makeLineSpan("underline-line",options),defaultRuleThickness=options.fontMetrics().defaultRuleThickness,vlist=buildCommon.makeVList({positionType:"top",positionData:innerGroup.height,children:[{type:"kern",size:defaultRuleThickness},{type:"elem",elem:line},{type:"kern",size:3*defaultRuleThickness},{type:"elem",elem:innerGroup}]},options);return buildCommon.makeSpan(["mord","underline"],[vlist],options)},mathmlBuilder(group,options){var operator=new mathMLTree.MathNode("mo",[new mathMLTree.TextNode("‾")]);operator.setAttribute("stretchy","true");var node=new mathMLTree.MathNode("munder",[buildGroup(group.body,options),operator]);return node.setAttribute("accentunder","true"),node}}),defineFunction({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(_ref,args){var{parser}=_ref;return{type:"vcenter",mode:parser.mode,body:args[0]}},htmlBuilder(group,options){var body=buildGroup$1(group.body,options),axisHeight=options.fontMetrics().axisHeight,dy=.5*(body.height-axisHeight-(body.depth+axisHeight));return buildCommon.makeVList({positionType:"shift",positionData:dy,children:[{type:"elem",elem:body}]},options)},mathmlBuilder:(group,options)=>new mathMLTree.MathNode("mpadded",[buildGroup(group.body,options)],["vcenter"])}),defineFunction({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(context,args,optArgs){throw new ParseError("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(group,options){for(var text=makeVerb(group),body=[],newOptions=options.havingStyle(options.style.text()),i=0;i<text.length;i++){var c=text[i];"~"===c&&(c="\\textasciitilde"),body.push(buildCommon.makeSymbol(c,"Typewriter-Regular",group.mode,newOptions,["mord","texttt"]))}return buildCommon.makeSpan(["mord","text"].concat(newOptions.sizingClasses(options)),buildCommon.tryCombineChars(body),newOptions)},mathmlBuilder(group,options){var text=new mathMLTree.TextNode(makeVerb(group)),node=new mathMLTree.MathNode("mtext",[text]);return node.setAttribute("mathvariant","monospace"),node}});var makeVerb=group=>group.body.replace(/ /g,group.star?"␣":" "),functions=_functions,combiningDiacriticalMarksEndRegex=new RegExp("[̀-ͯ]+$");class Lexer{constructor(input,settings){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=input,this.settings=settings,this.tokenRegex=new RegExp("([ \r\n\t]+)|\\\\(\n|[ \r\t]+\n?)[ \r\t]*|([!-\\[\\]-‧-豈-][̀-ͯ]*|[\ud800-\udbff][\udc00-\udfff][̀-ͯ]*|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5|(\\\\[a-zA-Z@]+)[ \r\n\t]*|\\\\[^\ud800-\udfff])","g"),this.catcodes={"%":14,"~":13}}setCatcode(char,code){this.catcodes[char]=code}lex(){var input=this.input,pos=this.tokenRegex.lastIndex;if(pos===input.length)return new Token("EOF",new SourceLocation(this,pos,pos));var match=this.tokenRegex.exec(input);if(null===match||match.index!==pos)throw new ParseError("Unexpected character: '"+input[pos]+"'",new Token(input[pos],new SourceLocation(this,pos,pos+1)));var text=match[6]||match[3]||(match[2]?"\\ ":" ");if(14===this.catcodes[text]){var nlIndex=input.indexOf("\n",this.tokenRegex.lastIndex);return-1===nlIndex?(this.tokenRegex.lastIndex=input.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=nlIndex+1,this.lex()}return new Token(text,new SourceLocation(this,pos,this.tokenRegex.lastIndex))}}class Namespace{constructor(builtins,globalMacros){void 0===builtins&&(builtins={}),void 0===globalMacros&&(globalMacros={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=globalMacros,this.builtins=builtins,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(0===this.undefStack.length)throw new ParseError("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var undefs=this.undefStack.pop();for(var undef in undefs)undefs.hasOwnProperty(undef)&&(null==undefs[undef]?delete this.current[undef]:this.current[undef]=undefs[undef])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(name){return this.current.hasOwnProperty(name)||this.builtins.hasOwnProperty(name)}get(name){return this.current.hasOwnProperty(name)?this.current[name]:this.builtins[name]}set(name,value,global){if(void 0===global&&(global=!1),global){for(var i=0;i<this.undefStack.length;i++)delete this.undefStack[i][name];this.undefStack.length>0&&(this.undefStack[this.undefStack.length-1][name]=value)}else{var top=this.undefStack[this.undefStack.length-1];top&&!top.hasOwnProperty(name)&&(top[name]=this.current[name])}null==value?delete this.current[name]:this.current[name]=value}}var macros=_macros;defineMacro("\\noexpand",(function(context){var t=context.popToken();return context.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}})),defineMacro("\\expandafter",(function(context){var t=context.popToken();return context.expandOnce(!0),{tokens:[t],numArgs:0}})),defineMacro("\\@firstoftwo",(function(context){return{tokens:context.consumeArgs(2)[0],numArgs:0}})),defineMacro("\\@secondoftwo",(function(context){return{tokens:context.consumeArgs(2)[1],numArgs:0}})),defineMacro("\\@ifnextchar",(function(context){var args=context.consumeArgs(3);context.consumeSpaces();var nextToken=context.future();return 1===args[0].length&&args[0][0].text===nextToken.text?{tokens:args[1],numArgs:0}:{tokens:args[2],numArgs:0}})),defineMacro("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),defineMacro("\\TextOrMath",(function(context){var args=context.consumeArgs(2);return"text"===context.mode?{tokens:args[0],numArgs:0}:{tokens:args[1],numArgs:0}}));var digitToNumber={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};defineMacro("\\char",(function(context){var base,token=context.popToken(),number="";if("'"===token.text)base=8,token=context.popToken();else if('"'===token.text)base=16,token=context.popToken();else if("`"===token.text)if("\\"===(token=context.popToken()).text[0])number=token.text.charCodeAt(1);else{if("EOF"===token.text)throw new ParseError("\\char` missing argument");number=token.text.charCodeAt(0)}else base=10;if(base){if(null==(number=digitToNumber[token.text])||number>=base)throw new ParseError("Invalid base-"+base+" digit "+token.text);for(var digit;null!=(digit=digitToNumber[context.future().text])&&digit<base;)number*=base,number+=digit,context.popToken()}return"\\@char{"+number+"}"}));var newcommand=(context,existsOK,nonexistsOK,skipIfExists)=>{var arg=context.consumeArg().tokens;if(1!==arg.length)throw new ParseError("\\newcommand's first argument must be a macro name");var name=arg[0].text,exists=context.isDefined(name);if(exists&&!existsOK)throw new ParseError("\\newcommand{"+name+"} attempting to redefine "+name+"; use \\renewcommand");if(!exists&&!nonexistsOK)throw new ParseError("\\renewcommand{"+name+"} when command "+name+" does not yet exist; use \\newcommand");var numArgs=0;if(1===(arg=context.consumeArg().tokens).length&&"["===arg[0].text){for(var argText="",token=context.expandNextToken();"]"!==token.text&&"EOF"!==token.text;)argText+=token.text,token=context.expandNextToken();if(!argText.match(/^\s*[0-9]+\s*$/))throw new ParseError("Invalid number of arguments: "+argText);numArgs=parseInt(argText),arg=context.consumeArg().tokens}return exists&&skipIfExists||context.macros.set(name,{tokens:arg,numArgs}),""};defineMacro("\\newcommand",(context=>newcommand(context,!1,!0,!1))),defineMacro("\\renewcommand",(context=>newcommand(context,!0,!1,!1))),defineMacro("\\providecommand",(context=>newcommand(context,!0,!0,!0))),defineMacro("\\message",(context=>{var arg=context.consumeArgs(1)[0];return console.log(arg.reverse().map((token=>token.text)).join("")),""})),defineMacro("\\errmessage",(context=>{var arg=context.consumeArgs(1)[0];return console.error(arg.reverse().map((token=>token.text)).join("")),""})),defineMacro("\\show",(context=>{var tok=context.popToken(),name=tok.text;return console.log(tok,context.macros.get(name),functions[name],symbols.math[name],symbols.text[name]),""})),defineMacro("\\bgroup","{"),defineMacro("\\egroup","}"),defineMacro("~","\\nobreakspace"),defineMacro("\\lq","`"),defineMacro("\\rq","'"),defineMacro("\\aa","\\r a"),defineMacro("\\AA","\\r A"),defineMacro("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}"),defineMacro("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"),defineMacro("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}"),defineMacro("ℬ","\\mathscr{B}"),defineMacro("ℰ","\\mathscr{E}"),defineMacro("ℱ","\\mathscr{F}"),defineMacro("ℋ","\\mathscr{H}"),defineMacro("ℐ","\\mathscr{I}"),defineMacro("ℒ","\\mathscr{L}"),defineMacro("ℳ","\\mathscr{M}"),defineMacro("ℛ","\\mathscr{R}"),defineMacro("ℭ","\\mathfrak{C}"),defineMacro("ℌ","\\mathfrak{H}"),defineMacro("ℨ","\\mathfrak{Z}"),defineMacro("\\Bbbk","\\Bbb{k}"),defineMacro("·","\\cdotp"),defineMacro("\\llap","\\mathllap{\\textrm{#1}}"),defineMacro("\\rlap","\\mathrlap{\\textrm{#1}}"),defineMacro("\\clap","\\mathclap{\\textrm{#1}}"),defineMacro("\\mathstrut","\\vphantom{(}"),defineMacro("\\underbar","\\underline{\\text{#1}}"),defineMacro("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'),defineMacro("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}"),defineMacro("\\ne","\\neq"),defineMacro("≠","\\neq"),defineMacro("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`∉}}"),defineMacro("∉","\\notin"),defineMacro("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`≘}}"),defineMacro("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}"),defineMacro("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}"),defineMacro("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`≛}}"),defineMacro("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`≝}}"),defineMacro("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`≞}}"),defineMacro("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}"),defineMacro("⟂","\\perp"),defineMacro("‼","\\mathclose{!\\mkern-0.8mu!}"),defineMacro("∌","\\notni"),defineMacro("⌜","\\ulcorner"),defineMacro("⌝","\\urcorner"),defineMacro("⌞","\\llcorner"),defineMacro("⌟","\\lrcorner"),defineMacro("©","\\copyright"),defineMacro("®","\\textregistered"),defineMacro("️","\\textregistered"),defineMacro("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'),defineMacro("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'),defineMacro("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'),defineMacro("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'),defineMacro("\\vdots","{\\varvdots\\rule{0pt}{15pt}}"),defineMacro("⋮","\\vdots"),defineMacro("\\varGamma","\\mathit{\\Gamma}"),defineMacro("\\varDelta","\\mathit{\\Delta}"),defineMacro("\\varTheta","\\mathit{\\Theta}"),defineMacro("\\varLambda","\\mathit{\\Lambda}"),defineMacro("\\varXi","\\mathit{\\Xi}"),defineMacro("\\varPi","\\mathit{\\Pi}"),defineMacro("\\varSigma","\\mathit{\\Sigma}"),defineMacro("\\varUpsilon","\\mathit{\\Upsilon}"),defineMacro("\\varPhi","\\mathit{\\Phi}"),defineMacro("\\varPsi","\\mathit{\\Psi}"),defineMacro("\\varOmega","\\mathit{\\Omega}"),defineMacro("\\substack","\\begin{subarray}{c}#1\\end{subarray}"),defineMacro("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax"),defineMacro("\\boxed","\\fbox{$\\displaystyle{#1}$}"),defineMacro("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;"),defineMacro("\\implies","\\DOTSB\\;\\Longrightarrow\\;"),defineMacro("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;"),defineMacro("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}"),defineMacro("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");var dotsByToken={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};defineMacro("\\dots",(function(context){var thedots="\\dotso",next=context.expandAfterFuture().text;return next in dotsByToken?thedots=dotsByToken[next]:("\\not"===next.slice(0,4)||next in symbols.math&&utils.contains(["bin","rel"],symbols.math[next].group))&&(thedots="\\dotsb"),thedots}));var spaceAfterDots={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};defineMacro("\\dotso",(function(context){return context.future().text in spaceAfterDots?"\\ldots\\,":"\\ldots"})),defineMacro("\\dotsc",(function(context){var next=context.future().text;return next in spaceAfterDots&&","!==next?"\\ldots\\,":"\\ldots"})),defineMacro("\\cdots",(function(context){return context.future().text in spaceAfterDots?"\\@cdots\\,":"\\@cdots"})),defineMacro("\\dotsb","\\cdots"),defineMacro("\\dotsm","\\cdots"),defineMacro("\\dotsi","\\!\\cdots"),defineMacro("\\dotsx","\\ldots\\,"),defineMacro("\\DOTSI","\\relax"),defineMacro("\\DOTSB","\\relax"),defineMacro("\\DOTSX","\\relax"),defineMacro("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),defineMacro("\\,","\\tmspace+{3mu}{.1667em}"),defineMacro("\\thinspace","\\,"),defineMacro("\\>","\\mskip{4mu}"),defineMacro("\\:","\\tmspace+{4mu}{.2222em}"),defineMacro("\\medspace","\\:"),defineMacro("\\;","\\tmspace+{5mu}{.2777em}"),defineMacro("\\thickspace","\\;"),defineMacro("\\!","\\tmspace-{3mu}{.1667em}"),defineMacro("\\negthinspace","\\!"),defineMacro("\\negmedspace","\\tmspace-{4mu}{.2222em}"),defineMacro("\\negthickspace","\\tmspace-{5mu}{.277em}"),defineMacro("\\enspace","\\kern.5em "),defineMacro("\\enskip","\\hskip.5em\\relax"),defineMacro("\\quad","\\hskip1em\\relax"),defineMacro("\\qquad","\\hskip2em\\relax"),defineMacro("\\tag","\\@ifstar\\tag@literal\\tag@paren"),defineMacro("\\tag@paren","\\tag@literal{({#1})}"),defineMacro("\\tag@literal",(context=>{if(context.macros.get("\\df@tag"))throw new ParseError("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"})),defineMacro("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"),defineMacro("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"),defineMacro("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}"),defineMacro("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"),defineMacro("\\newline","\\\\\\relax"),defineMacro("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var latexRaiseA=makeEm(fontMetricsData["Main-Regular"]["T".charCodeAt(0)][1]-.7*fontMetricsData["Main-Regular"]["A".charCodeAt(0)][1]);defineMacro("\\LaTeX","\\textrm{\\html@mathml{L\\kern-.36em\\raisebox{"+latexRaiseA+"}{\\scriptstyle A}\\kern-.15em\\TeX}{LaTeX}}"),defineMacro("\\KaTeX","\\textrm{\\html@mathml{K\\kern-.17em\\raisebox{"+latexRaiseA+"}{\\scriptstyle A}\\kern-.15em\\TeX}{KaTeX}}"),defineMacro("\\hspace","\\@ifstar\\@hspacer\\@hspace"),defineMacro("\\@hspace","\\hskip #1\\relax"),defineMacro("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax"),defineMacro("\\ordinarycolon",":"),defineMacro("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}"),defineMacro("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'),defineMacro("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'),defineMacro("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'),defineMacro("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'),defineMacro("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'),defineMacro("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'),defineMacro("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'),defineMacro("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'),defineMacro("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'),defineMacro("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'),defineMacro("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'),defineMacro("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'),defineMacro("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'),defineMacro("∷","\\dblcolon"),defineMacro("∹","\\eqcolon"),defineMacro("≔","\\coloneqq"),defineMacro("≕","\\eqqcolon"),defineMacro("⩴","\\Coloneqq"),defineMacro("\\ratio","\\vcentcolon"),defineMacro("\\coloncolon","\\dblcolon"),defineMacro("\\colonequals","\\coloneqq"),defineMacro("\\coloncolonequals","\\Coloneqq"),defineMacro("\\equalscolon","\\eqqcolon"),defineMacro("\\equalscoloncolon","\\Eqqcolon"),defineMacro("\\colonminus","\\coloneq"),defineMacro("\\coloncolonminus","\\Coloneq"),defineMacro("\\minuscolon","\\eqcolon"),defineMacro("\\minuscoloncolon","\\Eqcolon"),defineMacro("\\coloncolonapprox","\\Colonapprox"),defineMacro("\\coloncolonsim","\\Colonsim"),defineMacro("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),defineMacro("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"),defineMacro("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),defineMacro("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"),defineMacro("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}"),defineMacro("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}"),defineMacro("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}"),defineMacro("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}"),defineMacro("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}"),defineMacro("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}"),defineMacro("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}"),defineMacro("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}"),defineMacro("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}"),defineMacro("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}"),defineMacro("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}"),defineMacro("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}"),defineMacro("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}"),defineMacro("\\nleqq","\\html@mathml{\\@nleqq}{≰}"),defineMacro("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}"),defineMacro("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}"),defineMacro("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}"),defineMacro("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}"),defineMacro("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}"),defineMacro("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}"),defineMacro("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}"),defineMacro("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}"),defineMacro("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}"),defineMacro("\\imath","\\html@mathml{\\@imath}{ı}"),defineMacro("\\jmath","\\html@mathml{\\@jmath}{ȷ}"),defineMacro("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`⟦}}"),defineMacro("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`⟧}}"),defineMacro("⟦","\\llbracket"),defineMacro("⟧","\\rrbracket"),defineMacro("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`⦃}}"),defineMacro("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`⦄}}"),defineMacro("⦃","\\lBrace"),defineMacro("⦄","\\rBrace"),defineMacro("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`⦵}}"),defineMacro("⦵","\\minuso"),defineMacro("\\darr","\\downarrow"),defineMacro("\\dArr","\\Downarrow"),defineMacro("\\Darr","\\Downarrow"),defineMacro("\\lang","\\langle"),defineMacro("\\rang","\\rangle"),defineMacro("\\uarr","\\uparrow"),defineMacro("\\uArr","\\Uparrow"),defineMacro("\\Uarr","\\Uparrow"),defineMacro("\\N","\\mathbb{N}"),defineMacro("\\R","\\mathbb{R}"),defineMacro("\\Z","\\mathbb{Z}"),defineMacro("\\alef","\\aleph"),defineMacro("\\alefsym","\\aleph"),defineMacro("\\Alpha","\\mathrm{A}"),defineMacro("\\Beta","\\mathrm{B}"),defineMacro("\\bull","\\bullet"),defineMacro("\\Chi","\\mathrm{X}"),defineMacro("\\clubs","\\clubsuit"),defineMacro("\\cnums","\\mathbb{C}"),defineMacro("\\Complex","\\mathbb{C}"),defineMacro("\\Dagger","\\ddagger"),defineMacro("\\diamonds","\\diamondsuit"),defineMacro("\\empty","\\emptyset"),defineMacro("\\Epsilon","\\mathrm{E}"),defineMacro("\\Eta","\\mathrm{H}"),defineMacro("\\exist","\\exists"),defineMacro("\\harr","\\leftrightarrow"),defineMacro("\\hArr","\\Leftrightarrow"),defineMacro("\\Harr","\\Leftrightarrow"),defineMacro("\\hearts","\\heartsuit"),defineMacro("\\image","\\Im"),defineMacro("\\infin","\\infty"),defineMacro("\\Iota","\\mathrm{I}"),defineMacro("\\isin","\\in"),defineMacro("\\Kappa","\\mathrm{K}"),defineMacro("\\larr","\\leftarrow"),defineMacro("\\lArr","\\Leftarrow"),defineMacro("\\Larr","\\Leftarrow"),defineMacro("\\lrarr","\\leftrightarrow"),defineMacro("\\lrArr","\\Leftrightarrow"),defineMacro("\\Lrarr","\\Leftrightarrow"),defineMacro("\\Mu","\\mathrm{M}"),defineMacro("\\natnums","\\mathbb{N}"),defineMacro("\\Nu","\\mathrm{N}"),defineMacro("\\Omicron","\\mathrm{O}"),defineMacro("\\plusmn","\\pm"),defineMacro("\\rarr","\\rightarrow"),defineMacro("\\rArr","\\Rightarrow"),defineMacro("\\Rarr","\\Rightarrow"),defineMacro("\\real","\\Re"),defineMacro("\\reals","\\mathbb{R}"),defineMacro("\\Reals","\\mathbb{R}"),defineMacro("\\Rho","\\mathrm{P}"),defineMacro("\\sdot","\\cdot"),defineMacro("\\sect","\\S"),defineMacro("\\spades","\\spadesuit"),defineMacro("\\sub","\\subset"),defineMacro("\\sube","\\subseteq"),defineMacro("\\supe","\\supseteq"),defineMacro("\\Tau","\\mathrm{T}"),defineMacro("\\thetasym","\\vartheta"),defineMacro("\\weierp","\\wp"),defineMacro("\\Zeta","\\mathrm{Z}"),defineMacro("\\argmin","\\DOTSB\\operatorname*{arg\\,min}"),defineMacro("\\argmax","\\DOTSB\\operatorname*{arg\\,max}"),defineMacro("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),defineMacro("\\bra","\\mathinner{\\langle{#1}|}"),defineMacro("\\ket","\\mathinner{|{#1}\\rangle}"),defineMacro("\\braket","\\mathinner{\\langle{#1}\\rangle}"),defineMacro("\\Bra","\\left\\langle#1\\right|"),defineMacro("\\Ket","\\left|#1\\right\\rangle");var braketHelper=one=>context=>{var left=context.consumeArg().tokens,middle=context.consumeArg().tokens,middleDouble=context.consumeArg().tokens,right=context.consumeArg().tokens,oldMiddle=context.macros.get("|"),oldMiddleDouble=context.macros.get("\\|");context.macros.beginGroup();var midMacro=double=>context=>{one&&(context.macros.set("|",oldMiddle),middleDouble.length&&context.macros.set("\\|",oldMiddleDouble));var doubled=double;!double&&middleDouble.length&&("|"===context.future().text&&(context.popToken(),doubled=!0));return{tokens:doubled?middleDouble:middle,numArgs:0}};context.macros.set("|",midMacro(!1)),middleDouble.length&&context.macros.set("\\|",midMacro(!0));var arg=context.consumeArg().tokens,expanded=context.expandTokens([...right,...arg,...left]);return context.macros.endGroup(),{tokens:expanded.reverse(),numArgs:0}};defineMacro("\\bra@ket",braketHelper(!1)),defineMacro("\\bra@set",braketHelper(!0)),defineMacro("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"),defineMacro("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"),defineMacro("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"),defineMacro("\\angln","{\\angl n}"),defineMacro("\\blue","\\textcolor{##6495ed}{#1}"),defineMacro("\\orange","\\textcolor{##ffa500}{#1}"),defineMacro("\\pink","\\textcolor{##ff00af}{#1}"),defineMacro("\\red","\\textcolor{##df0030}{#1}"),defineMacro("\\green","\\textcolor{##28ae7b}{#1}"),defineMacro("\\gray","\\textcolor{gray}{#1}"),defineMacro("\\purple","\\textcolor{##9d38bd}{#1}"),defineMacro("\\blueA","\\textcolor{##ccfaff}{#1}"),defineMacro("\\blueB","\\textcolor{##80f6ff}{#1}"),defineMacro("\\blueC","\\textcolor{##63d9ea}{#1}"),defineMacro("\\blueD","\\textcolor{##11accd}{#1}"),defineMacro("\\blueE","\\textcolor{##0c7f99}{#1}"),defineMacro("\\tealA","\\textcolor{##94fff5}{#1}"),defineMacro("\\tealB","\\textcolor{##26edd5}{#1}"),defineMacro("\\tealC","\\textcolor{##01d1c1}{#1}"),defineMacro("\\tealD","\\textcolor{##01a995}{#1}"),defineMacro("\\tealE","\\textcolor{##208170}{#1}"),defineMacro("\\greenA","\\textcolor{##b6ffb0}{#1}"),defineMacro("\\greenB","\\textcolor{##8af281}{#1}"),defineMacro("\\greenC","\\textcolor{##74cf70}{#1}"),defineMacro("\\greenD","\\textcolor{##1fab54}{#1}"),defineMacro("\\greenE","\\textcolor{##0d923f}{#1}"),defineMacro("\\goldA","\\textcolor{##ffd0a9}{#1}"),defineMacro("\\goldB","\\textcolor{##ffbb71}{#1}"),defineMacro("\\goldC","\\textcolor{##ff9c39}{#1}"),defineMacro("\\goldD","\\textcolor{##e07d10}{#1}"),defineMacro("\\goldE","\\textcolor{##a75a05}{#1}"),defineMacro("\\redA","\\textcolor{##fca9a9}{#1}"),defineMacro("\\redB","\\textcolor{##ff8482}{#1}"),defineMacro("\\redC","\\textcolor{##f9685d}{#1}"),defineMacro("\\redD","\\textcolor{##e84d39}{#1}"),defineMacro("\\redE","\\textcolor{##bc2612}{#1}"),defineMacro("\\maroonA","\\textcolor{##ffbde0}{#1}"),defineMacro("\\maroonB","\\textcolor{##ff92c6}{#1}"),defineMacro("\\maroonC","\\textcolor{##ed5fa6}{#1}"),defineMacro("\\maroonD","\\textcolor{##ca337c}{#1}"),defineMacro("\\maroonE","\\textcolor{##9e034e}{#1}"),defineMacro("\\purpleA","\\textcolor{##ddd7ff}{#1}"),defineMacro("\\purpleB","\\textcolor{##c6b9fc}{#1}"),defineMacro("\\purpleC","\\textcolor{##aa87ff}{#1}"),defineMacro("\\purpleD","\\textcolor{##7854ab}{#1}"),defineMacro("\\purpleE","\\textcolor{##543b78}{#1}"),defineMacro("\\mintA","\\textcolor{##f5f9e8}{#1}"),defineMacro("\\mintB","\\textcolor{##edf2df}{#1}"),defineMacro("\\mintC","\\textcolor{##e0e5cc}{#1}"),defineMacro("\\grayA","\\textcolor{##f6f7f7}{#1}"),defineMacro("\\grayB","\\textcolor{##f0f1f2}{#1}"),defineMacro("\\grayC","\\textcolor{##e3e5e6}{#1}"),defineMacro("\\grayD","\\textcolor{##d6d8da}{#1}"),defineMacro("\\grayE","\\textcolor{##babec2}{#1}"),defineMacro("\\grayF","\\textcolor{##888d93}{#1}"),defineMacro("\\grayG","\\textcolor{##626569}{#1}"),defineMacro("\\grayH","\\textcolor{##3b3e40}{#1}"),defineMacro("\\grayI","\\textcolor{##21242c}{#1}"),defineMacro("\\kaBlue","\\textcolor{##314453}{#1}"),defineMacro("\\kaGreen","\\textcolor{##71B307}{#1}");var implicitCommands={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};class MacroExpander{constructor(input,settings,mode){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=settings,this.expansionCount=0,this.feed(input),this.macros=new Namespace(macros,settings.macros),this.mode=mode,this.stack=[]}feed(input){this.lexer=new Lexer(input,this.settings)}switchMode(newMode){this.mode=newMode}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return 0===this.stack.length&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(token){this.stack.push(token)}pushTokens(tokens){this.stack.push(...tokens)}scanArgument(isOptional){var start,end,tokens;if(isOptional){if(this.consumeSpaces(),"["!==this.future().text)return null;start=this.popToken(),({tokens,end}=this.consumeArg(["]"]))}else({tokens,start,end}=this.consumeArg());return this.pushToken(new Token("EOF",end.loc)),this.pushTokens(tokens),start.range(end,"")}consumeSpaces(){for(;;){if(" "!==this.future().text)break;this.stack.pop()}}consumeArg(delims){var tokens=[],isDelimited=delims&&delims.length>0;isDelimited||this.consumeSpaces();var tok,start=this.future(),depth=0,match=0;do{if(tok=this.popToken(),tokens.push(tok),"{"===tok.text)++depth;else if("}"===tok.text){if(-1===--depth)throw new ParseError("Extra }",tok)}else if("EOF"===tok.text)throw new ParseError("Unexpected end of input in a macro argument, expected '"+(delims&&isDelimited?delims[match]:"}")+"'",tok);if(delims&&isDelimited)if((0===depth||1===depth&&"{"===delims[match])&&tok.text===delims[match]){if(++match===delims.length){tokens.splice(-match,match);break}}else match=0}while(0!==depth||isDelimited);return"{"===start.text&&"}"===tokens[tokens.length-1].text&&(tokens.pop(),tokens.shift()),tokens.reverse(),{tokens,start,end:tok}}consumeArgs(numArgs,delimiters){if(delimiters){if(delimiters.length!==numArgs+1)throw new ParseError("The length of delimiters doesn't match the number of args!");for(var delims=delimiters[0],i=0;i<delims.length;i++){var tok=this.popToken();if(delims[i]!==tok.text)throw new ParseError("Use of the macro doesn't match its definition",tok)}}for(var args=[],_i=0;_i<numArgs;_i++)args.push(this.consumeArg(delimiters&&delimiters[_i+1]).tokens);return args}countExpansion(amount){if(this.expansionCount+=amount,this.expansionCount>this.settings.maxExpand)throw new ParseError("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(expandableOnly){var topToken=this.popToken(),name=topToken.text,expansion=topToken.noexpand?null:this._getExpansion(name);if(null==expansion||expandableOnly&&expansion.unexpandable){if(expandableOnly&&null==expansion&&"\\"===name[0]&&!this.isDefined(name))throw new ParseError("Undefined control sequence: "+name);return this.pushToken(topToken),!1}this.countExpansion(1);var tokens=expansion.tokens,args=this.consumeArgs(expansion.numArgs,expansion.delimiters);if(expansion.numArgs)for(var i=(tokens=tokens.slice()).length-1;i>=0;--i){var tok=tokens[i];if("#"===tok.text){if(0===i)throw new ParseError("Incomplete placeholder at end of macro body",tok);if("#"===(tok=tokens[--i]).text)tokens.splice(i+1,1);else{if(!/^[1-9]$/.test(tok.text))throw new ParseError("Not a valid argument number",tok);tokens.splice(i,2,...args[+tok.text-1])}}}return this.pushTokens(tokens),tokens.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(!1===this.expandOnce()){var token=this.stack.pop();return token.treatAsRelax&&(token.text="\\relax"),token}throw new Error}expandMacro(name){return this.macros.has(name)?this.expandTokens([new Token(name)]):void 0}expandTokens(tokens){var output=[],oldStackLength=this.stack.length;for(this.pushTokens(tokens);this.stack.length>oldStackLength;)if(!1===this.expandOnce(!0)){var token=this.stack.pop();token.treatAsRelax&&(token.noexpand=!1,token.treatAsRelax=!1),output.push(token)}return this.countExpansion(output.length),output}expandMacroAsText(name){var tokens=this.expandMacro(name);return tokens?tokens.map((token=>token.text)).join(""):tokens}_getExpansion(name){var definition=this.macros.get(name);if(null==definition)return definition;if(1===name.length){var catcode=this.lexer.catcodes[name];if(null!=catcode&&13!==catcode)return}var expansion="function"==typeof definition?definition(this):definition;if("string"==typeof expansion){var numArgs=0;if(-1!==expansion.indexOf("#"))for(var stripped=expansion.replace(/##/g,"");-1!==stripped.indexOf("#"+(numArgs+1));)++numArgs;for(var bodyLexer=new Lexer(expansion,this.settings),tokens=[],tok=bodyLexer.lex();"EOF"!==tok.text;)tokens.push(tok),tok=bodyLexer.lex();return tokens.reverse(),{tokens,numArgs}}return expansion}isDefined(name){return this.macros.has(name)||functions.hasOwnProperty(name)||symbols.math.hasOwnProperty(name)||symbols.text.hasOwnProperty(name)||implicitCommands.hasOwnProperty(name)}isExpandable(name){var macro=this.macros.get(name);return null!=macro?"string"==typeof macro||"function"==typeof macro||!macro.unexpandable:functions.hasOwnProperty(name)&&!functions[name].primitive}}var unicodeSubRegEx=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,uSubsAndSups=Object.freeze({"₊":"+","₋":"-","₌":"=","₍":"(","₎":")","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9",ₐ:"a",ₑ:"e",ₕ:"h",ᵢ:"i",ⱼ:"j",ₖ:"k",ₗ:"l",ₘ:"m",ₙ:"n",ₒ:"o",ₚ:"p",ᵣ:"r",ₛ:"s",ₜ:"t",ᵤ:"u",ᵥ:"v",ₓ:"x",ᵦ:"β",ᵧ:"γ",ᵨ:"ρ",ᵩ:"ϕ",ᵪ:"χ","⁺":"+","⁻":"-","⁼":"=","⁽":"(","⁾":")","⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9",ᴬ:"A",ᴮ:"B",ᴰ:"D",ᴱ:"E",ᴳ:"G",ᴴ:"H",ᴵ:"I",ᴶ:"J",ᴷ:"K",ᴸ:"L",ᴹ:"M",ᴺ:"N",ᴼ:"O",ᴾ:"P",ᴿ:"R",ᵀ:"T",ᵁ:"U",ⱽ:"V",ᵂ:"W",ᵃ:"a",ᵇ:"b",ᶜ:"c",ᵈ:"d",ᵉ:"e",ᶠ:"f",ᵍ:"g",ʰ:"h",ⁱ:"i",ʲ:"j",ᵏ:"k",ˡ:"l",ᵐ:"m",ⁿ:"n",ᵒ:"o",ᵖ:"p",ʳ:"r",ˢ:"s",ᵗ:"t",ᵘ:"u",ᵛ:"v",ʷ:"w",ˣ:"x",ʸ:"y",ᶻ:"z",ᵝ:"β",ᵞ:"γ",ᵟ:"δ",ᵠ:"ϕ",ᵡ:"χ",ᶿ:"θ"}),unicodeAccents={"́":{text:"\\'",math:"\\acute"},"̀":{text:"\\`",math:"\\grave"},"̈":{text:'\\"',math:"\\ddot"},"̃":{text:"\\~",math:"\\tilde"},"̄":{text:"\\=",math:"\\bar"},"̆":{text:"\\u",math:"\\breve"},"̌":{text:"\\v",math:"\\check"},"̂":{text:"\\^",math:"\\hat"},"̇":{text:"\\.",math:"\\dot"},"̊":{text:"\\r",math:"\\mathring"},"̋":{text:"\\H"},"̧":{text:"\\c"}},unicodeSymbols={á:"á",à:"à",ä:"ä",ǟ:"ǟ",ã:"ã",ā:"ā",ă:"ă",ắ:"ắ",ằ:"ằ",ẵ:"ẵ",ǎ:"ǎ",â:"â",ấ:"ấ",ầ:"ầ",ẫ:"ẫ",ȧ:"ȧ",ǡ:"ǡ",å:"å",ǻ:"ǻ",ḃ:"ḃ",ć:"ć",ḉ:"ḉ",č:"č",ĉ:"ĉ",ċ:"ċ",ç:"ç",ď:"ď",ḋ:"ḋ",ḑ:"ḑ",é:"é",è:"è",ë:"ë",ẽ:"ẽ",ē:"ē",ḗ:"ḗ",ḕ:"ḕ",ĕ:"ĕ",ḝ:"ḝ",ě:"ě",ê:"ê",ế:"ế",ề:"ề",ễ:"ễ",ė:"ė",ȩ:"ȩ",ḟ:"ḟ",ǵ:"ǵ",ḡ:"ḡ",ğ:"ğ",ǧ:"ǧ",ĝ:"ĝ",ġ:"ġ",ģ:"ģ",ḧ:"ḧ",ȟ:"ȟ",ĥ:"ĥ",ḣ:"ḣ",ḩ:"ḩ",í:"í",ì:"ì",ï:"ï",ḯ:"ḯ",ĩ:"ĩ",ī:"ī",ĭ:"ĭ",ǐ:"ǐ",î:"î",ǰ:"ǰ",ĵ:"ĵ",ḱ:"ḱ",ǩ:"ǩ",ķ:"ķ",ĺ:"ĺ",ľ:"ľ",ļ:"ļ",ḿ:"ḿ",ṁ:"ṁ",ń:"ń",ǹ:"ǹ",ñ:"ñ",ň:"ň",ṅ:"ṅ",ņ:"ņ",ó:"ó",ò:"ò",ö:"ö",ȫ:"ȫ",õ:"õ",ṍ:"ṍ",ṏ:"ṏ",ȭ:"ȭ",ō:"ō",ṓ:"ṓ",ṑ:"ṑ",ŏ:"ŏ",ǒ:"ǒ",ô:"ô",ố:"ố",ồ:"ồ",ỗ:"ỗ",ȯ:"ȯ",ȱ:"ȱ",ő:"ő",ṕ:"ṕ",ṗ:"ṗ",ŕ:"ŕ",ř:"ř",ṙ:"ṙ",ŗ:"ŗ",ś:"ś",ṥ:"ṥ",š:"š",ṧ:"ṧ",ŝ:"ŝ",ṡ:"ṡ",ş:"ş",ẗ:"ẗ",ť:"ť",ṫ:"ṫ",ţ:"ţ",ú:"ú",ù:"ù",ü:"ü",ǘ:"ǘ",ǜ:"ǜ",ǖ:"ǖ",ǚ:"ǚ",ũ:"ũ",ṹ:"ṹ",ū:"ū",ṻ:"ṻ",ŭ:"ŭ",ǔ:"ǔ",û:"û",ů:"ů",ű:"ű",ṽ:"ṽ",ẃ:"ẃ",ẁ:"ẁ",ẅ:"ẅ",ŵ:"ŵ",ẇ:"ẇ",ẘ:"ẘ",ẍ:"ẍ",ẋ:"ẋ",ý:"ý",ỳ:"ỳ",ÿ:"ÿ",ỹ:"ỹ",ȳ:"ȳ",ŷ:"ŷ",ẏ:"ẏ",ẙ:"ẙ",ź:"ź",ž:"ž",ẑ:"ẑ",ż:"ż",Á:"Á",À:"À",Ä:"Ä",Ǟ:"Ǟ",Ã:"Ã",Ā:"Ā",Ă:"Ă",Ắ:"Ắ",Ằ:"Ằ",Ẵ:"Ẵ",Ǎ:"Ǎ",Â:"Â",Ấ:"Ấ",Ầ:"Ầ",Ẫ:"Ẫ",Ȧ:"Ȧ",Ǡ:"Ǡ",Å:"Å",Ǻ:"Ǻ",Ḃ:"Ḃ",Ć:"Ć",Ḉ:"Ḉ",Č:"Č",Ĉ:"Ĉ",Ċ:"Ċ",Ç:"Ç",Ď:"Ď",Ḋ:"Ḋ",Ḑ:"Ḑ",É:"É",È:"È",Ë:"Ë",Ẽ:"Ẽ",Ē:"Ē",Ḗ:"Ḗ",Ḕ:"Ḕ",Ĕ:"Ĕ",Ḝ:"Ḝ",Ě:"Ě",Ê:"Ê",Ế:"Ế",Ề:"Ề",Ễ:"Ễ",Ė:"Ė",Ȩ:"Ȩ",Ḟ:"Ḟ",Ǵ:"Ǵ",Ḡ:"Ḡ",Ğ:"Ğ",Ǧ:"Ǧ",Ĝ:"Ĝ",Ġ:"Ġ",Ģ:"Ģ",Ḧ:"Ḧ",Ȟ:"Ȟ",Ĥ:"Ĥ",Ḣ:"Ḣ",Ḩ:"Ḩ",Í:"Í",Ì:"Ì",Ï:"Ï",Ḯ:"Ḯ",Ĩ:"Ĩ",Ī:"Ī",Ĭ:"Ĭ",Ǐ:"Ǐ",Î:"Î",İ:"İ",Ĵ:"Ĵ",Ḱ:"Ḱ",Ǩ:"Ǩ",Ķ:"Ķ",Ĺ:"Ĺ",Ľ:"Ľ",Ļ:"Ļ",Ḿ:"Ḿ",Ṁ:"Ṁ",Ń:"Ń",Ǹ:"Ǹ",Ñ:"Ñ",Ň:"Ň",Ṅ:"Ṅ",Ņ:"Ņ",Ó:"Ó",Ò:"Ò",Ö:"Ö",Ȫ:"Ȫ",Õ:"Õ",Ṍ:"Ṍ",Ṏ:"Ṏ",Ȭ:"Ȭ",Ō:"Ō",Ṓ:"Ṓ",Ṑ:"Ṑ",Ŏ:"Ŏ",Ǒ:"Ǒ",Ô:"Ô",Ố:"Ố",Ồ:"Ồ",Ỗ:"Ỗ",Ȯ:"Ȯ",Ȱ:"Ȱ",Ő:"Ő",Ṕ:"Ṕ",Ṗ:"Ṗ",Ŕ:"Ŕ",Ř:"Ř",Ṙ:"Ṙ",Ŗ:"Ŗ",Ś:"Ś",Ṥ:"Ṥ",Š:"Š",Ṧ:"Ṧ",Ŝ:"Ŝ",Ṡ:"Ṡ",Ş:"Ş",Ť:"Ť",Ṫ:"Ṫ",Ţ:"Ţ",Ú:"Ú",Ù:"Ù",Ü:"Ü",Ǘ:"Ǘ",Ǜ:"Ǜ",Ǖ:"Ǖ",Ǚ:"Ǚ",Ũ:"Ũ",Ṹ:"Ṹ",Ū:"Ū",Ṻ:"Ṻ",Ŭ:"Ŭ",Ǔ:"Ǔ",Û:"Û",Ů:"Ů",Ű:"Ű",Ṽ:"Ṽ",Ẃ:"Ẃ",Ẁ:"Ẁ",Ẅ:"Ẅ",Ŵ:"Ŵ",Ẇ:"Ẇ",Ẍ:"Ẍ",Ẋ:"Ẋ",Ý:"Ý",Ỳ:"Ỳ",Ÿ:"Ÿ",Ỹ:"Ỹ",Ȳ:"Ȳ",Ŷ:"Ŷ",Ẏ:"Ẏ",Ź:"Ź",Ž:"Ž",Ẑ:"Ẑ",Ż:"Ż",ά:"ά",ὰ:"ὰ",ᾱ:"ᾱ",ᾰ:"ᾰ",έ:"έ",ὲ:"ὲ",ή:"ή",ὴ:"ὴ",ί:"ί",ὶ:"ὶ",ϊ:"ϊ",ΐ:"ΐ",ῒ:"ῒ",ῑ:"ῑ",ῐ:"ῐ",ό:"ό",ὸ:"ὸ",ύ:"ύ",ὺ:"ὺ",ϋ:"ϋ",ΰ:"ΰ",ῢ:"ῢ",ῡ:"ῡ",ῠ:"ῠ",ώ:"ώ",ὼ:"ὼ",Ύ:"Ύ",Ὺ:"Ὺ",Ϋ:"Ϋ",Ῡ:"Ῡ",Ῠ:"Ῠ",Ώ:"Ώ",Ὼ:"Ὼ"};class Parser{constructor(input,settings){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new MacroExpander(input,settings,this.mode),this.settings=settings,this.leftrightDepth=0}expect(text,consume){if(void 0===consume&&(consume=!0),this.fetch().text!==text)throw new ParseError("Expected '"+text+"', got '"+this.fetch().text+"'",this.fetch());consume&&this.consume()}consume(){this.nextToken=null}fetch(){return null==this.nextToken&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(newMode){this.mode=newMode,this.gullet.switchMode(newMode)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var parse=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),parse}finally{this.gullet.endGroups()}}subparse(tokens){var oldToken=this.nextToken;this.consume(),this.gullet.pushToken(new Token("}")),this.gullet.pushTokens(tokens);var parse=this.parseExpression(!1);return this.expect("}"),this.nextToken=oldToken,parse}parseExpression(breakOnInfix,breakOnTokenText){for(var body=[];;){"math"===this.mode&&this.consumeSpaces();var lex=this.fetch();if(-1!==Parser.endOfExpression.indexOf(lex.text))break;if(breakOnTokenText&&lex.text===breakOnTokenText)break;if(breakOnInfix&&functions[lex.text]&&functions[lex.text].infix)break;var atom=this.parseAtom(breakOnTokenText);if(!atom)break;"internal"!==atom.type&&body.push(atom)}return"text"===this.mode&&this.formLigatures(body),this.handleInfixNodes(body)}handleInfixNodes(body){for(var funcName,overIndex=-1,i=0;i<body.length;i++)if("infix"===body[i].type){if(-1!==overIndex)throw new ParseError("only one infix operator per group",body[i].token);overIndex=i,funcName=body[i].replaceWith}if(-1!==overIndex&&funcName){var numerNode,denomNode,numerBody=body.slice(0,overIndex),denomBody=body.slice(overIndex+1);return numerNode=1===numerBody.length&&"ordgroup"===numerBody[0].type?numerBody[0]:{type:"ordgroup",mode:this.mode,body:numerBody},denomNode=1===denomBody.length&&"ordgroup"===denomBody[0].type?denomBody[0]:{type:"ordgroup",mode:this.mode,body:denomBody},["\\\\abovefrac"===funcName?this.callFunction(funcName,[numerNode,body[overIndex],denomNode],[]):this.callFunction(funcName,[numerNode,denomNode],[])]}return body}handleSupSubscript(name){var symbolToken=this.fetch(),symbol=symbolToken.text;this.consume(),this.consumeSpaces();var group=this.parseGroup(name);if(!group)throw new ParseError("Expected group after '"+symbol+"'",symbolToken);return group}formatUnsupportedCmd(text){for(var textordArray=[],i=0;i<text.length;i++)textordArray.push({type:"textord",mode:"text",text:text[i]});var textNode={type:"text",mode:this.mode,body:textordArray};return{type:"color",mode:this.mode,color:this.settings.errorColor,body:[textNode]}}parseAtom(breakOnTokenText){var superscript,subscript,base=this.parseGroup("atom",breakOnTokenText);if("text"===this.mode)return base;for(;;){this.consumeSpaces();var lex=this.fetch();if("\\limits"===lex.text||"\\nolimits"===lex.text){if(base&&"op"===base.type){var limits="\\limits"===lex.text;base.limits=limits,base.alwaysHandleSupSub=!0}else{if(!base||"operatorname"!==base.type)throw new ParseError("Limit controls must follow a math operator",lex);base.alwaysHandleSupSub&&(base.limits="\\limits"===lex.text)}this.consume()}else if("^"===lex.text){if(superscript)throw new ParseError("Double superscript",lex);superscript=this.handleSupSubscript("superscript")}else if("_"===lex.text){if(subscript)throw new ParseError("Double subscript",lex);subscript=this.handleSupSubscript("subscript")}else if("'"===lex.text){if(superscript)throw new ParseError("Double superscript",lex);var prime={type:"textord",mode:this.mode,text:"\\prime"},primes=[prime];for(this.consume();"'"===this.fetch().text;)primes.push(prime),this.consume();"^"===this.fetch().text&&primes.push(this.handleSupSubscript("superscript")),superscript={type:"ordgroup",mode:this.mode,body:primes}}else{if(!uSubsAndSups[lex.text])break;var isSub=unicodeSubRegEx.test(lex.text),subsupTokens=[];for(subsupTokens.push(new Token(uSubsAndSups[lex.text])),this.consume();;){var token=this.fetch().text;if(!uSubsAndSups[token])break;if(unicodeSubRegEx.test(token)!==isSub)break;subsupTokens.unshift(new Token(uSubsAndSups[token])),this.consume()}var body=this.subparse(subsupTokens);isSub?subscript={type:"ordgroup",mode:"math",body}:superscript={type:"ordgroup",mode:"math",body}}}return superscript||subscript?{type:"supsub",mode:this.mode,base,sup:superscript,sub:subscript}:base}parseFunction(breakOnTokenText,name){var token=this.fetch(),func=token.text,funcData=functions[func];if(!funcData)return null;if(this.consume(),name&&"atom"!==name&&!funcData.allowedInArgument)throw new ParseError("Got function '"+func+"' with no arguments"+(name?" as "+name:""),token);if("text"===this.mode&&!funcData.allowedInText)throw new ParseError("Can't use function '"+func+"' in text mode",token);if("math"===this.mode&&!1===funcData.allowedInMath)throw new ParseError("Can't use function '"+func+"' in math mode",token);var{args,optArgs}=this.parseArguments(func,funcData);return this.callFunction(func,args,optArgs,token,breakOnTokenText)}callFunction(name,args,optArgs,token,breakOnTokenText){var context={funcName:name,parser:this,token,breakOnTokenText},func=functions[name];if(func&&func.handler)return func.handler(context,args,optArgs);throw new ParseError("No function handler for "+name)}parseArguments(func,funcData){var totalArgs=funcData.numArgs+funcData.numOptionalArgs;if(0===totalArgs)return{args:[],optArgs:[]};for(var args=[],optArgs=[],i=0;i<totalArgs;i++){var argType=funcData.argTypes&&funcData.argTypes[i],isOptional=i<funcData.numOptionalArgs;(funcData.primitive&&null==argType||"sqrt"===funcData.type&&1===i&&null==optArgs[0])&&(argType="primitive");var arg=this.parseGroupOfType("argument to '"+func+"'",argType,isOptional);if(isOptional)optArgs.push(arg);else{if(null==arg)throw new ParseError("Null argument, please report this as a bug");args.push(arg)}}return{args,optArgs}}parseGroupOfType(name,type,optional){switch(type){case"color":return this.parseColorGroup(optional);case"size":return this.parseSizeGroup(optional);case"url":return this.parseUrlGroup(optional);case"math":case"text":return this.parseArgumentGroup(optional,type);case"hbox":var group=this.parseArgumentGroup(optional,"text");return null!=group?{type:"styling",mode:group.mode,body:[group],style:"text"}:null;case"raw":var token=this.parseStringGroup("raw",optional);return null!=token?{type:"raw",mode:"text",string:token.text}:null;case"primitive":if(optional)throw new ParseError("A primitive argument cannot be optional");var _group=this.parseGroup(name);if(null==_group)throw new ParseError("Expected group as "+name,this.fetch());return _group;case"original":case null:case void 0:return this.parseArgumentGroup(optional);default:throw new ParseError("Unknown group type as "+name,this.fetch())}}consumeSpaces(){for(;" "===this.fetch().text;)this.consume()}parseStringGroup(modeName,optional){var argToken=this.gullet.scanArgument(optional);if(null==argToken)return null;for(var nextToken,str="";"EOF"!==(nextToken=this.fetch()).text;)str+=nextToken.text,this.consume();return this.consume(),argToken.text=str,argToken}parseRegexGroup(regex,modeName){for(var nextToken,firstToken=this.fetch(),lastToken=firstToken,str="";"EOF"!==(nextToken=this.fetch()).text&®ex.test(str+nextToken.text);)str+=(lastToken=nextToken).text,this.consume();if(""===str)throw new ParseError("Invalid "+modeName+": '"+firstToken.text+"'",firstToken);return firstToken.range(lastToken,str)}parseColorGroup(optional){var res=this.parseStringGroup("color",optional);if(null==res)return null;var match=/^(#[a-f0-9]{3}|#?[a-f0-9]{6}|[a-z]+)$/i.exec(res.text);if(!match)throw new ParseError("Invalid color: '"+res.text+"'",res);var color=match[0];return/^[0-9a-f]{6}$/i.test(color)&&(color="#"+color),{type:"color-token",mode:this.mode,color}}parseSizeGroup(optional){var res,isBlank=!1;if(this.gullet.consumeSpaces(),!(res=optional||"{"===this.gullet.future().text?this.parseStringGroup("size",optional):this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size")))return null;optional||0!==res.text.length||(res.text="0pt",isBlank=!0);var match=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(res.text);if(!match)throw new ParseError("Invalid size: '"+res.text+"'",res);var data={number:+(match[1]+match[2]),unit:match[3]};if(!validUnit(data))throw new ParseError("Invalid unit: '"+data.unit+"'",res);return{type:"size",mode:this.mode,value:data,isBlank}}parseUrlGroup(optional){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var res=this.parseStringGroup("url",optional);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),null==res)return null;var url=res.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url}}parseArgumentGroup(optional,mode){var argToken=this.gullet.scanArgument(optional);if(null==argToken)return null;var outerMode=this.mode;mode&&this.switchMode(mode),this.gullet.beginGroup();var expression=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var result={type:"ordgroup",mode:this.mode,loc:argToken.loc,body:expression};return mode&&this.switchMode(outerMode),result}parseGroup(name,breakOnTokenText){var result,firstToken=this.fetch(),text=firstToken.text;if("{"===text||"\\begingroup"===text){this.consume();var groupEnd="{"===text?"}":"\\endgroup";this.gullet.beginGroup();var expression=this.parseExpression(!1,groupEnd),lastToken=this.fetch();this.expect(groupEnd),this.gullet.endGroup(),result={type:"ordgroup",mode:this.mode,loc:SourceLocation.range(firstToken,lastToken),body:expression,semisimple:"\\begingroup"===text||void 0}}else if(null==(result=this.parseFunction(breakOnTokenText,name)||this.parseSymbol())&&"\\"===text[0]&&!implicitCommands.hasOwnProperty(text)){if(this.settings.throwOnError)throw new ParseError("Undefined control sequence: "+text,firstToken);result=this.formatUnsupportedCmd(text),this.consume()}return result}formLigatures(group){for(var n=group.length-1,i=0;i<n;++i){var a=group[i],v=a.text;"-"===v&&"-"===group[i+1].text&&(i+1<n&&"-"===group[i+2].text?(group.splice(i,3,{type:"textord",mode:"text",loc:SourceLocation.range(a,group[i+2]),text:"---"}),n-=2):(group.splice(i,2,{type:"textord",mode:"text",loc:SourceLocation.range(a,group[i+1]),text:"--"}),n-=1)),"'"!==v&&"`"!==v||group[i+1].text!==v||(group.splice(i,2,{type:"textord",mode:"text",loc:SourceLocation.range(a,group[i+1]),text:v+v}),n-=1)}}parseSymbol(){var nucleus=this.fetch(),text=nucleus.text;if(/^\\verb[^a-zA-Z]/.test(text)){this.consume();var arg=text.slice(5),star="*"===arg.charAt(0);if(star&&(arg=arg.slice(1)),arg.length<2||arg.charAt(0)!==arg.slice(-1))throw new ParseError("\\verb assertion failed --\n please report what input caused this bug");return{type:"verb",mode:"text",body:arg=arg.slice(1,-1),star}}unicodeSymbols.hasOwnProperty(text[0])&&!symbols[this.mode][text[0]]&&(this.settings.strict&&"math"===this.mode&&this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+text[0]+'" used in math mode',nucleus),text=unicodeSymbols[text[0]]+text.slice(1));var symbol,match=combiningDiacriticalMarksEndRegex.exec(text);if(match&&("i"===(text=text.substring(0,match.index))?text="ı":"j"===text&&(text="ȷ")),symbols[this.mode][text]){this.settings.strict&&"math"===this.mode&&"ÐÞþ".indexOf(text)>=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+text[0]+'" used in math mode',nucleus);var s,group=symbols[this.mode][text].group,loc=SourceLocation.range(nucleus);if(ATOMS.hasOwnProperty(group)){var family=group;s={type:"atom",mode:this.mode,family,loc,text}}else s={type:group,mode:this.mode,loc,text};symbol=s}else{if(!(text.charCodeAt(0)>=128))return null;this.settings.strict&&(supportedCodepoint(text.charCodeAt(0))?"math"===this.mode&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+text[0]+'" used in math mode',nucleus):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+text[0]+'" ('+text.charCodeAt(0)+")",nucleus)),symbol={type:"textord",mode:"text",loc:SourceLocation.range(nucleus),text}}if(this.consume(),match)for(var i=0;i<match[0].length;i++){var accent=match[0][i];if(!unicodeAccents[accent])throw new ParseError("Unknown accent ' "+accent+"'",nucleus);var command=unicodeAccents[accent][this.mode]||unicodeAccents[accent].text;if(!command)throw new ParseError("Accent "+accent+" unsupported in "+this.mode+" mode",nucleus);symbol={type:"accent",mode:this.mode,loc:SourceLocation.range(nucleus),label:command,isStretchy:!1,isShifty:!0,base:symbol}}return symbol}}Parser.endOfExpression=["}","\\endgroup","\\end","\\right","&"];var parseTree=function parseTree(toParse,settings){if(!("string"==typeof toParse||toParse instanceof String))throw new TypeError("KaTeX can only parse string typed expression");var parser=new Parser(toParse,settings);delete parser.gullet.macros.current["\\df@tag"];var tree=parser.parse();if(delete parser.gullet.macros.current["\\current@color"],delete parser.gullet.macros.current["\\color"],parser.gullet.macros.get("\\df@tag")){if(!settings.displayMode)throw new ParseError("\\tag works only in display equations");tree=[{type:"tag",mode:"text",body:tree,tag:parser.subparse([new Token("\\df@tag")])}]}return tree},render=function render(expression,baseNode,options){baseNode.textContent="";var node=renderToDomTree(expression,options).toNode();baseNode.appendChild(node)};"undefined"!=typeof document&&"CSS1Compat"!==document.compatMode&&("undefined"!=typeof console&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),render=function render(){throw new ParseError("KaTeX doesn't work in quirks mode.")});var renderError=function renderError(error,expression,options){if(options.throwOnError||!(error instanceof ParseError))throw error;var node=buildCommon.makeSpan(["katex-error"],[new SymbolNode(expression)]);return node.setAttribute("title",error.toString()),node.setAttribute("style","color:"+options.errorColor),node},renderToDomTree=function renderToDomTree(expression,options){var settings=new Settings(options);try{return function buildTree(tree,expression,settings){var katexNode,options=optionsFromSettings(settings);if("mathml"===settings.output)return buildMathML(tree,expression,options,settings.displayMode,!0);if("html"===settings.output){var htmlNode=buildHTML(tree,options);katexNode=buildCommon.makeSpan(["katex"],[htmlNode])}else{var mathMLNode=buildMathML(tree,expression,options,settings.displayMode,!1),_htmlNode=buildHTML(tree,options);katexNode=buildCommon.makeSpan(["katex"],[mathMLNode,_htmlNode])}return displayWrap(katexNode,settings)}(parseTree(expression,settings),expression,settings)}catch(error){return renderError(error,expression,settings)}},katex={version:"0.16.21",render,renderToString:function renderToString(expression,options){return renderToDomTree(expression,options).toMarkup()},ParseError,SETTINGS_SCHEMA,__parse:function generateParseTree(expression,options){var settings=new Settings(options);return parseTree(expression,settings)},__renderToDomTree:renderToDomTree,__renderToHTMLTree:function renderToHTMLTree(expression,options){var settings=new Settings(options);try{return function buildHTMLTree(tree,expression,settings){var htmlNode=buildHTML(tree,optionsFromSettings(settings)),katexNode=buildCommon.makeSpan(["katex"],[htmlNode]);return displayWrap(katexNode,settings)}(parseTree(expression,settings),0,settings)}catch(error){return renderError(error,expression,settings)}},__setFontMetrics:function setFontMetrics(fontName,metrics){fontMetricsData[fontName]=metrics},__defineSymbol:defineSymbol,__defineFunction:defineFunction,__defineMacro:defineMacro,__domTree:{Span,Anchor,SymbolNode,SvgNode,PathNode,LineNode}}}}]);