From 60a75efd35e018b7305eac661f3eb5259137c770 Mon Sep 17 00:00:00 2001 From: "G. Gibson" Date: Wed, 30 Sep 2026 11:36:58 -0700 Subject: [PATCH] Added MathJax --- Public/www/javascript/vendor/mathjax.min.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 Public/www/javascript/vendor/mathjax.min.js diff --git a/Public/www/javascript/vendor/mathjax.min.js b/Public/www/javascript/vendor/mathjax.min.js new file mode 100644 index 0000000..a430c19 --- /dev/null +++ b/Public/www/javascript/vendor/mathjax.min.js @@ -0,0 +1 @@ +(()=>{var t,e,s={981(t,e){"use strict";function s(t,e){return void 0===e&&(e=Object),e&&"function"==typeof e.getOwnPropertyDescriptors&&(t=e.create(null,e.getOwnPropertyDescriptors(t))),e&&"function"==typeof e.freeze?e.freeze(t):t}function i(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var r=s({allowfullscreen:!0,async:!0,autofocus:!0,autoplay:!0,checked:!0,controls:!0,default:!0,defer:!0,disabled:!0,formnovalidate:!0,hidden:!0,ismap:!0,itemscope:!0,loop:!0,multiple:!0,muted:!0,nomodule:!0,novalidate:!0,open:!0,playsinline:!0,readonly:!0,required:!0,reversed:!0,selected:!0});var n=s({area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});var o=s({script:!1,style:!1,textarea:!0,title:!0});function a(t){return t===l.HTML}var l=s({HTML:"text/html",XML_APPLICATION:"application/xml",XML_TEXT:"text/xml",XML_XHTML_APPLICATION:"application/xhtml+xml",XML_SVG_IMAGE:"image/svg+xml"}),c=Object.keys(l).map(function(t){return l[t]});var h=s({HTML:"http://www.w3.org/1999/xhtml",SVG:"http://www.w3.org/2000/svg",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"});e.assign=function(t,e){if(null===t||"object"!=typeof t)throw new TypeError("target is not an object");for(var s in e)i(e,s)&&(t[s]=e[s]);return t},e.find=function(t,e,s){if(void 0===s&&(s=Array.prototype),t&&"function"==typeof s.find)return s.find.call(t,e);for(var r=0;r-1},e.MIME_TYPE=l,e.NAMESPACE=h},985(t,e,s){"use strict";var i=s(981),r=s(553),n=s(918),o=s(334),a=s(309),l=r.DOMImplementation,c=i.hasDefaultHTMLNamespace,h=i.isHTMLMimeType,d=i.isValidMimeType,u=i.MIME_TYPE,p=i.NAMESPACE,m=n.ParseError,f=a.XMLReader;function g(t){return t.replace(/\r[\n\u0085]/g,"\n").replace(/[\r\u0085\u2028\u2029]/g,"\n")}function b(t){if(void 0===(t=t||{}).locator&&(t.locator=!0),this.assign=t.assign||i.assign,this.domHandler=t.domHandler||E,this.onError=t.onError||t.errorHandler,t.errorHandler&&"function"!=typeof t.errorHandler)throw new TypeError("errorHandler object is no longer supported, switch to onError!");t.errorHandler&&t.errorHandler("warning","The `errorHandler` option has been deprecated, use `onError` instead!",this),this.normalizeLineEndings=t.normalizeLineEndings||g,this.locator=!!t.locator,this.xmlns=this.assign(Object.create(null),t.xmlns)}function E(t){var e=t||{};this.mimeType=e.mimeType||u.XML_APPLICATION,this.defaultNamespace=e.defaultNamespace||null,this.cdata=!1,this.currentElement=void 0,this.doc=void 0,this.locator=void 0,this.onError=e.onError}function x(t,e){e.lineNumber=t.lineNumber,e.columnNumber=t.columnNumber}function y(t,e,s){return"string"==typeof t?t.substr(e,s):t.length>=e+s||e?new java.lang.String(t,e,s)+"":t}function N(t,e){t.currentElement?t.currentElement.appendChild(e):t.doc.appendChild(e)}b.prototype.parseFromString=function(t,e){if(!d(e))throw new TypeError('DOMParser.parseFromString: the provided mimeType "'+e+'" is not valid.');var s=this.assign(Object.create(null),this.xmlns),r=o.XML_ENTITIES,n=s[""]||null;c(e)?(r=o.HTML_ENTITIES,n=p.HTML):e===u.XML_SVG_IMAGE&&(n=p.SVG),s[""]=n,s.xml=s.xml||p.XML;var a=new this.domHandler({mimeType:e,defaultNamespace:n,onError:this.onError}),l=this.locator?{}:void 0;this.locator&&a.setDocumentLocator(l);var h=new f;return h.errorHandler=a,h.domBuilder=a,!i.isHTMLMimeType(e)&&"string"!=typeof t&&h.errorHandler.fatalError("source is not a string"),h.parse(this.normalizeLineEndings(String(t)),s,r),a.doc.documentElement||h.errorHandler.fatalError("missing root element"),a.doc},E.prototype={startDocument:function(){var t=new l;this.doc=h(this.mimeType)?t.createHTMLDocument(!1):t.createDocument(this.defaultNamespace,"")},startElement:function(t,e,s,i){var r=this.doc,n=r.createElementNS(t,s||e),o=i.length;N(this,n),this.currentElement=n,this.locator&&x(this.locator,n);for(var a=0;a=0){var n=e.split(":");s=n[0],r=n[1]}if(null!==s&&null===t)throw new m(m.NAMESPACE_ERR,"prefix is non-null and namespace is null");if("xml"===s&&t!==i.NAMESPACE.XML)throw new m(m.NAMESPACE_ERR,'prefix is "xml" and namespace is not the XML namespace');if(("xmlns"===s||"xmlns"===e)&&t!==i.NAMESPACE.XMLNS)throw new m(m.NAMESPACE_ERR,'either qualifiedName or prefix is "xmlns" and namespace is not the XMLNS namespace');if(t===i.NAMESPACE.XMLNS&&"xmlns"!==s&&"xmlns"!==e)throw new m(m.NAMESPACE_ERR,'namespace is the XMLNS namespace and neither qualifiedName nor prefix is "xmlns"');return[t,s,r]}function T(t,e){for(var s in t)o(t,s)&&(e[s]=t[s])}function C(t,e){var s=t.prototype;if(!(s instanceof e)){function i(){}i.prototype=e.prototype,T(s,i=new i),t.prototype=s=i}s.constructor!=t&&("function"!=typeof t&&console.error("unknown Class:"+t),s.constructor=t)}var A={},L=A.ELEMENT_NODE=1,S=A.ATTRIBUTE_NODE=2,R=A.TEXT_NODE=3,M=A.CDATA_SECTION_NODE=4,I=A.ENTITY_REFERENCE_NODE=5,w=A.ENTITY_NODE=6,k=A.PROCESSING_INSTRUCTION_NODE=7,O=A.COMMENT_NODE=8,D=A.DOCUMENT_NODE=9,P=A.DOCUMENT_TYPE_NODE=10,B=A.DOCUMENT_FRAGMENT_NODE=11,F=A.NOTATION_NODE=12,j=i.freeze({DOCUMENT_POSITION_DISCONNECTED:1,DOCUMENT_POSITION_PRECEDING:2,DOCUMENT_POSITION_FOLLOWING:4,DOCUMENT_POSITION_CONTAINS:8,DOCUMENT_POSITION_CONTAINED_BY:16,DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:32});function _(t,e){if(e.length=0){for(var r=e.length-1;i<=r;)e[i]=e[++i];if(e.length=r,t){var n=t.ownerDocument;n&&tt(n,t,s),s.ownerElement=null}}}function J(){}function K(t){b(t)}function $(t){return("<"==t?"<":">"==t&&">")||"&"==t&&"&"||'"'==t&&"""||"&#"+t.charCodeAt()+";"}function Y(t,e){Q(t,null,{enter:function(t){return!e(t)||Q.STOP}})}function Q(t,e,s){for(var i=[{node:t,context:e,phase:Q.ENTER}];i.length>0;){var r=i.pop();if(r.phase===Q.ENTER){var n=s.enter(r.node,r.context);if(n===Q.STOP)return Q.STOP;if(i.push({node:r.node,context:n,phase:Q.EXIT}),null==n)continue;for(var o=r.node.lastChild;o;)i.push({node:o,context:n,phase:Q.ENTER}),o=o.previousSibling}else s.exit&&s.exit(r.node,r.context)}}function Z(t,e){b(t);var s=e||{};this.ownerDocument=this,this.contentType=s.contentType||h.XML_APPLICATION,this.type=a(this.contentType)?"html":"xml"}function tt(t,e,s,i){t&&t._inc++,s.namespaceURI===d.XMLNS&&delete e._nsMap[s.prefix?s.localName:""]}function et(t,e,s){if(t&&t._inc){t._inc++;var i=e.childNodes;if(s&&!s.nextSibling)i[i.length++]=s;else{for(var r=e.firstChild,n=0;r;)i[n++]=r,r=r.nextSibling;i.length=n,delete i[i.length]}}}function st(t,e){if(t!==e.parentNode)throw new m(m.NOT_FOUND_ERR,"child's parent is not parent");var s=e.previousSibling,i=e.nextSibling;return s?s.nextSibling=i:t.firstChild=i,i?i.previousSibling=s:t.lastChild=s,et(t.ownerDocument,t),e.parentNode=null,e.previousSibling=null,e.nextSibling=null,e}function it(t){return t&&t.nodeType===K.DOCUMENT_TYPE_NODE}function rt(t){return t&&t.nodeType===K.ELEMENT_NODE}function nt(t){return t&&t.nodeType===K.TEXT_NODE}function ot(t,e){var s=t.childNodes||[];if(r(s,rt)||it(e))return!1;var i=r(s,it);return!(e&&i&&s.indexOf(i)>s.indexOf(e))}function at(t,e){var s=t.childNodes||[];if(r(s,function(t){return rt(t)&&t!==e}))return!1;var i=r(s,it);return!(e&&i&&s.indexOf(i)>s.indexOf(e))}function lt(t,e,s){if(!function(t){return t&&(t.nodeType===K.DOCUMENT_NODE||t.nodeType===K.DOCUMENT_FRAGMENT_NODE||t.nodeType===K.ELEMENT_NODE)}(t))throw new m(m.HIERARCHY_REQUEST_ERR,"Unexpected parent node type "+t.nodeType);if(s&&s.parentNode!==t)throw new m(m.NOT_FOUND_ERR,"child not in parent");if(!function(t){return t&&(t.nodeType===K.CDATA_SECTION_NODE||t.nodeType===K.COMMENT_NODE||t.nodeType===K.DOCUMENT_FRAGMENT_NODE||t.nodeType===K.DOCUMENT_TYPE_NODE||t.nodeType===K.ELEMENT_NODE||t.nodeType===K.PROCESSING_INSTRUCTION_NODE||t.nodeType===K.TEXT_NODE)}(e)||it(e)&&t.nodeType!==K.DOCUMENT_NODE)throw new m(m.HIERARCHY_REQUEST_ERR,"Unexpected node type "+e.nodeType+" for parent node type "+t.nodeType)}function ct(t,e,s){var i=t.childNodes||[],n=e.childNodes||[];if(e.nodeType===K.DOCUMENT_FRAGMENT_NODE){var o=n.filter(rt);if(o.length>1||r(n,nt))throw new m(m.HIERARCHY_REQUEST_ERR,"More than one element or text in fragment");if(1===o.length&&!ot(t,s))throw new m(m.HIERARCHY_REQUEST_ERR,"Element in fragment can not be inserted before doctype")}if(rt(e)&&!ot(t,s))throw new m(m.HIERARCHY_REQUEST_ERR,"Only one element can be added and only after doctype");if(it(e)){if(r(i,it))throw new m(m.HIERARCHY_REQUEST_ERR,"Only one doctype is allowed");var a=r(i,rt);if(s&&i.indexOf(a)1||r(n,nt))throw new m(m.HIERARCHY_REQUEST_ERR,"More than one element or text in fragment");if(1===o.length&&!at(t,s))throw new m(m.HIERARCHY_REQUEST_ERR,"Element in fragment can not be inserted before doctype")}if(rt(e)&&!at(t,s))throw new m(m.HIERARCHY_REQUEST_ERR,"Only one element can be added and only after doctype");if(it(e)){function l(t){return it(t)&&t!==s}if(r(i,l))throw new m(m.HIERARCHY_REQUEST_ERR,"Only one doctype is allowed");var a=r(i,rt);if(s&&i.indexOf(a)=0;N--){if(""===(v=h[N]).prefix&&v.namespace===t.namespaceURI){x=v.namespace;break}}if(x!==t.namespaceURI)for(N=h.length-1;N>=0;N--){var v;if((v=h[N]).namespace===t.namespaceURI){v.prefix&&(E=v.prefix+":"+b);break}}}e.push("<",E);for(var T=h.slice(),C=0;C"),null;if(e.push(">"),a&&l(b)){for(var H=t.firstChild;H;)H.data?e.push(H.data):Rt(H,e,T.slice(),i),H=H.nextSibling;return e.push(""),null}return{ns:T,tag:E};case D:case B:if(n&&t.nodeType===D&&null==t.documentElement)throw new m("The Document has no documentElement",f.InvalidStateError);return{ns:h};case S:return St(e,t.name,t.value),null;case R:if(n&&g.InvalidChar.test(t.data))throw new m("The Text node data contains characters outside the XML Char production",f.InvalidStateError);return e.push(t.data.replace(/[<&>]/g,$)),null;case M:if(n&&-1!==t.data.indexOf("]]>"))throw new m('The CDATASection data contains "]]>"',f.InvalidStateError);return o?e.push(g.CDATA_START,t.data.replace(/]]>/g,"]]]]>"),g.CDATA_END):e.push(g.CDATA_START,t.data,g.CDATA_END),null;case O:if(n){if(g.InvalidChar.test(t.data))throw new m("The comment node data contains characters outside the XML Char production",f.InvalidStateError);if(-1!==t.data.indexOf("--")||"-"===t.data[t.data.length-1])throw new m('The comment node data contains "--" or ends with "-"',f.InvalidStateError)}return e.push(g.COMMENT_START,t.data,g.COMMENT_END),null;case P:var W=t.publicId,z=t.systemId;if(n){if(W&&!g.PubidLiteral_match.test(W))throw new m("DocumentType publicId is not a valid PubidLiteral",f.InvalidStateError);if(z&&"."!==z&&!g.SystemLiteral_match.test(z))throw new m("DocumentType systemId is not a valid SystemLiteral",f.InvalidStateError);if(t.internalSubset&&-1!==t.internalSubset.indexOf("]>"))throw new m('DocumentType internalSubset contains "]>"',f.InvalidStateError)}return e.push(g.DOCTYPE_DECL_START," ",t.name),W?(e.push(" ",g.PUBLIC," ",W),z&&"."!==z&&e.push(" ",z)):z&&"."!==z&&e.push(" ",g.SYSTEM," ",z),t.internalSubset&&e.push(" [",t.internalSubset,"]"),e.push(">"),null;case k:if(n){if(-1!==t.target.indexOf(":")||"xml"===t.target.toLowerCase())throw new m("The ProcessingInstruction target is not well-formed",f.InvalidStateError);if(g.InvalidChar.test(t.data))throw new m("The ProcessingInstruction data contains characters outside the XML Char production",f.InvalidStateError);if(-1!==t.data.indexOf("?>"))throw new m('The ProcessingInstruction data contains "?>"',f.InvalidStateError)}return e.push(""),null;case I:return e.push("&",t.nodeName,";"),null;default:return e.push("??",t.nodeName),null}},exit:function(t,s){s&&s.tag&&e.push("")}})}function Mt(t,e,s){var i;return Q(e,null,{enter:function(e,r){var n=new e.constructor(u);for(var a in e)if(o(e,a)){var l=e[a];"object"!=typeof l&&l!=n[a]&&(n[a]=l)}e.childNodes&&(n.childNodes=new H),n.ownerDocument=t;var c=s;switch(n.nodeType){case L:var h=e.attributes,d=n.attributes=new q,p=h.length;d._ownerElement=n;for(var m=0;m=0&&t0;){var s=e.pop(),i=s.node,r=s.other;if(i.nodeType!==r.nodeType)return!1;switch(i.nodeType){case i.DOCUMENT_TYPE_NODE:if(i.name!==r.name)return!1;if(i.publicId!==r.publicId)return!1;if(i.systemId!==r.systemId)return!1;break;case i.ELEMENT_NODE:if(i.namespaceURI!==r.namespaceURI)return!1;if(i.prefix!==r.prefix)return!1;if(i.localName!==r.localName)return!1;if(i.attributes.length!==r.attributes.length)return!1;for(var n=0;n=0;n--)e.push({node:i.childNodes[n],other:r.childNodes[n]})}return!0},isSameNode:function(t){return this===t},insertBefore:function(t,e){return dt(this,t,e)},replaceChild:function(t,e){dt(this,t,e,ht),e&&this.removeChild(e)},removeChild:function(t){return st(this,t)},appendChild:function(t){return this.insertBefore(t,null)},hasChildNodes:function(){return null!=this.firstChild},cloneNode:function(t){return Mt(this.ownerDocument||this,this,t)},normalize:function(){Q(this,null,{enter:function(t){for(var e=t.firstChild;e;){var s=e.nextSibling;null!==s&&s.nodeType===R&&e.nodeType===R?(t.removeChild(s),e.appendData(s.data)):e=s}return!0}})},isSupported:function(t,e){return this.ownerDocument.implementation.hasFeature(t,e)},lookupPrefix:function(t){for(var e=this;e;){var s=e._nsMap;if(s)for(var i in s)if(o(s,i)&&s[i]===t)return i;e=e.nodeType==S?e.ownerDocument:e.parentNode}return null},lookupNamespaceURI:function(t){for(var e=this;e;){var s=e._nsMap;if(s&&o(s,t))return s[t];e=e.nodeType==S?e.ownerDocument:e.parentNode}return null},isDefaultNamespace:function(t){return null==this.lookupPrefix(t)},compareDocumentPosition:function(t){if(this===t)return 0;var e=t,s=this,i=null,r=null;if(e instanceof pt&&(e=(i=e).ownerElement),s instanceof pt&&(s=(r=s).ownerElement,i&&e&&s===e))for(var n,o=0;n=s.attributes[o];o++){if(n===i)return j.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC+j.DOCUMENT_POSITION_PRECEDING;if(n===r)return j.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC+j.DOCUMENT_POSITION_FOLLOWING}if(!e||!s||s.ownerDocument!==e.ownerDocument)return j.DOCUMENT_POSITION_DISCONNECTED+j.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC+(U(s.ownerDocument)>U(e.ownerDocument)?j.DOCUMENT_POSITION_FOLLOWING:j.DOCUMENT_POSITION_PRECEDING);if(r&&e===s)return j.DOCUMENT_POSITION_CONTAINS+j.DOCUMENT_POSITION_PRECEDING;if(i&&e===s)return j.DOCUMENT_POSITION_CONTAINED_BY+j.DOCUMENT_POSITION_FOLLOWING;for(var a=[],l=e.parentNode;l;){if(!r&&l===s)return j.DOCUMENT_POSITION_CONTAINED_BY+j.DOCUMENT_POSITION_FOLLOWING;a.push(l),l=l.parentNode}a.reverse();for(var c=[],h=s.parentNode;h;){if(!i&&h===e)return j.DOCUMENT_POSITION_CONTAINS+j.DOCUMENT_POSITION_PRECEDING;c.push(h),h=h.parentNode}c.reverse();var d=_(a,c);for(var u in d.childNodes){var p=d.childNodes[u];if(p===s)return j.DOCUMENT_POSITION_FOLLOWING;if(p===e)return j.DOCUMENT_POSITION_PRECEDING;if(c.indexOf(p)>=0)return j.DOCUMENT_POSITION_FOLLOWING;if(a.indexOf(p)>=0)return j.DOCUMENT_POSITION_PRECEDING}return 0}},T(A,K),T(A,K.prototype),T(j,K),T(j,K.prototype),Q.STOP=Symbol("walkDOM.STOP"),Q.ENTER=0,Q.EXIT=1,Z.prototype={implementation:null,nodeName:"#document",nodeType:D,doctype:null,documentElement:null,_inc:1,insertBefore:function(t,e){if(t.nodeType===B){for(var s=t.firstChild;s;){var i=s.nextSibling;this.insertBefore(s,e),s=i}return t}return dt(this,t,e),t.ownerDocument=this,null===this.documentElement&&t.nodeType===L&&(this.documentElement=t),t},removeChild:function(t){var e=st(this,t);return e===this.documentElement&&(this.documentElement=null),e},replaceChild:function(t,e){dt(this,t,e,ht),t.ownerDocument=this,e&&this.removeChild(e),rt(t)&&(this.documentElement=t)},importNode:function(t,e){return function(t,e,s){var i;return Q(e,null,{enter:function(e,r){var n=e.cloneNode(!1);return n.ownerDocument=t,n.parentNode=null,null===r?i=n:r.appendChild(n),e.nodeType===S||s?n:null}}),i}(this,t,e)},getElementById:function(t){var e=null;return Y(this.documentElement,function(s){if(s.nodeType==L&&s.getAttribute("id")==t)return e=s,!0}),e},createElement:function(t){var e=new ut(u);return e.ownerDocument=this,"html"===this.type&&(t=t.toLowerCase()),n(this.contentType)&&(e.namespaceURI=d.HTML),e.nodeName=t,e.tagName=t,e.localName=t,e.childNodes=new H,(e.attributes=new q)._ownerElement=e,e},createDocumentFragment:function(){var t=new vt(u);return t.ownerDocument=this,t.childNodes=new H,t},createTextNode:function(t){var e=new ft(u);return e.ownerDocument=this,e.childNodes=new H,e.appendData(t),e},createComment:function(t){var e=new gt(u);return e.ownerDocument=this,e.childNodes=new H,e.appendData(t),e},createCDATASection:function(t){if(-1!==t.indexOf("]]>"))throw new m(m.INVALID_CHARACTER_ERR,'data contains "]]>"');var e=new bt(u);return e.ownerDocument=this,e.childNodes=new H,e.appendData(t),e},createProcessingInstruction:function(t,e){var s=new Tt(u);return s.ownerDocument=this,s.childNodes=new H,s.nodeName=s.target=t,s.nodeValue=s.data=e,s},createAttribute:function(t){if(!g.QName_exact.test(t))throw new m(m.INVALID_CHARACTER_ERR,'invalid character in name "'+t+'"');return"html"===this.type&&(t=t.toLowerCase()),this._createAttribute(t)},_createAttribute:function(t){var e=new pt(u);return e.ownerDocument=this,e.childNodes=new H,e.name=t,e.nodeName=t,e.localName=t,e.specified=!0,e},createEntityReference:function(t){if(!g.Name.test(t))throw new m(m.INVALID_CHARACTER_ERR,'not a valid xml name "'+t+'"');if("html"===this.type)throw new m("document is an html document",f.NotSupportedError);var e=new Nt(u);return e.ownerDocument=this,e.childNodes=new H,e.nodeName=t,e},createElementNS:function(t,e){var s=v(t,e),i=new ut(u),r=i.attributes=new q;return i.childNodes=new H,i.ownerDocument=this,i.nodeName=e,i.tagName=e,i.namespaceURI=s[0],i.prefix=s[1],i.localName=s[2],r._ownerElement=i,i},createAttributeNS:function(t,e){var s=v(t,e),i=new pt(u);return i.ownerDocument=this,i.childNodes=new H,i.nodeName=e,i.name=e,i.specified=!0,i.namespaceURI=s[0],i.prefix=s[1],i.localName=s[2],i}},C(Z,K),ut.prototype={nodeType:L,attributes:null,getQualifiedName:function(){return this.prefix?this.prefix+":"+this.localName:this.localName},_isInHTMLDocumentAndNamespace:function(){return"html"===this.ownerDocument.type&&this.namespaceURI===d.HTML},hasAttributes:function(){return!(!this.attributes||!this.attributes.length)},hasAttribute:function(t){return!!this.getAttributeNode(t)},getAttribute:function(t){var e=this.getAttributeNode(t);return e?e.value:null},getAttributeNode:function(t){return this._isInHTMLDocumentAndNamespace()&&(t=t.toLowerCase()),this.attributes.getNamedItem(t)},setAttribute:function(t,e){this._isInHTMLDocumentAndNamespace()&&(t=t.toLowerCase());var s=this.getAttributeNode(t);s?s.value=s.nodeValue=""+e:((s=this.ownerDocument._createAttribute(t)).value=s.nodeValue=""+e,this.setAttributeNode(s))},removeAttribute:function(t){var e=this.getAttributeNode(t);e&&this.removeAttributeNode(e)},setAttributeNode:function(t){return this.attributes.setNamedItem(t)},setAttributeNodeNS:function(t){return this.attributes.setNamedItemNS(t)},removeAttributeNode:function(t){return this.attributes.removeNamedItem(t.nodeName)},removeAttributeNS:function(t,e){var s=this.getAttributeNodeNS(t,e);s&&this.removeAttributeNode(s)},hasAttributeNS:function(t,e){return null!=this.getAttributeNodeNS(t,e)},getAttributeNS:function(t,e){var s=this.getAttributeNodeNS(t,e);return s?s.value:null},setAttributeNS:function(t,e,s){var i=v(t,e)[2],r=this.getAttributeNodeNS(t,i);r?r.value=r.nodeValue=""+s:((r=this.ownerDocument.createAttributeNS(t,e)).value=r.nodeValue=""+s,this.setAttributeNode(r))},getAttributeNodeNS:function(t,e){return this.attributes.getNamedItemNS(t,e)},getElementsByClassName:function(t){var e=y(t);return new W(this,function(s){var i=[];return e.length>0&&Y(s,function(r){if(r!==s&&r.nodeType===L){var n=r.getAttribute("class");if(n){var o=t===n;if(!o){var a=y(n);o=e.every((l=a,function(t){return l&&-1!==l.indexOf(t)}))}o&&i.push(r)}}var l}),i})},getElementsByTagName:function(t){var e="html"===(this.nodeType===D?this:this.ownerDocument).type,s=t.toLowerCase();return new W(this,function(i){var r=[];return Y(i,function(n){n!==i&&n.nodeType===L&&(("*"===t||n.getQualifiedName()===(e&&n.namespaceURI===d.HTML?s:t))&&r.push(n))}),r})},getElementsByTagNameNS:function(t,e){return new W(this,function(s){var i=[];return Y(s,function(r){r===s||r.nodeType!==L||"*"!==t&&r.namespaceURI!==t||"*"!==e&&r.localName!=e||i.push(r)}),i})}},Z.prototype.getElementsByClassName=ut.prototype.getElementsByClassName,Z.prototype.getElementsByTagName=ut.prototype.getElementsByTagName,Z.prototype.getElementsByTagNameNS=ut.prototype.getElementsByTagNameNS,C(ut,K),pt.prototype.nodeType=S,C(pt,K),mt.prototype={data:"",substringData:function(t,e){return this.data.substring(t,t+e)},appendData:function(t){t=this.data+t,this.nodeValue=this.data=t,this.length=t.length},insertData:function(t,e){this.replaceData(t,0,e)},deleteData:function(t,e){this.replaceData(t,e,"")},replaceData:function(t,e,s){s=this.data.substring(0,t)+s+this.data.substring(t+e),this.nodeValue=this.data=s,this.length=s.length}},C(mt,K),ft.prototype={nodeName:"#text",nodeType:R,splitText:function(t){var e=this.data,s=e.substring(t);e=e.substring(0,t),this.data=this.nodeValue=e,this.length=e.length;var i=this.ownerDocument.createTextNode(s);return this.parentNode&&this.parentNode.insertBefore(i,this.nextSibling),i}},C(ft,mt),gt.prototype={nodeName:"#comment",nodeType:O},C(gt,mt),bt.prototype={nodeName:"#cdata-section",nodeType:M},C(bt,ft),Et.prototype.nodeType=P,C(Et,K),xt.prototype.nodeType=F,C(xt,K),yt.prototype.nodeType=w,C(yt,K),Nt.prototype.nodeType=I,C(Nt,K),vt.prototype.nodeName="#document-fragment",vt.prototype.nodeType=B,C(vt,K),Tt.prototype.nodeType=k,C(Tt,mt),Ct.prototype.serializeToString=function(t,e){return At.call(t,e)},K.prototype.toString=At;try{Object.defineProperty&&(Object.defineProperty(W.prototype,"length",{get:function(){return z(this),this.$$length}}),Object.defineProperty(K.prototype,"textContent",{get:function(){if(this.nodeType===L||this.nodeType===B){var t=[];return Q(this,null,{enter:function(e){return e.nodeType===L||e.nodeType===B||(e.nodeType===k||e.nodeType===O?null:void t.push(e.nodeValue))}}),t.join("")}return this.nodeValue},set:function(t){switch(this.nodeType){case L:case B:for(;this.firstChild;)this.removeChild(this.firstChild);(t||String(t))&&this.appendChild(this.ownerDocument.createTextNode(t));break;default:this.data=t,this.value=t,this.nodeValue=t}}}),Object.defineProperty(ut.prototype,"children",{get:function(){return new W(this,wt)}}),Object.defineProperty(Z.prototype,"children",{get:function(){return new W(this,wt)}}),Object.defineProperty(vt.prototype,"children",{get:function(){return new W(this,wt)}}),It=function(t,e,s){t["$$"+e]=s})}catch(t){}e._updateLiveList=z,e.Attr=pt,e.CDATASection=bt,e.CharacterData=mt,e.Comment=gt,e.Document=Z,e.DocumentFragment=vt,e.DocumentType=Et,e.DOMImplementation=J,e.Element=ut,e.Entity=yt,e.EntityReference=Nt,e.LiveNodeList=W,e.NamedNodeMap=q,e.Node=K,e.NodeList=H,e.Notation=xt,e.Text=ft,e.ProcessingInstruction=Tt,e.walkDOM=Q,e.XMLSerializer=Ct},334(t,e,s){"use strict";var i=s(981).freeze;e.XML_ENTITIES=i({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}),e.HTML_ENTITIES=i({Aacute:"\xc1",aacute:"\xe1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223e",acd:"\u223f",acE:"\u223e\u0333",Acirc:"\xc2",acirc:"\xe2",acute:"\xb4",Acy:"\u0410",acy:"\u0430",AElig:"\xc6",aelig:"\xe6",af:"\u2061",Afr:"\u{1d504}",afr:"\u{1d51e}",Agrave:"\xc0",agrave:"\xe0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03b1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2a3f",AMP:"&",amp:"&",And:"\u2a53",and:"\u2227",andand:"\u2a55",andd:"\u2a5c",andslope:"\u2a58",andv:"\u2a5a",ang:"\u2220",ange:"\u29a4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29a8",angmsdab:"\u29a9",angmsdac:"\u29aa",angmsdad:"\u29ab",angmsdae:"\u29ac",angmsdaf:"\u29ad",angmsdag:"\u29ae",angmsdah:"\u29af",angrt:"\u221f",angrtvb:"\u22be",angrtvbd:"\u299d",angsph:"\u2222",angst:"\xc5",angzarr:"\u237c",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1d538}",aopf:"\u{1d552}",ap:"\u2248",apacir:"\u2a6f",apE:"\u2a70",ape:"\u224a",apid:"\u224b",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224a",Aring:"\xc5",aring:"\xe5",Ascr:"\u{1d49c}",ascr:"\u{1d4b6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224d",Atilde:"\xc3",atilde:"\xe3",Auml:"\xc4",auml:"\xe4",awconint:"\u2233",awint:"\u2a11",backcong:"\u224c",backepsilon:"\u03f6",backprime:"\u2035",backsim:"\u223d",backsimeq:"\u22cd",Backslash:"\u2216",Barv:"\u2ae7",barvee:"\u22bd",Barwed:"\u2306",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23b5",bbrktbrk:"\u23b6",bcong:"\u224c",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201e",becaus:"\u2235",Because:"\u2235",because:"\u2235",bemptyv:"\u29b0",bepsi:"\u03f6",bernou:"\u212c",Bernoullis:"\u212c",Beta:"\u0392",beta:"\u03b2",beth:"\u2136",between:"\u226c",Bfr:"\u{1d505}",bfr:"\u{1d51f}",bigcap:"\u22c2",bigcirc:"\u25ef",bigcup:"\u22c3",bigodot:"\u2a00",bigoplus:"\u2a01",bigotimes:"\u2a02",bigsqcup:"\u2a06",bigstar:"\u2605",bigtriangledown:"\u25bd",bigtriangleup:"\u25b3",biguplus:"\u2a04",bigvee:"\u22c1",bigwedge:"\u22c0",bkarow:"\u290d",blacklozenge:"\u29eb",blacksquare:"\u25aa",blacktriangle:"\u25b4",blacktriangledown:"\u25be",blacktriangleleft:"\u25c2",blacktriangleright:"\u25b8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20e5",bnequiv:"\u2261\u20e5",bNot:"\u2aed",bnot:"\u2310",Bopf:"\u{1d539}",bopf:"\u{1d553}",bot:"\u22a5",bottom:"\u22a5",bowtie:"\u22c8",boxbox:"\u29c9",boxDL:"\u2557",boxDl:"\u2556",boxdL:"\u2555",boxdl:"\u2510",boxDR:"\u2554",boxDr:"\u2553",boxdR:"\u2552",boxdr:"\u250c",boxH:"\u2550",boxh:"\u2500",boxHD:"\u2566",boxHd:"\u2564",boxhD:"\u2565",boxhd:"\u252c",boxHU:"\u2569",boxHu:"\u2567",boxhU:"\u2568",boxhu:"\u2534",boxminus:"\u229f",boxplus:"\u229e",boxtimes:"\u22a0",boxUL:"\u255d",boxUl:"\u255c",boxuL:"\u255b",boxul:"\u2518",boxUR:"\u255a",boxUr:"\u2559",boxuR:"\u2558",boxur:"\u2514",boxV:"\u2551",boxv:"\u2502",boxVH:"\u256c",boxVh:"\u256b",boxvH:"\u256a",boxvh:"\u253c",boxVL:"\u2563",boxVl:"\u2562",boxvL:"\u2561",boxvl:"\u2524",boxVR:"\u2560",boxVr:"\u255f",boxvR:"\u255e",boxvr:"\u251c",bprime:"\u2035",Breve:"\u02d8",breve:"\u02d8",brvbar:"\xa6",Bscr:"\u212c",bscr:"\u{1d4b7}",bsemi:"\u204f",bsim:"\u223d",bsime:"\u22cd",bsol:"\\",bsolb:"\u29c5",bsolhsub:"\u27c8",bull:"\u2022",bullet:"\u2022",bump:"\u224e",bumpE:"\u2aae",bumpe:"\u224f",Bumpeq:"\u224e",bumpeq:"\u224f",Cacute:"\u0106",cacute:"\u0107",Cap:"\u22d2",cap:"\u2229",capand:"\u2a44",capbrcup:"\u2a49",capcap:"\u2a4b",capcup:"\u2a47",capdot:"\u2a40",CapitalDifferentialD:"\u2145",caps:"\u2229\ufe00",caret:"\u2041",caron:"\u02c7",Cayleys:"\u212d",ccaps:"\u2a4d",Ccaron:"\u010c",ccaron:"\u010d",Ccedil:"\xc7",ccedil:"\xe7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2a4c",ccupssm:"\u2a50",Cdot:"\u010a",cdot:"\u010b",cedil:"\xb8",Cedilla:"\xb8",cemptyv:"\u29b2",cent:"\xa2",CenterDot:"\xb7",centerdot:"\xb7",Cfr:"\u212d",cfr:"\u{1d520}",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03a7",chi:"\u03c7",cir:"\u25cb",circ:"\u02c6",circeq:"\u2257",circlearrowleft:"\u21ba",circlearrowright:"\u21bb",circledast:"\u229b",circledcirc:"\u229a",circleddash:"\u229d",CircleDot:"\u2299",circledR:"\xae",circledS:"\u24c8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cirE:"\u29c3",cire:"\u2257",cirfnint:"\u2a10",cirmid:"\u2aef",cirscir:"\u29c2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201d",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",Colon:"\u2237",colon:":",Colone:"\u2a74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2a6d",Congruent:"\u2261",Conint:"\u222f",conint:"\u222e",ContourIntegral:"\u222e",Copf:"\u2102",copf:"\u{1d554}",coprod:"\u2210",Coproduct:"\u2210",COPY:"\xa9",copy:"\xa9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21b5",Cross:"\u2a2f",cross:"\u2717",Cscr:"\u{1d49e}",cscr:"\u{1d4b8}",csub:"\u2acf",csube:"\u2ad1",csup:"\u2ad0",csupe:"\u2ad2",ctdot:"\u22ef",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22de",cuesc:"\u22df",cularr:"\u21b6",cularrp:"\u293d",Cup:"\u22d3",cup:"\u222a",cupbrcap:"\u2a48",CupCap:"\u224d",cupcap:"\u2a46",cupcup:"\u2a4a",cupdot:"\u228d",cupor:"\u2a45",cups:"\u222a\ufe00",curarr:"\u21b7",curarrm:"\u293c",curlyeqprec:"\u22de",curlyeqsucc:"\u22df",curlyvee:"\u22ce",curlywedge:"\u22cf",curren:"\xa4",curvearrowleft:"\u21b6",curvearrowright:"\u21b7",cuvee:"\u22ce",cuwed:"\u22cf",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232d",Dagger:"\u2021",dagger:"\u2020",daleth:"\u2138",Darr:"\u21a1",dArr:"\u21d3",darr:"\u2193",dash:"\u2010",Dashv:"\u2ae4",dashv:"\u22a3",dbkarow:"\u290f",dblac:"\u02dd",Dcaron:"\u010e",dcaron:"\u010f",Dcy:"\u0414",dcy:"\u0434",DD:"\u2145",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21ca",DDotrahd:"\u2911",ddotseq:"\u2a77",deg:"\xb0",Del:"\u2207",Delta:"\u0394",delta:"\u03b4",demptyv:"\u29b1",dfisht:"\u297f",Dfr:"\u{1d507}",dfr:"\u{1d521}",dHar:"\u2965",dharl:"\u21c3",dharr:"\u21c2",DiacriticalAcute:"\xb4",DiacriticalDot:"\u02d9",DiacriticalDoubleAcute:"\u02dd",DiacriticalGrave:"`",DiacriticalTilde:"\u02dc",diam:"\u22c4",Diamond:"\u22c4",diamond:"\u22c4",diamondsuit:"\u2666",diams:"\u2666",die:"\xa8",DifferentialD:"\u2146",digamma:"\u03dd",disin:"\u22f2",div:"\xf7",divide:"\xf7",divideontimes:"\u22c7",divonx:"\u22c7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231e",dlcrop:"\u230d",dollar:"$",Dopf:"\u{1d53b}",dopf:"\u{1d555}",Dot:"\xa8",dot:"\u02d9",DotDot:"\u20dc",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22a1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222f",DoubleDot:"\xa8",DoubleDownArrow:"\u21d3",DoubleLeftArrow:"\u21d0",DoubleLeftRightArrow:"\u21d4",DoubleLeftTee:"\u2ae4",DoubleLongLeftArrow:"\u27f8",DoubleLongLeftRightArrow:"\u27fa",DoubleLongRightArrow:"\u27f9",DoubleRightArrow:"\u21d2",DoubleRightTee:"\u22a8",DoubleUpArrow:"\u21d1",DoubleUpDownArrow:"\u21d5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",Downarrow:"\u21d3",downarrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21f5",DownBreve:"\u0311",downdownarrows:"\u21ca",downharpoonleft:"\u21c3",downharpoonright:"\u21c2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295e",DownLeftVector:"\u21bd",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295f",DownRightVector:"\u21c1",DownRightVectorBar:"\u2957",DownTee:"\u22a4",DownTeeArrow:"\u21a7",drbkarow:"\u2910",drcorn:"\u231f",drcrop:"\u230c",Dscr:"\u{1d49f}",dscr:"\u{1d4b9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29f6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22f1",dtri:"\u25bf",dtrif:"\u25be",duarr:"\u21f5",duhar:"\u296f",dwangle:"\u29a6",DZcy:"\u040f",dzcy:"\u045f",dzigrarr:"\u27ff",Eacute:"\xc9",eacute:"\xe9",easter:"\u2a6e",Ecaron:"\u011a",ecaron:"\u011b",ecir:"\u2256",Ecirc:"\xca",ecirc:"\xea",ecolon:"\u2255",Ecy:"\u042d",ecy:"\u044d",eDDot:"\u2a77",Edot:"\u0116",eDot:"\u2251",edot:"\u0117",ee:"\u2147",efDot:"\u2252",Efr:"\u{1d508}",efr:"\u{1d522}",eg:"\u2a9a",Egrave:"\xc8",egrave:"\xe8",egs:"\u2a96",egsdot:"\u2a98",el:"\u2a99",Element:"\u2208",elinters:"\u23e7",ell:"\u2113",els:"\u2a95",elsdot:"\u2a97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25fb",emptyv:"\u2205",EmptyVerySmallSquare:"\u25ab",emsp:"\u2003",emsp13:"\u2004",emsp14:"\u2005",ENG:"\u014a",eng:"\u014b",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1d53c}",eopf:"\u{1d556}",epar:"\u22d5",eparsl:"\u29e3",eplus:"\u2a71",epsi:"\u03b5",Epsilon:"\u0395",epsilon:"\u03b5",epsiv:"\u03f5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2a96",eqslantless:"\u2a95",Equal:"\u2a75",equals:"=",EqualTilde:"\u2242",equest:"\u225f",Equilibrium:"\u21cc",equiv:"\u2261",equivDD:"\u2a78",eqvparsl:"\u29e5",erarr:"\u2971",erDot:"\u2253",Escr:"\u2130",escr:"\u212f",esdot:"\u2250",Esim:"\u2a73",esim:"\u2242",Eta:"\u0397",eta:"\u03b7",ETH:"\xd0",eth:"\xf0",Euml:"\xcb",euml:"\xeb",euro:"\u20ac",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",ExponentialE:"\u2147",exponentiale:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\ufb03",fflig:"\ufb00",ffllig:"\ufb04",Ffr:"\u{1d509}",ffr:"\u{1d523}",filig:"\ufb01",FilledSmallSquare:"\u25fc",FilledVerySmallSquare:"\u25aa",fjlig:"fj",flat:"\u266d",fllig:"\ufb02",fltns:"\u25b1",fnof:"\u0192",Fopf:"\u{1d53d}",fopf:"\u{1d557}",ForAll:"\u2200",forall:"\u2200",fork:"\u22d4",forkv:"\u2ad9",Fouriertrf:"\u2131",fpartint:"\u2a0d",frac12:"\xbd",frac13:"\u2153",frac14:"\xbc",frac15:"\u2155",frac16:"\u2159",frac18:"\u215b",frac23:"\u2154",frac25:"\u2156",frac34:"\xbe",frac35:"\u2157",frac38:"\u215c",frac45:"\u2158",frac56:"\u215a",frac58:"\u215d",frac78:"\u215e",frasl:"\u2044",frown:"\u2322",Fscr:"\u2131",fscr:"\u{1d4bb}",gacute:"\u01f5",Gamma:"\u0393",gamma:"\u03b3",Gammad:"\u03dc",gammad:"\u03dd",gap:"\u2a86",Gbreve:"\u011e",gbreve:"\u011f",Gcedil:"\u0122",Gcirc:"\u011c",gcirc:"\u011d",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",gE:"\u2267",ge:"\u2265",gEl:"\u2a8c",gel:"\u22db",geq:"\u2265",geqq:"\u2267",geqslant:"\u2a7e",ges:"\u2a7e",gescc:"\u2aa9",gesdot:"\u2a80",gesdoto:"\u2a82",gesdotol:"\u2a84",gesl:"\u22db\ufe00",gesles:"\u2a94",Gfr:"\u{1d50a}",gfr:"\u{1d524}",Gg:"\u22d9",gg:"\u226b",ggg:"\u22d9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gl:"\u2277",gla:"\u2aa5",glE:"\u2a92",glj:"\u2aa4",gnap:"\u2a8a",gnapprox:"\u2a8a",gnE:"\u2269",gne:"\u2a88",gneq:"\u2a88",gneqq:"\u2269",gnsim:"\u22e7",Gopf:"\u{1d53e}",gopf:"\u{1d558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22db",GreaterFullEqual:"\u2267",GreaterGreater:"\u2aa2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2a7e",GreaterTilde:"\u2273",Gscr:"\u{1d4a2}",gscr:"\u210a",gsim:"\u2273",gsime:"\u2a8e",gsiml:"\u2a90",Gt:"\u226b",GT:">",gt:">",gtcc:"\u2aa7",gtcir:"\u2a7a",gtdot:"\u22d7",gtlPar:"\u2995",gtquest:"\u2a7c",gtrapprox:"\u2a86",gtrarr:"\u2978",gtrdot:"\u22d7",gtreqless:"\u22db",gtreqqless:"\u2a8c",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\ufe00",gvnE:"\u2269\ufe00",Hacek:"\u02c7",hairsp:"\u200a",half:"\xbd",hamilt:"\u210b",HARDcy:"\u042a",hardcy:"\u044a",hArr:"\u21d4",harr:"\u2194",harrcir:"\u2948",harrw:"\u21ad",Hat:"^",hbar:"\u210f",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22b9",Hfr:"\u210c",hfr:"\u{1d525}",HilbertSpace:"\u210b",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21ff",homtht:"\u223b",hookleftarrow:"\u21a9",hookrightarrow:"\u21aa",Hopf:"\u210d",hopf:"\u{1d559}",horbar:"\u2015",HorizontalLine:"\u2500",Hscr:"\u210b",hscr:"\u{1d4bd}",hslash:"\u210f",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224e",HumpEqual:"\u224f",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xcd",iacute:"\xed",ic:"\u2063",Icirc:"\xce",icirc:"\xee",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xa1",iff:"\u21d4",Ifr:"\u2111",ifr:"\u{1d526}",Igrave:"\xcc",igrave:"\xec",ii:"\u2148",iiiint:"\u2a0c",iiint:"\u222d",iinfin:"\u29dc",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Im:"\u2111",Imacr:"\u012a",imacr:"\u012b",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22b7",imped:"\u01b5",Implies:"\u21d2",in:"\u2208",incare:"\u2105",infin:"\u221e",infintie:"\u29dd",inodot:"\u0131",Int:"\u222c",int:"\u222b",intcal:"\u22ba",integers:"\u2124",Integral:"\u222b",intercal:"\u22ba",Intersection:"\u22c2",intlarhk:"\u2a17",intprod:"\u2a3c",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012e",iogon:"\u012f",Iopf:"\u{1d540}",iopf:"\u{1d55a}",Iota:"\u0399",iota:"\u03b9",iprod:"\u2a3c",iquest:"\xbf",Iscr:"\u2110",iscr:"\u{1d4be}",isin:"\u2208",isindot:"\u22f5",isinE:"\u22f9",isins:"\u22f4",isinsv:"\u22f3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xcf",iuml:"\xef",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1d50d}",jfr:"\u{1d527}",jmath:"\u0237",Jopf:"\u{1d541}",jopf:"\u{1d55b}",Jscr:"\u{1d4a5}",jscr:"\u{1d4bf}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039a",kappa:"\u03ba",kappav:"\u03f0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041a",kcy:"\u043a",Kfr:"\u{1d50e}",kfr:"\u{1d528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040c",kjcy:"\u045c",Kopf:"\u{1d542}",kopf:"\u{1d55c}",Kscr:"\u{1d4a6}",kscr:"\u{1d4c0}",lAarr:"\u21da",Lacute:"\u0139",lacute:"\u013a",laemptyv:"\u29b4",lagran:"\u2112",Lambda:"\u039b",lambda:"\u03bb",Lang:"\u27ea",lang:"\u27e8",langd:"\u2991",langle:"\u27e8",lap:"\u2a85",Laplacetrf:"\u2112",laquo:"\xab",Larr:"\u219e",lArr:"\u21d0",larr:"\u2190",larrb:"\u21e4",larrbfs:"\u291f",larrfs:"\u291d",larrhk:"\u21a9",larrlp:"\u21ab",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21a2",lat:"\u2aab",lAtail:"\u291b",latail:"\u2919",late:"\u2aad",lates:"\u2aad\ufe00",lBarr:"\u290e",lbarr:"\u290c",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298b",lbrksld:"\u298f",lbrkslu:"\u298d",Lcaron:"\u013d",lcaron:"\u013e",Lcedil:"\u013b",lcedil:"\u013c",lceil:"\u2308",lcub:"{",Lcy:"\u041b",lcy:"\u043b",ldca:"\u2936",ldquo:"\u201c",ldquor:"\u201e",ldrdhar:"\u2967",ldrushar:"\u294b",ldsh:"\u21b2",lE:"\u2266",le:"\u2264",LeftAngleBracket:"\u27e8",LeftArrow:"\u2190",Leftarrow:"\u21d0",leftarrow:"\u2190",LeftArrowBar:"\u21e4",LeftArrowRightArrow:"\u21c6",leftarrowtail:"\u21a2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27e6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21c3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230a",leftharpoondown:"\u21bd",leftharpoonup:"\u21bc",leftleftarrows:"\u21c7",LeftRightArrow:"\u2194",Leftrightarrow:"\u21d4",leftrightarrow:"\u2194",leftrightarrows:"\u21c6",leftrightharpoons:"\u21cb",leftrightsquigarrow:"\u21ad",LeftRightVector:"\u294e",LeftTee:"\u22a3",LeftTeeArrow:"\u21a4",LeftTeeVector:"\u295a",leftthreetimes:"\u22cb",LeftTriangle:"\u22b2",LeftTriangleBar:"\u29cf",LeftTriangleEqual:"\u22b4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21bf",LeftUpVectorBar:"\u2958",LeftVector:"\u21bc",LeftVectorBar:"\u2952",lEg:"\u2a8b",leg:"\u22da",leq:"\u2264",leqq:"\u2266",leqslant:"\u2a7d",les:"\u2a7d",lescc:"\u2aa8",lesdot:"\u2a7f",lesdoto:"\u2a81",lesdotor:"\u2a83",lesg:"\u22da\ufe00",lesges:"\u2a93",lessapprox:"\u2a85",lessdot:"\u22d6",lesseqgtr:"\u22da",lesseqqgtr:"\u2a8b",LessEqualGreater:"\u22da",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2aa1",lesssim:"\u2272",LessSlantEqual:"\u2a7d",LessTilde:"\u2272",lfisht:"\u297c",lfloor:"\u230a",Lfr:"\u{1d50f}",lfr:"\u{1d529}",lg:"\u2276",lgE:"\u2a91",lHar:"\u2962",lhard:"\u21bd",lharu:"\u21bc",lharul:"\u296a",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",Ll:"\u22d8",ll:"\u226a",llarr:"\u21c7",llcorner:"\u231e",Lleftarrow:"\u21da",llhard:"\u296b",lltri:"\u25fa",Lmidot:"\u013f",lmidot:"\u0140",lmoust:"\u23b0",lmoustache:"\u23b0",lnap:"\u2a89",lnapprox:"\u2a89",lnE:"\u2268",lne:"\u2a87",lneq:"\u2a87",lneqq:"\u2268",lnsim:"\u22e6",loang:"\u27ec",loarr:"\u21fd",lobrk:"\u27e6",LongLeftArrow:"\u27f5",Longleftarrow:"\u27f8",longleftarrow:"\u27f5",LongLeftRightArrow:"\u27f7",Longleftrightarrow:"\u27fa",longleftrightarrow:"\u27f7",longmapsto:"\u27fc",LongRightArrow:"\u27f6",Longrightarrow:"\u27f9",longrightarrow:"\u27f6",looparrowleft:"\u21ab",looparrowright:"\u21ac",lopar:"\u2985",Lopf:"\u{1d543}",lopf:"\u{1d55d}",loplus:"\u2a2d",lotimes:"\u2a34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25ca",lozenge:"\u25ca",lozf:"\u29eb",lpar:"(",lparlt:"\u2993",lrarr:"\u21c6",lrcorner:"\u231f",lrhar:"\u21cb",lrhard:"\u296d",lrm:"\u200e",lrtri:"\u22bf",lsaquo:"\u2039",Lscr:"\u2112",lscr:"\u{1d4c1}",Lsh:"\u21b0",lsh:"\u21b0",lsim:"\u2272",lsime:"\u2a8d",lsimg:"\u2a8f",lsqb:"[",lsquo:"\u2018",lsquor:"\u201a",Lstrok:"\u0141",lstrok:"\u0142",Lt:"\u226a",LT:"<",lt:"<",ltcc:"\u2aa6",ltcir:"\u2a79",ltdot:"\u22d6",lthree:"\u22cb",ltimes:"\u22c9",ltlarr:"\u2976",ltquest:"\u2a7b",ltri:"\u25c3",ltrie:"\u22b4",ltrif:"\u25c2",ltrPar:"\u2996",lurdshar:"\u294a",luruhar:"\u2966",lvertneqq:"\u2268\ufe00",lvnE:"\u2268\ufe00",macr:"\xaf",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21a6",mapsto:"\u21a6",mapstodown:"\u21a7",mapstoleft:"\u21a4",mapstoup:"\u21a5",marker:"\u25ae",mcomma:"\u2a29",Mcy:"\u041c",mcy:"\u043c",mdash:"\u2014",mDDot:"\u223a",measuredangle:"\u2221",MediumSpace:"\u205f",Mellintrf:"\u2133",Mfr:"\u{1d510}",mfr:"\u{1d52a}",mho:"\u2127",micro:"\xb5",mid:"\u2223",midast:"*",midcir:"\u2af0",middot:"\xb7",minus:"\u2212",minusb:"\u229f",minusd:"\u2238",minusdu:"\u2a2a",MinusPlus:"\u2213",mlcp:"\u2adb",mldr:"\u2026",mnplus:"\u2213",models:"\u22a7",Mopf:"\u{1d544}",mopf:"\u{1d55e}",mp:"\u2213",Mscr:"\u2133",mscr:"\u{1d4c2}",mstpos:"\u223e",Mu:"\u039c",mu:"\u03bc",multimap:"\u22b8",mumap:"\u22b8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20d2",nap:"\u2249",napE:"\u2a70\u0338",napid:"\u224b\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266e",natural:"\u266e",naturals:"\u2115",nbsp:"\xa0",nbump:"\u224e\u0338",nbumpe:"\u224f\u0338",ncap:"\u2a43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2a6d\u0338",ncup:"\u2a42",Ncy:"\u041d",ncy:"\u043d",ndash:"\u2013",ne:"\u2260",nearhk:"\u2924",neArr:"\u21d7",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200b",NegativeThickSpace:"\u200b",NegativeThinSpace:"\u200b",NegativeVeryThinSpace:"\u200b",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226b",NestedLessLess:"\u226a",NewLine:"\n",nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1d511}",nfr:"\u{1d52b}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2a7e\u0338",nges:"\u2a7e\u0338",nGg:"\u22d9\u0338",ngsim:"\u2275",nGt:"\u226b\u20d2",ngt:"\u226f",ngtr:"\u226f",nGtv:"\u226b\u0338",nhArr:"\u21ce",nharr:"\u21ae",nhpar:"\u2af2",ni:"\u220b",nis:"\u22fc",nisd:"\u22fa",niv:"\u220b",NJcy:"\u040a",njcy:"\u045a",nlArr:"\u21cd",nlarr:"\u219a",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nLeftarrow:"\u21cd",nleftarrow:"\u219a",nLeftrightarrow:"\u21ce",nleftrightarrow:"\u21ae",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2a7d\u0338",nles:"\u2a7d\u0338",nless:"\u226e",nLl:"\u22d8\u0338",nlsim:"\u2274",nLt:"\u226a\u20d2",nlt:"\u226e",nltri:"\u22ea",nltrie:"\u22ec",nLtv:"\u226a\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xa0",Nopf:"\u2115",nopf:"\u{1d55f}",Not:"\u2aec",not:"\xac",NotCongruent:"\u2262",NotCupCap:"\u226d",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226f",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226b\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2a7e\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224e\u0338",NotHumpEqual:"\u224f\u0338",notin:"\u2209",notindot:"\u22f5\u0338",notinE:"\u22f9\u0338",notinva:"\u2209",notinvb:"\u22f7",notinvc:"\u22f6",NotLeftTriangle:"\u22ea",NotLeftTriangleBar:"\u29cf\u0338",NotLeftTriangleEqual:"\u22ec",NotLess:"\u226e",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226a\u0338",NotLessSlantEqual:"\u2a7d\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2aa2\u0338",NotNestedLessLess:"\u2aa1\u0338",notni:"\u220c",notniva:"\u220c",notnivb:"\u22fe",notnivc:"\u22fd",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2aaf\u0338",NotPrecedesSlantEqual:"\u22e0",NotReverseElement:"\u220c",NotRightTriangle:"\u22eb",NotRightTriangleBar:"\u29d0\u0338",NotRightTriangleEqual:"\u22ed",NotSquareSubset:"\u228f\u0338",NotSquareSubsetEqual:"\u22e2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22e3",NotSubset:"\u2282\u20d2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2ab0\u0338",NotSucceedsSlantEqual:"\u22e1",NotSucceedsTilde:"\u227f\u0338",NotSuperset:"\u2283\u20d2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2afd\u20e5",npart:"\u2202\u0338",npolint:"\u2a14",npr:"\u2280",nprcue:"\u22e0",npre:"\u2aaf\u0338",nprec:"\u2280",npreceq:"\u2aaf\u0338",nrArr:"\u21cf",nrarr:"\u219b",nrarrc:"\u2933\u0338",nrarrw:"\u219d\u0338",nRightarrow:"\u21cf",nrightarrow:"\u219b",nrtri:"\u22eb",nrtrie:"\u22ed",nsc:"\u2281",nsccue:"\u22e1",nsce:"\u2ab0\u0338",Nscr:"\u{1d4a9}",nscr:"\u{1d4c3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22e2",nsqsupe:"\u22e3",nsub:"\u2284",nsubE:"\u2ac5\u0338",nsube:"\u2288",nsubset:"\u2282\u20d2",nsubseteq:"\u2288",nsubseteqq:"\u2ac5\u0338",nsucc:"\u2281",nsucceq:"\u2ab0\u0338",nsup:"\u2285",nsupE:"\u2ac6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20d2",nsupseteq:"\u2289",nsupseteqq:"\u2ac6\u0338",ntgl:"\u2279",Ntilde:"\xd1",ntilde:"\xf1",ntlg:"\u2278",ntriangleleft:"\u22ea",ntrianglelefteq:"\u22ec",ntriangleright:"\u22eb",ntrianglerighteq:"\u22ed",Nu:"\u039d",nu:"\u03bd",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224d\u20d2",nVDash:"\u22af",nVdash:"\u22ae",nvDash:"\u22ad",nvdash:"\u22ac",nvge:"\u2265\u20d2",nvgt:">\u20d2",nvHarr:"\u2904",nvinfin:"\u29de",nvlArr:"\u2902",nvle:"\u2264\u20d2",nvlt:"<\u20d2",nvltrie:"\u22b4\u20d2",nvrArr:"\u2903",nvrtrie:"\u22b5\u20d2",nvsim:"\u223c\u20d2",nwarhk:"\u2923",nwArr:"\u21d6",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xd3",oacute:"\xf3",oast:"\u229b",ocir:"\u229a",Ocirc:"\xd4",ocirc:"\xf4",Ocy:"\u041e",ocy:"\u043e",odash:"\u229d",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2a38",odot:"\u2299",odsold:"\u29bc",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29bf",Ofr:"\u{1d512}",ofr:"\u{1d52c}",ogon:"\u02db",Ograve:"\xd2",ograve:"\xf2",ogt:"\u29c1",ohbar:"\u29b5",ohm:"\u03a9",oint:"\u222e",olarr:"\u21ba",olcir:"\u29be",olcross:"\u29bb",oline:"\u203e",olt:"\u29c0",Omacr:"\u014c",omacr:"\u014d",Omega:"\u03a9",omega:"\u03c9",Omicron:"\u039f",omicron:"\u03bf",omid:"\u29b6",ominus:"\u2296",Oopf:"\u{1d546}",oopf:"\u{1d560}",opar:"\u29b7",OpenCurlyDoubleQuote:"\u201c",OpenCurlyQuote:"\u2018",operp:"\u29b9",oplus:"\u2295",Or:"\u2a54",or:"\u2228",orarr:"\u21bb",ord:"\u2a5d",order:"\u2134",orderof:"\u2134",ordf:"\xaa",ordm:"\xba",origof:"\u22b6",oror:"\u2a56",orslope:"\u2a57",orv:"\u2a5b",oS:"\u24c8",Oscr:"\u{1d4aa}",oscr:"\u2134",Oslash:"\xd8",oslash:"\xf8",osol:"\u2298",Otilde:"\xd5",otilde:"\xf5",Otimes:"\u2a37",otimes:"\u2297",otimesas:"\u2a36",Ouml:"\xd6",ouml:"\xf6",ovbar:"\u233d",OverBar:"\u203e",OverBrace:"\u23de",OverBracket:"\u23b4",OverParenthesis:"\u23dc",par:"\u2225",para:"\xb6",parallel:"\u2225",parsim:"\u2af3",parsl:"\u2afd",part:"\u2202",PartialD:"\u2202",Pcy:"\u041f",pcy:"\u043f",percnt:"%",period:".",permil:"\u2030",perp:"\u22a5",pertenk:"\u2031",Pfr:"\u{1d513}",pfr:"\u{1d52d}",Phi:"\u03a6",phi:"\u03c6",phiv:"\u03d5",phmmat:"\u2133",phone:"\u260e",Pi:"\u03a0",pi:"\u03c0",pitchfork:"\u22d4",piv:"\u03d6",planck:"\u210f",planckh:"\u210e",plankv:"\u210f",plus:"+",plusacir:"\u2a23",plusb:"\u229e",pluscir:"\u2a22",plusdo:"\u2214",plusdu:"\u2a25",pluse:"\u2a72",PlusMinus:"\xb1",plusmn:"\xb1",plussim:"\u2a26",plustwo:"\u2a27",pm:"\xb1",Poincareplane:"\u210c",pointint:"\u2a15",Popf:"\u2119",popf:"\u{1d561}",pound:"\xa3",Pr:"\u2abb",pr:"\u227a",prap:"\u2ab7",prcue:"\u227c",prE:"\u2ab3",pre:"\u2aaf",prec:"\u227a",precapprox:"\u2ab7",preccurlyeq:"\u227c",Precedes:"\u227a",PrecedesEqual:"\u2aaf",PrecedesSlantEqual:"\u227c",PrecedesTilde:"\u227e",preceq:"\u2aaf",precnapprox:"\u2ab9",precneqq:"\u2ab5",precnsim:"\u22e8",precsim:"\u227e",Prime:"\u2033",prime:"\u2032",primes:"\u2119",prnap:"\u2ab9",prnE:"\u2ab5",prnsim:"\u22e8",prod:"\u220f",Product:"\u220f",profalar:"\u232e",profline:"\u2312",profsurf:"\u2313",prop:"\u221d",Proportion:"\u2237",Proportional:"\u221d",propto:"\u221d",prsim:"\u227e",prurel:"\u22b0",Pscr:"\u{1d4ab}",pscr:"\u{1d4c5}",Psi:"\u03a8",psi:"\u03c8",puncsp:"\u2008",Qfr:"\u{1d514}",qfr:"\u{1d52e}",qint:"\u2a0c",Qopf:"\u211a",qopf:"\u{1d562}",qprime:"\u2057",Qscr:"\u{1d4ac}",qscr:"\u{1d4c6}",quaternions:"\u210d",quatint:"\u2a16",quest:"?",questeq:"\u225f",QUOT:'"',quot:'"',rAarr:"\u21db",race:"\u223d\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221a",raemptyv:"\u29b3",Rang:"\u27eb",rang:"\u27e9",rangd:"\u2992",range:"\u29a5",rangle:"\u27e9",raquo:"\xbb",Rarr:"\u21a0",rArr:"\u21d2",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21e5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291e",rarrhk:"\u21aa",rarrlp:"\u21ac",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21a3",rarrw:"\u219d",rAtail:"\u291c",ratail:"\u291a",ratio:"\u2236",rationals:"\u211a",RBarr:"\u2910",rBarr:"\u290f",rbarr:"\u290d",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298c",rbrksld:"\u298e",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201d",rdquor:"\u201d",rdsh:"\u21b3",Re:"\u211c",real:"\u211c",realine:"\u211b",realpart:"\u211c",reals:"\u211d",rect:"\u25ad",REG:"\xae",reg:"\xae",ReverseElement:"\u220b",ReverseEquilibrium:"\u21cb",ReverseUpEquilibrium:"\u296f",rfisht:"\u297d",rfloor:"\u230b",Rfr:"\u211c",rfr:"\u{1d52f}",rHar:"\u2964",rhard:"\u21c1",rharu:"\u21c0",rharul:"\u296c",Rho:"\u03a1",rho:"\u03c1",rhov:"\u03f1",RightAngleBracket:"\u27e9",RightArrow:"\u2192",Rightarrow:"\u21d2",rightarrow:"\u2192",RightArrowBar:"\u21e5",RightArrowLeftArrow:"\u21c4",rightarrowtail:"\u21a3",RightCeiling:"\u2309",RightDoubleBracket:"\u27e7",RightDownTeeVector:"\u295d",RightDownVector:"\u21c2",RightDownVectorBar:"\u2955",RightFloor:"\u230b",rightharpoondown:"\u21c1",rightharpoonup:"\u21c0",rightleftarrows:"\u21c4",rightleftharpoons:"\u21cc",rightrightarrows:"\u21c9",rightsquigarrow:"\u219d",RightTee:"\u22a2",RightTeeArrow:"\u21a6",RightTeeVector:"\u295b",rightthreetimes:"\u22cc",RightTriangle:"\u22b3",RightTriangleBar:"\u29d0",RightTriangleEqual:"\u22b5",RightUpDownVector:"\u294f",RightUpTeeVector:"\u295c",RightUpVector:"\u21be",RightUpVectorBar:"\u2954",RightVector:"\u21c0",RightVectorBar:"\u2953",ring:"\u02da",risingdotseq:"\u2253",rlarr:"\u21c4",rlhar:"\u21cc",rlm:"\u200f",rmoust:"\u23b1",rmoustache:"\u23b1",rnmid:"\u2aee",roang:"\u27ed",roarr:"\u21fe",robrk:"\u27e7",ropar:"\u2986",Ropf:"\u211d",ropf:"\u{1d563}",roplus:"\u2a2e",rotimes:"\u2a35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2a12",rrarr:"\u21c9",Rrightarrow:"\u21db",rsaquo:"\u203a",Rscr:"\u211b",rscr:"\u{1d4c7}",Rsh:"\u21b1",rsh:"\u21b1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22cc",rtimes:"\u22ca",rtri:"\u25b9",rtrie:"\u22b5",rtrif:"\u25b8",rtriltri:"\u29ce",RuleDelayed:"\u29f4",ruluhar:"\u2968",rx:"\u211e",Sacute:"\u015a",sacute:"\u015b",sbquo:"\u201a",Sc:"\u2abc",sc:"\u227b",scap:"\u2ab8",Scaron:"\u0160",scaron:"\u0161",sccue:"\u227d",scE:"\u2ab4",sce:"\u2ab0",Scedil:"\u015e",scedil:"\u015f",Scirc:"\u015c",scirc:"\u015d",scnap:"\u2aba",scnE:"\u2ab6",scnsim:"\u22e9",scpolint:"\u2a13",scsim:"\u227f",Scy:"\u0421",scy:"\u0441",sdot:"\u22c5",sdotb:"\u22a1",sdote:"\u2a66",searhk:"\u2925",seArr:"\u21d8",searr:"\u2198",searrow:"\u2198",sect:"\xa7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1d516}",sfr:"\u{1d530}",sfrown:"\u2322",sharp:"\u266f",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xad",Sigma:"\u03a3",sigma:"\u03c3",sigmaf:"\u03c2",sigmav:"\u03c2",sim:"\u223c",simdot:"\u2a6a",sime:"\u2243",simeq:"\u2243",simg:"\u2a9e",simgE:"\u2aa0",siml:"\u2a9d",simlE:"\u2a9f",simne:"\u2246",simplus:"\u2a24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2a33",smeparsl:"\u29e4",smid:"\u2223",smile:"\u2323",smt:"\u2aaa",smte:"\u2aac",smtes:"\u2aac\ufe00",SOFTcy:"\u042c",softcy:"\u044c",sol:"/",solb:"\u29c4",solbar:"\u233f",Sopf:"\u{1d54a}",sopf:"\u{1d564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\ufe00",sqcup:"\u2294",sqcups:"\u2294\ufe00",Sqrt:"\u221a",sqsub:"\u228f",sqsube:"\u2291",sqsubset:"\u228f",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25a1",Square:"\u25a1",square:"\u25a1",SquareIntersection:"\u2293",SquareSubset:"\u228f",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25aa",squf:"\u25aa",srarr:"\u2192",Sscr:"\u{1d4ae}",sscr:"\u{1d4c8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22c6",Star:"\u22c6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03f5",straightphi:"\u03d5",strns:"\xaf",Sub:"\u22d0",sub:"\u2282",subdot:"\u2abd",subE:"\u2ac5",sube:"\u2286",subedot:"\u2ac3",submult:"\u2ac1",subnE:"\u2acb",subne:"\u228a",subplus:"\u2abf",subrarr:"\u2979",Subset:"\u22d0",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2ac5",SubsetEqual:"\u2286",subsetneq:"\u228a",subsetneqq:"\u2acb",subsim:"\u2ac7",subsub:"\u2ad5",subsup:"\u2ad3",succ:"\u227b",succapprox:"\u2ab8",succcurlyeq:"\u227d",Succeeds:"\u227b",SucceedsEqual:"\u2ab0",SucceedsSlantEqual:"\u227d",SucceedsTilde:"\u227f",succeq:"\u2ab0",succnapprox:"\u2aba",succneqq:"\u2ab6",succnsim:"\u22e9",succsim:"\u227f",SuchThat:"\u220b",Sum:"\u2211",sum:"\u2211",sung:"\u266a",Sup:"\u22d1",sup:"\u2283",sup1:"\xb9",sup2:"\xb2",sup3:"\xb3",supdot:"\u2abe",supdsub:"\u2ad8",supE:"\u2ac6",supe:"\u2287",supedot:"\u2ac4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27c9",suphsub:"\u2ad7",suplarr:"\u297b",supmult:"\u2ac2",supnE:"\u2acc",supne:"\u228b",supplus:"\u2ac0",Supset:"\u22d1",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2ac6",supsetneq:"\u228b",supsetneqq:"\u2acc",supsim:"\u2ac8",supsub:"\u2ad4",supsup:"\u2ad6",swarhk:"\u2926",swArr:"\u21d9",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292a",szlig:"\xdf",Tab:"\t",target:"\u2316",Tau:"\u03a4",tau:"\u03c4",tbrk:"\u23b4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20db",telrec:"\u2315",Tfr:"\u{1d517}",tfr:"\u{1d531}",there4:"\u2234",Therefore:"\u2234",therefore:"\u2234",Theta:"\u0398",theta:"\u03b8",thetasym:"\u03d1",thetav:"\u03d1",thickapprox:"\u2248",thicksim:"\u223c",ThickSpace:"\u205f\u200a",thinsp:"\u2009",ThinSpace:"\u2009",thkap:"\u2248",thksim:"\u223c",THORN:"\xde",thorn:"\xfe",Tilde:"\u223c",tilde:"\u02dc",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",times:"\xd7",timesb:"\u22a0",timesbar:"\u2a31",timesd:"\u2a30",tint:"\u222d",toea:"\u2928",top:"\u22a4",topbot:"\u2336",topcir:"\u2af1",Topf:"\u{1d54b}",topf:"\u{1d565}",topfork:"\u2ada",tosa:"\u2929",tprime:"\u2034",TRADE:"\u2122",trade:"\u2122",triangle:"\u25b5",triangledown:"\u25bf",triangleleft:"\u25c3",trianglelefteq:"\u22b4",triangleq:"\u225c",triangleright:"\u25b9",trianglerighteq:"\u22b5",tridot:"\u25ec",trie:"\u225c",triminus:"\u2a3a",TripleDot:"\u20db",triplus:"\u2a39",trisb:"\u29cd",tritime:"\u2a3b",trpezium:"\u23e2",Tscr:"\u{1d4af}",tscr:"\u{1d4c9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040b",tshcy:"\u045b",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226c",twoheadleftarrow:"\u219e",twoheadrightarrow:"\u21a0",Uacute:"\xda",uacute:"\xfa",Uarr:"\u219f",uArr:"\u21d1",uarr:"\u2191",Uarrocir:"\u2949",Ubrcy:"\u040e",ubrcy:"\u045e",Ubreve:"\u016c",ubreve:"\u016d",Ucirc:"\xdb",ucirc:"\xfb",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21c5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296e",ufisht:"\u297e",Ufr:"\u{1d518}",ufr:"\u{1d532}",Ugrave:"\xd9",ugrave:"\xf9",uHar:"\u2963",uharl:"\u21bf",uharr:"\u21be",uhblk:"\u2580",ulcorn:"\u231c",ulcorner:"\u231c",ulcrop:"\u230f",ultri:"\u25f8",Umacr:"\u016a",umacr:"\u016b",uml:"\xa8",UnderBar:"_",UnderBrace:"\u23df",UnderBracket:"\u23b5",UnderParenthesis:"\u23dd",Union:"\u22c3",UnionPlus:"\u228e",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1d54c}",uopf:"\u{1d566}",UpArrow:"\u2191",Uparrow:"\u21d1",uparrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21c5",UpDownArrow:"\u2195",Updownarrow:"\u21d5",updownarrow:"\u2195",UpEquilibrium:"\u296e",upharpoonleft:"\u21bf",upharpoonright:"\u21be",uplus:"\u228e",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03d2",upsi:"\u03c5",upsih:"\u03d2",Upsilon:"\u03a5",upsilon:"\u03c5",UpTee:"\u22a5",UpTeeArrow:"\u21a5",upuparrows:"\u21c8",urcorn:"\u231d",urcorner:"\u231d",urcrop:"\u230e",Uring:"\u016e",uring:"\u016f",urtri:"\u25f9",Uscr:"\u{1d4b0}",uscr:"\u{1d4ca}",utdot:"\u22f0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25b5",utrif:"\u25b4",uuarr:"\u21c8",Uuml:"\xdc",uuml:"\xfc",uwangle:"\u29a7",vangrt:"\u299c",varepsilon:"\u03f5",varkappa:"\u03f0",varnothing:"\u2205",varphi:"\u03d5",varpi:"\u03d6",varpropto:"\u221d",vArr:"\u21d5",varr:"\u2195",varrho:"\u03f1",varsigma:"\u03c2",varsubsetneq:"\u228a\ufe00",varsubsetneqq:"\u2acb\ufe00",varsupsetneq:"\u228b\ufe00",varsupsetneqq:"\u2acc\ufe00",vartheta:"\u03d1",vartriangleleft:"\u22b2",vartriangleright:"\u22b3",Vbar:"\u2aeb",vBar:"\u2ae8",vBarv:"\u2ae9",Vcy:"\u0412",vcy:"\u0432",VDash:"\u22ab",Vdash:"\u22a9",vDash:"\u22a8",vdash:"\u22a2",Vdashl:"\u2ae6",Vee:"\u22c1",vee:"\u2228",veebar:"\u22bb",veeeq:"\u225a",vellip:"\u22ee",Verbar:"\u2016",verbar:"|",Vert:"\u2016",vert:"|",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200a",Vfr:"\u{1d519}",vfr:"\u{1d533}",vltri:"\u22b2",vnsub:"\u2282\u20d2",vnsup:"\u2283\u20d2",Vopf:"\u{1d54d}",vopf:"\u{1d567}",vprop:"\u221d",vrtri:"\u22b3",Vscr:"\u{1d4b1}",vscr:"\u{1d4cb}",vsubnE:"\u2acb\ufe00",vsubne:"\u228a\ufe00",vsupnE:"\u2acc\ufe00",vsupne:"\u228b\ufe00",Vvdash:"\u22aa",vzigzag:"\u299a",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2a5f",Wedge:"\u22c0",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1d51a}",wfr:"\u{1d534}",Wopf:"\u{1d54e}",wopf:"\u{1d568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1d4b2}",wscr:"\u{1d4cc}",xcap:"\u22c2",xcirc:"\u25ef",xcup:"\u22c3",xdtri:"\u25bd",Xfr:"\u{1d51b}",xfr:"\u{1d535}",xhArr:"\u27fa",xharr:"\u27f7",Xi:"\u039e",xi:"\u03be",xlArr:"\u27f8",xlarr:"\u27f5",xmap:"\u27fc",xnis:"\u22fb",xodot:"\u2a00",Xopf:"\u{1d54f}",xopf:"\u{1d569}",xoplus:"\u2a01",xotime:"\u2a02",xrArr:"\u27f9",xrarr:"\u27f6",Xscr:"\u{1d4b3}",xscr:"\u{1d4cd}",xsqcup:"\u2a06",xuplus:"\u2a04",xutri:"\u25b3",xvee:"\u22c1",xwedge:"\u22c0",Yacute:"\xdd",yacute:"\xfd",YAcy:"\u042f",yacy:"\u044f",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042b",ycy:"\u044b",yen:"\xa5",Yfr:"\u{1d51c}",yfr:"\u{1d536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1d550}",yopf:"\u{1d56a}",Yscr:"\u{1d4b4}",yscr:"\u{1d4ce}",YUcy:"\u042e",yucy:"\u044e",Yuml:"\u0178",yuml:"\xff",Zacute:"\u0179",zacute:"\u017a",Zcaron:"\u017d",zcaron:"\u017e",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017b",zdot:"\u017c",zeetrf:"\u2128",ZeroWidthSpace:"\u200b",Zeta:"\u0396",zeta:"\u03b6",Zfr:"\u2128",zfr:"\u{1d537}",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21dd",Zopf:"\u2124",zopf:"\u{1d56b}",Zscr:"\u{1d4b5}",zscr:"\u{1d4cf}",zwj:"\u200d",zwnj:"\u200c"}),e.entityMap=e.HTML_ENTITIES},918(t,e,s){"use strict";function i(t,e){t.prototype=Object.create(Error.prototype,{constructor:{value:t},name:{value:t.name,enumerable:!0,writable:e}})}var r=s(981).freeze({Error:"Error",IndexSizeError:"IndexSizeError",DomstringSizeError:"DomstringSizeError",HierarchyRequestError:"HierarchyRequestError",WrongDocumentError:"WrongDocumentError",InvalidCharacterError:"InvalidCharacterError",NoDataAllowedError:"NoDataAllowedError",NoModificationAllowedError:"NoModificationAllowedError",NotFoundError:"NotFoundError",NotSupportedError:"NotSupportedError",InUseAttributeError:"InUseAttributeError",InvalidStateError:"InvalidStateError",SyntaxError:"SyntaxError",InvalidModificationError:"InvalidModificationError",NamespaceError:"NamespaceError",InvalidAccessError:"InvalidAccessError",ValidationError:"ValidationError",TypeMismatchError:"TypeMismatchError",SecurityError:"SecurityError",NetworkError:"NetworkError",AbortError:"AbortError",URLMismatchError:"URLMismatchError",QuotaExceededError:"QuotaExceededError",TimeoutError:"TimeoutError",InvalidNodeTypeError:"InvalidNodeTypeError",DataCloneError:"DataCloneError",EncodingError:"EncodingError",NotReadableError:"NotReadableError",UnknownError:"UnknownError",ConstraintError:"ConstraintError",DataError:"DataError",TransactionInactiveError:"TransactionInactiveError",ReadOnlyError:"ReadOnlyError",VersionError:"VersionError",OperationError:"OperationError",NotAllowedError:"NotAllowedError",OptOutError:"OptOutError"}),n=Object.keys(r);function o(t){return"number"==typeof t&&t>=1&&t<=25}function a(t,e){var s;o(t)?(this.name=n[t],this.message=e||""):(this.message=t,this.name="string"==typeof(s=e)&&s.substring(s.length-r.Error.length)===r.Error?e:r.Error),Error.captureStackTrace&&Error.captureStackTrace(this,a)}i(a,!0),Object.defineProperties(a.prototype,{code:{enumerable:!0,get:function(){var t=n.indexOf(this.name);return o(t)?t:0}}});for(var l={INDEX_SIZE_ERR:1,DOMSTRING_SIZE_ERR:2,HIERARCHY_REQUEST_ERR:3,WRONG_DOCUMENT_ERR:4,INVALID_CHARACTER_ERR:5,NO_DATA_ALLOWED_ERR:6,NO_MODIFICATION_ALLOWED_ERR:7,NOT_FOUND_ERR:8,NOT_SUPPORTED_ERR:9,INUSE_ATTRIBUTE_ERR:10,INVALID_STATE_ERR:11,SYNTAX_ERR:12,INVALID_MODIFICATION_ERR:13,NAMESPACE_ERR:14,INVALID_ACCESS_ERR:15,VALIDATION_ERR:16,TYPE_MISMATCH_ERR:17,SECURITY_ERR:18,NETWORK_ERR:19,ABORT_ERR:20,URL_MISMATCH_ERR:21,QUOTA_EXCEEDED_ERR:22,TIMEOUT_ERR:23,INVALID_NODE_TYPE_ERR:24,DATA_CLONE_ERR:25},c=Object.entries(l),h=0;h/),I=/[\x20\x0D\x0Aa-zA-Z0-9-'()+,./:=?;!*#@$_%]/,w=a('"',I,'*"',"|","'",n(I,"'"),"*'"),k="\x3c!--",O=o(k,a(n(l,"-"),"|",o("-",n(l,"-"))),"*","--\x3e"),D="#PCDATA",P=a(o(/\(/,p,D,a(p,/\|/,p,A),"*",p,/\)\*/),"|",o(/\(/,p,D,p,/\)/)),B=a("EMPTY","|","ANY","|",P,"|",o(/\([^>]+\)/,/[?*+]?/)),F=o(""),j=o("NOTATION",u,/\(/,p,g,a(p,/\|/,p,g),"*",p,/\)/),_=o(/\(/,p,b,a(p,/\|/,p,b),"*",p,/\)/),U=a(j,"|",_),H=a(/CDATA|ID|IDREF|IDREFS|ENTITY|ENTITIES|NMTOKEN|NMTOKENS/,"|",U),W=a(/#REQUIRED|#IMPLIED/,"|",a(a("#FIXED",u),"?",T)),z=o(""),q="about:legacy-compat",V=a('"'+q+'"',"|","'"+q+"'"),X="SYSTEM",G="PUBLIC",J=a(a(X,u,R),"|",a(G,u,w,u,R)),K=o("^",a(a(X,u,"(?",R,")"),"|",a(G,u,"(?",w,")",u,"(?",R,")"))),$=o("^",w,"$"),Y=o("^",R,"$"),Q=a(u,"NDATA",u,g),Z=""),et=a(v,"|",J),st=a(tt,"|",o(Z,u,"%",u,g,u,et,p,">")),it=o(G,u,w),rt=o(""),nt=o(p,"=",p),ot=/1[.]\d+/,at=o(u,"version",nt,a("'",ot,"'","|",'"',ot,'"')),lt=/[A-Za-z][-A-Za-z0-9._]*/,ct=o(/^<\?xml/,at,a(u,"encoding",nt,a('"',lt,'"',"|","'",lt,"'")),"?",a(u,"standalone",nt,a("'",a("yes","|","no"),"'","|",'"',a("yes","|","no"),'"')),"?",p,/\?>/),ht=o(l,"*?",/\]\]>/),dt=o(/",e.CDSect=dt,e.Char=l,e.Comment=O,e.COMMENT_START=k,e.COMMENT_END="--\x3e",e.DOCTYPE_DECL_START="=0&&o.warning("Unicode replacement character detected, source encoding issues?");function h(t){if(t>65535){var e=55296+((t-=65536)>>10),s=56320+(1023&t);return String.fromCharCode(e,s)}return String.fromCharCode(t)}function p(t){var e=";"===t[t.length-1]?t:t+";";if(!l&&e!==t)return o.error("EntityRef: expecting ;"),t;var i=r.Reference.exec(e);if(!i||i[0].length!==e.length)return o.error("entity not matching Reference production: "+t),t;var n=e.slice(1,-1);return c(s,n)?s[n]:"#"===n.charAt(0)?h(parseInt(n.substring(1).replace("x","0x"))):(o.error("entity not found:"+t),t)}function x(e){if(e>I){var s=t.substring(I,e).replace(m,p);L&&S(I),n.characters(s,0,e-I),I=e}}var y=0,C=0,A=/\r\n?|\n|$/g,L=n.locator;function S(e,s){for(;e>=C&&(s=A.exec(t));)y=C,C=s.index+s[0].length,L.lineNumber++;L.columnNumber=e-y+1}var R=[{currentNSMap:e}],M=[],I=0;for(;;){try{var w=t.indexOf("<",I);if(w<0){if(!l&&M.length>0)return o.fatalError("unclosed xml tag(s): "+M.join(", "));if(!t.substring(I).match(/^\s*$/)){var k=n.doc,O=k.createTextNode(t.substring(I));if(k.documentElement)return o.error("Extra content at the end of the document");k.appendChild(O),n.currentElement=O}return}if(w>I){var D=t.substring(I,w);l||0!==M.length||(D=D.replace(new RegExp(r.S_OPT.source,"g"),""))&&o.error("Unexpected content outside root element: '"+D+"'"),x(w)}switch(t.charAt(w+1)){case"/":var P=t.indexOf(">",w+2),B=t.substring(w+2,P>0?P:void 0);if(!B)return o.fatalError("end tag name missing");var F=P>0&&r.reg("^",r.QName_group,r.S_OPT,"$").exec(B);if(!F)return o.fatalError('end tag name contains invalid characters: "'+B+'"');if(!n.currentElement&&!n.doc.documentElement)return;var j=M[M.length-1]||n.currentElement.tagName||n.doc.documentElement.tagName||"";if(j!==F[1]){var _=F[1].toLowerCase();if(!l||j.toLowerCase()!==_)return o.fatalError('Opening and ending tag mismatch: "'+j+'" != "'+B+'"')}var U=R.pop();M.pop();var H=U.localNSMap;if(n.endElement(U.uri,U.localName,j),H)for(var W in H)c(H,W)&&n.endPrefixMapping(W);P++;break;case"?":L&&S(w),P=v(t,w,n,o);break;case"!":L&&S(w),P=N(t,w,n,o,l);break;default:L&&S(w);var z=new T,q=R[R.length-1].currentNSMap,V=(P=g(t,w,z,q,p,o,l),z.length);if(z.closed||(l&&i.isHTMLVoidElement(z.tagName)?z.closed=!0:M.push(z.tagName)),L&&V){for(var X=f(L,{}),G=0;GI?I=P:x(Math.max(w,I)+1)}}(t,e,s,n,this.errorHandler),n.endDocument()}};var m=/&#?\w+;?/g;function f(t,e){return e.lineNumber=t.lineNumber,e.columnNumber=t.columnNumber,e}function g(t,e,s,i,r,n,o){function a(t,e,i){return c(s.attributeNames,t)?n.fatalError("Attribute "+t+" redefined"):!o&&e.indexOf("<")>=0?n.fatalError("Unescaped '<' not allowed in attributes values"):void s.addValue(t,e.replace(/[\t\n\r]/g," ").replace(m,r),i)}for(var l,h=++e,d=0;;){var u=t.charAt(h);switch(u){case"=":if(1===d)l=t.slice(e,h),d=3;else{if(2!==d)throw new Error("attribute equal must after attrName");d=3}break;case"'":case'"':if(3===d||1===d){if(1===d&&(n.warning('attribute value must after "="'),l=t.slice(e,h)),e=h+1,!((h=t.indexOf(u,e))>0))throw new Error("attribute value no end '"+u+"' match");a(l,p=t.slice(e,h),e-1),d=5}else{if(4!=d)throw new Error('attribute value must after "="');a(l,p=t.slice(e,h),e),n.warning('attribute "'+l+'" missed start quot('+u+")!!"),e=h+1,d=5}break;case"/":switch(d){case 0:s.setTagName(t.slice(e,h));case 5:case 6:case 7:d=7,s.closed=!0;case 4:case 1:break;case 2:s.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return n.error("unexpected end of input"),0==d&&s.setTagName(t.slice(e,h)),h;case">":switch(d){case 0:s.setTagName(t.slice(e,h));case 5:case 6:case 7:break;case 4:case 1:"/"===(p=t.slice(e,h)).slice(-1)&&(s.closed=!0,p=p.slice(0,-1));case 2:2===d&&(p=l),4==d?(n.warning('attribute "'+p+'" missed quot(")!'),a(l,p,e)):(o||n.warning('attribute "'+p+'" missed value!! "'+p+'" instead!!'),a(p,p,e));break;case 3:if(!o)return n.fatalError("AttValue: ' or \" expected")}return h;case"\x80":u=" ";default:if(u<=" ")switch(d){case 0:s.setTagName(t.slice(e,h)),d=6;break;case 1:l=t.slice(e,h),d=2;break;case 4:var p=t.slice(e,h);n.warning('attribute "'+p+'" missed quot(")!!'),a(l,p,e);case 5:d=6}else switch(d){case 2:o||n.warning('attribute "'+l+'" missed value!! "'+l+'" instead2!!'),a(l,l,e),e=h,d=1;break;case 5:n.warning('attribute space is required"'+l+'"!!');case 6:d=1,e=h;break;case 3:d=4,e=h;break;case 7:throw new Error("elements closed character '/' and '>' must be connected to")}}h++}}function b(t,e,s){for(var i=t.tagName,r=null,n=t.length;n--;){var o=t[n],a=o.qName,l=o.value;if((m=a.indexOf(":"))>0)var d=o.prefix=a.slice(0,m),u=a.slice(m+1),p="xmlns"===d&&u;else u=a,d=null,p="xmlns"===a&&"";o.localName=u,!1!==p&&(null==r&&(r=Object.create(null),x(s,s=Object.create(null))),s[p]=r[p]=l,o.uri=h.XMLNS,e.startPrefixMapping(p,l))}for(n=t.length;n--;)(o=t[n]).prefix&&("xml"===o.prefix&&(o.uri=h.XML),"xmlns"!==o.prefix&&(o.uri=s[o.prefix]));var m;(m=i.indexOf(":"))>0?(d=t.prefix=i.slice(0,m),u=t.localName=i.slice(m+1)):(d=null,u=t.localName=i);var f=t.uri=s[d||""];if(e.startElement(f,u,i,t),!t.closed)return t.currentNSMap=s,t.localNSMap=r,!0;if(e.endElement(f,u,i),r)for(d in r)c(r,d)&&e.endPrefixMapping(d)}function E(t,e,s,i,r){var n=o(s);if(n||l(s)){var a=t.indexOf("",e),c=t.substring(e+1,a);return n&&(c=c.replace(m,i)),r.characters(c,0,c.length),a}return e+1}function x(t,e){for(var s in t)c(t,s)&&(e[s]=t[s])}function y(t,e){var s=e;function i(e){return e=e||0,t.charAt(s+e)}function n(t){s+=t=t||1}function o(){return t.substring(s)}return{char:i,getIndex:function(){return s},getMatch:function(t){var e=r.reg("^",t).exec(o());return e?(n(e[0].length),e[0]):null},getSource:function(){return t},skip:n,skipBlanks:function(){for(var e=0;s"!==o.char()?i.fatalError("doctype not terminated with > at position "+o.getIndex()):(o.skip(1),s.startDTD(c.name,c.publicId,c.systemId,c.internalSubset),s.endDTD(),o.getIndex());default:return i.fatalError('Not well-formed XML starting with "0)return i.fatalError("processing instruction at position "+e+" is an xml declaration which is only at the start of the document");if(!r.XMLDecl.test(t.substring(e)))return i.fatalError("xml declaration is not well-formed")}return s.processingInstruction(n[1],n[2]),e+n[0].length}function T(){this.attributeNames=Object.create(null)}T.prototype={setTagName:function(t){if(!r.QName_exact.test(t))throw new Error("invalid tagName:"+t);this.tagName=t},addValue:function(t,e,s){if(!r.QName_exact.test(t))throw new Error("invalid attribute:"+t);this.attributeNames[t]=this.length,this[this.length++]={qName:t,value:e,offset:s}},length:0,getLocalName:function(t){return this[t].localName},getLocator:function(t){return this[t].locator},getQName:function(t){return this[t].qName},getURI:function(t){return this[t].uri},getValue:function(t){return this[t].value}},e.XMLReader=p,e.parseUtils=y,e.parseDoctypeCommentOrCData=N},999(t,e,s){(function(){"use strict";var e=this;function s(t){return"string"==typeof t}function i(t,e,s){return t.call.apply(t.bind,arguments)}function r(t,e,s){if(!t)throw Error();if(2e?1:0}var h,d=Array.prototype.indexOf?function(t,e,s){return Array.prototype.indexOf.call(t,e,s)}:function(t,e,i){if(i=null==i?0:0>i?Math.max(0,t.length+i):i,s(t))return s(e)&&1==e.length?t.indexOf(e,i):-1;for(;iparseFloat(L)){E=String(R);break t}}E=L}var M={};function I(t){if(!M[t]){for(var e=0,s=a(String(E)).split("."),i=a(String(t)).split("."),r=Math.max(s.length,i.length),n=0;0==e&&n",4,2,function(t,e,s){return mt(function(t,e){return t>e},t,e,s)}),bt("<=",4,2,function(t,e,s){return mt(function(t,e){return t<=e},t,e,s)}),bt(">=",4,2,function(t,e,s){return mt(function(t,e){return t>=e},t,e,s)});var Et=bt("=",3,2,function(t,e,s){return mt(function(t,e){return t==e},t,e,s,!0)});function xt(t,e,s){this.a=t,this.b=e||1,this.f=s||1}function yt(t,e){if(e.a.length&&4!=t.i)throw Error("Primary expression must evaluate to nodeset if filter has predicate(s).");ot.call(this,t.i),this.c=t,this.h=e,this.g=t.g,this.b=t.b}function Nt(t,e){if(e.lengtht.v)throw Error("Function "+t.j+" expects at most "+t.v+" arguments, "+e.length+" given");t.B&&u(e,function(e,s){if(4!=e.i)throw Error("Argument "+s+" to function "+t.j+" is not of type Nodeset: "+e)}),ot.call(this,t.i),this.h=t,this.c=e,lt(this,t.g||f(e,function(t){return t.g})),ct(this,t.D&&!e.length||t.C&&!!e.length||f(e,function(t){return t.b}))}function vt(t,e,s,i,r,n,o,a,l){this.j=t,this.i=e,this.g=s,this.D=i,this.C=r,this.m=n,this.A=o,this.v=void 0!==a?a:o,this.B=!!l}bt("!=",3,2,function(t,e,s){return mt(function(t,e){return t!=e},t,e,s,!0)}),bt("and",2,2,function(t,e,s){return ut(t,s)&&ut(e,s)}),bt("or",1,2,function(t,e,s){return ut(t,s)||ut(e,s)}),o(yt),yt.prototype.a=function(t){return t=this.c.a(t),Ht(this.h,t)},yt.prototype.toString=function(){return"Filter:"+at(this.c)+at(this.h)},o(Nt),Nt.prototype.a=function(t){return this.h.m.apply(null,function(t){return Array.prototype.concat.apply(Array.prototype,arguments)}(t,this.c))},Nt.prototype.toString=function(){var t="Function: "+this.h;if(this.c.length){var e=m(this.c,function(t,e){return t+at(e)},"Arguments:");t=t+at(e)}return t},vt.prototype.toString=function(){return this.j};var Tt={};function Ct(t,e,s,i,r,n,o,a){if(Tt.hasOwnProperty(t))throw Error("Function already created: "+t+".");Tt[t]=new vt(t,e,s,i,!1,r,n,o,a)}function At(t,e){switch(this.h=t,this.c=void 0!==e?e:null,this.b=null,t){case"comment":this.b=8;break;case"text":this.b=3;break;case"processing-instruction":this.b=7;break;case"node":break;default:throw Error("Unexpected argument")}}function Lt(t){return"comment"==t||"text"==t||"processing-instruction"==t||"node"==t}function St(t){this.b=t,this.a=0}Ct("boolean",2,!1,!1,function(t,e){return ut(e,t)},1),Ct("ceiling",1,!1,!1,function(t,e){return Math.ceil(ht(e,t))},1),Ct("concat",3,!1,!1,function(t,e){return m(function(t,e,s){return 2>=arguments.length?Array.prototype.slice.call(t,e):Array.prototype.slice.call(t,e,s)}(arguments,1),function(e,s){return e+dt(s,t)},"")},2,null),Ct("contains",2,!1,!1,function(t,e,s){return l(dt(e,t),dt(s,t))},2),Ct("count",1,!1,!1,function(t,e){return e.a(t).l},1,1,!0),Ct("false",2,!1,!1,function(){return!1},0),Ct("floor",1,!1,!1,function(t,e){return Math.floor(ht(e,t))},1),Ct("id",4,!1,!1,function(t,e){function i(t){if(O){var e=r.all[t];if(e){if(e.nodeType&&t==e.id)return e;if(e.length)return function(t,e){var i;t:{i=t.length;for(var r=s(t)?t.split(""):t,n=0;ni?null:s(t)?t.charAt(i):t[i]}(e,function(e){return t==e.id})}return null}return r.getElementById(t)}var r=9==(n=t.a).nodeType?n:n.ownerDocument,n=dt(e,t).split(/\s+/),o=[];u(n,function(t){!(t=i(t))||0<=d(o,t)||o.push(t)}),o.sort(G);var a=new $;return u(o,function(t){tt(a,t)}),a},1),Ct("lang",2,!1,!1,function(){return!1},1),Ct("last",1,!0,!1,function(t){if(1!=arguments.length)throw Error("Function last expects ()");return t.f},0),Ct("local-name",3,!1,!0,function(t,e){var s=e?et(e.a(t)):t.a;return s?s.localName||s.nodeName.toLowerCase():""},0,1,!0),Ct("name",3,!1,!0,function(t,e){var s=e?et(e.a(t)):t.a;return s?s.nodeName.toLowerCase():""},0,1,!0),Ct("namespace-uri",3,!0,!1,function(){return""},0,1,!0),Ct("normalize-space",3,!1,!0,function(t,e){return(e?dt(e,t):F(t.a)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1),Ct("not",2,!1,!1,function(t,e){return!ut(e,t)},1),Ct("number",1,!1,!0,function(t,e){return e?ht(e,t):+F(t.a)},0,1),Ct("position",1,!0,!1,function(t){return t.b},0),Ct("round",1,!1,!1,function(t,e){return Math.round(ht(e,t))},1),Ct("starts-with",2,!1,!1,function(t,e,s){return e=dt(e,t),t=dt(s,t),0==e.lastIndexOf(t,0)},2),Ct("string",3,!1,!0,function(t,e){return e?dt(e,t):F(t.a)},0,1),Ct("string-length",1,!1,!0,function(t,e){return(e?dt(e,t):F(t.a)).length},0,1),Ct("substring",3,!1,!1,function(t,e,s,i){if(s=ht(s,t),isNaN(s)||1/0==s||-1/0==s)return"";if(i=i?ht(i,t):1/0,isNaN(i)||-1/0===i)return"";s=Math.round(s)-1;var r=Math.max(s,0);return t=dt(e,t),1/0==i?t.substring(r):t.substring(r,s+Math.round(i))},2,3),Ct("substring-after",3,!1,!1,function(t,e,s){return e=dt(e,t),t=dt(s,t),-1==(s=e.indexOf(t))?"":e.substring(s+t.length)},2),Ct("substring-before",3,!1,!1,function(t,e,s){return e=dt(e,t),t=dt(s,t),-1==(t=e.indexOf(t))?"":e.substring(0,t)},2),Ct("sum",1,!1,!1,function(t,e){for(var s=it(e.a(t)),i=0,r=nt(s);r;r=nt(s))i+=+F(r);return i},1,1,!0),Ct("translate",3,!1,!1,function(t,e,s,i){e=dt(e,t),s=dt(s,t);var r=dt(i,t);for(t={},i=0;i]=|\s+|./g,Mt=/^\s/;function It(t,e){return t.b[t.a+(e||0)]}function wt(t){return t.b[t.a++]}function kt(t){return t.b.length<=t.a}function Ot(t){ot.call(this,3),this.c=t.substring(1,t.length-1)}function Dt(t,e){var s;this.j=t.toLowerCase(),s="*"==this.j?"*":"http://www.w3.org/1999/xhtml",this.c=e?e.toLowerCase():s}function Pt(t,e){if(ot.call(this,t.i),this.h=t,this.c=e,this.g=t.g,this.b=t.b,1==this.c.length){var s=this.c[0];s.u||s.c!=Xt||"*"!=(s=s.o).f()&&(this.f={name:s.f(),s:null})}}function Bt(){ot.call(this,4)}function Ft(){ot.call(this,4)}function jt(t){return"/"==t||"//"==t}function _t(t){ot.call(this,4),this.c=t,lt(this,f(this.c,function(t){return t.g})),ct(this,f(this.c,function(t){return t.b}))}function Ut(t,e){this.a=t,this.b=!!e}function Ht(t,e,s){for(s=s||0;s(t=wt(t.a)).length)throw Error("Unclosed literal string");return new Ot(t)}function ae(t){var e,s,i=[];if(jt(It(t.a))){if(e=wt(t.a),s=It(t.a),"/"==e&&(kt(t.a)||"."!=s&&".."!=s&&"@"!=s&&"*"!=s&&!/(?![0-9])[\w]/.test(s)))return new Bt;s=new Bt,ie(t,"Missing next location step."),e=le(t,e),i.push(e)}else{t:{switch(s=(e=It(t.a)).charAt(0)){case"$":throw Error("Variable reference not allowed in HTML XPath");case"(":wt(t.a),e=se(t),ie(t,'unclosed "("'),re(t,")");break;case'"':case"'":e=oe(t);break;default:if(isNaN(+e)){if(Lt(e)||!/(?![0-9])[\w]/.test(s)||"("!=It(t.a,1)){e=null;break t}for(e=wt(t.a),e=Tt[e]||null,wt(t.a),s=[];")"!=It(t.a)&&(ie(t,"Missing function argument list."),s.push(se(t)),","==It(t.a));)wt(t.a);ie(t,"Unclosed function argument list."),ne(t),e=new Nt(e,s)}else e=new te(+wt(t.a))}"["==It(t.a)&&(e=new yt(e,s=new Ut(ce(t))))}if(e){if(!jt(It(t.a)))return e;s=e}else e=le(t,"/"),s=new Ft,i.push(e)}for(;jt(It(t.a));)e=wt(t.a),ie(t,"Missing next location step."),e=le(t,e),i.push(e);return new Pt(s,i)}function le(t,e){var s,i,r,n;if("/"!=e&&"//"!=e)throw Error('Step op should be "/" or "//"');if("."==It(t.a))return i=new Wt(Qt,new At("node")),wt(t.a),i;if(".."==It(t.a))return i=new Wt($t,new At("node")),wt(t.a),i;if("@"==It(t.a))n=Xt,wt(t.a),ie(t,"Missing attribute name");else if("::"==It(t.a,1)){if(!/(?![0-9])[\w]/.test(It(t.a).charAt(0)))throw Error("Bad token: "+wt(t.a));if(s=wt(t.a),!(n=qt[s]||null))throw Error("No axis with name: "+s);wt(t.a),ie(t,"Missing node name")}else n=Gt;if(s=It(t.a),!/(?![0-9])[\w\*]/.test(s.charAt(0)))throw Error("Bad token: "+wt(t.a));if("("==It(t.a,1)){if(!Lt(s))throw Error("Invalid node type: "+s);if(!Lt(s=wt(t.a)))throw Error("Invalid type name: "+s);re(t,"("),ie(t,"Bad nodetype");var o=null;'"'!=(r=It(t.a).charAt(0))&&"'"!=r||(o=oe(t)),ie(t,"Bad nodetype"),ne(t),s=new At(s,o)}else if(-1==(r=(s=wt(t.a)).indexOf(":")))s=new Dt(s);else{var a;if("*"==(o=s.substring(0,r)))a="*";else if(!(a=t.b(o)))throw Error("Namespace prefix not declared: "+o);s=new Dt(s=s.substr(r+1),a)}return r=new Ut(ce(t),n.a),i||new Wt(n,s,r,"//"==e)}function ce(t){for(var e=[];"["==It(t.a);){wt(t.a),ie(t,"Missing predicate expression.");var s=se(t);e.push(s),ie(t,"Unclosed predicate expression."),re(t,"]")}return e}function he(t){if("-"==It(t.a))return wt(t.a),new Zt(he(t));var e=ae(t);if("|"!=It(t.a))t=e;else{for(e=[e];"|"==wt(t.a);)ie(t,"Missing next union location path."),e.push(ae(t));t.a.a--,t=new _t(e)}return t}function de(t){switch(t.nodeType){case 1:return function(t,e){var s=Array.prototype.slice.call(arguments,1);return function(){var e=s.slice();return e.push.apply(e,arguments),t.apply(this,e)}}(pe,t);case 9:return de(t.documentElement);case 11:case 10:case 6:case 12:return ue;default:return t.parentNode?de(t.parentNode):ue}}function ue(){return null}function pe(t,e){if(t.prefix==e)return t.namespaceURI||"http://www.w3.org/1999/xhtml";var s=t.getAttributeNode("xmlns:"+e);return s&&s.specified?s.value||null:t.parentNode&&9!=t.parentNode.nodeType?pe(t.parentNode,e):null}function me(t,e){if(!t.length)throw Error("Empty XPath expression.");var s=function(t){t=t.match(Rt);for(var e=0;e=s.length?null:s[n++]},this.snapshotItem=function(t){if(6!=e&&7!=e)throw Error("snapshotItem called with wrong result type");return t>=s.length||0>t?null:s[t]}}function ge(t){this.lookupNamespaceURI=de(t)}function be(t,s){var i=t||e,r=i.Document&&i.Document.prototype||i.document;r.evaluate&&!s||(i.XPathResult=fe,r.evaluate=function(t,e,s,i){return new me(t,s).evaluate(e,i)},r.createExpression=function(t,e){return new me(t,e)},r.createNSResolver=function(t){return new ge(t)})}o(Zt),Zt.prototype.a=function(t){return-ht(this.c,t)},Zt.prototype.toString=function(){return"Unary Expression: -"+at(this.c)},o(te),te.prototype.a=function(){return this.c},te.prototype.toString=function(){return"Number: "+this.c},fe.ANY_TYPE=0,fe.NUMBER_TYPE=1,fe.STRING_TYPE=2,fe.BOOLEAN_TYPE=3,fe.UNORDERED_NODE_ITERATOR_TYPE=4,fe.ORDERED_NODE_ITERATOR_TYPE=5,fe.UNORDERED_NODE_SNAPSHOT_TYPE=6,fe.ORDERED_NODE_SNAPSHOT_TYPE=7,fe.ANY_UNORDERED_NODE_TYPE=8,fe.FIRST_ORDERED_NODE_TYPE=9;var Ee,xe=["wgxpath","install"],ye=e;xe[0]in ye||!ye.execScript||ye.execScript("var "+xe[0]);for(;xe.length&&(Ee=xe.shift());)xe.length||void 0===be?ye=ye[Ee]?ye[Ee]:ye[Ee]={}:ye[Ee]=be;t.exports.install=be,t.exports.XPathResultType={ANY_TYPE:0,NUMBER_TYPE:1,STRING_TYPE:2,BOOLEAN_TYPE:3,UNORDERED_NODE_ITERATOR_TYPE:4,ORDERED_NODE_ITERATOR_TYPE:5,UNORDERED_NODE_SNAPSHOT_TYPE:6,ORDERED_NODE_SNAPSHOT_TYPE:7,ANY_UNORDERED_NODE_TYPE:8,FIRST_ORDERED_NODE_TYPE:9}}).call(s.g)}},i={};function r(t){var e=i[t];if(void 0!==e)return e.exports;var n=i[t]={exports:{}};return s[t](n,n.exports,r),n.exports}e=Object.getPrototypeOf?t=>Object.getPrototypeOf(t):t=>t.__proto__,r.t=function(s,i){if(1&i&&(s=this(s)),8&i)return s;if("object"==typeof s&&s){if(4&i&&s.__esModule)return s;if(16&i&&"function"==typeof s.then)return s}var n=Object.create(null);r.r(n);var o={};t=t||[null,e({}),e([]),e(e)];for(var a=2&i&&s;("object"==typeof a||"function"==typeof a)&&!~t.indexOf(a);a=e(a))Object.getOwnPropertyNames(a).forEach(t=>o[t]=()=>s[t]);return o.default=()=>s,r.d(n,o),n},r.d=(t,e)=>{for(var s in e)r.o(e,s)&&!r.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{"use strict";var t={};r.r(t),r.d(t,{GLOBAL:()=>oi,MathJax:()=>di,combineConfig:()=>li,combineDefaults:()=>ci,combineWithMathJax:()=>hi,isObject:()=>ai});var e={};r.r(e),r.d(e,{context:()=>mi,hasWindow:()=>ui,isCJS:()=>pi});var s={};r.r(s),r.d(s,{Package:()=>gi,PackageError:()=>fi});var i={};r.r(i),r.d(i,{PrioritizedList:()=>bi});var n={};r.r(n),r.d(n,{FunctionList:()=>Ei});var o={};r.r(o),r.d(o,{CONFIG:()=>Ai,Loader:()=>Ti,MathJax:()=>Ci,PathFilters:()=>Ni});var a={};r.r(a),r.d(a,{APPEND:()=>Ri,Expandable:()=>wi,OPTIONS:()=>Ii,REMOVE:()=>Mi,copy:()=>Pi,defaultOptions:()=>Fi,expandable:()=>ki,insert:()=>Bi,isObject:()=>Si,keys:()=>Di,lookup:()=>Wi,makeArray:()=>Oi,selectOptions:()=>_i,selectOptionsFromKeys:()=>Ui,separateOptions:()=>Hi,userOptions:()=>ji});var l={};r.r(l),r.d(l,{CONFIG:()=>Xi,MathJax:()=>Vi,Startup:()=>qi});var c={};r.r(c),r.d(c,{AbstractDOMAdaptor:()=>Ji});var h={};r.r(h),r.d(h,{HTMLAdaptor:()=>$i});var d={};r.r(d),r.d(d,{browserAdaptor:()=>Qi});var u={};r.r(u),r.d(u,{AbstractFindMath:()=>Zi});var p={};r.r(p),r.d(p,{AbstractInputJax:()=>tr});var m={};r.r(m),r.d(m,{AbstractOutputJax:()=>er});var f={};r.r(f),r.d(f,{END:()=>sr,LinkedList:()=>rr,ListItem:()=>ir});var g={};r.r(g),r.d(g,{AbstractMathList:()=>nr});var b={};r.r(b),r.d(b,{AbstractMathItem:()=>ar,STATE:()=>lr,newState:()=>cr,protoItem:()=>or});var E={};r.r(E),r.d(E,{AbstractFactory:()=>hr});var x={};r.r(x),r.d(x,{AbstractNodeFactory:()=>dr});var y={};r.r(y),r.d(y,{Attributes:()=>pr,INHERIT:()=>ur});var N={};r.r(N),r.d(N,{AbstractEmptyNode:()=>fr,AbstractNode:()=>mr});var v={};r.r(v),r.d(v,{AbstractMmlBaseNode:()=>Ar,AbstractMmlEmptyNode:()=>Lr,AbstractMmlLayoutNode:()=>Cr,AbstractMmlNode:()=>vr,AbstractMmlTokenNode:()=>Tr,MATHVARIANTS:()=>yr,TEXCLASS:()=>gr,TEXCLASSNAMES:()=>br,TextNode:()=>Sr,XMLNode:()=>Rr,indentAttributes:()=>Nr});var T={};r.r(T),r.d(T,{MmlMath:()=>Mr});var C={};r.r(C),r.d(C,{MmlMi:()=>Ir});var A={};r.r(A),r.d(A,{MmlMn:()=>wr});var L={};r.r(L),r.d(L,{MMLSPACING:()=>Br,MO:()=>Or,OPDEF:()=>kr,OPTABLE:()=>Fr,RANGES:()=>Dr,getRange:()=>Pr});var S={};r.r(S),r.d(S,{isPercent:()=>Wr,quotePattern:()=>_r,replaceUnicode:()=>qr,sortLength:()=>jr,split:()=>zr,toEntity:()=>Vr,unicodeChars:()=>Ur,unicodeString:()=>Hr});var R={};r.r(R),r.d(R,{MmlMo:()=>Xr});var M={};r.r(M),r.d(M,{MmlMtext:()=>Gr});var I={};r.r(I),r.d(I,{MmlMspace:()=>Jr});var w={};r.r(w),r.d(w,{MmlMs:()=>Kr});var k={};r.r(k),r.d(k,{MmlInferredMrow:()=>Yr,MmlMrow:()=>$r});var O={};r.r(O),r.d(O,{MmlMfrac:()=>Qr});var D={};r.r(D),r.d(D,{MmlMsqrt:()=>Zr});var P={};r.r(P),r.d(P,{MmlMroot:()=>tn});var B={};r.r(B),r.d(B,{MmlMstyle:()=>en});var F={};r.r(F),r.d(F,{MmlMerror:()=>sn});var j={};r.r(j),r.d(j,{MmlMpadded:()=>rn});var _={};r.r(_),r.d(_,{MmlMphantom:()=>nn});var U={};r.r(U),r.d(U,{MmlMfenced:()=>on});var H={};r.r(H),r.d(H,{MmlMenclose:()=>an});var W={};r.r(W),r.d(W,{MmlMaction:()=>ln});var z={};r.r(z),r.d(z,{MmlMsub:()=>hn,MmlMsubsup:()=>cn,MmlMsup:()=>dn});var q={};r.r(q),r.d(q,{MmlMover:()=>mn,MmlMunder:()=>pn,MmlMunderover:()=>un});var V={};r.r(V),r.d(V,{MmlMmultiscripts:()=>fn,MmlMprescripts:()=>gn,MmlNone:()=>bn});var X={};r.r(X),r.d(X,{MmlMtable:()=>En});var G={};r.r(G),r.d(G,{MmlMlabeledtr:()=>yn,MmlMtr:()=>xn});var J={};r.r(J),r.d(J,{MmlMtd:()=>Nn});var K={};r.r(K),r.d(K,{MmlMaligngroup:()=>vn});var $={};r.r($),r.d($,{MmlMalignmark:()=>Tn});var Y={};r.r(Y),r.d(Y,{MmlMglyph:()=>Cn});var Q={};r.r(Q),r.d(Q,{MmlAnnotation:()=>Sn,MmlAnnotationXML:()=>Ln,MmlSemantics:()=>An});var Z={};r.r(Z),r.d(Z,{TeXAtom:()=>Rn});var tt={};r.r(tt),r.d(tt,{MathChoice:()=>Mn});var et={};r.r(et),r.d(et,{HtmlNode:()=>In});var st={};r.r(st),r.d(st,{MML:()=>wn});var it={};r.r(it),r.d(it,{MmlFactory:()=>kn});var rt={};r.r(rt),r.d(rt,{BitField:()=>On,BitFieldClass:()=>Dn});var nt={};r.r(nt),r.d(nt,{handleRetriesFor:()=>Pn,retryAfter:()=>Bn});var ot={};r.r(ot),r.d(ot,{AbstractMathDocument:()=>qn,RenderList:()=>jn,resetAllOptions:()=>Un,resetOptions:()=>_n});var at={};r.r(at),r.d(at,{AbstractHandler:()=>Xn});var lt={};r.r(lt),r.d(lt,{HandlerList:()=>Gn});var ct={};r.r(ct),r.d(ct,{AbstractVisitor:()=>Jn});var ht={};r.r(ht),r.d(ht,{DATAMJX:()=>Kn,MmlVisitor:()=>$n});var dt={};r.r(dt),r.d(dt,{MathMLVisitor:()=>Yn});var ut={};r.r(ut),r.d(ut,{SerializedMmlVisitor:()=>Qn});var pt={};r.r(pt),r.d(pt,{AbstractWrapper:()=>Zn});var mt={};r.r(mt),r.d(mt,{AbstractWrapperFactory:()=>to});var ft={};r.r(ft),r.d(ft,{mathjax:()=>eo});var gt={};r.r(gt),r.d(gt,{HTMLMathItem:()=>so});var bt={};r.r(bt),r.d(bt,{HTMLMathList:()=>io});var Et={};r.r(Et),r.d(Et,{HTMLDomStrings:()=>ro});var xt={};r.r(xt),r.d(xt,{HTMLDocument:()=>no});var yt={};r.r(yt),r.d(yt,{HTMLHandler:()=>oo});var Nt={};r.r(Nt),r.d(Nt,{RegisterHTMLHandler:()=>ao});var vt={};r.r(vt),r.d(vt,{StyleJsonSheet:()=>lo});var Tt={};r.r(Tt),r.d(Tt,{DraggableDialog:()=>uo,isDialog:()=>ho});var Ct={};r.r(Ct),r.d(Ct,{InfoDialog:()=>po});var At={};r.r(At),r.d(At,{asyncLoad:()=>mo});var Lt={};r.r(Lt),r.d(Lt,{BIGDIMEN:()=>fo,MATHSPACE:()=>Eo,RELUNITS:()=>bo,UNITS:()=>go,em:()=>No,length2em:()=>xo,percent:()=>yo,px:()=>vo});var St={};r.r(St),r.d(St,{BBox:()=>To});var Rt={};r.r(Rt),r.d(Rt,{add:()=>So,entities:()=>Ao,numeric:()=>wo,options:()=>Co,remove:()=>Ro,translate:()=>Mo});var Mt={};r.r(Mt),r.d(Mt,{Styles:()=>Vo,TRBL:()=>ko,WSC:()=>Oo});var It={};r.r(It),r.d(It,{max:()=>Go,sum:()=>Xo});var wt={};r.r(wt),r.d(wt,{FindTeX:()=>Jo});var kt={};r.r(kt),r.d(kt,{default:()=>$o});var Ot={};r.r(Ot),r.d(Ot,{TexConstant:()=>Yo});var Dt={};r.r(Dt),r.d(Dt,{default:()=>ia});var Pt={};r.r(Pt),r.d(Pt,{ConfigurationType:()=>ra,HandlerType:()=>na});var Bt={};r.r(Bt),r.d(Bt,{UnitUtil:()=>aa});var Ft={};r.r(Ft),r.d(Ft,{default:()=>la});var jt={};r.r(jt),r.d(jt,{default:()=>ha});var _t={};r.r(_t),r.d(_t,{BaseItem:()=>ua,MmlStack:()=>da});var Ut={};r.r(Ut),r.d(Ut,{default:()=>pa});var Ht={};r.r(Ht),r.d(Ht,{default:()=>ga});var Wt={};r.r(Wt),r.d(Wt,{NodeFactory:()=>ba});var zt={};r.r(zt),r.d(zt,{KeyValueDef:()=>Ea,KeyValueTypes:()=>xa,ParseUtil:()=>va});var qt={};r.r(qt),r.d(qt,{ColumnParser:()=>Ta});var Vt={};r.r(Vt),r.d(Vt,{default:()=>La});var Xt={};r.r(Xt),r.d(Xt,{AbstractTags:()=>Ma,AllTags:()=>wa,Label:()=>Sa,NoTags:()=>Ia,TagInfo:()=>Ra,TagsFactory:()=>Da});var Gt={};r.r(Gt),r.d(Gt,{Macro:()=>Ba,Token:()=>Pa});var Jt={};r.r(Jt),r.d(Jt,{AbstractParseMap:()=>Ua,AbstractTokenMap:()=>ja,CharacterMap:()=>Ha,CommandMap:()=>qa,DelimiterMap:()=>Wa,EnvironmentMap:()=>Va,MacroMap:()=>za,RegExpMap:()=>_a,parseResult:()=>Fa});var Kt={};r.r(Kt),r.d(Kt,{MapHandler:()=>Ga,SubHandler:()=>Ja,SubHandlers:()=>Ka});var $t={};r.r($t),r.d($t,{Configuration:()=>$a,ConfigurationHandler:()=>Qa,ParserConfiguration:()=>Za});var Yt={};r.r(Yt),r.d(Yt,{ArrayItem:()=>vl,BeginItem:()=>ul,BreakItem:()=>dl,CellItem:()=>gl,CloseItem:()=>il,DotsItem:()=>Nl,EndItem:()=>pl,EqnArrayItem:()=>Tl,EquationItem:()=>Al,FnItem:()=>El,LeftItem:()=>ll,Middle:()=>cl,MmlItem:()=>bl,MstyleItem:()=>Cl,NonscriptItem:()=>yl,NotItem:()=>xl,NullItem:()=>rl,OpenItem:()=>sl,OverItem:()=>al,PositionItem:()=>fl,PrimeItem:()=>nl,RightItem:()=>hl,StartItem:()=>tl,StopItem:()=>el,StyleItem:()=>ml,SubsupItem:()=>ol});var Qt={};r.r(Qt),r.d(Qt,{default:()=>wl,splitAlignArray:()=>Rl});var Zt={};r.r(Zt),r.d(Zt,{default:()=>Dl});var te={};r.r(te),r.d(te,{BaseConfiguration:()=>Ul,BaseTags:()=>_l,Other:()=>jl});var ee={};r.r(ee),r.d(ee,{TeX:()=>Hl});var se={};r.r(se),r.d(se,{FlalignItem:()=>zl,MultlineItem:()=>Wl});var ie={};r.r(ie),r.d(ie,{NewcommandPriority:()=>Vl,NewcommandTables:()=>ql,NewcommandUtil:()=>Xl});var re={};r.r(re),r.d(re,{AmsMethods:()=>Kl});var ne={};r.r(ne),r.d(ne,{BeginEnvItem:()=>$l});var oe={};r.r(oe),r.d(oe,{default:()=>Ql});var ae={};r.r(ae),r.d(ae,{NewcommandConfig:()=>Zl,NewcommandConfiguration:()=>tc});var le={};r.r(le),r.d(le,{AmsConfiguration:()=>sc,AmsTags:()=>ec});var ce={};r.r(ce),r.d(ce,{RequireConfiguration:()=>cc,RequireLoad:()=>oc,RequireMethods:()=>ac,options:()=>lc});var he={};r.r(he),r.d(he,{AutoloadConfiguration:()=>pc});var de={};r.r(de),r.d(de,{ConfigMacrosConfiguration:()=>Ec});var ue={};r.r(ue),r.d(ue,{NoUndefinedConfiguration:()=>xc});var pe={};r.r(pe),r.d(pe,{TextParser:()=>yc});var me={};r.r(me),r.d(me,{TextMacrosMethods:()=>Nc});var fe={};r.r(fe),r.d(fe,{TextBaseConfiguration:()=>Tc,TextMacrosConfiguration:()=>Ac});var ge={};r.r(ge),r.d(ge,{FindMathML:()=>Sc});var be={};r.r(be),r.d(be,{MathMLCompile:()=>Rc});var Ee={};r.r(Ee),r.d(Ee,{MathML:()=>Mc});var xe={};r.r(xe),r.d(xe,{DIRECTION:()=>Ic,H:()=>kc,V:()=>wc});var ye={};r.r(ye),r.d(ye,{DIRECTION:()=>Ic,FontData:()=>jc,HFUZZ:()=>Pc,NOSTRETCH:()=>Bc,VFUZZ:()=>Dc,mergeOptions:()=>Fc});var Ne={};r.r(Ne),r.d(Ne,{LineBBox:()=>_c});var ve={};r.r(ve),r.d(ve,{LinebreakVisitor:()=>Wc,Linebreaks:()=>Hc,NOBREAK:()=>Uc});var Te={};r.r(Te),r.d(Te,{CommonOutputJax:()=>qc,FONTPATH:()=>zc});var Ce={};r.r(Ce),r.d(Ce,{CommonWrapperFactory:()=>Vc});var Ae={};r.r(Ae),r.d(Ae,{CommonWrapper:()=>$c,SPACE:()=>Kc});var Le={};r.r(Le),r.d(Le,{ChtmlWrapper:()=>Qc,FONTSIZE:()=>Yc});var Se={};r.r(Se),r.d(Se,{CommonMathMixin:()=>Zc});var Re={};r.r(Re),r.d(Re,{ChtmlMath:()=>th});var Me={};r.r(Me),r.d(Me,{CommonMiMixin:()=>eh});var Ie={};r.r(Ie),r.d(Ie,{ChtmlMi:()=>sh});var we={};r.r(we),r.d(we,{Usage:()=>ih});var ke={};r.r(ke),r.d(ke,{AddCSS:()=>nh,ChtmlFontData:()=>rh,DIRECTION:()=>Ic,FontData:()=>jc,HFUZZ:()=>Pc,NOSTRETCH:()=>Bc,VFUZZ:()=>Dc,mergeOptions:()=>Fc});var Oe={};r.r(Oe),r.d(Oe,{CommonMoMixin:()=>oh});var De={};r.r(De),r.d(De,{ChtmlMo:()=>ah});var Pe={};r.r(Pe),r.d(Pe,{CommonMnMixin:()=>lh});var Be={};r.r(Be),r.d(Be,{ChtmlMn:()=>ch});var Fe={};r.r(Fe),r.d(Fe,{CommonMsMixin:()=>hh});var je={};r.r(je),r.d(je,{ChtmlMs:()=>dh});var _e={};r.r(_e),r.d(_e,{CommonMtextMixin:()=>uh});var Ue={};r.r(Ue),r.d(Ue,{ChtmlMtext:()=>ph});var He={};r.r(He),r.d(He,{CommonMspaceMixin:()=>mh});var We={};r.r(We),r.d(We,{ChtmlMspace:()=>fh});var ze={};r.r(ze),r.d(ze,{CommonMpaddedMixin:()=>gh});var qe={};r.r(qe),r.d(qe,{ChtmlMpadded:()=>bh});var Ve={};r.r(Ve),r.d(Ve,{ARROWDX:()=>xh,ARROWX:()=>Eh,ARROWY:()=>yh,CommonArrow:()=>_h,CommonBorder:()=>Ph,CommonBorder2:()=>Bh,CommonDiagonalArrow:()=>jh,CommonDiagonalStrike:()=>Fh,PADDING:()=>vh,SOLID:()=>Th,THICKNESS:()=>Nh,arrowBBox:()=>Dh,arrowBBoxHD:()=>Ih,arrowBBoxW:()=>wh,arrowDef:()=>kh,arrowHead:()=>Mh,diagonalArrowDef:()=>Oh,fullBBox:()=>Lh,fullBorder:()=>Rh,fullPadding:()=>Sh,sideIndex:()=>Ch,sideNames:()=>Ah});var Xe={};r.r(Xe),r.d(Xe,{CommonMencloseMixin:()=>Uh});var Ge={};r.r(Ge),r.d(Ge,{ARROWDX:()=>xh,ARROWX:()=>Eh,ARROWY:()=>yh,Arrow:()=>Xh,Border:()=>Wh,Border2:()=>zh,CommonArrow:()=>_h,CommonBorder:()=>Ph,CommonBorder2:()=>Bh,CommonDiagonalArrow:()=>jh,CommonDiagonalStrike:()=>Fh,DiagonalArrow:()=>Vh,DiagonalStrike:()=>qh,PADDING:()=>vh,RenderElement:()=>Hh,SOLID:()=>Th,THICKNESS:()=>Nh,arrowBBox:()=>Dh,arrowBBoxHD:()=>Ih,arrowBBoxW:()=>wh,arrowDef:()=>kh,arrowHead:()=>Mh,diagonalArrowDef:()=>Oh,fullBBox:()=>Lh,fullBorder:()=>Rh,fullPadding:()=>Sh,sideIndex:()=>Ch,sideNames:()=>Ah});var Je={};r.r(Je),r.d(Je,{ChtmlMenclose:()=>Kh});var Ke={};r.r(Ke),r.d(Ke,{CommonInferredMrowMixin:()=>Yh,CommonMrowMixin:()=>$h});var $e={};r.r($e),r.d($e,{ChtmlInferredMrow:()=>Zh,ChtmlMrow:()=>Qh});var Ye={};r.r(Ye),r.d(Ye,{CommonMfencedMixin:()=>td});var Qe={};r.r(Qe),r.d(Qe,{ChtmlMfenced:()=>ed});var Ze={};r.r(Ze),r.d(Ze,{CommonMfracMixin:()=>sd});var ts={};r.r(ts),r.d(ts,{ChtmlMfrac:()=>id});var es={};r.r(es),r.d(es,{CommonMsqrtMixin:()=>rd});var ss={};r.r(ss),r.d(ss,{ChtmlMsqrt:()=>nd});var is={};r.r(is),r.d(is,{CommonMrootMixin:()=>od});var rs={};r.r(rs),r.d(rs,{ChtmlMroot:()=>ad});var ns={};r.r(ns),r.d(ns,{CommonMsubMixin:()=>ld,CommonMsubsupMixin:()=>hd,CommonMsupMixin:()=>cd});var os={};r.r(os),r.d(os,{CommonScriptbaseMixin:()=>dd});var as={};r.r(as),r.d(as,{ChtmlScriptbase:()=>ud});var ls={};r.r(ls),r.d(ls,{ChtmlMsub:()=>pd,ChtmlMsubsup:()=>fd,ChtmlMsup:()=>md});var cs={};r.r(cs),r.d(cs,{CommonMoverMixin:()=>bd,CommonMunderMixin:()=>gd,CommonMunderoverMixin:()=>Ed});var hs={};r.r(hs),r.d(hs,{ChtmlMover:()=>yd,ChtmlMunder:()=>xd,ChtmlMunderover:()=>Nd});var ds={};r.r(ds),r.d(ds,{CommonMmultiscriptsMixin:()=>Cd,NextScript:()=>vd,ScriptNames:()=>Td});var us={};r.r(us),r.d(us,{ChtmlMmultiscripts:()=>Ad});var ps={};r.r(ps),r.d(ps,{BREAK_BELOW:()=>Ld,CommonMtableMixin:()=>Sd});var ms={};r.r(ms),r.d(ms,{ChtmlMtable:()=>Rd});var fs={};r.r(fs),r.d(fs,{CommonMlabeledtrMixin:()=>Id,CommonMtrMixin:()=>Md});var gs={};r.r(gs),r.d(gs,{ChtmlMlabeledtr:()=>kd,ChtmlMtr:()=>wd});var bs={};r.r(bs),r.d(bs,{CommonMtdMixin:()=>Od});var Es={};r.r(Es),r.d(Es,{ChtmlMtd:()=>Dd});var xs={};r.r(xs),r.d(xs,{CommonMactionMixin:()=>Bd,TooltipData:()=>Pd});var ys={};r.r(ys),r.d(ys,{ChtmlMaction:()=>Fd});var Ns={};r.r(Ns),r.d(Ns,{CommonMglyphMixin:()=>jd});var vs={};r.r(vs),r.d(vs,{ChtmlMglyph:()=>_d});var Ts={};r.r(Ts),r.d(Ts,{CommonSemanticsMixin:()=>Ud});var Cs={};r.r(Cs),r.d(Cs,{CommonXmlNodeMixin:()=>Hd});var As={};r.r(As),r.d(As,{ChtmlAnnotation:()=>zd,ChtmlAnnotationXML:()=>qd,ChtmlSemantics:()=>Wd,ChtmlXmlNode:()=>Vd});var Ls={};r.r(Ls),r.d(Ls,{CommonTeXAtomMixin:()=>Xd});var Ss={};r.r(Ss),r.d(Ss,{ChtmlTeXAtom:()=>Gd});var Rs={};r.r(Rs),r.d(Rs,{CommonTextNodeMixin:()=>Jd});var Ms={};r.r(Ms),r.d(Ms,{ChtmlTextNode:()=>Kd});var Is={};r.r(Is),r.d(Is,{ChtmlHtmlNode:()=>$d});var ws={};r.r(ws),r.d(ws,{ChtmlWrappers:()=>Yd});var ks={};r.r(ks),r.d(ks,{ChtmlWrapperFactory:()=>Qd});var Os={};r.r(Os),r.d(Os,{DefaultFont:()=>ru,fontName:()=>iu});var Ds={};r.r(Ds),r.d(Ds,{CHTML:()=>nu});var Ps={};r.r(Ps),r.d(Ps,{AddFontIds:()=>ou});var Bs={};r.r(Bs),r.d(Bs,{MJContextMenu:()=>np});var Fs={};r.r(Fs),r.d(Fs,{addPreference:()=>$b,engineSetup:()=>Gb,fromPreference:()=>Yb,locales:()=>Vb,parseDOM:()=>Kb,setupEngine:()=>Xb,toEnriched:()=>Jb,toPreference:()=>Qb});var js={};r.r(js),r.d(js,{clearspeakMenu:()=>aE,localeMenu:()=>cE});var _s={};r.r(_s),r.d(_s,{copyToClipboard:()=>dE,isMac:()=>hE});var Us={};r.r(Us),r.d(Us,{annotation:()=>fE,copyAnnotations:()=>pE,showAnnotations:()=>uE});var Hs={};r.r(Hs),r.d(Hs,{RadioCompare:()=>EE});var Ws={};r.r(Ws),r.d(Ws,{MmlVisitor:()=>xE});var zs={};r.r(zs),r.d(zs,{Menu:()=>vE});var qs={};r.r(qs),r.d(qs,{MenuHandler:()=>AE,MenuMathDocumentMixin:()=>CE,MenuMathItemMixin:()=>TE});var Vs={};r.r(Vs),r.d(Vs,{EnrichHandler:()=>ME,EnrichedMathDocumentMixin:()=>RE,EnrichedMathItemMixin:()=>SE,enrichVisitor:()=>LE});var Xs={};r.r(Xs),r.d(Xs,{InPlace:()=>UE,SemAttr:()=>HE,buildLabel:()=>FE,buildSpeech:()=>jE,honk:()=>_E,ssmlParsing:()=>wE});var Gs={};r.r(Gs),r.d(Gs,{GeneratorPool:()=>WE});var Js={};r.r(Js),r.d(Js,{WorkerHandler:()=>VE});var Ks={};r.r(Ks),r.d(Ks,{SpeechHandler:()=>YE,SpeechMathDocumentMixin:()=>$E,SpeechMathItemMixin:()=>KE});var $s={};r.r($s),r.d($s,{AbstractRegion:()=>QE,DummyRegion:()=>ZE,HoverRegion:()=>rx,LiveRegion:()=>sx,SpeechRegion:()=>ix,StringRegion:()=>tx,ToolTip:()=>ex});var Ys={};r.r(Ys),r.d(Ys,{AbstractExplorer:()=>nx});var Qs={};r.r(Qs),r.d(Qs,{SpeechExplorer:()=>ux,hasModifiers:()=>dx,isContainer:()=>hx});var Zs={};r.r(Zs),r.d(Zs,{AbstractMouseExplorer:()=>mx,ContentHoverer:()=>bx,FlameHoverer:()=>Ex,Hoverer:()=>fx,ValueHoverer:()=>gx});var ti={};r.r(ti),r.d(ti,{AbstractTreeExplorer:()=>xx,ContrastPicker:()=>vx,FlameColorer:()=>yx,TreeColorer:()=>Nx});var ei={};r.r(ei),r.d(ei,{ATTR:()=>Ax,getHighlighter:()=>Mx});var si={};r.r(si),r.d(si,{ExplorerPool:()=>Ox,RegionPool:()=>wx});var ii={};r.r(ii),r.d(ii,{ExplorerHandler:()=>Fx,ExplorerMathDocumentMixin:()=>Bx,ExplorerMathItemMixin:()=>Px,setA11yOption:()=>_x,setA11yOptions:()=>jx});const ri="4.1.3",ni={},oi="undefined"!=typeof window?window:void 0!==r.g?r.g:"undefined"!=typeof globalThis?globalThis:ni;function ai(t){return"object"==typeof t&&null!==t}function li(t,e,s=!1){var i;for(const r of Object.keys(e))"__esModule"!==r&&t[r]!==e[r]&&null!==e[r]&&void 0!==e[r]&&(ai(t[r])&&ai(e[r])?li(t[r],e[r],s||"_"===r):s&&(null===(i=Object.getOwnPropertyDescriptor(t,r))||void 0===i?void 0:i.get)||(t[r]=e[r]));return t}function ci(t,e,s){t[e]||(t[e]={}),t=t[e];for(const e of Object.keys(s))ai(t[e])&&ai(s[e])?ci(t,e,s[e]):null==t[e]&&null!=s[e]&&(t[e]=s[e]);return t}function hi(t){return li(di,t)}void 0!==oi.MathJax&&oi.MathJax.constructor==={}.constructor||(oi.MathJax={}),oi.MathJax.version||(oi.MathJax={version:ri,_:{},config:oi.MathJax});const di=oi.MathJax;!Object.hasOwn&&di.config.startup.polyfillHasOwn&&(Object.hasOwn=function(t,e){if(null==t)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(t),e)});const ui="undefined"!=typeof window,pi="undefined"!=typeof exports,mi={window:ui?window:null,document:ui?window.document:null,os:(()=>{if(ui&&window.navigator){const t=window.navigator.appVersion,e=[["Win","Windows"],["Mac","MacOS"],["X11","Unix"],["Linux","Unix"]];for(const[s,i]of e)if(t.includes(s))return i;if(window.navigator.userAgent.includes("Android"))return"Unix"}else if("undefined"!=typeof process)return{linux:"Unix",android:"Unix",aix:"Unix",freebsd:"Unix",netbsd:"Unix",openbsd:"Unix",sunos:"Unix",darwin:"MacOS",win32:"Windows",cygwin:"Windows"}[process.platform]||process.platform;return"unknown"})(),path:t=>t};"Windows"===mi.os&&(mi.path=t=>t.match(/^[/\\]?[a-zA-Z]:[/\\]/)?(pi?"":"file://")+t.replace(/\\/g,"/").replace(/^\//,""):t.replace(/^\//,"file:///"));class fi extends Error{constructor(t,e){super(t),this.package=e}}class gi{get canLoad(){return 0===this.dependencyCount&&!this.noLoad&&!this.isLoading&&!this.hasFailed}static loadPromise(t){const e=Ai[t]||{},s=e.extraLoads?Ti.load(...e.extraLoads):Promise.resolve(),i=e.checkReady||(()=>Promise.resolve());return s.then(()=>i())}static resolvePath(t,e=!0){const s={name:t,original:t,addExtension:e};return Ti.pathFilters.execute(s),s.name}static loadAll(){for(const t of this.packages.values())t.canLoad&&t.load()}constructor(t,e=!1){this.isLoaded=!1,this.result={},this.isLoading=!1,this.hasFailed=!1,this.dependents=[],this.dependencies=[],this.dependencyCount=0,this.provided=[],this.name=t,this.noLoad=e,gi.packages.set(t,this),this.promise=this.makePromise(this.makeDependencies())}makeDependencies(){const t=[],e=gi.packages,s=this.noLoad,i=this.name,r=[];Object.hasOwn(Ai.dependencies,i)?r.push(...Ai.dependencies[i]):"core"!==i&&r.push("core");for(const i of r){const r=e.get(i)||new gi(i,s);this.dependencies.includes(r)||(r.addDependent(this,s),this.dependencies.push(r),r.isLoaded||(this.dependencyCount++,t.push(r.promise)))}return t}makePromise(t){let e=new Promise((t,e)=>{this.resolve=t,this.reject=e});const s=Ai[this.name]||{};return s.ready&&(e=e.then(t=>s.ready(this.name))),t.length&&(t.push(e),e=Promise.all(t).then(t=>t.join(", "))),s.failed&&e.catch(t=>s.failed(new fi(t,this.name))),e}load(){if(!this.isLoaded&&!this.isLoading&&!this.noLoad){this.isLoading=!0;const t=gi.resolvePath(this.name);Ai.require?this.loadCustom(t):this.loadScript(t)}}loadCustom(t){try{const e=Ai.require(t);e instanceof Promise?e.then(t=>this.result=t).then(()=>this.checkLoad()).catch(e=>this.failed("Can't load \""+t+'"\n'+e.message.trim())):(this.result=e,this.checkLoad())}catch(t){this.failed(t.message)}}loadScript(t){const e=mi.document.createElement("script");e.src=t,e.charset="UTF-8",e.onload=t=>this.checkLoad(),e.onerror=e=>this.failed("Can't load \""+t+'"'),mi.document.head.appendChild(e)}loaded(){this.isLoaded=!0,this.isLoading=!1;for(const t of this.dependents)t.requirementSatisfied();for(const t of this.provided)t.loaded();this.resolve(this.name)}failed(t){this.hasFailed=!0,this.isLoading=!1,this.reject(new fi(t,this.name))}checkLoad(){gi.loadPromise(this.name).then(()=>this.loaded()).catch(t=>this.failed(t))}requirementSatisfied(){this.dependencyCount&&(this.dependencyCount--,this.canLoad&&this.load())}provides(t=[]){for(const e of t){let t=gi.packages.get(e);t||(Ai.dependencies[e]||(Ai.dependencies[e]=[]),Ai.dependencies[e].push(e),t=new gi(e,!0),t.isLoading=!0),this.provided.push(t)}}addDependent(t,e){this.dependents.push(t),e||this.checkNoLoad()}checkNoLoad(){if(this.noLoad){this.noLoad=!1;for(const t of this.dependencies)t.checkNoLoad()}}}gi.packages=new Map;class bi{constructor(){this.items=[],this.items=[]}[Symbol.iterator](){let t=0;const e=this.items;return{next:()=>({value:e[t++],done:t>e.length})}}add(t,e=bi.DEFAULTPRIORITY){let s=this.items.length;do{s--}while(s>=0&&e=0&&this.items[e].item!==t);return e>=0&&this.items.splice(e,1),this}}bi.DEFAULTPRIORITY=5;class Ei extends bi{constructor(t=null){super(),t&&this.addList(t)}addList(t){for(const e of t)Array.isArray(e)?this.add(e[0],e[1]):this.add(e)}execute(...t){for(const e of this){if(!1===e.item(...t))return!1}return!0}asyncExecute(...t){let e=-1;const s=this.items;return new Promise((i,r)=>{!function n(){for(;++er(t));if(!1===o)return void i(!1)}i(!0)}()})}}const xi=di.config||{};var yi=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};const Ni={source:t=>(Object.hasOwn(Ai.source,t.name)&&(t.name=Ai.source[t.name]),!0),normalize:t=>{const e=t.name;return e.match(/^(?:[a-z]+:\/)?\/|[a-z]:[/\\]|\[/i)||(t.name="[mathjax]/"+e.replace(/^\.\//,"")),!0},prefix:t=>{let e;for(;(e=t.name.match(/^\[([^\]]*)\]/))&&Object.hasOwn(Ai.paths,e[1]);)t.name=Ai.paths[e[1]]+t.name.substring(e[0].length);return!0},addExtension:t=>(t.addExtension&&!t.name.match(/\.[^/]+$/)&&(t.name+=".js"),!0)},vi=di.version,Ti={versions:new Map,nestedLoads:[],ready(...t){0===t.length&&(t=Array.from(gi.packages.keys()));const e=[];for(const s of t){const t=gi.packages.get(s)||new gi(s,!0);e.push(t.promise)}return Promise.all(e)},load(...t){if(0===t.length)return Promise.resolve([]);let e=[];this.nestedLoads.unshift(e);const s=Promise.resolve().then(()=>yi(this,void 0,void 0,function*(){const s=[];for(const e of t){let t=gi.packages.get(e);t||(t=new gi(e),t.provides(Ai.provides[e])),t.checkNoLoad(),s.push(t.promise.then(()=>(Ai.versionWarnings&&t.isLoaded&&!Ti.versions.has(gi.resolvePath(e))&&console.warn(`No version information available for component ${e}`),t.result)))}gi.loadAll();const i=yield Promise.all(s);for(;e.length;){const t=Promise.all(e);e=this.nestedLoads[this.nestedLoads.indexOf(e)]=[],yield t}return this.nestedLoads.splice(this.nestedLoads.indexOf(e),1),i}));return this.nestedLoads.slice(1).forEach(t=>t.push(s)),s},preLoaded(...t){for(const e of t){let t=gi.packages.get(e);t||(t=new gi(e,!0),t.provides(Ai.provides[e])),t.loaded()}},addPackageData(t,e){let s=Ai[t];s||(s=Ai[t]={});for(const[t,i]of Object.entries(e))if(Array.isArray(i)){s[t]||(s[t]=[]);const e=new Set([...s[t],...i]);s[t]=[...e]}else s[t]=i},defaultReady(){void 0!==Ci.startup&&Ci.config.startup.ready()},getRoot(){if(mi.document){const t=mi.document.currentScript||mi.document.getElementById("MathJax-script");if(t&&t instanceof HTMLScriptElement)return t.src.replace(/\/[^/]*$/,"")}return xi?.loader?.paths?.mathjax||xi?.__dirname||"/"},checkVersion(t,e,s){return this.saveVersion(t),!(!Ai.versionWarnings||e===vi)&&(console.warn(`Component ${t} uses ${e} of MathJax; version in use is ${vi}`),!0)},saveVersion(t){Ti.versions.set(gi.resolvePath(t),vi)},pathFilters:new Ei};Ti.pathFilters.add(Ni.source,0),Ti.pathFilters.add(Ni.normalize,10),Ti.pathFilters.add(Ni.prefix,20),Ti.pathFilters.add(Ni.addExtension,30);const Ci=di;if(void 0===Ci.loader){ci(Ci.config,"loader",{paths:{mathjax:Ti.getRoot(),fonts:mi.window?"https://cdn.jsdelivr.net/npm/@mathjax":"@mathjax"},source:{},dependencies:{},provides:{},load:[],ready:Ti.defaultReady.bind(Ti),failed:t=>console.log(`MathJax(${t.package||"?"}): ${t.message}`),require:null,pathFilters:[],versionWarnings:!0}),hi({loader:Ti});for(const t of Ci.config.loader.pathFilters)Array.isArray(t)?Ti.pathFilters.add(t[0],t[1]):Ti.pathFilters.add(t)}const Ai=Ci.config.loader,Li={}.constructor;function Si(t){return"object"==typeof t&&null!==t&&(t.constructor===Li||t.constructor===wi)}const Ri="[+]",Mi="[-]",Ii={invalidOption:"warn",optionError:(t,e)=>{if("fatal"===Ii.invalidOption)throw new Error(t);console.warn("MathJax: "+t)}};class wi{}function ki(t){return Object.assign(Object.create(wi.prototype),t)}function Oi(t){return Array.isArray(t)?t:[t]}function Di(t){return t?Object.keys(t).concat(Object.getOwnPropertySymbols(t)):[]}function Pi(t){const e={};for(const s of Di(t)){const i=Object.getOwnPropertyDescriptor(t,s),r=i.value;Array.isArray(r)?i.value=Bi([],r,!1):Si(r)&&(i.value=Pi(r)),i.enumerable&&(e[s]=i)}return Object.defineProperties(t.constructor===wi?ki({}):{},e)}function Bi(t,e,s=!0){for(let i of Di(e)){if(s&&void 0===t[i]&&t.constructor!==wi){"symbol"==typeof i&&(i=i.toString()),Ii.optionError(`Invalid option "${i}" (no default value).`,i);continue}const r=e[i];let n=t[i];if(!Si(r)||null===n||"object"!=typeof n&&"function"!=typeof n)Array.isArray(r)?(t[i]=[],Bi(t[i],r,!1)):Si(r)?t[i]=Pi(r):t[i]=r;else{const e=Di(r);Array.isArray(n)&&(1===e.length&&(e[0]===Ri||e[0]===Mi)&&Array.isArray(r[e[0]])||2===e.length&&e.sort().join(",")===Ri+","+Mi&&Array.isArray(r[Ri])&&Array.isArray(r[Mi]))?(r[Mi]&&(n=t[i]=n.filter(t=>r[Mi].indexOf(t)<0)),r[Ri]&&(t[i]=[...n,...r[Ri]])):Bi(n,r,s)}}return t}function Fi(t,...e){return e.forEach(e=>Bi(t,e,!1)),t}function ji(t,...e){return e.forEach(e=>Bi(t,e,!0)),t}function _i(t,...e){const s={};for(const i of e)Object.hasOwn(t,i)&&(s[i]=t[i]);return s}function Ui(t,e){return _i(t,...Object.keys(e))}function Hi(t,...e){const s=[];for(const i of e){const e={},r={};for(const s of Object.keys(t||{}))(void 0===i[s]?r:e)[s]=t[s];s.push(e),t=r}return s.unshift(t),s}function Wi(t,e,s=null){return Object.hasOwn(e,t)?e[t]:s}var zi=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};class qi{static toMML(t){return qi.visitor.visitTree(t,this.document)}static registerConstructor(t,e){qi.constructors[t]=e}static useHandler(t,e=!1){Xi.handler&&!e||(Xi.handler=t)}static useAdaptor(t,e=!1){Xi.adaptor&&!e||(Xi.adaptor=t)}static useInput(t,e=!1){Gi&&!e||Xi.input.push(t)}static useOutput(t,e=!1){Xi.output&&!e||(Xi.output=t)}static extendHandler(t,e=10){qi.extensions.add(t,e)}static defaultReady(){qi.getComponents(),qi.makeMethods(),qi.pagePromise.then(()=>Xi.pageReady()).then(()=>qi.promiseResolve()).catch(t=>qi.promiseReject(t))}static defaultPageReady(){return(Xi.loadAllFontFiles&&qi.output.font?qi.output.font.loadDynamicFiles():Promise.resolve()).then(()=>{var t;return null===(t=qi.document.menu)||void 0===t?void 0:t.loadingPromise}).then(Xi.typeset&&Vi.typesetPromise?()=>qi.typesetPromise(Xi.elements):Promise.resolve()).then(()=>qi.promiseResolve())}static typesetPromise(t){return this.hasTypeset=!0,qi.document.whenReady(()=>zi(this,void 0,void 0,function*(){qi.document.options.elements=t,qi.document.reset(),yield qi.document.renderPromise()}))}static getComponents(){qi.visitor=new Vi._.core.MmlTree.SerializedMmlVisitor.SerializedMmlVisitor,qi.mathjax=Vi._.mathjax.mathjax,qi.input=qi.getInputJax(),qi.output=qi.getOutputJax(),qi.adaptor=qi.getAdaptor(),qi.handler&&qi.mathjax.handlers.unregister(qi.handler),qi.handler=qi.getHandler(),qi.handler&&(qi.mathjax.handlers.register(qi.handler),qi.document=qi.getDocument())}static makeMethods(){qi.input&&qi.output&&qi.makeTypesetMethods();const t=qi.output?qi.output.name.toLowerCase():"";for(const e of qi.input){const s=e.name.toLowerCase();qi.makeMmlMethods(s,e),qi.makeResetMethod(s,e),qi.output&&qi.makeOutputMethods(s,t,e)}Vi.done=()=>qi.document.done(),Vi.whenReady=t=>qi.document.whenReady(t)}static makeTypesetMethods(){Vi.typeset=(t=null)=>{this.hasTypeset=!0,qi.document.options.elements=t,qi.document.reset(),qi.document.render()},Vi.typesetPromise=(t=null)=>qi.typesetPromise(t),Vi.typesetClear=(t=null)=>{t?qi.document.clearMathItemsWithin(t):qi.document.clear()}}static makeOutputMethods(t,e,s){const i=t+"2"+e;Vi[i]=(t,e={})=>(e=Object.assign(Object.assign({},e),{format:s.name}),qi.document.convert(t,e)),Vi[i+"Promise"]=(t,e={})=>(e=Object.assign(Object.assign({},e),{format:s.name}),qi.document.convertPromise(t,e)),Vi[e+"Stylesheet"]=()=>qi.output.styleSheet(qi.document),"getMetricsFor"in qi.output&&(Vi.getMetricsFor=(t,e)=>qi.output.getMetricsFor(t,e))}static makeMmlMethods(t,e){const s=Vi._.core.MathItem.STATE;Vi[t+"2mml"]=(t,i={})=>(i=Object.assign(Object.assign({},i),{end:s.CONVERT,format:e.name}),qi.toMML(qi.document.convert(t,i))),Vi[t+"2mmlPromise"]=(t,...i)=>zi(this,[t,...i],void 0,function*(t,i={}){i=Object.assign(Object.assign({},i),{end:s.CONVERT,format:e.name});const r=yield qi.document.convertPromise(t,i);return qi.toMML(r)})}static makeResetMethod(t,e){Vi[t+"Reset"]=(...t)=>e.reset(...t)}static getInputJax(){const t=[];for(const e of Xi.input){const s=qi.constructors[e];if(!s)throw Error('Input Jax "'+e+'" is not defined (has it been loaded?)');t[e]=new s(Vi.config[e]),t.push(t[e])}return t}static getOutputJax(){const t=Xi.output;if(!t)return null;const e=qi.constructors[t];if(!e)throw Error('Output Jax "'+t+'" is not defined (has it been loaded?)');return new e(Vi.config[t])}static getAdaptor(){const t=Xi.adaptor;if(!t||"none"===t)return null;const e=qi.constructors[t];if(!e)throw Error('DOMAdaptor "'+t+'" is not defined (has it been loaded?)');return e(Vi.config[t])}static getHandler(){const t=Xi.handler;if(!t||"none"===t||!qi.adaptor)return null;const e=qi.constructors[t];if(!e)throw Error('Handler "'+t+'" is not defined (has it been loaded?)');let s=new e(qi.adaptor,5);for(const t of qi.extensions)s=t.item(s);return s}static getDocument(t=null){return qi.mathjax.document(t||Xi.document,Object.assign(Object.assign({},Vi.config.options),{InputJax:qi.input,OutputJax:qi.output}))}}qi.extensions=new bi,qi.constructors={},qi.input=[],qi.output=null,qi.handler=null,qi.adaptor=null,qi.elements=null,qi.document=null,qi.promise=new Promise((t,e)=>{qi.promiseResolve=t,qi.promiseReject=e}),qi.pagePromise=new Promise((t,e)=>{const s=oi.document;if(s&&s.readyState&&"complete"!==s.readyState&&"interactive"!==s.readyState){const e=()=>t();s.defaultView.addEventListener("load",e,!0),s.defaultView.addEventListener("DOMContentLoaded",e,!0)}else t()}),qi.hasTypeset=!1,qi.defaultOptionError=Ii.optionError;const Vi=di;void 0===Vi._.startup&&(ci(Vi.config,"startup",{input:[],output:"",handler:null,adaptor:null,document:mi.document||"",elements:null,typeset:!0,ready:qi.defaultReady.bind(qi),pageReady:qi.defaultPageReady.bind(qi),polyfillHasOwn:!0}),hi({startup:qi,options:{}}),Vi.config.startup.invalidOption&&(Ii.invalidOption=Vi.config.startup.invalidOption),Vi.config.startup.optionError&&(Ii.optionError=Vi.config.startup.optionError));const Xi=Vi.config.startup,Gi=0!==Xi.input.length;MathJax.loader&&MathJax.loader.checkVersion("startup",ri,"startup"),hi({_:{components:{loader:o,package:s,startup:l}}});Ti.preLoaded("loader","startup"),ci(MathJax.config.loader,"dependencies",{"a11y/semantic-enrich":["input/mml","a11y/sre"],"a11y/speech":["a11y/semantic-enrich"],"a11y/complexity":["a11y/semantic-enrich"],"a11y/explorer":["a11y/speech"],"[mml]/mml3":["input/mml"],"[tex]/action":["input/tex-base"],"[tex]/ams":["input/tex-base","[tex]/newcommand"],"[tex]/amscd":["input/tex-base"],"[tex]/autoload":["input/tex-base","[tex]/require"],"[tex]/bbm":["input/tex-base"],"[tex]/bboldx":["input/tex-base","[tex]/textmacros"],"[tex]/bbox":["input/tex-base"],"[tex]/begingroup":["input/tex-base","[tex]/newcommand"],"[tex]/boldsymbol":["input/tex-base"],"[tex]/braket":["input/tex-base"],"[tex]/bussproofs":["input/tex-base"],"[tex]/cancel":["input/tex-base","[tex]/enclose"],"[tex]/cases":["[tex]/empheq"],"[tex]/centernot":["input/tex-base"],"[tex]/color":["input/tex-base"],"[tex]/colortbl":["input/tex-base","[tex]/color"],"[tex]/colorv2":["input/tex-base"],"[tex]/configmacros":["input/tex-base","[tex]/newcommand"],"[tex]/dsfont":["input/tex-base"],"[tex]/empheq":["input/tex-base","[tex]/ams"],"[tex]/enclose":["input/tex-base"],"[tex]/extpfeil":["input/tex-base","[tex]/newcommand","[tex]/ams"],"[tex]/gensymb":["input/tex-base"],"[tex]/html":["input/tex-base"],"[tex]/mathtools":["input/tex-base","[tex]/newcommand","[tex]/ams","[tex]/boldsymbol"],"[tex]/mhchem":["input/tex-base","[tex]/ams"],"[tex]/newcommand":["input/tex-base"],"[tex]/noerrors":["input/tex-base"],"[tex]/noundefined":["input/tex-base"],"[tex]/physics":["input/tex-base"],"[tex]/require":["input/tex-base"],"[tex]/setoptions":["input/tex-base"],"[tex]/tagformat":["input/tex-base"],"[tex]/texhtml":["input/tex-base"],"[tex]/textcomp":["input/tex-base","[tex]/textmacros"],"[tex]/textmacros":["input/tex-base"],"[tex]/unicode":["input/tex-base"],"[tex]/units":["input/tex-base"],"[tex]/upgreek":["input/tex-base"],"[tex]/verb":["input/tex-base"],"ui/menu":["a11y/sre"]}),ci(MathJax.config.loader,"paths",{tex:"[mathjax]/input/tex/extensions",mml:"[mathjax]/input/mml/extensions",sre:"[mathjax]/sre",mathmaps:"[sre]/mathmaps"}),ci(MathJax.config.loader,"provides",{startup:["loader"],"input/tex":["input/tex-base","[tex]/ams","[tex]/newcommand","[tex]/textmacros","[tex]/noundefined","[tex]/require","[tex]/autoload","[tex]/configmacros"]}),ci(MathJax.config.loader,"source",{"[tex]/amsCd":"[tex]/amscd","[tex]/colorV2":"[tex]/colorv2","[tex]/configMacros":"[tex]/configmacros","[tex]/tagFormat":"[tex]/tagformat"});class Ji{constructor(t=null){this.canMeasureNodes=!0,this.document=t}node(t,e={},s=[],i){const r=this.create(t,i);this.setAttributes(r,e);for(const t of s)this.append(r,t);return r}setProperty(t,e,s){t[e]=s}getProperty(t,e){return t[e]}setAttributes(t,e){if(e.style&&"string"!=typeof e.style)for(const s of Object.keys(e.style))this.setStyle(t,s.replace(/-([a-z])/g,(t,e)=>e.toUpperCase()),e.style[s]);if(e.properties)for(const s of Object.keys(e.properties))t[s]=e.properties[s];for(const s of Object.keys(e))"style"===s&&"string"!=typeof e.style||"properties"===s||this.setAttribute(t,s,e[s])}replace(t,e){return this.insert(t,e),this.remove(e),e}childNode(t,e){return this.childNodes(t)[e]}allClasses(t){const e=this.getAttribute(t,"class");return e?e.replace(/ +/g," ").replace(/^ /,"").replace(/ $/,"").split(/ /):[]}cssText(t){return"style"===this.kind(t)?this.textContent(t):""}}var Ki=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};class $i extends Ji{constructor(t){super(t.document),this.canMeasureNodes=!0,this.window=t,this.parser=new t.DOMParser}parse(t,e="text/html"){return this.parser.parseFromString(t,e)}create(t,e){return e?this.document.createElementNS(e,t):this.document.createElement(t)}text(t){return this.document.createTextNode(t)}head(t=this.document){return t.head||t}body(t=this.document){return t.body||t}root(t=this.document){return t.documentElement||t}doctype(t=this.document){return t.doctype?``:""}tags(t,e,s=null){const i=s?t.getElementsByTagNameNS(s,e):t.getElementsByTagName(e);return Array.from(i)}getElements(t,e){let s=[];for(const e of t)"string"==typeof e?s=s.concat(Array.from(this.document.querySelectorAll(e))):Array.isArray(e)||e instanceof this.window.NodeList||e instanceof this.window.HTMLCollection?s=s.concat(Array.from(e)):s.push(e);return s}getElement(t,e=this.document){return e.querySelector(t)}contains(t,e){return t.contains(e)}parent(t){return t.parentNode}append(t,e){return t.appendChild(e)}insert(t,e){return this.parent(e).insertBefore(t,e)}remove(t){return this.parent(t).removeChild(t)}replace(t,e){return this.parent(e).replaceChild(t,e)}clone(t,e=!0){return t.cloneNode(e)}split(t,e){return t.splitText(e)}next(t){return t.nextSibling}previous(t){return t.previousSibling}firstChild(t){return t.firstChild}lastChild(t){return t.lastChild}childNodes(t){return Array.from(t.childNodes)}childNode(t,e){return t.childNodes[e]}kind(t){const e=t.nodeType;return 1===e||3===e||8===e?t.nodeName.toLowerCase():""}value(t){return t.nodeValue||""}textContent(t){return t.textContent}innerHTML(t){return t.innerHTML}outerHTML(t){return t.outerHTML}serializeXML(t){return(new this.window.XMLSerializer).serializeToString(t)}setAttribute(t,e,s,i=null){return i?(e=i.replace(/.*\//,"")+":"+e.replace(/^.*:/,""),t.setAttributeNS(i,e,s)):("style"===e&&(s=s.replace(/\n/g," ")),t.setAttribute(e,s))}getAttribute(t,e){return t.getAttribute(e)}removeAttribute(t,e){return t.removeAttribute(e)}hasAttribute(t,e){return t.hasAttribute(e)}allAttributes(t){return Array.from(t.attributes).map(t=>({name:t.name,value:t.value}))}addClass(t,e){t.classList?t.classList.add(e):t.className=(t.className+" "+e).trim()}removeClass(t,e){t.classList?t.classList.remove(e):t.className=t.className.split(/ /).filter(t=>t!==e).join(" ")}hasClass(t,e){return t.classList?t.classList.contains(e):t.className.split(/ /).includes(e)}setStyle(t,e,s){t.style[e]=String(s).replace(/\n/g," ")}getStyle(t,e){return t.style[e]}allStyles(t){return t.style.cssText}insertRules(t,e){for(const s of e)try{t.sheet.insertRule(s,t.sheet.cssRules.length)}catch(t){console.warn(`MathJax: can't insert css rule '${s}': ${t.message}`)}}cssText(t){return"style"!==this.kind(t)?"":Array.from(t.sheet.cssRules).map(t=>t.cssText).join("\n")}fontSize(t){const e=this.window.getComputedStyle(t);return parseFloat(e.fontSize||String(this.constructor.DEFAULT_FONT_SIZE))}fontFamily(t){return this.window.getComputedStyle(t).fontFamily||""}nodeSize(t,e=1,s=!1){if(s&&t.getBBox){const{width:s,height:i}=t.getBBox();return[s/e,i/e]}return[t.offsetWidth/e,t.offsetHeight/e]}nodeBBox(t){const{left:e,right:s,top:i,bottom:r}=t.getBoundingClientRect();return{left:e,right:s,top:i,bottom:r}}createWorker(t,e){return Ki(this,void 0,void 0,function*(){const{path:s,maps:i,worker:r}=e,n=`${s}/${r}`,o=`\n self.maps = '${Yi(i)}';\n importScripts('${Yi(n)}');\n `,a=URL.createObjectURL(new Blob([o],{type:"text/javascript"})),l=new Worker(a);return l.onmessage=t,URL.revokeObjectURL(a),l})}}function Yi(t){return[...t].map(t=>("\\"===t||"'"===t?t="\\"+t:(t<" "||t>"~")&&(t=`\\u{${t.codePointAt(0).toString(16)}}`),t)).join("")}function Qi(){return new $i(window)}$i.DEFAULT_FONT_SIZE=16;class Zi{constructor(t){const e=this.constructor;this.options=ji(Fi({},e.OPTIONS),t)}}Zi.OPTIONS={};class tr{constructor(t={}){this.adaptor=null,this.mmlFactory=null;const e=this.constructor;this.options=ji(Fi({},e.OPTIONS),t),this.preFilters=new Ei(this.options.preFilters),this.postFilters=new Ei(this.options.postFilters)}get name(){return this.constructor.NAME}setAdaptor(t){this.adaptor=t}setMmlFactory(t){this.mmlFactory=t}initialize(){}reset(...t){}get processStrings(){return!0}findMath(t,e){return[]}executeFilters(t,e,s,i){const r={math:e,document:s,data:i};return t.execute(r),r.data}}tr.NAME="generic",tr.OPTIONS={preFilters:[],postFilters:[]};class er{constructor(t={}){this.adaptor=null;const e=this.constructor;this.options=ji(Fi({},e.OPTIONS),t),this.preFilters=new Ei(this.options.preFilters),this.postFilters=new Ei(this.options.postFilters)}get name(){return this.constructor.NAME}setAdaptor(t){this.adaptor=t}initialize(){}reset(...t){}getMetrics(t){}styleSheet(t){return null}pageElements(t){return null}executeFilters(t,e,s,i){const r={math:e,document:s,data:i};return t.execute(r),r.data}}er.NAME="generic",er.OPTIONS={preFilters:[],postFilters:[]};const sr=Symbol();class ir{constructor(t=null){this.next=null,this.prev=null,this.data=t}}class rr{constructor(...t){this.list=new ir(sr),this.list.next=this.list.prev=this.list,this.push(...t)}isBefore(t,e){return t1;){const s=e.shift(),i=e.shift();s.merge(i,t),e.push(s)}return e.length&&(this.list=e[0].list),this}merge(t,e=null){null===e&&(e=this.isBefore.bind(this));let s=this.list.next,i=t.list.next;for(;s.data!==sr&&i.data!==sr;)e(i.data,s.data)?([i.prev.next,s.prev.next]=[s,i],[i.prev,s.prev]=[s.prev,i.prev],[this.list.prev.next,t.list.prev.next]=[t.list,this.list],[this.list.prev,t.list.prev]=[t.list.prev,this.list.prev],[s,i]=[i.next,s]):s=s.next;return i.data!==sr&&(this.list.prev.next=t.list.next,t.list.next.prev=this.list.prev,t.list.prev.next=this.list,this.list.prev=t.list.prev,t.list.next=t.list.prev=t.list),this}}class nr extends rr{isBefore(t,e){return t.start.i=e&&this.state(e-1),t.renderActions.renderMath(this,t,e)}convert(t,e=lr.LAST){t.renderActions.renderConvert(this,t,e)}compile(t){this.state()=lr.INSERTED&&this.removeFromDocument(e),t=lr.TYPESET&&(this.outputData={}),t=lr.COMPILED&&(this.inputData={}),this._state=t),this._state}reset(t=!1){this.state(lr.UNPROCESSED,t)}clear(){}}const lr={UNPROCESSED:0,FINDMATH:10,COMPILED:20,CONVERT:100,METRICS:110,RERENDER:125,TYPESET:150,INSERTED:200,LAST:1e4};function cr(t,e){if(t in lr)throw Error("State "+t+" already exists");lr[t]=e}class hr{constructor(t=null){this.defaultKind="unknown",this.nodeMap=new Map,this.node={},null===t&&(t=this.constructor.defaultNodes);for(const e of Object.keys(t))this.setNodeClass(e,t[e])}create(t,...e){return(this.node[t]||this.node[this.defaultKind])(...e)}setNodeClass(t,e){this.nodeMap.set(t,e);const s=this.nodeMap.get(t);this.node[t]=(...t)=>new s(this,...t)}getNodeClass(t){return this.nodeMap.get(t)}deleteNodeClass(t){this.nodeMap.delete(t),delete this.node[t]}nodeIsKind(t,e){return t instanceof this.getNodeClass(e)}getKinds(){return Array.from(this.nodeMap.keys())}}hr.defaultNodes={};class dr extends hr{create(t,e={},s=[]){return this.node[t](e,s)}}const ur="_inherit_";class pr{constructor(t,e){this.global=e,this.defaults=Object.create(e),this.inherited=Object.create(this.defaults),this.attributes=Object.create(this.inherited),Object.assign(this.defaults,t)}set(t,e){this.attributes[t]=e}setList(t){Object.assign(this.attributes,t)}unset(t){delete this.attributes[t]}get(t){let e=this.attributes[t];return e===ur&&(e=this.global[t]),e}getExplicit(t){return this.hasExplicit(t)?this.attributes[t]:void 0}hasExplicit(t){return Object.hasOwn(this.attributes,t)}hasOneOf(t){for(const e of t)if(this.hasExplicit(e))return!0;return!1}getList(...t){const e={};for(const s of t)e[s]=this.get(s);return e}setInherited(t,e){this.inherited[t]=e}getInherited(t){return this.inherited[t]}getDefault(t){return this.defaults[t]}isSet(t){return Object.hasOwn(this.attributes,t)||Object.hasOwn(this.inherited,t)}hasDefault(t){return t in this.defaults}getExplicitNames(){return Object.keys(this.attributes)}getInheritedNames(){return Object.keys(this.inherited)}getDefaultNames(){return Object.keys(this.defaults)}getGlobalNames(){return Object.keys(this.global)}getAllAttributes(){return this.attributes}getAllInherited(){return this.inherited}getAllDefaults(){return this.defaults}getAllGlobals(){return this.global}}class mr{constructor(t,e={},s=[]){this.factory=t,this.parent=null,this.properties={},this.childNodes=[];for(const t of Object.keys(e))this.setProperty(t,e[t]);s.length&&this.setChildren(s)}get kind(){return"unknown"}setProperty(t,e){this.properties[t]=e}getProperty(t){return this.properties[t]}getPropertyNames(){return Object.keys(this.properties)}getAllProperties(){return this.properties}removeProperty(...t){for(const e of t)delete this.properties[e]}isKind(t){return this.factory.nodeIsKind(this,t)}setChildren(t){this.childNodes=[];for(const e of t)this.appendChild(e)}appendChild(t){return this.childNodes.push(t),t.parent=this,t}replaceChild(t,e){const s=this.childIndex(e);return null!==s&&(this.childNodes[s]=t,t.parent=this,e.parent===this&&(e.parent=null)),t}removeChild(t){const e=this.childIndex(t);return null!==e&&(this.childNodes.splice(e,1),t.parent=null),t}childIndex(t){const e=this.childNodes.indexOf(t);return-1===e?null:e}copy(){const t=this.factory.create(this.kind);t.properties=Object.assign({},this.properties);for(const e of this.childNodes||[])e&&t.appendChild(e.copy());return t}findNodes(t){const e=[];return this.walkTree(s=>{s.isKind(t)&&e.push(s)}),e}walkTree(t,e){t(this,e);for(const s of this.childNodes)s&&s.walkTree(t,e);return e}toString(){return this.kind+"("+this.childNodes.join(",")+")"}}class fr extends mr{setChildren(t){}appendChild(t){return t}replaceChild(t,e){return e}childIndex(t){return null}walkTree(t,e){return t(this,e),e}toString(){return this.kind}}const gr={ORD:0,OP:1,BIN:2,REL:3,OPEN:4,CLOSE:5,PUNCT:6,INNER:7,NONE:-1},br=["ORD","OP","BIN","REL","OPEN","CLOSE","PUNCT","INNER"],Er=["","thinmathspace","mediummathspace","thickmathspace"],xr=[[0,-1,2,3,0,0,0,1],[-1,-1,0,3,0,0,0,1],[2,2,0,0,2,0,0,2],[3,3,0,0,3,0,0,3],[0,0,0,0,0,0,0,0],[0,-1,2,3,0,0,0,1],[1,1,0,1,1,1,1,1],[1,-1,2,3,1,0,1,1]],yr=new Set(["normal","bold","italic","bold-italic","double-struck","fraktur","bold-fraktur","script","bold-script","sans-serif","bold-sans-serif","sans-serif-italic","sans-serif-bold-italic","monospace","inital","tailed","looped","stretched"]),Nr=["indentalign","indentalignfirst","indentshift","indentshiftfirst"];class vr extends mr{constructor(t,e={},s=[]){super(t),this.prevClass=null,this.prevLevel=null,this.texclass=null,this.arity<0&&(this.childNodes=[t.create("inferredMrow")],this.childNodes[0].parent=this),this.setChildren(s),this.attributes=new pr(t.getNodeClass(this.kind).defaults,t.getNodeClass("math").defaults),this.attributes.setList(e)}copy(t=!1){const e=this.factory.create(this.kind);if(e.properties=Object.assign({},this.properties),this.attributes){const s=this.attributes.getAllAttributes();for(const i of Object.keys(s))("id"!==i||t)&&e.attributes.set(i,s[i])}if(this.childNodes&&this.childNodes.length){let t=this.childNodes;1===t.length&&t[0].isInferred&&(t=t[0].childNodes);for(const s of t)s?e.appendChild(s.copy()):e.childNodes.push(null)}return e}get texClass(){return this.texclass}set texClass(t){this.texclass=t}get isToken(){return!1}get isEmbellished(){return!1}get isSpacelike(){return!1}get linebreakContainer(){return!1}get linebreakAlign(){return"data-align"}get isEmpty(){for(const t of this.childNodes)if(t&&!t.isEmpty)return!1;return!0}get arity(){return 1/0}get isInferred(){return!1}get Parent(){let t=this.parent;for(;t&&t.notParent;)t=t.Parent;return t}get notParent(){return!1}setChildren(t){return this.arity<0?this.childNodes[0].setChildren(t):super.setChildren(t)}appendChild(t){if(this.arity<0)return this.childNodes[0].appendChild(t),t;if(t.isInferred){if(this.arity===1/0)return t.childNodes.forEach(t=>super.appendChild(t)),t;const e=t;(t=this.factory.create("mrow")).setChildren(e.childNodes),t.attributes=e.attributes;for(const s of e.getPropertyNames())t.setProperty(s,e.getProperty(s))}return super.appendChild(t)}replaceChild(t,e){return this.arity<0?(this.childNodes[0].replaceChild(t,e),t):super.replaceChild(t,e)}core(){return this}coreMO(){return this}coreIndex(){return 0}childPosition(){let t=null,e=this.parent;for(;e&&e.notParent;)t=e,e=e.parent;if(t=t||this,e){let s=0;for(const i of e.childNodes){if(i===t)return s;s++}}return null}setTeXclass(t){return this.getPrevClass(t),null!=this.texClass?this:t}updateTeXclass(t){t&&(this.prevClass=t.prevClass,this.prevLevel=t.prevLevel,t.prevClass=t.prevLevel=null,this.texClass=t.texClass)}getPrevClass(t){t&&(this.prevClass=t.texClass,this.prevLevel=t.attributes.get("scriptlevel"))}texSpacing(){const t=null!=this.prevClass?this.prevClass:gr.NONE,e=this.texClass||gr.ORD;if(t===gr.NONE||e===gr.NONE)return"";const s=xr[t][e];return(this.prevLevel>0||this.attributes.get("scriptlevel")>0)&&s>=0?"":Er[Math.abs(s)]}hasSpacingAttributes(){return this.isEmbellished&&this.coreMO().hasSpacingAttributes()}setInheritedAttributes(t={},e=!1,s=0,i=!1){var r,n,o;const a=this.attributes.getAllDefaults();for(const e of Object.keys(t)){if(Object.hasOwn(a,e)||Object.hasOwn(vr.alwaysInherit,e)){const[s,i]=t[e];(null===(n=null===(r=vr.noInherit[s])||void 0===r?void 0:r[this.kind])||void 0===n?void 0:n[e])||this.attributes.setInherited(e,i)}(null===(o=vr.stopInherit[this.kind])||void 0===o?void 0:o[e])&&delete(t=Object.assign({},t))[e]}void 0===this.attributes.getExplicit("displaystyle")&&this.attributes.setInherited("displaystyle",e);void 0===this.attributes.getExplicit("scriptlevel")&&this.attributes.setInherited("scriptlevel",s),i&&this.setProperty("texprimestyle",i);const l=this.arity;if(l>=0&&l!==1/0&&(1===l&&0===this.childNodes.length||1!==l&&this.childNodes.length!==l))if(l=0&&e!==1/0&&(1===e&&0===this.childNodes.length||1!==e&&this.childNodes.length!==e)&&this.mError('Wrong number of children for "'+this.kind+'" node',t,!0),this.verifyChildren(t)}verifyAttributes(t){if(t.checkAttributes){const e=this.attributes,s=[];for(const t of e.getExplicitNames())"data-"===t.substring(0,5)||void 0!==e.getDefault(t)||t.match(/^(?:class|style|id|(?:xlink:)?href)$/)||s.push(t);s.length&&this.mError("Unknown attributes for "+this.kind+" node: "+s.join(", "),t)}if(t.checkMathvariants){const e=this.attributes.getExplicit("mathvariant");!e||yr.has(e)||this.getProperty("ignore-variant")||this.mError(`Invalid mathvariant: ${e}`,t,!0)}}verifyChildren(t){for(const e of this.childNodes)e.verifyTree(t)}mError(t,e,s=!1){if(this.parent&&this.parent.isKind("merror"))return null;const i=this.factory.create("merror");if(i.attributes.set("data-mjx-message",t),e.fullErrors||s){const s=this.factory.create("mtext"),r=this.factory.create("text");r.setText(e.fullErrors?t:this.kind),s.appendChild(r),i.appendChild(s),this.parent.replaceChild(i,this),e.fullErrors||i.attributes.set("title",t)}else this.parent.replaceChild(i,this),i.appendChild(this);return i}}vr.defaults={mathbackground:ur,mathcolor:ur,mathsize:ur,dir:ur},vr.noInherit={mstyle:{mpadded:{width:!0,height:!0,depth:!0,lspace:!0,voffset:!0},mtable:{width:!0,height:!0,depth:!0,align:!0}},maligngroup:{mrow:{groupalign:!0},mtable:{groupalign:!0}},mtr:{msqrt:{"data-vertical-align":!0},mroot:{"data-vertical-align":!0}},mlabeledtr:{msqrt:{"data-vertical-align":!0},mroot:{"data-vertical-align":!0}}},vr.stopInherit={mtd:{columnalign:!0,rowalign:!0,groupalign:!0}},vr.alwaysInherit={scriptminsize:!0,scriptsizemultiplier:!0,infixlinebreakstyle:!0},vr.verifyDefaults={checkArity:!0,checkAttributes:!1,checkMathvariants:!0,fullErrors:!1,fixMmultiscripts:!0,fixMtables:!0};class Tr extends vr{get isToken(){return!0}get isEmpty(){for(const t of this.childNodes)if(!(t instanceof Sr)||t.getText().length)return!1;return!0}getText(){let t="";for(const e of this.childNodes)e instanceof Sr?t+=e.getText():"textContent"in e&&(t+=e.textContent());return t}setChildInheritedAttributes(t,e,s,i){for(const r of this.childNodes)r instanceof vr&&r.setInheritedAttributes(t,e,s,i)}walkTree(t,e){t(this,e);for(const s of this.childNodes)s instanceof vr&&s.walkTree(t,e);return e}}Tr.defaults=Object.assign(Object.assign({},vr.defaults),{mathvariant:"normal",mathsize:ur});class Cr extends vr{get isSpacelike(){return this.childNodes[0].isSpacelike}get isEmbellished(){return this.childNodes[0].isEmbellished}get arity(){return-1}core(){return this.childNodes[0]}coreMO(){return this.childNodes[0].coreMO()}setTeXclass(t){return t=this.childNodes[0].setTeXclass(t),this.updateTeXclass(this.childNodes[0]),t}}Cr.defaults=vr.defaults;class Ar extends vr{get isEmbellished(){return this.childNodes[0].isEmbellished}core(){return this.childNodes[0]}coreMO(){return this.childNodes[0].coreMO()}setTeXclass(t){this.getPrevClass(t),this.texClass=gr.ORD;const e=this.childNodes[0];let s=null;e&&(this.isEmbellished||e.isKind("mi")?(s=e.setTeXclass(t),this.updateTeXclass(this.core())):(e.setTeXclass(null),e.isKind("TeXAtom")&&(this.texClass=e.texClass)));for(const t of this.childNodes.slice(1))t&&t.setTeXclass(null);return s||this}}Ar.defaults=vr.defaults;class Lr extends fr{get isToken(){return!1}get isEmpty(){return!0}get isEmbellished(){return!1}get isSpacelike(){return!1}get linebreakContainer(){return!1}get linebreakAlign(){return""}get arity(){return 0}get isInferred(){return!1}get notParent(){return!1}get Parent(){return this.parent}get texClass(){return gr.NONE}get prevClass(){return gr.NONE}get prevLevel(){return 0}hasSpacingAttributes(){return!1}get attributes(){return null}core(){return this}coreMO(){return this}coreIndex(){return 0}childPosition(){return 0}setTeXclass(t){return t}texSpacing(){return""}setInheritedAttributes(t,e,s,i){}inheritAttributesFrom(t){}verifyTree(t){}mError(t,e,s=!1){return null}}class Sr extends Lr{constructor(){super(...arguments),this.text=""}get kind(){return"text"}getText(){return this.text}setText(t){return this.text=t,this}copy(){return this.factory.create(this.kind).setText(this.getText())}toString(){return this.text}}class Rr extends Lr{constructor(){super(...arguments),this.xml=null,this.adaptor=null}get kind(){return"XML"}getXML(){return this.xml}setXML(t,e=null){return this.xml=t,this.adaptor=e,this}getSerializedXML(){return this.adaptor.serializeXML(this.xml)}copy(){return this.factory.create(this.kind).setXML(this.adaptor.clone(this.xml))}toString(){return"XML data"}}class Mr extends Cr{get kind(){return"math"}get linebreakContainer(){return!0}get linebreakAlign(){return""}setChildInheritedAttributes(t,e,s,i){"display"===this.attributes.get("mode")&&this.attributes.setInherited("display","block"),t=this.addInheritedAttributes(t,this.attributes.getAllAttributes()),e=!!this.attributes.get("displaystyle")||!this.attributes.get("displaystyle")&&"block"===this.attributes.get("display"),this.attributes.setInherited("displaystyle",e),s=this.attributes.get("scriptlevel")||this.constructor.defaults.scriptlevel,super.setChildInheritedAttributes(t,e,s,i)}verifyTree(t=null){super.verifyTree(t),this.parent&&this.mError("Improper nesting of math tags",t,!0)}}Mr.defaults=Object.assign(Object.assign({},Cr.defaults),{mathvariant:"normal",mathsize:"normal",mathcolor:"",mathbackground:"transparent",dir:"ltr",scriptlevel:0,displaystyle:!1,display:"inline",maxwidth:"",overflow:"linebreak",altimg:"","altimg-width":"","altimg-height":"","altimg-valign":"",alttext:"",cdgroup:"",scriptsizemultiplier:1/Math.sqrt(2),scriptminsize:".4em",infixlinebreakstyle:"before",lineleading:"100%",linebreakmultchar:"\u2062",indentshift:"auto",indentalign:"auto",indenttarget:"",indentalignfirst:"indentalign",indentshiftfirst:"indentshift",indentalignlast:"indentalign",indentshiftlast:"indentshift"});class Ir extends Tr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"mi"}setInheritedAttributes(t={},e=!1,s=0,i=!1){super.setInheritedAttributes(t,e,s,i);this.getText().match(Ir.singleCharacter)&&!t.mathvariant&&this.attributes.setInherited("mathvariant","italic")}setTeXclass(t){this.getPrevClass(t);const e=this.getText();return e.length>1&&e.match(Ir.operatorName)&&"normal"===this.attributes.get("mathvariant")&&void 0===this.getProperty("autoOP")&&void 0===this.getProperty("texClass")&&(this.texClass=gr.OP,this.setProperty("autoOP",!0)),this}}Ir.defaults=Object.assign({},Tr.defaults),Ir.operatorName=/^[a-z][a-z0-9]*$/i,Ir.singleCharacter=/^[\uD800-\uDBFF]?.[\u0300-\u036F\u1AB0-\u1ABE\u1DC0-\u1DFF\u20D0-\u20EF]*$/;class wr extends Tr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"mn"}}function kr(t,e,s=gr.BIN,i=null){return[t,e,s,i]}wr.defaults=Object.assign({},Tr.defaults);const Or={REL:kr(5,5,gr.REL),WIDEREL:kr(5,5,gr.REL,{accent:!0,stretchy:!0}),BIN4:kr(4,4,gr.BIN),RELSTRETCH:kr(5,5,gr.REL,{stretchy:!0}),ORD:kr(0,0,gr.ORD),BIN3:kr(3,3,gr.BIN),OPEN:kr(0,0,gr.OPEN,{fence:!0,stretchy:!0,symmetric:!0}),CLOSE:kr(0,0,gr.CLOSE,{fence:!0,stretchy:!0,symmetric:!0}),INTEGRAL:kr(3,3,gr.OP,{largeop:!0,symmetric:!0}),ACCENT:kr(0,0,gr.ORD,{accent:!0}),WIDEACCENT:kr(0,0,gr.ORD,{accent:!0,stretchy:!0}),OP:kr(3,3,gr.OP,{largeop:!0,movablelimits:!0,symmetric:!0}),RELACCENT:kr(5,5,gr.REL,{accent:!0}),BIN0:kr(0,0,gr.BIN),BIN5:kr(5,5,gr.BIN),FENCE:kr(0,0,gr.ORD,{fence:!0,stretchy:!0,symmetric:!0}),INNER:kr(1,1,gr.INNER),ORD30:kr(3,0,gr.ORD),NONE:kr(0,0,gr.NONE),ORDSTRETCH0:kr(0,0,gr.ORD,{stretchy:!0}),BINSTRETCH0:kr(0,0,gr.BIN,{stretchy:!0}),RELSTRETCH0:kr(0,0,gr.REL,{stretchy:!0}),CLOSE0:kr(0,0,gr.CLOSE,{fence:!0}),ORD3:kr(3,3,gr.ORD),PUNCT03:kr(0,3,gr.PUNCT,{linebreakstyle:"after"}),OPEN0:kr(0,0,gr.OPEN,{fence:!0}),STRETCH4:kr(4,4,gr.BIN,{stretchy:!0})},Dr=[[32,127,gr.REL,"mo"],[160,191,gr.ORD,"mo"],[192,591,gr.ORD,"mi"],[688,879,gr.ORD,"mo"],[880,6688,gr.ORD,"mi"],[6832,6911,gr.ORD,"mo"],[6912,7615,gr.ORD,"mi"],[7616,7679,gr.ORD,"mo"],[7680,8191,gr.ORD,"mi"],[8192,8303,gr.ORD,"mo"],[8304,8351,gr.ORD,"mo"],[8448,8527,gr.ORD,"mi"],[8528,8591,gr.ORD,"mn"],[8592,8703,gr.REL,"mo"],[8704,8959,gr.BIN,"mo"],[8960,9215,gr.ORD,"mo"],[9312,9471,gr.ORD,"mn"],[9472,10223,gr.ORD,"mo"],[10224,10239,gr.REL,"mo"],[10240,10495,gr.ORD,"mtext"],[10496,10623,gr.REL,"mo"],[10624,10751,gr.ORD,"mo"],[10752,11007,gr.BIN,"mo"],[11008,11055,gr.ORD,"mo"],[11056,11087,gr.REL,"mo"],[11088,11263,gr.ORD,"mo"],[11264,11744,gr.ORD,"mi"],[11776,11903,gr.ORD,"mo"],[11904,12255,gr.ORD,"mi","normal"],[12272,12351,gr.ORD,"mo"],[12352,42143,gr.ORD,"mi","normal"],[42192,43055,gr.ORD,"mi"],[43056,43071,gr.ORD,"mn"],[43072,55295,gr.ORD,"mi"],[63744,64255,gr.ORD,"mi","normal"],[64256,65023,gr.ORD,"mi"],[65024,65135,gr.ORD,"mo"],[65136,65791,gr.ORD,"mi"],[65792,65935,gr.ORD,"mn"],[65936,74751,gr.ORD,"mi","normal"],[74752,74879,gr.ORD,"mn"],[74880,113823,gr.ORD,"mi","normal"],[113824,119391,gr.ORD,"mo"],[119648,119679,gr.ORD,"mn"],[119808,120781,gr.ORD,"mi"],[120782,120831,gr.ORD,"mn"],[122624,129023,gr.ORD,"mo"],[129024,129279,gr.REL,"mo"],[129280,129535,gr.ORD,"mo"],[131072,195103,gr.ORD,"mi","normal"]];function Pr(t){const e=Fr.infix[t]||Fr.prefix[t]||Fr.postfix[t];if(e)return[0,0,e[2],"mo"];const s=t.codePointAt(0);for(const t of Dr)if(s<=t[1]){if(s>=t[0])return t;break}return[0,0,gr.REL,"mo"]}const Br=[[0,0],[1,2],[3,3],[4,4],[0,0],[0,0],[0,3],[1,1]],Fr={prefix:{"!":Or.ORD,"(":Or.OPEN,"+":Or.BIN0,"-":Or.BIN0,"[":Or.OPEN,"{":Or.OPEN,"|":Or.OPEN,"||":Or.BIN0,"\xac":Or.ORD,"\xb1":Or.BIN0,"\u2016":Or.FENCE,"\u2018":Or.OPEN0,"\u201c":Or.OPEN0,\u2145:Or.ORD30,\u2146:Or.ORD30,"\u2200":Or.ORD,"\u2201":Or.ORD,"\u2202":Or.ORD30,"\u2203":Or.ORD,"\u2204":Or.ORD,"\u2207":Or.ORD,"\u220f":Or.OP,"\u2210":Or.OP,"\u2211":Or.OP,"\u2212":Or.BIN0,"\u2213":Or.BIN0,"\u221a":[3,0,gr.ORD,{stretchy:!0}],"\u221b":Or.ORD30,"\u221c":Or.ORD30,"\u221f":Or.ORD,"\u2220":Or.ORD,"\u2221":Or.ORD,"\u2222":Or.ORD,"\u222b":Or.INTEGRAL,"\u222c":Or.INTEGRAL,"\u222d":Or.INTEGRAL,"\u222e":Or.INTEGRAL,"\u222f":Or.INTEGRAL,"\u2230":Or.INTEGRAL,"\u2231":Or.INTEGRAL,"\u2232":Or.INTEGRAL,"\u2233":Or.INTEGRAL,"\u2234":Or.REL,"\u2235":Or.REL,"\u223c":[0,0,gr.REL,{}],"\u22be":Or.ORD,"\u22bf":Or.ORD,"\u22c0":Or.OP,"\u22c1":Or.OP,"\u22c2":Or.OP,"\u22c3":Or.OP,"\u2308":Or.OPEN,"\u230a":Or.OPEN,"\u2310":Or.ORD,"\u2319":Or.ORD,"\u2772":Or.OPEN,"\u2795":Or.ORD,"\u2796":Or.ORD,"\u27c0":Or.ORD,"\u27e6":Or.OPEN,"\u27e8":Or.OPEN,"\u27ea":Or.OPEN,"\u27ec":Or.OPEN,"\u27ee":Or.OPEN,"\u2980":Or.FENCE,"\u2983":Or.OPEN,"\u2985":Or.OPEN,"\u2987":Or.OPEN,"\u2989":Or.OPEN,"\u298b":Or.OPEN,"\u298d":Or.OPEN,"\u298f":Or.OPEN,"\u2991":Or.OPEN,"\u2993":Or.OPEN,"\u2995":Or.OPEN,"\u2997":Or.OPEN,"\u2999":Or.FENCE,"\u299b":Or.ORD,"\u299c":Or.ORD,"\u299d":Or.ORD,"\u299e":Or.ORD,"\u299f":Or.ORD,"\u29a0":Or.ORD,"\u29a1":Or.ORD,"\u29a2":Or.ORD,"\u29a3":Or.ORD,"\u29a4":Or.ORD,"\u29a5":Or.ORD,"\u29a6":Or.ORD,"\u29a7":Or.ORD,"\u29a8":Or.ORD,"\u29a9":Or.ORD,"\u29aa":Or.ORD,"\u29ab":Or.ORD,"\u29ac":Or.ORD,"\u29ad":Or.ORD,"\u29ae":Or.ORD,"\u29af":Or.ORD,"\u29d8":Or.OPEN,"\u29da":Or.OPEN,"\u29fc":Or.OPEN,"\u2a00":Or.OP,"\u2a01":Or.OP,"\u2a02":Or.OP,"\u2a03":Or.OP,"\u2a04":Or.OP,"\u2a05":Or.OP,"\u2a06":Or.OP,"\u2a07":Or.OP,"\u2a08":Or.OP,"\u2a09":Or.OP,"\u2a0a":Or.OP,"\u2a0b":Or.INTEGRAL,"\u2a0c":Or.INTEGRAL,"\u2a0d":Or.INTEGRAL,"\u2a0e":Or.INTEGRAL,"\u2a0f":Or.INTEGRAL,"\u2a10":Or.INTEGRAL,"\u2a11":Or.INTEGRAL,"\u2a12":Or.INTEGRAL,"\u2a13":Or.INTEGRAL,"\u2a14":Or.INTEGRAL,"\u2a15":Or.INTEGRAL,"\u2a16":Or.INTEGRAL,"\u2a17":Or.INTEGRAL,"\u2a18":Or.INTEGRAL,"\u2a19":Or.INTEGRAL,"\u2a1a":Or.INTEGRAL,"\u2a1b":Or.INTEGRAL,"\u2a1c":Or.INTEGRAL,"\u2a1d":Or.OP,"\u2a1e":Or.OP,"\u2aec":Or.ORD,"\u2aed":Or.ORD,"\u2afc":Or.OP,"\u2aff":Or.OP,"\u3008":Or.OPEN},postfix:{"!!":Or.BIN0,"!":Or.CLOSE0,'"':Or.ORD,"%":Or.ORD,"&":Or.ORD,"'":Or.ACCENT,")":Or.CLOSE,"++":Or.BIN0,"--":Or.BIN0,"]":Or.CLOSE,"^":Or.WIDEACCENT,_:Or.WIDEACCENT,"`":Or.ACCENT,"|":Or.CLOSE,"||":Or.BIN0,"}":Or.CLOSE,"~":Or.WIDEACCENT,"\xa8":Or.ACCENT,"\xaf":Or.WIDEACCENT,"\xb0":Or.ACCENT,"\xb2":Or.ORD,"\xb3":Or.ORD,"\xb4":Or.ACCENT,"\xb8":Or.ACCENT,"\xb9":Or.ORD,\u02c6:Or.WIDEACCENT,\u02c7:Or.WIDEACCENT,\u02c9:Or.WIDEACCENT,\u02ca:Or.ACCENT,\u02cb:Or.ACCENT,\u02cd:Or.WIDEACCENT,"\u02d8":Or.ACCENT,"\u02d9":Or.ACCENT,"\u02da":Or.ACCENT,"\u02dc":Or.WIDEACCENT,"\u02dd":Or.ACCENT,"\u02f7":Or.WIDEACCENT,"\u0302":Or.WIDEACCENT,"\u0311":Or.ACCENT,"\u2016":Or.FENCE,"\u2019":Or.CLOSE0,"\u201a":Or.ORD,"\u201b":Or.ORD,"\u201d":Or.CLOSE0,"\u201e":Or.ORD,"\u201f":Or.ORD,"\u2032":Or.ORD,"\u2033":Or.ORD,"\u2034":Or.ORD,"\u2035":Or.ORD,"\u2036":Or.ORD,"\u2037":Or.ORD,"\u203e":Or.WIDEACCENT,"\u2057":Or.ORD,"\u20db":Or.ACCENT,"\u20dc":Or.ACCENT,"\u2309":Or.CLOSE,"\u230b":Or.CLOSE,"\u2322":Or.RELSTRETCH0,"\u2323":Or.RELSTRETCH0,"\u23b4":Or.WIDEACCENT,"\u23b5":Or.WIDEACCENT,"\u23cd":Or.ORD,"\u23dc":Or.WIDEACCENT,"\u23dd":Or.WIDEACCENT,"\u23de":Or.WIDEACCENT,"\u23df":Or.WIDEACCENT,"\u23e0":Or.WIDEACCENT,"\u23e1":Or.WIDEACCENT,"\u2773":Or.CLOSE,"\u27e7":Or.CLOSE,"\u27e9":Or.CLOSE,"\u27eb":Or.CLOSE,"\u27ed":Or.CLOSE,"\u27ef":Or.CLOSE,"\u2980":Or.FENCE,"\u2984":Or.CLOSE,"\u2986":Or.CLOSE,"\u2988":Or.CLOSE,"\u298a":Or.CLOSE,"\u298c":Or.CLOSE,"\u298e":Or.CLOSE,"\u2990":Or.CLOSE,"\u2992":Or.CLOSE,"\u2994":Or.CLOSE,"\u2996":Or.CLOSE,"\u2998":Or.CLOSE,"\u2999":Or.FENCE,"\u29d9":Or.CLOSE,"\u29db":Or.CLOSE,"\u29fd":Or.CLOSE,"\u3009":Or.CLOSE,"\u{1eef0}":Or.BINSTRETCH0,"\u{1eef1}":Or.BINSTRETCH0},infix:{"!":Or.ORD,"!=":Or.BIN5,"#":Or.ORD,$:Or.ORD,"%":Or.ORD3,"&&":Or.BIN4,"**":Or.BIN3,"*":Or.BIN3,"*=":Or.BIN5,"+":Or.BIN4,"+=":Or.BIN5,",":Or.PUNCT03,"":Or.ORD,"-":Or.BIN4,"-=":Or.BIN5,"->":Or.BIN5,".":Or.ORD3,"..":Or.BIN3,"...":Or.INNER,"/":[4,4,gr.ORD,{}],"//":Or.BIN5,"/=":Or.BIN5,":":[0,3,gr.REL,{}],":=":Or.BIN5,";":Or.PUNCT03,"<":Or.REL,"<=":Or.REL,"<>":[3,3,gr.REL,{}],"=":Or.REL,"==":Or.REL,">":Or.REL,">=":Or.REL,"?":[3,3,gr.CLOSE,{fence:!0}],"@":Or.ORD3,"\\":Or.ORD,"^":[3,3,gr.ORD,{accent:!0,stretchy:!0}],_:Or.WIDEACCENT,"|":[5,5,gr.ORD,{}],"||":Or.BIN5,"\xb1":Or.BIN4,"\xb7":Or.BIN3,"\xd7":Or.BIN3,"\xf7":Or.BIN4,\u02b9:Or.ORD,"\u0300":Or.ACCENT,"\u0301":Or.ACCENT,"\u0303":Or.WIDEACCENT,"\u0304":Or.ACCENT,"\u0306":Or.ACCENT,"\u0307":Or.ACCENT,"\u0308":Or.ACCENT,"\u030c":Or.ACCENT,"\u0332":Or.WIDEACCENT,"\u0338":Or.REL,"\u03f6":Or.REL,"\u2015":Or.ORDSTRETCH0,"\u2017":Or.ORDSTRETCH0,"\u2020":Or.BIN3,"\u2021":Or.BIN3,"\u2022":Or.BIN3,"\u2026":Or.INNER,"\u2043":Or.BIN3,"\u2044":Or.STRETCH4,"\u2061":Or.NONE,"\u2062":Or.NONE,"\u2063":[0,0,gr.NONE,{linebreakstyle:"after"}],"\u2064":Or.NONE,"\u20d7":Or.ACCENT,\u2111:Or.ORD,\u2113:Or.ORD,\u2118:Or.ORD,\u211c:Or.ORD,"\u2190":Or.WIDEREL,"\u2191":Or.RELSTRETCH,"\u2192":Or.WIDEREL,"\u2193":Or.RELSTRETCH,"\u2194":Or.WIDEREL,"\u2195":Or.RELSTRETCH,"\u2196":Or.REL,"\u2197":Or.REL,"\u2198":Or.REL,"\u2199":Or.REL,"\u219a":Or.WIDEREL,"\u219b":Or.WIDEREL,"\u219c":Or.WIDEREL,"\u219d":Or.WIDEREL,"\u219e":Or.WIDEREL,"\u219f":Or.RELSTRETCH,"\u21a0":Or.WIDEREL,"\u21a1":Or.RELSTRETCH,"\u21a2":Or.WIDEREL,"\u21a3":Or.WIDEREL,"\u21a4":Or.WIDEREL,"\u21a5":Or.RELSTRETCH,"\u21a6":Or.WIDEREL,"\u21a7":Or.RELSTRETCH,"\u21a8":Or.RELSTRETCH,"\u21a9":Or.WIDEREL,"\u21aa":Or.WIDEREL,"\u21ab":Or.WIDEREL,"\u21ac":Or.WIDEREL,"\u21ad":Or.WIDEREL,"\u21ae":Or.WIDEREL,"\u21af":Or.REL,"\u21b0":Or.RELSTRETCH,"\u21b1":Or.RELSTRETCH,"\u21b2":Or.RELSTRETCH,"\u21b3":Or.RELSTRETCH,"\u21b4":Or.RELSTRETCH,"\u21b5":Or.RELSTRETCH,"\u21b6":Or.REL,"\u21b7":Or.REL,"\u21b8":Or.REL,"\u21b9":Or.WIDEREL,"\u21ba":Or.REL,"\u21bb":Or.REL,"\u21bc":Or.WIDEREL,"\u21bd":Or.WIDEREL,"\u21be":Or.RELSTRETCH,"\u21bf":Or.RELSTRETCH,"\u21c0":Or.WIDEREL,"\u21c1":Or.WIDEREL,"\u21c2":Or.RELSTRETCH,"\u21c3":Or.RELSTRETCH,"\u21c4":Or.WIDEREL,"\u21c5":Or.RELSTRETCH,"\u21c6":Or.WIDEREL,"\u21c7":Or.WIDEREL,"\u21c8":Or.RELSTRETCH,"\u21c9":Or.WIDEREL,"\u21ca":Or.RELSTRETCH,"\u21cb":Or.WIDEREL,"\u21cc":Or.WIDEREL,"\u21cd":Or.WIDEREL,"\u21ce":Or.WIDEREL,"\u21cf":Or.WIDEREL,"\u21d0":Or.WIDEREL,"\u21d1":Or.RELSTRETCH,"\u21d2":Or.WIDEREL,"\u21d3":Or.RELSTRETCH,"\u21d4":Or.WIDEREL,"\u21d5":Or.RELSTRETCH,"\u21d6":Or.REL,"\u21d7":Or.REL,"\u21d8":Or.REL,"\u21d9":Or.REL,"\u21da":Or.WIDEREL,"\u21db":Or.WIDEREL,"\u21dc":Or.WIDEREL,"\u21dd":Or.WIDEREL,"\u21de":Or.RELSTRETCH,"\u21df":Or.RELSTRETCH,"\u21e0":Or.WIDEREL,"\u21e1":Or.RELSTRETCH,"\u21e2":Or.WIDEREL,"\u21e3":Or.RELSTRETCH,"\u21e4":Or.WIDEREL,"\u21e5":Or.WIDEREL,"\u21e6":Or.WIDEREL,"\u21e7":Or.RELSTRETCH,"\u21e8":Or.WIDEREL,"\u21e9":Or.RELSTRETCH,"\u21ea":Or.RELSTRETCH,"\u21eb":Or.RELSTRETCH,"\u21ec":Or.RELSTRETCH,"\u21ed":Or.RELSTRETCH,"\u21ee":Or.RELSTRETCH,"\u21ef":Or.RELSTRETCH,"\u21f0":Or.WIDEREL,"\u21f1":Or.REL,"\u21f2":Or.REL,"\u21f3":Or.RELSTRETCH,"\u21f4":Or.WIDEREL,"\u21f5":Or.RELSTRETCH,"\u21f6":Or.WIDEREL,"\u21f7":Or.WIDEREL,"\u21f8":Or.WIDEREL,"\u21f9":Or.WIDEREL,"\u21fa":Or.WIDEREL,"\u21fb":Or.WIDEREL,"\u21fc":Or.WIDEREL,"\u21fd":Or.WIDEREL,"\u21fe":Or.WIDEREL,"\u21ff":Or.WIDEREL,"\u2205":Or.ORD,"\u2206":Or.ORD,"\u2208":Or.REL,"\u2209":Or.REL,"\u220a":Or.REL,"\u220b":Or.REL,"\u220c":Or.REL,"\u220d":Or.REL,"\u2212":Or.BIN4,"\u2213":Or.BIN4,"\u2214":Or.BIN4,"\u2215":Or.STRETCH4,"\u2216":Or.BIN4,"\u2217":Or.BIN3,"\u2218":Or.BIN3,"\u2219":Or.BIN3,"\u221d":Or.REL,"\u221e":Or.ORD,"\u2223":Or.REL,"\u2224":Or.REL,"\u2225":Or.REL,"\u2226":Or.REL,"\u2227":Or.BIN4,"\u2228":Or.BIN4,"\u2229":Or.BIN4,"\u222a":Or.BIN4,"\u2236":Or.BIN4,"\u2237":Or.REL,"\u2238":Or.BIN4,"\u2239":Or.REL,"\u223a":Or.REL,"\u223b":Or.REL,"\u223c":Or.REL,"\u223d":Or.REL,"\u223e":Or.REL,"\u2240":Or.BIN3,"\u2241":Or.REL,"\u2242":Or.REL,"\u2242\u0338":Or.REL,"\u2243":Or.REL,"\u2244":Or.REL,"\u2245":Or.REL,"\u2246":Or.REL,"\u2247":Or.REL,"\u2248":Or.REL,"\u2249":Or.REL,"\u224a":Or.REL,"\u224b":Or.REL,"\u224c":Or.REL,"\u224d":Or.REL,"\u224e":Or.REL,"\u224f":Or.REL,"\u2250":Or.REL,"\u2251":Or.REL,"\u2252":Or.REL,"\u2253":Or.REL,"\u2254":Or.REL,"\u2255":Or.REL,"\u2256":Or.REL,"\u2257":Or.REL,"\u2258":Or.REL,"\u2259":Or.REL,"\u225a":Or.REL,"\u225b":Or.REL,"\u225c":Or.REL,"\u225d":Or.REL,"\u225e":Or.REL,"\u225f":Or.REL,"\u2260":Or.REL,"\u2261":Or.REL,"\u2262":Or.REL,"\u2263":Or.REL,"\u2264":Or.REL,"\u2265":Or.REL,"\u2266":Or.REL,"\u2266\u0338":Or.REL,"\u2267":Or.REL,"\u2267\u0338":Or.REL,"\u2268":Or.REL,"\u2269":Or.REL,"\u226a":Or.REL,"\u226a\u0338":Or.REL,"\u226b":Or.REL,"\u226b\u0338":Or.REL,"\u226c":Or.REL,"\u226d":Or.REL,"\u226e":Or.REL,"\u226f":Or.REL,"\u2270":Or.REL,"\u2271":Or.REL,"\u2272":Or.REL,"\u2273":Or.REL,"\u2274":Or.REL,"\u2275":Or.REL,"\u2276":Or.REL,"\u2277":Or.REL,"\u2278":Or.REL,"\u2279":Or.REL,"\u227a":Or.REL,"\u227b":Or.REL,"\u227c":Or.REL,"\u227d":Or.REL,"\u227e":Or.REL,"\u227e\u0338":Or.REL,"\u227f":Or.REL,"\u227f\u0338":Or.REL,"\u2280":Or.REL,"\u2281":Or.REL,"\u2282":Or.REL,"\u2283":Or.REL,"\u2284":Or.REL,"\u2285":Or.REL,"\u2286":Or.REL,"\u2287":Or.REL,"\u2288":Or.REL,"\u2289":Or.REL,"\u228a":Or.REL,"\u228b":Or.REL,"\u228c":Or.BIN4,"\u228d":Or.BIN4,"\u228e":Or.BIN4,"\u228f":Or.REL,"\u228f\u0338":Or.REL,"\u2290":Or.REL,"\u2290\u0338":Or.REL,"\u2291":Or.REL,"\u2292":Or.REL,"\u2293":Or.BIN4,"\u2294":Or.BIN4,"\u2295":Or.BIN4,"\u2296":Or.BIN4,"\u2297":Or.BIN3,"\u2298":Or.BIN4,"\u2299":Or.BIN3,"\u229a":Or.BIN3,"\u229b":Or.BIN3,"\u229c":Or.REL,"\u229d":Or.BIN4,"\u229e":Or.BIN4,"\u229f":Or.BIN4,"\u22a0":Or.BIN3,"\u22a1":Or.BIN3,"\u22a2":Or.REL,"\u22a3":Or.REL,"\u22a4":Or.ORD,"\u22a5":Or.ORD,"\u22a6":Or.REL,"\u22a7":Or.REL,"\u22a8":Or.REL,"\u22a9":Or.REL,"\u22aa":Or.REL,"\u22ab":Or.REL,"\u22ac":Or.REL,"\u22ad":Or.REL,"\u22ae":Or.REL,"\u22af":Or.REL,"\u22b0":Or.REL,"\u22b1":Or.REL,"\u22b2":Or.REL,"\u22b3":Or.REL,"\u22b4":Or.REL,"\u22b5":Or.REL,"\u22b6":Or.REL,"\u22b7":Or.REL,"\u22b8":Or.REL,"\u22ba":Or.BIN3,"\u22bb":Or.BIN4,"\u22bc":Or.BIN4,"\u22bd":Or.BIN4,"\u22c4":Or.BIN3,"\u22c5":Or.BIN3,"\u22c6":Or.BIN3,"\u22c7":Or.BIN3,"\u22c8":Or.REL,"\u22c9":Or.BIN3,"\u22ca":Or.BIN3,"\u22cb":Or.BIN3,"\u22cc":Or.BIN3,"\u22cd":Or.REL,"\u22ce":Or.BIN4,"\u22cf":Or.BIN4,"\u22d0":Or.REL,"\u22d1":Or.REL,"\u22d2":Or.BIN4,"\u22d3":Or.BIN4,"\u22d4":Or.REL,"\u22d5":Or.REL,"\u22d6":Or.REL,"\u22d7":Or.REL,"\u22d8":Or.REL,"\u22d9":Or.REL,"\u22da":Or.REL,"\u22db":Or.REL,"\u22dc":Or.REL,"\u22dd":Or.REL,"\u22de":Or.REL,"\u22df":Or.REL,"\u22e0":Or.REL,"\u22e1":Or.REL,"\u22e2":Or.REL,"\u22e3":Or.REL,"\u22e4":Or.REL,"\u22e5":Or.REL,"\u22e6":Or.REL,"\u22e7":Or.REL,"\u22e8":Or.REL,"\u22e9":Or.REL,"\u22ea":Or.REL,"\u22eb":Or.REL,"\u22ec":Or.REL,"\u22ed":Or.REL,"\u22ee":Or.ORD,"\u22ef":Or.INNER,"\u22f0":Or.INNER,"\u22f1":Or.INNER,"\u22f2":Or.REL,"\u22f3":Or.REL,"\u22f4":Or.REL,"\u22f5":Or.REL,"\u22f6":Or.REL,"\u22f7":Or.REL,"\u22f8":Or.REL,"\u22f9":Or.REL,"\u22fa":Or.REL,"\u22fb":Or.REL,"\u22fc":Or.REL,"\u22fd":Or.REL,"\u22fe":Or.REL,"\u22ff":Or.REL,"\u2301":Or.REL,"\u2305":Or.BIN3,"\u2306":Or.BIN3,"\u2329":Or.OPEN,"\u232a":Or.CLOSE,"\u237c":Or.REL,"\u238b":Or.REL,"\u23aa":Or.ORD,"\u23af":Or.ORDSTRETCH0,"\u23b0":Or.OPEN,"\u23b1":Or.CLOSE,"\u2500":Or.ORD,"\u25b3":Or.BIN3,"\u25b5":Or.BIN3,"\u25b9":Or.BIN3,"\u25bd":Or.BIN3,"\u25bf":Or.BIN3,"\u25c3":Or.BIN3,"\u25ef":Or.BIN3,"\u2660":Or.ORD,"\u2661":Or.ORD,"\u2662":Or.ORD,"\u2663":Or.ORD,"\u266d":Or.ORD,"\u266e":Or.ORD,"\u266f":Or.ORD,"\u2758":[5,5,gr.REL,{stretchy:!0,symmetric:!0}],"\u2794":Or.WIDEREL,"\u2795":Or.BIN4,"\u2796":Or.BIN4,"\u2797":Or.BIN4,"\u2798":Or.REL,"\u2799":Or.WIDEREL,"\u279a":Or.REL,"\u279b":Or.WIDEREL,"\u279c":Or.WIDEREL,"\u279d":Or.WIDEREL,"\u279e":Or.WIDEREL,"\u279f":Or.WIDEREL,"\u27a0":Or.WIDEREL,"\u27a1":Or.WIDEREL,"\u27a5":Or.WIDEREL,"\u27a6":Or.WIDEREL,"\u27a7":Or.RELACCENT,"\u27a8":Or.WIDEREL,"\u27a9":Or.WIDEREL,"\u27aa":Or.WIDEREL,"\u27ab":Or.WIDEREL,"\u27ac":Or.WIDEREL,"\u27ad":Or.WIDEREL,"\u27ae":Or.WIDEREL,"\u27af":Or.WIDEREL,"\u27b1":Or.WIDEREL,"\u27b2":Or.RELACCENT,"\u27b3":Or.WIDEREL,"\u27b4":Or.REL,"\u27b5":Or.WIDEREL,"\u27b6":Or.REL,"\u27b7":Or.REL,"\u27b8":Or.WIDEREL,"\u27b9":Or.REL,"\u27ba":Or.WIDEREL,"\u27bb":Or.WIDEREL,"\u27bc":Or.WIDEREL,"\u27bd":Or.WIDEREL,"\u27be":Or.WIDEREL,"\u27c2":Or.REL,"\u27c2\u0338":Or.REL,"\u27cb":Or.BIN3,"\u27cd":Or.BIN3,"\u27f0":Or.RELSTRETCH,"\u27f1":Or.RELSTRETCH,"\u27f2":Or.REL,"\u27f3":Or.REL,"\u27f4":Or.RELSTRETCH,"\u27f5":Or.WIDEREL,"\u27f6":Or.WIDEREL,"\u27f7":Or.WIDEREL,"\u27f8":Or.WIDEREL,"\u27f9":Or.WIDEREL,"\u27fa":Or.WIDEREL,"\u27fb":Or.WIDEREL,"\u27fc":Or.WIDEREL,"\u27fd":Or.WIDEREL,"\u27fe":Or.WIDEREL,"\u27ff":Or.WIDEREL,"\u2900":Or.WIDEREL,"\u2901":Or.WIDEREL,"\u2902":Or.WIDEREL,"\u2903":Or.WIDEREL,"\u2904":Or.WIDEREL,"\u2905":Or.WIDEREL,"\u2906":Or.WIDEREL,"\u2907":Or.WIDEREL,"\u2908":Or.RELSTRETCH,"\u2909":Or.RELSTRETCH,"\u290a":Or.RELSTRETCH,"\u290b":Or.RELSTRETCH,"\u290c":Or.WIDEREL,"\u290d":Or.WIDEREL,"\u290e":Or.WIDEREL,"\u290f":Or.WIDEREL,"\u2910":Or.WIDEREL,"\u2911":Or.WIDEREL,"\u2912":Or.RELSTRETCH,"\u2913":Or.RELSTRETCH,"\u2914":Or.WIDEREL,"\u2915":Or.WIDEREL,"\u2916":Or.WIDEREL,"\u2917":Or.WIDEREL,"\u2918":Or.WIDEREL,"\u2919":Or.WIDEREL,"\u291a":Or.WIDEREL,"\u291b":Or.WIDEREL,"\u291c":Or.WIDEREL,"\u291d":Or.WIDEREL,"\u291e":Or.WIDEREL,"\u291f":Or.WIDEREL,"\u2920":Or.WIDEREL,"\u2921":Or.REL,"\u2922":Or.REL,"\u2923":Or.REL,"\u2924":Or.REL,"\u2925":Or.REL,"\u2926":Or.REL,"\u2927":Or.REL,"\u2928":Or.REL,"\u2929":Or.REL,"\u292a":Or.REL,"\u292b":Or.REL,"\u292c":Or.REL,"\u292d":Or.REL,"\u292e":Or.REL,"\u292f":Or.REL,"\u2930":Or.REL,"\u2931":Or.REL,"\u2932":Or.REL,"\u2933":Or.RELACCENT,"\u2934":Or.RELSTRETCH,"\u2935":Or.RELSTRETCH,"\u2936":Or.RELSTRETCH,"\u2937":Or.RELSTRETCH,"\u2938":Or.REL,"\u2939":Or.REL,"\u293a":Or.RELACCENT,"\u293b":Or.RELACCENT,"\u293c":Or.RELACCENT,"\u293d":Or.RELACCENT,"\u293e":Or.REL,"\u293f":Or.REL,"\u2940":Or.REL,"\u2941":Or.REL,"\u2942":Or.WIDEREL,"\u2943":Or.WIDEREL,"\u2944":Or.WIDEREL,"\u2945":Or.RELSTRETCH,"\u2946":Or.RELSTRETCH,"\u2947":Or.WIDEREL,"\u2948":Or.WIDEREL,"\u2949":Or.RELSTRETCH,"\u294a":Or.WIDEREL,"\u294b":Or.WIDEREL,"\u294c":Or.RELSTRETCH,"\u294d":Or.RELSTRETCH,"\u294e":Or.WIDEREL,"\u294f":Or.RELSTRETCH,"\u2950":Or.WIDEREL,"\u2951":Or.RELSTRETCH,"\u2952":Or.WIDEREL,"\u2953":Or.WIDEREL,"\u2954":Or.RELSTRETCH,"\u2955":Or.RELSTRETCH,"\u2956":Or.WIDEREL,"\u2957":Or.WIDEREL,"\u2958":Or.RELSTRETCH,"\u2959":Or.RELSTRETCH,"\u295a":Or.WIDEREL,"\u295b":Or.WIDEREL,"\u295c":Or.RELSTRETCH,"\u295d":Or.RELSTRETCH,"\u295e":Or.WIDEREL,"\u295f":Or.WIDEREL,"\u2960":Or.RELSTRETCH,"\u2961":Or.RELSTRETCH,"\u2962":Or.WIDEREL,"\u2963":Or.RELSTRETCH,"\u2964":Or.WIDEREL,"\u2965":Or.RELSTRETCH,"\u2966":Or.WIDEREL,"\u2967":Or.WIDEREL,"\u2968":Or.WIDEREL,"\u2969":Or.WIDEREL,"\u296a":Or.WIDEREL,"\u296b":Or.WIDEREL,"\u296c":Or.WIDEREL,"\u296d":Or.WIDEREL,"\u296e":Or.RELSTRETCH,"\u296f":Or.RELSTRETCH,"\u2970":Or.WIDEREL,"\u2971":Or.WIDEREL,"\u2972":Or.WIDEREL,"\u2973":Or.WIDEREL,"\u2974":Or.WIDEREL,"\u2975":Or.WIDEREL,"\u2976":Or.RELACCENT,"\u2977":Or.RELACCENT,"\u2978":Or.RELACCENT,"\u2979":Or.RELACCENT,"\u297a":Or.RELACCENT,"\u297b":Or.RELACCENT,"\u297c":Or.WIDEREL,"\u297d":Or.WIDEREL,"\u297e":Or.RELSTRETCH,"\u297f":Or.RELSTRETCH,"\u2981":Or.REL,"\u2982":Or.REL,"\u29b6":Or.REL,"\u29b7":Or.REL,"\u29b8":Or.BIN4,"\u29b9":Or.REL,"\u29bc":Or.BIN4,"\u29c0":Or.REL,"\u29c1":Or.REL,"\u29c4":Or.BIN4,"\u29c5":Or.BIN4,"\u29c6":Or.BIN3,"\u29c7":Or.BIN3,"\u29c8":Or.BIN3,"\u29ce":Or.REL,"\u29cf":Or.REL,"\u29d0":Or.REL,"\u29d1":Or.REL,"\u29d2":Or.REL,"\u29d3":Or.REL,"\u29d4":Or.BIN3,"\u29d5":Or.BIN3,"\u29d6":Or.BIN3,"\u29d7":Or.BIN3,"\u29df":Or.REL,"\u29e1":Or.REL,"\u29e2":Or.BIN3,"\u29e3":Or.REL,"\u29e4":Or.REL,"\u29e5":Or.REL,"\u29e6":Or.REL,"\u29f4":Or.REL,"\u29f5":Or.BIN4,"\u29f6":Or.BIN4,"\u29f7":Or.BIN4,"\u29f8":Or.BIN4,"\u29f9":Or.BIN4,"\u29fa":Or.BIN4,"\u29fb":Or.BIN4,"\u2a1d":Or.BIN3,"\u2a1e":Or.BIN3,"\u2a1f":Or.BIN4,"\u2a20":Or.BIN4,"\u2a21":Or.BIN4,"\u2a22":Or.BIN4,"\u2a23":Or.BIN4,"\u2a24":Or.BIN4,"\u2a25":Or.BIN4,"\u2a26":Or.BIN4,"\u2a27":Or.BIN4,"\u2a28":Or.BIN4,"\u2a29":Or.BIN4,"\u2a2a":Or.BIN4,"\u2a2b":Or.BIN4,"\u2a2c":Or.BIN4,"\u2a2d":Or.BIN4,"\u2a2e":Or.BIN4,"\u2a2f":Or.BIN3,"\u2a30":Or.BIN3,"\u2a31":Or.BIN3,"\u2a32":Or.BIN3,"\u2a33":Or.BIN3,"\u2a34":Or.BIN3,"\u2a35":Or.BIN3,"\u2a36":Or.BIN3,"\u2a37":Or.BIN3,"\u2a38":Or.BIN4,"\u2a39":Or.BIN4,"\u2a3a":Or.BIN4,"\u2a3b":Or.BIN3,"\u2a3c":Or.BIN3,"\u2a3d":Or.BIN3,"\u2a3e":Or.BIN4,"\u2a3f":Or.BIN3,"\u2a40":Or.BIN4,"\u2a41":Or.BIN4,"\u2a42":Or.BIN4,"\u2a43":Or.BIN4,"\u2a44":Or.BIN4,"\u2a45":Or.BIN4,"\u2a46":Or.BIN4,"\u2a47":Or.BIN4,"\u2a48":Or.BIN4,"\u2a49":Or.BIN4,"\u2a4a":Or.BIN4,"\u2a4b":Or.BIN4,"\u2a4c":Or.BIN4,"\u2a4d":Or.BIN4,"\u2a4e":Or.BIN4,"\u2a4f":Or.BIN4,"\u2a50":Or.BIN3,"\u2a51":Or.BIN4,"\u2a52":Or.BIN4,"\u2a53":Or.BIN4,"\u2a54":Or.BIN4,"\u2a55":Or.BIN4,"\u2a56":Or.BIN4,"\u2a57":Or.BIN4,"\u2a58":Or.BIN4,"\u2a59":Or.BIN4,"\u2a5a":Or.BIN4,"\u2a5b":Or.BIN4,"\u2a5c":Or.BIN4,"\u2a5d":Or.BIN4,"\u2a5e":Or.BIN4,"\u2a5f":Or.BIN4,"\u2a60":Or.BIN4,"\u2a61":Or.BIN4,"\u2a62":Or.BIN4,"\u2a63":Or.BIN4,"\u2a64":Or.BIN3,"\u2a65":Or.BIN3,"\u2a66":Or.REL,"\u2a67":Or.REL,"\u2a68":Or.REL,"\u2a69":Or.REL,"\u2a6a":Or.REL,"\u2a6b":Or.REL,"\u2a6c":Or.REL,"\u2a6d":Or.REL,"\u2a6e":Or.REL,"\u2a6f":Or.REL,"\u2a70":Or.REL,"\u2a71":Or.REL,"\u2a72":Or.REL,"\u2a73":Or.REL,"\u2a74":Or.REL,"\u2a75":Or.REL,"\u2a76":Or.REL,"\u2a77":Or.REL,"\u2a78":Or.REL,"\u2a79":Or.REL,"\u2a7a":Or.REL,"\u2a7b":Or.REL,"\u2a7c":Or.REL,"\u2a7d":Or.REL,"\u2a7d\u0338":Or.REL,"\u2a7e":Or.REL,"\u2a7e\u0338":Or.REL,"\u2a7f":Or.REL,"\u2a80":Or.REL,"\u2a81":Or.REL,"\u2a82":Or.REL,"\u2a83":Or.REL,"\u2a84":Or.REL,"\u2a85":Or.REL,"\u2a86":Or.REL,"\u2a87":Or.REL,"\u2a88":Or.REL,"\u2a89":Or.REL,"\u2a8a":Or.REL,"\u2a8b":Or.REL,"\u2a8c":Or.REL,"\u2a8d":Or.REL,"\u2a8e":Or.REL,"\u2a8f":Or.REL,"\u2a90":Or.REL,"\u2a91":Or.REL,"\u2a92":Or.REL,"\u2a93":Or.REL,"\u2a94":Or.REL,"\u2a95":Or.REL,"\u2a96":Or.REL,"\u2a97":Or.REL,"\u2a98":Or.REL,"\u2a99":Or.REL,"\u2a9a":Or.REL,"\u2a9b":Or.REL,"\u2a9c":Or.REL,"\u2a9d":Or.REL,"\u2a9e":Or.REL,"\u2a9f":Or.REL,"\u2aa0":Or.REL,"\u2aa1":Or.REL,"\u2aa2":Or.REL,"\u2aa3":Or.REL,"\u2aa4":Or.REL,"\u2aa5":Or.REL,"\u2aa6":Or.REL,"\u2aa7":Or.REL,"\u2aa8":Or.REL,"\u2aa9":Or.REL,"\u2aaa":Or.REL,"\u2aab":Or.REL,"\u2aac":Or.REL,"\u2aad":Or.REL,"\u2aae":Or.REL,"\u2aaf":Or.REL,"\u2aaf\u0338":Or.REL,"\u2ab0":Or.REL,"\u2ab0\u0338":Or.REL,"\u2ab1":Or.REL,"\u2ab2":Or.REL,"\u2ab3":Or.REL,"\u2ab4":Or.REL,"\u2ab5":Or.REL,"\u2ab6":Or.REL,"\u2ab7":Or.REL,"\u2ab8":Or.REL,"\u2ab9":Or.REL,"\u2aba":Or.REL,"\u2abb":Or.REL,"\u2abc":Or.REL,"\u2abd":Or.REL,"\u2abe":Or.REL,"\u2abf":Or.REL,"\u2ac0":Or.REL,"\u2ac1":Or.REL,"\u2ac2":Or.REL,"\u2ac3":Or.REL,"\u2ac4":Or.REL,"\u2ac5":Or.REL,"\u2ac6":Or.REL,"\u2ac7":Or.REL,"\u2ac8":Or.REL,"\u2ac9":Or.REL,"\u2aca":Or.REL,"\u2acb":Or.REL,"\u2acc":Or.REL,"\u2acd":Or.REL,"\u2ace":Or.REL,"\u2acf":Or.REL,"\u2ad0":Or.REL,"\u2ad1":Or.REL,"\u2ad2":Or.REL,"\u2ad3":Or.REL,"\u2ad4":Or.REL,"\u2ad5":Or.REL,"\u2ad6":Or.REL,"\u2ad7":Or.REL,"\u2ad8":Or.REL,"\u2ad9":Or.REL,"\u2ada":Or.REL,"\u2adb":Or.BIN4,"\u2add":Or.BIN3,"\u2add\u0338":Or.REL,"\u2ade":Or.REL,"\u2adf":Or.REL,"\u2ae0":Or.REL,"\u2ae1":Or.REL,"\u2ae2":Or.REL,"\u2ae3":Or.REL,"\u2ae4":Or.REL,"\u2ae5":Or.REL,"\u2ae6":Or.REL,"\u2ae7":Or.REL,"\u2ae8":Or.REL,"\u2ae9":Or.REL,"\u2aea":Or.REL,"\u2aeb":Or.REL,"\u2aee":Or.REL,"\u2af2":Or.REL,"\u2af3":Or.REL,"\u2af4":Or.REL,"\u2af5":Or.REL,"\u2af6":Or.BIN4,"\u2af7":Or.REL,"\u2af8":Or.REL,"\u2af9":Or.REL,"\u2afa":Or.REL,"\u2afb":Or.BIN4,"\u2afd":Or.BIN4,"\u2afe":Or.BIN3,"\u2b00":Or.REL,"\u2b01":Or.REL,"\u2b02":Or.REL,"\u2b03":Or.REL,"\u2b04":Or.WIDEREL,"\u2b05":Or.WIDEREL,"\u2b06":Or.RELSTRETCH,"\u2b07":Or.RELSTRETCH,"\u2b08":Or.REL,"\u2b09":Or.REL,"\u2b0a":Or.REL,"\u2b0b":Or.REL,"\u2b0c":Or.WIDEREL,"\u2b0d":Or.RELSTRETCH,"\u2b0e":Or.RELSTRETCH,"\u2b0f":Or.RELSTRETCH,"\u2b10":Or.RELSTRETCH,"\u2b11":Or.RELSTRETCH,"\u2b30":Or.WIDEREL,"\u2b31":Or.WIDEREL,"\u2b32":Or.RELSTRETCH,"\u2b33":Or.WIDEREL,"\u2b34":Or.WIDEREL,"\u2b35":Or.WIDEREL,"\u2b36":Or.WIDEREL,"\u2b37":Or.WIDEREL,"\u2b38":Or.WIDEREL,"\u2b39":Or.WIDEREL,"\u2b3a":Or.WIDEREL,"\u2b3b":Or.WIDEREL,"\u2b3c":Or.WIDEREL,"\u2b3d":Or.WIDEREL,"\u2b3e":Or.WIDEREL,"\u2b3f":Or.RELACCENT,"\u2b40":Or.WIDEREL,"\u2b41":Or.WIDEREL,"\u2b42":Or.WIDEREL,"\u2b43":Or.WIDEREL,"\u2b44":Or.WIDEREL,"\u2b45":Or.WIDEREL,"\u2b46":Or.WIDEREL,"\u2b47":Or.WIDEREL,"\u2b48":Or.WIDEREL,"\u2b49":Or.WIDEREL,"\u2b4a":Or.WIDEREL,"\u2b4b":Or.WIDEREL,"\u2b4c":Or.WIDEREL,"\u2b4d":Or.REL,"\u2b4e":Or.REL,"\u2b4f":Or.REL,"\u2b5a":Or.REL,"\u2b5b":Or.REL,"\u2b5c":Or.REL,"\u2b5d":Or.REL,"\u2b5e":Or.REL,"\u2b5f":Or.REL,"\u2b60":Or.WIDEREL,"\u2b61":Or.RELSTRETCH,"\u2b62":Or.WIDEREL,"\u2b63":Or.RELSTRETCH,"\u2b64":Or.WIDEREL,"\u2b65":Or.RELSTRETCH,"\u2b66":Or.REL,"\u2b67":Or.REL,"\u2b68":Or.REL,"\u2b69":Or.REL,"\u2b6a":Or.WIDEREL,"\u2b6b":Or.RELSTRETCH,"\u2b6c":Or.WIDEREL,"\u2b6d":Or.RELSTRETCH,"\u2b6e":Or.REL,"\u2b6f":Or.REL,"\u2b70":Or.WIDEREL,"\u2b71":Or.RELSTRETCH,"\u2b72":Or.WIDEREL,"\u2b73":Or.RELSTRETCH,"\u2b76":Or.REL,"\u2b77":Or.REL,"\u2b78":Or.REL,"\u2b79":Or.REL,"\u2b7a":Or.WIDEREL,"\u2b7b":Or.RELSTRETCH,"\u2b7c":Or.WIDEREL,"\u2b7d":Or.RELSTRETCH,"\u2b80":Or.WIDEREL,"\u2b81":Or.RELSTRETCH,"\u2b82":Or.WIDEREL,"\u2b83":Or.RELSTRETCH,"\u2b84":Or.WIDEREL,"\u2b85":Or.RELSTRETCH,"\u2b86":Or.WIDEREL,"\u2b87":Or.RELSTRETCH,"\u2b88":Or.RELACCENT,"\u2b89":Or.REL,"\u2b8a":Or.RELACCENT,"\u2b8b":Or.REL,"\u2b8c":Or.REL,"\u2b8d":Or.REL,"\u2b8e":Or.REL,"\u2b8f":Or.REL,"\u2b94":Or.REL,"\u2b95":Or.WIDEREL,"\u2ba0":Or.RELSTRETCH,"\u2ba1":Or.RELSTRETCH,"\u2ba2":Or.RELSTRETCH,"\u2ba3":Or.RELSTRETCH,"\u2ba4":Or.RELSTRETCH,"\u2ba5":Or.RELSTRETCH,"\u2ba6":Or.RELSTRETCH,"\u2ba7":Or.RELSTRETCH,"\u2ba8":Or.WIDEREL,"\u2ba9":Or.WIDEREL,"\u2baa":Or.WIDEREL,"\u2bab":Or.WIDEREL,"\u2bac":Or.RELSTRETCH,"\u2bad":Or.RELSTRETCH,"\u2bae":Or.RELSTRETCH,"\u2baf":Or.RELSTRETCH,"\u2bb0":Or.REL,"\u2bb1":Or.REL,"\u2bb2":Or.REL,"\u2bb3":Or.REL,"\u2bb4":Or.REL,"\u2bb5":Or.REL,"\u2bb6":Or.REL,"\u2bb7":Or.REL,"\u2bb8":Or.RELSTRETCH,"\u2bd1":Or.REL,\u3adc:Or.BIN3,"\ufe37":Or.WIDEACCENT,"\ufe38":Or.WIDEACCENT}};function jr(t,e){return t.length!==e.length?e.length-t.length:t===e?0:tt.codePointAt(0))}function Hr(t){return String.fromCodePoint(...t)}function Wr(t){return!!t.match(/%\s*$/)}function zr(t){return t.trim().split(/\s+/)}function qr(t){return t.replace(/\\U(?:([0-9A-Fa-f]{4})|\{\s*([0-9A-Fa-f]{1,6})\s*\})|\\./g,(t,e,s)=>"\\\\"===t?"\\":String.fromCodePoint(parseInt(e||s,16)))}function Vr(t){return`&#x${t.codePointAt(0).toString(16).toUpperCase()};`}class Xr extends Tr{constructor(){super(...arguments),this._texClass=null,this.lspace=5/18,this.rspace=5/18}get texClass(){return null===this._texClass?this.getOperatorDef(this.getText())[2]:this._texClass}set texClass(t){this._texClass=t}get kind(){return"mo"}get isEmbellished(){return!0}coreParent(){let t=null,e=this;const s=this.factory.getNodeClass("math");for(;e&&e.isEmbellished&&e.coreMO()===this&&!(e instanceof s);)t=e,e=e.parent;return t||this}coreText(t){if(!t)return"";if(t.isEmbellished)return t.coreMO().getText();for(;((t.isKind("mrow")||t.isKind("TeXAtom")||t.isKind("mstyle")||t.isKind("mphantom"))&&1===t.childNodes.length||t.isKind("munderover"))&&t.childNodes[0];)t=t.childNodes[0];return t.isToken?t.getText():""}hasSpacingAttributes(){return this.attributes.isSet("lspace")||this.attributes.isSet("rspace")}get isAccent(){let t=!1;const e=this.coreParent().parent;if(e){const s=e.isKind("mover")?e.childNodes[e.over].coreMO()?"accent":"":e.isKind("munder")?e.childNodes[e.under].coreMO()?"accentunder":"":e.isKind("munderover")?this===e.childNodes[e.over].coreMO()?"accent":this===e.childNodes[e.under].coreMO()?"accentunder":"":"";if(s){t=void 0!==e.attributes.getExplicit(s)?t:this.attributes.get("accent")}}return t}setTeXclass(t){const{form:e,fence:s}=this.attributes.getList("form","fence");return void 0===this.getProperty("texClass")&&this.hasSpacingAttributes()?null:(s&&this.texClass===gr.REL&&("prefix"===e&&(this.texClass=gr.OPEN),"postfix"===e&&(this.texClass=gr.CLOSE)),this.adjustTeXclass(t))}adjustTeXclass(t){const e=this.texClass;let s=this.prevClass;if(e===gr.NONE)return t;if(t?(!t.getProperty("autoOP")||e!==gr.BIN&&e!==gr.REL||(s=t.texClass=gr.ORD),s=this.prevClass=t.texClass||gr.ORD,this.prevLevel=this.attributes.getInherited("scriptlevel")):s=this.prevClass=gr.NONE,e!==gr.BIN||s!==gr.NONE&&s!==gr.BIN&&s!==gr.OP&&s!==gr.REL&&s!==gr.OPEN&&s!==gr.PUNCT)if(s!==gr.BIN||e!==gr.REL&&e!==gr.CLOSE&&e!==gr.PUNCT){if(e===gr.BIN){let t=null,e=this.parent;for(;e&&e.parent&&e.isEmbellished&&(1===e.childNodes.length||!e.isKind("mrow")&&e.core()===t);)t=e,e=e.parent;t=t||this,e.childNodes[e.childNodes.length-1]===t&&(this.texClass=gr.ORD)}}else t.texClass=this.prevClass=gr.ORD;else this.texClass=gr.ORD;return this}setInheritedAttributes(t={},e=!1,s=0,i=!1){super.setInheritedAttributes(t,e,s,i);const r=this.getText();this.checkOperatorTable(r),this.checkPseudoScripts(r),this.checkPrimes(r),this.checkMathAccent(r)}getOperatorDef(t){const[e,s,i]=this.handleExplicitForm(this.getForms());this.attributes.setInherited("form",e);const r=this.constructor,n=r.OPTABLE,o=n[e][t]||n[s][t]||n[i][t];if(o)return o;this.setProperty("noDictDef",!0);const a=this.attributes.get("movablelimits");if((!!t.match(r.opPattern)||a)&&void 0===this.getProperty("texClass"))return kr(1,2,gr.OP);const l=Pr(t),[c,h]=r.MMLSPACING[l[2]];return kr(c,h,l[2])}checkOperatorTable(t){const e=this.getOperatorDef(t);void 0===this.getProperty("texClass")&&(this.texClass=e[2]);for(const t of Object.keys(e[3]||{}))this.attributes.setInherited(t,e[3][t]);this.lspace=e[0]/18,this.rspace=e[1]/18}getForms(){let t=null,e=this.parent,s=this.Parent;for(;s&&s.isEmbellished;)t=e,e=s.parent,s=s.Parent;if(t=t||this,e&&e.isKind("mrow")&&1!==e.nonSpaceLength()){if(e.firstNonSpace()===t)return["prefix","infix","postfix"];if(e.lastNonSpace()===t)return["postfix","infix","prefix"]}return["infix","prefix","postfix"]}handleExplicitForm(t){if(this.attributes.isSet("form")){const e=this.attributes.get("form");t=[e].concat(t.filter(t=>t!==e))}return t}checkPseudoScripts(t){const e=this.constructor.pseudoScripts;if(!t.match(e))return;const s=this.coreParent().Parent,i=!s||!(s.isKind("msubsup")&&!s.isKind("msub"));this.setProperty("pseudoscript",i),i&&(this.attributes.setInherited("lspace",0),this.attributes.setInherited("rspace",0))}checkPrimes(t){const e=this.constructor.primes;if(!t.match(e))return;const s=this.constructor.remapPrimes,i=Hr(Ur(t).map(t=>s[t]));this.setProperty("primes",i)}checkMathAccent(t){const e=this.Parent;if(void 0!==this.getProperty("mathaccent")||!e||!e.isKind("munderover"))return;const[s,i,r]=e.childNodes;if(s.isEmbellished&&s.coreMO()===this)return;const n=!(!i||!i.isEmbellished||i.coreMO()!==this),o=!(!r||!r.isEmbellished||i.coreMO()!==this);(n||o)&&(this.isMathAccent(t)?this.setProperty("mathaccent",!0):this.isMathAccentWithWidth(t)&&this.setProperty("mathaccent",!1))}isMathAccent(t=this.getText()){const e=this.constructor.mathaccents;return!!t.match(e)}isMathAccentWithWidth(t=this.getText()){const e=this.constructor.mathaccentsWithWidth;return!!t.match(e)}}Xr.defaults=Object.assign(Object.assign({},Tr.defaults),{form:"infix",fence:!1,separator:!1,lspace:"thickmathspace",rspace:"thickmathspace",stretchy:!1,symmetric:!1,maxsize:"infinity",minsize:"0em",largeop:!1,movablelimits:!1,accent:!1,linebreak:"auto",lineleading:"100%",linebreakstyle:"before",indentalign:"auto",indentshift:"0",indenttarget:"",indentalignfirst:"indentalign",indentshiftfirst:"indentshift",indentalignlast:"indentalign",indentshiftlast:"indentshift"}),Xr.MMLSPACING=Br,Xr.OPTABLE=Fr,Xr.pseudoScripts=new RegExp(["^[\"'*`","\xaa","\xb0","\xb2-\xb4","\xb9","\xba","\u2018-\u201f","\u2032-\u2037\u2057","\u2070\u2071","\u2074-\u207f","\u2080-\u208e","]+$"].join("")),Xr.primes=new RegExp(["^[\"'","\u2018-\u201f","]+$"].join("")),Xr.opPattern=/^[a-zA-Z]{2,}$/,Xr.remapPrimes={34:8243,39:8242,8216:8245,8217:8242,8218:8242,8219:8245,8220:8246,8221:8243,8222:8243,8223:8246},Xr.mathaccents=new RegExp(["^[","\xb4\u0301\u02ca","`\u0300\u02cb","\xa8\u0308","~\u0303\u02dc","\xaf\u0304\u02c9","\u02d8\u0306","\u02c7\u030c","^\u0302\u02c6","\u20d0\u20d1","\u20d6\u20d7\u20e1","\u02d9\u0307","\u02da\u030a","\u20db","\u20dc","]$"].join("")),Xr.mathaccentsWithWidth=new RegExp(["^[","\u2190\u2192\u2194","\u23dc\u23dd","\u23de\u23df","]$"].join(""));class Gr extends Tr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"mtext"}get isSpacelike(){return!!this.getText().match(/^\s*$/)&&!this.attributes.hasOneOf(Gr.NONSPACELIKE)}}Gr.NONSPACELIKE=["style","mathbackground","background"],Gr.defaults=Object.assign({},Tr.defaults);class Jr extends Tr{constructor(){super(...arguments),this.texclass=gr.NONE}setTeXclass(t){return t}get kind(){return"mspace"}get arity(){return 0}get isSpacelike(){return!this.attributes.hasExplicit("linebreak")&&this.canBreak}get hasNewline(){const t=this.attributes.get("linebreak");return this.canBreak&&("newline"===t||"indentingnewline"===t)}get canBreak(){return!this.attributes.hasOneOf(Jr.NONSPACELIKE)&&"-"!==String(this.attributes.get("width")).trim().charAt(0)}}Jr.NONSPACELIKE=["height","depth","style","mathbackground","background"],Jr.defaults=Object.assign(Object.assign({},Tr.defaults),{width:"0em",height:"0ex",depth:"0ex",linebreak:"auto",indentshift:"auto",indentalign:"auto",indenttarget:"",indentalignfirst:"indentalign",indentshiftfirst:"indentshift",indentalignlast:"indentalign",indentshiftlast:"indentshift"});class Kr extends Tr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"ms"}}Kr.defaults=Object.assign(Object.assign({},Tr.defaults),{lquote:'"',rquote:'"'});class $r extends vr{constructor(){super(...arguments),this._core=null}get kind(){return"mrow"}get isSpacelike(){for(const t of this.childNodes)if(!t.isSpacelike)return!1;return!0}get isEmbellished(){let t=!1,e=0;for(const s of this.childNodes){if(s)if(s.isEmbellished){if(t)return!1;t=!0,this._core=e}else if(!s.isSpacelike)return!1;e++}return t}core(){return this.isEmbellished&&null!=this._core?this.childNodes[this._core]:this}coreMO(){return this.isEmbellished&&null!=this._core?this.childNodes[this._core].coreMO():this}nonSpaceLength(){let t=0;for(const e of this.childNodes)e&&!e.isSpacelike&&t++;return t}firstNonSpace(){for(const t of this.childNodes)if(t&&!t.isSpacelike)return t;return null}lastNonSpace(){let t=this.childNodes.length;for(;--t>=0;){const e=this.childNodes[t];if(e&&!e.isSpacelike)return e}return null}setTeXclass(t){if(null!=this.getProperty("open")||null!=this.getProperty("close")){this.getPrevClass(t),t=null;for(const e of this.childNodes)t=e.setTeXclass(t);return null==this.texClass&&(this.texClass=gr.INNER),this}for(const e of this.childNodes)t=e.setTeXclass(t);return this.childNodes[0]&&this.updateTeXclass(this.childNodes[0]),t}}$r.defaults=Object.assign({},vr.defaults);class Yr extends $r{get kind(){return"inferredMrow"}get isInferred(){return!0}get notParent(){return!0}toString(){return"["+this.childNodes.join(",")+"]"}}Yr.defaults=$r.defaults;class Qr extends Ar{get kind(){return"mfrac"}get arity(){return 2}get linebreakContainer(){return!0}get linebreakAlign(){return""}setTeXclass(t){this.getPrevClass(t);for(const t of this.childNodes)t.setTeXclass(null);return this}setChildInheritedAttributes(t,e,s,i){(!e||s>0)&&s++;const r=this.attributes.get("numalign"),n=this.attributes.get("denomalign"),o=this.addInheritedAttributes(Object.assign({},t),{numalign:r,indentshift:"0",indentalignfirst:r,indentshiftfirst:"0",indentalignlast:"indentalign",indentshiftlast:"indentshift"}),a=this.addInheritedAttributes(Object.assign({},t),{denalign:n,indentshift:"0",indentalignfirst:n,indentshiftfirst:"0",indentalignlast:"indentalign",indentshiftlast:"indentshift"});this.childNodes[0].setInheritedAttributes(o,!1,s,i),this.childNodes[1].setInheritedAttributes(a,!1,s,!0)}}Qr.defaults=Object.assign(Object.assign({},Ar.defaults),{linethickness:"medium",numalign:"center",denomalign:"center",bevelled:!1});class Zr extends vr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"msqrt"}get arity(){return-1}get linebreakContainer(){return!0}setTeXclass(t){return this.getPrevClass(t),this.childNodes[0].setTeXclass(null),this}setChildInheritedAttributes(t,e,s,i){this.childNodes[0].setInheritedAttributes(t,e,s,!0)}}Zr.defaults=Object.assign(Object.assign({},vr.defaults),{"data-vertical-align":"bottom"});class tn extends vr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"mroot"}get arity(){return 2}get linebreakContainer(){return!0}setTeXclass(t){return this.getPrevClass(t),this.childNodes[0].setTeXclass(null),this.childNodes[1].setTeXclass(null),this}setChildInheritedAttributes(t,e,s,i){this.childNodes[0].setInheritedAttributes(t,e,s,!0),this.childNodes[1].setInheritedAttributes(t,!1,s+2,i)}}tn.defaults=Object.assign(Object.assign({},vr.defaults),{"data-vertical-align":"bottom"});class en extends Cr{get kind(){return"mstyle"}get notParent(){return this.childNodes[0]&&1===this.childNodes[0].childNodes.length}setInheritedAttributes(t={},e=!1,s=0,i=!1){this.attributes.setInherited("displaystyle",e),this.attributes.setInherited("scriptlevel",s),super.setInheritedAttributes(t,e,s,i)}setChildInheritedAttributes(t,e,s,i){let r=this.attributes.getExplicit("scriptlevel");null!=r&&(r=r.toString(),r.match(/^\s*[-+]/)?s+=parseInt(r):s=parseInt(r),i=!1);const n=this.attributes.getExplicit("displaystyle");null!=n&&(e=!0===n,i=!1);const o=this.attributes.getExplicit("data-cramped");null!=o&&(i=o),t=this.addInheritedAttributes(t,this.attributes.getAllAttributes()),this.childNodes[0].setInheritedAttributes(t,e,s,i)}}en.defaults=Object.assign(Object.assign({},Cr.defaults),{scriptlevel:ur,displaystyle:ur,scriptsizemultiplier:1/Math.sqrt(2),scriptminsize:".4em",mathbackground:ur,mathcolor:ur,dir:ur,infixlinebreakstyle:"before"});class sn extends vr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"merror"}get arity(){return-1}get linebreakContainer(){return!0}}sn.defaults=Object.assign({},vr.defaults);class rn extends Cr{get kind(){return"mpadded"}get linebreakContainer(){return!0}setTeXclass(t){return this.getProperty("vbox")?(this.getPrevClass(t),this.texClass=gr.ORD,this.childNodes[0].setTeXclass(null),this):super.setTeXclass(t)}}rn.defaults=Object.assign(Object.assign({},Cr.defaults),{width:"",height:"",depth:"",lspace:0,voffset:0});class nn extends Cr{constructor(){super(...arguments),this.texclass=gr.ORD}get kind(){return"mphantom"}}nn.defaults=Object.assign({},Cr.defaults);class on extends vr{constructor(){super(...arguments),this.texclass=gr.INNER,this.separators=[],this.open=null,this.close=null}get kind(){return"mfenced"}setTeXclass(t){this.getPrevClass(t),this.open&&(t=this.open.setTeXclass(t)),this.childNodes[0]&&(t=this.childNodes[0].setTeXclass(t));for(let e=1,s=this.childNodes.length;ethis.childNodes.length&&(t=1),this.attributes.set("selection",t)}setChildInheritedAttributes(t,e,s,i){var r,n;"tooltip"===this.attributes.get("actiontype").toLowerCase()?(null===(r=this.childNodes[0])||void 0===r||r.setInheritedAttributes(t,e,s,i),null===(n=this.childNodes[1])||void 0===n||n.setInheritedAttributes(t,!1,1,!1)):super.setChildInheritedAttributes(t,e,s,i)}}ln.defaults=Object.assign(Object.assign({},vr.defaults),{actiontype:"toggle",selection:1});class cn extends Ar{get kind(){return"msubsup"}get arity(){return 3}get base(){return 0}get sub(){return 1}get sup(){return 2}setChildInheritedAttributes(t,e,s,i){const r=this.childNodes;r[0].setInheritedAttributes(t,e,s,i),r[1].setInheritedAttributes(t,!1,s+1,i||1===this.sub),r[2]&&r[2].setInheritedAttributes(t,!1,s+1,i||2===this.sub)}}cn.defaults=Object.assign(Object.assign({},Ar.defaults),{subscriptshift:"",superscriptshift:""});class hn extends cn{get kind(){return"msub"}get arity(){return 2}}hn.defaults=Object.assign({},cn.defaults);class dn extends cn{get kind(){return"msup"}get arity(){return 2}get sup(){return 1}get sub(){return 2}}dn.defaults=Object.assign({},cn.defaults);class un extends Ar{get kind(){return"munderover"}get arity(){return 3}get base(){return 0}get under(){return 1}get over(){return 2}get linebreakContainer(){return!0}setChildInheritedAttributes(t,e,s,i){const r=this.childNodes;r[0].setInheritedAttributes(t,e,s,i||!!r[this.over]);const n=!(e||!r[0].coreMO().attributes.get("movablelimits")),o=this.constructor.ACCENTS;r[1].setInheritedAttributes(t,!1,this.getScriptlevel(o[1],n,s),i||1===this.under),this.setInheritedAccent(1,o[1],e,s,i,n),r[2]&&(r[2].setInheritedAttributes(t,!1,this.getScriptlevel(o[2],n,s),i||2===this.under),this.setInheritedAccent(2,o[2],e,s,i,n))}getScriptlevel(t,e,s){return!e&&this.attributes.get(t)||s++,s}setInheritedAccent(t,e,s,i,r,n){const o=this.childNodes[t];if(!this.attributes.hasExplicit(e)&&o.isEmbellished){const t=o.coreMO().attributes.get("accent");this.attributes.setInherited(e,t),t!==this.attributes.getDefault(e)&&o.setInheritedAttributes({},s,this.getScriptlevel(e,n,i),r)}}}un.defaults=Object.assign(Object.assign({},Ar.defaults),{accent:!1,accentunder:!1,align:"center"}),un.ACCENTS=["","accentunder","accent"];class pn extends un{get kind(){return"munder"}get arity(){return 2}}pn.defaults=Object.assign({},un.defaults);class mn extends un{get kind(){return"mover"}get arity(){return 2}get over(){return 1}get under(){return 2}}mn.defaults=Object.assign({},un.defaults),mn.ACCENTS=["","accent","accentunder"];class fn extends cn{get kind(){return"mmultiscripts"}get arity(){return 1}setChildInheritedAttributes(t,e,s,i){this.childNodes[0].setInheritedAttributes(t,e,s,i);let r=!1;for(let e=1,n=0;e...`}verifyTree(t){!this.parent||this.parent.isToken||this.mError("HTML can only be a child of a token element",t,!0)}}const wn={[Mr.prototype.kind]:Mr,[Ir.prototype.kind]:Ir,[wr.prototype.kind]:wr,[Xr.prototype.kind]:Xr,[Gr.prototype.kind]:Gr,[Jr.prototype.kind]:Jr,[Kr.prototype.kind]:Kr,[$r.prototype.kind]:$r,[Yr.prototype.kind]:Yr,[Qr.prototype.kind]:Qr,[Zr.prototype.kind]:Zr,[tn.prototype.kind]:tn,[en.prototype.kind]:en,[sn.prototype.kind]:sn,[rn.prototype.kind]:rn,[nn.prototype.kind]:nn,[on.prototype.kind]:on,[an.prototype.kind]:an,[ln.prototype.kind]:ln,[hn.prototype.kind]:hn,[dn.prototype.kind]:dn,[cn.prototype.kind]:cn,[pn.prototype.kind]:pn,[mn.prototype.kind]:mn,[un.prototype.kind]:un,[fn.prototype.kind]:fn,[gn.prototype.kind]:gn,[bn.prototype.kind]:bn,[En.prototype.kind]:En,[yn.prototype.kind]:yn,[xn.prototype.kind]:xn,[Nn.prototype.kind]:Nn,[vn.prototype.kind]:vn,[Tn.prototype.kind]:Tn,[Cn.prototype.kind]:Cn,[An.prototype.kind]:An,[Sn.prototype.kind]:Sn,[Ln.prototype.kind]:Ln,[Rn.prototype.kind]:Rn,[Mn.prototype.kind]:Mn,[Sr.prototype.kind]:Sr,[Rr.prototype.kind]:Rr,[In.prototype.kind]:In};class kn extends dr{get MML(){return this.node}}kn.defaultNodes=wn;class On{constructor(){this.bits=0}static allocate(...t){for(const e of t){if(this.has(e))throw new Error("Bit already allocated for "+e);if(this.next===On.MAXBIT)throw new Error("Maximum number of bits already allocated");this.names.set(e,this.next),this.next<<=1}}static has(t){return this.names.has(t)}set(t){this.bits|=this.getBit(t)}clear(t){this.bits&=~this.getBit(t)}isSet(t){return!!(this.bits&this.getBit(t))}reset(){this.bits=0}getBit(t){const e=this.constructor.names.get(t);if(!e)throw new Error("Unknown bit-field name: "+t);return e}}function Dn(...t){const e=class extends On{};return e.allocate(...t),e}function Pn(t){return new Promise(function e(s,i){const r=t=>{var r;t.retry instanceof Promise?t.retry.then(()=>e(s,i)).catch(t=>i(t)):(null===(r=t.restart)||void 0===r?void 0:r.isCallback)?MathJax.Callback.After(()=>e(s,i),t.restart):i(t)};try{const e=t();e instanceof Promise?e.then(t=>s(t)).catch(t=>r(t)):s(e)}catch(t){r(t)}})}function Bn(t){const e=new Error("MathJax retry -- an asynchronous action is required; try using one of the promise-based functions and await its resolution.");throw e.retry=t,e}On.MAXBIT=1<<31,On.next=1,On.names=new Map;var Fn=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};class jn extends bi{static create(t){const e=new this;for(const s of Object.keys(t)){const[i,r]=this.action(s,t[s]);r&&e.add(i,r)}return e}static action(t,e){let s,i,r=!0;const n=e[0];if(1===e.length||"boolean"==typeof e[1])2===e.length&&(r=e[1]),[s,i]=this.methodActions(t);else if("string"==typeof e[1])if("string"==typeof e[2]){4===e.length&&(r=e[3]);const[t,n]=e.slice(1);[s,i]=this.methodActions(t,n)}else 3===e.length&&(r=e[2]),[s,i]=this.methodActions(e[1]);else 4===e.length&&(r=e[3]),[s,i]=e.slice(1);return[{id:t,renderDoc:s,renderMath:i,convert:r},n]}static methodActions(t,e=t){return[e=>(t&&e[t](),!1),(t,s)=>(e&&t[e](s),!1)]}renderDoc(t,e=lr.UNPROCESSED){for(const s of this.items)if(s.priority>=e&&s.item.renderDoc(t))return}renderMath(t,e,s=lr.UNPROCESSED){for(const i of this.items)if(i.priority>=s&&i.item.renderMath(t,e))return}renderConvert(t,e,s=lr.LAST){for(const i of this.items){if(i.priority>s)return;if(i.item.convert&&i.item.renderMath(t,e))return}}findID(t){for(const e of this.items)if(e.item.id===t)return e.item;return null}}const _n={all:!1,processed:!1,inputJax:null,outputJax:null},Un={all:!0,processed:!0,inputJax:[],outputJax:[]};class Hn extends tr{compile(t){return null}}class Wn extends er{typeset(t,e=null){return null}escaped(t,e){return null}}class zn extends nr{}class qn{constructor(t,e,s){const i=this.constructor;this.document=t,this.options=ji(Fi({},i.OPTIONS),s),this.math=new(this.options.MathList||zn),this.renderActions=jn.create(this.options.renderActions),this._actionPromises=[],this._readyPromise=Promise.resolve(),this.processed=new qn.ProcessBits,this.outputJax=this.options.OutputJax||new Wn;let r=this.options.InputJax||[new Hn];Array.isArray(r)||(r=[r]),this.inputJax=r,this.adaptor=e,this.outputJax.setAdaptor(e),this.inputJax.map(t=>t.setAdaptor(e)),this.mmlFactory=this.options.MmlFactory||new kn,this.inputJax.map(t=>t.setMmlFactory(this.mmlFactory)),this.outputJax.initialize(),this.inputJax.map(t=>t.initialize())}get kind(){return this.constructor.KIND}addRenderAction(t,...e){const[s,i]=jn.action(t,e);this.renderActions.add(s,i)}removeRenderAction(t){const e=this.renderActions.findID(t);e&&this.renderActions.remove(e)}render(){return this.clearPromises(),this.renderActions.renderDoc(this),this}renderPromise(){return this.whenReady(()=>Pn(()=>Fn(this,void 0,void 0,function*(){return this.render(),yield this.actionPromises(),this.clearPromises(),this})))}rerender(t=lr.RERENDER){return this.state(t-1),this.render(),this}rerenderPromise(t=lr.RERENDER){return this.whenReady(()=>Pn(()=>Fn(this,void 0,void 0,function*(){return this.rerender(t),yield this.actionPromises(),this.clearPromises(),this})))}convert(t,e={}){let{format:s,display:i,end:r,ex:n,em:o,containerWidth:a,scale:l,family:c}=ji({format:this.inputJax[0].name,display:!0,end:lr.LAST,em:16,ex:8,containerWidth:null,scale:1,family:""},e);null===a&&(a=80*n);const h=this.inputJax.reduce((t,e)=>e.name===s?e:t,null),d=new this.options.MathItem(t,h,i);return d.start.node=this.adaptor.body(this.document),d.setMetrics(o,n,a,l),c&&this.outputJax.options.mtextInheritFont&&(d.outputData.mtextFamily=c),c&&this.outputJax.options.merrorInheritFont&&(d.outputData.merrorFamily=c),this.clearPromises(),d.convert(this,r),d.typesetRoot||d.root}convertPromise(t,e={}){return this.whenReady(()=>Pn(()=>Fn(this,void 0,void 0,function*(){const s=this.convert(t,e);return yield this.actionPromises(),this.clearPromises(),s})))}whenReady(t){return this._readyPromise=this._readyPromise.catch(t=>{}).then(()=>{const e=this._readyPromise;this._readyPromise=Promise.resolve();const s=t(),i=this._readyPromise.then(()=>s);return this._readyPromise=e,i})}actionPromises(){return Promise.all(this._actionPromises)}clearPromises(){this._actionPromises=[]}savePromise(t){this._actionPromises.push(t)}findMath(t=null){return this.processed.set("findMath"),this}compile(){if(!this.processed.isSet("compile")){const t=[];for(const e of this.math)this.compileMath(e),void 0!==e.inputData.recompile&&t.push(e);for(const e of t){const t=e.inputData.recompile;e.state(t.state),e.inputData.recompile=t,this.compileMath(e)}this.processed.set("compile")}return this}compileMath(t){try{t.compile(this)}catch(e){if(e.retry||e.restart)throw e;this.options.compileError(this,t,e),t.inputData.error=e}}compileError(t,e){t.root=this.mmlFactory.create("math",null,[this.mmlFactory.create("merror",{"data-mjx-error":e.message,title:e.message},[this.mmlFactory.create("mtext",null,[this.mmlFactory.create("text").setText("Math input error")])])]),t.display&&t.root.attributes.set("display","block"),t.inputData.error=e.message}typeset(){if(!this.processed.isSet("typeset")){for(const t of this.math)try{t.typeset(this)}catch(e){if(e.retry||e.restart)throw e;this.options.typesetError(this,t,e),t.outputData.error=e}this.processed.set("typeset")}return this}typesetError(t,e){t.typesetRoot=this.adaptor.node("mjx-container",{class:"MathJax mjx-output-error",jax:this.outputJax.name},[this.adaptor.node("span",{"data-mjx-error":e.message,title:e.message,style:{color:"red","background-color":"yellow","line-height":"normal"}},[this.adaptor.text("Math output error")])]),t.display&&this.adaptor.setAttributes(t.typesetRoot,{style:{display:"block",margin:"1em 0","text-align":"center"}}),t.outputData.error=e.message}getMetrics(){return this.processed.isSet("getMetrics")||(this.outputJax.getMetrics(this),this.processed.set("getMetrics")),this}updateDocument(){if(!this.processed.isSet("updateDocument")){for(const t of this.math.reversed())t.updateDocument(this);this.processed.set("updateDocument")}return this}removeFromDocument(t=!1){return this}state(t,e=!1){for(const s of this.math)s.state(t,e);return te.reset(...t.inputJax)),t.outputJax&&this.outputJax.reset(...t.outputJax),this}clear(){return this.reset(),this.math.clear(),this}done(){return Promise.resolve()}concat(t){return this.math.merge(t),this}clearMathItemsWithin(t){const e=this.getMathItemsWithin(t);for(const t of e.slice(0).reverse())t.clear();return this.math.remove(...e),e}getMathItemsWithin(t){Array.isArray(t)||(t=[t]);const e=this.adaptor,s=[],i=e.getElements(t,this.document);t:for(const t of this.math)for(const r of i)if(t.start.node&&e.contains(r,t.start.node)){s.push(t);continue t}return s}}qn.KIND="MathDocument",qn.OPTIONS={OutputJax:null,InputJax:null,MmlFactory:null,MathList:zn,MathItem:class extends ar{},compileError:(t,e,s)=>{t.compileError(e,s)},typesetError:(t,e,s)=>{t.typesetError(e,s)},renderActions:ki({find:[lr.FINDMATH,"findMath","",!1],compile:[lr.COMPILED],metrics:[lr.METRICS,"getMetrics","",!1],typeset:[lr.TYPESET],update:[lr.INSERTED,"updateDocument",!1]})},qn.ProcessBits=Dn("findMath","compile","getMetrics","typeset","updateDocument");class Vn extends qn{}class Xn{constructor(t,e=5){this.documentClass=Vn,this.adaptor=t,this.priority=e}get name(){return this.constructor.NAME}handlesDocument(t){return!1}create(t,e){return new this.documentClass(t,this.adaptor,e)}}Xn.NAME="generic";class Gn extends bi{register(t){return this.add(t,t.priority)}unregister(t){this.remove(t)}handlesDocument(t){for(const e of this){const s=e.item;if(s.handlesDocument(t))return s}throw new Error("Can't find handler for document")}document(t,e=null){return this.handlesDocument(t).create(t,e)}}class Jn{static methodName(t){return"visit"+(t.charAt(0).toUpperCase()+t.substring(1)).replace(/[^a-z0-9_]/gi,"_")+"Node"}constructor(t){this.nodeHandlers=new Map;for(const e of t.getKinds()){const t=this[Jn.methodName(e)];t&&this.nodeHandlers.set(e,t)}}visitTree(t,...e){return this.visitNode(t,...e)}visitNode(t,...e){return(this.nodeHandlers.get(t.kind)||this.visitDefault).call(this,t,...e)}visitDefault(t,...e){if("childNodes"in t)for(const s of t.childNodes)this.visitNode(s,...e)}setNodeHandler(t,e){this.nodeHandlers.set(t,e)}removeNodeHandler(t){this.nodeHandlers.delete(t)}}const Kn="data-mjx-";class $n extends Jn{constructor(t=null){t||(t=new kn),super(t)}visitTextNode(t,...e){}visitXMLNode(t,...e){}visitHtmlNode(t,...e){}getKind(t){const e=t.kind;return Wi(e,this.constructor.rename,e)}getAttributeList(t){const e=this.constructor,s=Wi(t.kind,e.defaultAttributes,{}),i=Object.assign({},s,this.getDataAttributes(t),t.attributes.getAllAttributes()),r=e.variants;return Object.hasOwn(i,"mathvariant")&&(Object.hasOwn(r,i.mathvariant)?i.mathvariant=r[i.mathvariant]:t.getProperty("ignore-variant")&&delete i.mathvariant),i}getDataAttributes(t){const e={},s=t.attributes.getExplicit("mathvariant"),i=this.constructor.variants;s&&(t.getProperty("ignore-variant")||Object.hasOwn(i,s))&&this.setDataAttribute(e,"variant",s),t.getProperty("variantForm")&&this.setDataAttribute(e,"alternate","1"),t.getProperty("pseudoscript")&&this.setDataAttribute(e,"pseudoscript","true"),!1===t.getProperty("autoOP")&&this.setDataAttribute(e,"auto-op","false");const r=t.getProperty("vbox");r&&this.setDataAttribute(e,"vbox",r);const n=t.getProperty("scriptalign");n&&this.setDataAttribute(e,"script-align",n);const o=t.getProperty("mathaccent");void 0!==o&&(o&&!t.isMathAccent()||!o&&!t.isMathAccentWithWidth())&&this.setDataAttribute(e,"mathaccent",o.toString());const a=t.getProperty("texClass");if(void 0!==a){let s=!0;if(a===gr.OP&&t.isKind("mi")){const e=t.getText();s=!(e.length>1&&e.match(Ir.operatorName))}s&&this.setDataAttribute(e,"texclass",a<0?"NONE":br[a])}return t.getProperty("smallmatrix")&&this.setDataAttribute(e,"smallmatrix","true"),e}setDataAttribute(t,e,s){t[Kn+e]=s}}$n.rename={TeXAtom:"mrow"},$n.variants={"-tex-calligraphic":"script","-tex-bold-calligraphic":"bold-script","-tex-oldstyle":"normal","-tex-bold-oldstyle":"bold","-tex-mathit":"italic"},$n.defaultAttributes={math:{xmlns:"http://www.w3.org/1998/Math/MathML"}};class Yn extends $n{constructor(){super(...arguments),this.document=null}visitTree(t,e){this.document=e;const s=e.createElement("top");return this.visitNode(t,s),this.document=null,s.firstChild}visitTextNode(t,e){e.appendChild(this.document.createTextNode(t.getText()))}visitXMLNode(t,e){e.appendChild(t.getXML().cloneNode(!0))}visitHtmlNode(t,e){e.appendChild(t.getHTML().cloneNode(!0))}visitInferredMrowNode(t,e){for(const s of t.childNodes)this.visitNode(s,e)}visitDefault(t,e){const s=this.document.createElement(this.getKind(t));this.addAttributes(t,s);for(const e of t.childNodes)this.visitNode(e,s);e.appendChild(s)}addAttributes(t,e){const s=this.getAttributeList(t);for(const t of Object.keys(s))e.setAttribute(t,s[t].toString())}}class Qn extends $n{visitTree(t){return this.visitNode(t,"")}visitTextNode(t,e){return this.quoteHTML(t.getText())}visitXMLNode(t,e){return e+t.getSerializedXML()}visitHtmlNode(t,e){return t.getSerializedHTML()}visitInferredMrowNode(t,e){const s=[];for(const i of t.childNodes)s.push(this.visitNode(i,e));return s.join("\n")}visitAnnotationNode(t,e){const s=this.childNodeMml(t,"","");return`${e}${s}`}visitDefault(t,e){const s=this.getKind(t),[i,r]=t.isToken||0===t.childNodes.length?["",""]:["\n",e],n=this.childNodeMml(t,e+" ",i),o=n.match(/\S/)?i+n+r:"";return`${e}<${s}${this.getAttributes(t)}>${o}`}childNodeMml(t,e,s){let i="";for(const r of t.childNodes)i+=this.visitNode(r,e)+s;return i}getAttributes(t){const e=[],s=this.getAttributeList(t);for(const t of Object.keys(s)){const i=String(s[t]);void 0!==i&&e.push(t+'="'+this.quoteHTML(i)+'"')}return e.length?" "+e.join(" "):""}quoteHTML(t){return t.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/[\uD800-\uDBFF]./g,this.toEntity).replace(/[\u0080-\uD7FF\uE000-\uFFFF]/g,this.toEntity)}toEntity(t){return Vr(t)}}class Zn{get kind(){return this.node.kind}constructor(t,e){this.factory=t,this.node=e}wrap(t){return this.factory.wrap(t)}walkTree(t,e){if(t(this,e),"childNodes"in this)for(const s of this.childNodes)s&&s.walkTree(t,e);return e}}class to extends hr{wrap(t,...e){return this.create(t.kind,t,...e)}}const eo={version:ri,context:mi,handlers:new Gn,document:function(t,e){return eo.handlers.document(t,e)},handleRetriesFor:Pn,retryAfter:Bn,asyncLoad:null,asyncIsSynchronous:!1};class so extends ar{get adaptor(){return this.inputJax.adaptor}constructor(t,e,s=!0,i={node:null,n:0,delim:""},r={node:null,n:0,delim:""}){super(t,e,s,i,r)}updateDocument(t){if(this.state()=lr.TYPESET){const e=this.adaptor,s=this.start.node;let i=e.text("");if(t){const t=this.start.delim+this.math+this.end.delim;if(this.inputJax.processStrings)i=e.text(t);else{const s=e.parse(t,"text/html");i=e.firstChild(e.body(s))}}e.parent(s)&&e.replace(i,s),this.start.node=this.end.node=i,this.start.n=this.end.n=0}}}class io extends nr{}class ro{constructor(t=null){const e=this.constructor;this.options=ji(Fi({},e.OPTIONS),t),this.init(),this.getPatterns()}init(){this.strings=[],this.string="",this.snodes=[],this.nodes=[],this.stack=[]}getPatterns(){const t=Oi(this.options.skipHtmlTags),e=Oi(this.options.ignoreHtmlClass),s=Oi(this.options.processHtmlClass);this.skipHtmlTags=new RegExp("^(?:"+t.join("|")+")$","i"),this.ignoreHtmlClass=new RegExp("(?:^| )(?:"+e.join("|")+")(?: |$)"),this.processHtmlClass=new RegExp("(?:^| )(?:"+s+")(?: |$)")}pushString(){this.string.match(/\S/)&&(this.strings.push(this.string),this.nodes.push(this.snodes)),this.string="",this.snodes=[]}extendString(t,e){this.snodes.push([t,e.length]),this.string+=e}handleText(t,e){return e||this.extendString(t,this.adaptor.value(t)),this.adaptor.next(t)}handleTag(t,e){if(!e){const e=this.options.includeHtmlTags[this.adaptor.kind(t)];e instanceof Function?this.extendString(t,e(t,this.adaptor)):this.extendString(t,e)}return this.adaptor.next(t)}handleContainer(t,e){this.pushString();const s=this.adaptor.getAttribute(t,"class")||"",i=this.adaptor.kind(t)||"",r=this.processHtmlClass.exec(s);let n=t;return!this.adaptor.firstChild(t)||this.adaptor.getAttribute(t,"data-MJX")||!r&&this.skipHtmlTags.exec(i)?n=this.adaptor.next(t):(this.adaptor.next(t)&&this.stack.push([this.adaptor.next(t),e]),n=this.adaptor.firstChild(t),e=(e||this.ignoreHtmlClass.exec(s))&&!r),[n,e]}handleOther(t,e){return this.pushString(),this.adaptor.next(t)}find(t){this.init();const e=this.adaptor.next(t);let s=!1;const i=this.options.includeHtmlTags;for(;t&&t!==e;){const e=this.adaptor.kind(t);"#text"===e?t=this.handleText(t,s):Object.hasOwn(i,e)?t=this.handleTag(t,s):e?[t,s]=this.handleContainer(t,s):t=this.handleOther(t,s),!t&&this.stack.length&&(this.pushString(),[t,s]=this.stack.pop())}this.pushString();const r=[this.strings,this.nodes];return this.init(),r}}ro.OPTIONS={skipHtmlTags:["script","noscript","style","textarea","pre","code","math","select","option","mjx-container"],includeHtmlTags:ki({br:"\n",wbr:"","#comment":""}),ignoreHtmlClass:"mathjax_ignore",processHtmlClass:"mathjax_process"},cr("STYLES",lr.INSERTED+1);class no extends qn{constructor(t,e,s){const[i,r]=Hi(s,ro.OPTIONS);super(t,e,i),this.domStrings=this.options.DomStrings||new ro(r),this.domStrings.adaptor=e,this.styles=[]}findPosition(t,e,s,i){const r=this.adaptor,n=1/(i[t].length||1);let o=t;for(const[a,l]of i[t]){if(e<=l&&"#text"===r.kind(a))return{i:o,node:a,n:Math.max(e,0),delim:s};e-=l,o+=n}return{node:null,n:0,delim:s}}mathItem(t,e,s){const i=t.math,r=this.findPosition(t.n,t.start.n,t.open,s),n=this.findPosition(t.n,t.end.n,t.close,s);return new this.options.MathItem(i,e,t.display,r,n)}findMath(t){if(!this.processed.isSet("findMath")){this.adaptor.document=this.document,t=ji({elements:this.options.elements||[this.adaptor.body(this.document)]},t);const e=this.adaptor.getElements(t.elements,this.document);for(const t of this.inputJax){const s=t.processStrings?this.findMathFromStrings(t,e):this.findMathFromDOM(t,e);this.math.merge(s)}this.processed.set("findMath")}return this}findMathFromStrings(t,e){const s=[],i=[];for(const t of e){const[e,r]=this.domStrings.find(t);s.push(...e),i.push(...r)}const r=new this.options.MathList;for(const e of t.findMath(s))r.push(this.mathItem(e,t,i));return r}findMathFromDOM(t,e){const s=[];for(const i of e)for(const e of t.findMath(i))s.push(new this.options.MathItem(e.math,t,e.display,e.start,e.end));return new this.options.MathList(...s)}updateDocument(){return this.processed.isSet("updateDocument")||(this.addPageElements(),this.addStyleSheet(),super.updateDocument(),this.processed.set("updateDocument")),this}addPageElements(){const t=this.adaptor,e=t.body(this.document),s=this.documentPageElements();if(s){const i=t.firstChild(e);i?t.insert(s,i):t.append(e,s)}}addStyleSheet(){const t=this.documentStyleSheet(),e=this.adaptor;if(t&&!e.parent(t)){const s=e.head(this.document),i=this.findSheet(s,e.getAttribute(t,"id"));i?e.replace(t,i):e.append(s,t)}}findSheet(t,e){if(e)for(const s of this.adaptor.tags(t,"style"))if(this.adaptor.getAttribute(s,"id")===e)return s;return null}removeFromDocument(t=!1){if(this.processed.isSet("updateDocument"))for(const e of this.math)e.state()>=lr.INSERTED&&e.state(lr.TYPESET,t);return this.processed.clear("updateDocument"),this}documentStyleSheet(){return this.outputJax.styleSheet(this)}documentPageElements(){return this.outputJax.pageElements(this)}addStyles(t){this.styles.push(t),"insertStyles"in this.outputJax&&this.outputJax.insertStyles(t)}getStyles(){return this.styles}}no.KIND="HTML",no.OPTIONS=Object.assign(Object.assign({},qn.OPTIONS),{renderActions:ki(Object.assign(Object.assign({},qn.OPTIONS.renderActions),{styles:[lr.STYLES,"","updateStyleSheet",!1]})),MathList:io,MathItem:so,DomStrings:null});class oo extends Xn{constructor(){super(...arguments),this.documentClass=no}handlesDocument(t){const e=this.adaptor;if("string"==typeof t)try{t=e.parse(t,"text/html")}catch(t){}return t instanceof e.window.Document||t instanceof e.window.HTMLElement||t instanceof e.window.DocumentFragment}create(t,e){const s=this.adaptor;if("string"==typeof t)t=s.parse(t,"text/html");else if(t instanceof s.window.HTMLElement||t instanceof s.window.DocumentFragment){const e=t;t=s.parse("","text/html"),s.append(s.body(t),e)}return super.create(t,e)}}function ao(t){const e=new oo(t);return eo.handlers.register(e),e}class lo{get cssText(){return this.getStyleString()}constructor(t=null){this.styles={},this.addStyles(t)}addStyles(t){if(t)for(const e of Object.keys(t))this.styles[e]||(this.styles[e]={}),Object.assign(this.styles[e],t[e])}removeStyles(...t){for(const e of t)delete this.styles[e]}clear(){this.styles={}}getStyleString(){return this.getStyleRules().join("\n\n")}getStyleRules(t=this.styles,e=""){const s=Object.keys(t),i=new Array(s.length);let r=0;for(const n of s){const s=t[n];i[r++]=`${e}${n} {\n${this.getStyleDefString(s,e)}\n${e}}`}return i}getStyleDefString(t,e){const s=Object.keys(t),i=new Array(s.length);let r=0;for(const n of s)i[r++]=t[n]instanceof Object?e+this.getStyleRules({[n]:t[n]},e+" ").join("\n"+e):" "+e+n+": "+t[n]+";";return i.join("\n"+e)}}var co;const ho=!!(null===(co=mi.window)||void 0===co?void 0:co.HTMLDialogElement);class uo{constructor(t){this.minW=200,this.minH=80,this.tx=0,this.ty=0,this.dragging=!1,this.events=[["mousemove",this.MouseMove.bind(this)],["mouseup",this.MouseUp.bind(this)]],this.mode="",this.actions={down:{move:t=>{t.dialog.classList.add("mjx-moving")}},move:{move:(t,e)=>[e.x-t.x,e.y-t.y,0,0],top:(t,e)=>[0,(e.y-t.y)/2,0,t.y-e.y],bottom:(t,e)=>[0,(e.y-t.y)/2,0,e.y-t.y],left:(t,e)=>[(e.x-t.x)/2,0,t.x-e.x,0],right:(t,e)=>[(e.x-t.x)/2,0,e.x-t.x,0],topleft:(t,e)=>[(e.x-t.x)/2,(e.y-t.y)/2,t.x-e.x,t.y-e.y],topright:(t,e)=>[(e.x-t.x)/2,(e.y-t.y)/2,e.x-t.x,t.y-e.y],botleft:(t,e)=>[(e.x-t.x)/2,(e.y-t.y)/2,t.x-e.x,e.y-t.y],botright:(t,e)=>[(e.x-t.x)/2,(e.y-t.y)/2,e.x-t.x,e.y-t.y]},up:{move:t=>{t.dialog.classList.remove("mjx-moving")}},keymove:{left:()=>[-5,0,0,0],right:()=>[5,0,0,0],up:()=>[0,-5,0,0],down:()=>[0,5,0,0]},bigmove:{left:()=>[-20,0,0,0],right:()=>[20,0,0,0],up:()=>[0,-20,0,0],down:()=>[0,20,0,0]},keysize:{left:()=>[-3,0,-6,0],right:()=>[3,0,6,0],up:()=>[0,-3,0,-6],down:()=>[0,3,0,6]},bigsize:{left:()=>[-10,0,-20,0],right:()=>[10,0,20,0],up:()=>[0,-10,0,-20],down:()=>[0,10,0,20]}};const{adaptor:e,node:s=null}=t;this.init(e),this.node=s,this.background=ho?null:e.node("mjx-dialog-background"),this.x=this.y=0,this.dragging=!1,this.action="",this.dialog=this.html(t),this.title=this.dialog.firstChild.firstChild.firstChild,this.content=this.dialog.firstChild.firstChild.nextSibling;const i=this.dialog.lastChild;i.addEventListener("click",this.closeDialog.bind(this)),i.addEventListener("keydown",this.actionKey.bind(this,this.closeDialog.bind(this)));const r=this.dialog.lastChild.previousSibling;r.addEventListener("click",this.helpDialog.bind(this,e)),r.addEventListener("keydown",this.actionKey.bind(this,this.helpDialog.bind(this,e))),this.noDrag=Array.from(this.dialog.querySelectorAll('[data-drag="none"]'))}init(t){const e=this.constructor;if(!t.document.head.querySelector("#"+e.styleId)){const s=t.node("style",{id:e.styleId});s.textContent=new lo(e.styles).cssText,t.document.head.append(s)}}html(t){const{title:e,message:s,adaptor:i,styles:r=null,extraNodes:n=[],className:o=uo.className}=t;if(r){const t=i.node("style");t.textContent=new lo(r).cssText,n.unshift(t)}const a="mjx-dialog-label-"+uo.id++,l=i.node("dialog",{closedby:"any",class:("mjx-dialog "+o).trim()},[i.node("mjx-dialog",{"aria-labeledby":a},[i.node("mjx-title",{},[i.node("h1",{id:a,tabIndex:0})]),i.node("div",{"data-drag":"none",tabIndex:0})]),...n,i.node("mjx-dialog-spacer",{"aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"top","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"bottom","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"left","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"right","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"topleft","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"topright","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"botleft","aria-hidden":!0}),i.node("mjx-dialog-drag",{"data-drag":"botright","aria-hidden":!0}),i.node("mjx-dialog-help",{class:"mjx-dialog-button","data-drag":"none",tabIndex:0,role:"button","aria-label":"Dialog Help"},[i.node("mjx-dialog-icon",{"aria-hidden":!0},[i.text("?")])]),i.node("mjx-dialog-close",{class:"mjx-dialog-button","data-drag":"none",tabIndex:0,role:"button","aria-label":"Close Dialog Box"},[i.node("mjx-dialog-icon",{"aria-hidden":!0},[i.text("\xd7")])])]);return l.firstChild.firstChild.firstChild.innerHTML=e,l.firstChild.childNodes[1].innerHTML=s,l}attach(){ho?(this.dialog.addEventListener("mousedown",this.MouseDown.bind(this)),this.dialog.addEventListener("keydown",this.KeyDown.bind(this),!0),document.body.append(this.dialog),this.dialog.showModal()):(this.background.addEventListener("mousedown",this.MouseDown.bind(this)),this.background.addEventListener("keydown",this.KeyDown.bind(this),!0),this.dialog.setAttribute("tabindex","0"),this.dialog.addEventListener("click",this.stop),this.background.append(this.dialog),document.body.append(this.background)),mi.window.addEventListener("visibilitychange",this.Visibility.bind(this)),this.minW=Math.min(this.minW,this.dialog.clientWidth-8),this.minH=Math.min(this.minH,this.dialog.clientHeight-this.title.offsetHeight-8),this.title.focus()}dragAction(t,e=null){e&&this.stop(e);const s=this.actions[t][this.action],i=s?s(this,e):null;if(!i)return;let[r,n,o,a]=i;if(o){const t=this.w+o;t>=this.minW?(this.x=null==e?void 0:e.x,this.w=t,this.dialog.style.maxWidth=this.dialog.style.width=t+"px"):r=0}if(a){const t=this.h+a;t>=this.minH+this.title.offsetHeight?(this.y=null==e?void 0:e.y,this.h=t,this.dialog.style.maxHeight=this.dialog.style.height=t+"px"):n=0}(r||n)&&(r&&(this.x=null==e?void 0:e.x,this.tx+=r||0),n&&(this.y=null==e?void 0:e.y,this.ty+=n||0),this.dialog.style.transform=`translate(${this.tx}px, ${this.ty}px)`)}MouseDown(t){const e=t.target;if(!(1!==t.buttons||t.shiftKey||t.metaKey||t.altKey||t.ctrlKey))if(this.inDialog(t)){for(const t of this.noDrag)if(e===t||t.contains(e))return;this.action=e.getAttribute("data-drag")||"move",this.startDrag(t),this.dragAction("down",t)}else this.closeDialog(t)}MouseMove(t){1!==t.buttons&&this.endDrag(),this.dragging&&this.dragAction("move",t)}MouseUp(t){this.dragging&&(this.dragAction("up",t),this.endDrag())}Visibility(){mi.document.hidden&&this.closeDialog()}KeyDown(t){const e=this.constructor.keyActions.get(t.key);e&&e(this,t)}escKey(t){this.closeDialog(t)}aKey(t){(t.ctrlKey||t.metaKey)&&(this.selectAll(),this.stop(t))}mKey(t){this.mode="move"===this.mode?"":"move",this.stop(t)}sKey(t){this.mode="size"===this.mode?"":"size",this.stop(t)}arrowKey(t,e){t.ctrlKey||this.dragging||(this.action=e,this.getWH(),t.altKey||"move"===this.mode?(this.dragAction(t.shiftKey?"bigmove":"keymove"),this.stop(t)):(t.metaKey||"size"===this.mode)&&(this.dragAction(t.shiftKey?"bigsize":"keysize"),this.stop(t)),this.action="")}actionKey(t,e){"Enter"!==e.code&&"Space"!==e.code||t(e)}selectAll(){document.getSelection().selectAllChildren(this.content)}copyToClipboard(){this.selectAll();try{document.execCommand("copy")}catch(t){alert(`Can't copy to clipboard: ${t.message}`)}document.getSelection().removeAllRanges()}startDrag(t){this.x=t.x,this.y=t.y,this.getWH(),this.dragging=!0;const e=this.background||this.dialog;for(const[t,s]of this.events)e.addEventListener(t,s)}getWH(){this.w=this.dialog.clientWidth-8,this.h=this.dialog.clientHeight-8}endDrag(){this.action="",this.dragging=!1;const t=this.background||this.dialog;for(const[e,s]of this.events)t.removeEventListener(e,s)}closeDialog(t){var e;ho?(this.dialog.close(),this.dialog.remove()):this.background.remove(),null===(e=this.node)||void 0===e||e.focus(),t&&this.stop(t)}helpDialog(t,e){new uo({title:"MathJax Dialog Help",message:this.constructor.helpMessage,adaptor:t,className:"mjx-dialog-help",styles:{".mjx-dialog-help":{"max-width":"calc(min(50em, 80%))"}}}).attach(),this.stop(e)}inDialog(t){if(!this.dialog.contains(t.target))return!1;const{x:e,y:s}=t,{left:i,right:r,top:n,bottom:o}=this.dialog.getBoundingClientRect();return e>=i&&e<=r&&s>=n&&s<=o}stop(t){t.preventDefault&&t.preventDefault(),t.stopImmediatePropagation?t.stopImmediatePropagation():t.stopPropagation&&t.stopPropagation()}}uo.keyActions=new Map([["Escape",(t,e)=>t.escKey(e)],["a",(t,e)=>t.aKey(e)],["m",(t,e)=>t.mKey(e)],["s",(t,e)=>t.sKey(e)],["ArrowRight",(t,e)=>t.arrowKey(e,"right")],["ArrowLeft",(t,e)=>t.arrowKey(e,"left")],["ArrowUp",(t,e)=>t.arrowKey(e,"up")],["ArrowDown",(t,e)=>t.arrowKey(e,"down")]]),uo.styleId="MJX-DIALOG-styles",uo.className="",uo.id=0,uo.styles={"mjx-dialog-background":{display:"flex","flex-direction":"column","justify-content":"center",position:"fixed",top:0,left:0,right:0,bottom:0,"z-index":1001},".mjx-dialog":{"max-width":"calc(min(60em, 90%))","max-height":"calc(min(50em, 85%))",border:"3px outset","border-radius":"15px",color:"black","background-color":"#DDDDDD","box-shadow":"0px 10px 20px #808080",padding:"4px 4px",cursor:"grab",overflow:"visible",display:"flex","flex-direction":"column","align-items":"center",position:"fixed",top:"-4%"},".mjx-dialog *":{"box-sizing":"content-box"},".mjx-dialog.mjx-moving":{cursor:"grabbing"},'.mjx-dialog > input[type="button"]':{width:"fit-content"},".mjx-dialog > mjx-dialog-spacer":{display:"block",height:".75em","flex-shrink":0},".mjx-dialog::backdrop":{opacity:0,cursor:"default"},"mjx-dialog":{all:"initial",cursor:"inherit",width:"100%",display:"flex","flex-direction":"column","flex-grow":1,"flex-shrink":1,overflow:"hidden"},"mjx-dialog > mjx-title":{display:"block","text-align":"center",margin:".25em 1.75em",overflow:"hidden","white-space":"nowrap","-webkit-user-select":"none","user-select":"none","flex-shrink":0},"mjx-dialog > mjx-title > h1":{"font-size":"125%",margin:0},"mjx-dialog > div":{margin:"0 1em .5em",padding:"8px 18px",overflow:"auto",border:"2px inset black","background-color":"white","text-align":"left",cursor:"default","flex-grow":1,"flex-shrink":1},"mjx-dialog > div > pre":{margin:0},".mjx-dialog-button":{position:"absolute",top:"6px",height:"17px",width:"17px",cursor:"default",display:"block",border:"2px solid #AAA","border-radius":"18px","font-family":'"Courier New", Courier',"text-align":"center",color:"#F0F0F0","-webkit-user-select":"none","user-select":"none"},".mjx-dialog-button:hover":{color:"white !important",border:"2px solid #CCC !important"},".mjx-dialog-button > mjx-dialog-icon":{display:"block","background-color":"#AAA",border:"1.5px solid","border-radius":"18px","line-height":0,padding:"8px 0 6px"},".mjx-dialog-button > mjx-dialog-icon:hover":{"background-color":"#CCC !important"},"mjx-dialog-close":{right:"6px","font-size":"20px;"},"mjx-dialog-help":{left:"6px","font-size":"14px;","font-weight":"bold"},".mjx-dialog-help mjx-dialog-help":{display:"none"},"mjx-dialog kbd":{display:"inline-block",padding:"3px 5px","font-size":"11px","line-height":"10px",color:"#444d56","vertical-align":"middle","background-color":"#fafbfc",border:"solid 1.5px #c6cbd1","border-bottom-color":"#959da5","border-radius":"3px","box-shadow":"inset -.5px -1px 0 #959da5"},'mjx-dialog-drag[data-drag="top"]':{height:"5px",position:"absolute",top:"-3px",left:"10px",right:"10px",cursor:"ns-resize"},'mjx-dialog-drag[data-drag="bottom"]':{height:"5px",position:"absolute",bottom:"-3px",left:"10px",right:"10px",cursor:"ns-resize"},'mjx-dialog-drag[data-drag="left"]':{width:"5px",position:"absolute",left:"-3px",top:"10px",bottom:"10px",cursor:"ew-resize"},'mjx-dialog-drag[data-drag="right"]':{width:"5px",position:"absolute",right:"-3px",top:"10px",bottom:"10px",cursor:"ew-resize"},'mjx-dialog-drag[data-drag="topleft"]':{width:"13px",height:"13px",position:"absolute",left:"-3px",top:"-3px",cursor:"nwse-resize"},'mjx-dialog-drag[data-drag="topright"]':{width:"13px",height:"13px",position:"absolute",right:"-3px",top:"-3px",cursor:"nesw-resize"},'mjx-dialog-drag[data-drag="botleft"]':{width:"13px",height:"13px",position:"absolute",left:"-3px",bottom:"-3px",cursor:"nesw-resize"},'mjx-dialog-drag[data-drag="botright"]':{width:"13px",height:"13px",position:"absolute",right:"-3px",bottom:"-3px",cursor:"nwse-resize"},"@media (prefers-color-scheme: dark)":{".mjx-dialog":{"background-color":"#303030","box-shadow":"0px 10px 20px #000",border:"3px outset #7C7C7C"},"mjx-dialog":{color:"#E0E0E0"},"mjx-dialog > div":{border:"2px inset #7C7C7C","background-color":"#222025"},".mjx-dialog a[href]":{color:"#86A7F5"},".mjx-dialog a[href]:visited":{color:"#DD98E2"},"mjx-dialog kbd":{color:"#F8F8F8","background-color":"#545454",border:"solid 1.5px #7A7C7E","border-bottom-color":"#707070","box-shadow":"inset -.5px -1px 0 #818589"},".mjx-dialog-button":{border:"2px solid #686868",color:"#A4A4A4"},".mjx-dialog-button:hover":{color:"#CBCBCB !important",border:"2px solid #888888 !important"},".mjx-dialog-button > mjx-dialog-icon":{"background-color":"#646464"},".mjx-dialog-button > mjx-dialog-icon:hover":{"background-color":"#888888 !important"}}},uo.helpMessage='\n

The dialog boxes in MathJax are movable and sizeable.

\n\n

For mouse users, dragging any of the edges will enlarge or shrink\n the dialog box by moving that side. Dragging any of the corners\n changes the two sides that meet at that corner. Dragging elsewhere on\n the dialog frame will move the dialog without changing its size.

\n\n

For keyboard users, there are two ways to adjust the position\n and size of the dialog box. The first is to hold the\n Alt or Option key and press any of the arrow\n keys to move the dialog box in the given direction. Hold the\n Win or Command key and press any of the\n arrow keys to enlarge or shrink the dialog box. Left and right\n move the right-hand edge of the dialog, while up and down move the\n bottom edge of the dialog.\n

\n\n

For some users, holding two keys down at once may be difficult,\n so the second way is to press the m to start "move"\n mode, then use the arrow keys to move the dialog box in the given\n direction. Press m again to stop moving the dialog.\n Similarly, press s to start and stop "sizing" mode,\n where the arrows will change the size of the dialog box.

\n\n

Holding a shift key along with the arrow key will\n make larger changes in the size or position, for either method\n described above.

\n\n

Use Tab to move among the text, buttons, and links\n within the dialog. The Enter or Space key\n activates the focused item. The Escape key closes the\n dialog, as does clicking outside the dialog box, or clicking the\n "\xd7" icon in the upper right-hand corner of the dialog.

\n ';class po extends uo{static post(t){const e=new this(t);return e.attach(),e}}function mo(t){return eo.asyncLoad?new Promise((e,s)=>{const i=eo.asyncLoad(t);i instanceof Promise?i.then(t=>e(t)).catch(t=>s(t)):e(i)}):Promise.reject(`Can't load '${t}': No mathjax.asyncLoad method specified`)}const fo=1e6,go={px:1,in:96,cm:96/2.54,mm:96/25.4},bo={em:1,ex:.431,pt:.1,pc:1.2,mu:1/18},Eo={veryverythinmathspace:1/18,verythinmathspace:2/18,thinmathspace:3/18,mediummathspace:4/18,thickmathspace:5/18,verythickmathspace:6/18,veryverythickmathspace:7/18,negativeveryverythinmathspace:-1/18,negativeverythinmathspace:-2/18,negativethinmathspace:-3/18,negativemediummathspace:-4/18,negativethickmathspace:-5/18,negativeverythickmathspace:-6/18,negativeveryverythickmathspace:-7/18,thin:.04,medium:.06,thick:.1,normal:1,big:2,small:1/Math.sqrt(2),infinity:fo};function xo(t,e=0,s=1,i=16){if("string"!=typeof t&&(t=String(t)),""===t||null==t)return e;if(Eo[t])return Eo[t];const r=t.match(/^\s*([-+]?(?:\.\d+|\d+(?:\.\d*)?))?(pt|em|ex|mu|px|pc|in|mm|cm|%)?/);if(!r||""===r[0])return e;const n=parseFloat(r[1]||"1"),o=r[2];return Object.hasOwn(go,o)?n*go[o]/i/s:Object.hasOwn(bo,o)?n*bo[o]:"%"===o?n/100*e:n*e}function yo(t){return(100*t).toFixed(1).replace(/\.?0+$/,"")+"%"}function No(t){return Math.abs(t)<.001?"0":t.toFixed(3).replace(/\.?0+$/,"")+"em"}function vo(t,e=-fo,s=16){return t*=s,e&&tthis.w&&(this.w=r),n>this.h&&(this.h=n),o>this.d&&(this.d=o)}append(t){const e=t.rscale;this.w+=e*(t.w+t.L+t.R),e*t.h>this.h&&(this.h=e*t.h),e*t.d>this.d&&(this.d=e*t.d)}updateFrom(t){this.h=t.h,this.d=t.d,this.w=t.w,t.pwidth&&(this.pwidth=t.pwidth)}copy(){const t=new To;return Object.assign(t,this),t}}To.fullWidth="100%",To.boxSides=[["Top",0,"h"],["Right",1,"w"],["Bottom",2,"d"],["Left",3,"w"]];const Co={loadMissingEntities:!0},Ao={ApplyFunction:"\u2061",Backslash:"\u2216",Because:"\u2235",Breve:"\u02d8",Cap:"\u22d2",CenterDot:"\xb7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",Congruent:"\u2261",ContourIntegral:"\u222e",Coproduct:"\u2210",Cross:"\u2a2f",Cup:"\u22d3",CupCap:"\u224d",Dagger:"\u2021",Del:"\u2207",Delta:"\u0394",Diamond:"\u22c4",DifferentialD:"\u2146",DotEqual:"\u2250",DoubleDot:"\xa8",DoubleRightTee:"\u22a8",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownLeftVector:"\u21bd",DownRightVector:"\u21c1",DownTee:"\u22a4",Downarrow:"\u21d3",Element:"\u2208",EqualTilde:"\u2242",Equilibrium:"\u21cc",Exists:"\u2203",ExponentialE:"\u2147",FilledVerySmallSquare:"\u25aa",ForAll:"\u2200",Gamma:"\u0393",Gg:"\u22d9",GreaterEqual:"\u2265",GreaterEqualLess:"\u22db",GreaterFullEqual:"\u2267",GreaterLess:"\u2277",GreaterSlantEqual:"\u2a7e",GreaterTilde:"\u2273",Hacek:"\u02c7",Hat:"^",HumpDownHump:"\u224e",HumpEqual:"\u224f",Im:"\u2111",ImaginaryI:"\u2148",Integral:"\u222b",Intersection:"\u22c2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Lambda:"\u039b",Larr:"\u219e",LeftAngleBracket:"\u27e8",LeftArrow:"\u2190",LeftArrowRightArrow:"\u21c6",LeftCeiling:"\u2308",LeftDownVector:"\u21c3",LeftFloor:"\u230a",LeftRightArrow:"\u2194",LeftTee:"\u22a3",LeftTriangle:"\u22b2",LeftTriangleEqual:"\u22b4",LeftUpVector:"\u21bf",LeftVector:"\u21bc",Leftarrow:"\u21d0",Leftrightarrow:"\u21d4",LessEqualGreater:"\u22da",LessFullEqual:"\u2266",LessGreater:"\u2276",LessSlantEqual:"\u2a7d",LessTilde:"\u2272",Ll:"\u22d8",Lleftarrow:"\u21da",LongLeftArrow:"\u27f5",LongLeftRightArrow:"\u27f7",LongRightArrow:"\u27f6",Longleftarrow:"\u27f8",Longleftrightarrow:"\u27fa",Longrightarrow:"\u27f9",Lsh:"\u21b0",MinusPlus:"\u2213",NestedGreaterGreater:"\u226b",NestedLessLess:"\u226a",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotExists:"\u2204",NotGreater:"\u226f",NotGreaterEqual:"\u2271",NotLeftTriangle:"\u22ea",NotLeftTriangleEqual:"\u22ec",NotLess:"\u226e",NotLessEqual:"\u2270",NotPrecedes:"\u2280",NotPrecedesSlantEqual:"\u22e0",NotRightTriangle:"\u22eb",NotRightTriangleEqual:"\u22ed",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsSlantEqual:"\u22e1",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotVerticalBar:"\u2224",Omega:"\u03a9",OverBar:"\u203e",OverBrace:"\u23de",PartialD:"\u2202",Phi:"\u03a6",Pi:"\u03a0",PlusMinus:"\xb1",Precedes:"\u227a",PrecedesEqual:"\u2aaf",PrecedesSlantEqual:"\u227c",PrecedesTilde:"\u227e",Product:"\u220f",Proportional:"\u221d",Psi:"\u03a8",Rarr:"\u21a0",Re:"\u211c",ReverseEquilibrium:"\u21cb",RightAngleBracket:"\u27e9",RightArrow:"\u2192",RightArrowLeftArrow:"\u21c4",RightCeiling:"\u2309",RightDownVector:"\u21c2",RightFloor:"\u230b",RightTee:"\u22a2",RightTeeArrow:"\u21a6",RightTriangle:"\u22b3",RightTriangleEqual:"\u22b5",RightUpVector:"\u21be",RightVector:"\u21c0",Rightarrow:"\u21d2",Rrightarrow:"\u21db",Rsh:"\u21b1",Sigma:"\u03a3",SmallCircle:"\u2218",Sqrt:"\u221a",Square:"\u25a1",SquareIntersection:"\u2293",SquareSubset:"\u228f",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Star:"\u22c6",Subset:"\u22d0",SubsetEqual:"\u2286",Succeeds:"\u227b",SucceedsEqual:"\u2ab0",SucceedsSlantEqual:"\u227d",SucceedsTilde:"\u227f",SuchThat:"\u220b",Sum:"\u2211",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22d1",Therefore:"\u2234",Theta:"\u0398",Tilde:"\u223c",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",UnderBar:"_",UnderBrace:"\u23df",Union:"\u22c3",UnionPlus:"\u228e",UpArrow:"\u2191",UpDownArrow:"\u2195",UpTee:"\u22a5",Uparrow:"\u21d1",Updownarrow:"\u21d5",Upsilon:"\u03a5",Vdash:"\u22a9",Vee:"\u22c1",VerticalBar:"\u2223",VerticalTilde:"\u2240",Vvdash:"\u22aa",Wedge:"\u22c0",Xi:"\u039e",amp:"&",acute:"\xb4",aleph:"\u2135",alpha:"\u03b1",amalg:"\u2a3f",and:"\u2227",ang:"\u2220",angmsd:"\u2221",angsph:"\u2222",ape:"\u224a",backprime:"\u2035",backsim:"\u223d",backsimeq:"\u22cd",beta:"\u03b2",beth:"\u2136",between:"\u226c",bigcirc:"\u25ef",bigodot:"\u2a00",bigoplus:"\u2a01",bigotimes:"\u2a02",bigsqcup:"\u2a06",bigstar:"\u2605",bigtriangledown:"\u25bd",bigtriangleup:"\u25b3",biguplus:"\u2a04",blacklozenge:"\u29eb",blacktriangle:"\u25b4",blacktriangledown:"\u25be",blacktriangleleft:"\u25c2",bowtie:"\u22c8",boxdl:"\u2510",boxdr:"\u250c",boxminus:"\u229f",boxplus:"\u229e",boxtimes:"\u22a0",boxul:"\u2518",boxur:"\u2514",bsol:"\\",bull:"\u2022",cap:"\u2229",check:"\u2713",chi:"\u03c7",circ:"\u02c6",circeq:"\u2257",circlearrowleft:"\u21ba",circlearrowright:"\u21bb",circledR:"\xae",circledS:"\u24c8",circledast:"\u229b",circledcirc:"\u229a",circleddash:"\u229d",clubs:"\u2663",colon:":",comp:"\u2201",ctdot:"\u22ef",cuepr:"\u22de",cuesc:"\u22df",cularr:"\u21b6",cup:"\u222a",curarr:"\u21b7",curlyvee:"\u22ce",curlywedge:"\u22cf",dagger:"\u2020",daleth:"\u2138",ddarr:"\u21ca",deg:"\xb0",delta:"\u03b4",digamma:"\u03dd",div:"\xf7",divideontimes:"\u22c7",dot:"\u02d9",doteqdot:"\u2251",dotplus:"\u2214",dotsquare:"\u22a1",dtdot:"\u22f1",ecir:"\u2256",efDot:"\u2252",egs:"\u2a96",ell:"\u2113",els:"\u2a95",empty:"\u2205",epsi:"\u03b5",epsiv:"\u03f5",erDot:"\u2253",eta:"\u03b7",eth:"\xf0",flat:"\u266d",fork:"\u22d4",frown:"\u2322",gEl:"\u2a8c",gamma:"\u03b3",gap:"\u2a86",gimel:"\u2137",gnE:"\u2269",gnap:"\u2a8a",gne:"\u2a88",gnsim:"\u22e7",gt:">",gtdot:"\u22d7",harrw:"\u21ad",hbar:"\u210f",hellip:"\u2026",hookleftarrow:"\u21a9",hookrightarrow:"\u21aa",imath:"\u0131",infin:"\u221e",intcal:"\u22ba",iota:"\u03b9",jmath:"\u0237",kappa:"\u03ba",kappav:"\u03f0",lEg:"\u2a8b",lambda:"\u03bb",lap:"\u2a85",larrlp:"\u21ab",larrtl:"\u21a2",lbrace:"{",lbrack:"[",le:"\u2264",leftleftarrows:"\u21c7",leftthreetimes:"\u22cb",lessdot:"\u22d6",lmoust:"\u23b0",lnE:"\u2268",lnap:"\u2a89",lne:"\u2a87",lnsim:"\u22e6",longmapsto:"\u27fc",looparrowright:"\u21ac",lowast:"\u2217",loz:"\u25ca",lt:"<",ltimes:"\u22c9",ltri:"\u25c3",macr:"\xaf",malt:"\u2720",mho:"\u2127",mu:"\u03bc",multimap:"\u22b8",nLeftarrow:"\u21cd",nLeftrightarrow:"\u21ce",nRightarrow:"\u21cf",nVDash:"\u22af",nVdash:"\u22ae",natur:"\u266e",nearr:"\u2197",nharr:"\u21ae",nlarr:"\u219a",not:"\xac",nrarr:"\u219b",nu:"\u03bd",nvDash:"\u22ad",nvdash:"\u22ac",nwarr:"\u2196",omega:"\u03c9",omicron:"\u03bf",or:"\u2228",osol:"\u2298",period:".",phi:"\u03c6",phiv:"\u03d5",pi:"\u03c0",piv:"\u03d6",prap:"\u2ab7",precnapprox:"\u2ab9",precneqq:"\u2ab5",precnsim:"\u22e8",prime:"\u2032",psi:"\u03c8",quot:'"',rarrtl:"\u21a3",rbrace:"}",rbrack:"]",rho:"\u03c1",rhov:"\u03f1",rightrightarrows:"\u21c9",rightthreetimes:"\u22cc",ring:"\u02da",rmoust:"\u23b1",rtimes:"\u22ca",rtri:"\u25b9",scap:"\u2ab8",scnE:"\u2ab6",scnap:"\u2aba",scnsim:"\u22e9",sdot:"\u22c5",searr:"\u2198",sect:"\xa7",sharp:"\u266f",sigma:"\u03c3",sigmav:"\u03c2",simne:"\u2246",smile:"\u2323",spades:"\u2660",sub:"\u2282",subE:"\u2ac5",subnE:"\u2acb",subne:"\u228a",supE:"\u2ac6",supnE:"\u2acc",supne:"\u228b",swarr:"\u2199",tau:"\u03c4",theta:"\u03b8",thetav:"\u03d1",tilde:"\u02dc",times:"\xd7",triangle:"\u25b5",triangleq:"\u225c",upsi:"\u03c5",upuparrows:"\u21c8",veebar:"\u22bb",vellip:"\u22ee",weierp:"\u2118",xi:"\u03be",yen:"\xa5",zeta:"\u03b6",zigrarr:"\u21dd",nbsp:"\xa0",rsquo:"\u2019",lsquo:"\u2018"},Lo={};function So(t,e){Object.assign(Ao,t),Lo[e]=!0}function Ro(t){delete Ao[t]}function Mo(t){return t.replace(/&([a-z][a-z0-9]*|#(?:[0-9]+|x[0-9a-f]+));/gi,Io)}function Io(t,e){if("#"===e.charAt(0))return wo(e.slice(1));if(Ao[e])return Ao[e];if(Co.loadMissingEntities){const t=e.match(/^[a-zA-Z](fr|scr|opf)$/)?RegExp.$1:e.charAt(0).toLowerCase();Lo[t]||(Lo[t]=!0,Bn(mo("./util/entities/"+t+".js")))}return t}function wo(t){const e="x"===t.charAt(0)?parseInt(t.slice(1),16):parseInt(t);return String.fromCodePoint(e)}const ko=["top","right","bottom","left"],Oo=["width","style","color"];function Do(t){const e=t.split(/((?:'[^'\n]*'|"[^"\n]*"|,[\s\n]|[^\s\n])*)/g),s=[];for(;e.length>1;)e.shift(),s.push(e.shift());return s}function Po(t){const e=Do(this.styles[t]);0===e.length&&e.push(""),1===e.length&&e.push(e[0]),2===e.length&&e.push(e[0]),3===e.length&&e.push(e[1]);for(const s of Vo.connect[t].children)this.setStyle(this.childName(t,s),e.shift())}function Bo(t){const e=Vo.connect[t].children,s=[];for(const i of e){const e=this.styles[this.childName(t,i)];if(!e)return void delete this.styles[t];s.push(e)}s[3]===s[1]&&(s.pop(),s[2]===s[0]&&(s.pop(),s[1]===s[0]&&s.pop())),this.styles[t]=s.join(" ")}function Fo(t){Bo.call(this,t),this.combineChildren(t),jo.call(this,t),this.combineParent(t)}function jo(t){if(!Vo.connect[t])return;const e=[...Vo.connect[t].children],s=this.styles[this.childName(t,e.shift())];for(const i of e)if(this.styles[this.childName(t,i)]!==s)return void delete this.styles[t];s&&(this.styles[t]=s)}const _o=/^(?:[\d.]+(?:[a-z]+)|thin|medium|thick|inherit|initial|unset)$/,Uo=/^(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit|initial|unset)$/;function Ho(t){const e={width:"",style:"",color:""};for(const s of Do(this.styles[t]))s.match(_o)&&""===e.width?e.width=s:s.match(Uo)&&""===e.style?e.style=s:e.color=s;for(const s of Vo.connect[t].children)this.setStyle(this.childName(t,s),e[s])}function Wo(t){const e=[];for(const s of Vo.connect[t].children){const i=this.styles[this.childName(t,s)];i&&e.push(i)}e.length>1?this.styles[t]=e.join(" "):delete this.styles[t]}const zo={style:/^(?:normal|italic|oblique|inherit|initial|unset)$/,variant:new RegExp("^(?:"+["normal|none","inherit|initial|unset","common-ligatures|no-common-ligatures","discretionary-ligatures|no-discretionary-ligatures","historical-ligatures|no-historical-ligatures","contextual|no-contextual","(?:stylistic|character-variant|swash|ornaments|annotation)\\([^)]*\\)","small-caps|all-small-caps|petite-caps|all-petite-caps|unicase|titling-caps","lining-nums|oldstyle-nums|proportional-nums|tabular-nums","diagonal-fractions|stacked-fractions","ordinal|slashed-zero","jis78|jis83|jis90|jis04|simplified|traditional","full-width|proportional-width","ruby"].join("|")+")$"),weight:/^(?:normal|bold|bolder|lighter|[1-9]00|inherit|initial|unset)$/,stretch:new RegExp("^(?:"+["normal","(?:(?:ultra|extra|semi)-)?(?:condensed|expanded)","inherit|initial|unset"].join("|")+")$"),size:new RegExp("^(?:"+["xx-small|x-small|small|medium|large|x-large|xx-large|larger|smaller","[\\d.]+%|[\\d.]+[a-z]+","inherit|initial|unset"].join("|")+")(?:/(?:normal|[\\d.]+(?:%|[a-z]+)?))?$")};function qo(t,e){for(const s of Vo.connect[t].children){const i=this.childName(t,s);if(Array.isArray(e[s])){const t=e[s];t.length&&(this.styles[i]=t.join(" "))}else""!==e[s]&&(this.styles[i]=e[s])}}class Vo{constructor(t=""){this.parse(t)}sanitizeValue(t){const e=this.constructor.pattern;if(!t.match(e.sanitize))return t;const s=(t=t.replace(e.value,"$1")).replace(/\\./g,"").replace(/(['"]).*?\1/g,"").replace(/[^'"]/g,"");return s.length&&(t+=s.charAt(0)),t}get cssText(){var t,e;const s=[];for(const i of Object.keys(this.styles)){const r=this.parentName(i),n=i.replace(/.*-/,""),o=this.childName(this.parentName(r),n);!this.styles[i]||this.styles[o]||this.styles[r]&&(null===(e=null===(t=Vo.connect[r])||void 0===t?void 0:t.children)||void 0===e?void 0:e.includes(n))||s.push(`${i}: ${this.styles[i]};`)}return s.join(" ")}get styleList(){return Object.assign({},this.styles)}set(t,e){t=this.normalizeName(t),this.setStyle(t,String(e));const s=Vo.connect[t];if(null==s?void 0:s.subPart)s.combine.call(this,t);else if(this.combineParent(t),t.match(/-.*-/)){const e=t.replace(/-.*-/,"-");jo.call(this,e)}}combineParent(t){for(var e;t.match(/-/);){const s=t;t=this.parentName(t);const i=Vo.connect[t];if(!Vo.connect[s]&&!(null===(e=null==i?void 0:i.children)||void 0===e?void 0:e.includes(s.substring(t.length+1))))break;i.combine.call(this,t)}if(!this.styles[t])return;const s=Vo.connect[t];for(const e of(null==s?void 0:s.parts)||[])delete this.styles[this.childName(t,e)]}get(t){return t=this.normalizeName(t),Object.hasOwn(this.styles,t)?this.styles[t]:""}setStyle(t,e){var s;this.styles[t]=this.sanitizeValue(e),(null===(s=Vo.connect[t])||void 0===s?void 0:s.children)&&Vo.connect[t].split.call(this,t),""===e&&delete this.styles[t]}combineChildren(t){const e=this.parentName(t);for(const s of Vo.connect[t].children){const t=this.childName(e,s);Vo.connect[t].combine.call(this,t)}}parentName(t){const e=t.replace(/-[^-]*$/,"");return t===e?"":e}childName(t,e){var s;return e.match(/-/)?e:((null===(s=Vo.connect[t])||void 0===s?void 0:s.subPart)&&(e+=t.replace(/.*-/,"-"),t=this.parentName(t)),t+"-"+e)}normalizeName(t){return t.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())}parse(t=""){const e=this.constructor.pattern;this.styles={};const s=t.replace(/\n/g," ").replace(e.comment,"").split(e.style);for(;s.length>1;){const[t,e,i]=s.splice(0,3);if(t.match(/[^\s\n;]/))return;this.set(e,i)}}}function Xo(t){return t.reduce((t,e)=>t+e,0)}function Go(t){return t.reduce((t,e)=>Math.max(t,e),0)}if(Vo.pattern={sanitize:/['";]/,value:/^((:?'(?:\\.|[^'])*(?:'|$)|"(?:\\.|[^"])*(?:"|$)|\n|\\.|[^'";])*?)[\s\n]*(?:;|$).*/,style:/([-a-z]+)[\s\n]*:[\s\n]*((?:'(?:\\.|[^'])*(?:'|$)|"(?:\\.|[^"])*(?:"|$)|\n|\\.|[^'";])*?)[\s\n]*(?:;|$)/g,comment:/\/\*[^]*?\*\//g},Vo.connect={padding:{children:ko,split:Po,combine:Bo},margin:{children:ko,split:Po,combine:Bo},border:{children:ko,parts:Oo,split:function(t){for(const e of Vo.connect[t].children)this.setStyle(this.childName(t,e),this.styles[t])},combine:jo},"border-top":{children:Oo,split:Ho,combine:Wo},"border-right":{children:Oo,split:Ho,combine:Wo},"border-bottom":{children:Oo,split:Ho,combine:Wo},"border-left":{children:Oo,split:Ho,combine:Wo},"border-width":{children:ko,split:Po,combine:Fo,subPart:!0},"border-style":{children:ko,split:Po,combine:Fo,subPart:!0},"border-color":{children:ko,split:Po,combine:Fo,subPart:!0},font:{children:["style","variant","weight","stretch","line-height","size","family"],split:function(t){const e=Do(this.styles[t]),s={style:"",variant:[],weight:"",stretch:"",size:"",family:"","line-height":""};for(const t of e){s.family||(s.family=t);for(const e of Object.keys(zo))if((Array.isArray(s[e])||""===s[e])&&t.match(zo[e]))if(s.family===t&&(s.family=""),"size"===e){const[i,r]=t.split(/\//);s[e]=i,r&&(s["line-height"]=r)}else""===s.size&&(Array.isArray(s[e])?s[e].push(t):""===s[e]&&(s[e]=t))}qo.call(this,t,s),delete this.styles[t]},combine:function(t){}}},MathJax.loader&&MathJax.loader.checkVersion("core",ri,"core"),hi({_:{adaptors:{HTMLAdaptor:h,browserAdaptor:d},components:{global:t},core:{DOMAdaptor:c,FindMath:u,Handler:at,HandlerList:lt,InputJax:p,MathDocument:ot,MathItem:b,MathList:g,MmlTree:{Attributes:y,MML:st,MathMLVisitor:dt,MmlFactory:it,MmlNode:v,MmlNodes:{HtmlNode:et,TeXAtom:Z,maction:W,maligngroup:K,malignmark:$,math:T,mathchoice:tt,menclose:H,merror:F,mfenced:U,mfrac:O,mglyph:Y,mi:C,mmultiscripts:V,mn:A,mo:R,mpadded:j,mphantom:_,mroot:P,mrow:k,ms:w,mspace:I,msqrt:D,mstyle:B,msubsup:z,mtable:X,mtd:J,mtext:M,mtr:G,munderover:q,semantics:Q},MmlVisitor:ht,OperatorDictionary:L,SerializedMmlVisitor:ut},OutputJax:m,Tree:{Factory:E,Node:N,NodeFactory:x,Visitor:ct,Wrapper:pt,WrapperFactory:mt}},handlers:{html_ts:Nt,html:{HTMLDocument:xt,HTMLDomStrings:Et,HTMLHandler:yt,HTMLMathItem:gt,HTMLMathList:bt}},mathjax:ft,ui:{dialog:{DraggableDialog:Tt,InfoDialog:Ct}},util:{AsyncLoad:At,BBox:St,BitField:rt,Entities:Rt,FunctionList:n,LinkedList:f,Options:a,PrioritizedList:i,Retries:nt,StyleJson:vt,Styles:Mt,context:e,lengths:Lt,numeric:It,string:S}}}),MathJax.startup&&(MathJax.startup.registerConstructor("HTMLHandler",oo),MathJax.startup.registerConstructor("browserAdaptor",Qi),MathJax.startup.useHandler("HTMLHandler"),MathJax.startup.useAdaptor("browserAdaptor")),MathJax.loader){const t=MathJax.config.loader;MathJax._.mathjax.mathjax.asyncLoad=e=>"node:"===e.substring(0,5)?t.require(e):MathJax.loader.load(e).then(t=>t[0])}class Jo extends Zi{constructor(t){super(t),this.getPatterns()}getPatterns(){const t=this.options,e=[],s=[],i=[];this.end={},this.env=this.sub=0;let r=1;t.inlineMath.forEach(t=>this.addPattern(e,t,!1)),t.displayMath.forEach(t=>this.addPattern(e,t,!0)),e.length&&s.push(e.sort(jr).join("|")),t.processEnvironments&&(s.push("\\\\begin\\s*\\{([^}]*)\\}"),this.env=r,r++),t.processEscapes&&i.push("\\\\([\\\\$])"),t.processRefs&&i.push("(\\\\(?:eq)?ref\\s*\\{[^}]*\\})"),i.length&&(s.push("("+i.join("|")+")"),this.sub=r),this.start=new RegExp(s.join("|"),"g"),this.hasPatterns=s.length>0}addPattern(t,e,s){const[i,r]=e;t.push(_r(i)),this.end[i]=[r,s,this.endPattern(r)]}endPattern(t,e){return new RegExp((e||_r(t))+"|\\\\(?:[a-zA-Z]|.)|[{}]","g")}findEnd(t,e,s,i){const[r,n,o]=i,a=o.lastIndex=s.index+s[0].length;let l,c=0;for(;l=o.exec(t);){if((l[1]||l[0])===r&&0===c)return or(s[0],t.substring(a,l.index),l[0],e,s.index,l.index+l[0].length,n);"{"===l[0]?c++:"}"===l[0]&&c&&c--}return null}findMathInString(t,e,s){let i,r;for(this.start.lastIndex=0;i=this.start.exec(s);){if(void 0!==i[this.env]&&this.env){const t="\\\\end\\s*(\\{"+_r(i[this.env])+"\\})";r=this.findEnd(s,e,i,["{"+i[this.env]+"}",!0,this.endPattern(null,t)]),r&&(r.math=r.open+r.math+r.close,r.open=r.close="")}else if(void 0!==i[this.sub]&&this.sub){const t=i[this.sub],s=i.index+i[this.sub].length;r=2===t.length?or("\\",t.substring(1),"",e,i.index,s):or("",t,"",e,i.index,s,!1)}else r=this.findEnd(s,e,i,this.end[i[0]]);r&&(t.push(r),this.start.lastIndex=r.end.n)}}findMath(t){const e=[];if(this.hasPatterns)for(let s=0,i=t.length;sString.fromCodePoint(parseInt(t,16)),getChildren:t=>t.childNodes,getText:t=>t.getText(),appendChildren(t,e){for(const s of e)t.appendChild(s)},setAttribute(t,e,s){t.attributes.set(e,s)},setProperty(t,e,s){t.setProperty(e,s)},setProperties(t,e){for(const s of Object.keys(e)){const i=e[s];"texClass"===s?(t.texClass=i,t.setProperty(s,i)):"movablelimits"===s?(t.setProperty("movablelimits",i),(t.isKind("mo")||t.isKind("mstyle"))&&t.attributes.set("movablelimits",i)):"inferred"===s||(Ko.attrs.has(s)?t.setProperty(s,i):t.attributes.set(s,i))}},getProperty:(t,e)=>t.getProperty(e),getAttribute:(t,e)=>t.attributes.get(e),removeAttribute(t,e){t.attributes.unset(e)},removeProperties(t,...e){t.removeProperty(...e)},getChildAt:(t,e)=>t.childNodes[e],setChild(t,e,s){t.childNodes[e]=s,s&&(s.parent=t)},copyChildren(t,e){const s=t.childNodes;for(let t=0;tt.isKind(e),isEmbellished:t=>t.isEmbellished,getTexClass:t=>t.texClass,getCoreMO:t=>t.coreMO(),isNode:t=>t instanceof vr||t instanceof Lr,isInferred:t=>t.isInferred,getForm(t){if(!t.isKind("mo"))return null;const e=t,s=e.getForms();for(const t of s){const s=this.getOp(e,t);if(s)return s}return null},getOp:(t,e="infix")=>Xr.OPTABLE[e][t.getText()]||null,getMoAttribute(t,e){var s,i;if(!t.attributes.isSet(e))for(const r of["infix","postfix","prefix"]){const n=null===(i=null===(s=this.getOp(t,r))||void 0===s?void 0:s[3])||void 0===i?void 0:i[e];if(void 0!==n)return n}return t.attributes.get(e)}},$o=Ko,Yo={Variant:{NORMAL:"normal",BOLD:"bold",ITALIC:"italic",BOLDITALIC:"bold-italic",DOUBLESTRUCK:"double-struck",FRAKTUR:"fraktur",BOLDFRAKTUR:"bold-fraktur",SCRIPT:"script",BOLDSCRIPT:"bold-script",SANSSERIF:"sans-serif",BOLDSANSSERIF:"bold-sans-serif",SANSSERIFITALIC:"sans-serif-italic",SANSSERIFBOLDITALIC:"sans-serif-bold-italic",MONOSPACE:"monospace",INITIAL:"inital",TAILED:"tailed",LOOPED:"looped",STRETCHED:"stretched",CALLIGRAPHIC:"-tex-calligraphic",BOLDCALLIGRAPHIC:"-tex-bold-calligraphic",OLDSTYLE:"-tex-oldstyle",BOLDOLDSTYLE:"-tex-bold-oldstyle",MATHITALIC:"-tex-mathit"},Form:{PREFIX:"prefix",INFIX:"infix",POSTFIX:"postfix"},LineBreak:{AUTO:"auto",NEWLINE:"newline",NOBREAK:"nobreak",GOODBREAK:"goodbreak",BADBREAK:"badbreak"},LineBreakStyle:{BEFORE:"before",AFTER:"after",DUPLICATE:"duplicate",INFIXLINBREAKSTYLE:"infixlinebreakstyle"},IndentAlign:{LEFT:"left",CENTER:"center",RIGHT:"right",AUTO:"auto",ID:"id",INDENTALIGN:"indentalign"},IndentShift:{INDENTSHIFT:"indentshift"},LineThickness:{THIN:"thin",MEDIUM:"medium",THICK:"thick"},Notation:{LONGDIV:"longdiv",ACTUARIAL:"actuarial",PHASORANGLE:"phasorangle",RADICAL:"radical",BOX:"box",ROUNDEDBOX:"roundedbox",CIRCLE:"circle",LEFT:"left",RIGHT:"right",TOP:"top",BOTTOM:"bottom",UPDIAGONALSTRIKE:"updiagonalstrike",DOWNDIAGONALSTRIKE:"downdiagonalstrike",VERTICALSTRIKE:"verticalstrike",HORIZONTALSTRIKE:"horizontalstrike",NORTHEASTARROW:"northeastarrow",MADRUWB:"madruwb",UPDIAGONALARROW:"updiagonalarrow"},Align:{TOP:"top",BOTTOM:"bottom",CENTER:"center",BASELINE:"baseline",AXIS:"axis",LEFT:"left",RIGHT:"right"},Lines:{NONE:"none",SOLID:"solid",DASHED:"dashed"},Side:{LEFT:"left",RIGHT:"right",LEFTOVERLAP:"leftoverlap",RIGHTOVERLAP:"rightoverlap"},Width:{AUTO:"auto",FIT:"fit"},Actiontype:{TOGGLE:"toggle",STATUSLINE:"statusline",TOOLTIP:"tooltip",INPUT:"input"},Overflow:{LINBREAK:"linebreak",SCROLL:"scroll",ELIDE:"elide",TRUNCATE:"truncate",SCALE:"scale"},Unit:{EM:"em",EX:"ex",PX:"px",IN:"in",CM:"cm",MM:"mm",PT:"pt",PC:"pc"},Attr:{LATEX:"data-latex",LATEXITEM:"data-latex-item"}};function Qo(t,e,s){const i=e.attributes,r=s.attributes;t.forEach(t=>{const e=r.getExplicit(t);null!=e&&i.set(t,e)})}function Zo(t,e){const s=(t,e)=>t.getExplicitNames().filter(s=>s!==e&&("stretchy"!==s||t.getExplicit("stretchy"))&&"data-latex"!==s&&"data-latex-item"!==s),i=t.attributes,r=e.attributes,n=s(i,"lspace"),o=s(r,"rspace");if(n.length!==o.length)return!1;for(const t of n)if(i.getExplicit(t)!==r.getExplicit(t))return!1;return!0}function ta(t,e,s){const i=[];for(const r of t.getList("m"+e+s)){const n=r.childNodes;if(n[r[e]]&&n[r[s]])continue;const o=r.parent,a=n[r[e]]?t.nodeFactory.create("node","m"+e,[n[r.base],n[r[e]]]):t.nodeFactory.create("node","m"+s,[n[r.base],n[r[s]]]);$o.copyAttributes(r,a),o.replaceChild(a,r),i.push(r)}t.removeFromList("m"+e+s,i)}function ea(t,e,s){const i=[];for(const r of t.getList(e)){if(r.attributes.get("displaystyle"))continue;const e=r.childNodes[r.base],n=e.coreMO();if(e.getProperty("movablelimits")&&!n.attributes.hasExplicit("movablelimits")){const e=t.nodeFactory.create("node",s,r.childNodes);$o.copyAttributes(r,e),r.parent.replaceChild(e,r),i.push(r)}}t.removeFromList(e,i)}const sa={cleanStretchy(t){var e;const s=t.data;for(const t of s.getList("fixStretchy"))if($o.getProperty(t,"fixStretchy")){const s=$o.getForm(t);(null===(e=null==s?void 0:s[3])||void 0===e?void 0:e.stretchy)&&$o.setAttribute(t,"stretchy",!1),$o.removeProperties(t,"fixStretchy")}},cleanAttributes(t){t.data.root.walkTree(t=>{const e=new Set((t.getProperty("keep-attrs")||"").split(/ /)),s=t.attributes;s.unset(Yo.Attr.LATEXITEM);for(const t of s.getExplicitNames())e.has(t)||s.get(t)!==s.getInherited(t)||s.unset(t)})},combineRelations(t){const e=[];for(const s of t.data.getList("mo")){if(s.getProperty("relationsCombined")||!s.parent||s.parent&&!$o.isType(s.parent,"mrow")||$o.getTexClass(s)!==gr.REL)continue;let t;const i=s.parent.childNodes,r=i.indexOf(s)+1,n=$o.getProperty(s,"variantForm");for(;r"data-latex"!==t.substring(0,10)).length){const r=t.childNodes[0].childNodes[0];i.forEach(t=>r.attributes.set(t,e.get(t))),t.parent.replaceChild(r,t),s.push(t)}}e.removeFromList("mstyle",s)}},ia=sa;var ra,na;!function(t){t.HANDLER="handler",t.FALLBACK="fallback",t.ITEMS="items",t.TAGS="tags",t.OPTIONS="options",t.NODES="nodes",t.PREPROCESSORS="preprocessors",t.POSTPROCESSORS="postprocessors",t.INIT="init",t.CONFIG="config",t.PRIORITY="priority",t.PARSER="parser"}(ra||(ra={})),function(t){t.DELIMITER="delimiter",t.MACRO="macro",t.CHARACTER="character",t.ENVIRONMENT="environment"}(na||(na={}));const oa=7.2;const aa={UNIT_CASES:new class{constructor(t){this.num="([-+]?([.,]\\d+|\\d+([.,]\\d*)?))",this.unit="",this.dimenEnd=/./,this.dimenRest=/./,this.map=new Map(t),this.updateDimen()}updateDimen(){this.unit=`(${Array.from(this.map.keys()).join("|")})`,this.dimenEnd=RegExp("^\\s*"+this.num+"\\s*"+this.unit+"\\s*$"),this.dimenRest=RegExp("^\\s*"+this.num+"\\s*"+this.unit+" ?")}set(t,e){return this.map.set(t,e),this.updateDimen(),this}get(t){return this.map.get(t)||this.map.get("pt")}delete(t){return!!this.map.delete(t)&&(this.updateDimen(),!0)}}([["em",1],["ex",.43],["pt",.1],["pc",1.2],["px",.1],["in",oa],["cm",oa/2.54],["mm",oa/25.4],["mu",1/18]]),matchDimen(t,e=!1){const s=t.match(e?aa.UNIT_CASES.dimenRest:aa.UNIT_CASES.dimenEnd);return s?function([t,e,s]){return"mu"!==e?[t,e,s]:[aa.em(aa.UNIT_CASES.get(e)*parseFloat(t)).slice(0,-2),"em",s]}([s[1].replace(/,/,"."),s[4],s[0].length]):[null,null,0]},dimen2em(t){const[e,s]=aa.matchDimen(t),i=parseFloat(e||"1");return aa.UNIT_CASES.get(s)*i},em:t=>Math.abs(t)<6e-4?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em",trimSpaces(t){if("string"!=typeof t)return t;let e=t.trim();return e.match(/\\$/)&&t.match(/ $/)&&(e+=" "),e}};class la{constructor(t,e,s){this._factory=t,this._env=e,this.global={},this.stack=[],this.global={isInner:s},this.stack=[this._factory.create("start",this.global)],e&&(this.stack[0].env=e),this.env=this.stack[0].env}set env(t){this._env=t}get env(){return this._env}Push(...t){for(const e of t){if(!e)continue;const t=$o.isNode(e)?this._factory.create("mml",e):e;t.global=this.global;const[s,i]=this.stack.length?this.Top().checkItem(t):[null,!0];i&&(s?(this.Pop(),this.Push(...s)):(t.isKind("null")||this.stack.push(t),t.env?(t.copyEnv&&Object.assign(t.env,this.env),this.env=t.env):t.env=this.env))}}Pop(){const t=this.stack.pop();return t.isOpen||delete t.env,this.env=this.stack.length?this.Top().env:{},t}Top(t=1){return this.stack.length="0"&&i<="9")s[t]=e[parseInt(s[t],10)-1],"number"==typeof s[t]&&(s[t]=s[t].toString());else if("{"===i)if(i=s[t].substring(1),i>="0"&&i<="9")s[t]=e[parseInt(s[t].substring(1,s[t].length-1),10)-1],"number"==typeof s[t]&&(s[t]=s[t].toString());else{s[t].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/)&&(s[t]="%"+s[t])}}return s.join("")}constructor(t,e,...s){this.id=t,this.message=ca.processString(e,s)}}ca.pattern=/%(\d+|\{\d+\}|\{[a-z]+:%\d+(?:\|(?:%\{\d+\}|%.|[^}])*)+\}|.)/g;const ha=ca;class da{constructor(t){this._nodes=t,this.startStr="",this.startI=0,this.stopI=0}get nodes(){return this._nodes}Push(...t){this._nodes.push(...t)}Pop(){return this._nodes.pop()}get First(){return this._nodes[this.Size()-1]}set First(t){this._nodes[this.Size()-1]=t}get Last(){return this._nodes[0]}set Last(t){this._nodes[0]=t}Peek(t){return null==t&&(t=1),this._nodes.slice(this.Size()-t)}Size(){return this._nodes.length}Clear(){this._nodes=[]}toMml(t=!0,e){return 1!==this._nodes.length||e?this.create("node",t?"inferredMrow":"mrow",this._nodes,{}):this.First}create(t,...e){return this.factory.configuration.nodeFactory.create(t,...e)}}class ua extends da{constructor(t,...e){super(e),this.factory=t,this.global={},this._properties={},this.isOpen&&(this._env={})}get kind(){return"base"}get env(){return this._env}set env(t){this._env=t}get copyEnv(){return!0}getProperty(t){return this._properties[t]}setProperty(t,e){return this._properties[t]=e,this}get isOpen(){return!1}get isClose(){return!1}get isFinal(){return!1}isKind(t){return t===this.kind}checkItem(t){if(t.isKind("over")&&this.isOpen&&(t.setProperty("num",this.toMml(!1)),this.Clear()),t.isKind("cell")&&this.isOpen){if(t.getProperty("linebreak"))return ua.fail;throw new ha("Misplaced","Misplaced %1",t.getName())}if(t.isClose&&this.getErrors(t.kind)){const[e,s]=this.getErrors(t.kind);throw new ha(e,s,t.getName())}return t.isFinal?(this.Push(t.First),ua.fail):ua.success}clearEnv(){for(const t of Object.keys(this.env))delete this.env[t]}setProperties(t){return Object.assign(this._properties,t),this}getName(){return this.getProperty("name")}toString(){return this.kind+"["+this.nodes.join("; ")+"]"}getErrors(t){return this.constructor.errors[t]||ua.errors[t]}addLatexItem(t,e=""){const s=this.startStr.slice(this.startI,this.stopI);if(s){const i=e?e+s:s;t.attributes.set(Yo.Attr.LATEXITEM,i),"}"!==i&&t.attributes.set(Yo.Attr.LATEX,i)}}}ua.fail=[null,!1],ua.success=[null,!0],ua.errors={end:["MissingBeginExtraEnd","Missing \\begin{%1} or extra \\end{%1}"],close:["ExtraCloseMissingOpen","Extra close brace or missing open brace"],right:["MissingLeftExtraRight","Missing \\left or extra \\right"],middle:["ExtraMiddle","Extra \\middle"]};class pa{constructor(t,e,s){this._string=t,this.configuration=s,this.macroCount=0,this.i=0,this.currentCS="",this.saveI=0;const i=Object.hasOwn(e,"isInner"),r=e.isInner;let n;if(delete e.isInner,e){n={};for(const t of Object.keys(e))n[t]=e[t]}this.configuration.pushParser(this),this.stack=new la(this.itemFactory,n,!i||r),this.Parse(),this.Push(this.itemFactory.create("stop")),this.stack.env=n}get options(){return this.configuration.options}get itemFactory(){return this.configuration.itemFactory}get tags(){return this.configuration.tags}set string(t){this._string=t}get string(){return this._string}parse(t,e){const s=this.saveI;this.saveI=this.i-("character"===t&&"&"!==e[1]?e[1].length:0);const i=this.configuration.handlers.get(t).parse(e);return"macro"!==t&&this.updateResult(e[1],s),this.saveI=s,i}lookup(t,e){return this.configuration.handlers.get(t).lookup(e)}contains(t,e){return this.configuration.handlers.get(t).contains(e)}toString(){let t="";for(const e of Array.from(this.configuration.handlers.keys()))t+=e+": "+this.configuration.handlers.get(e)+"\n";return t}Parse(){let t;for(;this.it.includes(e),t=>t)}constructor(t,e,s){this.name=t,this.verify=e,this.convert=s}}const xa={boolean:new Ea("boolean",t=>"true"===t||"false"===t,t=>"true"===t),number:new Ea("number",t=>!!t.match(/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[-+]?\d+)?$/),t=>parseFloat(t)),integer:new Ea("integer",t=>!!t.match(/^[-+]?\d+$/),t=>parseInt(t)),string:new Ea("string",t=>!0,t=>t),dimen:new Ea("dimen",t=>null!==aa.matchDimen(t)[0],t=>t)};function ya(t,e){if(0===e)return t.replace(/^\s+/,"").replace(/([^\\\s]|^)((?:\\\\)*(?:\\\s)?)?\s+$/,"$1$2");for(;e>0;)t=t.trim().slice(1,-1),e--;return t}function Na(t,e,s=!1,i=!1){const r=t.length;let n=0,o="",a=0,l=0,c=!0;for(;an&&(l=n),c=!1}o+=i}if(n)throw new ha("ExtraOpenMissingClose","Extra open brace or missing close brace");return i&&l?["","",ya(o,1)]:[ya(o,s?Math.min(1,l):l),"",t.slice(a)]}const va={cols:(...t)=>t.map(t=>aa.em(t)).join(" "),fenced(t,e,s,i,r="",n=""){const o=t.nodeFactory,a=o.create("node","mrow",[],{open:e,close:i,texClass:gr.INNER});let l;if(r)l=new pa("\\"+r+"l"+e,t.parser.stack.env,t).mml();else{const t=o.create("text",e);l=o.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:gr.OPEN},t)}if($o.appendChildren(a,[l,s]),r)l=new pa("\\"+r+"r"+i,t.parser.stack.env,t).mml();else{const t=o.create("text",i);l=o.create("node","mo",[],{fence:!0,stretchy:!0,symmetric:!0,texClass:gr.CLOSE},t)}return n&&l.attributes.set("mathcolor",n),$o.appendChildren(a,[l]),a},fixedFence(t,e,s,i){const r=t.nodeFactory.create("node","mrow",[],{open:e,close:i,texClass:gr.ORD});return e&&$o.appendChildren(r,[va.mathPalette(t,e,"l")]),$o.isType(s,"mrow")?$o.appendChildren(r,$o.getChildren(s)):$o.appendChildren(r,[s]),i&&$o.appendChildren(r,[va.mathPalette(t,i,"r")]),r},mathPalette(t,e,s){"{"!==e&&"}"!==e||(e="\\"+e);const i="{\\big"+s+" "+e+"}";return new pa("\\mathchoice"+("{\\bigg"+s+" "+e+"}")+i+i+i,{},t).mml()},fixInitialMO(t,e){for(let s=0,i=e.length;s1&&(l=[t.create("node","mrow",l)]),l},internalText(t,e,s){e=e.replace(/\n+/g," ").replace(/^ +/,Ao.nbsp).replace(/ +$/,Ao.nbsp);const i=t.create("text",e);return t.create("node","mtext",[],s,i)},underOver(t,e,s,i,r){if(va.checkMovableLimits(e),$o.isType(e,"munderover")&&$o.isEmbellished(e)){$o.setProperties($o.getCoreMO(e),{lspace:0,rspace:0});const s=t.create("node","mo",[],{rspace:0});e=t.create("node","mrow",[s,e])}const n=t.create("node","munderover",[e]);$o.setChild(n,"over"===i?n.over:n.under,s);let o=n;return r&&(o=t.create("node","TeXAtom",[t.create("node","mstyle",[n],{displaystyle:!0,scriptlevel:0})],{texClass:gr.OP,movesupsub:!0})),$o.setProperty(o,"subsupOK",!0),o},checkMovableLimits(t){const e=$o.isType(t,"mo")?$o.getForm(t):null;($o.getProperty(t,"movablelimits")||e&&e[3]&&e[3].movablelimits)&&$o.setProperties(t,{movablelimits:!1})},setArrayAlign:(t,e,s)=>(s||(e=aa.trimSpaces(e||"")),"t"===e?t.arraydef.align="baseline 1":"b"===e?t.arraydef.align="baseline -1":"c"===e?t.arraydef.align="axis":e&&(s?(s.string=`[${e}]`+s.string.slice(s.i),s.i=0):t.arraydef.align=e),t),substituteArgs(t,e,s){let i="",r="",n=0;for(;ne.length)throw new ha("IllegalMacroParam","Illegal macro parameter reference");r=va.addArgs(t,va.addArgs(t,r,i),e[parseInt(o,10)-1]),i=""}else i+=o}return va.addArgs(t,r,i)},addArgs(t,e,s){if(s.match(/^[a-z]/i)&&e.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i)&&(e+=" "),e.length+s.length>t.configuration.options.maxBuffer)throw new ha("MaxBufferSize","MathJax internal buffer size exceeded; is there a recursive macro call?");return e+s},checkMaxMacros(t,e=!0){if(!(++t.macroCount<=t.configuration.options.maxMacros))throw e?new ha("MaxMacroSub1","MathJax maximum macro substitution count exceeded; is here a recursive macro call?"):new ha("MaxMacroSub2","MathJax maximum substitution count exceeded; is there a recursive latex environment?")},checkEqnEnv(t,e=!0){const s=t.stack.Top(),i=s.First;if(!(s.getProperty("nestable")&&e&&!i||s.getProperty("nestStart"))&&(!s.isKind("start")||i))throw new ha("ErroneousNestingEq","Erroneous nesting of equation structures")},copyNode(t,e){const s=t.copy(),i=e.configuration;return s.walkTree(t=>{i.addNode(t.kind,t);const e=(t.getProperty("in-lists")||"").split(/,/);for(const s of e)s&&i.addNode(s,t)}),s},mmlFilterAttribute:(t,e,s)=>s,getFontDef(t){const e=t.stack.env.font;return e?{mathvariant:e}:{}},keyvalOptions(t,e=null,s=!1,i=!1){const r=function(t,e=!1){const s={};let i,r,n,o=t,a=!0;for(;o;)[r,i,o]=Na(o,["=",","],e,a),a=!1,"="===i?([n,i,o]=Na(o,[","],e),n="false"===n||"true"===n?JSON.parse(n):n,s[r]=n):r&&(s[r]=!0);return s}(t,i);if(e)for(const t of Object.keys(r))if(Object.hasOwn(e,t)){if(e[t]instanceof Ea){const s=e[t],i=String(r[t]);if(!s.verify(i))throw new ha("InvalidValue","Value for key '%1' is not of the expected type",t);r[t]=s.convert(i)}}else{if(s)throw new ha("InvalidOption","Invalid option: %1",t);delete r[t]}return r},isLatinOrGreekChar:t=>!!t.normalize("NFD").match(/[a-zA-Z\u0370-\u03F0]/)};class Ta{constructor(){this.columnHandler={l:t=>t.calign[t.j++]="left",c:t=>t.calign[t.j++]="center",r:t=>t.calign[t.j++]="right",p:t=>this.getColumn(t,"top"),m:t=>this.getColumn(t,"middle"),b:t=>this.getColumn(t,"bottom"),w:t=>this.getColumn(t,"top",""),W:t=>this.getColumn(t,"top",""),"|":t=>this.addRule(t,"solid"),":":t=>this.addRule(t,"dashed"),">":t=>t.cstart[t.j]=this.getBraces(t)+(t.cstart[t.j]||""),"<":t=>t.cend[t.j-1]=this.getBraces(t)+(t.cend[t.j-1]||""),"@":t=>this.addAt(t,this.getBraces(t)),"!":t=>this.addBang(t,this.getBraces(t)),"*":t=>this.repeat(t),"{":t=>this.brace(t),P:t=>this.macroColumn(t,">{$}p{#1}<{$}",1),M:t=>this.macroColumn(t,">{$}m{#1}<{$}",1),B:t=>this.macroColumn(t,">{$}b{#1}<{$}",1)," ":t=>{},"\n":t=>{}},this.MAXCOLUMNS=1e4}process(t,e,s){const i={parser:t,template:e,i:0,j:0,c:"",cwidth:[],calign:[],cspace:[],clines:[],cstart:s.cstart,cend:s.cend,ralign:s.ralign,cextra:s.cextra};if("{"===e.charAt(0)&&"}"===e.slice(-1)){const t=this.getBraces(i);t.length===e.length-2&&(i.template=t),i.i=0}let r=0;for(;i.ithis.MAXCOLUMNS)throw new ha("MaxColumns","Too many column specifiers (perhaps looping column definitions?)");const t=i.template.codePointAt(i.i),e=i.c=String.fromCodePoint(t);i.i+=e.length,this.processColumn(i,e)}this.setColumnAlign(i,s),this.setColumnWidths(i,s),this.setColumnSpacing(i,s),this.setColumnLines(i,s),this.setPadding(i,s)}processColumn(t,e){if(!Object.hasOwn(this.columnHandler,e))throw new ha("BadPreamToken","Illegal pream-token (%1)",e);this.columnHandler[e](t)}setColumnAlign(t,e){e.arraydef.columnalign=t.calign.join(" ")}setColumnWidths(t,e){if(!t.cwidth.length)return;const s=[...t.cwidth];s.lengtht||"auto").join(" ")}setColumnSpacing(t,e){if(!t.cspace.length)return;const s=[...t.cspace];s.lengtht||"1em").join(" ")}setColumnLines(t,e){if(!t.clines.length)return;const s=[...t.clines];s[0]&&e.frame.push(["left",s[0]]),s.length>t.calign.length?e.frame.push(["right",s.pop()]):s.length1&&(e.arraydef.columnlines=s.slice(1).map(t=>t||"none").join(" "))}setPadding(t,e){if(!t.cextra[0]&&!t.cextra[t.calign.length-1])return;const s=t.calign.length-1,i=t.cspace,r=t.cextra[s]?i[s]:null;e.arraydef["data-array-padding"]=`${i[0]||".5em"} ${r||".5em"}`}getColumn(t,e,s="left"){t.calign[t.j]=s||this.getAlign(t),t.cwidth[t.j]=this.getDimen(t),t.ralign[t.j]=[e,t.cwidth[t.j],t.calign[t.j]],t.j++}getDimen(t){const e=this.getBraces(t);if(!aa.matchDimen(e)[0])throw new ha("MissingColumnDimOrUnits","Missing dimension or its units for %1 column declaration",t.c);return e}getAlign(t){return Wi(this.getBraces(t).toLowerCase(),{l:"left",c:"center",r:"right"},"")}getBraces(t){for(;" "===t.template[t.i];)t.i++;if(t.i>=t.template.length)throw new ha("MissingArgForColumn","Missing argument for %1 column declaration",t.c);if("{"!==t.template[t.i])return t.template[t.i++];const e=++t.i;let s=1;for(;t.i0&&s--;)i.push(this.getBraces(t));t.template=va.substituteArgs(t.parser,i,e)+t.template.slice(t.i),t.i=0}addRule(t,e){t.clines[t.j]&&this.addAt(t,"\\,"),t.clines[t.j]=e,"0"===t.cspace[t.j]&&(t.cstart[t.j]="\\hspace{.5em}")}addAt(t,e){const{cstart:s,cspace:i,j:r}=t;t.cextra[r]=!0,t.calign[r]="center",t.clines[r]&&(".5em"===i[r]?s[r-1]+="\\hspace{.25em}":i[r]||(t.cend[r-1]=(t.cend[r-1]||"")+"\\hspace{.5em}")),s[r]=e,i[r]="0",i[++t.j]="0"}addBang(t,e){const{cstart:s,cspace:i,j:r}=t;t.cextra[r]=!0,t.calign[r]="center",s[r]=("0"===i[r]&&t.clines[r]?"\\hspace{.25em}":"")+e,i[r]||(i[r]=".5em"),i[++t.j]=".5em"}repeat(t){const e=this.getBraces(t),s=this.getBraces(t),i=parseInt(e);if(String(i)!==e)throw new ha("ColArgNotNum","First argument to %1 column specifier must be a number","*");t.template=new Array(i).fill(s).join("")+t.template.substring(t.i),t.i=0}brace(t){t.i--,this.processColumn(t,this.getBraces(t))}}const Ca=Yo.Variant;class Aa{constructor(t,e=[]){this.options={},this.columnParser=new Ta,this.packageData=new Map,this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.handlers=t.handlers,this.nodeFactory=new ba,this.nodeFactory.configuration=this,this.nodeFactory.setCreators(t.nodes),this.itemFactory=new ga(t.items),this.itemFactory.configuration=this,Fi(this.options,...e),Fi(this.options,t.options),this.mathStyle=Aa.getVariant.get(this.options.mathStyle)||Aa.getVariant.get("TeX")}pushParser(t){this.parsers.unshift(t)}popParser(){this.parsers.shift()}get parser(){return this.parsers[0]}clear(){this.parsers=[],this.root=null,this.nodeLists={},this.error=!1,this.tags.resetTag()}addNode(t,e){let s=this.nodeLists[t];if(s||(s=this.nodeLists[t]=[]),s.push(e),e.kind!==t){const s=$o.getProperty(e,"in-lists")||"",i=(s?s.split(/,/):[]).concat(t).join(",");$o.setProperty(e,"in-lists",i)}}getList(t){const e=this.nodeLists[t]||[],s=[];for(const t of e)this.inTree(t)&&s.push(t);return this.nodeLists[t]=s,s}removeFromList(t,e){const s=this.nodeLists[t]||[];for(const t of e){const e=s.indexOf(t);e>=0&&s.splice(e,1)}}inTree(t){for(;t&&t!==this.root;)t=t.parent;return!!t}}Aa.getVariant=new Map([["TeX",(t,e)=>e&&t.match(/^[\u0391-\u03A9\u03F4]/)?Ca.NORMAL:""],["ISO",t=>Ca.ITALIC],["French",t=>t.normalize("NFD").match(/^[a-z]/)?Ca.ITALIC:Ca.NORMAL],["upright",t=>Ca.NORMAL]]);const La=Aa;class Sa{constructor(t="???",e=""){this.tag=t,this.id=e}}class Ra{constructor(t="",e=!1,s=!1,i=null,r="",n="",o=!1,a=""){this.env=t,this.taggable=e,this.defaultTags=s,this.tag=i,this.tagId=r,this.tagFormat=n,this.noTag=o,this.labelId=a}}class Ma{constructor(){this.counter=0,this.allCounter=0,this.configuration=null,this.ids={},this.allIds={},this.labels={},this.allLabels={},this.redo=!1,this.refUpdate=!1,this.currentTag=new Ra,this.history=[],this.stack=[],this.enTag=function(t,e){const s=this.configuration.nodeFactory,i=s.create("node","mtd",[t]),r=s.create("node","mlabeledtr",[e,i]);return s.create("node","mtable",[r],{side:this.configuration.options.tagSide,minlabelspacing:this.configuration.options.tagIndent,displaystyle:!0})}}start(t,e,s){this.currentTag&&this.stack.push(this.currentTag);const i=this.label;this.currentTag=new Ra(t,e,s),this.label=i}get env(){return this.currentTag.env}end(){this.history.push(this.currentTag);const t=this.label;this.currentTag=this.stack.pop(),t&&!this.label&&(this.label=t)}tag(t,e){this.currentTag.tag=t,this.currentTag.tagFormat=e?t:this.formatTag(t),this.currentTag.noTag=!1}notag(){this.tag("",!0),this.currentTag.noTag=!0}get noTag(){return this.currentTag.noTag}set label(t){this.currentTag.labelId=t}get label(){return this.currentTag.labelId}formatUrl(t,e){return e+"#"+encodeURIComponent(t)}formatTag(t){return["(",t,")"]}formatRef(t){return this.formatTag(t)}formatId(t){return"mjx-eqn:"+t.replace(/\s/g,"_")}formatNumber(t){return t.toString()}autoTag(){null==this.currentTag.tag&&(this.counter++,this.tag(this.formatNumber(this.counter),!1))}clearTag(){this.tag(null,!0),this.currentTag.tagId=""}getTag(t=!1){if(t)return this.autoTag(),this.makeTag();const e=this.currentTag;return e.taggable&&!e.noTag&&(e.defaultTags&&this.autoTag(),e.tag)?this.makeTag():null}resetTag(){this.history=[],this.redo=!1,this.refUpdate=!1,this.clearTag()}reset(t=0){this.resetTag(),this.counter=this.allCounter=t,this.allLabels={},this.allIds={},this.label=""}startEquation(t){this.history=[],this.stack=[],this.clearTag(),this.currentTag=new Ra("",void 0,void 0),this.labels={},this.ids={},this.counter=this.allCounter,this.redo=!1;const e=t.inputData.recompile;e&&(this.refUpdate=!0,this.counter=e.counter)}finishEquation(t){this.redo&&(t.inputData.recompile={state:t.state(),counter:this.allCounter}),this.refUpdate||(this.allCounter=this.counter),Object.assign(this.allIds,this.ids),Object.assign(this.allLabels,this.labels)}finalize(t,e){if(!e.display||this.currentTag.env||null==this.currentTag.tag)return t;const s=this.makeTag();return this.enTag(t,s)}makeId(){this.currentTag.tagId=this.formatId(this.configuration.options.useLabelIds&&this.label||this.currentTag.tag)}makeTag(){var t;this.makeId(),this.label&&(this.labels[this.label]=new Sa(this.currentTag.tag,this.currentTag.tagId),this.label="");const e=this.currentTag.tagFormat,s=Array.isArray(e)?e:(null===(t=e.match(/^(\(|\[|\{)(.*)(\}|\]|\))$/))||void 0===t?void 0:t.slice(1))||[e],i=new pa(s.map(t=>t?`\\text{${t}}`:"").join(""),{},this.configuration).mml();return this.configuration.nodeFactory.create("node","mtd",[i],{id:this.currentTag.tagId,rowalign:this.configuration.options.tagAlign})}}class Ia extends Ma{autoTag(){}getTag(){return this.currentTag.tag?super.getTag():null}}class wa extends Ma{finalize(t,e){if(!e.display||this.history.find(function(t){return t.taggable}))return t;const s=this.getTag(!0);return this.enTag(t,s)}}const ka=new Map([["none",Ia],["all",wa]]);let Oa="none";const Da={OPTIONS:{tags:Oa,tagSide:"right",tagIndent:"0.8em",useLabelIds:!0,ignoreDuplicateLabels:!1,tagAlign:"baseline"},add(t,e){ka.set(t,e)},addTags(t){for(const e of Object.keys(t))Da.add(e,t[e])},create(t){const e=ka.get(t)||ka.get(Oa);if(!e)throw Error("Unknown tags class");return new e},setDefault(t){Oa=t},getDefault:()=>Da.create(Oa)};class Pa{constructor(t,e,s){this._token=t,this._char=e,this._attributes=s}get token(){return this._token}get char(){return this._char}get attributes(){return this._attributes}}class Ba{constructor(t,e,s=[]){this._token=t,this._func=e,this._args=s}get token(){return this._token}get func(){return this._func}get args(){return this._args}}function Fa(t){return void 0===t||t}class ja{constructor(t,e){this._name=t,this._parser=e,Ga.register(this)}get name(){return this._name}parserFor(t){return this.contains(t)?this.parser:null}parse([t,e]){const s=this.parserFor(e),i=this.lookup(e);return s&&i?Fa(s(t,i)):null}set parser(t){this._parser=t}get parser(){return this._parser}}class _a extends ja{constructor(t,e,s){super(t,e),this._regExp=s}contains(t){return this._regExp.test(t)}lookup(t){return this.contains(t)?t:null}}class Ua extends ja{constructor(){super(...arguments),this.map=new Map}lookup(t){return this.map.get(t)}contains(t){return this.map.has(t)}add(t,e){this.map.set(t,e)}remove(t){this.map.delete(t)}}class Ha extends Ua{constructor(t,e,s){super(t,e);for(const t of Object.keys(s)){const e=s[t],[i,r]="string"==typeof e?[e,null]:e,n=new Pa(t,i,r);this.add(t,n)}}}class Wa extends Ha{parse([t,e]){return super.parse([t,"\\"+e])}}class za extends Ua{constructor(t,e,s={}){super(t,null);const i=t=>"string"==typeof t?s[t]:t;for(const[t,s]of Object.entries(e)){let e,r;Array.isArray(s)?(e=i(s[0]),r=s.slice(1)):(e=i(s),r=[]);const n=new Ba(t,e,r);this.add(t,n)}}parserFor(t){const e=this.lookup(t);return e?e.func:null}parse([t,e]){const s=this.lookup(e),i=this.parserFor(e);return s&&i?Fa(i(t,s.token,...s.args)):null}}class qa extends za{parse([t,e]){const s=this.lookup(e),i=this.parserFor(e);if(!s||!i)return null;const r=t.currentCS;t.currentCS="\\"+e;const n=i(t,"\\"+s.token,...s.args);return t.currentCS=r,Fa(n)}}class Va extends za{constructor(t,e,s,i={}){super(t,s,i),this.parser=e}parse([t,e]){const s=this.lookup(e),i=this.parserFor(e);return s&&i?Fa(this.parser(t,s.token,i,s.args)):null}}const Xa=new Map,Ga={register(t){Xa.set(t.name,t)},getMap:t=>Xa.get(t)};class Ja{constructor(){this._configuration=new bi,this._fallback=new Ei}add(t,e,s=bi.DEFAULTPRIORITY){for(const e of t.slice().reverse()){const t=Ga.getMap(e);if(!t)return void this.warn(`Configuration '${e}' not found! Omitted.`);this._configuration.add(t,s)}e&&this._fallback.add(e,s)}remove(t,e=null){for(const e of t){const t=this.retrieve(e);t&&this._configuration.remove(t)}e&&this._fallback.remove(e)}parse(t){for(const{item:e}of this._configuration){const s=e.parse(t);if(s===Ja.FALLBACK)break;if(s)return s}const[e,s]=t;Array.from(this._fallback)[0].item(e,s)}lookup(t){const e=this.applicable(t);return e?e.lookup(t):null}contains(t){const e=this.applicable(t);return!(!e||e instanceof Ha&&null===e.lookup(t).char)}toString(){const t=[];for(const{item:e}of this._configuration)t.push(e.name);return t.join(", ")}applicable(t){for(const{item:e}of this._configuration)if(e.contains(t))return e;return null}retrieve(t){for(const{item:e}of this._configuration)if(e.name===t)return e;return null}warn(t){console.log("TexParser Warning: "+t)}}Ja.FALLBACK=Symbol("fallback");class Ka{constructor(){this.map=new Map}add(t,e,s=bi.DEFAULTPRIORITY){for(const i of Object.keys(t)){const r=i;let n=this.get(r);n||(n=new Ja,this.set(r,n)),n.add(t[r],e[r],s)}}remove(t,e){for(const s of Object.keys(t)){const i=this.get(s);i&&i.remove(t[s],e[s])}}set(t,e){this.map.set(t,e)}get(t){return this.map.get(t)}retrieve(t){for(const e of this.map.values()){const s=e.retrieve(t);if(s)return s}return null}keys(){return this.map.keys()}}class $a{static makeProcessor(t,e){return Array.isArray(t)?t:[t,e]}static _create(t,e={}){var s;const i=null!==(s=e.priority)&&void 0!==s?s:bi.DEFAULTPRIORITY,r=e.init?this.makeProcessor(e.init,i):null,n=e.config?this.makeProcessor(e.config,i):null,o=(e.preprocessors||[]).map(t=>this.makeProcessor(t,i)),a=(e.postprocessors||[]).map(t=>this.makeProcessor(t,i)),l=e.parser||"tex";return new $a(t,e[ra.HANDLER]||{},e[ra.FALLBACK]||{},e[ra.ITEMS]||{},e[ra.TAGS]||{},e[ra.OPTIONS]||{},e[ra.NODES]||{},o,a,r,n,i,l)}static create(t,e={}){const s=$a._create(t,e);return Qa.set(t,s),s}static local(t={}){return $a._create("",t)}constructor(t,e={},s={},i={},r={},n={},o={},a=[],l=[],c=null,h=null,d,u){this.name=t,this.handler=e,this.fallback=s,this.items=i,this.tags=r,this.options=n,this.nodes=o,this.preprocessors=a,this.postprocessors=l,this.initMethod=c,this.configMethod=h,this.priority=d,this.parser=u,this.handler=Object.assign({[na.CHARACTER]:[],[na.DELIMITER]:[],[na.MACRO]:[],[na.ENVIRONMENT]:[]},e)}get init(){return this.initMethod?this.initMethod[0]:null}get config(){return this.configMethod?this.configMethod[0]:null}}const Ya=new Map,Qa={set(t,e){Ya.set(t,e)},get:t=>Ya.get(t),keys:()=>Ya.keys()};class Za{constructor(t,e=["tex"]){this.initMethod=new Ei,this.configMethod=new Ei,this.configurations=new bi,this.parsers=[],this.handlers=new Ka,this.items={},this.tags={},this.options={},this.nodes={},this.parsers=e;for(const e of t.slice().reverse())this.addPackage(e);for(const{item:t,priority:e}of this.configurations)this.append(t,e)}init(){this.initMethod.execute(this)}config(t){this.configMethod.execute(this,t);for(const e of this.configurations)this.addFilters(t,e.item)}addPackage(t){const e="string"==typeof t?t:t[0],s=this.getPackage(e);s&&this.configurations.add(s,"string"==typeof t?s.priority:t[1])}add(t,e,s={}){const i=this.getPackage(t);this.append(i),this.configurations.add(i,i.priority),this.init();const r=e.parseOptions;r.nodeFactory.setCreators(i.nodes);for(const t of Object.keys(i.items))r.itemFactory.setNodeClass(t,i.items[t]);Da.addTags(i.tags),Fi(r.options,i.options),ji(r.options,s),this.addFilters(e,i),i.config&&i.config(this,e)}getPackage(t){const e=Qa.get(t);if(e&&!this.parsers.includes(e.parser))throw Error(`Package '${t}' doesn't target the proper parser`);return e||this.warn(`Package '${t}' not found. Omitted.`),e}append(t,e){e=e||t.priority,t.initMethod&&this.initMethod.add(t.initMethod[0],t.initMethod[1]),t.configMethod&&this.configMethod.add(t.configMethod[0],t.configMethod[1]),this.handlers.add(t.handler,t.fallback,e),Object.assign(this.items,t.items),Object.assign(this.tags,t.tags),Fi(this.options,t.options),Object.assign(this.nodes,t.nodes)}addFilters(t,e){for(const[s,i]of e.preprocessors)t.preFilters.add(s,i);for(const[s,i]of e.postprocessors)t.postFilters.add(s,i)}warn(t){console.warn("MathJax Warning: "+t)}}class tl extends ua{constructor(t,e){super(t),this.global=e}get kind(){return"start"}get isOpen(){return!0}checkItem(t){if(t.isKind("stop")){let t=this.toMml();return this.global.isInner||(t=this.factory.configuration.tags.finalize(t,this.env)),[[this.factory.create("mml",t)],!0]}return super.checkItem(t)}}class el extends ua{get kind(){return"stop"}get isClose(){return!0}}class sl extends ua{get kind(){return"open"}get isOpen(){return!0}checkItem(t){if(t.isKind("close")){const e=this.toMml(),s=this.create("node","TeXAtom",[e]);return t.addLatexItem(s),[[this.factory.create("mml",s)],!0]}return super.checkItem(t)}}sl.errors=Object.assign(Object.create(ua.errors),{stop:["ExtraOpenMissingClose","Extra open brace or missing close brace"]});class il extends ua{get kind(){return"close"}get isClose(){return!0}}class rl extends ua{get kind(){return"null"}}class nl extends ua{get kind(){return"prime"}checkItem(t){const[e,s]=this.Peek(2),i=($o.isType(e,"msubsup")||$o.isType(e,"msup"))&&!$o.getChildAt(e,e.sup),r=($o.isType(e,"munderover")||$o.isType(e,"mover"))&&!$o.getChildAt(e,e.over)&&!$o.getProperty(e,"subsupOK");if(!i&&!r){return[[this.create("node",e.getProperty("movesupsub")?"mover":"msup",[e,s]),t],!0]}const n=i?e.sup:e.over;return $o.setChild(e,n,s),[[e,t],!0]}}class ol extends ua{get kind(){return"subsup"}checkItem(t){if(t.isKind("open")||t.isKind("left"))return ua.success;const e=this.First,s=this.getProperty("position");if(t.isKind("mml")){if(this.getProperty("primes"))if(2!==s)$o.setChild(e,2,this.getProperty("primes"));else{$o.setProperty(this.getProperty("primes"),"variantForm",!0);const e=this.create("node","mrow",[this.getProperty("primes"),t.First]);t.First=e}$o.setChild(e,s,t.First),null!=this.getProperty("movesupsub")&&$o.setProperty(e,"movesupsub",this.getProperty("movesupsub"));return[[this.factory.create("mml",e)],!0]}super.checkItem(t);const i=this.getErrors(["","sub","sup"][s]);throw new ha(i[0],i[1],...i.splice(2))}}ol.errors=Object.assign(Object.create(ua.errors),{stop:["MissingScript","Missing superscript or subscript argument"],sup:["MissingOpenForSup","Missing open brace for superscript"],sub:["MissingOpenForSub","Missing open brace for subscript"]});class al extends ua{constructor(t){super(t),this.setProperty("name","\\over")}get kind(){return"over"}get isClose(){return!0}checkItem(t){if(t.isKind("over"))throw new ha("AmbiguousUseOf","Ambiguous use of %1",t.getName());if(t.isClose){let e=this.create("node","mfrac",[this.getProperty("num"),this.toMml(!1)]);return null!=this.getProperty("thickness")&&$o.setAttribute(e,"linethickness",this.getProperty("thickness")),(this.getProperty("ldelim")||this.getProperty("rdelim"))&&($o.setProperty(e,"withDelims",!0),e=va.fixedFence(this.factory.configuration,this.getProperty("ldelim"),e,this.getProperty("rdelim"))),e.attributes.set(Yo.Attr.LATEXITEM,this.getProperty("name")),[[this.factory.create("mml",e),t],!0]}return super.checkItem(t)}toString(){return"over["+this.getProperty("num")+" / "+this.nodes.join("; ")+"]"}}class ll extends ua{constructor(t,e){super(t),this.setProperty("delim",e)}get kind(){return"left"}get isOpen(){return!0}checkItem(t){if(t.isKind("right")){const e=va.fenced(this.factory.configuration,this.getProperty("delim"),this.toMml(),t.getProperty("delim"),"",t.getProperty("color")),s=e.childNodes[0],i=e.childNodes[e.childNodes.length-1],r=this.factory.create("mml",e);return this.addLatexItem(s,"\\left"),t.addLatexItem(i,"\\right"),r.Peek()[0].attributes.set(Yo.Attr.LATEXITEM,"\\left"+t.startStr.slice(this.startI,t.stopI)),[[r],!0]}if(t.isKind("middle")){const e={stretchy:!0,symmetric:!0};t.getProperty("color")&&(e.mathcolor=t.getProperty("color"));const s=this.create("token","mo",e,t.getProperty("delim"));return t.addLatexItem(s,"\\middle"),this.Push(this.create("node","TeXAtom",[],{texClass:gr.CLOSE}),s,this.create("node","TeXAtom",[],{texClass:gr.OPEN})),this.env={},[[this],!0]}return super.checkItem(t)}}ll.errors=Object.assign(Object.create(ua.errors),{stop:["ExtraLeftMissingRight","Extra \\left or missing \\right"]});class cl extends ua{constructor(t,e,s){super(t),this.setProperty("delim",e),s&&this.setProperty("color",s)}get kind(){return"middle"}get isClose(){return!0}}class hl extends ua{constructor(t,e,s){super(t),this.setProperty("delim",e),s&&this.setProperty("color",s)}get kind(){return"right"}get isClose(){return!0}}class dl extends ua{get kind(){return"break"}constructor(t,e,s){super(t),this.setProperty("linebreak",e),this.setProperty("insert",s)}checkItem(t){var e,s;const i=this.getProperty("linebreak");if(t.isKind("mml")){const r=t.First;if(r.isKind("mo")){if("after"!==((null===(s=null===(e=$o.getOp(r))||void 0===e?void 0:e[3])||void 0===s?void 0:s.linebreakstyle)||$o.getAttribute(r,"linebreakstyle")))return $o.setAttribute(r,"linebreak",i),[[t],!0];if(!this.getProperty("insert"))return[[t],!0]}}const r=this.create("token","mspace",{linebreak:i});return[[this.factory.create("mml",r),t],!0]}}class ul extends ua{get kind(){return"begin"}get isOpen(){return!0}checkItem(t){if(t.isKind("end")){if(t.getName()!==this.getName())throw new ha("EnvBadEnd","\\begin{%1} ended with \\end{%2}",this.getName(),t.getName());const e=this.toMml();return t.addLatexItem(e),[[this.factory.create("mml",e)],!0]}if(t.isKind("stop"))throw new ha("EnvMissingEnd","Missing \\end{%1}",this.getName());return super.checkItem(t)}}class pl extends ua{get kind(){return"end"}get isClose(){return!0}}class ml extends ua{get kind(){return"style"}checkItem(t){if(!t.isClose)return super.checkItem(t);const e=this.create("node","mstyle",this.nodes,this.getProperty("styles"));return[[this.factory.create("mml",e),t],!0]}}class fl extends ua{get kind(){return"position"}checkItem(t){if(t.isClose)throw new ha("MissingBoxFor","Missing box for %1",this.getName());if(t.isFinal){let e=t.toMml();switch(this.getProperty("move")){case"vertical":return e=this.create("node","mpadded",[e],{height:this.getProperty("dh"),depth:this.getProperty("dd"),voffset:this.getProperty("dh")}),[[this.factory.create("mml",e)],!0];case"horizontal":return[[this.factory.create("mml",this.getProperty("left")),t,this.factory.create("mml",this.getProperty("right"))],!0]}}return super.checkItem(t)}}class gl extends ua{get kind(){return"cell"}get isClose(){return!0}}class bl extends ua{get isFinal(){return!0}get kind(){return"mml"}}class El extends ua{get kind(){return"fn"}checkItem(t){const e=this.First;if(e){if(t.isOpen)return ua.success;if(!t.isKind("fn")){let s=t.First;if(!t.isKind("mml")||!s)return[[e,t],!0];if($o.isType(s,"mstyle")&&s.childNodes.length&&$o.isType(s.childNodes[0].childNodes[0],"mspace")||$o.isType(s,"mspace"))return[[e,t],!0];$o.isEmbellished(s)&&(s=$o.getCoreMO(s));const i=$o.getForm(s);if(null!=i&&[0,0,1,1,0,1,1,0,0,0][i[2]])return[[e,t],!0]}if(e.isKind("TeXAtom")&&e.isEmpty)return[[e,t],!0];return[[e,this.create("token","mo",{texClass:gr.NONE},Ao.ApplyFunction),t],!0]}return super.checkItem(t)}}class xl extends ua{constructor(){super(...arguments),this.remap=Ga.getMap("not_remap")}get kind(){return"not"}checkItem(t){let e,s,i;if(t.isKind("open")||t.isKind("left"))return ua.success;if(t.isKind("mml")&&($o.isType(t.First,"mo")||$o.isType(t.First,"mi")||$o.isType(t.First,"mtext"))&&(e=t.First,s=$o.getText(e),1===s.length&&!$o.getProperty(e,"movesupsub")&&1===$o.getChildren(e).length))return this.remap.contains(s)?(i=this.create("text",this.remap.lookup(s).char),$o.setChild(e,0,i)):(i=this.create("text","\u0338"),$o.appendChildren(e,[i])),[[t],!0];i=this.create("text","\u29f8");const r=this.create("node","mtext",[],{},i),n=this.create("node","mpadded",[r],{width:0});return e=this.create("node","TeXAtom",[n],{texClass:gr.REL}),[[e,t],!0]}}class yl extends ua{get kind(){return"nonscript"}checkItem(t){if(t.isKind("mml")&&1===t.Size()){let e=t.First;if(e.isKind("mstyle")&&e.notParent&&(e=$o.getChildren($o.getChildren(e)[0])[0]),e.isKind("mspace")){if(e!==t.First){const e=this.create("node","mrow",[t.Pop()]);t.Push(e)}this.factory.configuration.addNode("nonscript",t.First)}}return[[t],!0]}}class Nl extends ua{get kind(){return"dots"}checkItem(t){if(t.isKind("open")||t.isKind("left"))return ua.success;let e=this.getProperty("ldots");const s=t.First;if(t.isKind("mml")&&$o.isEmbellished(s)){const t=$o.getTexClass($o.getCoreMO(s));t!==gr.BIN&&t!==gr.REL||(e=this.getProperty("cdots"))}return[[e,t],!0]}}class vl extends ua{constructor(){super(...arguments),this.table=[],this.row=[],this.frame=[],this.hfill=[],this.arraydef={},this.cstart=[],this.cend=[],this.cextra=[],this.atEnd=!1,this.ralign=[],this.breakAlign={cell:"",row:"",table:""},this.templateSubs=0}get kind(){return"array"}get isOpen(){return!0}get copyEnv(){return!1}checkItem(t){if(t.isClose&&!t.isKind("over")){if(t.getProperty("isEntry"))return this.EndEntry(),this.clearEnv(),this.StartEntry(),ua.fail;if(t.getProperty("isCR"))return this.EndEntry(),this.EndRow(),this.clearEnv(),this.StartEntry(),ua.fail;this.EndTable(),this.clearEnv();const e=this.factory.create("mml",this.createMml());if(this.getProperty("requireClose")){if(t.isKind("close"))return[[e],!0];throw new ha("MissingCloseBrace","Missing close brace")}return[[e,t],!0]}return super.checkItem(t)}createMml(){const t=this.arraydef.scriptlevel;delete this.arraydef.scriptlevel;let e=this.create("node","mtable",this.table,this.arraydef);return t&&e.setProperty("smallmatrix",!0),this.breakAlign.table&&$o.setAttribute(e,"data-break-align",this.breakAlign.table),this.getProperty("arrayPadding")&&($o.setAttribute(e,"data-frame-styles",""),$o.setAttribute(e,"framespacing",this.getProperty("arrayPadding"))),e=this.handleFrame(e),void 0!==t&&(e=this.create("node","mstyle",[e],{scriptlevel:t})),(this.getProperty("open")||this.getProperty("close"))&&(e=va.fenced(this.factory.configuration,this.getProperty("open"),e,this.getProperty("close"))),e}handleFrame(t){if(!this.frame.length)return t;const e=new Map(this.frame),s=this.frame.reduce((t,[,e])=>e===t?e:"",this.frame[0][1]);if(s){if(4===this.frame.length)return $o.setAttribute(t,"frame",s),$o.removeAttribute(t,"data-frame-styles"),t;if("solid"===s)return $o.setAttribute(t,"data-frame-styles",""),t=this.create("node","menclose",[t],{notation:Array.from(e.keys()).join(" "),"data-padding":0})}const i=ko.map(t=>e.get(t)||"none").join(" ");return $o.setAttribute(t,"data-frame-styles",i),t}StartEntry(){const t=this.row.length;let e=this.cstart[t],s=this.cend[t];const i=this.ralign[t],r=this.cextra;if(!(e||s||i||r[t]||r[t+1]))return;let[n,o,a,l]=this.getEntry();if(!r[t]||this.atEnd&&!r[t+1]||(e+="&"),"&"!==a&&(l=!!o.trim()||!!(t||a&&"\\end"!==a.substring(0,4)),r[t+1]&&!r[t]&&(s=(s||"")+"&",this.atEnd=!0)),!l&&!n)return;const c=this.parser;if(l&&(e&&(o=va.addArgs(c,e,o)),s&&(o=va.addArgs(c,o,s)),i&&(o="\\text{"+o.trim()+"}"),(e||s||i)&&++this.templateSubs>c.configuration.options.maxTemplateSubtitutions))throw new ha("MaxTemplateSubs","Maximum template substitutions exceeded; is there an invalid use of \\\\ in the template?");n&&(o=va.addArgs(c,n,o)),c.string=va.addArgs(c,o,c.string),c.i=0}getEntry(){const t=this.parser,e=/^([^]*?)([&{}]|\\\\|\\(?:begin|end)\s*\{array\}|\\cr|\\)/;let s,i=0,r=0,n=t.i;const o=["","","",!1];for(;null!==(s=t.string.slice(n).match(e));)switch(n+=s[0].length,s[2]){case"\\":n++;break;case"{":i++;break;case"}":if(!i)return o;i--;break;case"\\begin{array}":i||r++;break;case"\\end{array}":if(!i&&r){r--;break}default:{if(i||r)continue;n-=s[2].length;let e=t.string.slice(t.i,n).trim();const o=e.match(/^(?:\s*\\(?:h(?:dash)?line|hfil{1,3}|rowcolor\s*\{.*?\}))+/);return o&&(e=e.slice(o[0].length)),t.string=t.string.slice(n),t.i=0,[(null==o?void 0:o[0])||"",e,s[2],!0]}}return o}EndEntry(){const t=this.create("node","mtd",this.nodes);this.hfill.length&&(0===this.hfill[0]&&$o.setAttribute(t,"columnalign","right"),this.hfill[this.hfill.length-1]===this.Size()&&$o.setAttribute(t,"columnalign",$o.getAttribute(t,"columnalign")?"center":"left"));const e=this.ralign[this.row.length];if(e){const[s,i,r]=e,n=this.create("node","mpadded",t.childNodes[0].childNodes,{width:i,"data-overflow":"auto","data-align":r,"data-vertical-align":s});n.setProperty("vbox",s),t.childNodes[0].childNodes=[],t.appendChild(n)}else this.breakAlign.cell&&$o.setAttribute(t,"data-vertical-align",this.breakAlign.cell);this.breakAlign.cell="",this.row.push(t),this.Clear(),this.hfill=[]}EndRow(){let t="mtr";this.getProperty("isNumbered")&&3===this.row.length?(this.row.unshift(this.row.pop()),t="mlabeledtr"):this.getProperty("isLabeled")&&(t="mlabeledtr",this.setProperty("isLabeled",!1));const e=this.create("node",t,this.row);this.breakAlign.row&&($o.setAttribute(e,"data-break-align",this.breakAlign.row),this.breakAlign.row=""),this.addLatexItem(e),this.table.push(e),this.row=[],this.atEnd=!1}EndTable(){(this.Size()||this.row.length)&&(this.EndEntry(),this.EndRow()),this.checkLines()}checkLines(){if(this.arraydef.rowlines){const t=this.arraydef.rowlines.split(/ /);t.length===this.table.length?(this.frame.push(["bottom",t.pop()]),t.length?this.arraydef.rowlines=t.join(" "):delete this.arraydef.rowlines):t.lengththis.maxrow&&(this.maxrow=this.row.length);const t=this.factory.configuration.tags.getTag();t&&(this.row=[t].concat(this.row),this.setProperty("isLabeled",!0)),this.factory.configuration.tags.clearTag(),super.EndRow()}EndTable(){super.EndTable(),this.factory.configuration.tags.end(),this.extendArray("columnalign",this.maxrow),this.extendArray("columnwidth",this.maxrow),this.extendArray("columnspacing",this.maxrow-1),this.extendArray("data-break-align",this.maxrow),this.addIndentshift()}extendArray(t,e){if(!this.arraydef[t])return;const s=this.arraydef[t].split(/ /),i=[...s];if(i.length>1){for(;i.length0){const t="center"===e?".7em":"2em";for(const e of this.table){const i=e.childNodes[e.isKind("mlabeledtr")?s+1:s];if(i){const e=this.create("node","mstyle",i.childNodes[0].childNodes,{indentshift:t});i.childNodes[0].childNodes=[],i.appendChild(e)}}}e=t[s]}}}class Cl extends ul{get kind(){return"mstyle"}constructor(t,e,s){super(t),this.attrList=e,this.setProperty("name",s)}checkItem(t){if(t.isKind("end")&&t.getName()===this.getName()){return[[this.create("node","mstyle",[this.toMml()],this.attrList)],!0]}return super.checkItem(t)}}class Al extends ua{constructor(t,...e){super(t),this.factory.configuration.tags.start("equation",!0,e[0])}get kind(){return"equation"}get isOpen(){return!0}checkItem(t){if(t.isKind("end")){const e=this.toMml(),s=this.factory.configuration.tags.getTag();return this.factory.configuration.tags.end(),[[s?this.factory.configuration.tags.enTag(e,s):e,t],!0]}if(t.isKind("stop"))throw new ha("EnvMissingEnd","Missing \\end{%1}",this.getName());return super.checkItem(t)}}const Ll=1.2/.85,Sl={fontfamily:1,fontsize:1,fontweight:1,fontstyle:1,color:1,background:1,id:1,class:1,href:1,style:1};function Rl(t,e=1/0){const s=t.replace(/\s+/g,"").split("").map(t=>{const e={t:"top",b:"bottom",m:"middle",c:"center"}[t];if(!e)throw new ha("BadBreakAlign","Invalid alignment character: %1",t);return e});if(s.length>e)throw new ha("TooManyAligns","Too many alignment characters: %1",t);return 1===e?s[0]:s.join(" ")}function Ml(t,e){const s=t.stack.env,i=s.inRoot;s.inRoot=!0;const r=new pa(e,s,t.configuration);let n=r.mml();const o=r.stack.global;if(o.leftRoot||o.upRoot){const e={};o.leftRoot&&(e.width=o.leftRoot),o.upRoot&&(e.voffset=o.upRoot,e.height=o.upRoot),n=t.create("node","mpadded",[n],e)}return s.inRoot=i,n}const Il={Open(t,e){t.Push(t.itemFactory.create("open"))},Close(t,e){t.Push(t.itemFactory.create("close"))},Bar(t,e){const s=t.create("token","mo",{stretchy:!1,texClass:gr.ORD},e);s.setProperty("keep-attrs","stretchy"),t.Push(s)},Tilde(t,e){t.Push(t.create("token","mtext",{},Ao.nbsp))},Space(t,e){},Superscript(t,e){let s,i;t.GetNext().match(/\d/)&&(t.string=t.string.substring(0,t.i+1)+" "+t.string.substring(t.i+1));const r=t.stack.Top();r.isKind("prime")?([i,s]=r.Peek(2),t.stack.Pop()):(i=t.stack.Prev(),i||(i=t.create("token","mi",{},"")));const n=$o.getProperty(i,"movesupsub");let o=$o.isType(i,"msubsup")?i.sup:i.over;if($o.isType(i,"msubsup")&&!$o.isType(i,"msup")&&$o.getChildAt(i,i.sup)||$o.isType(i,"munderover")&&!$o.isType(i,"mover")&&$o.getChildAt(i,i.over)&&!$o.getProperty(i,"subsupOK"))throw new ha("DoubleExponent","Double exponent: use braces to clarify");$o.isType(i,"msubsup")&&!$o.isType(i,"msup")||(n?((!$o.isType(i,"munderover")||$o.isType(i,"mover")||$o.getChildAt(i,i.over))&&(i=t.create("node","munderover",[i],{movesupsub:!0})),o=i.over):(i=t.create("node","msubsup",[i]),o=i.sup)),t.Push(t.itemFactory.create("subsup",i).setProperties({position:o,primes:s,movesupsub:n}))},Subscript(t,e){let s,i;t.GetNext().match(/\d/)&&(t.string=t.string.substring(0,t.i+1)+" "+t.string.substring(t.i+1));const r=t.stack.Top();r.isKind("prime")?([i,s]=r.Peek(2),t.stack.Pop()):(i=t.stack.Prev(),i||(i=t.create("token","mi",{},"")));const n=$o.getProperty(i,"movesupsub");let o=$o.isType(i,"msubsup")?i.sub:i.under;if($o.isType(i,"msubsup")&&!$o.isType(i,"msup")&&$o.getChildAt(i,i.sub)||$o.isType(i,"munderover")&&!$o.isType(i,"mover")&&$o.getChildAt(i,i.under)&&!$o.getProperty(i,"subsupOK"))throw new ha("DoubleSubscripts","Double subscripts: use braces to clarify");$o.isType(i,"msubsup")&&!$o.isType(i,"msup")||(n?((!$o.isType(i,"munderover")||$o.isType(i,"mover")||$o.getChildAt(i,i.under))&&(i=t.create("node","munderover",[i],{movesupsub:!0})),o=i.under):(i=t.create("node","msubsup",[i]),o=i.sub)),t.Push(t.itemFactory.create("subsup",i).setProperties({position:o,primes:s,movesupsub:n}))},Prime(t,e){let s=t.stack.Prev();if(s||(s=t.create("token","mi")),$o.isType(s,"msubsup")&&!$o.isType(s,"msup")&&$o.getChildAt(s,s.sup)||$o.isType(s,"munderover")&&!$o.isType(s,"mover")&&$o.getChildAt(s,s.over)&&!$o.getProperty(s,"subsupOK"))throw new ha("DoubleExponentPrime","Prime causes double exponent: use braces to clarify");let i="";t.i--;do{i+=Ao.prime,t.i++,e=t.GetNext()}while("'"===e||e===Ao.rsquo);i=["","\u2032","\u2033","\u2034","\u2057"][i.length]||i;const r=t.create("token","mo",{variantForm:!0},i);t.Push(t.itemFactory.create("prime",s,r))},Comment(t,e){for(;t.in.macroColumn(t,r,parseInt(i)),t.Push(t.itemFactory.create("null"))},BeginEnd(t,e){const s=t.GetArgument(e);if(s.match(/\\/))throw new ha("InvalidEnv","Invalid environment name '%1'",s);const i=t.configuration.handlers.get(na.ENVIRONMENT).lookup(s);if(i&&"\\end"===e){if(!i.args[0]){const e=t.itemFactory.create("end").setProperty("name",s);return void t.Push(e)}t.stack.env.closing=s}va.checkMaxMacros(t,!1),t.parse(na.ENVIRONMENT,[t,s])},Array(t,e,s,i,r,n,o,a,l){r||(r=t.GetArgument("\\begin{"+e.getName()+"}"));const c=t.itemFactory.create("array");return"array"===e.getName()&&c.setProperty("arrayPadding",".5em .125em"),c.parser=t,c.arraydef={columnspacing:n||"1em",rowspacing:o||"4pt"},t.configuration.columnParser.process(t,r,c),s&&c.setProperty("open",t.convertDelimiter(s)),i&&c.setProperty("close",t.convertDelimiter(i)),"'"===(a||"").charAt(1)&&(c.arraydef["data-cramped"]=!0,a=a.charAt(0)),"D"===a?c.arraydef.displaystyle=!0:a&&(c.arraydef.displaystyle=!1),c.arraydef.scriptlevel="S"===a?1:0,l&&(c.arraydef.useHeight=!1),t.Push(e),c.StartEntry(),c},AlignedArray(t,e,s=""){const i=t.GetBrackets("\\begin{"+e.getName()+"}"),r=Il.Array(t,e,null,null,null,null,null,s);return va.setArrayAlign(r,i)},IndentAlign(t,e){const s=`\\begin{${e.getName()}}`,i=t.GetBrackets(s,""),r=t.GetBrackets(s,""),n=t.GetBrackets(s,"");if(i&&!aa.matchDimen(i)[0]||r&&!aa.matchDimen(r)[0]||n&&!aa.matchDimen(n)[0])throw new ha("BracketMustBeDimension","Bracket argument to %1 must be a dimension",s);const o=t.GetArgument(s);if(o&&!o.match(/^([lcr]{1,3})?$/))throw new ha("BadAlignment","Alignment must be one to three copies of l, c, or r");const a=[...o].map(t=>({l:"left",c:"center",r:"right"}[t]));1===a.length&&a.push(a[0]);const l={};for(const[t,e]of[["indentshiftfirst",i],["indentshift",r||i],["indentshiftlast",n],["indentalignfirst",a[0]],["indentalign",a[1]],["indentalignlast",a[2]]])e&&(l[t]=e);t.Push(t.itemFactory.create("mstyle",l,e.getName()))},Equation:(t,e,s,i=!0)=>(t.configuration.mathItem.display=i,t.stack.env.display=i,va.checkEqnEnv(t),t.Push(e),t.itemFactory.create("equation",s).setProperty("name",e.getName())),EqnArray(t,e,s,i,r,n,o){const a=e.getName(),l="gather"===a||"gather*"===a;i&&va.checkEqnEnv(t,!l),t.Push(e),r=(r=r.replace(/[^clr]/g,"").split("").join(" ")).replace(/l/g,"left").replace(/r/g,"right").replace(/c/g,"center"),n=Rl(n);const c=t.itemFactory.create("eqnarray",a,s,i,t.stack.global);return c.arraydef={displaystyle:!0,columnalign:r,columnspacing:o||"1em",rowspacing:"3pt","data-break-align":n,side:t.options.tagSide,minlabelspacing:t.options.tagIndent},l&&c.setProperty("nestable",!0),c},HandleNoTag(t,e){t.tags.notag()},HandleLabel(t,e){const s=t.GetArgument(e);if(""!==s){if(t.tags.label)throw new ha("MultipleCommand","Multiple %1",t.currentCS);if(t.tags.label=s,!t.tags.refUpdate){if((t.tags.allLabels[s]||t.tags.labels[s])&&!t.options.ignoreDuplicateLabels)throw new ha("MultipleLabel","Label '%1' multiply defined",s);t.tags.labels[s]=new Sa}}},HandleRef(t,e,s){const i=t.GetArgument(e);let r=t.tags.allLabels[i]||t.tags.labels[i];r||(t.tags.refUpdate||(t.tags.redo=!0),r=new Sa);let n=r.tag;s&&(n=t.tags.formatRef(n));const o=t.create("node","mrow",va.internalMath(t,Array.isArray(n)?n.join(""):n),{href:t.tags.formatUrl(r.id,t.options.baseURL),class:"MathJax_ref"});t.Push(o)},Macro(t,e,s,i,r){if(i){const n=[];if(null!=r){const s=t.GetBrackets(e);n.push(null==s?r:s)}for(let s=n.length;s1&&(i.autoOP=!1)),!i.mathvariant&&va.isLatinOrGreekChar(e)){const s=t.configuration.mathStyle(e);s&&(i.mathvariant=s)}const n=t.create("token","mi",i,e);t.Push(n)},digit(t,e){const s=t.configuration.options.numberPattern,i=t.string.slice(t.i-1).match(s);if(!i)return!1;const r=va.getFontDef(t),n=t.create("token","mn",r,i[0].replace(/[{}]/g,""));return t.i+=i[0].length-1,t.Push(n),!0},controlSequence(t,e){const s=t.GetCS();t.parse(na.MACRO,[t,s])},lcGreek(t,e){const s={mathvariant:t.configuration.mathStyle(e.char)||kl.ITALIC},i=t.create("token","mi",s,e.char);t.Push(i)},ucGreek(t,e){const s={mathvariant:t.stack.env.font||t.configuration.mathStyle(e.char,!0)||kl.NORMAL},i=t.create("token","mi",s,e.char);t.Push(i)},mathchar0mi(t,e){const s=e.attributes||{mathvariant:kl.ITALIC},i=t.create("token","mi",s,e.char);t.Push(i)},mathchar0mo(t,e){const s=e.attributes||{};s.stretchy=!1;const i=t.create("token","mo",s,e.char);$o.setProperty(i,"fixStretchy",!0),t.configuration.addNode("fixStretchy",i),t.Push(i)},mathchar7(t,e){const s=e.attributes||{mathvariant:kl.NORMAL};t.stack.env.font&&(s.mathvariant=t.stack.env.font);const i=t.create("token","mi",s,e.char);t.Push(i)},delimiter(t,e){let s=e.attributes||{};s=Object.assign({fence:!1,stretchy:!1},s);const i=t.create("token","mo",s,e.char);"|"===e.char&&i.setProperty("keep-attrs","stretchy"),t.Push(i)},environment(t,e,s,i){const r=t.itemFactory.create("begin").setProperty("name",e);t.Push(s(t,r,...i.slice(1)))}},Dl=Ol,Pl=No(Eo.thickmathspace),Bl=Yo.Variant;new _a("letter",Dl.variable,/[a-z]/i),new _a("digit",Dl.digit,/[0-9.,]/),new _a("command",Dl.controlSequence,/^\\/),new za("special",{"{":wl.Open,"}":wl.Close,"~":wl.Tilde,"^":wl.Superscript,_:wl.Subscript,"|":wl.Bar," ":wl.Space,"\t":wl.Space,"\r":wl.Space,"\n":wl.Space,"'":wl.Prime,"%":wl.Comment,"&":wl.Entry,"#":wl.Hash,"\xa0":wl.Space,"\u2019":wl.Prime}),new Ha("lcGreek",Dl.lcGreek,{alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03f5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03d5",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",varepsilon:"\u03b5",vartheta:"\u03d1",varpi:"\u03d6",varrho:"\u03f1",varsigma:"\u03c2",varphi:"\u03c6"}),new Ha("ucGreek",Dl.ucGreek,{Gamma:"\u0393",Delta:"\u0394",Theta:"\u0398",Lambda:"\u039b",Xi:"\u039e",Pi:"\u03a0",Sigma:"\u03a3",Upsilon:"\u03a5",Phi:"\u03a6",Psi:"\u03a8",Omega:"\u03a9"}),new Ha("mathchar0mi",Dl.mathchar0mi,{AA:"\u212b",S:["\xa7",{mathvariant:Bl.NORMAL}],aleph:["\u2135",{mathvariant:Bl.NORMAL}],hbar:["\u210f",{variantForm:!0}],imath:"\u0131",jmath:"\u0237",ell:"\u2113",wp:["\u2118",{mathvariant:Bl.NORMAL}],Re:["\u211c",{mathvariant:Bl.NORMAL}],Im:["\u2111",{mathvariant:Bl.NORMAL}],partial:["\u2202",{mathvariant:Bl.ITALIC}],infty:["\u221e",{mathvariant:Bl.NORMAL}],prime:["\u2032",{variantForm:!0}],emptyset:["\u2205",{mathvariant:Bl.NORMAL}],nabla:["\u2207",{mathvariant:Bl.NORMAL}],top:["\u22a4",{mathvariant:Bl.NORMAL}],bot:["\u22a5",{mathvariant:Bl.NORMAL}],angle:["\u2220",{mathvariant:Bl.NORMAL}],triangle:["\u25b3",{mathvariant:Bl.NORMAL}],backslash:["\\",{mathvariant:Bl.NORMAL}],forall:["\u2200",{mathvariant:Bl.NORMAL}],exists:["\u2203",{mathvariant:Bl.NORMAL}],neg:["\xac",{mathvariant:Bl.NORMAL}],lnot:["\xac",{mathvariant:Bl.NORMAL}],flat:["\u266d",{mathvariant:Bl.NORMAL}],natural:["\u266e",{mathvariant:Bl.NORMAL}],sharp:["\u266f",{mathvariant:Bl.NORMAL}],clubsuit:["\u2663",{mathvariant:Bl.NORMAL}],diamondsuit:["\u2662",{mathvariant:Bl.NORMAL}],heartsuit:["\u2661",{mathvariant:Bl.NORMAL}],spadesuit:["\u2660",{mathvariant:Bl.NORMAL}]}),new Ha("mathchar0mo",Dl.mathchar0mo,{surd:["\u221a",{symmetric:!0}],coprod:["\u2210",{movesupsub:!0}],bigvee:["\u22c1",{movesupsub:!0}],bigwedge:["\u22c0",{movesupsub:!0}],biguplus:["\u2a04",{movesupsub:!0}],bigcap:["\u22c2",{movesupsub:!0}],bigcup:["\u22c3",{movesupsub:!0}],int:"\u222b",intop:["\u222b",{movesupsub:!0,movablelimits:!0}],iint:"\u222c",iiint:"\u222d",prod:["\u220f",{movesupsub:!0}],sum:["\u2211",{movesupsub:!0}],bigotimes:["\u2a02",{movesupsub:!0}],bigoplus:["\u2a01",{movesupsub:!0}],bigodot:["\u2a00",{movesupsub:!0}],oint:"\u222e",ointop:["\u222e",{movesupsub:!0,movablelimits:!0}],oiint:"\u222f",oiiint:"\u2230",bigsqcup:["\u2a06",{movesupsub:!0}],smallint:["\u222b",{largeop:!1}],triangleleft:"\u25c3",triangleright:"\u25b9",bigtriangleup:"\u25b3",bigtriangledown:"\u25bd",wedge:"\u2227",land:"\u2227",vee:"\u2228",lor:"\u2228",cap:"\u2229",cup:"\u222a",ddagger:"\u2021",dagger:"\u2020",sqcap:"\u2293",sqcup:"\u2294",uplus:"\u228e",amalg:"\u2a3f",diamond:"\u22c4",bullet:"\u2219",wr:"\u2240",div:"\xf7",odot:["\u2299",{largeop:!1}],oslash:["\u2298",{largeop:!1}],otimes:["\u2297",{largeop:!1}],ominus:["\u2296",{largeop:!1}],oplus:["\u2295",{largeop:!1}],mp:"\u2213",pm:"\xb1",circ:"\u2218",bigcirc:"\u25ef",setminus:"\u2216",cdot:"\u22c5",ast:"\u2217",times:"\xd7",star:"\u22c6",propto:"\u221d",sqsubseteq:"\u2291",sqsupseteq:"\u2292",parallel:"\u2225",mid:"\u2223",dashv:"\u22a3",vdash:"\u22a2",leq:"\u2264",le:"\u2264",geq:"\u2265",ge:"\u2265",lt:"<",gt:">",succ:"\u227b",prec:"\u227a",approx:"\u2248",succeq:"\u2ab0",preceq:"\u2aaf",supset:"\u2283",subset:"\u2282",supseteq:"\u2287",subseteq:"\u2286",in:"\u2208",ni:"\u220b",notin:"\u2209",owns:"\u220b",gg:"\u226b",ll:"\u226a",sim:"\u223c",simeq:"\u2243",perp:"\u27c2",equiv:"\u2261",asymp:"\u224d",smile:"\u2323",frown:"\u2322",ne:"\u2260",neq:"\u2260",cong:"\u2245",doteq:"\u2250",bowtie:"\u22c8",models:"\u22a7",notChar:"\u29f8",Leftrightarrow:"\u21d4",Leftarrow:"\u21d0",Rightarrow:"\u21d2",leftrightarrow:"\u2194",leftarrow:"\u2190",gets:"\u2190",rightarrow:"\u2192",to:["\u2192",{accent:!1}],mapsto:"\u21a6",leftharpoonup:"\u21bc",leftharpoondown:"\u21bd",rightharpoonup:"\u21c0",rightharpoondown:"\u21c1",nearrow:"\u2197",searrow:"\u2198",nwarrow:"\u2196",swarrow:"\u2199",rightleftharpoons:"\u21cc",hookrightarrow:"\u21aa",hookleftarrow:"\u21a9",longleftarrow:"\u27f5",Longleftarrow:"\u27f8",longrightarrow:"\u27f6",Longrightarrow:"\u27f9",Longleftrightarrow:"\u27fa",longleftrightarrow:"\u27f7",longmapsto:"\u27fc",ldots:"\u2026",cdots:"\u22ef",vdots:"\u22ee",ddots:"\u22f1",iddots:"\u22f0",dotsc:"\u2026",dotsb:"\u22ef",dotsm:"\u22ef",dotsi:"\u22ef",dotso:"\u2026",ldotp:[".",{texClass:gr.PUNCT}],cdotp:["\u22c5",{texClass:gr.PUNCT}],colon:[":",{texClass:gr.PUNCT}]}),new Ha("mathchar7",Dl.mathchar7,{_:"_","#":"#",$:"$","%":"%","&":"&",And:"&"}),new Wa("delimiter",Dl.delimiter,{"(":"(",")":")","[":"[","]":"]","<":"\u27e8",">":"\u27e9","\\lt":"\u27e8","\\gt":"\u27e9","/":"/","|":["|",{texClass:gr.ORD}],".":"","\\lmoustache":"\u23b0","\\rmoustache":"\u23b1","\\lgroup":"\u27ee","\\rgroup":"\u27ef","\\arrowvert":"\u23d0","\\Arrowvert":"\u2016","\\bracevert":"\u23aa","\\Vert":["\u2016",{texClass:gr.ORD}],"\\|":["\u2016",{texClass:gr.ORD}],"\\vert":["|",{texClass:gr.ORD}],"\\uparrow":"\u2191","\\downarrow":"\u2193","\\updownarrow":"\u2195","\\Uparrow":"\u21d1","\\Downarrow":"\u21d3","\\Updownarrow":"\u21d5","\\backslash":"\\","\\rangle":"\u27e9","\\langle":"\u27e8","\\rbrace":"}","\\lbrace":"{","\\}":"}","\\{":"{","\\rceil":"\u2309","\\lceil":"\u2308","\\rfloor":"\u230b","\\lfloor":"\u230a","\\lbrack":"[","\\rbrack":"]"}),new qa("macros",{displaystyle:[wl.SetStyle,"D",!0,0],textstyle:[wl.SetStyle,"T",!1,0],scriptstyle:[wl.SetStyle,"S",!1,1],scriptscriptstyle:[wl.SetStyle,"SS",!1,2],rm:[wl.SetFont,Bl.NORMAL],mit:[wl.SetFont,Bl.ITALIC],oldstyle:[wl.SetFont,Bl.OLDSTYLE],cal:[wl.SetFont,Bl.CALLIGRAPHIC],it:[wl.SetFont,Bl.MATHITALIC],bf:[wl.SetFont,Bl.BOLD],sf:[wl.SetFont,Bl.SANSSERIF],tt:[wl.SetFont,Bl.MONOSPACE],frak:[wl.MathFont,Bl.FRAKTUR],Bbb:[wl.MathFont,Bl.DOUBLESTRUCK],mathrm:[wl.MathFont,Bl.NORMAL],mathup:[wl.MathFont,Bl.NORMAL],mathnormal:[wl.MathFont,""],mathbf:[wl.MathFont,Bl.BOLD],mathbfup:[wl.MathFont,Bl.BOLD],mathit:[wl.MathFont,Bl.MATHITALIC],mathbfit:[wl.MathFont,Bl.BOLDITALIC],mathbb:[wl.MathFont,Bl.DOUBLESTRUCK],mathfrak:[wl.MathFont,Bl.FRAKTUR],mathbffrak:[wl.MathFont,Bl.BOLDFRAKTUR],mathscr:[wl.MathFont,Bl.SCRIPT],mathbfscr:[wl.MathFont,Bl.BOLDSCRIPT],mathsf:[wl.MathFont,Bl.SANSSERIF],mathsfup:[wl.MathFont,Bl.SANSSERIF],mathbfsf:[wl.MathFont,Bl.BOLDSANSSERIF],mathbfsfup:[wl.MathFont,Bl.BOLDSANSSERIF],mathsfit:[wl.MathFont,Bl.SANSSERIFITALIC],mathbfsfit:[wl.MathFont,Bl.SANSSERIFBOLDITALIC],mathtt:[wl.MathFont,Bl.MONOSPACE],mathcal:[wl.MathFont,Bl.CALLIGRAPHIC],mathbfcal:[wl.MathFont,Bl.BOLDCALLIGRAPHIC],symrm:[wl.MathFont,Bl.NORMAL],symup:[wl.MathFont,Bl.NORMAL],symnormal:[wl.MathFont,""],symbf:[wl.MathFont,Bl.BOLD,Bl.BOLDITALIC],symbfup:[wl.MathFont,Bl.BOLD],symit:[wl.MathFont,Bl.ITALIC],symbfit:[wl.MathFont,Bl.BOLDITALIC],symbb:[wl.MathFont,Bl.DOUBLESTRUCK],symfrak:[wl.MathFont,Bl.FRAKTUR],symbffrak:[wl.MathFont,Bl.BOLDFRAKTUR],symscr:[wl.MathFont,Bl.SCRIPT],symbfscr:[wl.MathFont,Bl.BOLDSCRIPT],symsf:[wl.MathFont,Bl.SANSSERIF,Bl.SANSSERIFITALIC],symsfup:[wl.MathFont,Bl.SANSSERIF],symbfsf:[wl.MathFont,Bl.BOLDSANSSERIF],symbfsfup:[wl.MathFont,Bl.BOLDSANSSERIF],symsfit:[wl.MathFont,Bl.SANSSERIFITALIC],symbfsfit:[wl.MathFont,Bl.SANSSERIFBOLDITALIC],symtt:[wl.MathFont,Bl.MONOSPACE],symcal:[wl.MathFont,Bl.CALLIGRAPHIC],symbfcal:[wl.MathFont,Bl.BOLDCALLIGRAPHIC],textrm:[wl.HBox,null,Bl.NORMAL],textup:[wl.HBox,null,Bl.NORMAL],textnormal:[wl.HBox],textit:[wl.HBox,null,Bl.ITALIC],textbf:[wl.HBox,null,Bl.BOLD],textsf:[wl.HBox,null,Bl.SANSSERIF],texttt:[wl.HBox,null,Bl.MONOSPACE],Tiny:[wl.SetSize,.5],tiny:[wl.SetSize,.6],scriptsize:[wl.SetSize,.7],SMALL:[wl.SetSize,.7],Small:[wl.SetSize,.8],footnotesize:[wl.SetSize,.8],small:[wl.SetSize,.9],normalsize:[wl.SetSize,1],large:[wl.SetSize,1.095],Large:[wl.SetSize,1.2],LARGE:[wl.SetSize,1.44],huge:[wl.SetSize,1.728],Huge:[wl.SetSize,2.074],HUGE:[wl.SetSize,2.49],arcsin:wl.NamedFn,arccos:wl.NamedFn,arctan:wl.NamedFn,arg:wl.NamedFn,cos:wl.NamedFn,cosh:wl.NamedFn,cot:wl.NamedFn,coth:wl.NamedFn,csc:wl.NamedFn,deg:wl.NamedFn,det:wl.NamedOp,dim:wl.NamedFn,exp:wl.NamedFn,gcd:wl.NamedOp,hom:wl.NamedFn,inf:wl.NamedOp,ker:wl.NamedFn,lg:wl.NamedFn,lim:wl.NamedOp,liminf:[wl.NamedOp,"lim inf"],limsup:[wl.NamedOp,"lim sup"],ln:wl.NamedFn,log:wl.NamedFn,max:wl.NamedOp,min:wl.NamedOp,Pr:wl.NamedOp,sec:wl.NamedFn,sin:wl.NamedFn,sinh:wl.NamedFn,sup:wl.NamedOp,tan:wl.NamedFn,tanh:wl.NamedFn,limits:[wl.Limits,!0],nolimits:[wl.Limits,!1],overline:[wl.UnderOver,"2015"],underline:[wl.UnderOver,"2015"],overbrace:[wl.UnderOver,"23DE",!0],underbrace:[wl.UnderOver,"23DF",!0],overparen:[wl.UnderOver,"23DC"],underparen:[wl.UnderOver,"23DD"],overrightarrow:[wl.UnderOver,"2192"],underrightarrow:[wl.UnderOver,"2192"],overleftarrow:[wl.UnderOver,"2190"],underleftarrow:[wl.UnderOver,"2190"],overleftrightarrow:[wl.UnderOver,"2194"],underleftrightarrow:[wl.UnderOver,"2194"],overset:wl.Overset,underset:wl.Underset,overunderset:wl.Overunderset,stackrel:[wl.Macro,"\\mathrel{\\mathop{#2}\\limits^{#1}}",2],stackbin:[wl.Macro,"\\mathbin{\\mathop{#2}\\limits^{#1}}",2],over:wl.Over,overwithdelims:wl.Over,atop:wl.Over,atopwithdelims:wl.Over,above:wl.Over,abovewithdelims:wl.Over,brace:[wl.Over,"{","}"],brack:[wl.Over,"[","]"],choose:[wl.Over,"(",")"],frac:wl.Frac,sqrt:wl.Sqrt,root:wl.Root,uproot:[wl.MoveRoot,"upRoot"],leftroot:[wl.MoveRoot,"leftRoot"],left:wl.LeftRight,right:wl.LeftRight,middle:wl.LeftRight,llap:wl.Lap,rlap:wl.Lap,raise:wl.RaiseLower,lower:wl.RaiseLower,moveleft:wl.MoveLeftRight,moveright:wl.MoveLeftRight,",":[wl.Spacer,Eo.thinmathspace],":":[wl.Spacer,Eo.mediummathspace],">":[wl.Spacer,Eo.mediummathspace],";":[wl.Spacer,Eo.thickmathspace],"!":[wl.Spacer,Eo.negativethinmathspace],enspace:[wl.Spacer,.5],quad:[wl.Spacer,1],qquad:[wl.Spacer,2],thinspace:[wl.Spacer,Eo.thinmathspace],negthinspace:[wl.Spacer,Eo.negativethinmathspace],"*":wl.DiscretionaryTimes,allowbreak:wl.AllowBreak,goodbreak:[wl.Linebreak,Yo.LineBreak.GOODBREAK],badbreak:[wl.Linebreak,Yo.LineBreak.BADBREAK],nobreak:[wl.Linebreak,Yo.LineBreak.NOBREAK],break:wl.Break,hskip:wl.Hskip,hspace:wl.Hskip,kern:[wl.Hskip,!0],mskip:wl.Hskip,mspace:wl.Hskip,mkern:[wl.Hskip,!0],rule:wl.rule,Rule:[wl.Rule],Space:[wl.Rule,"blank"],nonscript:wl.Nonscript,big:[wl.MakeBig,gr.ORD,.85],Big:[wl.MakeBig,gr.ORD,1.15],bigg:[wl.MakeBig,gr.ORD,1.45],Bigg:[wl.MakeBig,gr.ORD,1.75],bigl:[wl.MakeBig,gr.OPEN,.85],Bigl:[wl.MakeBig,gr.OPEN,1.15],biggl:[wl.MakeBig,gr.OPEN,1.45],Biggl:[wl.MakeBig,gr.OPEN,1.75],bigr:[wl.MakeBig,gr.CLOSE,.85],Bigr:[wl.MakeBig,gr.CLOSE,1.15],biggr:[wl.MakeBig,gr.CLOSE,1.45],Biggr:[wl.MakeBig,gr.CLOSE,1.75],bigm:[wl.MakeBig,gr.REL,.85],Bigm:[wl.MakeBig,gr.REL,1.15],biggm:[wl.MakeBig,gr.REL,1.45],Biggm:[wl.MakeBig,gr.REL,1.75],mathord:[wl.TeXAtom,gr.ORD],mathop:[wl.TeXAtom,gr.OP],mathopen:[wl.TeXAtom,gr.OPEN],mathclose:[wl.TeXAtom,gr.CLOSE],mathbin:[wl.TeXAtom,gr.BIN],mathrel:[wl.TeXAtom,gr.REL],mathpunct:[wl.TeXAtom,gr.PUNCT],mathinner:[wl.TeXAtom,gr.INNER],vtop:[wl.VBox,"top"],vcenter:[wl.VBox,"center"],vbox:[wl.VBox,"bottom"],hsize:wl.Hsize,parbox:wl.ParBox,breakAlign:wl.BreakAlign,buildrel:wl.BuildRel,hbox:[wl.HBox,0],text:wl.HBox,mbox:[wl.HBox,0],fbox:wl.FBox,boxed:[wl.Macro,"\\fbox{$\\displaystyle{#1}$}",1],framebox:wl.FrameBox,makebox:wl.MakeBox,strut:wl.Strut,mathstrut:[wl.Macro,"\\vphantom{(}"],phantom:wl.Phantom,vphantom:[wl.Phantom,1,0],hphantom:[wl.Phantom,0,1],smash:wl.Smash,acute:[wl.Accent,"00B4"],grave:[wl.Accent,"0060"],ddot:[wl.Accent,"00A8"],dddot:[wl.Accent,"20DB"],ddddot:[wl.Accent,"20DC"],tilde:[wl.Accent,"007E"],bar:[wl.Accent,"00AF"],breve:[wl.Accent,"02D8"],check:[wl.Accent,"02C7"],hat:[wl.Accent,"005E"],vec:[wl.Accent,"2192",!1],dot:[wl.Accent,"02D9"],widetilde:[wl.Accent,"007E",!0],widehat:[wl.Accent,"005E",!0],matrix:wl.Matrix,array:wl.Matrix,pmatrix:[wl.Matrix,"(",")"],cases:[wl.Matrix,"{","","left left",null,".2em",null,!0],eqalign:[wl.Matrix,null,null,"right left",Pl,".5em","D"],displaylines:[wl.Matrix,null,null,"center",null,".5em","D"],cr:wl.Cr,"\\":wl.CrLaTeX,newline:[wl.CrLaTeX,!0],hline:wl.HLine,hdashline:[wl.HLine,"dashed"],eqalignno:[wl.Matrix,null,null,"right left",Pl,".5em","D",null,"right"],leqalignno:[wl.Matrix,null,null,"right left",Pl,".5em","D",null,"left"],hfill:wl.HFill,hfil:wl.HFill,hfilll:wl.HFill,bmod:[wl.Macro,`\\mmlToken{mo}[lspace="${Pl}" rspace="${Pl}"]{mod}`],pmod:[wl.Macro,"\\pod{\\mmlToken{mi}{mod}\\kern 6mu #1}",1],mod:[wl.Macro,"\\mathchoice{\\kern18mu}{\\kern12mu}{\\kern12mu}{\\kern12mu}\\mmlToken{mi}{mod}\\,\\,#1",1],pod:[wl.Macro,"\\mathchoice{\\kern18mu}{\\kern8mu}{\\kern8mu}{\\kern8mu}(#1)",1],iff:[wl.Macro,"\\;\\Longleftrightarrow\\;"],skew:[wl.Macro,"{{#2{#3\\mkern#1mu}\\mkern-#1mu}{}}",3],pmb:[wl.Macro,"\\rlap{#1}\\kern1px{#1}",1],TeX:[wl.Macro,"T\\kern-.14em\\lower.5ex{E}\\kern-.115em X"],LaTeX:[wl.Macro,"L\\kern-.325em\\raise.21em{\\scriptstyle{A}}\\kern-.17em\\TeX"],not:wl.Not,dots:wl.Dots,space:wl.Tilde,"\xa0":wl.Tilde," ":wl.Tilde,begin:wl.BeginEnd,end:wl.BeginEnd,label:wl.HandleLabel,ref:wl.HandleRef,nonumber:wl.HandleNoTag,newcolumntype:wl.NewColumnType,mathchoice:wl.MathChoice,mmlToken:wl.MmlToken}),new Va("environment",Dl.environment,{displaymath:[wl.Equation,null,!1],math:[wl.Equation,null,!1,!1],array:[wl.AlignedArray],darray:[wl.AlignedArray,null,"D"],equation:[wl.Equation,null,!0],eqnarray:[wl.EqnArray,null,!0,!0,"rcl","bmt",va.cols(0,Eo.thickmathspace),".5em"],indentalign:[wl.IndentAlign]}),new Ha("not_remap",null,{"\u2190":"\u219a","\u2192":"\u219b","\u2194":"\u21ae","\u21d0":"\u21cd","\u21d2":"\u21cf","\u21d4":"\u21ce","\u2208":"\u2209","\u220b":"\u220c","\u2223":"\u2224","\u2225":"\u2226","\u223c":"\u2241","~":"\u2241","\u2243":"\u2244","\u2245":"\u2247","\u2248":"\u2249","\u224d":"\u226d","=":"\u2260","\u2261":"\u2262","<":"\u226e",">":"\u226f","\u2264":"\u2270","\u2265":"\u2271","\u2272":"\u2274","\u2273":"\u2275","\u2276":"\u2278","\u2277":"\u2279","\u227a":"\u2280","\u227b":"\u2281","\u2282":"\u2284","\u2283":"\u2285","\u2286":"\u2288","\u2287":"\u2289","\u22a2":"\u22ac","\u22a8":"\u22ad","\u22a9":"\u22ae","\u22ab":"\u22af","\u227c":"\u22e0","\u227d":"\u22e1","\u2291":"\u22e2","\u2292":"\u22e3","\u22b2":"\u22ea","\u22b3":"\u22eb","\u22b4":"\u22ec","\u22b5":"\u22ed","\u2203":"\u2204"});const Fl=Yo.Variant;function jl(t,e){const s=t.stack.env.font,i=t.stack.env.italicFont,r=s?{mathvariant:s}:{},n=Ga.getMap("remap").lookup(e),o=Pr(e),a=o[3],l=t.create("token",a,r,n?n.char:e),c=va.isLatinOrGreekChar(e)?t.configuration.mathStyle(e,!0)||i:"",h=o[4]||(s&&c===Fl.NORMAL?"":c);h&&l.attributes.set("mathvariant",h),"mo"===a&&($o.setProperty(l,"fixStretchy",!0),t.configuration.addNode("fixStretchy",l)),t.Push(l)}new Ha("remap",null,{"-":"\u2212","*":"\u2217","`":"\u2018"});class _l extends Ma{}const Ul=$a.create("base",{[ra.CONFIG]:function(t,e){const s=e.parseOptions.options;s.digits&&(s.numberPattern=s.digits),new _a("digit",Dl.digit,s.initialDigit),new _a("letter",Dl.variable,s.initialLetter);t.handlers.get(na.CHARACTER).add(["letter","digit"],null,4)},[ra.HANDLER]:{[na.CHARACTER]:["command","special"],[na.DELIMITER]:["delimiter"],[na.MACRO]:["delimiter","macros","lcGreek","ucGreek","mathchar0mi","mathchar0mo","mathchar7"],[na.ENVIRONMENT]:["environment"]},[ra.FALLBACK]:{[na.CHARACTER]:jl,[na.MACRO]:function(t,e){throw new ha("UndefinedControlSequence","Undefined control sequence %1","\\"+e)},[na.ENVIRONMENT]:function(t,e){throw new ha("UnknownEnv","Unknown environment '%1'",e)}},[ra.ITEMS]:{[tl.prototype.kind]:tl,[el.prototype.kind]:el,[sl.prototype.kind]:sl,[il.prototype.kind]:il,[rl.prototype.kind]:rl,[nl.prototype.kind]:nl,[ol.prototype.kind]:ol,[al.prototype.kind]:al,[ll.prototype.kind]:ll,[cl.prototype.kind]:cl,[hl.prototype.kind]:hl,[dl.prototype.kind]:dl,[ul.prototype.kind]:ul,[pl.prototype.kind]:pl,[ml.prototype.kind]:ml,[fl.prototype.kind]:fl,[gl.prototype.kind]:gl,[bl.prototype.kind]:bl,[El.prototype.kind]:El,[xl.prototype.kind]:xl,[yl.prototype.kind]:yl,[Nl.prototype.kind]:Nl,[vl.prototype.kind]:vl,[Tl.prototype.kind]:Tl,[Al.prototype.kind]:Al,[Cl.prototype.kind]:Cl},[ra.OPTIONS]:{maxMacros:1e3,digits:"",numberPattern:/^(?:[0-9]+(?:\{,\}[0-9]{3})*(?:\.[0-9]*)?|\.[0-9]+)/,initialDigit:/[0-9.,]/,identifierPattern:/^[a-zA-Z]+/,initialLetter:/[a-zA-Z]/,baseURL:mi.document&&0!==mi.document.getElementsByTagName("base").length?String(mi.document.location).replace(/#.*$/,""):""},[ra.TAGS]:{base:_l},[ra.POSTPROCESSORS]:[[function({data:t}){for(const e of t.getList("nonscript"))if(e.attributes.get("scriptlevel")>0){const s=e.parent;if(s.childNodes.splice(s.childIndex(e),1),t.removeFromList(e.kind,[e]),e.isKind("mrow")){const s=e.childNodes[0];t.removeFromList("mstyle",[s]),t.removeFromList("mspace",s.childNodes[0].childNodes)}}else e.isKind("mrow")&&(e.parent.replaceChild(e.childNodes[0],e),t.removeFromList("mrow",[e]))},-4]]});class Hl extends tr{static configure(t){const e=new Za(t,["tex"]);return e.init(),e}static tags(t,e){Da.addTags(e.tags),Da.setDefault(t.options.tags),t.tags=Da.getDefault(),t.tags.configuration=t}constructor(t={}){const[e,s,i]=Hi(t,Hl.OPTIONS,Jo.OPTIONS);super(s),this.findTeX=this.options.FindTeX||new Jo(i);const r=this.options.packages,n=this.configuration=Hl.configure(r),o=this._parseOptions=new La(n,[this.options,Da.OPTIONS]);ji(o.options,e),n.config(this),Hl.tags(o,n),this.postFilters.addList([[ia.cleanSubSup,-7],[ia.setInherited,-6],[ia.checkScriptlevel,-5],[ia.moveLimits,-4],[ia.cleanStretchy,-3],[ia.cleanAttributes,-2],[ia.combineRelations,-1]])}setMmlFactory(t){super.setMmlFactory(t),this._parseOptions.nodeFactory.setMmlFactory(t)}get parseOptions(){return this._parseOptions}reset(t=0){this.parseOptions.clear(),this.parseOptions.tags.reset(t)}compile(t,e){let s,i;this.parseOptions.clear(),this.parseOptions.mathItem=t,this.executeFilters(this.preFilters,t,e,this.parseOptions),this.latex=t.math,this.parseOptions.tags.startEquation(t);try{i=new pa(this.latex,{display:t.display,isInner:!1},this.parseOptions),s=i.mml()}catch(t){if(!(t instanceof ha))throw t;this.parseOptions.error=!0,s=this.options.formatError(this,t)}return s=this.parseOptions.nodeFactory.create("node","math",[s]),s.attributes.set(Yo.Attr.LATEX,this.latex),t.display&&$o.setAttribute(s,"display","block"),this.parseOptions.tags.finishEquation(t),this.parseOptions.root=s,this.executeFilters(this.postFilters,t,e,this.parseOptions),i&&i.stack.env.hsize&&($o.setAttribute(s,"maxwidth",i.stack.env.hsize),$o.setAttribute(s,"overflow","linebreak")),this.mathNode=this.parseOptions.root,this.mathNode}findMath(t){return this.findTeX.findMath(t)}formatError(t){const e=t.message.replace(/\n.*/,"");return this.parseOptions.nodeFactory.create("error",e,t.id,this.latex)}}Hl.NAME="TeX",Hl.OPTIONS=Object.assign(Object.assign({},tr.OPTIONS),{FindTeX:null,packages:["base"],maxBuffer:5120,maxTemplateSubtitutions:1e4,mathStyle:"TeX",formatError:(t,e)=>t.formatError(e)});class Wl extends vl{constructor(t,...e){super(t),this.factory.configuration.tags.start("multline",!0,e[0])}get kind(){return"multline"}EndEntry(){this.table.length&&va.fixInitialMO(this.factory.configuration,this.nodes);const t=this.getProperty("shove"),e=this.create("node","mtd",this.nodes,t?{columnalign:t}:{});this.setProperty("shove",null),this.row.push(e),this.Clear()}EndRow(){if(1!==this.row.length)throw new ha("MultlineRowsOneCol","The rows within the %1 environment must have exactly one column","multline");const t=this.create("node","mtr",this.row);this.table.push(t),this.row=[]}EndTable(){if(super.EndTable(),this.table.length){const t=this.table.length-1;let e=-1;$o.getAttribute($o.getChildren(this.table[0])[0],"columnalign")||$o.setAttribute($o.getChildren(this.table[0])[0],"columnalign",Yo.Align.LEFT),$o.getAttribute($o.getChildren(this.table[t])[0],"columnalign")||$o.setAttribute($o.getChildren(this.table[t])[0],"columnalign",Yo.Align.RIGHT);const s=this.factory.configuration.tags.getTag();if(s){e=this.arraydef.side===Yo.Align.LEFT?0:this.table.length-1;const t=this.table[e],i=this.create("node","mlabeledtr",[s].concat($o.getChildren(t)));$o.copyAttributes(t,i),this.table[e]=i}}this.factory.configuration.tags.end()}}class zl extends Tl{get kind(){return"flalign"}constructor(t,e,s,i,r){super(t),this.name=e,this.numbered=s,this.padded=i,this.center=r,this.factory.configuration.tags.start(e,s,s)}EndEntry(){super.EndEntry();const t=this.getProperty("xalignat");if(t&&this.row.length>t)throw new ha("XalignOverflow","Extra %1 in row of %2","&",this.name)}EndRow(){let t;const e=this.row,s=this.getProperty("xalignat");for(;e.lengththis.maxrow&&(this.maxrow=this.row.length),super.EndRow();const i=this.table[this.table.length-1];if(this.getProperty("zeroWidthLabel")&&i.isKind("mlabeledtr")){const t=$o.getChildren(i)[0],e=this.factory.configuration.options.tagSide,s=Object.assign({width:0},"right"===e?{lspace:"-1width"}:{}),r=this.create("node","mpadded",$o.getChildren(t),s);t.setChildren([r])}}EndTable(){if(super.EndTable(),this.center&&this.maxrow<=2){delete this.arraydef.width,delete this.global.indentalign}}}var ql;!function(t){t.NEW_DELIMITER="new-Delimiter",t.NEW_COMMAND="new-Command",t.NEW_ENVIRONMENT="new-Environment"}(ql||(ql={}));const Vl=-100,Xl={GetCSname(t,e){if("\\"!==t.GetNext())throw new ha("MissingCS","%1 must be followed by a control sequence",e);const s=aa.trimSpaces(t.GetArgument(e)).substring(1);return this.checkProtectedMacros(t,s),s},GetCsNameArgument(t,e){let s=aa.trimSpaces(t.GetArgument(e));if("\\"===s.charAt(0)&&(s=s.substring(1)),!s.match(/^(.|[a-z]+)$/i))throw new ha("IllegalControlSequenceName","Illegal control sequence name for %1",e);return this.checkProtectedMacros(t,s),s},GetArgCount(t,e){let s=t.GetBrackets(e);if(s&&(s=aa.trimSpaces(s),!s.match(/^[0-9]+$/)))throw new ha("IllegalParamNumber","Illegal number of parameters specified in %1",e);return s},GetTemplate(t,e,s){let i=t.GetNext();const r=[];let n=0,o=t.i;for(;t.i0?[n.toString()].concat(r):n;t.i++}throw new ha("MissingReplacementString","Missing replacement string for definition of %1",e)},GetParameter(t,e,s){if(null==s)return t.GetArgument(e);let i=t.i,r=0,n=!1;for(;t.it.string.substring(t.i,t.i+e.length)!==e||e.match(/\\[a-z]+$/i)&&t.string.charAt(t.i+e.length).match(/[a-z]/i)?0:(t.i+=e.length,1),checkGlobal:(t,e,s)=>t.stack.env.isGlobal?t.configuration.packageData.get("begingroup").stack.checkGlobal(e,s):s.map(e=>t.configuration.handlers.retrieve(e)),checkProtectedMacros(t,e){var s;if(null===(s=t.options.protectedMacros)||void 0===s?void 0:s.includes(e))throw new ha("ProtectedMacro","The control sequence %1 can't be redefined",`\\${e}`)},addDelimiter(t,e,s,i){const r=e.substring(1);this.checkProtectedMacros(t,r);const[n,o]=Xl.checkGlobal(t,[r,e],[ql.NEW_COMMAND,ql.NEW_DELIMITER]);r!==e&&n.remove(r),o.add(e,new Pa(e,s,i)),delete t.stack.env.isGlobal},addMacro(t,e,s,i,r=""){this.checkProtectedMacros(t,e);const n=Xl.checkGlobal(t,[e],[ql.NEW_COMMAND])[0];this.undefineDelimiter(t,"\\"+e),n.add(e,new Ba(r||e,s,i)),delete t.stack.env.isGlobal},addEnvironment(t,e,s,i){Xl.checkGlobal(t,[e],[ql.NEW_ENVIRONMENT])[0].add(e,new Ba(e,s,i)),delete t.stack.env.isGlobal},undefineMacro(t,e){const s=Xl.checkGlobal(t,[e],[ql.NEW_COMMAND])[0];s.remove(e),t.configuration.handlers.get(na.MACRO).applicable(e)&&(s.add(e,new Ba(e,()=>Ja.FALLBACK,[])),this.undefineDelimiter(t,"\\"+e)),delete t.stack.env.isGlobal},undefineDelimiter(t,e){const s=Xl.checkGlobal(t,[e],[ql.NEW_DELIMITER])[0];s.remove(e),t.configuration.handlers.get(na.DELIMITER).applicable(e)&&s.add(e,new Pa(e,null,{})),delete t.stack.env.isGlobal}};function Gl(t){if(!t||t.isInferred&&0===t.childNodes.length)return[null,null];if(t.isKind("msubsup")&&Jl(t))return[t,null];const e=$o.getChildAt(t,0);return t.isInferred&&e&&Jl(e)?(t.childNodes.splice(0,1),[e,t]):[null,t]}function Jl(t){const e=t.childNodes[0];return e&&e.isKind("mi")&&""===e.getText()}const Kl={AmsEqnArray(t,e,s,i,r,n,o,a){const l=t.GetBrackets("\\begin{"+e.getName()+"}"),c=wl.EqnArray(t,e,s,i,r,n,o,a);return va.setArrayAlign(c,l,t)},AlignAt(t,e,s,i){const r=e.getName();let n,o="",a="";const l=[];i||(n=t.GetBrackets("\\begin{"+r+"}"));const c=t.GetArgument("\\begin{"+r+"}");if(c.match(/[^0-9]/))throw new ha("PositiveIntegerArg","Argument to %1 must be a positive integer","\\begin{"+r+"}");let h=parseInt(c,10);for(;h>0;)o+="rl",a+="bt",l.push("0em 0em"),h--;const d=l.join(" ");if(i)return Kl.EqnArray(t,e,s,i,o,a,d);const u=Kl.EqnArray(t,e,s,i,o,a,d);return va.setArrayAlign(u,n,t)},Multline(t,e,s){va.checkEqnEnv(t),t.Push(e);const i=t.options.ams.multlineIndent,r=t.itemFactory.create("multline",s,t.stack);return r.arraydef={displaystyle:!0,rowspacing:".5em",columnspacing:"100%",width:t.options.ams.multlineWidth,side:t.options.tagSide,minlabelspacing:t.options.tagIndent,"data-array-padding":`${i} ${i}`,"data-width-includes-label":!0},r},XalignAt(t,e,s,i){const r=t.GetArgument("\\begin{"+e.getName()+"}");if(r.match(/[^0-9]/))throw new ha("PositiveIntegerArg","Argument to %1 must be a positive integer","\\begin{"+e.getName()+"}");const n=i?"crl":"rlc",o=i?"mbt":"btm",a=i?"fit auto auto":"auto auto fit",l=Kl.FlalignArray(t,e,s,i,!1,n,o,a,!0);return l.setProperty("xalignat",2*parseInt(r)),l},FlalignArray(t,e,s,i,r,n,o,a,l=!1){va.checkEqnEnv(t),t.Push(e),n=n.split("").join(" ").replace(/r/g,"right").replace(/l/g,"left").replace(/c/g,"center"),o=Rl(o);const c=t.itemFactory.create("flalign",e.getName(),s,i,r,t.stack);return c.arraydef={width:"100%",displaystyle:!0,columnalign:n,columnspacing:"0em",columnwidth:a,rowspacing:"3pt","data-break-align":o,side:t.options.tagSide,minlabelspacing:l?"0":t.options.tagIndent,"data-width-includes-label":!0},c.setProperty("zeroWidthLabel",l),c},HandleDeclareOp(t,e){const s=t.GetStar()?"*":"",i=Xl.GetCsNameArgument(t,e),r=t.GetArgument(e);Xl.addMacro(t,i,Kl.Macro,[`\\operatorname${s}{${r}}`]),t.Push(t.itemFactory.create("null"))},HandleOperatorName(t,e){const s=t.GetStar(),i=aa.trimSpaces(t.GetArgument(e));let r=new pa(i,Object.assign(Object.assign({},t.stack.env),{font:Yo.Variant.NORMAL,multiLetterIdentifiers:t.options.ams.operatornamePattern,operatorLetters:!0,noAutoOP:!0}),t.configuration).mml();if(r.isKind("mi")?r.removeProperty("autoOP"):r=t.create("node","TeXAtom",[r]),$o.setProperties(r,{movesupsub:s,movablelimits:!0,texClass:gr.OP}),!s){const e=t.GetNext(),s=t.i;"\\"===e&&++t.i&&"limits"!==t.GetCS()&&(t.i=s)}t.Push(t.itemFactory.create("fn",r))},SideSet(t,e){const[s,i]=Gl(t.ParseArg(e)),[r,n]=Gl(t.ParseArg(e)),o=t.ParseArg(e);let a=o;s&&(i?s.replaceChild(t.create("node","mphantom",[t.create("node","mpadded",[va.copyNode(o,t)],{width:0})]),$o.getChildAt(s,0)):(a=t.create("node","mmultiscripts",[o]),r&&$o.appendChildren(a,[$o.getChildAt(r,1)||t.create("node","none"),$o.getChildAt(r,2)||t.create("node","none")]),$o.setProperty(a,"scriptalign","left"),$o.appendChildren(a,[t.create("node","mprescripts"),$o.getChildAt(s,1)||t.create("node","none"),$o.getChildAt(s,2)||t.create("node","none")]))),r&&a===o&&(r.replaceChild(o,$o.getChildAt(r,0)),a=r);const l=t.create("node","TeXAtom",[],{texClass:gr.OP,movesupsub:!0,movablelimits:!0});i&&(s&&l.appendChild(s),l.appendChild(i)),l.appendChild(a),n&&l.appendChild(n),t.Push(l)},operatorLetter:(t,e)=>!!t.stack.env.operatorLetters&&Dl.variable(t,e),MultiIntegral(t,e,s){let i=t.GetNext();if("\\"===i){const r=t.i;i=t.GetArgument(e),t.i=r,"\\limits"===i&&(s="\\!\\!\\mathop{\\,\\,"+s+"}")}t.string=s+" "+t.string.slice(t.i),t.i=0},xArrow(t,e,s,i,r,n=0){const o={width:"+"+aa.em((i+r)/18),lspace:aa.em(i/18)},a=t.GetBrackets(e),l=t.ParseArg(e),c=t.create("node","mspace",[],{depth:".2em"});let h=t.create("token","mo",{stretchy:!0,texClass:gr.ORD},String.fromCodePoint(s));n&&h.attributes.set("minsize",aa.em(n)),h=t.create("node","mstyle",[h],{scriptlevel:0});const d=t.create("node","munderover",[h]);let u=t.create("node","mpadded",[l,c],o);if($o.setAttribute(u,"voffset","-.2em"),$o.setAttribute(u,"height","-.2em"),$o.setChild(d,d.over,u),a){const e=new pa(a,t.stack.env,t.configuration).mml(),s=t.create("node","mspace",[],{height:".75em"});u=t.create("node","mpadded",[e,s],o),$o.setAttribute(u,"voffset",".15em"),$o.setAttribute(u,"depth","-.15em"),$o.setChild(d,d.under,u)}$o.setProperty(d,"subsupOK",!0),t.Push(t.create("node","TeXAtom",[t.create("node","TeXAtom",[],{texClass:gr.NONE}),d],{texClass:gr.REL}))},HandleShove(t,e,s){const i=t.stack.Top();if("multline"!==i.kind)throw new ha("CommandOnlyAllowedInEnv","%1 only allowed in %2 environment",t.currentCS,"multline");if(i.Size())throw new ha("CommandAtTheBeginingOfLine","%1 must come at the beginning of the line",t.currentCS);i.setProperty("shove",s)},CFrac(t,e){let s=aa.trimSpaces(t.GetBrackets(e,""));const i=t.GetArgument(e),r=t.GetArgument(e),n={l:Yo.Align.LEFT,r:Yo.Align.RIGHT,"":""},o=new pa("\\strut\\textstyle{"+i+"}",t.stack.env,t.configuration).mml(),a=new pa("\\strut\\textstyle{"+r+"}",t.stack.env,t.configuration).mml(),l=t.create("node","mfrac",[o,a]);if(s=n[s],null==s)throw new ha("IllegalAlign","Illegal alignment specified in %1",t.currentCS);s&&$o.setProperties(l,{numalign:s,denomalign:s}),t.Push(l)},Genfrac(t,e,s,i,r,n){null==s&&(s=t.GetDelimiterArg(e)),null==i&&(i=t.GetDelimiterArg(e)),null==r&&(r=t.GetArgument(e)),null==n&&(n=aa.trimSpaces(t.GetArgument(e)));const o=t.ParseArg(e),a=t.ParseArg(e);let l=t.create("node","mfrac",[o,a]);if(""!==r&&$o.setAttribute(l,"linethickness",r),(s||i)&&($o.setProperty(l,"withDelims",!0),l=va.fixedFence(t.configuration,s,l,i)),""!==n){const e=parseInt(n,10),s=["D","T","S","SS"][e];if(null==s)throw new ha("BadMathStyleFor","Bad math style for %1",t.currentCS);l=t.create("node","mstyle",[l]),"D"===s?$o.setProperties(l,{displaystyle:!0,scriptlevel:0}):$o.setProperties(l,{displaystyle:!1,scriptlevel:e-1})}t.Push(l)},HandleTag(t,e){if(!t.tags.currentTag.taggable&&t.tags.env)throw new ha("CommandNotAllowedInEnv","%1 not allowed in %2 environment",t.currentCS,t.tags.env);if(t.tags.currentTag.tag)throw new ha("MultipleCommand","Multiple %1",t.currentCS);const s=t.GetStar(),i=aa.trimSpaces(t.GetArgument(e));t.tags.tag(i,s),t.Push(t.itemFactory.create("null"))},HandleNoTag:wl.HandleNoTag,HandleRef:wl.HandleRef,Macro:wl.Macro,Accent:wl.Accent,Tilde:wl.Tilde,Array:wl.Array,Spacer:wl.Spacer,NamedOp:wl.NamedOp,EqnArray:wl.EqnArray,Equation:wl.Equation};new Ha("AMSmath-mathchar0mo",Dl.mathchar0mo,{iiiint:["\u2a0c",{texClass:gr.OP}]}),new _a("AMSmath-operatorLetter",Kl.operatorLetter,/[-*]/i),new qa("AMSmath-macros",{mathring:[Kl.Accent,"02DA"],nobreakspace:Kl.Tilde,negmedspace:[Kl.Spacer,Eo.negativemediummathspace],negthickspace:[Kl.Spacer,Eo.negativethickmathspace],idotsint:[Kl.MultiIntegral,"\\int\\cdots\\int"],dddot:[Kl.Accent,"20DB"],ddddot:[Kl.Accent,"20DC"],sideset:Kl.SideSet,boxed:[Kl.Macro,"\\fbox{$\\displaystyle{#1}$}",1],tag:Kl.HandleTag,notag:Kl.HandleNoTag,eqref:[Kl.HandleRef,!0],substack:[Kl.Macro,"\\begin{subarray}{c}#1\\end{subarray}",1],injlim:[Kl.NamedOp,"inj lim"],projlim:[Kl.NamedOp,"proj lim"],varliminf:[Kl.Macro,"\\mathop{\\underline{\\mmlToken{mi}{lim}}}"],varlimsup:[Kl.Macro,"\\mathop{\\overline{\\mmlToken{mi}{lim}}}"],varinjlim:[Kl.Macro,"\\mathop{\\underrightarrow{\\mmlToken{mi}{lim}}}"],varprojlim:[Kl.Macro,"\\mathop{\\underleftarrow{\\mmlToken{mi}{lim}}}"],DeclareMathOperator:Kl.HandleDeclareOp,operatorname:Kl.HandleOperatorName,genfrac:Kl.Genfrac,frac:[Kl.Genfrac,"","","",""],tfrac:[Kl.Genfrac,"","","","1"],dfrac:[Kl.Genfrac,"","","","0"],binom:[Kl.Genfrac,"(",")","0",""],tbinom:[Kl.Genfrac,"(",")","0","1"],dbinom:[Kl.Genfrac,"(",")","0","0"],cfrac:Kl.CFrac,shoveleft:[Kl.HandleShove,Yo.Align.LEFT],shoveright:[Kl.HandleShove,Yo.Align.RIGHT],xrightarrow:[Kl.xArrow,8594,5,10],xleftarrow:[Kl.xArrow,8592,10,5]}),new Va("AMSmath-environment",Dl.environment,{"equation*":[Kl.Equation,null,!1],"eqnarray*":[Kl.EqnArray,null,!1,!0,"rcl","bmt",va.cols(0,Eo.thickmathspace),".5em"],align:[Kl.EqnArray,null,!0,!0,"rl","bt",va.cols(0,2)],"align*":[Kl.EqnArray,null,!1,!0,"rl","bt",va.cols(0,2)],multline:[Kl.Multline,null,!0],"multline*":[Kl.Multline,null,!1],split:[Kl.EqnArray,null,!1,!1,"rl","bt",va.cols(0)],gather:[Kl.EqnArray,null,!0,!0,"c","m"],"gather*":[Kl.EqnArray,null,!1,!0,"c","m"],alignat:[Kl.AlignAt,null,!0,!0],"alignat*":[Kl.AlignAt,null,!1,!0],alignedat:[Kl.AlignAt,null,!1,!1],aligned:[Kl.AmsEqnArray,null,null,null,"rl","bt",va.cols(0,2),".5em","D"],gathered:[Kl.AmsEqnArray,null,null,null,"c","m",null,".5em","D"],xalignat:[Kl.XalignAt,null,!0,!0],"xalignat*":[Kl.XalignAt,null,!1,!0],xxalignat:[Kl.XalignAt,null,!1,!1],flalign:[Kl.FlalignArray,null,!0,!1,!0,"rlc","btm","auto auto fit"],"flalign*":[Kl.FlalignArray,null,!1,!1,!0,"rlc","btm","auto auto fit"],subarray:[Kl.Array,null,null,null,null,va.cols(0),"0.1em","S",!0],smallmatrix:[Kl.Array,null,null,null,"c",va.cols(1/3),".2em","S",!0],matrix:[Kl.Array,null,null,null,"c"],pmatrix:[Kl.Array,null,"(",")","c"],bmatrix:[Kl.Array,null,"[","]","c"],Bmatrix:[Kl.Array,null,"\\{","\\}","c"],vmatrix:[Kl.Array,null,"\\vert","\\vert","c"],Vmatrix:[Kl.Array,null,"\\Vert","\\Vert","c"],cases:[Kl.Array,null,"\\{",".","ll",null,".2em","T"]}),new Wa("AMSmath-delimiter",Dl.delimiter,{"\\lvert":["|",{texClass:gr.OPEN}],"\\rvert":["|",{texClass:gr.CLOSE}],"\\lVert":["\u2016",{texClass:gr.OPEN}],"\\rVert":["\u2016",{texClass:gr.CLOSE}]}),new Ha("AMSsymbols-mathchar0mi",Dl.mathchar0mi,{digamma:"\u03dd",varkappa:"\u03f0",varGamma:["\u0393",{mathvariant:Yo.Variant.ITALIC}],varDelta:["\u0394",{mathvariant:Yo.Variant.ITALIC}],varTheta:["\u0398",{mathvariant:Yo.Variant.ITALIC}],varLambda:["\u039b",{mathvariant:Yo.Variant.ITALIC}],varXi:["\u039e",{mathvariant:Yo.Variant.ITALIC}],varPi:["\u03a0",{mathvariant:Yo.Variant.ITALIC}],varSigma:["\u03a3",{mathvariant:Yo.Variant.ITALIC}],varUpsilon:["\u03a5",{mathvariant:Yo.Variant.ITALIC}],varPhi:["\u03a6",{mathvariant:Yo.Variant.ITALIC}],varPsi:["\u03a8",{mathvariant:Yo.Variant.ITALIC}],varOmega:["\u03a9",{mathvariant:Yo.Variant.ITALIC}],beth:"\u2136",gimel:"\u2137",daleth:"\u2138",backprime:["\u2035",{variantForm:!0}],hslash:"\u210f",varnothing:["\u2205",{variantForm:!0}],blacktriangle:"\u25b4",triangledown:["\u25bd",{variantForm:!0}],blacktriangledown:"\u25be",square:"\u25fb",Box:"\u25fb",blacksquare:"\u25fc",lozenge:"\u25ca",Diamond:"\u25ca",blacklozenge:"\u29eb",circledS:["\u24c8",{mathvariant:Yo.Variant.NORMAL}],bigstar:"\u2605",sphericalangle:"\u2222",measuredangle:"\u2221",nexists:"\u2204",complement:"\u2201",mho:"\u2127",eth:["\xf0",{mathvariant:Yo.Variant.NORMAL}],Finv:"\u2132",diagup:"\u2571",Game:"\u2141",diagdown:"\u2572",Bbbk:["k",{mathvariant:Yo.Variant.DOUBLESTRUCK}],yen:"\xa5",circledR:"\xae",checkmark:"\u2713",maltese:"\u2720"}),new Ha("AMSsymbols-mathchar0mo",Dl.mathchar0mo,{dotplus:"\u2214",ltimes:"\u22c9",smallsetminus:["\u2216",{variantForm:!0}],rtimes:"\u22ca",Cap:"\u22d2",doublecap:"\u22d2",leftthreetimes:"\u22cb",Cup:"\u22d3",doublecup:"\u22d3",rightthreetimes:"\u22cc",barwedge:"\u22bc",curlywedge:"\u22cf",veebar:"\u22bb",curlyvee:"\u22ce",doublebarwedge:"\u2a5e",boxminus:"\u229f",circleddash:"\u229d",boxtimes:"\u22a0",circledast:"\u229b",boxdot:"\u22a1",circledcirc:"\u229a",boxplus:"\u229e",centerdot:["\u22c5",{variantForm:!0}],divideontimes:"\u22c7",intercal:"\u22ba",leqq:"\u2266",geqq:"\u2267",leqslant:"\u2a7d",geqslant:"\u2a7e",eqslantless:"\u2a95",eqslantgtr:"\u2a96",lesssim:"\u2272",gtrsim:"\u2273",lessapprox:"\u2a85",gtrapprox:"\u2a86",approxeq:"\u224a",lessdot:"\u22d6",gtrdot:"\u22d7",lll:"\u22d8",llless:"\u22d8",ggg:"\u22d9",gggtr:"\u22d9",lessgtr:"\u2276",gtrless:"\u2277",lesseqgtr:"\u22da",gtreqless:"\u22db",lesseqqgtr:"\u2a8b",gtreqqless:"\u2a8c",doteqdot:"\u2251",Doteq:"\u2251",eqcirc:"\u2256",risingdotseq:"\u2253",circeq:"\u2257",fallingdotseq:"\u2252",triangleq:"\u225c",backsim:"\u223d",thicksim:["\u223c",{variantForm:!0}],backsimeq:"\u22cd",thickapprox:["\u2248",{variantForm:!0}],subseteqq:"\u2ac5",supseteqq:"\u2ac6",Subset:"\u22d0",Supset:"\u22d1",sqsubset:"\u228f",sqsupset:"\u2290",preccurlyeq:"\u227c",succcurlyeq:"\u227d",curlyeqprec:"\u22de",curlyeqsucc:"\u22df",precsim:"\u227e",succsim:"\u227f",precapprox:"\u2ab7",succapprox:"\u2ab8",vartriangleleft:"\u22b2",lhd:"\u22b2",vartriangleright:"\u22b3",rhd:"\u22b3",trianglelefteq:"\u22b4",unlhd:"\u22b4",trianglerighteq:"\u22b5",unrhd:"\u22b5",vDash:"\u22a8",Vdash:"\u22a9",Vvdash:"\u22aa",smallsmile:["\u2323",{variantForm:!0}],shortmid:["\u2223",{variantForm:!0}],smallfrown:["\u2322",{variantForm:!0}],shortparallel:["\u2225",{variantForm:!0}],bumpeq:"\u224f",between:"\u226c",Bumpeq:"\u224e",pitchfork:"\u22d4",varpropto:["\u221d",{variantForm:!0}],backepsilon:"\u220d",blacktriangleleft:"\u25c2",blacktriangleright:"\u25b8",therefore:"\u2234",because:"\u2235",eqsim:"\u2242",vartriangle:["\u25b3",{variantForm:!0}],Join:"\u22c8",nless:"\u226e",ngtr:"\u226f",nleq:"\u2270",ngeq:"\u2271",nleqslant:["\u2a87",{variantForm:!0}],ngeqslant:["\u2a88",{variantForm:!0}],nleqq:["\u2270",{variantForm:!0}],ngeqq:["\u2271",{variantForm:!0}],lneq:"\u2a87",gneq:"\u2a88",lneqq:"\u2268",gneqq:"\u2269",lvertneqq:["\u2268",{variantForm:!0}],gvertneqq:["\u2269",{variantForm:!0}],lnsim:"\u22e6",gnsim:"\u22e7",lnapprox:"\u2a89",gnapprox:"\u2a8a",nprec:"\u2280",nsucc:"\u2281",npreceq:["\u22e0",{variantForm:!0}],nsucceq:["\u22e1",{variantForm:!0}],precneqq:"\u2ab5",succneqq:"\u2ab6",precnsim:"\u22e8",succnsim:"\u22e9",precnapprox:"\u2ab9",succnapprox:"\u2aba",nsim:"\u2241",ncong:"\u2247",nshortmid:["\u2224",{variantForm:!0}],nshortparallel:["\u2226",{variantForm:!0}],nmid:"\u2224",nparallel:"\u2226",nvdash:"\u22ac",nvDash:"\u22ad",nVdash:"\u22ae",nVDash:"\u22af",ntriangleleft:"\u22ea",ntriangleright:"\u22eb",ntrianglelefteq:"\u22ec",ntrianglerighteq:"\u22ed",nsubseteq:"\u2288",nsupseteq:"\u2289",nsubseteqq:["\u2288",{variantForm:!0}],nsupseteqq:["\u2289",{variantForm:!0}],subsetneq:"\u228a",supsetneq:"\u228b",varsubsetneq:["\u228a",{variantForm:!0}],varsupsetneq:["\u228b",{variantForm:!0}],subsetneqq:"\u2acb",supsetneqq:"\u2acc",varsubsetneqq:["\u2acb",{variantForm:!0}],varsupsetneqq:["\u2acc",{variantForm:!0}],leftleftarrows:"\u21c7",rightrightarrows:"\u21c9",leftrightarrows:"\u21c6",rightleftarrows:"\u21c4",Lleftarrow:"\u21da",Rrightarrow:"\u21db",twoheadleftarrow:"\u219e",twoheadrightarrow:"\u21a0",leftarrowtail:"\u21a2",rightarrowtail:"\u21a3",looparrowleft:"\u21ab",looparrowright:"\u21ac",leftrightharpoons:"\u21cb",rightleftharpoons:["\u21cc",{variantForm:!0}],curvearrowleft:"\u21b6",curvearrowright:"\u21b7",circlearrowleft:"\u21ba",circlearrowright:"\u21bb",Lsh:"\u21b0",Rsh:"\u21b1",upuparrows:"\u21c8",downdownarrows:"\u21ca",upharpoonleft:"\u21bf",upharpoonright:"\u21be",downharpoonleft:"\u21c3",restriction:"\u21be",multimap:"\u22b8",downharpoonright:"\u21c2",leftrightsquigarrow:"\u21ad",rightsquigarrow:"\u21dd",leadsto:"\u21dd",dashrightarrow:"\u21e2",dashleftarrow:"\u21e0",nleftarrow:"\u219a",nrightarrow:"\u219b",nLeftarrow:"\u21cd",nRightarrow:"\u21cf",nleftrightarrow:"\u21ae",nLeftrightarrow:"\u21ce"}),new Wa("AMSsymbols-delimiter",Dl.delimiter,{"\\ulcorner":"\u231c","\\urcorner":"\u231d","\\llcorner":"\u231e","\\lrcorner":"\u231f"}),new qa("AMSsymbols-macros",{implies:[Kl.Macro,"\\;\\Longrightarrow\\;"],impliedby:[Kl.Macro,"\\;\\Longleftarrow\\;"]});class $l extends ua{get kind(){return"beginEnv"}get isOpen(){return!0}checkItem(t){if(t.isKind("end")){if(t.getName()!==this.getName())throw new ha("EnvBadEnd","\\begin{%1} ended with \\end{%2}",this.getName(),t.getName());return[[this.factory.create("mml",this.toMml())],!0]}if(t.isKind("stop"))throw new ha("EnvMissingEnd","Missing \\end{%1}",this.getName());return super.checkItem(t)}}const Yl={NewCommand(t,e){const s=Xl.GetCsNameArgument(t,e),i=Xl.GetArgCount(t,e),r=t.GetBrackets(e),n=t.GetArgument(e);Xl.addMacro(t,s,Yl.Macro,[n,i,r]),t.Push(t.itemFactory.create("null"))},NewEnvironment(t,e){const s=aa.trimSpaces(t.GetArgument(e)),i=Xl.GetArgCount(t,e),r=t.GetBrackets(e),n=t.GetArgument(e),o=t.GetArgument(e);Xl.addEnvironment(t,s,Yl.BeginEnv,[!0,n,o,i,r]),t.Push(t.itemFactory.create("null"))},MacroDef(t,e){const s=Xl.GetCSname(t,e),i=Xl.GetTemplate(t,e,"\\"+s),r=t.GetArgument(e);i instanceof Array?Xl.addMacro(t,s,Yl.MacroWithTemplate,[r].concat(i)):Xl.addMacro(t,s,Yl.Macro,[r,i]),t.Push(t.itemFactory.create("null"))},Let(t,e){const s=Xl.GetCSname(t,e);let i=t.GetNext();"="===i&&(t.i++,i=t.GetNext());const r=t.configuration.handlers;if(t.Push(t.itemFactory.create("null")),"\\"===i){if(s===(e=Xl.GetCSname(t,e)))return;const i=r.get(na.MACRO).applicable(e);if(i instanceof za){const r=i.lookup(e);return void Xl.addMacro(t,s,r.func,r.args,r.token)}if(i instanceof Ha&&!(i instanceof Wa)){const r=i.lookup(e),n=t=>i.parser(t,r);return void Xl.addMacro(t,s,n,[s,r.char])}const n=r.get(na.DELIMITER).lookup("\\"+e);return n?void Xl.addDelimiter(t,"\\"+s,n.char,n.attributes):(Xl.checkProtectedMacros(t,s),Xl.undefineMacro(t,s),void Xl.undefineDelimiter(t,"\\"+s))}t.i++;const n=r.get(na.DELIMITER).lookup(i);n?Xl.addDelimiter(t,"\\"+s,n.char,n.attributes):Xl.addMacro(t,s,Yl.Macro,[i])},MacroWithTemplate(t,e,s,i,...r){const n=parseInt(i,10);if(r.length){const i=[];if(t.GetNext(),r[0]&&!Xl.MatchParam(t,r[0]))throw new ha("MismatchUseDef","Use of %1 doesn't match its definition",e);if(n){for(let s=0;snc(t,e,r))):nc(t,e,r)}}function nc(t,e,s){const i=Qa.get(s);if(i){let r=ic[e]||{};i.options&&1===Object.keys(i.options).length&&i.options[s]&&(r={[s]:r}),t.configuration.add(s,t,r);const n=t.parseOptions.packageData.get("require").configured;i.preprocessors.length&&!n.has(s)&&(n.set(s,!0),eo.retryAfter(Promise.resolve()))}}function oc(t,e){var s,i;const r=t.options.require,n=r.allow,o=("["===e.substring(0,1)?"":r.prefix)+e;if(!(Object.hasOwn(n,o)?n[o]:Object.hasOwn(n,e)?n[e]:r.defaultAllow))throw new ha("BadRequire",'Extension "%1" is not allowed to be loaded',o);const a=gi.packages.get(o);if(a||eo.retryAfter(Ti.load(o).catch(t=>{})),a.hasFailed)throw new ha("RequireFail",'Extension "%1" failed to load',e);const l=null===(s=Ai[o])||void 0===s?void 0:s.rendererExtensions,c=null===(i=Vi.startup.document)||void 0===i?void 0:i.menu;l&&c&&c.addRequiredExtensions(l),rc(t.configuration.packageData.get("require").jax,o)}const ac={Require(t,e){const s=t.GetArgument(e);if(s.match(/[^_a-zA-Z0-9]/)||""===s)throw new ha("BadPackageName","Argument for %1 is not a valid package name",e);oc(t,s),t.Push(t.itemFactory.create("null"))}},lc={require:{allow:ki({base:!1,autoload:!1,configmacros:!1,tagformat:!1,setoptions:!1,texhtml:!1}),defaultAllow:!0,prefix:"tex"}};new qa("require",{require:ac.Require});const cc=$a.create("require",{[ra.HANDLER]:{[na.MACRO]:["require"]},[ra.CONFIG]:function(t,e){e.parseOptions.packageData.set("require",{jax:e,required:[...e.options.packages],configured:new Map});const s=e.parseOptions.options.require,i=s.prefix;if(i.match(/[^_a-zA-Z0-9]/))throw Error("Illegal characters used in \\require prefix");Ai.paths[i]||(Ai.paths[i]="[mathjax]/input/tex/extensions"),s.prefix="["+i+"]/"},[ra.OPTIONS]:lc});function hc(t,e,s,i){if(gi.packages.has(t.options.require.prefix+s)){const r=t.options.autoload[s],[n,o]=2===r.length&&Array.isArray(r[0])?r:[r,[]];for(const t of n)dc.remove(t);for(const t of o)uc.remove(t);t.string=(i?e+" ":"\\begin{"+e.slice(1)+"}")+t.string.slice(t.i),t.i=0}oc(t,s)}const dc=new qa("autoload-macros",{}),uc=new qa("autoload-environments",{}),pc=$a.create("autoload",{[ra.HANDLER]:{[na.MACRO]:["autoload-macros"],[na.ENVIRONMENT]:["autoload-environments"]},[ra.OPTIONS]:{autoload:ki({action:["toggle","mathtip","texttip"],amscd:[[],["CD"]],bbox:["bbox"],boldsymbol:["boldsymbol"],braket:["bra","ket","braket","set","Bra","Ket","Braket","Set","ketbra","Ketbra"],bussproofs:[[],["prooftree"]],cancel:["cancel","bcancel","xcancel","cancelto"],color:["color","definecolor","textcolor","colorbox","fcolorbox"],enclose:["enclose"],extpfeil:["xtwoheadrightarrow","xtwoheadleftarrow","xmapsto","xlongequal","xtofrom","Newextarrow"],html:["data","href","class","style","cssId"],mhchem:["ce","pu"],newcommand:["newcommand","renewcommand","newenvironment","renewenvironment","def","let"],unicode:["unicode","U","char"],verb:["verb"]})},[ra.CONFIG]:function(t,e){const s=e.parseOptions,i=s.handlers.get(na.MACRO),r=s.handlers.get(na.ENVIRONMENT),n=s.options.autoload;s.packageData.set("autoload",{Autoload:hc});for(const t of Object.keys(n)){const e=n[t],[s,o]=2===e.length&&Array.isArray(e[0])?e:[e,[]];for(const e of s)i.lookup(e)&&"color"!==e||dc.add(e,new Ba(e,hc,[t,!0]));for(const e of o)r.lookup(e)||uc.add(e,new Ba(e,hc,[t,!1]))}s.packageData.get("require")||cc.config(t,e)},[ra.INIT]:function(t){t.options.require||Fi(t.options,cc.options)},[ra.PRIORITY]:10}),mc="configmacros-map",fc="configmacros-active-map",gc="configmacros-env-map";function bc(t,e,s){const i=s.parseOptions.handlers.retrieve(e),r=s.parseOptions.options[t];for(const t of Object.keys(r)){const e="string"==typeof r[t]?[r[t]]:r[t],s=Array.isArray(e[2])?new Ba(t,Ql.MacroWithTemplate,e.slice(0,2).concat(e[2])):new Ba(t,Ql.Macro,e);i.add(t,s)}}const Ec=$a.create("configmacros",{[ra.INIT]:function(t){new za(fc,{}),new qa(mc,{}),new Va(gc,Dl.environment,{}),t.append($a.local({handler:{[na.CHARACTER]:[fc],[na.MACRO]:[mc],[na.ENVIRONMENT]:[gc]},priority:3}))},[ra.CONFIG]:function(t,e){!function(t){bc("active",fc,t)}(e),function(t){bc("macros",mc,t)}(e),function(t){const e=t.parseOptions.handlers.retrieve(gc),s=t.parseOptions.options.environments;for(const t of Object.keys(s))e.add(t,new Ba(t,Ql.BeginEnv,[!0].concat(s[t])))}(e)},[ra.ITEMS]:{[$l.prototype.kind]:$l},[ra.OPTIONS]:{active:ki({}),macros:ki({}),environments:ki({})}});const xc=$a.create("noundefined",{[ra.FALLBACK]:{[na.MACRO]:function(t,e){const s=t.create("text","\\"+e),i=t.options.noundefined,r={};for(const t of["color","background","size"])i[t]&&(r["math"+t]=i[t]);t.Push(t.create("node","mtext",[],r,s))}},[ra.OPTIONS]:{noundefined:{color:"red",background:"",size:""}},[ra.PRIORITY]:3});class yc extends pa{get texParser(){return this.configuration.packageData.get("textmacros").texParser}get tags(){return this.texParser.tags}constructor(t,e,s,i){super(t,e,s),this.level=i}mml(){return this.copyLists(),this.configuration.popParser(),null!=this.level?this.create("node","mstyle",this.nodes,{displaystyle:!1,scriptlevel:this.level}):1===this.nodes.length?this.nodes[0]:this.create("node","mrow",this.nodes)}copyLists(){const t=this.texParser.configuration;for(const[e,s]of Object.entries(this.configuration.nodeLists))for(const i of s)t.addNode(e,i);this.configuration.nodeLists={}}Parse(){this.text="",this.nodes=[],this.envStack=[],super.Parse()}saveText(){if(this.text){const t=this.stack.env.mathvariant,e=va.internalText(this,this.text,t?{mathvariant:t}:{});this.text="",this.Push(e)}}Push(t){if(this.text&&this.saveText(),t instanceof el)return super.Push(t);t instanceof ml?this.stack.env.mathcolor=this.stack.env.color:t instanceof vr&&(this.addAttributes(t),this.nodes.push(t))}PushMath(t){const e=this.stack.env;for(const s of["mathsize","mathcolor"])e[s]&&!t.attributes.hasExplicit(s)&&(t.isToken||t.isKind("mstyle")||(t=this.create("node","mstyle",[t])),$o.setAttribute(t,s,e[s]));t.isInferred&&(t=this.create("node","mrow",t.childNodes)),t.isKind("TeXAtom")||(t=this.create("node","TeXAtom",[t])),this.nodes.push(t)}addAttributes(t){const e=this.stack.env;if(t.isToken)for(const s of["mathsize","mathcolor","mathvariant"])e[s]&&!t.attributes.hasExplicit(s)&&$o.setAttribute(t,s,e[s])}ParseTextArg(t,e){const s=this.GetArgument(t);return e=Object.assign(Object.assign({},this.stack.env),e),new yc(s,e,this.configuration).mml()}ParseArg(t){return new yc(this.GetArgument(t),this.stack.env,this.configuration).mml()}Error(t,e,...s){throw new ha(t,e,...s)}}const Nc={Comment(t,e){for(;t.i":[Nc.Spacer,Eo.mediummathspace],";":[Nc.Spacer,Eo.thickmathspace],"!":[Nc.Spacer,Eo.negativethinmathspace],enspace:[Nc.Spacer,.5],quad:[Nc.Spacer,1],qquad:[Nc.Spacer,2],thinspace:[Nc.Spacer,Eo.thinmathspace],negthinspace:[Nc.Spacer,Eo.negativethinmathspace],hskip:Nc.Hskip,hspace:Nc.Hskip,kern:Nc.Hskip,mskip:Nc.Hskip,mspace:Nc.Hskip,mkern:Nc.Hskip,rule:Nc.rule,Rule:[Nc.Rule],Space:[Nc.Rule,"blank"],color:Nc.CheckAutoload,textcolor:Nc.CheckAutoload,colorbox:Nc.CheckAutoload,fcolorbox:Nc.CheckAutoload,href:Nc.CheckAutoload,style:Nc.CheckAutoload,class:Nc.CheckAutoload,data:Nc.CheckAutoload,cssId:Nc.CheckAutoload,unicode:Nc.CheckAutoload,U:Nc.CheckAutoload,char:Nc.CheckAutoload,ref:[Nc.HandleRef,!1],eqref:[Nc.HandleRef,!0],underline:[Nc.UnderOver,"2015"],llap:Nc.Lap,rlap:Nc.Lap,phantom:Nc.Phantom,vphantom:[Nc.Phantom,1,0],hphantom:[Nc.Phantom,0,1],smash:Nc.Smash,mmlToken:Nc.MmlToken});const Tc=$a.create("text-base",{[ra.PARSER]:"text",[ra.PRIORITY]:1,[ra.HANDLER]:{[na.CHARACTER]:["command","text-special"],[na.MACRO]:["text-macros"]},[ra.FALLBACK]:{[na.CHARACTER]:(t,e)=>{t.text+=e},[na.MACRO]:(t,e)=>{const s=t.texParser,i=s.lookup(na.MACRO,e);i&&i._func!==Nc.Macro&&t.Error("MathMacro","%1 is only supported in math mode","\\"+e),s.parse(na.MACRO,[t,e])}},[ra.ITEMS]:{[tl.prototype.kind]:tl,[el.prototype.kind]:el,[bl.prototype.kind]:bl,[ml.prototype.kind]:ml}});function Cc(t,e,s,i){const r=t.configuration.packageData.get("textmacros");return t instanceof yc||(r.texParser=t),r.parseOptions.clear(),[new yc(e,i?{mathvariant:i}:{},r.parseOptions,s).mml()]}const Ac=$a.create("textmacros",{[ra.PRIORITY]:1,[ra.CONFIG]:(t,e)=>{const s=new Za(e.parseOptions.options.textmacros.packages,["tex","text"]);s.init();const i=new La(s,[]);i.options=e.parseOptions.options,s.config(e),Da.addTags(s.tags),i.tags=Da.getDefault(),i.tags.configuration=i,i.packageData=e.parseOptions.packageData,i.packageData.set("textmacros",{textConf:s,parseOptions:i,jax:e,texParser:null}),i.options.internalMath=Cc},[ra.PREPROCESSORS]:[t=>{const e=t.data.packageData.get("textmacros");e.parseOptions.nodeFactory.setMmlFactory(e.jax.mmlFactory),e.parseOptions.clear()}],[ra.OPTIONS]:{textmacros:{packages:["text-base"]}}});MathJax.loader&&MathJax.loader.checkVersion("input/tex",ri,"input"),hi({_:{input:{tex_ts:ee,tex:{ColumnParser:qt,Configuration:$t,FilterUtil:Dt,FindTeX:wt,HandlerTypes:Pt,MapHandler:Kt,NodeFactory:Wt,NodeUtil:kt,ParseMethods:Zt,ParseOptions:Vt,ParseUtil:zt,Stack:Ft,StackItem:_t,StackItemFactory:Ht,Tags:Xt,TexConstants:Ot,TexError:jt,TexParser:Ut,Token:Gt,TokenMap:Jt,UnitUtil:Bt,ams:{AmsConfiguration:le,AmsItems:se,AmsMethods:re},autoload:{AutoloadConfiguration:he},base:{BaseConfiguration:te,BaseItems:Yt,BaseMethods:Qt},configmacros:{ConfigMacrosConfiguration:de},newcommand:{NewcommandConfiguration:ae,NewcommandItems:ne,NewcommandMethods:oe,NewcommandUtil:ie},noundefined:{NoUndefinedConfiguration:ue},require:{RequireConfiguration:ce},textmacros:{TextMacrosConfiguration:fe,TextMacrosMethods:me,TextParser:pe}}}}}),Ti.preLoaded("input/tex-base","[tex]/ams","[tex]/newcommand","[tex]/textmacros","[tex]/noundefined","[tex]/require","[tex]/autoload","[tex]/configmacros"),function(t=[],e=!0){if(MathJax.startup){e&&(MathJax.startup.registerConstructor("tex",MathJax._.input.tex_ts.TeX),MathJax.startup.useInput("tex")),MathJax.config.tex||(MathJax.config.tex={});let s=MathJax.config.tex.packages;MathJax.config.tex.packages=t,s&&(Array.isArray(s)&&(s={"[+]":s.filter(e=>!t.includes(e))}),Bi(MathJax.config.tex,{packages:s}))}}(["base","ams","newcommand","textmacros","noundefined","require","autoload","configmacros"]);const Lc="http://www.w3.org/1998/Math/MathML";class Sc extends Zi{findMath(t){const e=new Set;this.findMathNodes(t,e),this.findMathPrefixed(t,e);const s=this.adaptor.root(this.adaptor.document);return"html"===this.adaptor.kind(s)&&0===e.size&&this.findMathNS(t,e),this.processMath(e)}findMathNodes(t,e){for(const s of this.adaptor.tags(t,"math"))e.add(s)}findMathPrefixed(t,e){const s=this.adaptor.root(this.adaptor.document);for(const i of this.adaptor.allAttributes(s))if("xmlns:"===i.name.substring(0,6)&&i.value===Lc){const s=i.name.substring(6);for(const i of this.adaptor.tags(t,s+":math"))e.add(i)}}findMathNS(t,e){for(const s of this.adaptor.tags(t,"math",Lc))e.add(s)}processMath(t){const e=this.adaptor,s=[];for(const i of t.values()){if("mjx-assistive-mml"===e.kind(e.parent(i)))continue;const t="block"===e.getAttribute(i,"display")||"display"===e.getAttribute(i,"mode"),r={node:i,n:0,delim:""},n={node:i,n:0,delim:""};s.push({math:e.outerHTML(i),start:r,end:n,display:t})}return s}}Sc.OPTIONS={};class Rc{constructor(t={}){const e=this.constructor;this.options=ji(Fi({},e.OPTIONS),t)}setMmlFactory(t){this.factory=t}compile(t){const e=this.makeNode(t);return e.verifyTree(this.options.verify),e.setInheritedAttributes({},!1,0,!1),e.walkTree(this.markMrows),e}makeNode(t){const e=this.adaptor;let s=!1;const i=e.kind(t).replace(/^.*:/,"");let r=e.getAttribute(t,"data-mjx-texclass")||"";r&&(r=this.filterAttribute("data-mjx-texclass",r)||"");let n=r&&"mrow"===i?"TeXAtom":i;for(const o of this.filterClassList(e.allClasses(t)))o.match(/^MJX-TeXAtom-/)&&"mrow"===i?(r=o.substring(12),n="TeXAtom"):"MJX-fixedlimits"===o&&(s=!0);return this.factory.getNodeClass(n)?this.createMml(n,t,r,s):this.unknownNode(n,t)}createMml(t,e,s,i){const r=this.factory.create(t);return"TeXAtom"!==t||"OP"!==s||i||(r.setProperty("movesupsub",!0),r.attributes.setInherited("movablelimits",!0)),s&&(r.texClass=gr[s],r.setProperty("texClass",r.texClass)),this.addAttributes(r,e),this.checkClass(r,e),this.addChildren(r,e),r}unknownNode(t,e){return this.factory.getNodeClass("html")&&this.options.allowHtmlInTokenNodes?this.factory.create("html").setHTML(e,this.adaptor):(this.error('Unknown node type "'+t+'"'),null)}addAttributes(t,e){let s=!1;for(const i of this.adaptor.allAttributes(e)){const e=i.name,r=this.filterAttribute(e,i.value);if(null!==r&&"xmlns"!==e)if("data-mjx-"===e.substring(0,9))switch(e.substring(9)){case"alternate":t.setProperty("variantForm",!0);break;case"variant":t.attributes.set("mathvariant",r),t.setProperty("ignore-variant",!0),s=!0;break;case"smallmatrix":t.setProperty("smallmatrix",!0),t.setProperty("useHeight",!1);break;case"mathaccent":t.setProperty("mathaccent","true"===r);break;case"auto-op":t.setProperty("autoOP","true"===r);break;case"script-align":t.setProperty("scriptalign",r);break;case"vbox":t.setProperty("vbox",r);break;default:t.attributes.set(e,r)}else if("class"!==e){const i=r.toLowerCase();"true"===i||"false"===i?t.attributes.set(e,"true"===i):s&&"mathvariant"===e||t.attributes.set(e,r)}}}filterAttribute(t,e){return e}filterClassList(t){return t}addChildren(t,e){if(0===t.arity)return;const s=this.adaptor;for(const i of s.childNodes(e)){const e=s.kind(i);if("#comment"!==e)if("#text"===e)this.addText(t,i);else if(t.isKind("annotation-xml"))t.appendChild(this.factory.create("XML").setXML(i,s));else{const e=t.appendChild(this.makeNode(i));0===e.arity&&s.childNodes(i).length&&!e.isKind("html")&&(this.options.fixMisplacedChildren?this.addChildren(t,i):e.mError("There should not be children for "+e.kind+" nodes",this.options.verify,!0))}}t.isToken&&this.trimSpace(t)}addText(t,e){let s=this.adaptor.value(e);(t.isToken||t.getProperty("isChars"))&&t.arity?(t.isToken&&(s=Mo(s),s=this.normalizeSpace(s)),t.appendChild(this.factory.create("text").setText(s))):s.match(/\S/)&&this.error('Unexpected text node "'+s+'"')}checkClass(t,e){const s=[];for(const i of this.filterClassList(this.adaptor.allClasses(e)))"MJX-"===i.substring(0,4)?"MJX-variant"===i?t.setProperty("variantForm",!0):"MJX-TeXAtom"!==i.substring(0,11)&&t.attributes.set("mathvariant",this.fixCalligraphic(i.substring(3))):s.push(i);s.length&&t.attributes.set("class",s.join(" "))}fixCalligraphic(t){return t.replace(/caligraphic/,"calligraphic")}markMrows(t){if(t.isKind("mrow")&&!t.isInferred&&t.childNodes.length>=2){const e=t.childNodes[0],s=t.childNodes[t.childNodes.length-1];e.isKind("mo")&&e.attributes.get("fence")&&e.attributes.get("stretchy")&&s.isKind("mo")&&s.attributes.get("fence")&&s.attributes.get("stretchy")&&(e.childNodes.length&&t.setProperty("open",e.getText()),s.childNodes.length&&t.setProperty("close",s.getText()))}}normalizeSpace(t){return t.replace(/[\t\n\r]/g," ").replace(/ +/g," ")}trimSpace(t){let e=t.childNodes[0];e&&(e.isKind("text")&&e.setText(e.getText().replace(/^ +/,"")),e=t.childNodes[t.childNodes.length-1],e.isKind("text")&&e.setText(e.getText().replace(/ +$/,"")))}error(t){throw new Error(t)}}Rc.OPTIONS={MmlFactory:null,allowHtmlInTokenNodes:!1,fixMisplacedChildren:!0,verify:Object.assign({},vr.verifyDefaults),translateEntities:!0};class Mc extends tr{constructor(t={}){const[e,s,i]=Hi(t,Sc.OPTIONS,Rc.OPTIONS);super(e),this.findMathML=this.options.FindMathML||new Sc(s),this.mathml=this.options.MathMLCompile||new Rc(i),this.mmlFilters=new Ei(this.options.mmlFilters)}setAdaptor(t){super.setAdaptor(t),this.findMathML.adaptor=t,this.mathml.adaptor=t}setMmlFactory(t){super.setMmlFactory(t),this.mathml.setMmlFactory(t)}get processStrings(){return!1}compile(t,e){let s=t.start.node;if(!s||!t.end.node||this.options.forceReparse||"#text"===this.adaptor.kind(s)){let i=this.executeFilters(this.preFilters,t,e,(t.math||"").trim());"html"===this.options.parseAs&&(i=`${i}`);const r=this.checkForErrors(this.adaptor.parse(i,"text/"+this.options.parseAs)),n=this.adaptor.body(r);1!==this.adaptor.childNodes(n).length&&this.error("MathML must consist of a single element"),s=this.adaptor.remove(this.adaptor.firstChild(n)),"math"!==this.adaptor.kind(s).replace(/^[a-z]+:/,"")&&this.error("MathML must be formed by a element, not <"+this.adaptor.kind(s)+">")}s=this.executeFilters(this.mmlFilters,t,e,s);let i=this.mathml.compile(s);return i=this.executeFilters(this.postFilters,t,e,i),t.display="block"===i.attributes.get("display"),i}checkForErrors(t){const e=this.adaptor.tags(this.adaptor.body(t),"parsererror")[0];return e&&(""===this.adaptor.textContent(e)&&this.error("Error processing MathML"),this.options.parseError.call(this,e)),t}error(t){throw new Error(t)}findMath(t){return this.findMathML.findMath(t)}}Mc.NAME="MathML",Mc.OPTIONS=Fi({parseAs:"html",forceReparse:!1,mmlFilters:[],FindMathML:null,MathMLCompile:null,parseError:function(t){this.error(this.adaptor.textContent(t).replace(/\n.*/g,""))}},tr.OPTIONS),MathJax.loader&&MathJax.loader.checkVersion("input/mml",ri,"input"),hi({_:{input:{mathml_ts:Ee,mathml:{FindMathML:ge,MathMLCompile:be}}}}),MathJax.loader&&MathJax.loader.pathFilters.add(t=>(t.name=t.name.replace(/\/util\/entities\/.*?\.js/,"/input/mml/entities.js"),!0)),MathJax.startup&&(MathJax.startup.registerConstructor("mml",Mc),MathJax.startup.useInput("mml"));const Ic={None:"",Vertical:"v",Horizontal:"h"},wc=Ic.Vertical,kc=Ic.Horizontal;var Oc=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};const Dc=.07,Pc=.07,Bc={dir:Ic.None};function Fc(t,e,s){return s?Fi(t,{[e]:s})[e]:t[e]}class jc{get CLASS(){return this.constructor}static charOptions(t,e){const s=t[e];if(!Array.isArray(s))throw Error(`Character data hasn't been loaded for 0x${e.toString(16).toUpperCase()}`);return 3===s.length&&(s[3]={}),s[3]}static defineDynamicFiles(t,e=""){const s={};return(t||[]).forEach(([t,i,r])=>{s[t]={extension:e,file:t,variants:i,delimiters:r||[],promise:null,failed:!1,setup:e=>{s[t].failed=!0}}}),s}static dynamicSetup(t,e,s,i={},r=null){const n=t?this.dynamicExtensions.get(t):null;(t?n.files:this.dynamicFiles)[e].setup=e=>{Object.keys(s).forEach(t=>e.defineChars(t,s[t])),e.defineDelimiters(i),t&&this.adjustDelimiters(e.delimiters,Object.keys(i),n.sizeN,n.stretchN),r&&e.addDynamicFontCss(r)}}static adjustDelimiters(t,e,s,i){e.forEach(e=>{const r=t[parseInt(e)];"dir"in r&&(r.variants&&(r.variants=this.adjustArrayIndices(r.variants,s)),r.stretchv&&(r.stretchv=this.adjustArrayIndices(r.stretchv,i)))})}static adjustArrayIndices(t,e){return t.map(t=>t<0?e-1-t:t)}static addExtension(t,e=""){const s={name:t.name,prefix:e||`[${t.name}-extension]/${this.JAX.toLowerCase()}/dynamic`,files:this.defineDynamicFiles(t.ranges,t.name),sizeN:this.defaultSizeVariants.length,stretchN:this.defaultStretchVariants.length};this.dynamicExtensions.set(t.name,s);for(const[e,s]of[["options","OPTIONS"],["variants","defaultVariants"],["variantSmp","VariantSmp"],["cssFonts","defaultCssFonts"],["accentMap","defaultAccentMap"],["moMap","defaultMoMap"],["mnMap","defaultMnMap"],["parameters","defaultParams"],["chars","defaultChars"],["sizeVariants","defaultSizeVariants"],["stretchVariants","defaultStretchVariants"]])Fc(this,s,t[e]);t.delimiters&&(Object.assign(this.defaultDelimiters,t.delimiters),this.adjustDelimiters(this.defaultDelimiters,Object.keys(t.delimiters),s.sizeN,s.stretchN))}constructor(t=null){this.variant={},this.delimiters={},this.cssFontMap={},this.cssFontPrefix="",this.remapChars={},this.skewIcFactor=.75;const e=this.CLASS;this.options=ji(Fi({},e.OPTIONS),t),this.params=Object.assign({},e.defaultParams),this.sizeVariants=[...e.defaultSizeVariants],this.stretchVariants=[...e.defaultStretchVariants],this.defineCssFonts(e.defaultCssFonts),this.cssFamilyPrefix=e.defaultCssFamilyPrefix,this.createVariants(e.defaultVariants),this.defineDelimiters(e.defaultDelimiters),Object.keys(e.defaultChars).forEach(t=>this.defineChars(t,e.defaultChars[t])),this.defineRemap("accent",e.defaultAccentMap),this.defineRemap("mo",e.defaultMoMap),this.defineRemap("mn",e.defaultMnMap),this.defineDynamicCharacters(e.dynamicFiles),e.dynamicExtensions.forEach(t=>this.defineDynamicCharacters(t.files))}setOptions(t){Fi(this.options,t)}addExtension(t,e=""){const s=this.constructor.JAX.toLowerCase(),i={name:t.name,prefix:e||`[${t.name}-extension]/${s}/dynamic`,files:this.CLASS.defineDynamicFiles(t.ranges,e),sizeN:this.sizeVariants.length,stretchN:this.stretchVariants.length};this.CLASS.dynamicExtensions.set(t.name,i),Fi(this.options,t.options||{}),Fi(this.params,t.parameters||{}),Fc(this,"sizeVariants",t.sizeVariants),Fc(this,"stretchVariants",t.stretchVariants),Fc(this.constructor,"VariantSmp",t.variantSmp),this.defineCssFonts(Fc({cssFonts:{}},"cssFonts",t.cssFonts)),this.createVariants(Fc({variants:[]},"variants",t.variants)),t.delimiters&&(this.defineDelimiters(Fc({delimiters:{}},"delimiters",t.delimiters)),this.CLASS.adjustDelimiters(this.delimiters,Object.keys(t.delimiters),i.sizeN,i.stretchN));for(const e of Object.keys(t.chars||{}))this.defineChars(e,t.chars[e]);return this.defineRemap("accent",t.accentMap),this.defineRemap("mo",t.moMap),this.defineRemap("mn",t.mnMap),t.ranges&&this.defineDynamicCharacters(i.files),[]}get styles(){return this._styles}set styles(t){this._styles=t}createVariant(t,e=null,s=null){const i={linked:[],chars:Object.create(e?this.variant[e].chars:{})};this.variant[s]&&(Object.assign(i.chars,this.variant[s].chars),this.variant[s].linked.push(i.chars),i.chars=Object.create(i.chars)),this.remapSmpChars(i.chars,t),this.variant[t]=i}remapSmpChars(t,e){const s=this.CLASS;let i=s.VariantSmp[e];if("string"==typeof i&&(i=s.VariantSmp[i]),!i)return;const r=s.SmpRemap,n=[null,null,s.SmpRemapGreekU,s.SmpRemapGreekL];for(const[e,o,a]of s.SmpRanges){const s=i[e];if(s){for(let e=o;e<=a;e++){if(930===e)continue;const i=s+e-o;t[e]=this.smpChar(r[i]||i)}if(n[e])for(const i of Object.keys(n[e]).map(t=>parseInt(t)))t[i]=this.smpChar(s+n[e][i])}}const o=i[5]||{};for(const e of Object.keys(o))t[e]=this.smpChar(i[5][e])}smpChar(t){return[,,,{smp:t}]}createVariants(t){for(const e of t)this.createVariant(e[0],e[1],e[2])}defineChars(t,e){const s=this.variant[t];Object.assign(s.chars,e);for(const t of s.linked)Object.assign(t,e)}defineCssFonts(t){Object.assign(this.cssFontMap,t);for(const e of Object.keys(t))"unknown"===this.cssFontMap[e][0]&&(this.cssFontMap[e][0]=this.options.unknownFamily)}defineDelimiters(t){Object.assign(this.delimiters,t)}defineRemap(t,e){e&&(Object.hasOwn(this.remapChars,t)||(this.remapChars[t]={}),Object.assign(this.remapChars[t],e))}defineDynamicCharacters(t){for(const e of Object.keys(t)){const s=t[e];for(const t of Object.keys(s.variants))this.defineChars(t,this.flattenRanges(s.variants[t],s));this.defineDelimiters(this.flattenRanges(s.delimiters,s))}}flattenRanges(t,e){const s={};for(const i of t)if(Array.isArray(i))for(let t=i[0];t<=i[1];t++)s[t]=e;else s[i]=e;return s}dynamicFileName(t){const e=t.extension?this.CLASS.dynamicExtensions.get(t.extension).prefix:this.options.dynamicPrefix;return t.file.match(/^(?:[/[]|[a-z]+:\/\/|[a-z]:)/i)?t.file:e+"/"+t.file.replace(/(\.js)?$/,".js")}loadDynamicFile(t){return Oc(this,void 0,void 0,function*(){return t.failed?Promise.reject(new Error(`dynamic file '${t.file}' failed to load`)):(t.promise||(t.promise=mo(this.dynamicFileName(t)).catch(e=>{t.failed=!0,console.warn(e)})),t.promise.then(()=>t.setup(this)))})}loadDynamicFiles(){const t=this.CLASS.dynamicFiles,e=Object.keys(t).map(e=>this.loadDynamicFile(t[e]));for(const t of this.CLASS.dynamicExtensions.values())e.push(...Object.keys(t.files).map(e=>this.loadDynamicFile(t.files[e])));return Promise.all(e)}loadDynamicFilesSync(){if(!eo.asyncIsSynchronous)throw Error("MathJax(loadDynamicFilesSync): mathjax.asyncLoad must be specified and synchronous\n Try importing #js/../components/require.mjs and #js/util/asyncLoad/node.js");const t=this.CLASS.dynamicFiles;Object.keys(t).forEach(e=>this.loadDynamicFileSync(t[e]));for(const t of this.CLASS.dynamicExtensions.values())Object.keys(t.files).forEach(e=>this.loadDynamicFileSync(t.files[e]))}loadDynamicFileSync(t){if(!t.promise){t.promise=Promise.resolve();try{eo.asyncLoad(this.dynamicFileName(t))}catch(e){t.failed=!0,console.warn(e)}t.setup(this)}}addDynamicFontCss(t,e){}getDelimiter(t){const e=this.delimiters[t];return e&&!("dir"in e)?(this.delimiters[t]=null,eo.asyncIsSynchronous?(this.loadDynamicFileSync(e),this.getDelimiter(t)):(Bn(this.loadDynamicFile(e)),null)):e}getSizeVariant(t,e){const s=this.getDelimiter(t);return s&&s.variants&&(e=s.variants[e]),this.sizeVariants[e]}getStretchVariant(t,e){const s=this.getDelimiter(t);return this.stretchVariants[s.stretchv?s.stretchv[e]:0]}getStretchVariants(t){return[0,1,2,3].map(e=>this.getStretchVariant(t,e))}getChar(t,e){const s=this.variant[t].chars[e];if(s&&!Array.isArray(s)){const i=this.variant[t];return delete i.chars[e],i.linked.forEach(t=>delete t[e]),eo.asyncIsSynchronous?(this.loadDynamicFileSync(s),this.getChar(t,e)):(Bn(this.loadDynamicFile(s)),null)}return s}getVariant(t){return this.variant[t]}getCssFont(t){return this.cssFontMap[t]||["serif",!1,!1]}getFamily(t){return this.cssFamilyPrefix?this.cssFamilyPrefix+", "+t:t}getRemappedChar(t,e){return(this.remapChars[t]||{})[e]}}jc.OPTIONS={unknownFamily:"serif",dynamicPrefix:"."},jc.JAX="common",jc.NAME="",jc.defaultVariants=[["normal"],["bold","normal"],["italic","normal"],["bold-italic","italic","bold"],["double-struck","bold"],["fraktur","normal"],["bold-fraktur","bold","fraktur"],["script","italic"],["bold-script","bold-italic","script"],["sans-serif","normal"],["bold-sans-serif","bold","sans-serif"],["sans-serif-italic","italic","sans-serif"],["sans-serif-bold-italic","bold-italic","bold-sans-serif"],["monospace","normal"],["-smallop","normal"],["-largeop","normal"],["-tex-calligraphic","italic"],["-tex-bold-calligraphic","bold-italic"],["-tex-oldstyle","normal"],["-tex-bold-oldstyle","bold"],["-tex-mathit","italic"],["-tex-variant","normal"]],jc.defaultCssFonts={normal:["unknown",!1,!1],bold:["unknown",!1,!0],italic:["unknown",!0,!1],"bold-italic":["unknown",!0,!0],"double-struck":["unknown",!1,!0],fraktur:["unknown",!1,!1],"bold-fraktur":["unknown",!1,!0],script:["cursive",!1,!1],"bold-script":["cursive",!1,!0],"sans-serif":["sans-serif",!1,!1],"bold-sans-serif":["sans-serif",!1,!0],"sans-serif-italic":["sans-serif",!0,!1],"sans-serif-bold-italic":["sans-serif",!0,!0],monospace:["monospace",!1,!1],"-smallop":["unknown",!1,!1],"-largeop":["unknown",!1,!1],"-tex-calligraphic":["cursive",!0,!1],"-tex-bold-calligraphic":["cursive",!0,!0],"-tex-oldstyle":["unknown",!1,!1],"-tex-bold-oldstyle":["unknown",!1,!0],"-tex-mathit":["unknown",!0,!1],"-tex-variant":["unknown",!1,!1]},jc.defaultCssFamilyPrefix="",jc.VariantSmp={bold:[119808,119834,120488,120514,120782,{988:120778,989:120779}],italic:[119860,119886,120546,120572],"bold-italic":[119912,119938,120604,120630],script:[119964,119990],"bold-script":[120016,120042],fraktur:[120068,120094],"double-struck":[120120,120146,,,120792],"bold-fraktur":[120172,120198],"sans-serif":[120224,120250,,,120802],"bold-sans-serif":[120276,120302,120662,120688,120812],"sans-serif-italic":[120328,120354],"sans-serif-bold-italic":[120380,120406,120720,120746],monospace:[120432,120458,,,120822]},jc.SmpRanges=[[0,65,90],[1,97,122],[2,913,937],[3,945,969],[4,48,57]],jc.SmpRemap={119893:8462,119965:8492,119968:8496,119969:8497,119971:8459,119972:8464,119975:8466,119976:8499,119981:8475,119994:8495,119996:8458,120004:8500,120070:8493,120075:8460,120076:8465,120085:8476,120093:8488,120122:8450,120127:8461,120133:8469,120135:8473,120136:8474,120137:8477,120145:8484},jc.SmpRemapGreekU={8711:25,1012:17},jc.SmpRemapGreekL={977:27,981:29,982:31,1008:28,1009:30,1013:26,8706:25},jc.defaultAccentMap={94:"\u02c6",126:"\u02dc",768:"\u02cb",769:"\u02ca",770:"\u02c6",771:"\u02dc",772:"\u02c9",774:"\u02d8",775:"\u02d9",776:"\xa8",778:"\u02da",780:"\u02c7",8594:"\u20d7"},jc.defaultMoMap={45:"\u2212"},jc.defaultMnMap={45:"\u2212"},jc.defaultParams={x_height:.442,quad:1,num1:.676,num2:.394,num3:.444,denom1:.686,denom2:.345,sup1:.413,sup2:.363,sup3:.289,sub1:.15,sub2:.247,sup_drop:.386,sub_drop:.05,delim1:2.39,delim2:1,axis_height:.25,rule_thickness:.06,big_op_spacing1:.111,big_op_spacing2:.167,big_op_spacing3:.2,big_op_spacing4:.6,big_op_spacing5:.1,surd_height:.06,scriptspace:.05,nulldelimiterspace:.12,delimiterfactor:901,delimitershortfall:.3,rule_factor:1.25,min_rule_thickness:1.25,separation_factor:1.75,extra_ic:.033,extender_factor:.333},jc.defaultDelimiters={},jc.defaultChars={},jc.defaultSizeVariants=[],jc.defaultStretchVariants=[],jc.dynamicFiles={},jc.dynamicExtensions=new Map;class _c extends To{static from(t,e,s=null){const i=new this;return Object.assign(i,t),i.lineLeading=e,s&&(i.indentData=s),i}constructor(t,e=null){super(t),this.indentData=null,this.isFirst=!1,this.originalL=this.L,e&&(this.start=e)}append(t){this.isFirst&&(t.originalL+=t.L,t.L=0),t.indentData&&(this.indentData=t.indentData),this.lineLeading=t.lineLeading,super.append(t),this.isFirst=t.isFirst}copy(){const t=_c.from(this,this.lineLeading);return t.indentData=this.indentData,t.lineLeading=this.lineLeading,t}getIndentData(t){let{indentalign:e,indentshift:s,indentalignfirst:i,indentshiftfirst:r,indentalignlast:n,indentshiftlast:o}=t.attributes.getAllAttributes();"indentalign"===i&&(i=t.attributes.getInherited("indentalign")),"indentshift"===r&&(r=t.attributes.getInherited("indentshift")),"indentalign"===n&&(n=e),"indentshift"===o&&(o=s),this.indentData=[[i,r],[e,s],[n,o]]}copyIndentData(t){return t.indentData.map(([t,e])=>[t,e])}}const Uc=1e6;class Hc extends Jn{breakToWidth(t,e){}}class Wc extends Hc{constructor(){super(...arguments),this.PENALTY={newline:t=>0,nobreak:t=>Uc,goodbreak:t=>t-200*this.state.depth,badbreak:t=>t+200*this.state.depth,auto:t=>t},this.FACTORS={depth:t=>t+800*this.state.depth,width:t=>t+Math.floor((this.state.width-this.state.w)/this.state.width*2500),tail:t=>t+Math.floor(this.state.width/Math.max(1e-4,this.state.mathLeft-this.state.w)*500),open:(t,e)=>{const s=e.node.prevClass;if(s===gr.BIN||s===gr.REL||s===gr.OP)return t+5e3;const i=this.getPrevious(e);if(i&&("postfix"!==i.attributes.get("form")||"nobreak"===i.attributes.get("linebreak")))return t+5e3;const r=e.node.Parent;if((null==r?void 0:r.isKind("mmultiscripts"))&&e.node===this.getFirstToken(r)){if(!!r.childNodes.filter(t=>t.isKind("mprescripts")).length)return Uc}return t-500},close:(t,e)=>{var s;const i=e.node.Parent;return!(null==i?void 0:i.isKind("msubsup"))||i.isKind("mmultiscripts")&&(null===(s=i.childNodes[1])||void 0===s?void 0:s.isKind("mprescripts"))||e.node!==this.getLastToken(i.childNodes[0])?t+500:Uc},space:(t,e)=>{const s=e;if(!s.canBreak)return Uc;const i=s.getBBox().w;return i<0?Uc:i<1?t:t-100*(i+4)},separator:t=>t+500,fuzz:t=>.99*t},this.TEXCLASS={[gr.BIN]:t=>t-250,[gr.REL]:t=>t-500}}breakToWidth(t,e){const s=this.state;this.state=this.createState(t),this.state.width=e;const i=t.breakCount;for(let s=0;s<=i;s++){(t.lineBBox[s]||t.getLineBBox(s)).w>e&&this.breakLineToWidth(t,s)}for(const[t,e]of this.state.breaks){if(null===e){const e=t.coreMO();e.setBreakStyle(e.node.attributes.get("linebreakstyle")||"before")}else t.setBreakAt(e);t.invalidateBBox()}this.state=s}createState(t){const e=t.getBBox().w;return{breaks:new Set,potential:[],width:0,w:0,prevWidth:0,prevBreak:null,depth:0,mathWidth:e,mathLeft:e}}breakLineToWidth(t,e){const s=this.state;s.potential=[],s.w=0,s.prevWidth=0,s.prevBreak=null,s.depth=0,this.visitNode(t,e)}addWidth(t,e=null){null===e&&(e=t.L+t.w+t.R),e&&(e*=t.rscale,this.state.w+=e,this.state.potential.length&&(this.state.potential[0][4]+=e),this.processBreak())}processBreak(){const t=this.state;for(;t.potential.length&&t.w>this.state.width;){const e=t.potential.pop(),[s,,i,r,n]=e;t.breaks.add(s),t.w=t.potential.reduce((t,e)=>t+e[4],r+n),t.prevBreak&&t.prevWidth+i<=t.width?(t.breaks.delete(t.prevBreak[0]),t.prevWidth+=i):t.prevWidth=i+r,t.potential.forEach(t=>t[2]-=i),t.prevBreak=e,t.mathLeft-=i}}pushBreak(t,e,s,i){var r;const n=this.state;if(!(e>=Uc||0===n.w&&0===n.prevWidth)){for(;n.potential.length&&n.potential[0][1]>this.FACTORS.fuzz(e);){const t=n.potential.shift();n.potential.length&&(n.potential[0][4]+=t[4])}n.potential.unshift([[t,i],e,n.w-((null===(r=n.prevBreak)||void 0===r?void 0:r[3])||0),s,0])}}getBorderLR(t){var e;const s=t.styleData;if(!s)return[0,0];const i=(null===(e=null==s?void 0:s.border)||void 0===e?void 0:e.width)||[0,0,0,0],r=(null==s?void 0:s.padding)||[0,0,0,0];return[i[3]+r[3],i[1]+r[1]]}getFirstToken(t){return t.isToken?t:this.getFirstToken(t.childNodes[0])}getLastToken(t){return t.isToken?t:this.getLastToken(t.childNodes[t.childNodes.length-1])}visitNode(t,e){t&&(this.state.depth++,t.node.isEmbellished&&!t.node.isKind("mo")?this.visitEmbellishedOperator(t,e):super.visitNode(t,e),this.state.depth--)}visitDefault(t,e){var s;const i=t.getLineBBox(e);if(t.node.isToken||t.node.linebreakContainer||!(null===(s=t.childNodes)||void 0===s?void 0:s[0]))this.addWidth(i);else{const[s,r]=this.getBorderLR(t);0===e&&this.addWidth(i,i.L+s),this.visitNode(t.childNodes[0],e),e===t.breakCount&&this.addWidth(i,i.R+r)}}visitEmbellishedOperator(t,e){const s=t.coreMO(),i=_c.from(t.getOuterBBox(),t.linebreakOptions.lineleading);i.getIndentData(s.node);const r=s.getBreakStyle(s.node.attributes.get("linebreakstyle")),n=s.processIndent("",i.indentData[1][1],"",i.indentData[0][1],this.state.width)[1],o=this.moPenalty(s);if("before"===r)this.pushBreak(t,o,n-i.L,null),this.addWidth(i);else{this.addWidth(i);const e=("after"===r?0:s.multChar?s.multChar.getBBox().w:i.w)+n;this.pushBreak(t,o,e,null)}}visitMoNode(t,e){const s=t,i=_c.from(s.getOuterBBox(),s.linebreakOptions.lineleading);i.getIndentData(s.node);const r=s.getBreakStyle(s.node.attributes.get("linebreakstyle")),n=s.processIndent("",i.indentData[1][1],"",i.indentData[0][1],this.state.width)[1],o=this.moPenalty(s);if("before"===r)this.pushBreak(t,o,n-i.L,null),this.addWidth(i);else{this.addWidth(i);const e=("after"===r?0:s.multChar?s.multChar.getBBox().w:i.w)+n;this.pushBreak(t,o,e,null)}}moPenalty(t){const{linebreak:e,fence:s,form:i}=t.node.attributes.getList("linebreak","fence","form"),r=this.FACTORS;let n=r.tail(r.width(0));const o=s&&"prefix"===i||t.node.texClass===gr.OPEN,a=s&&"postfix"===i||t.node.texClass===gr.CLOSE;return o&&(n=r.open(n,t),this.state.depth++),a&&(n=r.close(n,t),this.state.depth--),n=(this.TEXCLASS[t.node.texClass]||(t=>t))(n),(this.PENALTY[e]||(t=>t))(r.depth(n))}getPrevious(t){let e=t.node,s=e.parent,i=s.childIndex(e);for(;s&&(s.notParent||s.isKind("mrow"))&&0===i;)e=s,s=e.parent,i=s.childIndex(e);if(!s||!i)return null;const r=s.childNodes[i-1];return r.isEmbellished?r.coreMO():null}visitMspaceNode(t,e){const s=t.getLineBBox(e),i=t;if(i.canBreak){const e=this.mspacePenalty(i);s.getIndentData(t.node);const r=t.processIndent("",s.indentData[1][1],"",s.indentData[0][1],this.state.width)[1];this.pushBreak(t,e,r-s.w,null)}this.addWidth(s)}mspacePenalty(t){const e=t.node.attributes.get("linebreak"),s=this.FACTORS,i=s.space(s.tail(s.width(0)),t);return(this.PENALTY[e]||(t=>t))(s.depth(i))}visitMtextNode(t,e){if(!t.getText().match(/ /))return void this.visitDefault(t,e);const s=t;s.clearBreakPoints();const i=s.textWidth(" "),r=t.getBBox(),[n,o]=this.getBorderLR(t);this.addWidth(r,r.L+n);const a=s.childNodes;for(const e of a.keys()){const n=a[e];if(n.node.isKind("text")){const o=n.node.getText().split(/ /),a=o.pop();for(const n of o.keys())this.addWidth(r,s.textWidth(o[n])),this.pushBreak(t,this.mtextPenalty(),-i,[e,n+1]),this.addWidth(r,i);this.addWidth(r,s.textWidth(a))}else this.addWidth(n.getBBox())}this.addWidth(r,r.R+o)}mtextPenalty(){const t=this.FACTORS;return t.depth(t.tail(t.width(0)))}visitMrowNode(t,e){const s=t.lineBBox[e]||t.getLineBBox(e),[i,r]=s.start||[0,0],[n,o]=s.end||[t.childNodes.length-1,0],[a,l]=this.getBorderLR(t);this.addWidth(s,s.L+a);for(let e=i;e<=n;e++)this.visitNode(t.childNodes[e],e===i?r:e===n?o:0);this.addWidth(s,s.R+l)}visitInferredMrowNode(t,e){this.state.depth--,this.visitMrowNode(t,e),this.state.depth++}visitMfracNode(t,e){const s=t;!s.node.attributes.get("bevelled")&&s.getOuterBBox().w>this.state.width&&(this.breakToWidth(s.childNodes[0],this.state.width),this.breakToWidth(s.childNodes[1],this.state.width)),this.visitDefault(t,e)}visitMsqrtNode(t,e){if(t.getOuterBBox().w>this.state.width){const e=t,s=e.childNodes[e.base];this.breakToWidth(s,this.state.width-e.rootWidth()),e.getStretchedSurd()}this.visitDefault(t,e)}visitMrootNode(t,e){this.visitMsqrtNode(t,e)}visitMsubNode(t,e){this.visitDefault(t,e);const s=t,i=s.getOffset()[0],r=s.scriptChild.getOuterBBox(),[n,o]=this.getBorderLR(t);this.addWidth(s.getLineBBox(e),i+n+r.rscale*r.w+s.font.params.scriptspace+o)}visitMsupNode(t,e){this.visitDefault(t,e);const s=t,i=s.getOffset()[0],r=s.scriptChild.getOuterBBox(),[n,o]=this.getBorderLR(t);this.addWidth(s.getLineBBox(e),i+n+r.rscale*r.w+s.font.params.scriptspace+o)}visitMsubsupNode(t,e){this.visitDefault(t,e);const s=t,i=s.subChild.getOuterBBox(),r=s.supChild.getOuterBBox(),n=s.getAdjustedIc(),o=Math.max(i.rscale*i.w,n+r.rscale*r.w)+s.font.params.scriptspace,[a,l]=this.getBorderLR(t);this.addWidth(t.getLineBBox(e),a+o+l)}visitMmultiscriptsNode(t,e){const s=t,i=s.scriptData;if(i.numPrescripts){const r=Math.max(i.psup.rscale*i.psup.w,i.psub.rscale*i.psub.w);this.addWidth(t.getLineBBox(e),r+s.font.params.scriptspace)}if(this.visitDefault(t,e),i.numScripts){const r=Math.max(i.sup.rscale*i.sup.w,i.sub.rscale*i.sub.w);this.addWidth(t.getLineBBox(e),r+s.font.params.scriptspace)}}visitMfencedNode(t,e){const s=t,i=t.getLineBBox(e),[r,n]=this.getBorderLR(t);0===e&&this.addWidth(i,i.L+r),this.visitNode(s.mrow,e),e===t.breakCount&&this.addWidth(i,i.R+n)}visitMactionNode(t,e){const s=t,i=t.getLineBBox(e),[r,n]=this.getBorderLR(t);0===e&&this.addWidth(i,i.L+r),this.visitNode(s.selected,e),e===t.breakCount&&this.addWidth(i,i.R+n)}}!function(){for(const t of Object.keys(Fr.postfix)){const e=Fr.postfix[t][3];e&&e.fence&&(e.linebreakstyle="after")}Fr.infix["\u2061"]=[...Fr.infix["\u2061"]],Fr.infix["\u2061"][3]={linebreak:"nobreak"}}();const zc="@mathjax/%%FONT%%-font";class qc extends er{get forceInlineBreaks(){return!1}constructor(t={},e=null,s=null){const[i,r]=t.fontData instanceof jc?[t.fontData.constructor,t.fontData]:[t.fontData||s,null],[n,o]=Hi(t,i.OPTIONS);super(n),this.factory=this.options.wrapperFactory||new e,this.factory.jax=this,this.styleJson=this.options.styleJson||new lo,this.font=r||new i(o),this.font.setOptions({mathmlSpacing:this.options.mathmlSpacing}),this.constructor.genericFont=i,this.unknownCache=new Map;const a=this.options.linebreaks.LinebreakVisitor||Wc;this.linebreaks=new a(this.factory)}setAdaptor(t){super.setAdaptor(t),"auto"===this.options.htmlHDW&&(this.options.htmlHDW=t.canMeasureNodes?"ignore":"force")}addExtension(t,e=""){return this.font.addExtension(t,e)}typeset(t,e){const s=this.constructor,i=s.genericFont;s.genericFont=this.font.constructor,this.setDocument(e);const r=this.createNode();try{this.toDOM(t,r,e)}finally{s.genericFont=i}return r}createNode(){const t=this.constructor.NAME;return this.html("mjx-container",{class:"MathJax",jax:t})}setScale(t,e){let s=this.getInitialScale()*this.options.scale;if("scale"===e.node.attributes.get("overflow")&&this.math.display){const t=e.getOuterBBox().w,i=Math.max(0,this.math.metrics.containerWidth-4)/this.pxPerEm;t>i&&t&&(s*=i/t)}1!==s&&this.adaptor.setStyle(t,"fontSize",yo(s))}getInitialScale(){return this.math.metrics.scale}toDOM(t,e,s=null){var i;this.setDocument(s),this.math=t,this.container=e,this.pxPerEm=t.metrics.ex/this.font.params.x_height,this.executeFilters(this.preFilters,t,s,e),this.nodeMap=new Map,t.root.attributes.getAllInherited().overflow=this.options.displayOverflow;const r=t.root.attributes.get("overflow");this.adaptor.setAttribute(e,"overflow",r);"linebreak"===r&&this.getLinebreakWidth();const n=this.options.linebreaks.inline&&!t.display;let o=!!t.root.getProperty("inlineMarked");!o||n&&this.forceInlineBreaks===t.root.getProperty("inlineForced")||(this.unmarkInlineBreaks(t.root),t.root.removeProperty("inlineMarked"),t.root.removeProperty("inlineForced"),o=!1),n&&!o&&(this.markInlineBreaks(null===(i=t.root.childNodes)||void 0===i?void 0:i[0]),t.root.setProperty("inlineMarked",!0),t.root.setProperty("inlineForced",this.forceInlineBreaks)),t.root.setTeXclass(null);const a=this.factory.wrap(t.root);this.setScale(e,a),this.processMath(a,e),this.nodeMap=null,this.executeFilters(this.postFilters,t,s,e)}getBBox(t,e){this.setDocument(e),this.math=t,t.root.setTeXclass(null),this.nodeMap=new Map;const s=this.factory.wrap(t.root).getOuterBBox();return this.nodeMap=null,s}getLinebreakWidth(){const t=this.math.metrics.containerWidth/this.pxPerEm,e=this.math.root.attributes.get("maxwidth")||this.options.linebreaks.width;this.containerWidth=xo(e,t,1,this.pxPerEm)}markInlineBreaks(t){if(!t)return;const e=this.forceInlineBreaks;let s=!1,i=!1,r="";for(const n of t.childNodes)if(r)i=this.markInlineBreak(i,e,r,t,n),r="",s=!1;else if(n.isEmbellished){if(n===t.childNodes[0])continue;const o=n.coreMO(),a=o.texClass,l=o.attributes.get("linebreak"),c=o.attributes.get("linebreakstyle");(a===gr.BIN||a===gr.REL||a===gr.ORD&&o.hasSpacingAttributes()||"auto"!==l)&&"nobreak"!==l&&("before"===c?s&&"auto"===l||(i=this.markInlineBreak(i,e,l,t,n,o)):r=l),s="newline"===l&&"after"===c}else if(n.isKind("mspace")){const r=n.attributes.get("linebreak");"nobreak"!==r&&n.canBreak&&(i=this.markInlineBreak(i,e,r,t,n)),s="newline"===r}else s=!1,n.isKind("mstyle")&&!n.attributes.get("style")&&!n.attributes.hasExplicit("mathbackground")||n.isKind("semantics")?(this.markInlineBreaks(n.childNodes[0]),n.getProperty("process-breaks")&&(n.setProperty("inline-breaks",!0),n.childNodes[0].setProperty("inline-breaks",!0),t.parent.setProperty("process-breaks","true"))):n.isKind("mrow")&&n.attributes.get("data-semantic-added")&&(this.markInlineBreaks(n),n.getProperty("process-breaks")&&(n.setProperty("inline-breaks",!0),t.parent.setProperty("process-breaks","true")))}markInlineBreak(t,e,s,i,r,n=null){return r.setProperty("breakable",!0),e&&"newline"!==s?(r.setProperty("forcebreak",!0),null==n||n.setProperty("forcebreak",!0)):(r.removeProperty("forcebreak"),null==n||n.removeProperty("forcebreak"),"newline"===s&&r.setProperty("newline",!0)),t||(i.setProperty("process-breaks",!0),i.parent.setProperty("process-breaks",!0),t=!0),t}unmarkInlineBreaks(t){if(t&&(t.removeProperty("forcebreak"),t.removeProperty("breakable"),t.coreMO().removeProperty("forcebreak"),t.getProperty("process-breaks"))){t.removeProperty("process-breaks");for(const e of t.childNodes)this.unmarkInlineBreaks(e)}}getMetrics(t){this.setDocument(t);const e=this.adaptor,s=this.getMetricMaps(t);for(const i of t.math){const t=e.parent(i.start.node);if(i.state(){const s=this.wrap(t);return s.bbox.pwidth&&(e.notParent||e.isKind("math"))&&(this.bbox.pwidth=To.fullWidth),s})}wrap(t,e=null){const s=this.factory.wrap(t,e||this);return e&&e.childNodes.push(s),this.jax.nodeMap.set(t,s),s}getBBox(t=!0){if(this.bboxComputed)return this.bbox;const e=t?this.bbox:To.zero();return this.computeBBox(e),this.bboxComputed=t,e}getOuterBBox(t=!0){var e;const s=this.getBBox(t);if(!this.styleData)return s;const i=this.styleData.padding,r=(null===(e=this.styleData.border)||void 0===e?void 0:e.width)||[0,0,0,0],n=this.styleData.margin||[0,0,0,0],o=s.copy();for(const[,t,e]of To.boxSides)o[e]+=i[t]+r[t]+n[t];return o}getUnbrokenHD(){const t=this.breakCount+1;let e=0,s=0;for(let i=0;ie&&(e=t),r>s&&(s=r)}return[e,s]}computeBBox(t,e=!1){t.empty();for(const e of this.childNodes)t.append(e.getOuterBBox());t.clean(),this.fixesPWidth&&this.setChildPWidths(e)&&this.computeBBox(t,!0)}getLineBBox(t){if(!this.lineBBox[t]){const e=this.breakCount;if(e){const s=this.embellishedBBox(t)||this.computeLineBBox(t);this.lineBBox[t]=s,0===t&&(!this.node.isKind("mo")&&this.node.isEmbellished?s.originalL=this.getBBox().L:s.L=this.getBBox().L),t===e&&(s.R=this.getBBox().R)}else{const e=this.getOuterBBox();this.lineBBox[t]=_c.from(e,this.linebreakOptions.lineleading)}}return this.lineBBox[t]}embellishedBBox(t){if(!this.node.isEmbellished||this.node.isKind("mo"))return null;const e=this.coreMO();return e.moLineBBox(t,e.embellishedBreakStyle,this.getOuterBBox())}computeLineBBox(t){return this.getChildLineBBox(this.childNodes[0],t)}getBreakNode(t){var e,s;if(!t.start)return[this,null];const[i,r]=t.start;if(this.node.isEmbellished)return[this,this.coreMO()];const n=(null===(s=null===(e=this.childNodes[0])||void 0===e?void 0:e.node)||void 0===s?void 0:s.isInferred)||this.node.isKind("semantics")?this.childNodes[0].childNodes:this.childNodes;return this.node.isToken||!n[i]?[this,null]:n[i].getBreakNode(n[i].getLineBBox(r))}getChildLineBBox(t,e){const s=this.breakCount;let i=t.getLineBBox(e);return(this.styleData||this.bbox.L||this.bbox.R)&&(i=i.copy()),this.addMiddleBorders(i),0===e?(i.L+=this.bbox.L,this.addLeftBorders(i)):e===s&&(i.R+=this.bbox.R,this.addRightBorders(i)),i}sideStyleSize(t){var e;const s=this.styleData.border,i=this.styleData.padding,r=this.styleData.margin;return((null===(e=null==s?void 0:s.width)||void 0===e?void 0:e[t])||0)+((null==i?void 0:i[t])||0)+((null==r?void 0:r[t])||0)}addLeftBorders(t){this.styleData&&(t.w+=this.sideStyleSize(3))}addMiddleBorders(t){this.styleData&&(t.h+=this.sideStyleSize(0),t.d+=this.sideStyleSize(2))}addRightBorders(t){this.styleData&&(t.w+=this.sideStyleSize(1))}setChildPWidths(t,e=null,s=!0){if(t)return!1;s&&(this.bbox.pwidth="");let i=!1;for(const r of this.childNodes){const n=r.getBBox();n.pwidth&&r.setChildPWidths(t,null===e?n.w:e,s)&&(i=!0)}return i}breakToWidth(t){}invalidateBBox(t=!0){(this.bboxComputed||this._breakCount>=0)&&(this.bboxComputed=!1,this.lineBBox=[],this._breakCount=-1,this.parent&&t&&this.parent.invalidateBBox())}copySkewIC(t){var e,s,i;const r=this.childNodes[0];(null===(e=null==r?void 0:r.bbox)||void 0===e?void 0:e.sk)&&(t.sk=r.bbox.sk),(null===(s=null==r?void 0:r.bbox)||void 0===s?void 0:s.dx)&&(t.dx=r.bbox.dx);const n=this.childNodes[this.childNodes.length-1];(null===(i=null==n?void 0:n.bbox)||void 0===i?void 0:i.ic)&&(t.ic=n.bbox.ic,t.w+=t.ic)}getStyles(){const t=this.node.attributes.getExplicit("style");if(!t)return;const e=this.styles=new Vo(t);for(let t=0,s=$c.removeStyles.length;t600?"bold":"normal"),s.family?e=this.explicitVariant(s.family,s.weight,s.style):(this.node.getProperty("variantForm")&&(e="-tex-variant"),e=($c.BOLDVARIANTS[s.weight]||{})[e]||e,e=($c.ITALICVARIANTS[s.style]||{})[e]||e)}this.variant=e}explicitVariant(t,e,s){let i=this.styles;return i||(i=this.styles=new Vo),i.set("fontFamily",t),e&&i.set("fontWeight",e),s&&i.set("fontStyle",s),"-explicitFont"}getScale(){let t=1;const e=this.parent,s=e?e.bbox.scale:1,i=this.node.attributes,r=Math.min(i.get("scriptlevel"),2);let n=i.get("fontsize"),o=this.node.isToken||this.node.isKind("mstyle")?i.get("mathsize"):i.getInherited("mathsize");if(0!==r&&(t=Math.pow(i.get("scriptsizemultiplier"),r)),this.removedStyles&&this.removedStyles.fontSize&&!n&&(n=this.removedStyles.fontSize),n&&!i.hasExplicit("mathsize")&&(o=n),"1"!==o&&(t*=this.length2em(o,1,1)),0!==r){const e=this.length2em(i.get("scriptminsize"),.4,1);t0;if(this.bbox.L=n.isSet("lspace")?Math.max(0,this.length2em(n.get("lspace"))):Jc(o,r,t.lspace),this.bbox.R=n.isSet("rspace")?Math.max(0,this.length2em(n.get("rspace"))):Jc(o,r,t.rspace),!i)return;const a=s.childNodes[i-1];if(!a.isEmbellished)return;const l=this.jax.nodeMap.get(a).getBBox();l.R&&(this.bbox.L=Math.max(0,this.bbox.L-l.R))}getTeXSpacing(t,e){if(!e){const t=this.node.texSpacing();t&&(this.bbox.L=this.length2em(t))}if(t||e){const t=this.node.coreMO().attributes;t.isSet("lspace")&&(this.bbox.L=Math.max(0,this.length2em(t.get("lspace")))),t.isSet("rspace")&&(this.bbox.R=Math.max(0,this.length2em(t.get("rspace"))))}}isTopEmbellished(){return this.node.isEmbellished&&!(this.node.parent&&this.node.parent.isEmbellished)}core(){return this.jax.nodeMap.get(this.node.core())}coreMO(){return this.jax.nodeMap.get(this.node.coreMO())}coreRScale(){let t=this.bbox.rscale,e=this.coreMO();for(;e!==this&&e;)t*=e.bbox.rscale,e=e.parent;return t}getRScale(){let t=1,e=this;for(;e;)t*=e.bbox.rscale,e=e.parent;return t}getText(){let t="";if(this.node.isToken)for(const e of this.node.childNodes)e instanceof Sr&&(t+=e.getText());return t}canStretch(t){if(this.stretch=Bc,this.node.isEmbellished){const e=this.core();e&&e.node!==this.node&&e.canStretch(t)&&(this.stretch=e.stretch)}return this.stretch.dir!==Ic.None}getAlignShift(){let{indentalign:t,indentshift:e,indentalignfirst:s,indentshiftfirst:i}=this.node.attributes.getAllAttributes();return"indentalign"!==s&&(t=s),"indentshift"!==i&&(e=i),this.processIndent(t,e)}processIndent(t,e,s="",i="",r=this.metrics.containerWidth){if(!this.jax.math.display)return["left",0];s&&"auto"!==s||(s=this.jax.math.root.getProperty("inlineMarked")?"left":this.jax.options.displayAlign),i&&"auto"!==i||(i=this.jax.math.root.getProperty("inlineMarked")?"0":this.jax.options.displayIndent),"auto"===t&&(t=s),"auto"===e&&(e=i,"right"!==t||e.match(/^\s*0[a-z]*\s*$/)||(e=("-"+e.trim()).replace(/^--/,"")));return[t,this.length2em(e,r)]}getAlignX(t,e,s){return"right"===s?t-(e.w+e.R)*e.rscale:"left"===s?e.L*e.rscale:(t-e.w*e.rscale)/2}getAlignY(t,e,s,i,r){return"top"===r?t-s:"bottom"===r?i-e:"center"===r?(t-s-(e-i))/2:0}getWrapWidth(t){return this.childNodes[t].getBBox().w}getChildAlign(t){return"left"}percent(t){return yo(t)}em(t){return No(t)}px(t,e=-fo){return vo(t,e,this.metrics.em)}length2em(t,e=1,s=null){null===s&&(s=this.bbox.scale);const i=this.font.params.rule_thickness,r=Wi(t,{medium:1,thin:2/3,thick:5/3},0);return r?r*i:xo(t,e,s,this.jax.pxPerEm)}unicodeChars(t,e=this.variant){let s=Ur(t);const i=this.font.getVariant(e);if(i&&i.chars){const t=i.chars;s=s.map(e=>{var s,i;return(null===(i=null===(s=t[e])||void 0===s?void 0:s[3])||void 0===i?void 0:i.smp)||e})}return s}remapChars(t){return t}mmlText(t){return this.node.factory.create("text").setText(t)}mmlNode(t,e={},s=[]){return this.node.factory.create(t,e,s)}createMo(t){const e=this.node.factory,s=e.create("text").setText(t),i=e.create("mo",{stretchy:!0},[s]);i.inheritAttributesFrom(this.node),i.parent=this.node.parent;const r=this.wrap(i);return r.parent=this,r}getVariantChar(t,e){const s=this.font.getChar(t,e)||[0,0,0,{unknown:!0}];return 3===s.length&&(s[3]={}),s}html(t,e={},s=[]){return this.jax.html(t,e,s)}}$c.kind="unknown",$c.styles={},$c.removeStyles=["fontSize","fontFamily","fontWeight","fontStyle","fontVariant","font"],$c.skipAttributes={fontfamily:!0,fontsize:!0,fontweight:!0,fontstyle:!0,color:!0,background:!0,class:!0,href:!0,style:!0,xmlns:!0},$c.BOLDVARIANTS={bold:{normal:"bold",italic:"bold-italic",fraktur:"bold-fraktur",script:"bold-script","sans-serif":"bold-sans-serif","sans-serif-italic":"sans-serif-bold-italic"},normal:{bold:"normal","bold-italic":"italic","bold-fraktur":"fraktur","bold-script":"script","bold-sans-serif":"sans-serif","sans-serif-bold-italic":"sans-serif-italic"}},$c.ITALICVARIANTS={italic:{normal:"italic",bold:"bold-italic","sans-serif":"sans-serif-italic","bold-sans-serif":"sans-serif-bold-italic"},normal:{italic:"normal","bold-italic":"bold","sans-serif-italic":"sans-serif","sans-serif-bold-italic":"bold-sans-serif"}};const Yc={"70.7%":"s","70%":"s","50%":"ss","60%":"Tn","85%":"sm","120%":"lg","144%":"Lg","173%":"LG","207%":"hg","249%":"HG"};class Qc extends $c{toCHTML(t){this.toEmbellishedCHTML(t)||this.addChildren(this.standardChtmlNodes(t))}toEmbellishedCHTML(t){if(t.length<=1||!this.node.isEmbellished)return!1;const e=this.adaptor;t.forEach(t=>e.append(t,this.html("mjx-linestrut")));const s=this.coreMO().embellishedBreakStyle,i=[];for(const[r,n]of[[t[0],"before"],[t[1],"after"]])s!==n?(this.toCHTML([r]),i.push(this.dom[0]),"after"===n&&e.removeAttribute(this.dom[0],"space")):i.push(this.createChtmlNodes([r])[0]);return this.dom=i,!0}addChildren(t){for(const e of this.childNodes)e.toCHTML(t)}standardChtmlNodes(t){this.markUsed();const e=this.createChtmlNodes(t);return this.handleStyles(),this.handleScale(),this.handleBorders(),this.handleColor(),this.handleSpace(),this.handleAttributes(),this.handlePWidth(),e}markUsed(){this.jax.wrapperUsage.add(this.kind)}createChtmlNodes(t){this.dom=t.map(t=>this.html("mjx-"+this.node.kind)),t=this.handleHref(t);for(const e of t.keys())this.adaptor.append(t[e],this.dom[e]);return this.dom}handleHref(t){const e=this.node.attributes.get("href");return e?t.map(t=>this.adaptor.append(t,this.html("a",{href:e}))):t}handleStyles(){if(!this.styles)return;const t=this.styles.cssText;if(t){const e=this.adaptor;this.dom.forEach(s=>e.setAttribute(s,"style",t));const s=this.styles.get("font-family");s&&this.dom.forEach(t=>e.setStyle(t,"font-family",this.font.cssFamilyPrefix+", "+s))}}handleScale(){this.dom.forEach(t=>this.setScale(t,this.bbox.rscale))}setScale(t,e){const s=Math.abs(e-1)<.001?1:e;if(t&&1!==s){const e=this.percent(s);Yc[e]?this.adaptor.setAttribute(t,"size",Yc[e]):this.adaptor.setStyle(t,"fontSize",e)}return t}handleSpace(){const t=this.adaptor,e=!!this.node.getProperty("breakable")&&!this.node.getProperty("newline"),s=this.dom.length-1;for(const i of[[this.getLineBBox(0).L,"space","marginLeft",0],[this.getLineBBox(s).R,"rspace","marginRight",s]]){const[s,r,n,o]=i,a=this.em(s);if(e&&"space"===r){const e=t.node("mjx-break",Kc[a]?{size:Kc[a]}:{style:`letter-spacing: ${this.em(s-1)}`},[t.text(" ")]);t.insert(e,this.dom[o])}else s&&(Kc[a]?t.setAttribute(this.dom[o],r,Kc[a]):t.setStyle(this.dom[o],n,a))}}handleBorders(){var t,e;const s=null===(t=this.styleData)||void 0===t?void 0:t.border,i=null===(e=this.styleData)||void 0===e?void 0:e.padding,r=this.dom.length-1;if(!s||!r)return;const n=this.adaptor;for(const t of this.dom.keys()){const e=this.dom[t];t&&(s.width[3]&&n.setStyle(e,"border-left"," none"),i[3]&&n.setStyle(e,"padding-left","0")),t!==r&&(s.width[1]&&n.setStyle(e,"border-right","none"),i[1]&&n.setStyle(e,"padding-right","0"))}}handleColor(){var t;const e=this.adaptor,s=this.node.attributes,i=s.getExplicit("mathcolor")||s.getExplicit("color"),r=s.getExplicit("mathbackground")||s.getExplicit("background")||(null===(t=this.styles)||void 0===t?void 0:t.get("background-color"));i&&this.dom.forEach(t=>e.setStyle(t,"color",i)),r&&this.dom.forEach(t=>e.setStyle(t,"backgroundColor",r))}handleAttributes(){const t=this.adaptor,e=this.node.attributes,s=e.getAllDefaults(),i=Qc.skipAttributes;for(const r of e.getExplicitNames())if(!1===i[r]||!(r in s)&&!i[r]&&!t.hasAttribute(this.dom[0],r)){const s=e.getExplicit(r);this.dom.forEach(e=>t.setAttribute(e,r,s))}if(e.get("class")){const s=e.get("class").trim().split(/ +/);for(const e of s)this.dom.forEach(s=>t.addClass(s,e))}this.node.getProperty("inline-breaks")&&this.dom.forEach(e=>t.setAttribute(e,"inline-breaks","true"))}handlePWidth(){if(this.bbox.pwidth){const t=this.adaptor;this.bbox.pwidth===To.fullWidth?this.dom.forEach(e=>t.setAttribute(e,"width","full")):this.dom.forEach(e=>t.setStyle(e,"width",this.bbox.pwidth))}}setIndent(t,e,s){const i=this.adaptor;if("center"===e||"left"===e){const e=this.getBBox().L;s+e&&i.setStyle(t,"margin-left",this.em(s+e))}if("center"===e||"right"===e){const e=this.getBBox().R;s+e&&i.setStyle(t,"margin-right",this.em(-s+e))}}drawBBox(){const{w:t,h:e,d:s,R:i}=this.getOuterBBox(),r=this.html("mjx-box",{style:{opacity:.25,"margin-left":this.em(-t-i)}},[this.html("mjx-box",{style:{height:this.em(e),width:this.em(t),"background-color":"red"}}),this.html("mjx-box",{style:{height:this.em(s),width:this.em(t),"margin-left":this.em(-t),"vertical-align":this.em(-s),"background-color":"green"}})]),n=this.dom[0]||this.parent.dom[0],o=this.adaptor.getAttribute(n,"size");o&&this.adaptor.setAttribute(r,"size",o);const a=this.adaptor.getStyle(n,"fontSize");a&&this.adaptor.setStyle(r,"fontSize",a),this.adaptor.append(this.adaptor.parent(n),r),this.adaptor.setStyle(n,"backgroundColor","#FFEE00")}html(t,e={},s=[]){return this.jax.html(t,e,s)}text(t){return this.jax.text(t)}char(t){return this.font.charSelector(t).substring(1)}}function Zc(t){return class extends t{getWrapWidth(t){return this.parent?this.getBBox().w:this.metrics.containerWidth/this.jax.pxPerEm}computeBBox(t,e=!1){super.computeBBox(t,e);const s=this.node.attributes;if(!this.parent&&this.jax.math.display&&"linebreak"===s.get("overflow")){const e=this.containerWidth;t.w>e&&this.childNodes[0].breakToWidth(e),t.updateFrom(this.childNodes[0].getBBox())}}}}Qc.kind="unknown",Qc.autoStyle=!0;const th=function(){var t;const e=Zc(Qc);return(t=class extends e{handleDisplay(t){const e=this.adaptor,[s,i]=this.getAlignShift();if("center"!==s&&e.setAttribute(t,"justify",s),this.bbox.pwidth===To.fullWidth){if(e.setAttribute(t,"width","full"),this.jax.table){let{L:r,w:n,R:o}=this.jax.table.getOuterBBox();"right"===s?o=Math.max(o||-i,-i):"left"===s?r=Math.max(r||i,i):"center"===s&&(n+=2*Math.abs(i));const a=this.em(Math.max(0,r+n+o));e.setStyle(t,"min-width",a),e.setStyle(this.jax.table.dom[0],"min-width",a)}}else this.setIndent(this.dom[0],s,i)}handleInline(t){const e=this.adaptor,s=e.getStyle(this.dom[0],"margin-right");s&&(e.setStyle(this.dom[0],"margin-right",""),e.setStyle(t,"margin-right",s),e.setStyle(t,"width","0"))}toCHTML(t){super.toCHTML(t);const e=this.adaptor;"block"===this.node.attributes.get("display")?(e.setAttribute(this.dom[0],"display","true"),e.setAttribute(t[0],"display","true"),this.handleDisplay(t[0])):this.handleInline(t[0]),e.addClass(this.dom[0],`${this.font.cssFontPrefix}-N`)}setChildPWidths(t,e=null,s=!0){return!!this.parent&&super.setChildPWidths(t,e,s)}handleAttributes(){super.handleAttributes();const t=this.adaptor;this.node.getProperty("process-breaks")&&this.dom.forEach(e=>t.setAttribute(e,"breakable","true"))}}).kind=Mr.prototype.kind,t.styles={"mjx-math":{"line-height":0,"text-align":"left","text-indent":0,"font-style":"normal","font-weight":"normal","font-size":"100%","font-size-adjust":"none","letter-spacing":"normal","word-wrap":"normal","word-spacing":"normal",direction:"ltr",padding:"1px 0"},'mjx-container[jax="CHTML"][display="true"] mjx-math':{padding:0},"mjx-math[breakable]":{display:"inline"},'mjx-container[jax="CHTML"] mjx-break':{"white-space":"normal","line-height":"0","clip-path":"rect(0 0 0 0)","font-family":"MJX-BRK !important"},'mjx-break[size="0"]':{"letter-spacing":"-0.999em"},'mjx-break[size="1"]':{"letter-spacing":"-0.889em"},'mjx-break[size="2"]':{"letter-spacing":"-0.833em"},'mjx-break[size="3"]':{"letter-spacing":"-0.778em"},'mjx-break[size="4"]':{"letter-spacing":"-0.722em"},'mjx-break[size="5"]':{"letter-spacing":"-0.667em"}},t}();function eh(t){return class extends t{computeBBox(t,e=!1){super.computeBBox(t),this.copySkewIC(t)}}}const sh=function(){var t;const e=eh(Qc);return(t=class extends e{}).kind=Ir.prototype.kind,t}();class ih{constructor(){this.used=new Set,this.needsUpdate=[]}add(t){const e=JSON.stringify(t);this.used.has(e)||this.needsUpdate.push(t),this.used.add(e)}has(t){return this.used.has(JSON.stringify(t))}clear(){this.used.clear(),this.needsUpdate=[]}update(){const t=this.needsUpdate;return this.needsUpdate=[],t}}class rh extends jc{constructor(){super(...arguments),this.charUsage=new ih,this.delimUsage=new ih,this.fontUsage={},this.newFonts=0}static charOptions(t,e){return super.charOptions(t,e)}static addFontURLs(t,e,s){for(const i of Object.keys(e)){const r=Object.assign({},e[i]);r.src=r.src.replace(/%%URL%%/,s),t[i]=r}}static addDynamicFontCss(t,e,s){const i={};for(const s of e){const e=s.slice(4);i[`@font-face /* ${e} */`]={"font-family":s,src:`url("%%URL%%/${s.toLowerCase()}.woff2") format("woff2")`},t[`.${e}`]={"font-family":`${this.defaultCssFamilyPrefix}, ${s}`}}this.addFontURLs(t,i,s)}static addExtension(t,e=""){super.addExtension(t,e),t.fonts&&this.addDynamicFontCss(this.defaultStyles,t.fonts,t.fontURL)}addExtension(t,e=""){if(super.addExtension(t,e),!t.fonts||!this.options.adaptiveCSS)return[];const s={},i=new lo;return this.constructor.addDynamicFontCss(s,t.fonts,t.fontURL),i.addStyles(s),i.getStyleRules()}adaptiveCSS(t){this.options.adaptiveCSS=t}clearCache(){this.options.adaptiveCSS&&(this.charUsage.clear(),this.delimUsage.clear())}createVariant(t,e=null,s=null){super.createVariant(t,e,s),this.variant[t].letter=this.constructor.defaultVariantLetters[t]}defineChars(t,e){super.defineChars(t,e);const s=this.variant[t].letter,i=this.constructor;for(const t of Object.keys(e)){const r=parseInt(t);if(!Array.isArray(e[r]))continue;const n=i.charOptions(e,r);void 0===n.f&&(n.f=s);for(const[t,e]of i.combiningChars)if(r>=t&&r<=e){n.cmb=!0;break}}}addDynamicFontCss(t,e=this.options.fontURL){this.constructor.addDynamicFontCss(this.fontUsage,t,e)}updateDynamicStyles(){const t=this.fontUsage;return this.fontUsage={},this.options.adaptiveCSS||this.updateStyles(t),t}get styles(){const t=this.constructor,e=Object.assign(Object.assign({},t.defaultStyles),this.fontUsage);return this.fontUsage={},t.addFontURLs(e,t.defaultFonts,this.options.fontURL),this.options.adaptiveCSS?this.updateStyles(e):this.allStyles(e),e}updateStyles(t){for(const e of this.delimUsage.update())this.addDelimiterStyles(t,e,this.getDelimiter(e));for(const[e,s]of this.charUsage.update()){const i=this.variant[e];this.addCharStyles(t,i.letter,s,i.chars[s])}return t}allStyles(t){var e;for(const e of Object.keys(this.delimiters)){const s=parseInt(e);this.addDelimiterStyles(t,s,this.delimiters[s])}for(const s of Object.keys(this.variant)){const i=this.variant[s],r=i.letter;for(const s of Object.keys(i.chars)){const n=parseInt(s),o=i.chars[n];!(null===(e=null==o?void 0:o[3])||void 0===e?void 0:e.smp)&&Array.isArray(o)&&(o.length<4&&(o[3]={}),this.addCharStyles(t,r,n,o))}}}addDelimiterStyles(t,e,s){if(!s.stretch)return;const i=s.c&&s.c!==e?this.charSelector(s.c):this.charSelector(e);s.dir===Ic.Vertical?this.addDelimiterVStyles(t,e,i,s):this.addDelimiterHStyles(t,e,i,s)}addDelimiterVStyles(t,e,s,i){const r=i.HDW,[n,o,a,l]=i.stretch,[c,h,d,u]=this.getStretchVariants(e),p=this.addDelimiterVPart(t,s,"beg",n,c,r);this.addDelimiterVPart(t,s,"ext",o,h,r);const m=this.addDelimiterVPart(t,s,"end",a,d,r);if(l){const e=this.addDelimiterVPart(t,s,"mid",l,u,r),i=this.em(e/2-.03);t[`mjx-stretchy-v${s} > mjx-ext:first-of-type`]={height:"50%","border-width":`${this.em1(p-.03)} 0 ${i}`},t[`mjx-stretchy-v${s} > mjx-ext:last-of-type`]={height:"50%","border-width":`${i} 0 ${this.em1(m-.03)}`}}else(m||p)&&(t[`mjx-stretchy-v${s} > mjx-ext`]["border-width"]=`${this.em1(p-.03)} 0 ${this.em1(m-.03)}`)}addDelimiterVPart(t,e,s,i,r,n){if(!i)return 0;let o=0;const[a,l,c]=this.getChar(r,i),h={width:this.em0(c)};if("ext"!==s){const t=c>n[2]?this.em((n[2]-c)/2):"auto",e="beg"===s?a:"end"===s?-l:(a-l)/2;h.margin=`${this.em(e)} ${t} ${this.em(-e)}`}else{o=Dc;const s=Math.max(Dc,a+l-Dc);h["line-height"]=this.em0(s);const i=a-s/2-Dc;i&&(t[`mjx-stretchy-v${e} > mjx-ext > mjx-spacer`]={"margin-top":this.em(i)})}return t[`mjx-stretchy-v${e} > mjx-${s}`]=h,Math.max(0,a+l-o)}addDelimiterHStyles(t,e,s,i){const r=[...i.HDW],[n,o,a,l]=i.stretch,[c,h,d,u]=this.getStretchVariants(e);if(i.hd&&!this.options.mathmlSpacing){const t=this.params.extender_factor;r[0]=r[0]*(1-t)+i.hd[0]*t,r[1]=r[1]*(1-t)+i.hd[1]*t}const p=this.addDelimiterHPart(t,s,"beg",n,c,r);this.addDelimiterHPart(t,s,"ext",o,h,r);const m=this.addDelimiterHPart(t,s,"end",a,d,r);if(l){const e=this.addDelimiterHPart(t,s,"mid",l,u,r),i=this.em0(e/2-.03);t[`mjx-stretchy-h${s} > mjx-ext:first-of-type`]={width:"50%","border-width":`0 ${i} 0 ${this.em0(p-.03)}`},t[`mjx-stretchy-h${s} > mjx-ext:last-of-type`]={width:"50%","border-width":`0 ${this.em0(m-.03)} 0 ${i}`}}else(p||m)&&(t[`mjx-stretchy-h${s} > mjx-ext`]["border-width"]=`0 ${this.em0(m-.06)} 0 ${this.em0(p-.06)}`);i.ext&&(t[`mjx-stretchy-h${s} > mjx-ext > mjx-spacer`]["letter-spacing"]=this.em(-i.ext-Pc))}addDelimiterHPart(t,e,s,i,r,n){if(!i)return 0;let[,,o,a]=this.getChar(r,i);const l={padding:this.padding(n,o-n[2])};if("ext"===s){const i=l.padding.split(/ /);i[1]=i[3]="0",l.padding=i.join(" "),!o&&a.dx&&(o=2*a.dx-.06),t[`mjx-stretchy-h${e} > mjx-${s} > mjx-spacer`]={"margin-left":this.em(-o/2)},a.cmb&&(t[`mjx-stretchy-h${e} > mjx-${s} > mjx-c`]={width:this.em(o),"text-align":"right"})}else"mid"===s?l.margin=`0 ${this.em(-o/2)}`:l["end"==s?"margin-left":"margin-right"]=this.em(-o),this.checkCombiningChar(a,l);return t[`mjx-stretchy-h${e} > mjx-${s}`]=l,o}addCharStyles(t,e,s,i){const r=i[3],n=void 0!==r.f?r.f:e,o=r.ff||(n?`${this.cssFontPrefix}-${n}`:""),a="mjx-c"+this.charSelector(s)+(o?"."+o:""),l=r.oc||r.ic||0,c={padding:this.padding(i,l)};r.oc&&(t[a+"[noic]"]={"padding-right":this.em(i[2])}),this.checkCombiningChar(r,c),t[a+(c["margin-left"]&&!o?`:not([class*="${this.cssFontPrefix}-"])`:"")]=c}checkCombiningChar(t,e){if(!t.cmb)return;const s=e.padding.split(/ /);e.width=s[1],s[1]="0",s[3]||s.pop(),e.padding=s.join(" "),"0"===e.width&&t.dx&&(e.width=this.em(2*t.dx),e["margin-left"]="-"+e.width)}em(t){return No(t)}em0(t){return No(Math.max(0,t))}em1(t){const e=No(Math.max(0,t));return"0"===e?".1px":e}padding([t,e,s],i=0){return[t,s+i,e,0].map(this.em0).join(" ")}charSelector(t){return".mjx-c"+t.toString(16).toUpperCase()}}function nh(t,e){for(const s of Object.keys(e)){const i=parseInt(s),r=e[i];r.c&&(r.c=r.c.replace(/\\[0-9A-F]+/gi,t=>String.fromCodePoint(parseInt(t.substring(1),16)))),Object.assign(jc.charOptions(t,i),r)}return t}function oh(t){return class extends t{get breakCount(){return this.breakStyle?1:0}get embellishedBreakCount(){return this.embellishedBreakStyle?1:0}get embellishedBreakStyle(){return this.breakStyle||this.getBreakStyle()}protoBBox(t){const e=this.stretch.dir!==Ic.None;e&&null===this.size&&this.getStretchedVariant([0]),e&&this.size<0||(super.computeBBox(t),0!==t.w||!this.node.attributes.hasExplicit("fence")||""!==this.node.getText()||this.node.texClass!==gr.OPEN&&this.node.texClass!==gr.CLOSE||this.jax.options.mathmlSpacing||(t.R=this.font.params.nulldelimiterspace),this.copySkewIC(t))}getAccentOffset(){const t=To.empty();return this.protoBBox(t),-t.w/2}getCenterOffset(t=null){return t||(t=To.empty(),super.computeBBox(t)),(t.h+t.d)/2+this.font.params.axis_height-t.h}getStretchedVariant(t,e=!1){if(this.stretch.dir===Ic.None)return;let s=this.getWH(t);const i=this.getSize("minsize",0),r=this.getSize("maxsize",1/0),n=this.node.getProperty("mathaccent");s=Math.max(i,Math.min(r,s));const o=this.font.params.delimiterfactor/1e3,a=this.font.params.delimitershortfall,l=i||e?s:n?Math.min(s/o,s+a):Math.max(s*o,s-a),c=this.getText().codePointAt(0);let h=this.stretch;this.size&&(this.stretch=h=this.font.getDelimiter(c),this.size=null);const d=h.c||c;let u=0;if(h.sizes)for(const t of h.sizes){if(t>=l)return n&&u&&u--,void this.setDelimSize(d,u);u++}h.stretch?(this.size=-1,this.invalidateBBox(),this.getStretchBBox(t,this.checkExtendedHeight(s,h),h)):this.setDelimSize(d,u-1)}setDelimSize(t,e){const s=this.stretch;this.variant=this.font.getSizeVariant(t,e),this.size=e;const i=s.schar&&s.schar[Math.min(e,s.schar.length-1)]||t;this.stretch=Object.assign(Object.assign({},s),{c:i}),this.childNodes[0].invalidateBBox()}getSize(t,e){const s=this.node.attributes;return s.isSet(t)&&(e=this.length2em(s.get(t),1,1)),e}getWH(t){if(0===t.length)return 0;if(1===t.length)return t[0];const[e,s]=t,i=this.font.params.axis_height;return this.node.attributes.get("symmetric")?2*Math.max(e-i,s+i):e+s}getStretchBBox(t,e,s){Object.hasOwn(s,"min")&&s.min>e&&(e=s.min);let[i,r,n]=s.HDW;if(this.stretch.dir===Ic.Vertical)[i,r]=this.getBaseline(t,e,s);else if(n=e,this.stretch.hd&&!this.jax.options.mathmlSpacing){const t=this.font.params.extender_factor;i=i*(1-t)+this.stretch.hd[0]*t,r=r*(1-t)+this.stretch.hd[1]*t}this.bbox.h=i,this.bbox.d=r,this.bbox.w=n}getBaseline(t,e,s){const i=2===t.length&&t[0]+t[1]===e,r=this.node.attributes.get("symmetric"),[n,o]=i?t:[e,0];let[a,l]=[n+o,0];if(r){const t=this.font.params.axis_height;i&&(a=2*Math.max(n-t,o+t)),l=a/2-t}else if(i)l=o;else{const[t,e]=s.HDW||[.75,.25];l=e*(a/(t+e))}return[a-l,l]}checkExtendedHeight(t,e){if(e.fullExt){const[s,i]=e.fullExt;t=i+Math.ceil(Math.max(0,t-i)/s)*s}return t}setBreakStyle(t=""){var e;if(this.breakStyle=(null===(e=this.node.parent)||void 0===e?void 0:e.isEmbellished)&&!t?"":this.getBreakStyle(t),this.breakCount&&this.multChar){const t=this.parent.node.childIndex(this.node),e=this.parent.node.childNodes[t+1];e&&e.setTeXclass(this.multChar.node)}}getBreakStyle(t=""){const e=this.node.attributes;let s=t||("newline"===e.get("linebreak")||this.node.getProperty("forcebreak")?e.get("linebreakstyle"):"");return"infixlinebreakstyle"===s&&(s=e.get(s)),s}getMultChar(){const t=this.node.attributes.get("linebreakmultchar");t&&"\u2062"===this.getText()&&"\u2062"!==t&&(this.multChar=this.createMo(t))}constructor(t,e,s=null){super(t,e,s),this.size=null,this.isAccent=this.node.isAccent,this.getMultChar(),this.setBreakStyle()}computeBBox(t,e=!1){if(this.protoBBox(t),this.node.attributes.get("symmetric")&&this.stretch.dir!==Ic.Horizontal){const e=this.getCenterOffset(t);t.h+=e,t.d-=e}this.node.getProperty("mathaccent")&&(this.stretch.dir===Ic.None||this.size>=0)&&(t.w=0)}computeLineBBox(t){return this.moLineBBox(t,this.breakStyle)}moLineBBox(t,e,s=null){const i=this.node.attributes.get("lineleading"),r=this.length2em(i,this.linebreakOptions.lineleading);if(0===t&&"before"===e){const t=_c.from(To.zero(),r);return t.originalL=this.bbox.L,this.bbox.L=0,t}let n=_c.from(s||this.getOuterBBox(),r);return 1===t&&("after"===e?(n.w=n.h=n.d=0,n.isFirst=!0,this.bbox.R=0):"duplicate"===e?n.L=0:this.multChar&&(n=_c.from(this.multChar.getOuterBBox(),r)),n.getIndentData(this.node)),n}canStretch(t){if(this.stretch.dir!==Ic.None)return this.stretch.dir===t;if(!this.node.attributes.get("stretchy"))return!1;const e=this.getText();if(1!==Array.from(e).length)return!1;const s=this.font.getDelimiter(e.codePointAt(0));return this.stretch=s&&s.dir===t?s:Bc,this.stretch.dir!==Ic.None}getVariant(){this.node.attributes.get("largeop")?this.variant=this.node.attributes.get("displaystyle")?"-largeop":"-smallop":this.node.attributes.hasExplicit("mathvariant")||!1!==this.node.getProperty("pseudoscript")?super.getVariant():this.variant="-tex-variant"}remapChars(t){const e=this.node.getProperty("primes");if(e)return Ur(e);if(1===t.length){const e=this.node.coreParent().parent,s=this.isAccent&&!e.isKind("mrow")?"accent":"mo",i=this.font.getRemappedChar(s,t[0]);i&&(t=this.unicodeChars(i,this.variant))}return t}}}rh.OPTIONS=Object.assign(Object.assign({},jc.OPTIONS),{dynamicPrefix:"./chtml/dynamic",fontURL:"./chtml/woff2"}),rh.JAX="CHTML",rh.defaultVariantLetters={},rh.defaultStyles={},rh.defaultFonts={},rh.combiningChars=[[768,879],[8400,8447]];const ah=function(){var t;const e=oh(Qc);return t=class extends e{toCHTML(t){const e=this.adaptor,s=this.node.attributes,i=s.get("symmetric")&&this.stretch.dir!==Ic.Horizontal,r=this.stretch.dir!==Ic.None;r&&null===this.size&&this.getStretchedVariant([]),t.length>1&&t.forEach(t=>e.append(t,this.html("mjx-linestrut")));const n=this.standardChtmlNodes(t);if(n.length>1&&"duplicate"!==this.breakStyle){const t="after"===this.breakStyle?1:0;e.remove(n[t]),n[t]=null}if(r&&this.size<0)this.stretchHTML(n);else{if(i||s.get("largeop")){const t=this.em(this.getCenterOffset());"0"!==t&&n.forEach(s=>s&&e.setStyle(s,"verticalAlign",t))}this.node.getProperty("mathaccent")&&n.forEach(t=>{e.setStyle(t,"width","0"),e.setStyle(t,"margin-left",this.em(this.getAccentOffset()))}),n[0]&&this.addChildren([n[0]]),n[1]&&(this.multChar||this).addChildren([n[1]])}}stretchHTML(t){const e=this.getText().codePointAt(0);this.font.delimUsage.add(e),this.childNodes[0].markUsed();const s=this.stretch,i=s.stretch,r=this.font.getStretchVariants(e),n=[],o=[];for(let t=0;tt?o?t[0]+t[1]:t[2]:0);l=Math.max(0,l-n);const[d,u]=t[3]?[(r-h)/2-a,(r-h)/2-c]:[r-a-c,0];this.createPart("mjx-beg",t[0],e[0],s[0],i),this.createPart("mjx-ext",t[1],e[1],s[1],i,d,l,o,a,h/2||c),t[3]&&(this.createPart("mjx-mid",t[3],e[3],s[3],i),this.createPart("mjx-ext",t[1],e[1],s[1],i,u,l,o,h/2,c)),this.createPart("mjx-end",t[2],e[2],s[2],i)}createPart(t,e,s,i,r,n=0,o=0,a="",l=0,c=0){if(s){const h=e[3],d=h.f||("normal"===i?"":this.font.getVariant(i).letter),u=h.ff||(d?`${this.font.cssFontPrefix}-${d}`:""),p=h.c||String.fromCodePoint(s);let m=[];if("mjx-ext"===t&&(o||h.dx)){if(n<0&&a)return void r.push(this.html(t,Object.assign(Object.assign({},u?{class:u}:{}),{style:{"border-width":`${this.em(l+n/2)} 0 ${this.em(c+n/2)}`,"clip-path":"none"}})));o||(o=Math.max(Pc,2*h.dx-Pc));const e=Math.min(Math.ceil(n/o)+1,500);if(h.cmb){m.push(this.html("mjx-spacer"));for(let t=0;t`mjx-stretchy-h > mjx-${t}`).join(", ")]:{display:"inline-block",width:0,"text-align":"right"},"mjx-stretchy-h > mjx-ext":{"clip-path":"padding-box polygon(0 -1em, 100% -1em, 100% calc(100% + 1em), 0 calc(100% + 1em))",width:"100%",border:"0px solid transparent","box-sizing":"border-box","text-align":"left"},"mjx-stretchy-v":{display:"inline-block","text-align":"center"},[["beg","ext","end","mid"].map(t=>`mjx-stretchy-v > mjx-${t}`).join(", ")]:{display:"block",height:0,margin:"0 auto"},"mjx-stretchy-v > mjx-ext > mjx-spacer":{display:"block"},"mjx-stretchy-v > mjx-ext":{"clip-path":"padding-box polygon(-1em 0, calc(100% + 1em) 0, calc(100% + 1em) 100%, -1em 100%)",height:"100%",border:"0.1px solid transparent","box-sizing":"border-box","white-space":"pre"},"mjx-mark":{display:"inline-block",height:0}},t}();function lh(t){return class extends t{remapChars(t){if(t.length){const e=this.font.getRemappedChar("mn",t[0]);if(e){const s=this.unicodeChars(e,this.variant);1===s.length?t[0]=s[0]:t=s.concat(t.slice(1))}}return t}}}const ch=function(){var t;const e=lh(Qc);return(t=class extends e{}).kind=wr.prototype.kind,t}();function hh(t){return class extends t{createText(t){const e=this.wrap(this.mmlText(t));return e.parent=this,e}constructor(t,e,s=null){super(t,e,s);const i=this.node.attributes,r=i.getList("lquote","rquote");"monospace"!==this.variant&&(i.isSet("lquote")||'"'!==r.lquote||(r.lquote="\u201c"),i.isSet("rquote")||'"'!==r.rquote||(r.rquote="\u201d")),this.childNodes.unshift(this.createText(r.lquote)),this.childNodes.push(this.createText(r.rquote))}}}const dh=function(){var t;const e=hh(Qc);return(t=class extends e{}).kind=Kr.prototype.kind,t}();function uh(t){var e;return e=class extends t{constructor(){super(...arguments),this.breakPoints=[]}textWidth(t){let e=this.textNode;if(!e){const t=this.node.factory.create("text");t.parent=this.node,e=this.textNode=this.factory.wrap(t),e.parent=this}return e.node.setText(t),e.invalidateBBox(!1),e.getBBox().w}get breakCount(){return this.breakPoints.length}getVariant(){const t=this.jax.options,e=this.jax.math.outputData,s=(!!e.merrorFamily||!!t.merrorFont)&&this.node.Parent.isKind("merror");if(e.mtextFamily||t.mtextFont||s){const i=this.node.attributes.get("mathvariant"),r=this.constructor.INHERITFONTS[i]||this.jax.font.getCssFont(i),n=r[0]||(s?e.merrorFamily||t.merrorFont:e.mtextFamily||t.mtextFont);return void(this.variant=this.explicitVariant(n,r[2]?"bold":"",r[1]?"italic":""))}super.getVariant()}setBreakAt(t){this.breakPoints.push(t)}clearBreakPoints(){this.breakPoints=[]}computeLineBBox(t){const e=_c.from(this.getOuterBBox(),this.linebreakOptions.lineleading);return this.breakCount?(e.w=this.getBreakWidth(t),0===t?(e.R=0,this.addLeftBorders(e)):(e.L=0,e.indentData=[["left","0"],["left","0"],["left","0"]],t===this.breakCount&&this.addRightBorders(e)),e):e}getBreakWidth(t){const e=this.childNodes;let[s,i]=this.breakPoints[t-1]||[0,0];const[r,n]=this.breakPoints[t]||[e.length,0];let o=e[s].node.getText().split(/ /);if(s===r)return this.textWidth(o.slice(i,n).join(" "));let a=this.textWidth(o.slice(i).join(" "));for(;++s1&&t.forEach(t=>this.adaptor.append(t,this.html("mjx-linestrut")));const e=this.standardChtmlNodes(t);let{w:s,h:i,d:r}=this.getBBox();s<0&&(this.adaptor.setStyle(e[0],"marginRight",this.em(s)),s=0),s&&!this.breakCount&&this.adaptor.setStyle(e[0],"width",this.em(s)),i=Math.max(0,i+r),i&&this.adaptor.setStyle(e[0],"height",this.em(Math.max(0,i))),r&&this.adaptor.setStyle(e[0],"verticalAlign",this.em(-r))}}).kind=Jr.prototype.kind,t}();function gh(t){return class extends t{get containerWidth(){const t=this.node.attributes,e=t.get("width").toString();return e.match(/^[-+]|%$/)||"linebreak"!==t.get("data-overflow")?this.parent.containerWidth:this.length2em(e)}getDimens(){const t=this.node.attributes.getList("width","height","depth","lspace","voffset"),e=this.childNodes[0].getOuterBBox();let{w:s,h:i,d:r}=e;const n=s,o=i,a=r;let l=0,c=0,h=0;""!==t.width&&(s=this.dimen(t.width,e,"w",0)),""!==t.height&&(i=this.dimen(t.height,e,"h",0)),""!==t.depth&&(r=this.dimen(t.depth,e,"d",0)),""!==t.voffset&&(c=this.dimen(t.voffset,e)),""!==t.lspace&&(l=this.dimen(t.lspace,e));const d=this.node.attributes.get("data-align");return d&&(h=this.getAlignX(s,e,d)),[o,a,n,i-o,r-a,s-n,l,c,h]}dimen(t,e,s="",i=null){const r=(t=String(t)).match(/width|height|depth/),n=r?e[r[0].charAt(0)]:s?e[s]:0;let o=this.length2em(t,n)||0;return t.match(/^[-+]/)&&s&&(o+=n),null!=i&&(o=Math.max(i,o)),o}setBBoxDimens(t){const[e,s,i,r,n,o]=this.getDimens();t.w=i+o,t.h=e+r,t.d=s+n}computeBBox(t,e=!1){this.setBBoxDimens(t);if(this.childNodes[0].getOuterBBox().w>t.w){const e=this.node.attributes.get("data-overflow");("linebreak"===e||"auto"===e&&"linebreak"===this.jax.math.root.attributes.get("overflow"))&&(this.childNodes[0].breakToWidth(t.w),this.setBBoxDimens(t))}this.setChildPWidths(e,t.w)}getWrapWidth(t){return this.getBBox().w}getChildAlign(t){return this.node.attributes.get("data-align")||"left"}}}const bh=function(){var t;const e=gh(Qc);return(t=class extends e{toCHTML(t){if(this.toEmbellishedCHTML(t))return;let e=this.standardChtmlNodes(t);const s=[],i={},[,,r,n,o,a,l,c,h]=this.getDimens();if((a||this.childNodes[0].getBBox().pwidth)&&(i.width=this.em(r+a)),(n||o)&&(i.margin=this.em(n)+" 0 "+this.em(o)),l+h||c){i.position="relative";const t=this.html("mjx-rbox",{style:{left:this.em(l+h),top:this.em(-c),"max-width":i.width}});l+h&&this.childNodes[0].getBBox().pwidth&&(this.adaptor.setAttribute(t,"width","full"),this.adaptor.setStyle(t,"left",this.em(l))),s.push(t)}e=[this.adaptor.append(e[0],this.html("mjx-block",{style:i},s))],this.childNodes[0].childNodes.length?this.childNodes[0].toCHTML([s[0]||e[0]]):(n||o)&&this.adaptor.append(s[0]||e[0],this.html("mjx-box"))}}).kind=rn.prototype.kind,t.styles={"mjx-mpadded":{display:"inline-block"},"mjx-rbox":{display:"inline-block",position:"relative"}},t}(),Eh=4,xh=1,yh=2,Nh=.067,vh=.2,Th=Nh+"em solid",Ch={top:0,right:1,bottom:2,left:3},Ah=Object.keys(Ch),Lh=t=>new Array(4).fill(t.thickness+t.padding),Sh=t=>new Array(4).fill(t.padding),Rh=t=>new Array(4).fill(t.thickness),Mh=t=>Math.max(t.padding,t.thickness*(t.arrowhead.x+t.arrowhead.dx+1)),Ih=(t,e)=>{if(t.childNodes[0]){const{h:s,d:i}=t.childNodes[0].getBBox();e[0]=e[2]=Math.max(0,t.thickness*t.arrowhead.y-(s+i)/2)}return e},wh=(t,e)=>{if(t.childNodes[0]){const{w:s}=t.childNodes[0].getBBox();e[1]=e[3]=Math.max(0,t.thickness*t.arrowhead.y-s/2)}return e},kh={up:[-Math.PI/2,!1,!0,"verticalstrike"],down:[Math.PI/2,!1,!0,"verticakstrike"],right:[0,!1,!1,"horizontalstrike"],left:[Math.PI,!1,!1,"horizontalstrike"],updown:[Math.PI/2,!0,!0,"verticalstrike uparrow downarrow"],leftright:[0,!0,!1,"horizontalstrike leftarrow rightarrow"]},Oh={updiagonal:[-1,0,!1,"updiagonalstrike northeastarrow"],northeast:[-1,0,!1,"updiagonalstrike updiagonalarrow"],southeast:[1,0,!1,"downdiagonalstrike"],northwest:[1,Math.PI,!1,"downdiagonalstrike"],southwest:[-1,Math.PI,!1,"updiagonalstrike"],northeastsouthwest:[-1,0,!0,"updiagonalstrike northeastarrow updiagonalarrow southwestarrow"],northwestsoutheast:[1,0,!0,"downdiagonalstrike northwestarrow southeastarrow"]},Dh={up:t=>wh(t,[Mh(t),0,t.padding,0]),down:t=>wh(t,[t.padding,0,Mh(t),0]),right:t=>Ih(t,[0,Mh(t),0,t.padding]),left:t=>Ih(t,[0,t.padding,0,Mh(t)]),updown:t=>wh(t,[Mh(t),0,Mh(t),0]),leftright:t=>Ih(t,[0,Mh(t),0,Mh(t)])},Ph=function(t){return e=>{const s=Ch[e];return[e,{renderer:t,bbox:t=>{const e=[0,0,0,0];return e[s]=t.thickness+t.padding,e},border:t=>{const e=[0,0,0,0];return e[s]=t.thickness,e}}]}},Bh=function(t){return(e,s,i)=>{const r=Ch[s],n=Ch[i];return[e,{renderer:t,bbox:t=>{const e=t.thickness+t.padding,s=[0,0,0,0];return s[r]=s[n]=e,s},border:t=>{const e=[0,0,0,0];return e[r]=e[n]=t.thickness,e},remove:s+" "+i}]}},Fh=function(t){return e=>{const s="mjx-"+e.charAt(0)+"strike";return[e+"diagonalstrike",{renderer:t(s),bbox:Lh}]}},jh=function(t){return e=>{const[s,i,r,n]=Oh[e];return[e+"arrow",{renderer:(e,n)=>{const[o,a]=e.arrowAW(),l=e.arrow(a,s*(o-i),r);t(e,l)},bbox:t=>{const{a:e,x:s,y:i}=t.arrowData(),[r,n,o]=[t.arrowhead.x,t.arrowhead.y,t.arrowhead.dx],[a,l]=t.getArgMod(r+o,n),c=i+(a>e?t.thickness*l*Math.sin(a-e):0),h=s+(a>Math.PI/2-e?t.thickness*l*Math.sin(a+e-Math.PI/2):0);return[c,h,c,h]},remove:n}]}},_h=function(t){return e=>{const[s,i,r,n]=kh[e];return[e+"arrow",{renderer:(e,n)=>{const{w:o,h:a,d:l}=e.getBBox(),[c,h]=r?[a+l,"X"]:[o,"Y"],d=e.getOffset(h),u=e.arrow(c,s,i,h,d);t(e,u)},bbox:Dh[e],remove:n}]}};function Uh(t){return class extends t{getParameters(){const t=this.node.attributes,e=t.get("data-padding");void 0!==e&&(this.padding=this.length2em(e,vh));const s=t.get("data-thickness");void 0!==s&&(this.thickness=this.length2em(s,Nh));const i=t.get("data-arrowhead");if(void 0!==i){const[t,e,s]=zr(i);this.arrowhead={x:t?parseFloat(t):Eh,y:e?parseFloat(e):yh,dx:s?parseFloat(s):xh}}}getNotations(){const t=this.constructor.notations;for(const e of zr(this.node.attributes.get("notation"))){const s=t.get(e);s&&(this.notations[e]=s,s.renderChild&&(this.renderChild=s.renderer))}}removeRedundantNotations(){for(const t of Object.keys(this.notations))if(this.notations[t]){const e=this.notations[t].remove||"";for(const t of e.split(/ /))delete this.notations[t]}}initializeNotations(){for(const t of Object.keys(this.notations)){const e=this.notations[t].init;e&&e(this)}}getBBoxExtenders(){const t=[0,0,0,0];for(const e of Object.keys(this.notations))this.maximizeEntries(t,this.notations[e].bbox(this));return t}getPadding(){const t=[0,0,0,0];for(const e of Object.keys(this.notations)){const s=this.notations[e].border;s&&this.maximizeEntries(t,s(this))}return[0,1,2,3].map(e=>this.TRBL[e]-t[e])}maximizeEntries(t,e){for(let s=0;s.001?n:0}getArgMod(t,e){return[Math.atan2(e,t),Math.sqrt(t*t+e*e)]}arrow(t,e,s,i="",r=0){return null}arrowData(){const[t,e]=[this.padding,this.thickness],s=e*(this.arrowhead.x+Math.max(1,this.arrowhead.dx)),{h:i,d:r,w:n}=this.childNodes[0].getBBox(),o=i+r,a=Math.sqrt(o*o+n*n),l=Math.max(t,s*n/a),c=Math.max(t,s*o/a),[h,d]=this.getArgMod(n+2*l,o+2*c);return{a:h,W:d,x:l,y:c}}arrowAW(){const{h:t,d:e,w:s}=this.childNodes[0].getBBox(),[i,r,n,o]=this.TRBL;return this.getArgMod(o+s+r,i+t+e+n)}createMsqrt(t){const e=this.node.factory.create("msqrt");e.inheritAttributesFrom(this.node),e.childNodes[0]=t.node;const s=this.wrap(e);return s.parent=this,s}sqrtTRBL(){const t=this.msqrt.getBBox(),e=this.msqrt.childNodes[0].getBBox();return[t.h-e.h,0,t.d-e.d,t.w-e.w]}constructor(t,e,s=null){super(t,e,s),this.notations={},this.renderChild=null,this.msqrt=null,this.padding=vh,this.thickness=Nh,this.arrowhead={x:Eh,y:yh,dx:xh},this.TRBL=[0,0,0,0],this.getParameters(),this.getNotations(),this.removeRedundantNotations(),this.initializeNotations(),this.TRBL=this.getBBoxExtenders()}computeBBox(t,e=!1){const[s,i,r,n]=this.TRBL,o=this.childNodes[0].getBBox();t.combine(o,n,0),t.h+=s,t.d+=r,t.w+=i,this.setChildPWidths(e)}}}const Hh=function(t,e=""){return(s,i)=>{const r=s.adjustBorder(s.html("mjx-"+t));if(e){const t=s.getOffset(e);if(s.thickness!==Nh||t){const i=`translate${e}(${s.Em(s.thickness/2-t)})`;s.adaptor.setStyle(r,"transform",i)}}s.adaptor.append(s.dom[0],r)}},Wh=function(t){return Ph((e,s)=>{e.adaptor.setStyle(s,"border-"+t,e.Em(e.thickness)+" solid")})(t)},zh=function(t,e,s){return Bh((t,i)=>{const r=t.Em(t.thickness)+" solid";t.adaptor.setStyle(i,"border-"+e,r),t.adaptor.setStyle(i,"border-"+s,r)})(t,e,s)},qh=function(t,e){return Fh(t=>(s,i)=>{const{w:r,h:n,d:o}=s.getBBox(),[a,l]=s.getArgMod(r,n+o),c=e*s.thickness/2,h=s.adjustBorder(s.html(t,{style:{width:s.Em(l),transform:"rotate("+s.fixed(-e*a)+"rad) translateY("+c+"em)"}}));s.adaptor.append(s.dom[0],h)})(t)},Vh=function(t){return jh((t,e)=>{t.adaptor.append(t.dom[0],e)})(t)},Xh=function(t){return _h((t,e)=>{t.adaptor.append(t.dom[0],e)})(t)};function Gh(t,e){return Math.atan2(t,e).toFixed(3).replace(/\.?0+$/,"")}const Jh=Gh(xh,yh),Kh=function(){var t;const e=Uh(Qc);return(t=class extends e{adjustArrow(t,e){const s=this.thickness,i=this.arrowhead;if(i.x===Eh&&i.y===yh&&i.dx===xh&&s===Nh)return;const[r,n]=[s*i.x,s*i.y].map(t=>this.em(t)),o=Gh(i.dx,i.y),[a,l,c,h,d]=this.adaptor.childNodes(t);this.adjustHead(l,[n,"0","1px",r],o),this.adjustHead(c,["1px","0",n,r],"-"+o),this.adjustHead(h,[n,r,"1px","0"],"-"+o),this.adjustHead(d,["1px",r,n,"0"],o),this.adjustLine(a,s,i.x,e)}adjustHead(t,e,s){t&&(this.adaptor.setStyle(t,"border-width",e.join(" ")),this.adaptor.setStyle(t,"transform","skewX("+s+"rad)"))}adjustLine(t,e,s,i){this.adaptor.setStyle(t,"borderTop",this.em(e)+" solid"),this.adaptor.setStyle(t,"top",this.em(-e/2)),this.adaptor.setStyle(t,"right",this.em(e*(s-1))),i&&this.adaptor.setStyle(t,"left",this.em(e*(s-1)))}moveArrow(t,e,s){if(!s)return;const i=this.adaptor.getStyle(t,"transform");this.adaptor.setStyle(t,"transform",`translate${e}(${this.em(-s)})${i?" "+i:""}`)}adjustBorder(t){return this.thickness!==Nh&&this.adaptor.setStyle(t,"borderWidth",this.em(this.thickness)),t}adjustThickness(t){return this.thickness!==Nh&&this.adaptor.setStyle(t,"strokeWidth",this.fixed(this.thickness)),t}fixed(t,e=3){return Math.abs(t)<6e-4?"0":t.toFixed(e).replace(/\.?0+$/,"")}Em(t){return super.em(t)}toCHTML(t){const e=this.adaptor,s=this.standardChtmlNodes(t),i=e.append(s[0],this.html("mjx-box"));this.renderChild?this.renderChild(this,i):this.childNodes[0].toCHTML([i]);for(const t of Object.keys(this.notations)){const e=this.notations[t];e.renderChild||e.renderer(this,i)}const r=this.getPadding();for(const t of Ah){const s=Ch[t];r[s]>0&&e.setStyle(i,"padding-"+t,this.em(r[s]))}}arrow(t,e,s,i="",r=0){const n=this.getBBox().w,o={width:this.em(t)};n!==t&&(o.left=this.em((n-t)/2)),e&&(o.transform="rotate("+this.fixed(e)+"rad)");const a=this.html("mjx-arrow",{style:o},[this.html("mjx-aline"),this.html("mjx-rthead"),this.html("mjx-rbhead")]);return s&&(this.adaptor.append(a,this.html("mjx-lthead")),this.adaptor.append(a,this.html("mjx-lbhead")),this.adaptor.setAttribute(a,"double","true")),this.adjustArrow(a,s),this.moveArrow(a,i,r),a}}).kind=an.prototype.kind,t.styles={"mjx-menclose":{position:"relative"},"mjx-menclose > mjx-dstrike":{display:"inline-block",left:0,top:0,position:"absolute","border-top":Th,"transform-origin":"top left"},"mjx-menclose > mjx-ustrike":{display:"inline-block",left:0,bottom:0,position:"absolute","border-top":Th,"transform-origin":"bottom left"},"mjx-menclose > mjx-hstrike":{"border-top":Th,position:"absolute",left:0,right:0,bottom:"50%",transform:"translateY("+No(Nh/2)+")"},"mjx-menclose > mjx-vstrike":{"border-left":Th,position:"absolute",top:0,bottom:0,right:"50%",transform:"translateX("+No(Nh/2)+")"},"mjx-menclose > mjx-rbox":{position:"absolute",top:0,bottom:0,right:0,left:0,border:Th,"border-radius":No(Nh+vh)},"mjx-menclose > mjx-cbox":{position:"absolute",top:0,bottom:0,right:0,left:0,border:Th,"border-radius":"50%"},"mjx-menclose > mjx-arrow":{position:"absolute",left:0,bottom:"50%",height:0,width:0},"mjx-menclose > mjx-arrow > mjx-aline":{display:"block",position:"absolute","box-sizing":"border-box","transform-origin":"bottom",left:0,top:No(-Nh/2),right:No(Nh*(Eh-1)),height:0,"border-top":No(Nh)+" solid","border-left":0,"border-right":0},"mjx-menclose > mjx-arrow[double] > mjx-aline":{display:"block",position:"absolute","box-sizing":"border-box","transform-origin":"bottom",left:No(Nh*(Eh-1)),height:0,"border-left":No(Nh*Eh)+" solid","border-right":0},"mjx-menclose > mjx-arrow > mjx-rthead":{display:"block",position:"absolute","box-sizing":"border-box","transform-origin":"bottom",transform:"skewX("+Jh+"rad)",right:0,bottom:"-1px","border-left":No(Nh*Eh)+" solid","border-right":0,"border-bottom":"1px solid transparent","border-top":No(Nh*yh)+" solid transparent"},"mjx-menclose > mjx-arrow > mjx-rbhead":{display:"block",position:"absolute","box-sizing":"border-box",transform:"skewX(-"+Jh+"rad)","transform-origin":"top",right:0,top:"-1px","border-left":No(Nh*Eh)+" solid","border-right":0,"border-top":"1px solid transparent","border-bottom":No(Nh*yh)+" solid transparent"},"mjx-menclose > mjx-arrow > mjx-lthead":{display:"block",position:"absolute","box-sizing":"border-box",transform:"skewX(-"+Jh+"rad)","transform-origin":"bottom",left:0,bottom:"-1px","border-left":0,"border-right":No(Nh*Eh)+" solid","border-bottom":"1px solid transparent","border-top":No(Nh*yh)+" solid transparent"},"mjx-menclose > mjx-arrow > mjx-lbhead":{display:"block",position:"absolute","box-sizing":"border-box",transform:"skewX("+Jh+"rad)","transform-origin":"top",left:0,top:"-1px","border-left":0,"border-right":No(Nh*Eh)+" solid","border-top":"1px solid transparent","border-bottom":No(Nh*yh)+" solid transparent"},"mjx-menclose > mjx-dbox-top":{position:"absolute",top:0,bottom:"50%",left:0,width:No(1.5*vh),"border-width":No(Nh),"border-style":"solid solid none none","border-radius":"0 100% 0 0","box-sizing":"border-box"},"mjx-menclose > mjx-dbox-bot":{position:"absolute",top:"50%",bottom:0,left:0,width:No(1.5*vh),"border-width":No(Nh),"border-style":"none solid solid none","border-radius":"0 0 100% 0","box-sizing":"border-box"}},t.notations=new Map([Wh("top"),Wh("right"),Wh("bottom"),Wh("left"),zh("actuarial","top","right"),zh("madruwb","bottom","right"),qh("up",1),qh("down",-1),["horizontalstrike",{renderer:Hh("hstrike","Y"),bbox:t=>[0,t.padding,0,t.padding]}],["verticalstrike",{renderer:Hh("vstrike","X"),bbox:t=>[t.padding,0,t.padding,0]}],["box",{renderer:(t,e)=>{t.adaptor.setStyle(e,"border",t.Em(t.thickness)+" solid")},bbox:Lh,border:Rh,remove:"left right top bottom"}],["roundedbox",{renderer:Hh("rbox"),bbox:Lh}],["circle",{renderer:Hh("cbox"),bbox:Lh}],["phasorangle",{renderer:(t,e)=>{const{h:s,d:i}=t.getBBox(),[r,n]=t.getArgMod(1.75*t.padding,s+i),o=t.thickness*Math.sin(r)*.9;t.adaptor.setStyle(e,"border-bottom",t.Em(t.thickness)+" solid");const a=t.adjustBorder(t.html("mjx-ustrike",{style:{width:t.Em(n),transform:`translateX(${t.Em(o)}) rotate(${t.fixed(-r)}rad)`}}));t.adaptor.append(t.dom[0],a)},bbox:t=>{const e=t.padding/2,s=t.thickness;return[2*e,e,e+s,3*e+s]},border:t=>[0,0,t.thickness,0],remove:"bottom"}],Xh("up"),Xh("down"),Xh("left"),Xh("right"),Xh("updown"),Xh("leftright"),Vh("updiagonal"),Vh("northeast"),Vh("southeast"),Vh("northwest"),Vh("southwest"),Vh("northeastsouthwest"),Vh("northwestsoutheast"),["longdiv",{renderer:(t,e)=>{const s=t.adaptor;s.setStyle(e,"border-top",t.Em(t.thickness)+" solid");const i=s.append(t.dom[0],t.html("mjx-dbox-top")),r=s.append(t.dom[0],t.html("mjx-dbox-bot")),n=t.thickness,o=t.padding;n!==Nh&&(s.setStyle(i,"border-width",t.Em(n)),s.setStyle(r,"border-width",t.Em(n))),o!==vh&&(s.setStyle(i,"width",t.Em(1.5*o)),s.setStyle(r,"width",t.Em(1.5*o)))},bbox:t=>{const e=t.padding,s=t.thickness;return[e+s,e,e,2*e+s/2]}}],["radical",{renderer:(t,e)=>{t.msqrt.toCHTML([e]);const s=t.sqrtTRBL();t.adaptor.setStyle(t.msqrt.dom[0],"margin",s.map(e=>t.Em(-e)).join(" "))},init:t=>{t.msqrt=t.createMsqrt(t.childNodes[0])},bbox:t=>t.sqrtTRBL(),renderChild:!0}]]),t}();function $h(t){return class extends t{stretchChildren(){const t=[];for(const e of this.childNodes)e.canStretch(Ic.Vertical)&&t.push(e);const e=t.length,s=this.childNodes.length;if(e&&s>1){let i=0,r=0;const n=e>1&&e===s;for(const t of this.childNodes){const e=t.stretch.dir===Ic.None;if(n||e){const e=t.getBBox().rscale;let[s,n]=t.getUnbrokenHD();s*=e,n*=e,s>i&&(i=s),n>r&&(r=n)}}for(const e of t){const t=e.coreRScale();e.coreMO().getStretchedVariant([i/t,r/t])}}}get fixesPWidth(){return!1}get breakCount(){return this._breakCount<0&&(this._breakCount=this.childNodes.length?this.childNodes.reduce((t,e)=>t+e.breakCount,0):0),this._breakCount}breakTop(t,e){const s=this;return this.isStack?this.parent.breakTop(s,s):s}constructor(t,e,s=null){super(t,e,s),this.dh=0;const i=this;this.isStack=!this.parent||this.parent.node.isInferred||this.parent.breakTop(i,i)!==i,this.stretchChildren();for(const t of this.childNodes)if(t.bbox.pwidth){this.bbox.pwidth=To.fullWidth;break}}computeBBox(t,e=!1){const s=this.breakCount;this.lineBBox=s?[new _c({h:.75,d:.25,w:0},[0,0])]:[],t.empty();for(const e of this.childNodes.keys()){const i=this.childNodes[e];t.append(i.getOuterBBox()),s&&this.computeChildLineBBox(i,e)}t.clean(),s&&!this.coreMO().node.isEmbellished&&this.computeLinebreakBBox(t),this.fixesPWidth&&this.setChildPWidths(e)&&this.computeBBox(t,!0),this.vboxAdjust(t)}computeLinebreakBBox(t){var e;t.empty();const s=this.isStack,i=this.lineBBox,r=i.length-1;if(s)for(const t of i.keys()){const e=i[t];this.addMiddleBorders(e),0===t&&this.addLeftBorders(e),t===r&&this.addRightBorders(e)}let n=0;for(const s of i.keys()){const r=i[s];t.combine(r,0,n),n-=Math.max(.25,r.d)+r.lineLeading+Math.max(.75,(null===(e=i[s+1])||void 0===e?void 0:e.h)||0)}s?(i[0].L=this.bbox.L,i[r].R=this.bbox.R):(t.w=Math.max(...this.lineBBox.map(t=>t.w)),this.shiftLines(t),this.jax.math.display||this.linebreakOptions.inline||(t.pwidth=To.fullWidth,this.node.isInferred&&(this.parent.bbox.pwidth=To.fullWidth))),t.clean()}vboxAdjust(t){if(!this.parent)return;const e=this.breakCount,s=this.parent.node.attributes.get("data-vertical-align");if(e&&"bottom"===s)this.dh=e?t.d-this.lineBBox[e-1].d:0;else{if(!("center"===s||e&&"middle"===s))return void(this.dh=0);{const{h:e,d:s}=t,i=this.font.params.axis_height;this.dh=(e+s)/2+i-e}}t.h+=this.dh,t.d-=this.dh}computeChildLineBBox(t,e){const s=this.lineBBox[this.lineBBox.length-1];s.end=[e,0],s.append(t.getLineBBox(0));const i=t.breakCount+1;if(1!==i)for(let s=1;st.w&&(t.w=p)}}setChildPWidths(t,e=null,s=!0){return this.breakCount?!t&&(null!==e&&this.bbox.w!==e&&(this.bbox.w=e,this.shiftLines(this.bbox)),!0):super.setChildPWidths(t,e,s)}breakToWidth(t){this.linebreaks.breakToWidth(this,t)}}}function Yh(t){return class extends t{getScale(){this.bbox.scale=this.parent.bbox.scale,this.bbox.rscale=1}}}const Qh=function(){var t;const e=$h(Qc);return t=class extends e{constructor(){super(...arguments),this.linebreakCount=0}toCHTML(t){const e=this.linebreakCount=this.isStack?0:this.breakCount;e||!this.node.isInferred?t=this.standardChtmlNodes(t):this.dom=t,this.addChildren(t),e?this.placeLines(t,e):(this.handleVerticalAlign(t[0]),this.handleNegativeWidth(t[0]))}placeLines(t,e){var s,i;this.getBBox();const r=this.lineBBox,n=this.adaptor,[o,a]=(null===(s=r[1].indentData)||void 0===s?void 0:s[0])||["left","0"];for(const s of t.keys()){const l=r[s],[c,h]=0===s?[o,a]:(null===(i=l.indentData)||void 0===i?void 0:i[s===e?2:1])||["left","0"],[d,u]=this.processIndent(c,h,o,a);n.setAttribute(t[s],"align",d),u&&n.setStyle(t[s],"margin-left",this.em(u)),s mjx-linebox":{display:"inline"},"mjx-linestack[breakable] > mjx-linebox::before":{"white-space":"pre",content:'"\\A"'},"mjx-linestack[breakable] > mjx-linebox::after":{"white-space":"normal",content:'" "',"letter-spacing":"-.999em","font-family":"MJX-BRK"},"mjx-linestack[breakable] > mjx-linebox:first-of-type::before":{display:"none"},"mjx-linestack[breakable] > mjx-linebox:last-of-type::after":{display:"none"},"mjx-linebox":{display:"block"},'mjx-linebox[align="left"]':{"text-align":"left"},'mjx-linebox[align="center"]':{"text-align":"center"},'mjx-linebox[align="right"]':{"text-align":"right"},"mjx-linestrut":{display:"inline-block",height:"1em","vertical-align":"-.25em"}},t}(),Zh=function(){var t;const e=Yh(Qh);return(t=class extends e{}).kind=Yr.prototype.kind,t}();function td(t){return class extends t{createMrow(){const t=this.node.factory.create("inferredMrow");t.inheritAttributesFrom(this.node),this.mrow=this.wrap(t),this.mrow.parent=this}addMrowChildren(){const t=this.node,e=this.mrow;this.addMo(t.open),this.childNodes.length&&e.childNodes.push(this.childNodes[0]);let s=0;for(const i of this.childNodes.slice(1))this.addMo(t.separators[s++]),e.childNodes.push(i);this.addMo(t.close),e.stretchChildren()}addMo(t){if(!t)return;const e=this.wrap(t);this.mrow.childNodes.push(e),e.parent=this.mrow}constructor(t,e,s=null){super(t,e,s),this.mrow=null,this.createMrow(),this.addMrowChildren()}computeBBox(t,e=!1){t.updateFrom(this.mrow.getOuterBBox()),this.setChildPWidths(e)}get breakCount(){return this.mrow.breakCount}computeLineBBox(t){return this.mrow.getLineBBox(t)}}}const ed=function(){var t;const e=td(Qc);return(t=class extends e{toCHTML(t){const e=this.standardChtmlNodes(t);this.mrow.toCHTML(e)}}).kind=on.prototype.kind,t}();function sd(t){return class extends t{getFractionBBox(t,e,s){const i=this.childNodes[0].getOuterBBox(),r=this.childNodes[1].getOuterBBox(),n=this.font.params.axis_height,{T:o,u:a,v:l}=this.getTUV(e,s);t.combine(i,0,n+o+Math.max(i.d*i.rscale,a)),t.combine(r,0,n-o-Math.max(r.h*r.rscale,l)),t.w+=2*this.pad+.2}getTUV(t,e){const s=this.font.params,i=s.axis_height,r=(t?3.5:1.5)*e;return{T:(t?3.5:1.5)*e,u:(t?s.num1:s.num2)-i-r,v:(t?s.denom1:s.denom2)+i-r}}getAtopBBox(t,e){const{u:s,v:i,nbox:r,dbox:n}=this.getUVQ(e);t.combine(r,0,s),t.combine(n,0,-i),t.w+=2*this.pad}getUVQ(t){const e=this.childNodes[0].getOuterBBox(),s=this.childNodes[1].getOuterBBox(),i=this.font.params;let[r,n]=t?[i.num1,i.denom1]:[i.num3,i.denom2];const o=(t?7:3)*i.rule_thickness;let a=r-e.d*e.scale-(s.h*s.scale-n);return a mjx-line, mjx-dtable > mjx-row":{"font-size":"2000%"},"mjx-dbox":{display:"block","font-size":"5%"},"mjx-num":{display:"block","text-align":"center"},"mjx-den":{display:"block","text-align":"center"},"mjx-mfrac[bevelled] > mjx-num":{display:"inline-block"},"mjx-mfrac[bevelled] > mjx-den":{display:"inline-block"},'mjx-den[align="right"], mjx-num[align="right"]':{"text-align":"right"},'mjx-den[align="left"], mjx-num[align="left"]':{"text-align":"left"},"mjx-nstrut":{display:"inline-block",height:".054em",width:0,"vertical-align":"-.054em"},'mjx-nstrut[type="d"]':{height:".217em","vertical-align":"-.217em"},"mjx-dstrut":{display:"inline-block",height:".505em",width:0},'mjx-dstrut[type="d"]':{height:".726em"},"mjx-line":{display:"block","box-sizing":"border-box","min-height":"1px",height:".06em","border-top":".075em solid",margin:".06em -.1em",overflow:"hidden"},'mjx-line[type="d"]':{margin:".18em -.1em"}},t}();function rd(t){return class extends t{get base(){return 0}get root(){return null}combineRootBBox(t,e,s){}getPQ(t){const e=this.font.params.rule_thickness,s=this.font.params.surd_height,i=this.node.attributes.get("displaystyle")?this.font.params.x_height:e;return[i,t.h+t.d>this.surdH?(t.h+t.d-(this.surdH-e-s-i/2))/2:s+i/4]}getRootDimens(t,e){return[0,0,0,0]}rootWidth(){return 1.25}getStretchedSurd(){const t=this.font.params.rule_thickness,e=this.font.params.surd_height,s=this.node.attributes.get("displaystyle")?this.font.params.x_height:t,{h:i,d:r}=this.childNodes[this.base].getOuterBBox();this.surdH=i+r+t+e+s/4,this.surd.getStretchedVariant([this.surdH-r,r],!0)}constructor(t,e,s=null){super(t,e,s),this.surd=this.createMo("\u221a"),this.surd.canStretch(Ic.Vertical),this.getStretchedSurd()}computeBBox(t,e=!1){t.empty();const s=this.surd.getBBox(),i=new To(this.childNodes[this.base].getOuterBBox()),r=this.getPQ(s)[1],n=this.font.params.rule_thickness,o=this.font.params.surd_height,a=i.h+r+n,[l]=this.getRootDimens(s,a);t.h=a+o,this.combineRootBBox(t,s,a),t.combine(s,l,a-s.h),t.combine(i,l+s.w,0),t.clean(),this.setChildPWidths(e)}invalidateBBox(){super.invalidateBBox(),this.surd.childNodes[0].invalidateBBox()}}}const nd=function(){var t;const e=rd(Qc);return t=class extends e{toCHTML(t){const e=this.surd,s=this.childNodes[this.base],i=e.getBBox(),r=s.getOuterBBox(),[,n]=this.getPQ(i),o=this.font.params.surd_height,a=r.h+n+o,l=this.adaptor,c=this.standardChtmlNodes(t);let h,d,u,p;null!=this.root&&(u=l.append(c[0],this.html("mjx-root")),p=this.childNodes[this.root]);const m=l.append(c[0],this.html("mjx-sqrt",{},[h=this.html("mjx-surd"),d=this.html("mjx-box",{style:{paddingTop:this.em(n)}})]));.06!==o&&l.setStyle(d,"border-top-width",this.em(o*this.font.params.rule_factor)),this.addRoot(u,p,i,a),e.toCHTML([h]),s.toCHTML([d]),e.size<0&&l.addClass(m,"mjx-tall")}addRoot(t,e,s,i){}},t.kind=Zr.prototype.kind,t.styles={"mjx-root":{display:"inline-block","white-space":"nowrap"},"mjx-surd":{display:"inline-block","vertical-align":"top"},"mjx-sqrt":{display:"inline-block","padding-top":".075em"},"mjx-sqrt > mjx-box":{"border-top":".075em solid","padding-left":".03em","margin-left":"-.03em"},"mjx-sqrt.mjx-tall > mjx-box":{"padding-left":".3em","margin-left":"-.3em"}},t}();function od(t){return class extends t{get root(){return 1}combineRootBBox(t,e,s){const i=this.childNodes[this.root].getOuterBBox(),r=this.getRootDimens(e,s)[1];t.combine(i,0,r)}getRootDimens(t,e){const s=this.surd,i=this.childNodes[this.root].getOuterBBox(),r=(s.size<0?.5:.6)*t.w,{w:n,rscale:o}=i,a=Math.max(n,r/o),l=Math.max(0,a-n);return[a*o-r,this.rootHeight(i,t,s.size,e),l]}rootHeight(t,e,s,i){const r=e.h+e.d;return(s<0?1.9:.55*r)-(r-i)+Math.max(0,t.d*t.rscale)}rootWidth(){const t=this.childNodes[this.root].getOuterBBox();return.4+t.w*t.rscale}}}const ad=function(){var t;const e=od(nd);return t=class extends e{addRoot(t,e,s,i){e.toCHTML([t]);const r=this.adaptor,[n,o,a]=this.getRootDimens(s,i);r.setStyle(t,"verticalAlign",this.em(o)),r.setStyle(t,"width",this.em(n)),a&&r.setStyle(r.firstChild(t),"paddingLeft",this.em(a))}},t.kind=tn.prototype.kind,t}();function ld(t){var e;return(e=class extends t{get scriptChild(){return this.childNodes[this.node.sub]}getOffset(){return[this.baseIsChar?0:this.getAdjustedIc(),-this.getV()]}}).useIC=!1,e}function cd(t){return class extends t{get scriptChild(){return this.childNodes[this.node.sup]}getOffset(){return[this.getAdjustedIc()-(this.baseRemoveIc?0:this.baseIc),this.getU()]}}}function hd(t){var e;return e=class extends t{constructor(){super(...arguments),this.UVQ=null}get subChild(){return this.childNodes[this.node.sub]}get supChild(){return this.childNodes[this.node.sup]}get scriptChild(){return this.supChild}getUVQ(t=this.subChild.getOuterBBox(),e=this.supChild.getOuterBBox()){const s=this.baseCore,i=s.getLineBBox(s.breakCount);if(this.UVQ)return this.UVQ;const r=this.font.params,n=3*r.rule_thickness,o=this.length2em(this.node.attributes.get("subscriptshift"),r.sub2),a=this.baseCharZero(i.d*this.baseScale+r.sub_drop*t.rscale),l=e.d*e.rscale,c=t.h*t.rscale;let[h,d]=[this.getU(),Math.max(a,o)],u=h-l-(c-d);if(u0&&(h+=t,d-=t)}return h=Math.max(this.length2em(this.node.attributes.get("superscriptshift"),h),h),d=Math.max(this.length2em(this.node.attributes.get("subscriptshift"),d),d),u=h-l-(c-d),this.UVQ=[h,-d,u],this.UVQ}appendScripts(t){const[e,s]=[this.subChild.getOuterBBox(),this.supChild.getOuterBBox()],i=this.getBaseWidth(),r=this.getAdjustedIc(),[n,o]=this.getUVQ(),a=t.d-this.baseChild.getLineBBox(this.baseChild.breakCount).d;return t.combine(e,i+(this.baseIsChar?0:r),o-a),t.combine(s,i+r,n-a),t.w+=this.font.params.scriptspace,t}},e.useIC=!1,e}function dd(t){var e;return e=class extends t{get baseChild(){return this.childNodes[this.node.base]}get scriptChild(){return this.childNodes[1]}getBaseCore(){let t=this.getSemanticBase()||this.childNodes[0],e=null==t?void 0:t.node;for(;t&&(1===t.childNodes.length&&(e.isKind("mrow")||e.isKind("TeXAtom")||e.isKind("mstyle")||e.isKind("mpadded")&&!e.getProperty("vbox")||e.isKind("mphantom")||e.isKind("semantics"))||e.isKind("munderover")&&t.isMathAccent);)this.setBaseAccentsFor(t),t=t.childNodes[0],e=null==t?void 0:t.node;return t||(this.baseHasAccentOver=this.baseHasAccentUnder=!1),t||this.childNodes[0]}setBaseAccentsFor(t){t.node.isKind("munderover")&&(null===this.baseHasAccentOver&&(this.baseHasAccentOver=!!t.node.attributes.get("accent")),null===this.baseHasAccentUnder&&(this.baseHasAccentUnder=!!t.node.attributes.get("accentunder")))}getSemanticBase(){const t=this.node.attributes.getExplicit("data-semantic-fencepointer");return this.getBaseFence(this.baseChild,t)}getBaseFence(t,e){if(!t||!t.node.attributes||!e)return null;if(t.node.attributes.getExplicit("data-semantic-id")===e)return t;for(const s of t.childNodes){const t=this.getBaseFence(s,e);if(t)return t}return null}getBaseScale(){let t=this.baseCore,e=1;for(;t&&t!==this;){e*=t.getOuterBBox().rscale,t=t.parent}return e}getBaseIc(){return this.baseCore.getOuterBBox().ic*this.baseScale}getAdjustedIc(){return this.baseIc?1.05*this.baseIc+.05:0}isCharBase(){const t=this.baseCore;return(t.node.isKind("mo")&&null===t.size||t.node.isKind("mi")||t.node.isKind("mn"))&&1===t.bbox.rscale&&1===Array.from(t.getText()).length}checkLineAccents(){if(this.node.isKind("munderover"))if(this.node.isKind("mover"))this.isLineAbove=this.isLineAccent(this.scriptChild);else if(this.node.isKind("munder"))this.isLineBelow=this.isLineAccent(this.scriptChild);else{const t=this;this.isLineAbove=this.isLineAccent(t.overChild),this.isLineBelow=this.isLineAccent(t.underChild)}}isLineAccent(t){const e=t.coreMO().node;return e.isToken&&"\u2015"===e.getText()}getBaseWidth(){const t=this.baseChild.getLineBBox(this.baseChild.breakCount);return t.w*t.rscale-(this.baseRemoveIc?this.baseIc:0)+this.font.params.extra_ic}getOffset(){return[0,0]}baseCharZero(t){const e=!!this.baseCore.node.attributes.get("largeop"),s=!(!this.baseCore.node.isKind("mo")||!this.baseCore.size),i=this.baseScale;return!this.baseIsChar||e||s||1!==i?t:0}getV(){const t=this.baseCore,e=t.getLineBBox(t.breakCount),s=this.scriptChild.getOuterBBox(),i=this.font.params,r=this.length2em(this.node.attributes.get("subscriptshift"),i.sub1);return Math.max(this.baseCharZero(e.d*this.baseScale+i.sub_drop*s.rscale),r,s.h*s.rscale-.8*i.x_height)}getU(){const t=this.baseCore,e=t.getLineBBox(t.breakCount),s=this.scriptChild.getOuterBBox(),i=this.font.params,r=this.node.attributes.getList("displaystyle","superscriptshift"),n=this.node.getProperty("texprimestyle")?i.sup3:r.displaystyle?i.sup1:i.sup2,o=this.length2em(r.superscriptshift,n);return Math.max(this.baseCharZero(e.h*this.baseScale-i.sup_drop*s.rscale),o,s.d*s.rscale+1/4*i.x_height)}hasMovableLimits(){const t=this.node.attributes.get("displaystyle"),e=this.baseChild.coreMO().node;return!t&&!!e.attributes.get("movablelimits")}getOverKU(t,e){const s=this.node.attributes.get("accent"),i=this.font.params,r=e.d*e.rscale,n=i.rule_thickness*i.separation_factor,o=this.baseHasAccentOver?n:0,a=this.isLineAbove?3*i.rule_thickness:n,l=(s?a:Math.max(i.big_op_spacing1,i.big_op_spacing3-Math.max(0,r)))-o;return[l,t.h*t.rscale+l+r]}getUnderKV(t,e){const s=this.node.attributes.get("accentunder"),i=this.font.params,r=e.h*e.rscale,n=i.rule_thickness*i.separation_factor,o=this.baseHasAccentUnder?n:0,a=this.isLineBelow?3*i.rule_thickness:n,l=(s?a:Math.max(i.big_op_spacing2,i.big_op_spacing4-r))-o;return[l,-(t.d*t.rscale+l+r)]}getDeltaW(t,e=[0,0,0]){const s=this.node.attributes.get("align"),i=t.map(t=>t.w*t.rscale);i[0]-=this.baseRemoveIc&&!this.baseCore.node.attributes.get("largeop")?this.baseIc:0;const r=Math.max(...i),n=[];let o=0;for(const t of i.keys())n[t]=("center"===s?(r-i[t])/2:"right"===s?r-i[t]:0)+e[t],n[t]n[e]+=t[e]?t[e].dx*t[0].rscale:0),n}getDelta(t,e=!1){const s=this.node.attributes.get("accent");let{sk:i,ic:r}=this.baseCore.getOuterBBox();return s&&(i-=t.getOuterBBox().sk),((s&&!e?i:0)+this.font.skewIcFactor*r)*this.baseScale}stretchChildren(){const t=[];for(const e of this.childNodes)e.canStretch(Ic.Horizontal)&&t.push(e);const e=t.length,s=this.childNodes.length;if(e&&s>1){let i=0;const r=e>1&&e===s;for(const t of this.childNodes){const e=t.stretch.dir===Ic.None;if(r||e){const{w:s,rscale:r}=t.getOuterBBox(e);s*r>i&&(i=s*r)}}for(const e of t){const t=e.coreMO();null===t.size&&t.getStretchedVariant([i/e.coreRScale()])}}}constructor(t,e,s=null){super(t,e,s),this.baseScale=1,this.baseIc=0,this.baseRemoveIc=!1,this.baseIsChar=!1,this.baseHasAccentOver=null,this.baseHasAccentUnder=null,this.isLineAbove=!1,this.isLineBelow=!1,this.isMathAccent=!1;const i=this.baseCore=this.getBaseCore();i&&(this.setBaseAccentsFor(i),this.baseScale=this.getBaseScale(),this.baseIc=this.getBaseIc(),this.baseIsChar=this.isCharBase(),this.isMathAccent=this.baseIsChar&&this.scriptChild&&void 0!==this.scriptChild.coreMO().node.getProperty("mathaccent"),this.checkLineAccents(),this.baseRemoveIc=!this.isLineAbove&&!this.isLineBelow&&(!this.constructor.useIC||this.isMathAccent))}computeBBox(t,e=!1){t.empty(),t.append(this.baseChild.getOuterBBox()),this.appendScripts(t),t.clean(),this.setChildPWidths(e)}appendScripts(t){const e=this.getBaseWidth(),[s,i]=this.getOffset();return t.combine(this.scriptChild.getOuterBBox(),e+s,i),t.w+=this.font.params.scriptspace,t}get breakCount(){return this._breakCount<0&&(this._breakCount=this.node.isEmbellished?this.coreMO().embellishedBreakCount:this.node.linebreakContainer?0:this.childNodes[0].breakCount),this._breakCount}breakTop(t,e){return this.node.linebreakContainer||!this.parent||this.node.childIndex(e.node)?t:this.parent.breakTop(t,this)}computeLineBBox(t){const e=this.breakCount;if(!e)return _c.from(this.getOuterBBox(),this.linebreakOptions.lineleading);const s=this.baseChild.getLineBBox(t).copy();return t=0||this.adaptor.setStyle(t,"marginBottom",this.em(e.d*e.rscale))}adjustUnderDepth(t,e){if(e.d>=0)return;const s=this.adaptor,i=this.em(e.d),r=this.html("mjx-box",{style:{"margin-bottom":i,"vertical-align":i}});for(const e of s.childNodes(s.firstChild(t)))s.append(r,e);s.append(s.firstChild(t),r)}adjustBaseHeight(t,e){if(this.node.attributes.get("accent")){const s=this.font.params.x_height*this.baseScale;e.h mjx-spacer":{display:"block"}},t}();function gd(t){return class extends t{get scriptChild(){return this.childNodes[this.node.under]}constructor(...t){super(...t),this.stretchChildren()}computeBBox(t,e=!1){if(this.hasMovableLimits())return void super.computeBBox(t,e);t.empty();const s=this.baseChild.getOuterBBox(),i=this.scriptChild.getOuterBBox(),r=this.getUnderKV(s,i)[1],n=this.isLineBelow?0:this.getDelta(this.scriptChild,!0),[o,a]=this.getDeltaW([s,i],[0,-n]);t.combine(s,o,0),t.combine(i,a,r),t.d+=this.font.params.big_op_spacing5,t.clean(),this.setChildPWidths(e)}}}function bd(t){return class extends t{get scriptChild(){return this.childNodes[this.node.over]}constructor(...t){super(...t),this.stretchChildren()}computeBBox(t){if(this.hasMovableLimits())return void super.computeBBox(t);t.empty();const e=this.baseChild.getOuterBBox(),s=this.scriptChild.getOuterBBox();this.node.attributes.get("accent")&&(e.h=Math.max(e.h,this.font.params.x_height*this.baseScale));const i=this.getOverKU(e,s)[1],r=this.isLineAbove?0:this.getDelta(this.scriptChild),[n,o]=this.getDeltaW([e,s],[0,r]);t.combine(e,n,0),t.combine(s,o,i),t.h+=this.font.params.big_op_spacing5,t.clean()}}}function Ed(t){return class extends t{get underChild(){return this.childNodes[this.node.under]}get overChild(){return this.childNodes[this.node.over]}get subChild(){return this.underChild}get supChild(){return this.overChild}constructor(...t){super(...t),this.stretchChildren()}computeBBox(t){if(this.hasMovableLimits())return void super.computeBBox(t);t.empty();const e=this.overChild.getOuterBBox(),s=this.baseChild.getOuterBBox(),i=this.underChild.getOuterBBox();this.node.attributes.get("accent")&&(s.h=Math.max(s.h,this.font.params.x_height*this.baseScale));const r=this.getOverKU(s,e)[1],n=this.getUnderKV(s,i)[1],o=this.getDelta(this.overChild),a=this.getDelta(this.underChild,!0),[l,c,h]=this.getDeltaW([s,i,e],[0,this.isLineBelow?0:-a,this.isLineAbove?0:o]);t.combine(s,l,0),t.combine(e,h,r),t.combine(i,c,n);const d=this.font.params.big_op_spacing5;t.h+=d,t.d+=d,t.clean()}}}const xd=function(){var t;const e=gd(pd);return(t=class extends e{toCHTML(t){if(this.toEmbellishedCHTML(t))return;if(this.hasMovableLimits())return super.toCHTML(t),void this.adaptor.setAttribute(this.dom[0],"limits","false");this.dom=this.standardChtmlNodes(t);const e=this.adaptor.append(this.adaptor.append(this.dom[0],this.html("mjx-row")),this.html("mjx-base")),s=this.adaptor.append(this.adaptor.append(this.dom[0],this.html("mjx-row")),this.html("mjx-under"));this.baseChild.toCHTML([e]),this.scriptChild.toCHTML([s]);const i=this.baseChild.getOuterBBox(),r=this.scriptChild.getOuterBBox(),n=this.getUnderKV(i,r)[0],o=this.isLineBelow?0:this.getDelta(this.scriptChild,!0);this.adaptor.setStyle(s,"paddingTop",this.em(n)),this.setDeltaW([e,s],this.getDeltaW([i,r],[0,-o])),this.adjustUnderDepth(s,r)}}).kind=pn.prototype.kind,t.styles={"mjx-over":{"text-align":"left"},'mjx-munder:not([limits="false"])':{display:"inline-table"},"mjx-munder > mjx-row":{"text-align":"left"},"mjx-under":{"padding-bottom":".1em"}},t}(),yd=function(){var t;const e=bd(md);return(t=class extends e{toCHTML(t){if(this.toEmbellishedCHTML(t))return;if(this.hasMovableLimits())return super.toCHTML(t),void this.adaptor.setAttribute(this.dom[0],"limits","false");this.dom=this.standardChtmlNodes(t);const e=this.adaptor.append(this.dom[0],this.html("mjx-over")),s=this.adaptor.append(this.dom[0],this.html("mjx-base"));this.scriptChild.toCHTML([e]),this.baseChild.toCHTML([s]);const i=this.scriptChild.getOuterBBox(),r=this.baseChild.getOuterBBox();this.adjustBaseHeight(s,r);const n=this.getOverKU(r,i)[0],o=this.isLineAbove?0:this.getDelta(this.scriptChild);this.adaptor.setStyle(e,"paddingBottom",this.em(n)),this.setDeltaW([s,e],this.getDeltaW([r,i],[0,o])),this.adjustOverDepth(e,i)}}).kind=mn.prototype.kind,t.styles={'mjx-mover:not([limits="false"])':{"padding-top":".1em"},[["base","over"].map(t=>`mjx-mover:not([limits="false"]) > mjx-${t}`).join(", ")]:{display:"block","text-align":"left"}},t}(),Nd=function(){var t;const e=Ed(fd);return(t=class extends e{toCHTML(t){if(this.toEmbellishedCHTML(t))return;if(this.hasMovableLimits())return super.toCHTML(t),void this.adaptor.setAttribute(this.dom[0],"limits","false");this.dom=this.standardChtmlNodes(t);const e=this.adaptor.append(this.dom[0],this.html("mjx-over")),s=this.adaptor.append(this.adaptor.append(this.dom[0],this.html("mjx-box")),this.html("mjx-munder")),i=this.adaptor.append(this.adaptor.append(s,this.html("mjx-row")),this.html("mjx-base")),r=this.adaptor.append(this.adaptor.append(s,this.html("mjx-row")),this.html("mjx-under"));this.overChild.toCHTML([e]),this.baseChild.toCHTML([i]),this.underChild.toCHTML([r]);const n=this.overChild.getOuterBBox(),o=this.baseChild.getOuterBBox(),a=this.underChild.getOuterBBox();this.adjustBaseHeight(i,o);const l=this.getOverKU(o,n)[0],c=this.getUnderKV(o,a)[0],h=this.getDelta(this.overChild),d=this.getDelta(this.underChild,!0);this.adaptor.setStyle(e,"paddingBottom",this.em(l)),this.adaptor.setStyle(r,"paddingTop",this.em(c)),this.setDeltaW([i,r,e],this.getDeltaW([o,a,n],[0,this.isLineBelow?0:-d,this.isLineAbove?0:h])),this.adjustOverDepth(e,n),this.adjustUnderDepth(r,a)}}).kind=un.prototype.kind,t.styles={'mjx-munderover:not([limits="false"])':{"padding-top":".1em"},[["over","box"].map(t=>`mjx-munderover:not([limits="false"]) > mjx-${t}`).join(", ")]:{display:"block"}},t}(),vd={base:"subList",subList:"supList",supList:"subList",psubList:"psupList",psupList:"psubList"},Td=["sup","sup","psup","psub"];function Cd(t){return class extends t{combinePrePost(t,e){const s=new To(t);return s.combine(e,0,0),s}getScriptData(){const t=this.scriptData={base:null,sub:To.empty(),sup:To.empty(),psub:To.empty(),psup:To.empty(),numPrescripts:0,numScripts:0},e=this.getScriptBBoxLists();this.combineBBoxLists(t.sub,t.sup,e.subList,e.supList),this.combineBBoxLists(t.psub,t.psup,e.psubList,e.psupList),t.base=e.base[0],t.numPrescripts=e.psubList.length,t.numScripts=e.subList.length}getScriptBBoxLists(){const t={base:[],subList:[],supList:[],psubList:[],psupList:[]};let e="base";for(const s of this.childNodes)s.node.isKind("mprescripts")?e="psubList":(t[e].push(s.getOuterBBox()),e=vd[e]);return this.firstPrescript=t.subList.length+t.supList.length+2,this.padLists(t.subList,t.supList),this.padLists(t.psubList,t.psupList),t}padLists(t,e){t.length>e.length&&e.push(To.empty())}combineBBoxLists(t,e,s,i){for(let r=0;rt.h&&(t.h=o),a>t.d&&(t.d=a),c>e.h&&(e.h=c),h>e.d&&(e.d=h)}}getScaledWHD(t){const{w:e,h:s,d:i,rscale:r}=t;return[e*r,s*r,i*r]}getCombinedUV(){const t=this.scriptData,e=this.combinePrePost(t.sub,t.psub),s=this.combinePrePost(t.sup,t.psup);return this.getUVQ(e,s)}addPrescripts(t,e,s){const i=this.scriptData;if(i.numPrescripts){const r=this.font.params.scriptspace;t.combine(i.psup,r,e),t.combine(i.psub,r,s)}return t}addPostscripts(t,e,s){const i=this.scriptData;if(i.numScripts){const r=t.w;t.combine(i.sup,r,e),t.combine(i.sub,r,s),t.w+=this.font.params.scriptspace}return t}constructor(...t){super(...t),this.scriptData=null,this.firstPrescript=0,this.getScriptData()}appendScripts(t){t.empty();const[e,s]=this.getCombinedUV();return this.addPrescripts(t,e,s),t.append(this.scriptData.base),this.addPostscripts(t,e,s),t.clean(),t}computeLineBBox(t){const e=this.baseChild.breakCount,s=this.baseChild.getLineBBox(t).copy();let i=s;const[r,n]=this.getCombinedUV();return 0===t?(i=_c.from(this.addPrescripts(To.zero(),r,n),this.linebreakOptions.lineleading),i.append(s),this.addLeftBorders(i),i.L=this.bbox.L):t===e&&(i=this.addPostscripts(i,r,n),this.addRightBorders(i),i.R=this.bbox.R),this.addMiddleBorders(i),i}getUVQ(t,e){if(!this.UVQ){let[s,i,r]=[0,0,0];0===t.w?s=this.getU():0===e.w?s=-this.getV():[s,i,r]=super.getUVQ(t,e),this.UVQ=[s,i,r]}return this.UVQ}}}const Ad=function(){var t;const e=Cd(fd);return(t=class extends e{toCHTML(t){if(this.toEmbellishedCHTML(t))return;const e=this.standardChtmlNodes(t),s=this.scriptData,i=this.node.getProperty("scriptalign")||"right left",[r,n]=zr(i+" "+i),[o,a]=this.getCombinedUV();if(s.numPrescripts){const t=this.addScripts(this.dom[0],o,-a,!0,s.psub,s.psup,this.firstPrescript,s.numPrescripts);"right"!==r&&this.adaptor.setAttribute(t,"script-align",r)}if(this.childNodes[0].toCHTML(e),s.numScripts){const t=this.addScripts(this.dom[this.dom.length-1],o,-a,!1,s.sub,s.sup,1,s.numScripts);"left"!==n&&this.adaptor.setAttribute(t,"script-align",n)}}addScripts(t,e,s,i,r,n,o,a){const l=this.adaptor,c=e-n.d+(s-r.h),h=e<0&&0===s?r.h+e:e,d=c>0?{style:{height:this.em(c)}}:{},u=h?{style:{"vertical-align":this.em(h)}}:{},p=this.html("mjx-row"),m=this.html("mjx-row",d),f=this.html("mjx-row"),g="mjx-"+(i?"pre":"")+"scripts",b=o+2*a;for(;o mjx-row > mjx-cell":{"text-align":"right"},'[script-align="left"] > mjx-row > mjx-cell':{"text-align":"left"},'[script-align="center"] > mjx-row > mjx-cell':{"text-align":"center"},'[script-align="right"] > mjx-row > mjx-cell':{"text-align":"right"},"mjx-none":{display:"inline-block",height:"1px"}},t}(),Ld=.333;function Sd(t){return class extends t{get tableRows(){return this.childNodes}findContainer(){let t=this,e=t.parent;for(;e&&(e.node.notParent||e.node.isKind("mrow"));)t=e,e=e.parent;this.container=e,this.containerI=t.node.childPosition()}getPercentageWidth(){if(this.hasLabels)this.bbox.pwidth=To.fullWidth;else{const t=this.node.attributes.get("width");Wr(t)&&(this.bbox.pwidth=t)}}stretchRows(){const t=this.node.attributes.get("equalrows"),e=t?this.getEqualRowHeight():0,{H:s,D:i}=t?this.getTableData():{H:[0],D:[0]},r=this.tableRows;for(let n=0;ne&&(e=s)}}}}if(null!==e){const i=this.getTableData().W;for(const r of s){let s=r.getBBox().w;r.coreMO().getStretchedVariant([Math.max(e,s)/r.coreRScale()]),s=r.getBBox().w,s>i[t]&&(i[t]=s)}}}breakColumn(t,e,s){if("linebreak"!==this.jax.math.root.attributes.get("overflow")||!this.jax.math.display)return;const{H:i,D:r}=this.getTableData();let n=0,o=0;for(const s of this.tableRows){const a=s.getChild(t);if(a){const l=s.getBBox().rscale,c=a.getBBox();if(a&&c.w*l>e){a.childNodes[0].breakToWidth(e);const o=s.node.attributes.get("rowalign");this.updateHDW(a,t,n,o,i,r)}c.w*l>o&&(o=c.w*l)}const l=s.getBBox();l.h=i[n],l.d=r[n],n++}("fit"===s||"auto"===s||Wr(s)||o>this.cWidths[t])&&(this.cWidths[t]=o)}getTableData(){if(this.data)return this.data;const t=new Array(this.numRows).fill(0),e=new Array(this.numRows).fill(0),s=new Array(this.numCols).fill(0),i=new Array(this.numRows),r=new Array(this.numRows),n=[0],o=this.tableRows;for(let a=0;ao[e]&&(o[e]=c)}recordPWidthCell(t,e){t.childNodes[0]&&t.childNodes[0].getBBox().pwidth&&this.pwidthCells.push([t,e])}setColumnPWidths(){const t=this.cWidths;for(const[e,s]of this.pwidthCells)e.setChildPWidths(!1,t[s])&&(e.invalidateBBox(),e.getBBox())}getBBoxHD(t){const[e,s]=this.getAlignmentRow();if(null===s){const s=this.font.params.axis_height,i=t/2;return{top:[0,t],center:[i,i],bottom:[t,0],baseline:[i,i],axis:[i+s,i-s]}[e]||[i,i]}{const i=this.getVerticalPosition(s,e);return[i,t-i]}}getBBoxLR(){var t;if(this.hasLabels){const t=this.node.attributes,e=t.get("side");let[s,i]=this.getPadAlignShift(e);const r=this.hasLabels&&!!t.get("data-width-includes-label");return r&&this.frame&&this.fSpace[0]&&(s-=this.fSpace[0]),"center"!==i||r?"left"===e?[s,0]:[0,s]:[s,s]}return[(null===(t=this.bbox)||void 0===t?void 0:t.L)||0,0]}getPadAlignShift(t){const{L:e}=this.getTableData();let s=e+this.length2em(this.node.attributes.get("minlabelspacing"));const[i,r]=null==this.styles?["",""]:[this.styles.get("padding-left"),this.styles.get("padding-right")];(i||r)&&(s=Math.max(s,this.length2em(i||"0"),this.length2em(r||"0")));let[n,o]=this.getAlignShift();return n===t&&(o="left"===t?Math.max(s,o)-s:Math.min(-s,o)+s),[s,n,o]}getWidth(){return this.pWidth||this.getBBox().w}adjustWideTable(){const t=this.node.attributes;if("auto"!==t.get("width"))return;const[e,s]=this.getPadAlignShift(t.get("side")),i=Math.max(this.containerWidth/10,this.containerWidth-e-("center"===s?e:0));this.naturalWidth()>i&&this.adjustColumnWidths(i)}naturalWidth(){return Xo(this.getComputedWidths().concat(this.cLines,this.cSpace))+2*this.fLine+this.fSpace[0]+this.fSpace[2]}getEqualRowHeight(){const{H:t,D:e}=this.getTableData(),s=Array.from(t.keys()).map(s=>t[s]+e[s]);return Math.max(...s)}getComputedWidths(){const t=this.getTableData().W;let e=Array.from(t.keys()).map(e=>"number"==typeof this.cWidths[e]?this.cWidths[e]:t[e]);return this.node.attributes.get("equalcolumns")&&(e=Array(e.length).fill(Go(e))),e}getColumnWidths(){const t=this.node.attributes.get("width");if(this.node.attributes.get("equalcolumns"))return this.getEqualColumns(t);const e=this.getColumnAttributes("columnwidth",0);return"auto"===t?this.getColumnWidthsAuto(e):Wr(t)?this.getColumnWidthsPercent(e):this.getColumnWidthsFixed(e,this.length2em(t))}getEqualColumns(t){const e=Math.max(1,this.numCols);let s;if("auto"===t){const{W:t}=this.getTableData();s=Go(t)}else if(Wr(t))s=this.percent(1/e);else{const i=Xo([].concat(this.cLines,this.cSpace))+this.fSpace[0]+this.fSpace[2];s=Math.max(0,this.length2em(t)-i)/e}return Array(this.numCols).fill(s)}getColumnWidthsAuto(t){return t.map(t=>"auto"===t||"fit"===t?null:Wr(t)?t:this.length2em(t))}getColumnWidthsPercent(t){const e=t.includes("fit"),{W:s}=e?this.getTableData():{W:null};return Array.from(t.keys()).map(i=>{const r=t[i];return"fit"===r?null:"auto"===r?e?s[i]:null:Wr(r)?r:this.length2em(r)})}getColumnWidthsFixed(t,e){const s=Array.from(t.keys()),i=s.filter(e=>"fit"===t[e]),r=s.filter(e=>"auto"===t[e]),n=i.length||r.length,{W:o}=n?this.getTableData():{W:null},a=e-Xo([].concat(this.cLines,this.cSpace))-this.fSpace[0]-this.fSpace[2];let l=a;s.forEach(e=>{const s=t[e];l-="fit"===s||"auto"===s?o[e]:this.length2em(s,a)});const c=n&&l>0?l/n:0;return s.map(e=>{const s=t[e];return"fit"===s?o[e]+c:"auto"===s?o[e]+(0===i.length?c:0):this.length2em(s,a)})}adjustColumnWidths(t){const{W:e}=this.getTableData(),s=this.getColumnAttributes("columnwidth",0),i=Array.from(s.keys()),r=[...i.filter(t=>"fit"===s[t]).sort((t,s)=>e[s]-e[t]),...i.filter(t=>"auto"===s[t]).sort((t,s)=>e[s]-e[t]),...i.filter(t=>Wr(s[t])).sort((t,s)=>e[s]-e[t]),...i.filter(t=>"fit"!==s[t]&&"auto"!==s[t]&&!Wr(s[t])).sort((t,s)=>e[s]-e[t])];if(!r.length)return;this.cWidths=i.map(t=>"number"==typeof this.cWidths[t]?this.cWidths[t]:e[t]);const n=t-Xo([].concat(this.cLines,this.cSpace))-this.fSpace[0]-this.fSpace[2];let o=Xo(this.cWidths)-n,a=0,l=0;for(;lthis.cWidths[t]*=o)}getVerticalPosition(t,e){const s=this.node.attributes.get("equalrows"),{H:i,D:r}=this.getTableData(),n=s?this.getEqualRowHeight():0,o=this.getRowHalfSpacing();let a=this.fLine;for(let e=0;et/2);return t.unshift(this.fSpace[1]),t.push(this.fSpace[1]),t}getColumnHalfSpacing(){const t=this.cSpace.map(t=>t/2);return t.unshift(this.fSpace[0]),t.push(this.fSpace[2]),t}getAlignmentRow(){const[t,e]=zr(this.node.attributes.get("align"));if(null==e)return[t,null];let s=parseInt(e);return s<0&&(s+=this.numRows+1),[t,s<1||s>this.numRows?null:s-1]}getColumnAttributes(t,e=1){const s=this.numCols-e,i=this.getAttributeArray(t);if(0===i.length)return null;for(;i.lengths&&i.splice(s),i}getRowAttributes(t,e=1){const s=this.numRows-e,i=this.getAttributeArray(t);if(0===i.length)return null;for(;i.lengths&&i.splice(s),i}getAttributeArray(t){const e=this.node.attributes.get(t);return e?zr(e):[this.node.attributes.getDefault(t)]}addEm(t,e=1){return t?t.map(t=>this.em(t/e)):null}convertLengths(t){return t?t.map(t=>this.length2em(t)):null}constructor(t,e,s=null){super(t,e,s),this.numCols=0,this.numRows=0,this.data=null,this.pwidthCells=[],this.pWidth=0,this.adjustHD={top:(t,e,s,i,r)=>{t>s[r]&&(i[r]-=t-s[r],s[r]=t),t+e>s[r]+i[r]&&(i[r]=t+e-s[r])},bottom:(t,e,s,i,r)=>{e>i[r]&&(s[r]-=e-i[r],i[r]=e),t+e>s[r]+i[r]&&(s[r]=t+e-i[r])},center:(t,e,s,i,r)=>{t+e>s[r]+i[r]&&(s[r]=i[r]=(t+e)/2)},other:(t,e,s,i,r)=>{t>s[r]&&(s[r]=t),e>i[r]&&(i[r]=e)}},this.numCols=Go(this.tableRows.map(t=>t.numCells)),this.numRows=this.childNodes.length,this.hasLabels=this.childNodes.reduce((t,e)=>t||e.node.isKind("mlabeledtr"),!1),this.findContainer(),this.isTop=!this.container||this.container.node.isKind("math")&&!this.container.parent,this.isTop&&(this.jax.table=this),this.getPercentageWidth();const i=this.node.attributes,r=i.get("frame");this.frame="none"!==r,this.fframe=this.frame||void 0!==i.get("data-frame-styles"),this.fLine=this.frame?.07:0,this.fSpace=this.getFrameSpacing(),this.cSpace=this.convertLengths(this.getColumnAttributes("columnspacing")),this.rSpace=this.convertLengths(this.getRowAttributes("rowspacing")),this.cLines=this.getColumnAttributes("columnlines").map(t=>"none"===t?0:.07),this.rLines=this.getRowAttributes("rowlines").map(t=>"none"===t?0:.07),this.cWidths=this.getColumnWidths(),this.adjustWideTable(),this.stretchColumns(),this.stretchRows()}getStyles(){super.getStyles();const t=this.node.attributes.get("data-frame-styles");if(!t)return;this.styles||(this.styles=new Vo(""));const e=t.split(/ /);for(const t of ko.keys()){const s=e[t];"none"!==s&&this.styles.set(`border-${ko[t]}`,`.07em ${s}`)}}computeBBox(t,e=!1){const{H:s,D:i}=this.getTableData();let r,n;if(this.node.attributes.get("equalrows")){const t=this.getEqualRowHeight();r=Xo([].concat(this.rLines,this.rSpace))+t*this.numRows}else r=Xo(s.concat(i,this.rLines,this.rSpace));r+=2*(this.fLine+this.fSpace[1]),n=this.naturalWidth();const o=this.node.attributes.get("width");"auto"!==o&&(n=Math.max(this.length2em(o,0)+2*this.fLine,n));const[a,l]=this.getBBoxHD(r);t.h=a,t.d=l,t.w=n;const[c,h]=this.getBBoxLR();t.L=c,t.R=h,Wr(o)||this.setColumnPWidths()}setChildPWidths(t,e,s){const i=this.node.attributes.get("width");if(!Wr(i))return!1;this.hasLabels||(this.bbox.pwidth="",this.container.bbox.pwidth="");const{w:r,L:n,R:o}=this.bbox,a=this.node.attributes.get("data-width-includes-label"),l=Math.max(r,this.length2em(i,Math.max(e,n+r+o)))-(a?n+o:0),c=this.node.attributes.get("equalcolumns")?Array(this.numCols).fill(this.percent(1/Math.max(1,this.numCols))):this.getColumnAttributes("columnwidth",0);return this.cWidths=this.getColumnWidthsFixed(c,l),this.pWidth=this.naturalWidth(),this.isTop&&(this.bbox.w=this.pWidth),this.setColumnPWidths(),this.pWidth!==r&&this.parent.invalidateBBox(),this.pWidth!==r}getAlignShift(){return this.isTop?super.getAlignShift():[this.container.getChildAlign(this.containerI),0]}}}const Rd=function(){var t;const e=Sd(Qc);return t=class extends e{constructor(t,e,s=null){super(t,e,s),this.itable=this.html("mjx-itable"),this.labels=this.html("mjx-itable")}getAlignShift(){const t=super.getAlignShift();return this.isTop||(t[1]=0),t}toCHTML(t){const e=this.standardChtmlNodes(t);this.adaptor.append(e[0],this.html("mjx-table",{},[this.itable]));for(const t of this.childNodes)t.toCHTML([this.itable]);this.padRows(),this.handleColumnSpacing(),this.handleColumnLines(),this.handleColumnWidths(),this.handleRowSpacing(),this.handleRowLines(),this.handleRowHeights(),this.handleFrame(),this.handleWidth(),this.handleLabels(),this.handleAlign(),this.handleJustify(),this.shiftColor()}shiftColor(){const t=this.adaptor,e=t.getStyle(this.dom[0],"backgroundColor");e&&(t.setStyle(this.dom[0],"backgroundColor",""),t.setStyle(this.itable,"backgroundColor",e))}padRows(){const t=this.adaptor;for(const e of t.childNodes(this.itable))for(;t.childNodes(e).length1&&"0.4em"!==r||"0"!==r&&1===s)&&this.adaptor.setStyle(o,"paddingLeft",r),(s1&&"0.215em"!==r||s&&1===i)&&this.adaptor.setStyle(e.dom[0],"paddingTop",r),(i mjx-itable":{"vertical-align":"middle","text-align":"left","box-sizing":"border-box"},"mjx-labels > mjx-itable":{position:"absolute",top:0},'mjx-mtable[justify="left"]':{"text-align":"left"},'mjx-mtable[justify="right"]':{"text-align":"right"},'mjx-mtable[justify="left"][side="left"]':{"padding-right":"0 ! important"},'mjx-mtable[justify="left"][side="right"]':{"padding-left":"0 ! important"},'mjx-mtable[justify="right"][side="left"]':{"padding-right":"0 ! important"},'mjx-mtable[justify="right"][side="right"]':{"padding-left":"0 ! important"},"mjx-mtable[align]":{"vertical-align":"baseline"},'mjx-mtable[align="top"] > mjx-table':{"vertical-align":"top"},'mjx-mtable[align="bottom"] > mjx-table':{"vertical-align":"bottom"},'mjx-mtable[side="right"] mjx-labels':{"min-width":"100%"}},t}();function Md(t){return class extends t{get numCells(){return this.childNodes.length}get labeled(){return!1}get tableCells(){return this.childNodes}getChild(t){return this.childNodes[t]}getChildBBoxes(){return this.childNodes.map(t=>t.getBBox())}stretchChildren(t=null){const e=[],s=this.labeled?this.childNodes.slice(1):this.childNodes;for(const t of s){const s=t.childNodes[0];s.canStretch(Ic.Vertical)&&e.push(s)}const i=e.length,r=this.childNodes.length;if(i&&r>1&&!t){let e=0,n=0;const o=i>1&&i===r;for(const t of s){const s=t.childNodes[0],i=s.stretch.dir===Ic.None;if(o||i){const{h:t,d:r}=s.getBBox(i);t>e&&(e=t),r>n&&(n=r)}}t=[e,n]}if(t)for(const s of e){const e=s.coreRScale();s.coreMO().getStretchedVariant(t.map(t=>t*e))}}get fixesPWidth(){return!1}}}function Id(t){return class extends t{get numCells(){return Math.max(0,this.childNodes.length-1)}get labeled(){return!0}get tableCells(){return this.childNodes.slice(1)}getChild(t){return this.childNodes[t+1]}getChildBBoxes(){return this.childNodes.slice(1).map(t=>t.getBBox())}}}const wd=function(){var t;const e=Md(Qc);return(t=class extends e{toCHTML(t){super.toCHTML(t);const e=this.node.attributes.get("rowalign");"baseline"!==e&&this.adaptor.setAttribute(this.dom[0],"rowalign",e);const{h:s,d:i}=this.getBBox();this.adaptor.setStyle(this.dom[0],"height",this.em(s+i))}}).kind=xn.prototype.kind,t.styles={"mjx-mtr":{display:"table-row"},'mjx-mtr[rowalign="top"] > mjx-mtd':{"vertical-align":"top"},'mjx-mtr[rowalign="center"] > mjx-mtd':{"vertical-align":"middle"},'mjx-mtr[rowalign="bottom"] > mjx-mtd':{"vertical-align":"bottom"},'mjx-mtr[rowalign="baseline"] > mjx-mtd':{"vertical-align":"baseline"},'mjx-mtr[rowalign="axis"] > mjx-mtd':{"vertical-align":".25em"}},t}(),kd=function(){var t;const e=Id(wd);return(t=class extends e{toCHTML(t){super.toCHTML(t);const e=this.adaptor.firstChild(this.dom[0]);if(e){this.adaptor.remove(e);const t=this.node.attributes.get("rowalign"),s="baseline"!==t&&"axis"!==t?{rowalign:t}:{},i=this.html("mjx-mtr",s,[e]);this.adaptor.append(this.parent.labels,i)}}markUsed(){super.markUsed(),this.jax.wrapperUsage.add(wd.kind)}}).kind=yn.prototype.kind,t.styles={"mjx-mlabeledtr":{display:"table-row"},'mjx-mlabeledtr[rowalign="top"] > mjx-mtd':{"vertical-align":"top"},'mjx-mlabeledtr[rowalign="center"] > mjx-mtd':{"vertical-align":"middle"},'mjx-mlabeledtr[rowalign="bottom"] > mjx-mtd':{"vertical-align":"bottom"},'mjx-mlabeledtr[rowalign="baseline"] > mjx-mtd':{"vertical-align":"baseline"},'mjx-mlabeledtr[rowalign="axis"] > mjx-mtd':{"vertical-align":".25em"}},t}();function Od(t){return class extends t{get fixesPWidth(){return!1}invalidateBBox(){this.bboxComputed=!1,this.lineBBox=[]}getWrapWidth(t){const e=this.parent.parent,s=this.parent,i=this.node.childPosition()-(s.labeled?1:0);return"number"==typeof e.cWidths[i]?e.cWidths[i]:e.getTableData().W[i]}getChildAlign(t){return this.node.attributes.get("columnalign")}}}const Dd=function(){var t;const e=Od(Qc);return(t=class extends e{toCHTML(t){super.toCHTML(t);const e=this.node.attributes.get("rowalign"),s=this.node.attributes.get("columnalign");e!==this.parent.node.attributes.get("rowalign")&&this.adaptor.setAttribute(this.dom[0],"rowalign",e),"center"===s||"mlabeledtr"===this.parent.kind&&this===this.parent.childNodes[0]&&s===this.parent.parent.node.attributes.get("side")||this.adaptor.setStyle(this.dom[0],"textAlign",s),this.parent.parent.node.getProperty("useHeight")&&this.adaptor.append(this.dom[0],this.html("mjx-tstrut"))}}).kind=Nn.prototype.kind,t.styles={"mjx-mtd":{display:"table-cell","text-align":"center",padding:".215em .4em"},"mjx-mtd:first-child":{"padding-left":0},"mjx-mtd:last-child":{"padding-right":0},"mjx-mtable > * > mjx-itable > *:first-child > mjx-mtd":{"padding-top":0},"mjx-mtable > * > mjx-itable > *:last-child > mjx-mtd":{"padding-bottom":0},"mjx-tstrut":{display:"inline-block",height:"1em","vertical-align":"-.25em"},'mjx-labels[align="left"] > mjx-mtr > mjx-mtd':{"text-align":"left"},'mjx-labels[align="right"] > mjx-mtr > mjx-mtd':{"text-align":"right"},"mjx-mtd[extra]":{padding:0},'mjx-mtd[rowalign="top"]':{"vertical-align":"top"},'mjx-mtd[rowalign="center"]':{"vertical-align":"middle"},'mjx-mtd[rowalign="bottom"]':{"vertical-align":"bottom"},'mjx-mtd[rowalign="baseline"]':{"vertical-align":"baseline"},'mjx-mtd[rowalign="axis"]':{"vertical-align":".25em"}},t}(),Pd={dx:".2em",dy:".1em",postDelay:600,clearDelay:100,hoverTimer:new Map,clearTimer:new Map,stopTimers:(t,e)=>{e.clearTimer.has(t)&&(clearTimeout(e.clearTimer.get(t)),e.clearTimer.delete(t)),e.hoverTimer.has(t)&&(clearTimeout(e.hoverTimer.get(t)),e.hoverTimer.delete(t))}};function Bd(t){return class extends t{get selected(){const t=this.node.attributes.get("selection"),e=Math.max(1,Math.min(this.childNodes.length,t))-1;return this.childNodes[e]||this.wrap(this.node.selected)}getParameters(){const t=this.node.attributes.get("data-offsets"),[e,s]=zr(t||"");this.tipDx=this.length2em(e||Pd.dx),this.tipDy=this.length2em(s||Pd.dy)}constructor(t,e,s=null){super(t,e,s);const i=this.constructor.actions,r=this.node.attributes.get("actiontype"),[n,o]=i.get(r)||[(t,e)=>{},{}];this.action=n,this.data=o,this.getParameters()}computeBBox(t,e=!1){t.updateFrom(this.selected.getOuterBBox()),this.selected.setChildPWidths(e)}get breakCount(){return this.node.isEmbellished?this.selected.coreMO().embellishedBreakCount:this.selected.breakCount}computeLineBBox(t){return this.getChildLineBBox(this.selected,t)}}}const Fd=function(){var t;const e=Bd(Qc);return(t=class extends e{setEventHandler(t,e,s=null){(s?[s]:this.dom).forEach(s=>s.addEventListener(t,e))}Em(t){return this.em(t)}toCHTML(t){if(this.toEmbellishedCHTML(t))return;const e=this.standardChtmlNodes(t);this.selected.toCHTML(e),this.action(this,this.data)}}).kind=ln.prototype.kind,t.styles={"mjx-maction":{position:"relative"},"mjx-maction > mjx-tool":{display:"none",position:"absolute",bottom:0,right:0,width:0,height:0,"z-index":500},"mjx-tool > mjx-tip":{display:"inline-block","line-height":0,padding:".2em",border:"1px solid #888","background-color":"#F8F8F8",color:"black","box-shadow":"2px 2px 5px #AAAAAA"},"mjx-maction[toggle]":{cursor:"pointer"},"mjx-status":{display:"block",position:"fixed",left:"1em",bottom:"1em","min-width":"25%",padding:".2em .4em",border:"1px solid #888","font-size":"90%","background-color":"#F8F8F8",color:"black"},"mjx-container [data-mjx-collapsed]":{color:"#55F"},"@media (prefers-color-scheme: dark) /* chtml maction */":{"mjx-tool > mjx-tip":{border:"1px solid #888","background-color":"#303030",color:"#E0E0E0","box-shadow":"2px 2px 5px #000"},"mjx-status":{"background-color":"#303030",color:"#E0E0E0"},"mjx-container [data-mjx-collapsed]":{color:"#88F"}}},t.actions=new Map([["toggle",[(t,e)=>{t.dom.forEach(e=>{t.adaptor.setAttribute(e,"toggle",t.node.attributes.get("selection"))});const s=t.factory.jax.math,i=t.factory.jax.document,r=t.node;t.setEventHandler("click",t=>{s.end.node||(s.start.node=s.end.node=s.typesetRoot,s.start.n=s.end.n=0),r.nextToggleSelection(),s.rerender(i,r.attributes.get("data-maction-id")?lr.ENRICHED:lr.RERENDER),t.stopPropagation()})},{}]],["tooltip",[(t,e)=>{const s=t.childNodes[1];if(s)if(s.node.isKind("mtext")){const e=s.node.getText();t.dom.forEach(s=>t.adaptor.setAttribute(s,"title",e))}else{const i=t.adaptor;for(const r of t.dom){const n=i.append(r,t.html("mjx-tool",{style:{bottom:t.Em(-t.tipDy),right:t.Em(-t.tipDx)}},[t.html("mjx-tip")]));s.toCHTML([i.firstChild(n)]),t.setEventHandler("mouseover",t=>{e.stopTimers(r,e);const s=setTimeout(()=>i.setStyle(n,"display","block"),e.postDelay);e.hoverTimer.set(r,s),t.stopPropagation()},r),t.setEventHandler("mouseout",t=>{e.stopTimers(r,e);const s=setTimeout(()=>i.setStyle(n,"display",""),e.clearDelay);e.clearTimer.set(r,s),t.stopPropagation()},r)}}},Pd]],["statusline",[(t,e)=>{const s=t.childNodes[1];if(s&&s.node.isKind("mtext")){const i=t.adaptor,r=s.node.getText();t.dom.forEach(t=>i.setAttribute(t,"statusline",r)),t.setEventHandler("mouseover",s=>{if(null===e.status){const s=i.body(i.document);e.status=i.append(s,t.html("mjx-status",{},[t.text(r)]))}s.stopPropagation()}),t.setEventHandler("mouseout",t=>{e.status&&(i.remove(e.status),e.status=null),t.stopPropagation()})}},{status:null}]]]),t}();function jd(t){return class extends t{constructor(t,e,s=null){super(t,e,s),this.getParameters()}getParameters(){const{width:t,height:e,valign:s,src:i,index:r}=this.node.attributes.getList("width","height","valign","src","index");if(i)this.width="auto"===t?1:this.length2em(t),this.height="auto"===e?1:this.length2em(e),this.valign=this.length2em(s||"0");else{const t=String.fromCodePoint(parseInt(r)),e=this.node.factory;this.charWrapper=this.wrap(e.create("text").setText(t)),this.charWrapper.parent=this}}computeBBox(t,e=!1){this.charWrapper?t.updateFrom(this.charWrapper.getBBox()):(t.w=this.width,t.h=this.height+this.valign,t.d=-this.valign)}}}const _d=function(){var t;const e=jd(Qc);return(t=class extends e{toCHTML(t){const e=this.standardChtmlNodes(t);if(this.charWrapper)return void this.charWrapper.toCHTML(e);const{src:s,alt:i}=this.node.attributes.getList("src","alt"),r={width:this.em(this.width),height:this.em(this.height)};this.valign&&(r.verticalAlign=this.em(this.valign));const n=this.html("img",{src:s,style:r,alt:i,title:i});this.adaptor.append(e[0],n)}}).kind=Cn.prototype.kind,t.styles={"mjx-mglyph > img":{display:"inline-block",border:0,padding:0}},t}();function Ud(t){return class extends t{computeBBox(t,e=!1){if(this.childNodes.length){const{w:e,h:s,d:i}=this.childNodes[0].getBBox();t.w=e,t.h=s,t.d=i}}get breakCount(){return this.node.isEmbellished?this.coreMO().embellishedBreakCount:this.childNodes[0].breakCount}}}function Hd(t){class e extends t{constructor(t,e,s=null){super(t,e,s),this.rscale=this.getRScale()}computeBBox(t,e=!1){const s=this.node.getXML(),i=this.getHDW(s,"use","force"),{h:r,d:n,w:o}=i?this.splitHDW(i):this.measureXmlNode(s);t.w=o,t.h=r,t.d=n}getHTML(){let t=this.adaptor.clone(this.node.getXML());const e=this.getFontStyles();return(this.getHDW(t,"force")||1!==this.jax.options.scale)&&(t=this.addHDW(t,e)),this.html("mjx-html",{variant:this.parent.variant,style:e},[t])}getHDW(t,e,s=e){const i=this.jax.options.htmlHDW,r=this.adaptor.getAttribute(t,"data-mjx-hdw");return!r||i!==e&&i!==s?null:r}splitHDW(t){const e=1/this.metrics.scale,[s,i,r]=zr(t).map(t=>this.length2em(t||"0")*e);return{h:s,d:i,w:r}}getFontStyles(){var t;const e=this.adaptor,s=this.metrics;return{"font-family":(null===(t=this.parent.styles)||void 0===t?void 0:t.get("font-family"))||s.family||e.fontFamily(e.parent(this.jax.math.start.node))||"initial","font-size":this.jax.fixed(s.em*this.rscale)+"px"}}measureXmlNode(t){const e=this.adaptor,s=this.html("mjx-xml-block",{style:{display:"inline-block"}},[e.clone(t)]),i=this.html("mjx-baseline",{style:{display:"inline-block",width:0,height:0}}),r=this.getFontStyles(),n=this.html("mjx-measure-xml",{style:r},[i,s]),o=this.jax.container;e.append(e.parent(this.jax.math.start.node),o),e.append(o,n);const a=this.metrics,l=a.em*a.scale*this.rscale,{left:c,right:h,bottom:d,top:u}=e.nodeBBox(s),p=(h-c)/l,m=(e.nodeBBox(i).top-u)/l,f=(d-u)/l-m;return e.remove(o),e.remove(n),{w:p,h:m,d:f}}getStyles(){}getScale(){}getVariant(){}}return e.autoStyle=!1,e.styles={"mjx-measure-xml":{position:"absolute",left:0,top:0,display:"inline-block","line-height":"normal","white-space":"normal"},"mjx-html":{display:"inline-block","line-height":"normal","text-align":"initial","white-space":"initial"},"mjx-html-holder":{display:"block",position:"absolute",top:0,left:0,bottom:0,right:0}},e}const Wd=function(){var t;const e=Ud(Qc);return(t=class extends e{toCHTML(t){if(this.toEmbellishedCHTML(t))return;const e=this.standardChtmlNodes(t);this.childNodes.length&&this.childNodes[0].toCHTML(e)}}).kind=An.prototype.kind,t}(),zd=function(){var t;return(t=class extends Qc{toCHTML(t){super.toCHTML(t)}computeBBox(){return this.bbox}}).kind=Sn.prototype.kind,t}(),qd=function(){var t;return(t=class extends Qc{}).kind=Ln.prototype.kind,t.styles={"mjx-annotation-xml":{"font-family":"initial","line-height":"normal"}},t}(),Vd=function(){var t;const e=Hd(Qc);return(t=class extends e{toCHTML(t){this.markUsed(),this.dom=[this.adaptor.append(t[0],this.getHTML())]}addHDW(t,e){const s=this.jax.options.scale,{h:i,d:r,w:n}=this.bbox,o=s*this.metrics.scale;return e.width=this.em(n*o),e.height=this.em((i+r)*o),e["vertical-align"]=this.em(-r*o),e.position="relative",this.html("mjx-html-holder",{style:{transform:`scale(${this.jax.fixed(s)})`,"transform-origin":"top left"}},[t])}}).kind=Rr.prototype.kind,t}();function Xd(t){return class extends t{computeBBox(t,e=!1){super.computeBBox(t,e),this.childNodes[0]&&this.childNodes[0].bbox.ic&&(t.ic=this.childNodes[0].bbox.ic)}}}const Gd=function(){var t;const e=Xd(Qc);return(t=class extends e{toCHTML(t){super.toCHTML(t),this.dom.forEach(t=>this.adaptor.setAttribute(t,"texclass",br[this.node.texClass]))}}).kind=Rn.prototype.kind,t}();function Jd(t){return class extends t{remappedText(t,e){const s=this.parent.stretch.c;return s?[s]:this.parent.remapChars(this.unicodeChars(t,e))}computeBBox(t,e=!1){const s=this.parent.variant,i=this.node.getText();if("-explicitFont"===s){const e=this.jax.getFontData(this.parent.styles),{w:r,h:n,d:o}=this.jax.measureText(i,s,e);t.h=n,t.d=o,t.w=r}else{const e=this.remappedText(i,s);let r="";t.empty();for(let i=0;i1&&(t.sk=0),t.clean()}}addUtextBBox(t,e,s){if(e){const{h:i,d:r,w:n}=this.jax.measureText(e,s);this.updateBBox(t,i,r,n)}return""}updateBBox(t,e,s,i){t.w+=i,e>t.h&&(t.h=e),s>t.d&&(t.d=s)}getStyles(){}getVariant(){}getScale(){}getSpace(){}}}const Kd=function(){var t;const e=Jd(Qc);return t=class extends e{toCHTML(t){this.markUsed();const e=t[0],s=this.adaptor,i=this.parent.variant,r=this.node.getText();if(0===r.length)return;const n=this.getBBox();if("-explicitFont"===i)s.append(e,this.jax.unknownText(r,i,n.w));else{let t="";const o=this.remappedText(r,i),a=o.length>1?this.em(this.parent.getBBox().h):"",l=o.length;for(let r=0;r mjx-math.NCM-N[breakable] > *':{"font-family":"MJX-NCM-ZERO, MJX-NCM-N"},".NCM-N":{"font-family":"MJX-NCM-ZERO, MJX-NCM-N"},".NCM-B":{"font-family":"MJX-NCM-ZERO, MJX-NCM-B"},".NCM-I":{"font-family":"MJX-NCM-ZERO, MJX-NCM-I"},".NCM-BI":{"font-family":"MJX-NCM-ZERO, MJX-NCM-BI"},".NCM-DS":{"font-family":"MJX-NCM-ZERO, MJX-NCM-DS"},".NCM-F":{"font-family":"MJX-NCM-ZERO, MJX-NCM-F"},".NCM-FB":{"font-family":"MJX-NCM-ZERO, MJX-NCM-FB"},".NCM-SS":{"font-family":"MJX-NCM-ZERO, MJX-NCM-SS"},".NCM-SSB":{"font-family":"MJX-NCM-ZERO, MJX-NCM-SSB"},".NCM-SSI":{"font-family":"MJX-NCM-ZERO, MJX-NCM-SSI"},".NCM-SSBI":{"font-family":"MJX-NCM-ZERO, MJX-NCM-SSBI"},".NCM-M":{"font-family":"MJX-NCM-ZERO, MJX-NCM-M"},".NCM-SO":{"font-family":"MJX-NCM-ZERO, MJX-NCM-SO"},".NCM-LO":{"font-family":"MJX-NCM-ZERO, MJX-NCM-LO"},".NCM-S3":{"font-family":"MJX-NCM-ZERO, MJX-NCM-S3"},".NCM-S4":{"font-family":"MJX-NCM-ZERO, MJX-NCM-S4"},".NCM-S5":{"font-family":"MJX-NCM-ZERO, MJX-NCM-S5"},".NCM-S6":{"font-family":"MJX-NCM-ZERO, MJX-NCM-S6"},".NCM-S7":{"font-family":"MJX-NCM-ZERO, MJX-NCM-S7"},".NCM-MI":{"font-family":"MJX-NCM-ZERO, MJX-NCM-MI"},".NCM-C":{"font-family":"MJX-NCM-ZERO, MJX-NCM-C"},".NCM-CB":{"font-family":"MJX-NCM-ZERO, MJX-NCM-CB"},".NCM-OS":{"font-family":"MJX-NCM-ZERO, MJX-NCM-OS"},".NCM-OB":{"font-family":"MJX-NCM-ZERO, MJX-NCM-OB"},".NCM-V":{"font-family":"MJX-NCM-ZERO, MJX-NCM-V"},".NCM-LT":{"font-family":"MJX-NCM-ZERO, MJX-NCM-LT"},".NCM-RB":{"font-family":"MJX-NCM-ZERO, MJX-NCM-RB"},".NCM-EM":{"font-family":"MJX-NCM-ZERO, MJX-NCM-EM"},".NCM-B-a":{"font-family":"MJX-NCM-ZERO, MJX-NCM-B-a"},".NCM-U":{"font-family":"MJX-NCM-ZERO, MJX-NCM-U"},".NCM-U-a":{"font-family":"MJX-NCM-ZERO, MJX-NCM-U-a"},".NCM-S":{"font-family":"MJX-NCM-ZERO, MJX-NCM-S"},".NCM-SB":{"font-family":"MJX-NCM-ZERO, MJX-NCM-SB"}}),eu.defaultFonts=Object.assign(Object.assign({},rh.defaultFonts),{"@font-face /* MJX-NCM-ZERO */":{"font-family":"MJX-NCM-ZERO",src:'url("%%URL%%/mjx-ncm-zero.woff2") format("woff2")'},"@font-face /* MJX-BRK */":{"font-family":"MJX-BRK",src:'url("%%URL%%/mjx-ncm-brk.woff2") format("woff2")'},"@font-face /* MJX-NCM-N */":{"font-family":"MJX-NCM-N",src:'url("%%URL%%/mjx-ncm-n.woff2") format("woff2")'},"@font-face /* MJX-NCM-B */":{"font-family":"MJX-NCM-B",src:'url("%%URL%%/mjx-ncm-b.woff2") format("woff2")'},"@font-face /* MJX-NCM-I */":{"font-family":"MJX-NCM-I",src:'url("%%URL%%/mjx-ncm-i.woff2") format("woff2")'},"@font-face /* MJX-NCM-BI */":{"font-family":"MJX-NCM-BI",src:'url("%%URL%%/mjx-ncm-bi.woff2") format("woff2")'},"@font-face /* MJX-NCM-DS */":{"font-family":"MJX-NCM-DS",src:'url("%%URL%%/mjx-ncm-ds.woff2") format("woff2")'},"@font-face /* MJX-NCM-F */":{"font-family":"MJX-NCM-F",src:'url("%%URL%%/mjx-ncm-f.woff2") format("woff2")'},"@font-face /* MJX-NCM-FB */":{"font-family":"MJX-NCM-FB",src:'url("%%URL%%/mjx-ncm-fb.woff2") format("woff2")'},"@font-face /* MJX-NCM-SS */":{"font-family":"MJX-NCM-SS",src:'url("%%URL%%/mjx-ncm-ss.woff2") format("woff2")'},"@font-face /* MJX-NCM-SSB */":{"font-family":"MJX-NCM-SSB",src:'url("%%URL%%/mjx-ncm-ssb.woff2") format("woff2")'},"@font-face /* MJX-NCM-SSI */":{"font-family":"MJX-NCM-SSI",src:'url("%%URL%%/mjx-ncm-ssi.woff2") format("woff2")'},"@font-face /* MJX-NCM-SSBI */":{"font-family":"MJX-NCM-SSBI",src:'url("%%URL%%/mjx-ncm-ssbi.woff2") format("woff2")'},"@font-face /* MJX-NCM-M */":{"font-family":"MJX-NCM-M",src:'url("%%URL%%/mjx-ncm-m.woff2") format("woff2")'},"@font-face /* MJX-NCM-SO */":{"font-family":"MJX-NCM-SO",src:'url("%%URL%%/mjx-ncm-so.woff2") format("woff2")'},"@font-face /* MJX-NCM-LO */":{"font-family":"MJX-NCM-LO",src:'url("%%URL%%/mjx-ncm-lo.woff2") format("woff2")'},"@font-face /* MJX-NCM-S3 */":{"font-family":"MJX-NCM-S3",src:'url("%%URL%%/mjx-ncm-s3.woff2") format("woff2")'},"@font-face /* MJX-NCM-S4 */":{"font-family":"MJX-NCM-S4",src:'url("%%URL%%/mjx-ncm-s4.woff2") format("woff2")'},"@font-face /* MJX-NCM-S5 */":{"font-family":"MJX-NCM-S5",src:'url("%%URL%%/mjx-ncm-s5.woff2") format("woff2")'},"@font-face /* MJX-NCM-S6 */":{"font-family":"MJX-NCM-S6",src:'url("%%URL%%/mjx-ncm-s6.woff2") format("woff2")'},"@font-face /* MJX-NCM-S7 */":{"font-family":"MJX-NCM-S7",src:'url("%%URL%%/mjx-ncm-s7.woff2") format("woff2")'},"@font-face /* MJX-NCM-MI */":{"font-family":"MJX-NCM-MI",src:'url("%%URL%%/mjx-ncm-mi.woff2") format("woff2")'},"@font-face /* MJX-NCM-C */":{"font-family":"MJX-NCM-C",src:'url("%%URL%%/mjx-ncm-c.woff2") format("woff2")'},"@font-face /* MJX-NCM-CB */":{"font-family":"MJX-NCM-CB",src:'url("%%URL%%/mjx-ncm-cb.woff2") format("woff2")'},"@font-face /* MJX-NCM-OS */":{"font-family":"MJX-NCM-OS",src:'url("%%URL%%/mjx-ncm-os.woff2") format("woff2")'},"@font-face /* MJX-NCM-OB */":{"font-family":"MJX-NCM-OB",src:'url("%%URL%%/mjx-ncm-ob.woff2") format("woff2")'},"@font-face /* MJX-NCM-V */":{"font-family":"MJX-NCM-V",src:'url("%%URL%%/mjx-ncm-v.woff2") format("woff2")'},"@font-face /* MJX-NCM-LT */":{"font-family":"MJX-NCM-LT",src:'url("%%URL%%/mjx-ncm-lt.woff2") format("woff2")'},"@font-face /* MJX-NCM-RB */":{"font-family":"MJX-NCM-RB",src:'url("%%URL%%/mjx-ncm-rb.woff2") format("woff2")'},"@font-face /* MJX-NCM-EM */":{"font-family":"MJX-NCM-EM",src:'url("%%URL%%/mjx-ncm-em.woff2") format("woff2")'},"@font-face /* MJX-NCM-B-a */":{"font-family":"MJX-NCM-B-a",src:'url("%%URL%%/mjx-ncm-b-a.woff2") format("woff2")'},"@font-face /* MJX-NCM-U */":{"font-family":"MJX-NCM-U",src:'url("%%URL%%/mjx-ncm-u.woff2") format("woff2")'},"@font-face /* MJX-NCM-U-a */":{"font-family":"MJX-NCM-U-a",src:'url("%%URL%%/mjx-ncm-u-a.woff2") format("woff2")'},"@font-face /* MJX-NCM-S */":{"font-family":"MJX-NCM-S",src:'url("%%URL%%/mjx-ncm-s.woff2") format("woff2")'},"@font-face /* MJX-NCM-SB */":{"font-family":"MJX-NCM-SB",src:'url("%%URL%%/mjx-ncm-sb.woff2") format("woff2")'}}),eu.dynamicFiles=rh.defineDynamicFiles([["latin",{normal:[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7835],7838,[7840,7929],11377]}],["latin-b",{bold:[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929],11377]}],["latin-i",{italic:[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929]]}],["latin-bi",{"bold-italic":[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929]]}],["double-struck",{normal:[8450,8461,8469,8473,8474,8477,8484,[8508,8512],[8517,8521],120120,120121,[120123,120126],[120128,120132],120134,[120138,120144],[120146,120171],[120792,120801]],"double-struck":[305,567]}],["fraktur",{normal:[8460,8465,8476,8488,8493,120068,120069,[120071,120074],[120077,120084],[120086,120092],[120094,120119],[120172,120223]],fraktur:[305,567],"bold-fraktur":[305,567]}],["script",{normal:[8458,8459,8464,8466,8467,8472,8475,8492,[8495,8497],8499,8500,119964,119966,119967,119970,119973,119974,[119977,119980],[119982,119993],119995,[119997,120003],[120005,120067]],script:[],"bold-script":[]}],["sans-serif",{normal:[[8513,8516],[120224,120431],[120662,120777],[120802,120821]],"sans-serif":[[32,47],[58,64],[91,96],[123,126],160,163,165,167,168,172,[175,177],[180,183],215,240,247,305,567,710,711,[713,715],[728,730],732,[768,776],778,780,[913,929],[931,937],[945,969],977,978,981,982,1008,1009,[1012,1014],[8208,8212],8214,8216,8217,8220,8221,8224,8225,8230,8260,8364,8486,8487,[8592,8595],8722,8734],"bold-sans-serif":[32,33,[35,47],58,59,61,63,64,[91,96],[123,126],160,163,165,167,168,172,[175,177],[180,183],215,240,247,305,567,710,711,[713,715],[728,730],732,[768,776],778,780,978,1014,[8208,8212],8214,8216,8217,8220,8221,8224,8225,8230,8260,8364,8486,8487,[8592,8595],8722,8734],"sans-serif-italic":[[32,64],[91,96],[123,126],160,163,165,167,168,172,[175,177],[180,183],215,240,247,305,567,710,711,[713,715],[728,730],732,[768,776],778,780,[913,929],[931,937],[945,969],977,978,981,982,1008,1009,[1012,1014],[8208,8212],8214,8216,8217,8220,8221,8224,8225,8230,8260,8364,8486,8487,[8592,8595],8722,8734],"sans-serif-bold-italic":[32,33,[35,59],61,63,64,[91,96],[123,126],160,163,165,167,168,172,[175,177],[180,183],215,240,247,305,567,710,711,[713,715],[728,730],732,[768,776],778,780,978,1014,[8208,8212],8214,8216,8217,8220,8221,8224,8225,8230,8260,8364,8486,8487,[8592,8595],8722,8734]}],["sans-serif-r",{"sans-serif":[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929],11377]}],["sans-serif-b",{"bold-sans-serif":[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929],11377]}],["sans-serif-i",{"sans-serif-italic":[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929],11377]}],["sans-serif-bi",{"sans-serif-bold-italic":[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929],11377]}],["sans-serif-ex",{"sans-serif":[161,162,164,166,[169,171],173,174,184,[186,191],[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,846],[848,879],3647,7620,7621,7624,7625,8218,8219,8222,8223,8226,8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8319,8320,8353,8358,8361,8363,8369,8370,8451,8470,8471,8478,8480,8482,8494,[8592,8595],8730,8738,8960,9001,9002,9250,9251,9474,9553,9702,9773,9792,9834,9901,9902,9906,10013,10214,10215,11800,59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59959,59962,59966,59970,59973,60163,60164,60168,60175,60177,60178,60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198,[64256,64260],65126],"bold-sans-serif":[161,162,164,166,[169,171],173,174,184,[186,191],[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,846],[848,879],3647,7620,7621,7624,7625,8218,8219,8222,8223,8226,8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8319,8320,8353,8358,8361,8363,8369,8370,8451,8470,8471,8478,8480,8482,8494,[8592,8595],8730,8738,8960,9001,9002,9250,9251,9474,9553,9702,9773,9792,9834,9901,9902,9906,10013,10214,10215,11800,59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198,[64256,64260],65126],"sans-serif-italic":[161,162,164,166,[169,171],173,174,184,[186,191],[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,846],[848,879],3647,7620,7621,7624,7625,8218,8219,8222,8223,8226,8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8319,8320,8353,8358,8361,8363,8369,8370,8451,8470,8471,8478,8480,8482,8494,[8592,8595],8730,8738,8960,9001,9002,9250,9251,9474,9553,9702,9773,9792,9834,9901,9902,9906,10013,10214,10215,11800,59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198,[64256,64260],65126],"sans-serif-bold-italic":[161,162,164,166,[169,171],173,174,184,[186,191],[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,879],3647,7620,7621,7624,7625,8218,8219,8222,8223,8226,8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8319,8320,8353,8358,8361,8363,8369,8370,8451,8470,8471,8478,8480,8482,8494,[8592,8595],8730,8738,8960,9001,9002,9250,9251,9474,9553,9702,9773,9792,9834,9901,9902,9906,10013,10214,10215,11800,59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198,[64256,64260],65126]}],["monospace",{normal:[[120432,120483],[120822,120831]],monospace:[[32,47],[58,64],[91,96],[123,126],160,163,165,167,168,172,[175,177],[180,183],215,240,247,305,567,710,711,[728,730],732,[768,776],778,780,[913,929],[931,937],[945,969],977,978,981,982,1008,1009,[1012,1014],[8208,8212],8214,8216,8217,8220,8221,8224,8225,8230,8260,8364,8486,8487,[8592,8595],8722,8734]}],["monospace-l",{monospace:[[192,214],[216,239],[241,246],[248,304],[306,566],[568,591],[7680,7699],[7704,7707],[7710,7719],[7722,7755],[7764,7779],[7784,7799],[7804,7833],7835,7838,[7840,7929],11377]}],["monospace-ex",{monospace:[161,162,164,166,[169,171],173,174,184,[186,191],[592,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,995],1010,1011,[1015,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309],3647,7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575,7620,7621,7624,7625,[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],8218,8219,8222,8223,8226,8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8319,8320,8353,8358,8361,8363,8369,8370,8451,8470,8471,8478,8480,8482,8494,[8592,8595],8730,8738,8960,9001,9002,9250,9251,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,[9552,9579],9702,9773,9792,9834,9901,9902,9906,10013,10214,10215,11800,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198,[64256,64262],65126]}],["calligraphic",{"-tex-calligraphic":[[65,90]],"-tex-bold-calligraphic":[[65,90]]}],["math",{normal:[8714,8717,8731,8732,8762,8763,8782,8783,[8785,8787],[8790,8796],8798,8844,[8886,8889],[8891,8895],8903,[8912,8929],[8932,8937],[8946,8959],[10176,10199],[10202,10204],[10207,10213],[10625,10646],[10649,10740],10742,[10746,10751],10762,10763,[10781,10798],[10800,10814],[10816,10876],[10879,10884],[10893,10900],[10903,10926],[10939,10948],[10951,10954],[10957,10973],[10988,10993],[10998,11003],[11005,11007]]}],["symbols",{normal:[127,161,162,164,166,[169,171],173,174,178,179,[185,191],3647,8215,8218,8219,8222,8223,[8226,8229],8233,8240,8241,[8248,8259],[8261,8278],[8280,8286],8319,8320,8353,8358,[8361,8363],8369,8370,8448,8449,[8451,8454],8456,8457,8468,8470,8471,[8478,8483],8485,8489,8494,[8505,8507],[8522,8527],[8960,8966],[8977,8984],8986,8987,[8996,9e3],[9003,9114],9142,[9146,9165],9167,[9169,9179],[9186,9203],[9208,9215],9250,9251,11159,11193,11209,[11216,11241],[11248,11263],11800,12306,12310,12311,12336,[64256,64262],65126,65279]},[8215]],["symbols-b-i",{bold:[161,162,164,166,[169,171],173,174,[186,191],3647,8218,8219,8222,8223,8226,8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8319,8320,8353,8358,[8361,8363],8369,8370,8451,8470,8471,8478,8480,8482,8494,8960,9250,9251,11800,[64256,64262],65126],italic:[[161,167],[169,174],177,[181,183],[186,191],215,240,247,3647,8218,8219,[8222,8226],8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8320,8353,8358,8361,8363,8369,8370,8451,8470,8471,8478,8480,8482,8494,8960,9250,9251,11800,[64256,64262],65126],"bold-italic":[[161,167],[169,174],177,[181,183],[186,191],215,240,247,3647,8218,8219,[8222,8226],8233,8240,8241,[8249,8251],8253,8255,8256,8261,8262,8274,8276,8320,8353,8358,[8361,8363],8369,8370,8451,8470,8471,8478,8480,8482,8494,8960,9250,9251,11800,[64256,64262],65126]}],["greek",{normal:[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[11392,11507],[11513,11519]],bold:[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,987],[990,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[11392,11507],[11513,11519]],italic:[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[11392,11507],[11513,11519]],"bold-italic":[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[11392,11507],[11513,11519]]}],["greek-ss",{"sans-serif":[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190]],"bold-sans-serif":[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8121],[8123,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190]],"sans-serif-italic":[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190]],"sans-serif-bold-italic":[[880,887],[890,895],[900,906],908,[910,912],[938,944],[970,976],979,980,[983,1007],1010,1011,[1015,1023],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8121],[8123,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190]]}],["cyrillic",{normal:[[1024,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]],bold:[[1024,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]],italic:[[1024,1143],[1146,1158],[1160,1225],[1227,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]],"bold-italic":[[1024,1143],[1146,1158],[1160,1225],[1227,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]]}],["cyrillic-ss",{"sans-serif":[[1024,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]],"bold-sans-serif":[[1024,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]],"sans-serif-italic":[[1024,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]],"sans-serif-bold-italic":[[1024,1143],[1146,1158],[1160,1230],[1232,1273],[1276,1279],1298,1299,[1306,1309]]}],["phonetics",{normal:[[592,687],7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575],bold:[[592,687],7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575],italic:[[592,685],687],"bold-italic":[[592,687]]}],["phonetics-ss",{"sans-serif":[[592,687],7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575],"bold-sans-serif":[[592,687],7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575],"sans-serif-italic":[[592,687],7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575],"sans-serif-bold-italic":[[592,687],7424,7431,7434,7435,7437,7448,7449,7452,[7491,7499],7501,[7503,7507],[7510,7512],7514,7515,7517,7518,7520,7521,7544,[7568,7571],7575]}],["hebrew",{normal:[[1425,1479],[1488,1514],[1519,1525],1527,[64285,64335]],bold:[[1425,1479],[1488,1515],[1519,1525],1527,[64285,64335]],italic:[[1425,1479],[1488,1514],[1519,1525],1527,[64285,64335]],"bold-italic":[[1425,1479],[1488,1515],[1519,1525],1527,[64285,64335]]}],["devanagari",{normal:[[2304,2431]],bold:[],italic:[],"bold-italic":[]}],["cherokee",{normal:[[5024,5109],[5112,5117]],bold:[[5024,5109],[5112,5117]],italic:[[5024,5115]],"bold-italic":[[5024,5115]]}],["arabic",{normal:[[126464,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],126545,126546,126548,126551,126553,126555,126557,126559,126561,126562,126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],126704,126705],bold:[],italic:[],"bold-italic":[]}],["braille-d",{normal:[[10240,10495]]}],["braille",{"sans-serif":[[10240,10495]]}],["arrows",{normal:[8604,8605,8607,8609,8613,8615,8616,8621,[8623,8629],8632,8633,[8662,8665],[8668,8671],[8678,8692],[8695,8703],9166,10145,[10224,10228],10239,[10496,10505],[10508,10569],10572,10573,10575,10577,10580,10581,10584,10585,10588,10589,[10592,10601],[10608,10619],[11008,11026],[11056,11087],[11098,11123],[11126,11157],[11160,11192],[11244,11247]],"-largeop":[8593,8595,[8597,8603],[8606,8611],8613,8615,[8617,8622],[8624,8627],8630,8631,[8636,8655],8657,8659,[8661,8667],[8678,8681],8691,8693,8694,[11012,11015],11020,11021,11057],"-lf-tp":[[8678,8681],10503,11013,11014],"-rt-bt":[[8678,8681],10502,11015,11020],"-ex-md":[8678,8679,11013,11014]},[8607,8609,8613,8615,8621,8622,[8624,8627],[8662,8665],8668,8669,[8678,8681],8691,10145,10237,10238,10502,10503,10572,10573,10575,10577,10588,10589,10592,10593,[11012,11015],11020,11021,11057]],["marrows",{normal:[[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],129200,129201]}],["accents",{normal:[184,[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,879],7620,7621,7624,7625,[8403,8405],8408,[8413,8415],[8420,8427],8432],"-smallop":[785,[812,816],818,819,831,845],"-largeop":[785,[812,816]],"-size3":[785,[812,816]],"-size4":[785,[812,816]],"-size5":[785,[812,816]],"-size6":[785,[812,816]],"-size7":[785,[812,816]],"-ex-md":[818,819,831,845]},[785,[812,816],818,819,831,845,8425]],["accents-b-i",{bold:[184,[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,846],[848,879],7620,7621,7624,7625],italic:[184,[688,700],[702,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,846],[848,879]],"bold-italic":[184,[688,709],712,716,[718,727],731,[733,766],777,779,[781,823],[825,846],[848,879]]}],["shapes",{normal:[8962,[8998,9e3],9003,[9211,9214],[9472,9631],[9634,9641],[9644,9649],9672,9673,[9676,9678],[9680,9701],[9703,9710],[9712,9719],9728,9733,9734,9737,9761,9773,[9785,9790],9792,9794,[9824,9831],[9833,9835],[9837,9839],9854,[9856,9865],9893,[9898,9902],9906,10003,10013,10016,10026,10038,10045,10098,10099,10139,10145,[11026,11055],[11088,11097],[11194,11208],[11210,11215],11242,11243],bold:[9474,9553,9773,9792,9834,9901,9902,9906,10013],italic:[9773,9834,9901,9902,10013],"bold-italic":[9773,9834,9901,9902,10013]}],["mshapes",{normal:[[128896,128984],[128992,129003]]}],["variants",{"-tex-variant":[34,39,42,96,126,170,176,178,179,185,186,8212,8289,8304,8305,[8308,8334]]}],["PUA",{normal:[[57344,57395],[57409,57458],[59264,59274],59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198],bold:[59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,[61761,61766],[61771,61788],[61791,61797],61800,[61804,61810],61813,[61817,61819],[61822,61824],61826,61828,61829,[61832,61839],61842,61850,61854,61855,61857,61859,61860,[61863,61877],62082,62083,62110,62113,62116,[62119,62121],62124,62126,62127,[62560,62568],[62570,62578],63166,[63187,63190],63198],italic:[59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,61867,61868,[61873,61877],62082,62083,62110,62113,62116,62119,62120,[62560,62568],[62570,62578],63166,63172,[63174,63176],[63187,63190],63198],"bold-italic":[59395,[59908,59910],59913,59915,59917,59920,59927,59930,59932,59934,59935,59942,59946,59948,59951,59957,59962,59966,59970,59973,60163,60164,60168,[60175,60178],60182,60185,60190,60191,60200,60201,60203,60209,60213,60214,60218,60219,60224,60232,60233,60237,60257,60259,60261,60270,60271,[60424,60430],60432,60433,61699,61700,61705,[61719,61726],[61729,61731],[61734,61741],61743,[61747,61752],61757,61867,61868,[61873,61877],62082,62083,62110,62113,62116,62119,62120,[62560,62568],[62570,62578],63166,63172,[63174,63176],[63187,63190],63198]}]]);const su={fontName:"mathjax-newcm",DefaultFont:eu},iu=su.fontName,ru=su.DefaultFont;class nu extends qc{constructor(t={}){super(t,Qd,ru),this.chtmlStyles=null,this.font.adaptiveCSS(this.options.adaptiveCSS),this.wrapperUsage=new ih}addExtension(t,e=""){const s=super.addExtension(t,e);return s.length&&this.options.adaptiveCSS&&this.chtmlStyles&&this.adaptor.insertRules(this.chtmlStyles,s),[]}escaped(t,e){return this.setDocument(e),this.html("span",{},[this.text(t.math)])}styleSheet(t){if(this.chtmlStyles){const t=new lo;return this.options.adaptiveCSS&&(this.addWrapperStyles(t),this.updateFontStyles(t)),t.addStyles(this.font.updateDynamicStyles()),this.adaptor.insertRules(this.chtmlStyles,t.getStyleRules()),this.chtmlStyles}const e=this.chtmlStyles=super.styleSheet(t);return this.adaptor.setAttribute(e,"id",nu.STYLESHEETID),this.wrapperUsage.update(),e}updateFontStyles(t){t.addStyles(this.font.updateStyles({}))}addWrapperStyles(t){if(this.options.adaptiveCSS)for(const e of this.wrapperUsage.update()){const s=this.factory.getNodeClass(e);s&&this.addClassStyles(s,t)}else super.addWrapperStyles(t)}addClassStyles(t,e){const s=t;s.autoStyle&&"unknown"!==s.kind&&e.addStyles({["mjx-"+s.kind]:{display:"inline-block","text-align":"left"}}),this.wrapperUsage.add(s.kind),super.addClassStyles(t,e)}insertStyles(t){this.chtmlStyles&&this.adaptor.insertRules(this.chtmlStyles,new lo(t).getStyleRules())}processMath(t,e){t.toCHTML([e])}clearCache(){this.styleJson.clear(),this.font.clearCache(),this.wrapperUsage.clear(),this.chtmlStyles=null}reset(){this.clearCache()}unknownText(t,e,s=null){const i={},r=100/this.math.metrics.scale;if(100!==r&&(i["font-size"]=this.fixed(r,1)+"%",i.padding=No(75/r)+" 0 "+No(20/r)+" 0"),"-explicitFont"!==e){const s=Ur(t);(1!==s.length||s[0]<119808||s[0]>120831)&&this.cssFontStyles(this.font.getCssFont(e),i)}return null!==s&&(i.width=this.fixed(s*this.math.metrics.scale)+"em"),this.html("mjx-utext",{variant:e,style:i},[this.text(t)])}measureTextNode(t){const e=this.adaptor,s=e.clone(t);e.setStyle(s,"font-family",e.getStyle(s,"font-family").replace(/MJXZERO, /g,""));const i=this.math.metrics.em,r={position:"absolute",top:0,left:0,"white-space":"nowrap","font-size":this.fixed(i,3)+"px"},n=this.html("mjx-measure-text",{style:r},[s]);e.append(e.parent(this.math.start.node),this.container),e.append(this.container,n);const o=e.nodeSize(s,i)[0];return e.remove(this.container),e.remove(n),{w:o,h:.75,d:.2}}}function ou(t,e){const s={};for(const i of Object.keys(t)){const r=t[i];for(const t of Object.keys(r)){s[t]||(s[t]={});const n=r[t];if(i)for(const t of Object.keys(n)){const s=n[parseInt(t)];s[3]||(s[3]={}),e?s[3].ff=e+"-"+i:s[3].f=i}Object.assign(s[t],n)}}return s}function au(t,e,s,i=""){const r="https://cdn.jsdelivr.net"===(MathJax.config.loader?.paths?.fonts||"").substring(0,24)?"@%%VERSION%%":"",n=s.fontPath||`[fonts]/%%FONT%%-font${i}${r}`,o=t.match(/^[a-z]+:/)?(t.match(/[^/:\\]*$/)||[e])[0]:t;return ci(MathJax.config.loader,"paths",{[o+i]:o===t?n.replace(/%%FONT%%/g,t).replace(/%%VERSION%%/g,eo.version):t}),`[${o}${i}]`}nu.NAME="CHTML",nu.OPTIONS=Object.assign(Object.assign({},qc.OPTIONS),{adaptiveCSS:!0,matchFontHeight:!0}),nu.commonStyles=Object.assign(Object.assign({},qc.commonStyles),{'mjx-container[jax="CHTML"]':{"white-space":"nowrap"},[["mjx-mo > mjx-c","mjx-mi > mjx-c","mjx-mn > mjx-c","mjx-ms > mjx-c","mjx-mtext > mjx-c"].join(", ")]:{"clip-path":"padding-box polygon("+["-1em -2px","calc(100% + 1em) -2px","calc(100% + 1em) calc(100% + 2px)","-1em calc(100% + 2px)"].join(", ")+")"},"mjx-stretchy-h":{"clip-path":"padding-box polygon(0 -2px, 100% -2px, 100% calc(100% + 2px), 0 calc(100% + 2px))"},"mjx-stretchy-v":{"clip-path":"padding-box polygon(-2px 0, calc(100% + 2px) 0, calc(100% + 2px) 100%, -2px 100%)"},'mjx-container [space="1"]':{"margin-left":".111em"},'mjx-container [space="2"]':{"margin-left":".167em"},'mjx-container [space="3"]':{"margin-left":".222em"},'mjx-container [space="4"]':{"margin-left":".278em"},'mjx-container [space="5"]':{"margin-left":".333em"},'mjx-container [rspace="1"]':{"margin-right":".111em"},'mjx-container [rspace="2"]':{"margin-right":".167em"},'mjx-container [rspace="3"]':{"margin-right":".222em"},'mjx-container [rspace="4"]':{"margin-right":".278em"},'mjx-container [rspace="5"]':{"margin-right":".333em"},'mjx-container [size="s"]':{"font-size":"70.7%"},'mjx-container [size="ss"]':{"font-size":"50%"},'mjx-container [size="Tn"]':{"font-size":"60%"},'mjx-container [size="sm"]':{"font-size":"85%"},'mjx-container [size="lg"]':{"font-size":"120%"},'mjx-container [size="Lg"]':{"font-size":"144%"},'mjx-container [size="LG"]':{"font-size":"173%"},'mjx-container [size="hg"]':{"font-size":"207%"},'mjx-container [size="HG"]':{"font-size":"249%"},'mjx-container [width="full"]':{width:"100%"},"mjx-box":{display:"inline-block"},"mjx-block":{display:"block"},"mjx-itable":{display:"inline-table"},"mjx-row":{display:"table-row"},[["cell","base","under","over","den"].map(t=>`mjx-row > mjx-${t}`).join(", ")]:{display:"table-cell"},"mjx-container [inline-breaks]":{display:"inline"},"mjx-container .mjx-selected":{outline:"2px solid black"},"@media (prefers-color-scheme: dark)":{"mjx-container .mjx-selected":{outline:"2px solid #C8C8C8"}},"mjx-mtext":{display:"inline-block"},"mjx-mstyle":{display:"inline-block"},"mjx-merror":{display:"inline-block",color:"red","background-color":"yellow"},"mjx-mphantom":{visibility:"hidden"}}),nu.STYLESHEETID="MJX-CHTML-styles",MathJax.loader&&MathJax.loader.checkVersion("output/chtml",ri,"output"),hi({_:{output:{chtml_ts:Ds,chtml:{DefaultFont:Os,DynamicFonts:Ps,FontData:ke,Notation:Ge,Usage:we,Wrapper:Le,WrapperFactory:ks,Wrappers_ts:ws,Wrappers:{HtmlNode:Is,TeXAtom:Ss,TextNode:Ms,maction:ys,math:Re,menclose:Je,mfenced:Qe,mfrac:ts,mglyph:vs,mi:Ie,mmultiscripts:us,mn:Be,mo:De,mpadded:qe,mroot:rs,mrow:$e,ms:je,mspace:We,msqrt:ss,msubsup:ls,mtable:ms,mtd:Es,mtext:Ue,mtr:gs,munderover:hs,scriptbase:as,semantics:As}},common_ts:Te,common:{Direction:xe,FontData:ye,LineBBox:Ne,LinebreakVisitor:ve,Notation:Ve,Wrapper:Ae,WrapperFactory:Ce,Wrappers:{TeXAtom:Ls,TextNode:Rs,XmlNode:Cs,maction:xs,math:Se,menclose:Xe,mfenced:Ye,mfrac:Ze,mglyph:Ns,mi:Me,mmultiscripts:ds,mn:Pe,mo:Oe,mpadded:ze,mroot:is,mrow:Ke,ms:Fe,mspace:He,msqrt:es,msubsup:ns,mtable:ps,mtd:bs,mtext:_e,mtr:fs,munderover:cs,scriptbase:os,semantics:Ts}}}}});const lu={config(t,e,s,i){if(MathJax.loader){ci(MathJax.config,t,MathJax.config.output||{});let e=MathJax.config[t],r=e.font||e.fontData||s;"string"!=typeof r&&(e.fontData=r,e.font=r=r.NAME),"["!==r.charAt(0)&&(r=au(r,t,e));const n=r.substring(1,r.length-1),o=function(t,e){const s=[];for(const i of e.fontExtensions||[]){const r=`${au(i,t,e,"-extension")}/${t}`;s.push(r)}return s}(t,e);if(o.length&&MathJax.loader.addPackageData(`${r}/${t}`,{extraLoads:o}),n===s&&i){const e=MathJax.config.loader[`${r}/${t}`]?.extraLoads;e&&MathJax.loader.addPackageData(`output/${t}`,{extraLoads:e}),hi({_:{output:{fonts:{[n]:{[t+"_ts"]:{[i.NAME+"Font"]:i}}}}}}),ci(MathJax,"config",{output:{font:r},[t]:{fontData:i,dynamicPrefix:`${r}/${t}/dynamic`}}),"chtml"===t&&ci(MathJax.config,t,{fontURL:gi.resolvePath(`${r}/${t}/woff2`,!1)})}else MathJax.loader.addPackageData(`output/${t}`,{extraLoads:[`${r}/${t}`]})}MathJax.startup&&(MathJax.startup.registerConstructor(t,e),MathJax.startup.useOutput(t))},loadFont:(t,e,s,i)=>MathJax.loader?(i&&MathJax.loader.preLoaded(`[${s}]/${e}`),gi.loadPromise(`output/${e}`).then(t)):t};var cu;lu.config("chtml",nu,iu,ru),function(t){t[t.RETURN=13]="RETURN",t[t.ESCAPE=27]="ESCAPE",t[t.SPACE=32]="SPACE",t[t.LEFT=37]="LEFT",t[t.UP=38]="UP",t[t.RIGHT=39]="RIGHT",t[t.DOWN=40]="DOWN"}(cu||(cu={}));const hu="click",du="dblclick",uu="mousedown",pu="mouseup",mu="mouseover",fu="mouseout",gu="selectstart";class bu{constructor(){this.bubble=!1}bubbleKey(){this.bubble=!0}keydown(t){switch(t.keyCode){case cu.ESCAPE:this.escape(t);break;case cu.RIGHT:this.right(t);break;case cu.LEFT:this.left(t);break;case cu.UP:this.up(t);break;case cu.DOWN:this.down(t);break;case cu.RETURN:case cu.SPACE:this.space(t);break;default:return}this.bubble?this.bubble=!1:this.stop(t)}escape(t){}space(t){}left(t){}right(t){}up(t){}down(t){}stop(t){t&&(t.stopPropagation(),t.preventDefault(),t.cancelBubble=!0)}mousedown(t){return this.stop(t)}mouseup(t){return this.stop(t)}mouseover(t){return this.stop(t)}mouseout(t){return this.stop(t)}click(t){return this.stop(t)}addEvents(t){t.addEventListener(uu,this.mousedown.bind(this)),t.addEventListener(pu,this.mouseup.bind(this)),t.addEventListener(mu,this.mouseover.bind(this)),t.addEventListener(fu,this.mouseout.bind(this)),t.addEventListener(hu,this.click.bind(this)),t.addEventListener("keydown",this.keydown.bind(this)),t.addEventListener("dragstart",this.stop.bind(this)),t.addEventListener(gu,this.stop.bind(this)),t.addEventListener("contextmenu",this.stop.bind(this)),t.addEventListener(du,this.stop.bind(this))}}class Eu extends bu{addAttributes(t){for(const e in t)this.html.setAttribute(e,t[e])}get html(){return this._html||this.generateHtml(),this._html}set html(t){this._html=t,this.addEvents(t)}generateHtml(){const t=document.createElement("div");t.classList.add(this.className),t.setAttribute("role",this.role),this.html=t}focus(){const t=this.html;t.setAttribute("tabindex","0"),setTimeout(()=>t.focus(),50)}unfocus(){const t=this.html;t.hasAttribute("tabindex")&&t.setAttribute("tabindex","-1");try{t.blur()}catch(t){}t.blur()}}class xu extends Eu{constructor(){super(...arguments),this.posted=!1}isPosted(){return this.posted}post(t,e){this.posted||(void 0!==t&&void 0!==e&&this.html.setAttribute("style","left: "+t+"px; top: "+e+"px;"),this.display(),this.posted=!0)}unpost(){if(!this.posted)return;const t=this.html;t.parentNode&&t.parentNode.removeChild(t),this.posted=!1}}function yu(t){return"CtxtMenu_"+t}function Nu(t){return yu(t)}function vu(t){return yu(t)}const Tu={ATTACHED:Nu("Attached"),CONTEXTMENU:Nu("ContextMenu"),MENU:Nu("Menu"),MENUARROW:Nu("MenuArrow"),MENUACTIVE:Nu("MenuActive"),MENUCHECK:Nu("MenuCheck"),MENUCLOSE:Nu("MenuClose"),MENUCOMBOBOX:Nu("MenuComboBox"),MENUDISABLED:Nu("MenuDisabled"),MENUFRAME:Nu("MenuFrame"),MENUITEM:Nu("MenuItem"),MENULABEL:Nu("MenuLabel"),MENURADIOCHECK:Nu("MenuRadioCheck"),MENUINPUTBOX:Nu("MenuInputBox"),MENURULE:Nu("MenuRule"),MENUSLIDER:Nu("MenuSlider"),MOUSEPOST:Nu("MousePost"),RTL:Nu("RTL"),INFO:Nu("Info"),INFOCLOSE:Nu("InfoClose"),INFOCONTENT:Nu("InfoContent"),INFOSIGNATURE:Nu("InfoSignature"),INFOTITLE:Nu("InfoTitle"),SLIDERVALUE:Nu("SliderValue"),SLIDERBAR:Nu("SliderBar"),SELECTION:Nu("Selection"),SELECTIONBOX:Nu("SelectionBox"),SELECTIONMENU:Nu("SelectionMenu"),SELECTIONDIVIDER:Nu("SelectionDivider"),SELECTIONITEM:Nu("SelectionItem")},Cu={COUNTER:vu("Counter"),KEYDOWNFUNC:vu("keydownFunc"),CONTEXTMENUFUNC:vu("contextmenuFunc"),OLDTAB:vu("Oldtabindex"),TOUCHFUNC:vu("TouchFunc")};class Au extends Eu{constructor(t,e){super(),this._menu=t,this._type=e,this.className=Tu.MENUITEM,this.role="menuitem",this.hidden=!1}get menu(){return this._menu}set menu(t){this._menu=t}get type(){return this._type}hide(){this.hidden=!0,this.menu.generateMenu()}show(){this.hidden=!1,this.menu.generateMenu()}isHidden(){return this.hidden}}function Lu(t){const e=t.menu;e.baseMenu?e.baseMenu.unpost():e.unpost()}function Su(t){const e=t.menu;return(e.baseMenu?e.baseMenu:e).store.active}function Ru(t,e){console.error("ContextMenu Error: "+e)}function Mu(){return Iu++}let Iu=0;class wu extends Au{constructor(t,e,s,i){super(t,e),this._content=s,this.disabled=!1,this.callbacks=[],this._id=i||s}get content(){return this._content}set content(t){this._content=t,this.generateHtml(),this.menu&&this.menu.generateHtml()}get id(){return this._id}press(){this.disabled||(this.executeAction(),this.executeCallbacks_())}executeAction(){}registerCallback(t){-1===this.callbacks.indexOf(t)&&this.callbacks.push(t)}unregisterCallback(t){const e=this.callbacks.indexOf(t);-1!==e&&this.callbacks.splice(e,1)}mousedown(t){this.press(),this.stop(t)}mouseover(t){this.focus(),this.stop(t)}mouseout(t){this.deactivate(),this.stop(t)}generateHtml(){super.generateHtml();const t=this.html;t.setAttribute("aria-disabled","false"),t.textContent=this.content}activate(){this.disabled||this.html.classList.add(Tu.MENUACTIVE)}deactivate(){this.html.classList.remove(Tu.MENUACTIVE)}focus(){this.menu.focused=this,super.focus(),this.activate()}unfocus(){this.deactivate(),super.unfocus()}escape(t){Lu(this)}up(t){this.menu.up(t)}down(t){this.menu.down(t)}left(t){this.menu.left(t)}right(t){this.menu.right(t)}space(t){this.press()}disable(){this.disabled=!0;const t=this.html;t.classList.add(Tu.MENUDISABLED),t.setAttribute("aria-disabled","true")}enable(){this.disabled=!1;const t=this.html;t.classList.remove(Tu.MENUDISABLED),t.removeAttribute("aria-disabled")}executeCallbacks_(){for(const t of this.callbacks)try{t(this)}catch(t){Ru(0,"Callback for menu entry "+this.id+" failed.")}}}class ku extends wu{static fromJson(t,{content:e,menu:s,id:i},r){const n=new this(r,e,i),o=t.get("subMenu")(t,s,n);return n.submenu=o,n}constructor(t,e,s){super(t,"submenu",e,s),this._submenu=null}set submenu(t){this._submenu=t}get submenu(){return this._submenu}mouseover(t){this.focus(),this.stop(t)}mouseout(t){this.stop(t)}unfocus(){if(this.submenu.isPosted()){if(this.menu.focused!==this)return super.unfocus(),void this.menu.unpostSubmenus();this.html.setAttribute("tabindex","-1"),this.html.blur()}else super.unfocus()}focus(){super.focus(),this.submenu.isPosted()||this.disabled||this.submenu.post()}executeAction(){this.submenu.isPosted()?this.submenu.unpost():this.submenu.post()}generateHtml(){super.generateHtml();const t=this.html;this.span=document.createElement("span"),this.span.textContent="\u25ba",this.span.classList.add(Tu.MENUARROW),this.span.setAttribute("aria-hidden","true"),t.appendChild(this.span),t.setAttribute("aria-haspopup","true")}left(t){this.submenu.isPosted()?this.submenu.unpost():super.left(t)}right(t){this.submenu.isPosted()?this.submenu.down(t):this.submenu.post()}toJson(){return{type:""}}}class Ou extends xu{constructor(){super(...arguments),this.className=Tu.CONTEXTMENU,this.role="menu",this._items=[],this._baseMenu=null}set baseMenu(t){this._baseMenu=t}get baseMenu(){return this._baseMenu}get items(){return this._items}set items(t){this._items=t}get pool(){return this.variablePool}get focused(){return this._focused}set focused(t){if(this._focused===t)return;this._focused||this.unfocus();const e=this._focused;this._focused=t,e&&e.unfocus()}up(t){const e=this.items.filter(t=>t instanceof wu&&!t.isHidden());if(0===e.length)return;if(!this.focused)return void e[e.length-1].focus();let s=e.indexOf(this.focused);-1!==s&&(s=s?--s:e.length-1,e[s].focus())}down(t){const e=this.items.filter(t=>t instanceof wu&&!t.isHidden());if(0===e.length)return;if(!this.focused)return void e[0].focus();let s=e.indexOf(this.focused);-1!==s&&(s++,s=s===e.length?0:s,e[s].focus())}generateHtml(){super.generateHtml(),this.generateMenu()}generateMenu(){const t=this.html;t.classList.add(Tu.MENU);for(const e of this.items){if(!e.isHidden()){t.appendChild(e.html);continue}const s=e.html;s.parentNode&&s.parentNode.removeChild(s)}}post(t,e){this.variablePool.update(),super.post(t,e)}unpostSubmenus(){const t=this.items.filter(t=>t instanceof ku);for(const e of t)e.submenu.unpost(),e!==this.focused&&e.unfocus()}unpost(){super.unpost(),this.unpostSubmenus(),this.focused=null}find(t){for(const e of this.items)if("rule"!==e.type){if(e.id===t)return e;if("submenu"===e.type){const s=e.submenu.find(t);if(s)return s}}return null}}class Du{constructor(t){this.menu=t,this.store=[],this._active=null,this.counter=0,this.attachedClass=Tu.ATTACHED+"_"+Mu(),this.taborder=!0,this.attrMap={}}set active(t){do{if(-1!==this.store.indexOf(t)){this._active=t;break}t=t.parentNode}while(t)}get active(){return this._active}next(){const t=this.store.length;if(0===t)return this.active=null,null;let e=this.store.indexOf(this.active);return e=-1===e?0:et.setAttribute("tabindex","0"))}removeTaborder_(){this.store.forEach(t=>t.setAttribute("tabindex","-1"))}addTabindex(t){t.hasAttribute("tabindex")&&t.setAttribute(Cu.OLDTAB,t.getAttribute("tabindex")),t.setAttribute("tabindex","0")}removeTabindex(t){t.hasAttribute(Cu.OLDTAB)?(t.setAttribute("tabindex",t.getAttribute(Cu.OLDTAB)),t.removeAttribute(Cu.OLDTAB)):t.removeAttribute("tabindex")}addEvents(t){t.hasAttribute(Cu.COUNTER)||(this.addEvent(t,"contextmenu",this.menu.post.bind(this.menu)),this.addEvent(t,"keydown",this.keydown.bind(this)),t.setAttribute(Cu.COUNTER,this.counter.toString()),this.counter++)}addEvent(t,e,s){const i=Cu[e.toUpperCase()+"FUNC"];this.attrMap[i+this.counter]=s,t.addEventListener(e,s)}removeEvents(t){if(!t.hasAttribute(Cu.COUNTER))return;const e=t.getAttribute(Cu.COUNTER);this.removeEvent(t,"contextmenu",e),this.removeEvent(t,"keydown",e),t.removeAttribute(Cu.COUNTER)}removeEvent(t,e,s){const i=Cu[e.toUpperCase()+"FUNC"],r=this.attrMap[i+s];t.removeEventListener(e,r)}keydown(t){t.keyCode===cu.SPACE&&(this.menu.post(t),t.preventDefault(),t.stopImmediatePropagation())}}class Pu{constructor(){this.pool={}}insert(t){this.pool[t.name]=t}lookup(t){return this.pool[t]}remove(t){delete this.pool[t]}update(){for(const t in this.pool)this.pool[t].update()}}class Bu extends Ou{static fromJson(t,{pool:e,items:s,id:i=""}){const r=new this(t);r.id=i;const n=t.get("variable");e.forEach(e=>n(t,e,r.pool));const o=t.get("items")(t,s,r);return r.items=o,r}constructor(t){super(),this.factory=t,this.id="",this.moving=!1,this._store=new Du(this),this.widgets=[],this.variablePool=new Pu}generateHtml(){this.isPosted()&&this.unpost(),super.generateHtml(),this._frame=document.createElement("div"),this._frame.classList.add(Tu.MENUFRAME);const t="left: 0px; top: 0px; z-index: 200; width: 100%; height: 100%; border: 0px; padding: 0px; margin: 0px;";this._frame.setAttribute("style","position: absolute; "+t);const e=document.createElement("div");e.setAttribute("style","position: fixed; "+t),this._frame.appendChild(e),e.addEventListener("mousedown",function(t){this.unpost(),this.unpostWidgets(),this.stop(t)}.bind(this))}display(){document.body.appendChild(this.frame),this.frame.appendChild(this.html),this.focus()}escape(t){this.unpost(),this.unpostWidgets()}unpost(){if(super.unpost(),this.widgets.length>0)return;this.frame.parentNode.removeChild(this.frame);const t=this.store;this.moving||t.insertTaborder(),t.active.focus()}left(t){this.move_(this.store.previous())}right(t){this.move_(this.store.next())}get frame(){return this._frame}get store(){return this._store}post(t,e){if(void 0!==e)return this.moving||this.store.removeTaborder(),void super.post(t,e);const s=t;let i,r,n;if(s instanceof Event?(i=s.target,this.stop(s)):i=s,s instanceof MouseEvent&&(r=s.pageX,n=s.pageY,r||n||!s.clientX||(r=s.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,n=s.clientY+document.body.scrollTop+document.documentElement.scrollTop)),!r&&!n&&i){const t=window.pageXOffset||document.documentElement.scrollLeft,e=window.pageYOffset||document.documentElement.scrollTop,s=i.getBoundingClientRect();r=(s.right+s.left)/2+t,n=(s.bottom+s.top)/2+e}this.store.active=i,this.anchor=this.store.active;const o=this.html;r+o.offsetWidth>document.body.offsetWidth-5&&(r=document.body.offsetWidth-o.offsetWidth-5),this.post(r,n)}registerWidget(t){this.widgets.push(t)}unregisterWidget(t){const e=this.widgets.indexOf(t);e>-1&&this.widgets.splice(e,1),0===this.widgets.length&&this.unpost()}unpostWidgets(){this.widgets.forEach(t=>t.unpost())}toJson(){return{type:""}}move_(t){this.anchor&&t!==this.anchor&&(this.moving=!0,this.unpost(),this.post(t),this.moving=!1)}}class Fu extends Ou{static fromJson(t,{items:e},s){const i=new this(s),r=t.get("items")(t,e,i);return i.items=r,i}constructor(t){super(),this._anchor=t,this.variablePool=this.anchor.menu.pool,this.setBaseMenu()}get anchor(){return this._anchor}post(){if(!this.anchor.menu.isPosted())return;let t=this.anchor.html;const e=this.html,s=this.baseMenu.frame,i=t.offsetWidth;let r=i-2,n=0;for(;t&&t!==s;)r+=t.offsetLeft,n+=t.offsetTop,t=t.parentNode;r+e.offsetWidth>document.body.offsetWidth-5&&(r=Math.max(5,r-i-e.offsetWidth+6)),super.post(r,n)}display(){this.baseMenu.frame.appendChild(this.html)}setBaseMenu(){let t=this;do{t=t.anchor.menu}while(t instanceof Fu);this.baseMenu=t}left(t){this.focused=null,this.anchor.focus()}toJson(){return{type:""}}}class ju extends wu{generateHtml(){super.generateHtml();const t=this.html;this.span||this.generateSpan(),t.appendChild(this.span),this.update()}register(){this.variable.register(this)}unregister(){this.variable.unregister(this)}update(){this.updateAria(),this.span&&this.updateSpan()}}class _u extends ju{static fromJson(t,{content:e,variable:s,id:i},r){return new this(r,e,s,i)}constructor(t,e,s,i){super(t,"radio",e,i),this.role="menuitemradio",this.variable=t.pool.lookup(s),this.register()}executeAction(){this.variable.setValue(this.id),Lu(this)}generateSpan(){this.span=document.createElement("span"),this.span.textContent="\u2713",this.span.classList.add(Tu.MENURADIOCHECK),this.span.setAttribute("aria-hidden","true")}updateAria(){this.html.setAttribute("aria-checked",this.variable.getValue()===this.id?"true":"false")}updateSpan(){this.span.style.display=this.variable.getValue()===this.id?"":"none"}toJson(){return{type:""}}}class Uu extends Au{static fromJson(t,e,s){return new this(s)}constructor(t){super(t,"rule"),this.className=Tu.MENUITEM,this.role="separator"}generateHtml(){super.generateHtml();const t=this.html;t.classList.add(Tu.MENURULE),t.setAttribute("aria-orientation","vertical")}addEvents(t){}toJson(){return{type:"rule"}}}class Hu extends wu{static fromJson(t,{content:e,action:s,id:i},r){return new this(r,e,s,i)}constructor(t,e,s,i){super(t,"command",e,i),this.command=s}mousedown(t){this.stop(t)}mouseup(t){this.press(),this.stop(t)}executeAction(){try{this.command(Su(this))}catch(t){Ru(0,"Illegal command callback.")}Lu(this)}toJson(){return{type:""}}}class Wu{static fromJson(t,{name:e,getter:s,setter:i},r){const n=new this(e,s,i);r.insert(n)}constructor(t,e,s){this._name=t,this.getter=e,this.setter=s,this.items=[]}get name(){return this._name}getValue(t){try{return this.getter(t)}catch(t){return Ru(0,"Command of variable "+this.name+" failed."),null}}setValue(t,e){try{this.setter(t,e)}catch(t){Ru(0,"Command of variable "+this.name+" failed.")}this.update()}register(t){-1===this.items.indexOf(t)&&this.items.push(t)}unregister(t){const e=this.items.indexOf(t);-1!==e&&this.items.splice(e,1)}update(){this.items.forEach(t=>t.update())}registerCallback(t){this.items.forEach(e=>e.registerCallback(t))}unregisterCallback(t){this.items.forEach(e=>e.unregisterCallback(t))}toJson(){return{type:"variable",name:this.name,getter:this.getter.toString(),setter:this.setter.toString()}}}class zu extends ju{static fromJson(t,{content:e,variable:s,id:i},r){return new this(r,e,s,i)}constructor(t,e,s,i){super(t,"checkbox",e,i),this.role="menuitemcheckbox",this.variable=t.pool.lookup(s),this.register()}executeAction(){this.variable.setValue(!this.variable.getValue()),Lu(this)}generateSpan(){this.span=document.createElement("span"),this.span.textContent="\u2713",this.span.classList.add(Tu.MENUCHECK),this.span.setAttribute("aria-hidden","true")}updateAria(){this.html.setAttribute("aria-checked",this.variable.getValue()?"true":"false")}updateSpan(){this.span.style.display=this.variable.getValue()?"":"none"}toJson(){return{type:""}}}class qu extends ju{static fromJson(t,{content:e,variable:s,id:i},r){return new this(r,e,s,i)}constructor(t,e,s,i){super(t,"combobox",e,i),this.role="combobox",this.inputEvent=!1,this.variable=t.pool.lookup(s),this.register()}executeAction(){this.variable.setValue(this.input.value,Su(this))}space(t){super.space(t),Lu(this)}focus(){super.focus(),this.input.focus()}unfocus(){super.unfocus(),this.updateSpan()}generateHtml(){super.generateHtml();this.html.classList.add(Tu.MENUCOMBOBOX)}generateSpan(){this.span=document.createElement("span"),this.span.classList.add(Tu.MENUINPUTBOX),this.input=document.createElement("input"),this.input.addEventListener("keydown",this.inputKey.bind(this)),this.input.setAttribute("size","10em"),this.input.setAttribute("type","text"),this.input.setAttribute("tabindex","-1"),this.span.appendChild(this.input)}inputKey(t){this.bubbleKey(),this.inputEvent=!0}keydown(t){if(this.inputEvent&&t.keyCode!==cu.ESCAPE&&t.keyCode!==cu.RETURN)return this.inputEvent=!1,void t.stopPropagation();super.keydown(t),t.stopPropagation()}updateAria(){}updateSpan(){let t;try{t=this.variable.getValue(Su(this))}catch(e){t=""}this.input.value=t}toJson(){return{type:""}}}class Vu extends wu{static fromJson(t,{content:e,id:s},i){return new this(i,e,s)}constructor(t,e,s){super(t,"label",e,s)}generateHtml(){super.generateHtml();this.html.classList.add(Tu.MENULABEL)}toJson(){return{type:""}}}class Xu extends ju{static fromJson(t,{content:e,variable:s,id:i},r){return new this(r,e,s,i)}constructor(t,e,s,i){super(t,"slider",e,i),this.role="slider",this.labelId="ctx_slideLabel"+Mu(),this.valueId="ctx_slideValue"+Mu(),this.inputEvent=!1,this.variable=t.pool.lookup(s),this.register()}executeAction(){this.variable.setValue(this.input.value,Su(this)),this.update()}space(t){super.space(t),Lu(this)}focus(){super.focus(),this.input.focus()}unfocus(){super.unfocus(),this.updateSpan()}generateHtml(){super.generateHtml();this.html.classList.add(Tu.MENUSLIDER),this.valueSpan=document.createElement("span"),this.valueSpan.setAttribute("id",this.valueId),this.valueSpan.classList.add(Tu.SLIDERVALUE),this.html.appendChild(this.valueSpan)}generateSpan(){this.span=document.createElement("span"),this.labelSpan=document.createElement("span"),this.labelSpan.setAttribute("id",this.labelId),this.labelSpan.appendChild(this.html.childNodes[0]),this.html.appendChild(this.labelSpan),this.input=document.createElement("input"),this.input.setAttribute("type","range"),this.input.setAttribute("min","0"),this.input.setAttribute("max","100"),this.input.setAttribute("aria-valuemin","0"),this.input.setAttribute("aria-valuemax","100"),this.input.setAttribute("aria-labelledby",this.labelId),this.input.addEventListener("keydown",this.inputKey.bind(this)),this.input.addEventListener("input",this.executeAction.bind(this)),this.input.classList.add(Tu.SLIDERBAR),this.span.appendChild(this.input)}inputKey(t){this.inputEvent=!0}mousedown(t){t.stopPropagation()}mouseup(t){Lu(this),t.stopPropagation()}keydown(t){const e=t.keyCode;return e===cu.UP||e===cu.DOWN?(t.preventDefault(),void super.keydown(t)):this.inputEvent&&e!==cu.ESCAPE&&e!==cu.RETURN?(this.inputEvent=!1,void t.stopPropagation()):(super.keydown(t),void t.stopPropagation())}updateAria(){const t=this.variable.getValue();t&&this.input&&(this.input.setAttribute("aria-valuenow",t),this.input.setAttribute("aria-valuetext",t+"%"))}updateSpan(){let t;try{t=this.variable.getValue(Su(this)),this.valueSpan.innerHTML=t+"%"}catch(e){t=""}this.input.value=t}toJson(){return{type:""}}}class Gu extends xu{constructor(t){super(),this.element=t,this.className=Tu.MENUCLOSE,this.role="button"}generateHtml(){const t=document.createElement("span");t.classList.add(this.className),t.setAttribute("role",this.role),t.setAttribute("tabindex","0");const e=document.createElement("span");e.textContent="\xd7",t.appendChild(e),this.html=t}display(){}unpost(){super.unpost(),this.element.unpost()}keydown(t){this.bubbleKey(),super.keydown(t)}space(t){this.unpost(),this.stop(t)}mousedown(t){this.unpost(),this.stop(t)}}class Ju extends xu{constructor(t,e,s){super(),this.title=t,this.signature=s,this.className=Tu.INFO,this.role="dialog",this.contentDiv=this.generateContent(),this.close=this.generateClose(),this.content=e||function(){return""}}attachMenu(t){this.menu=t}generateHtml(){super.generateHtml();const t=this.html;t.appendChild(this.generateTitle()),t.appendChild(this.contentDiv),t.appendChild(this.generateSignature()),t.appendChild(this.close.html),t.setAttribute("tabindex","0")}post(){super.post();const t=document.documentElement,e=this.html,s=window.innerHeight||t.clientHeight||t.scrollHeight||0,i=Math.floor(-e.offsetWidth/2),r=Math.floor((s-e.offsetHeight)/3);e.setAttribute("style","margin-left: "+i+"px; top: "+r+"px;"),window.event instanceof MouseEvent&&e.classList.add(Tu.MOUSEPOST),e.focus()}display(){this.menu.registerWidget(this),this.contentDiv.innerHTML=this.content();const t=this.menu.html;t.parentNode&&t.parentNode.removeChild(t),this.menu.frame.appendChild(this.html)}click(t){}keydown(t){this.bubbleKey(),super.keydown(t)}escape(t){this.unpost()}unpost(){super.unpost(),this.html.classList.remove(Tu.MOUSEPOST),this.menu.unregisterWidget(this)}generateClose(){const t=new Gu(this),e=t.html;return e.classList.add(Tu.INFOCLOSE),e.setAttribute("aria-label","Close Dialog Box"),t}generateTitle(){const t=document.createElement("span");return t.innerHTML=this.title,t.classList.add(Tu.INFOTITLE),t}generateContent(){const t=document.createElement("div");return t.classList.add(Tu.INFOCONTENT),t.setAttribute("tabindex","0"),t}generateSignature(){const t=document.createElement("span");return t.innerHTML=this.signature,t.classList.add(Tu.INFOSIGNATURE),t}toJson(){return{type:""}}}class Ku extends Ou{static fromJson(t,{title:e,values:s,variable:i},r){const n=new this(r),o=t.get("label")(t,{content:e||"",id:e||"id"},n),a=t.get("rule")(t,{},n),l=s.map(e=>t.get("radio")(t,{content:e,variable:i,id:e},n)),c=[o,a].concat(l);return n.items=c,n}constructor(t){super(),this.anchor=t,this.className=Tu.SELECTIONMENU,this.variablePool=this.anchor.menu.pool,this.baseMenu=this.anchor.menu}generateHtml(){super.generateHtml(),this.items.forEach(t=>t.html.classList.add(Tu.SELECTIONITEM))}display(){}right(t){this.anchor.right(t)}left(t){this.anchor.left(t)}}class $u extends Ju{static fromJson(t,{title:e,signature:s,selections:i,order:r,grid:n},o){const a=new this(e,s,r,n);a.attachMenu(o);const l=i.map(e=>t.get("selectionMenu")(t,e,a));return a.selections=l,a}constructor(t,e,s="none",i="vertical"){super(t,null,e),this.style=s,this.grid=i,this._selections=[],this.prefix="ctxt-selection",this._balanced=!0}attachMenu(t){this.menu=t}get selections(){return this._selections}set selections(t){this._selections=[],t.forEach(t=>this.addSelection(t))}addSelection(t){t.anchor=this,this._selections.push(t)}rowDiv(t){const e=document.createElement("div");this.contentDiv.appendChild(e);const s=t.map(t=>(e.appendChild(t.html),t.html.id||(t.html.id=this.prefix+Mu()),t.html.getBoundingClientRect())),i=s.map(t=>t.width),r=i.reduce((t,e)=>t+e,0),n=s.reduce((t,e)=>Math.max(t,e.height),0);return e.classList.add(Tu.SELECTIONDIVIDER),e.setAttribute("style","height: "+n+"px;"),[e,r,n,i]}display(){if(super.display(),this.order(),!this.selections.length)return;const t=[];let e=0,s=[];const i=this.getChunkSize(this.selections.length);for(let r=0;rt.html.style.height=l+"px"),s=this.combineColumn(s,c)}this._balanced&&(this.balanceColumn(t,s),e=s.reduce((t,e)=>t+e,20)),t.forEach(t=>t.style.width=e+"px")}getChunkSize(t){switch(this.grid){case"square":return Math.floor(Math.sqrt(t));case"horizontal":return Math.floor(t/$u.chunkSize);default:return $u.chunkSize}}balanceColumn(t,e){t.forEach(t=>{const s=Array.from(t.children);for(let t,i=0;t=s[i];i++)t.style.width=e[i]+"px"})}combineColumn(t,e){let s=[],i=0;for(;t[i]||e[i];){if(!t[i]){s=s.concat(e.slice(i));break}if(!e[i]){s=s.concat(t.slice(i));break}s.push(Math.max(t[i],e[i])),i++}return s}left(t){this.move(t,t=>(0===t?this.selections.length:t)-1)}right(t){this.move(t,t=>t===this.selections.length-1?0:t+1)}generateHtml(){super.generateHtml(),this.html.classList.add(Tu.SELECTION)}generateContent(){const t=super.generateContent();return t.classList.add(Tu.SELECTIONBOX),t.removeAttribute("tabindex"),t}findSelection(t){const e=t.target;let s=null;if(e.id&&(s=this.selections.find(t=>t.html.id===e.id)),!s){const t=e.parentElement.id;s=this.selections.find(e=>e.html.id===t)}return s}move(t,e){const s=this.findSelection(t);s.focused&&s.focused.unfocus();const i=e(this.selections.indexOf(s));this.selections[i].focus()}order(){this.selections.sort($u.orderMethod.get(this.style))}toJson(){return{type:""}}}$u.chunkSize=4,$u.orderMethod=new Map([["alphabetical",(t,e)=>t.items[0].content.localeCompare(e.items[0].content)],["none",(t,e)=>1],["decreasing",(t,e)=>{const s=t.items.length,i=e.items.length;return s{const s=t.items.length,i=e.items.length;return sthis.factory.add(t,e))}get factory(){return this._factory}items(t,e,s){const i=[];for(const t of e){const e=this.parse(t,s);e&&(s.items.push(e),t.disabled&&e.disable(),t.hidden&&i.push(e))}return i.forEach(t=>t.hide()),s.items}parse(t,...e){var{type:s}=t,i=Qu(t,["type"]);const r=this.factory.get(s);return r?r(this.factory,i,...e):null}}function tp(t){return"."+(Tu[t]||t)}function ep(t,e=";"){return"{\n "+t.join(e+"\n ")+";\n}"}const sp={};sp[tp("MENU")]=ep(["position: absolute","background-color: white","color: black","width: auto","padding: 5px 0px","border: 1px solid #CCCCCC","margin: 0","cursor: default","font: menu","text-align: left","text-indent: 0","text-transform: none","line-height: normal","letter-spacing: normal","word-spacing: normal","word-wrap: normal","white-space: nowrap","float: none","z-index: 1001","border-radius: 5px","box-shadow: 0px 10px 20px #808080"]),sp[tp("MENUITEM")]=ep(["padding: 1px 2em","background: transparent"]),sp[tp("MENUARROW")]=ep(["position: absolute","right: 0.5em","padding-top: 0.25em","color: #666666","font-family: null","font-size: 0.75em"]),sp[tp("MENUACTIVE")+" "+tp("MENUARROW")]=ep(["color: white"]),sp[tp("MENUARROW")+tp("RTL")]=ep(["left: 0.5em","right: auto"]),sp[tp("MENUCHECK")]=ep(["position: absolute","left: 0.7em","font-family: null"]),sp[tp("MENUCHECK")+tp("RTL")]=ep(["right: 0.7em","left: auto"]),sp[tp("MENURADIOCHECK")]=ep(["position: absolute","left: 0.7em"]),sp[tp("MENURADIOCHECK")+tp("RTL")]=ep(["right: 0.7em","left: auto"]),sp[tp("MENUINPUTBOX")]=ep(["padding-left: 1em","right: 0.5em","color: #666666","font-family: null"]),sp[tp("MENUINPUTBOX")+tp("RTL")]=ep(["left: 0.1em"]),sp[tp("MENUCOMBOBOX")]=ep(["left: 0.1em","padding-bottom: 0.5em"]),sp[tp("MENUSLIDER")]=ep(["left: 0.1em"]),sp[tp("SLIDERVALUE")]=ep(["position: absolute","right: 0.1em","padding-top: 0.25em","color: #333333","font-size: 0.75em"]),sp[tp("MENUACTIVE")+" "+tp("SLIDERVALUE")]=ep(["color: #DDDDDD"]),sp[tp("SLIDERBAR")]=ep(["outline: none","background: #D3D3D3"]),sp[tp("MENULABEL")]=ep(["padding: 1px 2em 3px 1.33em","font-style: italic"]),sp[tp("MENURULE")]=ep(["border-top: 1px solid #DDDDDD","margin: 4px 3px"]),sp[tp("MENUDISABLED")]=ep(["color: #999"]),sp[tp("MENUACTIVE")]=ep(["background-color: #606872","color: white"]),sp[tp("MENUDISABLED")+":focus"]=ep(["background-color: #E8E8E8"]),sp[tp("MENULABEL")+":focus"]=ep(["background-color: #E8E8E8"]),sp[tp("CONTEXTMENU")+":focus"]=ep(["outline: none"]),sp[tp("CONTEXTMENU")+" "+tp("MENUITEM")+":focus"]=ep(["outline: none"]),sp[tp("SELECTIONMENU")]=ep(["position: relative","float: left","border-bottom: none","box-shadow: none ! important","border-radius: 0px !important"]),sp[tp("SELECTIONITEM")]=ep(["padding-right: 1em"]),sp[tp("SELECTION")]=ep(["right: 40%","width: 50%"]),sp[tp("SELECTIONBOX")]=ep(["padding: 0em","max-height: 20em","max-width: none","background-color: #FFFFFF"]),sp[tp("SELECTIONDIVIDER")]=ep(["clear: both","border-top: 2px solid #000000"]),sp[tp("MENU")+" "+tp("MENUCLOSE")]=ep(["top: -10px","left: -10px"]),sp["@media (prefers-color-scheme: dark) /* menu */"]=ep([tp("MENU")+" "+ep(["color: #E0E0E0","background-color: #242436","box-shadow: 0px 10px 20px #000","border: 1px solid #808080"]),tp("SLIDERVALUE")+" "+ep(["color: #D0D0D0"]),tp("MENUDISABLED")+":focus "+ep(["background-color: #383838"]),tp("MENULABEL")+":focus "+ep(["background-color: #585858"]),tp("MENURULE")+" "+ep(["border-top: 1px solid #808080"]),tp("SELECTIONDIVIDER")+" "+ep(["border-top: 2px solid #808080"])],"");const ip={};ip[tp("MENUCLOSE")]=ep(["position: absolute","cursor: pointer","display: inline-block","border: 2px solid #AAA","border-radius: 18px",'font-family: "Courier New", Courier',"font-size: 24px","color: #F0F0F0"]),ip[tp("MENUCLOSE")+" span"]=ep(["display: block","background-color: #AAA","border: 1.5px solid","border-radius: 18px","line-height: 0","padding: 8px 0 6px"]),ip[tp("MENUCLOSE")+":hover"]=ep(["color: white !important","border: 2px solid #CCC !important"]),ip[tp("MENUCLOSE")+":hover span"]=ep(["background-color: #CCC !important"]),ip[tp("MENUCLOSE")+":hover:focus"]=ep(["outline: none"]);function rp(t,e=document,s="MJX-Menu-styles"){if(e.head.querySelector("#"+s))return;const i=e.createElement("style");i.id=s;const r=[];for(const e in t)r.push(`${e} ${t[e]}`);i.textContent=r.join("\n"),e.head.appendChild(i)}class np extends Bu{constructor(){super(...arguments),this.mathItem=null,this.nofocus=!1,this.errorMsg=""}post(t,e){var s,i;if(this.mathItem){const r=null===(i=null===(s=this.mathItem)||void 0===s?void 0:s.explorers)||void 0===i?void 0:i.speech;(null==r?void 0:r.active)&&(r.restarted=r.semanticFocus()),void 0!==e&&(this.getOriginalMenu(),this.getSemanticsMenu(),this.getSpeechMenu(),this.getBrailleMenu(),this.getSvgMenu(),this.getErrorMessage(),this.dynamicSubmenus()),super.post(t,e)}}unpost(){this.posted&&super.unpost(),this.mathItem&&(this.mathItem.outputData.nofocus=this.nofocus),this.mathItem=null,this.nofocus=!1}findID(...t){let e=this,s=null;for(const i of t){if(!e)return null;for(s of e.items){if(s.id===i){e=s instanceof ku?s.submenu:null;break}e=s=null}}return s}setJax(t){this.jax=t}getOriginalMenu(){const t=this.mathItem.inputJax.name,e=this.findID("Show","Original");e.content="MathML"===t?"Original MathML":t+" Commands";this.findID("Copy","Original").content=e.content}getSemanticsMenu(){const t=this.findID("Settings","MathmlIncludes","semantics");"MathML"===this.mathItem.inputJax.name?t.disable():t.enable()}getSpeechMenu(){const t=this.mathItem.outputData.speech;this.findID("Show","Speech")[t?"enable":"disable"](),this.findID("Copy","Speech")[t?"enable":"disable"]()}getBrailleMenu(){const t=this.mathItem.outputData.braille;this.findID("Show","Braille")[t?"enable":"disable"](),this.findID("Copy","Braille")[t?"enable":"disable"]()}getSvgMenu(){const t=this.jax.SVG;this.findID("Show","SVG")[t?"enable":"disable"](),this.findID("Copy","SVG")[t?"enable":"disable"]()}getErrorMessage(){const t=this.mathItem.root.childNodes[0].childNodes;let e=!0;if(this.errorMsg="",1===t.length&&t[0].isKind("merror")){const s=t[0].attributes;this.errorMsg=s.get("data-mjx-error")||s.get("data-mjx-message")||"",e=!this.errorMsg}this.findID("Show","Error")[e?"disable":"enable"](),this.findID("Copy","Error")[e?"disable":"enable"]()}dynamicSubmenus(){for(const[t,[e,s]]of np.DynamicSubmenus){const i=this.find(t);i&&e(this,i,t=>{var e;i.submenu=t,!(null===(e=null==t?void 0:t.items)||void 0===e?void 0:e.length)||s&&!this.settings[s]?i.disable():i.enable()})}}}np.DynamicSubmenus=new Map;class op extends $u{constructor(t,e,s,i,r,n){super(t,e,i,r),this.attachMenu(n);const o=n.factory;this.selections=s.map(t=>o.get("selectionMenu")(o,t,this))}post(){const t=Array.from(Object.values(this.menu.jax)).filter(t=>!!t)[0],e=new po({title:this.title,message:"",adaptor:t.adaptor,styles:{"mjx-dialog > div":{padding:0}}});e.attach(),this.contentDiv=e.content,this.display()}display(){const t=this;if(t.order(),!this.selections.length)return;const e=[];let s=0,i=[];const r=t.getChunkSize(this.selections.length);for(let n=0;nt.html.style.height=c+"px"),i=t.combineColumn(i,h)}t._balanced&&(t.balanceColumn(e,i),s=i.reduce((t,e)=>t+e-2,20)),e.forEach(t=>t.style.width=s+"px")}}var ap,lp,cp;!function(t){t.DOMAIN="domain",t.STYLE="style",t.LOCALE="locale",t.TOPIC="topic",t.MODALITY="modality"}(ap||(ap={}));class hp{static createProp(...t){const e=dp.DEFAULT_ORDER,s={};for(let i=0,r=t.length,n=e.length;it.push(this.getProperty(e).slice())),t}toString(){const t=[];return this.order.forEach(e=>t.push(e+": "+this.getProperty(e).toString())),t.join("\n")}}class dp extends hp{static createCstr(...t){const e=dp.DEFAULT_ORDER,s={};for(let i=0,r=t.length,n=e.length;i{const s=e.indexOf(t);return-1!==s&&e.splice(s,1)})}constructor(t,e){const s={};for(const[e,i]of Object.entries(t))s[e]=[i];super(s,e),this.components=t}getComponents(){return this.components}getValue(t){return this.components[t]}getValues(){return this.order.map(t=>this.getValue(t))}allProperties(){const t=super.allProperties();for(let e,s,i=0;e=t[i],s=this.order[i];i++){const t=this.getValue(s);-1===e.indexOf(t)&&e.unshift(t)}return t}toString(){return this.getValues().join(".")}equal(t){const e=t.getAxes();if(this.order.length!==e.length)return!1;for(let s,i=0;s=e[i];i++){const e=this.getValue(s);if(!e||t.getValue(s)!==e)return!1}return!0}}dp.DEFAULT_ORDER=[ap.LOCALE,ap.MODALITY,ap.DOMAIN,ap.STYLE,ap.TOPIC],dp.BASE_LOCALE="base",dp.DEFAULT_VALUE="default",dp.DEFAULT_VALUES={[ap.LOCALE]:"en",[ap.DOMAIN]:dp.DEFAULT_VALUE,[ap.STYLE]:dp.DEFAULT_VALUE,[ap.TOPIC]:dp.DEFAULT_VALUE,[ap.MODALITY]:"speech"};class up{constructor(t){this.order=t}parse(t){const e=t.split("."),s={};if(e.length>this.order.length)throw new Error("Invalid dynamic constraint: "+s);let i=0;for(let t,r=0;t=this.order[r],e.length;r++,i++){const i=e.shift();s[t]=i}return new dp(s,this.order.slice(0,i))}}class pp{constructor(t,e=new hp(t.getProperties(),t.getOrder())){this.reference=t,this.fallback=e,this.order=this.reference.getOrder()}getReference(){return this.reference}setReference(t,e){this.reference=t,this.fallback=e||new hp(t.getProperties(),t.getOrder()),this.order=this.reference.getOrder()}match(t){const e=t.getAxes();return e.length===this.reference.getAxes().length&&e.every(e=>{const s=t.getValue(e);return s===this.reference.getValue(e)||-1!==this.fallback.getProperty(e).indexOf(s)})}compare(t,e){let s=!1;for(let i,r=0;i=this.order[r];r++){const r=t.getValue(i),n=e.getValue(i);if(!s){const t=this.reference.getValue(i);if(t===r&&t!==n)return-1;if(t===n&&t!==r)return 1;if(t===r&&t===n)continue;t!==r&&t!==n&&(s=!0)}const o=this.fallback.getProperty(i),a=o.indexOf(r),l=o.indexOf(n);if(a{var t;return"undefined"!=typeof require||"undefined"!=typeof process&&null!=(null===(t=process.versions)||void 0===t?void 0:t.node)&&"undefined"!=typeof require?require:t=>null},Ip={extRequire:t=>"undefined"!=typeof process&&"undefined"!=typeof require?Mp()(t):null,windowSupported:Lp,documentSupported:Sp,webworker:Rp,xmldom:Np,document:vp,fs:Sp||Rp?null:Mp()("fs"),url:gp.url,jsonPath:function(){if(Sp||Rp)return gp.url;if(process.env.SRE_JSON_PATH||r.g.SRE_JSON_PATH)return process.env.SRE_JSON_PATH||r.g.SRE_JSON_PATH;try{return Mp().resolve("speech-rule-engine").replace(/sre\.js$/,"")+"mathmaps"}catch(t){}try{return Mp().resolve(".").replace(/sre\.js$/,"")+"mathmaps"}catch(t){}return"undefined"!=typeof __dirname?__dirname+(__dirname.match(/lib?$/)?"/mathmaps":"/lib/mathmaps"):process.cwd()+"/lib/mathmaps"}(),xpath:Ap};function wp(t){return t.match("/$")?t:t+"/"}class kp{static getInstance(){return kp.instance=kp.instance||new kp,kp.instance}init(t){return t&&this.startDebugFile_(t),this.isActive_=!0,this.fileHandle}output(...t){this.isActive_&&this.output_(t)}generate(t){this.isActive_&&this.output_(t.apply(t,[]))}exit(t=()=>{}){this.stream_&&this.fileHandle.then(()=>{this.isActive_&&this.stream_&&(this.stream_.end("","",t),this.stream_=null)}),this.isActive_=!1}constructor(){this.isActive_=!1,this.fileHandle=Promise.resolve(),this.stream_=null}startDebugFile_(t){this.fileHandle=Ip.fs.promises.open(t,"w"),this.fileHandle=this.fileHandle.then(e=>{this.stream_=e.createWriteStream(t),this.outputFunction=function(...t){this.stream_.write(t.join(" ")),this.stream_.write("\n")}.bind(this),this.stream_.on("error",function(t){console.info("Invalid log file. Debug information sent to console."),this.outputFunction=console.info}.bind(this)),this.stream_.on("finish",function(){console.info("Finalizing debug file.")})})}output_(t){this.stream_?this.fileHandle.then(()=>this.outputFunction.apply(this.outputFunction,["Speech Rule Engine Debugger:"].concat(t))):console.info(...["Speech Rule Engine Debugger:"].concat(t))}}class Op{constructor(t={}){this.delay=!1,this.domain="clearspeak",this.style=dp.DEFAULT_VALUES[ap.STYLE],this.locale=dp.DEFAULT_VALUES[ap.LOCALE],this.subiso="",this.modality=dp.DEFAULT_VALUES[ap.MODALITY],this.speech=mp.NONE,this.markup=fp.NONE,this.mark=!0,this.automark=!1,this.character=!0,this.cleanpause=!0,this.cayleyshort=!0,this.linebreaks=!1,this.rate="100",this.walker="Table",this.structure=!1,this.aria=!1,this.tree=!1,this.strict=!1,this.pprint=!1,this.rules="",this.prune="",this.set(t)}set(t){this.ensureDomain(t);for(const[e,s]of Object.entries(t))(Op.BINARY_FEATURES.includes(e)||Op.STRING_FEATURES.includes(e))&&(this[e]=s)}json(){const t={};return[].concat(Op.STRING_FEATURES,Op.BINARY_FEATURES).forEach(e=>t[e]=this[e]),t}ensureDomain(t){if(t.modality&&"speech"!==t.modality||!t.modality&&"speech"!==this.modality)return;if(!t.domain&&!t.locale)return;if("default"===t.domain)return void(t.domain="mathspeak");const e=t.locale||this.locale,s=t.domain||this.domain;-1===Dp.indexOf(e)||"mathspeak"===s?"en"!==e?"mathspeak"!==s&&"clearspeak"!==s&&(t.domain="mathspeak"):-1===Pp.indexOf(s)&&(t.domain="mathspeak"):t.domain="mathspeak"}}Op.BINARY_FEATURES=["automark","mark","character","cleanpause","strict","structure","aria","pprint","cayleyshort","linebreaks","tree"],Op.STRING_FEATURES=["markup","style","domain","speech","walker","locale","delay","modality","rate","rules","subiso","prune"];const Dp=["ca","da","es"],Pp=["chromevox","clearspeak","mathspeak","emacspeak","html"];class Bp extends Error{constructor(t=""){super(),this.message=t,this.name="SRE Error"}}class Fp{set defaultLocale(t){this._defaultLocale=gp.ensureLocale(t,this._defaultLocale)}get defaultLocale(){return this._defaultLocale}static getInstance(){return Fp.instance=Fp.instance||new Fp,Fp.instance}static defaultEvaluator(t,e){return t}static evaluateNode(t){return Fp.nodeEvaluator(t)}getRate(){const t=parseInt(this.options.rate,10);return isNaN(t)?100:t}setDynamicCstr(t){if(this.defaultLocale&&(dp.DEFAULT_VALUES[ap.LOCALE]=this.defaultLocale),t){const e=Object.keys(t);for(let s=0;s[ \f\n\r\t\v\u200b]+<").trim()}(t),i=!!s.match(/&(?!lt|gt|amp|quot|apos)\w+;/g);if(!s)throw new Bp("Empty input!");try{const t=e.parseFromString(s,i?"text/html":"text/xml");return Fp.getInstance().mode===lp.HTTP?(_p.currentDocument=t,i?t.body.childNodes[0]:t.documentElement):t.documentElement}catch(t){throw new Bp("Illegal input: "+t.message)}}function Gp(t,e){t.parentNode&&(t.parentNode.insertBefore(e,t),t.parentNode.removeChild(t))}function Jp(t){return Ip.document.createElement(t)}function Kp(t){let e="",s=/(>)(<)(\/*)/g,i=0,r=(t=t.replace(s,"$1\r\n$2$3")).split("\r\n");for(s=/(\.)*(<)(\/*)/g,r=r.map(t=>t.replace(s,"$1\r\n$2$3").split("\r\n")).reduce((t,e)=>t.concat(e),[]);r.length;){let t=r.shift();if(!t)continue;let s=0;if(t.match(/^<\w[^>/]*>[^>]+$/)){const e=$p(t,r[0]);e[0]?e[1]?(t+=r.shift().slice(0,-e[1].length),e[1].trim()&&r.unshift(e[1])):t+=r.shift():s=1}else if(t.match(/^<\/\w/))0!==i&&(i-=1);else if(t.match(/^<\w[^>]*[^/]>.*$/))s=1;else if(t.match(/^<\w[^>]*\/>.+$/)){const e=t.indexOf(">")+1,s=t.slice(e);s.trim()&&r.unshift(),t=t.slice(0,e)+s}else s=0;e+=new Array(i+1).join(" ")+t+"\r\n",i+=s}return e}function $p(t,e){if(!e)return[!1,""];const s=t.match(/^<([^> ]+).*>/),i=e.match(/^<\/([^>]+)>(.*)/);return s&&i&&s[1]===i[1]?[!0,i[2]]:[!1,""]}function Yp(t,e){return t.querySelectorAll?Vp(t.querySelectorAll(`[${e}]`)):function(t,e){let s;try{s=zp(t,e,_p.result.ORDERED_NODE_ITERATOR_TYPE)}catch(t){return[]}const i=[];for(let t=s.iterateNext();t;t=s.iterateNext())i.push(t);return i}(`.//*[@${e}]`,t)}function Qp(t){return t.tagName.toUpperCase()}function Zp(t){return(new Ip.xmldom.XMLSerializer).serializeToString(t)}!function(t){t[t.ELEMENT_NODE=1]="ELEMENT_NODE",t[t.ATTRIBUTE_NODE=2]="ATTRIBUTE_NODE",t[t.TEXT_NODE=3]="TEXT_NODE",t[t.CDATA_SECTION_NODE=4]="CDATA_SECTION_NODE",t[t.ENTITY_REFERENCE_NODE=5]="ENTITY_REFERENCE_NODE",t[t.ENTITY_NODE=6]="ENTITY_NODE",t[t.PROCESSING_INSTRUCTION_NODE=7]="PROCESSING_INSTRUCTION_NODE",t[t.COMMENT_NODE=8]="COMMENT_NODE",t[t.DOCUMENT_NODE=9]="DOCUMENT_NODE",t[t.DOCUMENT_TYPE_NODE=10]="DOCUMENT_TYPE_NODE",t[t.DOCUMENT_FRAGMENT_NODE=11]="DOCUMENT_FRAGMENT_NODE",t[t.NOTATION_NODE=12]="NOTATION_NODE"}(qp||(qp={}));class tm{constructor(t,e,s){this.domain=t,this.name=e,this.func=s,this.active=!1}annotate(t){t.childNodes.forEach(this.annotate.bind(this)),t.contentNodes.forEach(this.annotate.bind(this)),t.addAnnotation(this.domain,this.func(t))}}class em{constructor(t,e,s,i={}){this.domain=t,this.name=e,this.func=s,this.def=i,this.active=!1}visit(t,e){let s=this.func(t,e);t.addAnnotation(this.domain,s[0]);for(let e,i=0;e=t.childNodes[i];i++)s=this.visit(e,s[1]);for(let e,i=0;e=t.contentNodes[i];i++)s=this.visit(e,s[1]);return s}}const sm=new Map,im=new Map;function rm(t){const e=t.domain+":"+t.name;t instanceof tm?sm.set(e,t):im.set(e,t)}function nm(t,e){const s=t+":"+e,i=sm.get(s)||im.get(s);i&&(i.active=!0)}var om,am,lm;function cm(t){const e=t.toString(16).toUpperCase();return e.length>3?e:("000"+e).slice(-4)}function hm([t,e],s){const i=parseInt(t,16),r=parseInt(e,16),n=[];for(let t=i;t<=r;t++){let e=cm(t);!1!==s[e]&&(e=s[e]||e,n.push(e))}return n}function dm(t,e={}){return hm(t,e).map(t=>String.fromCodePoint(parseInt(t,16)))}!function(t){t.BOLD="bold",t.BOLDFRAKTUR="bold-fraktur",t.BOLDITALIC="bold-italic",t.BOLDSCRIPT="bold-script",t.DOUBLESTRUCK="double-struck",t.DOUBLESTRUCKITALIC="double-struck-italic",t.FULLWIDTH="fullwidth",t.FRAKTUR="fraktur",t.ITALIC="italic",t.MONOSPACE="monospace",t.NORMAL="normal",t.SCRIPT="script",t.SANSSERIF="sans-serif",t.SANSSERIFITALIC="sans-serif-italic",t.SANSSERIFBOLD="sans-serif-bold",t.SANSSERIFBOLDITALIC="sans-serif-bold-italic"}(om||(om={})),function(t){t.SUPER="super",t.SUB="sub",t.CIRCLED="circled",t.PARENTHESIZED="parenthesized",t.PERIOD="period",t.NEGATIVECIRCLED="negative-circled",t.DOUBLECIRCLED="double-circled",t.CIRCLEDSANSSERIF="circled-sans-serif",t.NEGATIVECIRCLEDSANSSERIF="negative-circled-sans-serif",t.COMMA="comma",t.SQUARED="squared",t.NEGATIVESQUARED="negative-squared"}(am||(am={})),function(t){t.LATINCAP="latinCap",t.LATINSMALL="latinSmall",t.GREEKCAP="greekCap",t.GREEKSMALL="greekSmall",t.DIGIT="digit"}(lm||(lm={}));const um=[{interval:["1D400","1D419"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.BOLD},{interval:["1D41A","1D433"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.BOLD},{interval:["1D56C","1D585"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.BOLDFRAKTUR},{interval:["1D586","1D59F"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.BOLDFRAKTUR},{interval:["1D468","1D481"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.BOLDITALIC},{interval:["1D482","1D49B"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.BOLDITALIC},{interval:["1D4D0","1D4E9"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.BOLDSCRIPT},{interval:["1D4EA","1D503"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.BOLDSCRIPT},{interval:["1D538","1D551"],base:lm.LATINCAP,subst:{"1D53A":"2102","1D53F":"210D","1D545":"2115","1D547":"2119","1D548":"211A","1D549":"211D","1D551":"2124"},capital:!0,category:"Lu",font:om.DOUBLESTRUCK},{interval:["1D552","1D56B"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.DOUBLESTRUCK},{interval:["1D504","1D51D"],base:lm.LATINCAP,subst:{"1D506":"212D","1D50B":"210C","1D50C":"2111","1D515":"211C","1D51D":"2128"},capital:!0,category:"Lu",font:om.FRAKTUR},{interval:["1D51E","1D537"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.FRAKTUR},{interval:["FF21","FF3A"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.FULLWIDTH},{interval:["FF41","FF5A"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.FULLWIDTH},{interval:["1D434","1D44D"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.ITALIC},{interval:["1D44E","1D467"],base:lm.LATINSMALL,subst:{"1D455":"210E"},capital:!1,category:"Ll",font:om.ITALIC},{interval:["1D670","1D689"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.MONOSPACE},{interval:["1D68A","1D6A3"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.MONOSPACE},{interval:["0041","005A"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.NORMAL},{interval:["0061","007A"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.NORMAL},{interval:["1D49C","1D4B5"],base:lm.LATINCAP,subst:{"1D49D":"212C","1D4A0":"2130","1D4A1":"2131","1D4A3":"210B","1D4A4":"2110","1D4A7":"2112","1D4A8":"2133","1D4AD":"211B"},capital:!0,category:"Lu",font:om.SCRIPT},{interval:["1D4B6","1D4CF"],base:lm.LATINSMALL,subst:{"1D4BA":"212F","1D4BC":"210A","1D4C4":"2134"},capital:!1,category:"Ll",font:om.SCRIPT},{interval:["1D5A0","1D5B9"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.SANSSERIF},{interval:["1D5BA","1D5D3"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.SANSSERIF},{interval:["1D608","1D621"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.SANSSERIFITALIC},{interval:["1D622","1D63B"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.SANSSERIFITALIC},{interval:["1D5D4","1D5ED"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.SANSSERIFBOLD},{interval:["1D5EE","1D607"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.SANSSERIFBOLD},{interval:["1D63C","1D655"],base:lm.LATINCAP,subst:{},capital:!0,category:"Lu",font:om.SANSSERIFBOLDITALIC},{interval:["1D656","1D66F"],base:lm.LATINSMALL,subst:{},capital:!1,category:"Ll",font:om.SANSSERIFBOLDITALIC},{interval:["0391","03A9"],base:lm.GREEKCAP,subst:{"03A2":"03F4"},capital:!0,category:"Lu",font:om.NORMAL},{interval:["03B0","03D0"],base:lm.GREEKSMALL,subst:{"03B0":"2207","03CA":"2202","03CB":"03F5","03CC":"03D1","03CD":"03F0","03CE":"03D5","03CF":"03F1","03D0":"03D6"},capital:!1,category:"Ll",font:om.NORMAL},{interval:["1D6A8","1D6C0"],base:lm.GREEKCAP,subst:{},capital:!0,category:"Lu",font:om.BOLD},{interval:["1D6C1","1D6E1"],base:lm.GREEKSMALL,subst:{},capital:!1,category:"Ll",font:om.BOLD},{interval:["1D6E2","1D6FA"],base:lm.GREEKCAP,subst:{},capital:!0,category:"Lu",font:om.ITALIC},{interval:["1D6FB","1D71B"],base:lm.GREEKSMALL,subst:{},capital:!1,category:"Ll",font:om.ITALIC},{interval:["1D71C","1D734"],base:lm.GREEKCAP,subst:{},capital:!0,category:"Lu",font:om.BOLDITALIC},{interval:["1D735","1D755"],base:lm.GREEKSMALL,subst:{},capital:!1,category:"Ll",font:om.BOLDITALIC},{interval:["1D756","1D76E"],base:lm.GREEKCAP,subst:{},capital:!0,category:"Lu",font:om.SANSSERIFBOLD},{interval:["1D76F","1D78F"],base:lm.GREEKSMALL,subst:{},capital:!1,category:"Ll",font:om.SANSSERIFBOLD},{interval:["1D790","1D7A8"],base:lm.GREEKCAP,subst:{},capital:!0,category:"Lu",font:om.SANSSERIFBOLDITALIC},{interval:["1D7A9","1D7C9"],base:lm.GREEKSMALL,subst:{},capital:!1,category:"Ll",font:om.SANSSERIFBOLDITALIC},{interval:["0030","0039"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.NORMAL},{interval:["2070","2079"],base:lm.DIGIT,subst:{2071:"00B9",2072:"00B2",2073:"00B3"},offset:0,category:"No",font:am.SUPER},{interval:["2080","2089"],base:lm.DIGIT,subst:{},offset:0,category:"No",font:am.SUB},{interval:["245F","2473"],base:lm.DIGIT,subst:{"245F":"24EA"},offset:0,category:"No",font:am.CIRCLED},{interval:["3251","325F"],base:lm.DIGIT,subst:{},offset:21,category:"No",font:am.CIRCLED},{interval:["32B1","32BF"],base:lm.DIGIT,subst:{},offset:36,category:"No",font:am.CIRCLED},{interval:["2474","2487"],base:lm.DIGIT,subst:{},offset:1,category:"No",font:am.PARENTHESIZED},{interval:["2487","249B"],base:lm.DIGIT,subst:{2487:"1F100"},offset:0,category:"No",font:am.PERIOD},{interval:["2775","277F"],base:lm.DIGIT,subst:{2775:"24FF"},offset:0,category:"No",font:am.NEGATIVECIRCLED},{interval:["24EB","24F4"],base:lm.DIGIT,subst:{},offset:11,category:"No",font:am.NEGATIVECIRCLED},{interval:["24F5","24FE"],base:lm.DIGIT,subst:{},offset:1,category:"No",font:am.DOUBLECIRCLED},{interval:["277F","2789"],base:lm.DIGIT,subst:{"277F":"1F10B"},offset:0,category:"No",font:am.CIRCLEDSANSSERIF},{interval:["2789","2793"],base:lm.DIGIT,subst:{2789:"1F10C"},offset:0,category:"No",font:am.NEGATIVECIRCLEDSANSSERIF},{interval:["FF10","FF19"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.FULLWIDTH},{interval:["1D7CE","1D7D7"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.BOLD},{interval:["1D7D8","1D7E1"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.DOUBLESTRUCK},{interval:["1D7E2","1D7EB"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.SANSSERIF},{interval:["1D7EC","1D7F5"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.SANSSERIFBOLD},{interval:["1D7F6","1D7FF"],base:lm.DIGIT,subst:{},offset:0,category:"Nd",font:om.MONOSPACE},{interval:["1F101","1F10A"],base:lm.DIGIT,subst:{},offset:0,category:"No",font:am.COMMA},{interval:["24B6","24CF"],base:lm.LATINCAP,subst:{},capital:!0,category:"So",font:am.CIRCLED},{interval:["24D0","24E9"],base:lm.LATINSMALL,subst:{},capital:!1,category:"So",font:am.CIRCLED},{interval:["1F110","1F129"],base:lm.LATINCAP,subst:{},capital:!0,category:"So",font:am.PARENTHESIZED},{interval:["249C","24B5"],base:lm.LATINSMALL,subst:{},capital:!1,category:"So",font:am.PARENTHESIZED},{interval:["1F130","1F149"],base:lm.LATINCAP,subst:{},capital:!0,category:"So",font:am.SQUARED},{interval:["1F170","1F189"],base:lm.LATINCAP,subst:{},capital:!0,category:"So",font:am.NEGATIVESQUARED},{interval:["1F150","1F169"],base:lm.LATINCAP,subst:{},capital:!0,category:"So",font:am.NEGATIVECIRCLED}],pm=new Map;function mm(t,e){return t+e.split("-").map(t=>t[0].toUpperCase()+t.slice(1)).join("")}for(const t of um){const e=mm(t.base,t.font),s=dm(t.interval,t.subst);let i=pm.get(e);i?i.unicode=i.unicode.concat(s):(i=t,i.unicode=s,pm.set(e,i))}var fm;!function(t){t.PUNCTUATION="punctuation",t.FENCE="fence",t.NUMBER="number",t.IDENTIFIER="identifier",t.TEXT="text",t.OPERATOR="operator",t.RELATION="relation",t.LARGEOP="largeop",t.FUNCTION="function",t.ACCENT="accent",t.FENCED="fenced",t.FRACTION="fraction",t.PUNCTUATED="punctuated",t.RELSEQ="relseq",t.MULTIREL="multirel",t.INFIXOP="infixop",t.PREFIXOP="prefixop",t.POSTFIXOP="postfixop",t.APPL="appl",t.INTEGRAL="integral",t.BIGOP="bigop",t.SQRT="sqrt",t.ROOT="root",t.LIMUPPER="limupper",t.LIMLOWER="limlower",t.LIMBOTH="limboth",t.SUBSCRIPT="subscript",t.SUPERSCRIPT="superscript",t.UNDERSCORE="underscore",t.OVERSCORE="overscore",t.TENSOR="tensor",t.TABLE="table",t.MULTILINE="multiline",t.MATRIX="matrix",t.VECTOR="vector",t.CASES="cases",t.ROW="row",t.LINE="line",t.CELL="cell",t.ENCLOSE="enclose",t.INFERENCE="inference",t.RULELABEL="rulelabel",t.CONCLUSION="conclusion",t.PREMISES="premises",t.UNKNOWN="unknown",t.EMPTY="empty"}(fm||(fm={}));const gm=Object.assign({},fm);var bm;!function(t){t.COMMA="comma",t.SEMICOLON="semicolon",t.ELLIPSIS="ellipsis",t.FULLSTOP="fullstop",t.QUESTION="question",t.EXCLAMATION="exclamation",t.QUOTES="quotes",t.DASH="dash",t.TILDE="tilde",t.PRIME="prime",t.DEGREE="degree",t.VBAR="vbar",t.COLON="colon",t.OPENFENCE="openfence",t.CLOSEFENCE="closefence",t.APPLICATION="application",t.DUMMY="dummy",t.UNIT="unit",t.LABEL="label",t.OPEN="open",t.CLOSE="close",t.TOP="top",t.BOTTOM="bottom",t.NEUTRAL="neutral",t.METRIC="metric",t.LATINLETTER="latinletter",t.GREEKLETTER="greekletter",t.OTHERLETTER="otherletter",t.NUMBERSET="numbersetletter",t.INTEGER="integer",t.FLOAT="float",t.OTHERNUMBER="othernumber",t.INFTY="infty",t.MIXED="mixed",t.MULTIACCENT="multiaccent",t.OVERACCENT="overaccent",t.UNDERACCENT="underaccent",t.UNDEROVER="underover",t.SUBSUP="subsup",t.LEFTSUB="leftsub",t.LEFTSUPER="leftsuper",t.RIGHTSUB="rightsub",t.RIGHTSUPER="rightsuper",t.LEFTRIGHT="leftright",t.ABOVEBELOW="abovebelow",t.INTERVAL="interval",t.SETEMPTY="set empty",t.SETEXT="set extended",t.SETSINGLE="set singleton",t.SETCOLLECT="set collection",t.STRING="string",t.SPACE="space",t.ANNOTATION="annotation",t.TEXT="text",t.SEQUENCE="sequence",t.ENDPUNCT="endpunct",t.STARTPUNCT="startpunct",t.NEGATIVE="negative",t.POSITIVE="positive",t.NEGATION="negation",t.MULTIOP="multiop",t.PREFIXOP="prefix operator",t.POSTFIXOP="postfix operator",t.LIMFUNC="limit function",t.INFIXFUNC="infix function",t.PREFIXFUNC="prefix function",t.POSTFIXFUNC="postfix function",t.SIMPLEFUNC="simple function",t.COMPFUNC="composed function",t.SUM="sum",t.INTEGRAL="integral",t.GEOMETRY="geometry",t.BOX="box",t.BLOCK="block",t.ADDITION="addition",t.MULTIPLICATION="multiplication",t.SUBTRACTION="subtraction",t.IMPLICIT="implicit",t.DIVISION="division",t.VULGAR="vulgar",t.EQUALITY="equality",t.INEQUALITY="inequality",t.ARROW="arrow",t.ELEMENT="element",t.NONELEMENT="nonelement",t.REELEMENT="reelement",t.RENONELEMENT="renonelement",t.SET="set",t.DETERMINANT="determinant",t.ROWVECTOR="rowvector",t.BINOMIAL="binomial",t.SQUAREMATRIX="squarematrix",t.CYCLE="cycle",t.MULTILINE="multiline",t.MATRIX="matrix",t.VECTOR="vector",t.CASES="cases",t.TABLE="table",t.CAYLEY="cayley",t.PROOF="proof",t.LEFT="left",t.RIGHT="right",t.UP="up",t.DOWN="down",t.FINAL="final",t.SINGLE="single",t.HYP="hyp",t.AXIOM="axiom",t.LOGIC="logic",t.UNKNOWN="unknown",t.MGLYPH="mglyph"}(bm||(bm={}));const Em=Object.assign({},bm);var xm;!function(t){t.CALIGRAPHIC="caligraphic",t.CALIGRAPHICBOLD="caligraphic-bold",t.OLDSTYLE="oldstyle",t.OLDSTYLEBOLD="oldstyle-bold",t.UNKNOWN="unknown"}(xm||(xm={}));const ym=Object.assign(Object.assign(Object.assign({},om),xm),am);var Nm;!function(t){t.ALLLETTERS="allLetters",t.D="d",t.BAR="bar",t.TILDE="tilde",t.CURLY="curly",t.PAREN="paren",t.BRACKET="bracket",t.FLOOR="floor",t.CEIL="ceil"}(Nm||(Nm={}));const vm=Object.assign(Object.assign({},lm),Nm);var Tm=function(t,e){var s={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(s[i]=t[i]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(i=Object.getOwnPropertySymbols(t);rparseInt(t,16))):e.push(parseInt(s,16));return e}(e);for(const e of r)i[e]||(t.set(String.fromCodePoint(e),String.fromCodePoint(e+s)),i[e]=!0,i[e+s]=!0)}const Im=["0028","0029","207D","207E","208D","208E","2768","2769","276A","276B","27EE","27EF","FE59","FE5A","FF08","FF09"],wm=["005B","005D","2045","2046","298B","298C","298D","298E","298F","2990","FF3B","FF3D"],km=["007B","007D","2774","2775","FE5B","FE5C","FF5B","FF5D"],Om=["2308","2309","2E22","2E23","300C","300E","FF62"],Dm=["230A","230B","2E24","2E25","300D","300F","FF63"];function Pm(t,e){for(const s of t){const t=String.fromCodePoint(parseInt(s,16));Sm.Secondary.set(t,e),Sm.FencesSecondary.set(t,e)}}const Bm=["cos","cot","csc","sec","sin","tan","arccos","arccot","arccsc","arcsec","arcsin","arctan"].concat(["cosh","coth","csch","sech","sinh","tanh","arcosh","arcoth","arcsch","arsech","arsinh","artanh"],["deg","det","dim","hom","ker","Tr"],["log","ln","lg","exp","gcd","lcm","arg","im","re","Pr"]);function Fm(t,e,s,i,r,n=[],o={},a={}){const l=pm.get(mm(t,i));l&&(l.unicode.forEach(t=>{Sm.Meaning.set(t,{type:e,role:s,font:r}),n.forEach(e=>Sm.Secondary.set(t,e))}),function(t,e){for(const[s,i]of Object.entries(e)){const e=t[s];void 0!==e&&Sm.Meaning.set(e,i)}}(l.unicode,o),function(t,e){for(const[s,i]of Object.entries(e)){const e=t[s];void 0!==e&&Sm.Secondary.set(e,i)}}(l.unicode,a))}[{set:["23","26","40","5c","a1","a7","b6","bf","2017",["2022","2025"],"2027","203b","203c",["2041","2043"],["2047","2049"],["204b","204d"],"2050","2055","2056",["2058","205e"],"2234","2235","fe45","fe46","fe5f","fe60","fe68","fe6b","ff03","ff06","ff0f","ff20","ff3c"],type:gm.PUNCTUATION,role:Em.UNKNOWN},{set:["22","ab","bb","2dd",["2018","201f"],"2039","203a",["301d","301f"],"fe10","ff02","ff07"],type:gm.PUNCTUATION,role:Em.QUOTES},{set:["3b","204f","2a1f","2a3e","fe14","fe54","ff1b"],type:gm.PUNCTUATION,role:Em.SEMICOLON},{set:["3f","203d","fe16","fe56","ff1f"],type:gm.PUNCTUATION,role:Em.QUESTION},{set:["21","fe15","fe57","ff01"],type:gm.PUNCTUATION,role:Em.EXCLAMATION},{set:["5e","60","a8","aa","b4","ba","2c7",["2d8","2da"],"2040","207a","207d","207e","ff3e","ff40"],type:gm.PUNCTUATION,role:Em.OVERACCENT},{set:["b8","2db","2038","203f","2054","208a","208d","208e"],type:gm.PUNCTUATION,role:Em.UNDERACCENT},{set:["3a","2982","fe13","fe30","fe55","ff1a"],type:gm.PUNCTUATION,role:Em.COLON},{set:["2c","2063","fe50","ff0c"],type:gm.PUNCTUATION,role:Em.COMMA},{set:["2026",["22ee","22f1"],"fe19"],type:gm.PUNCTUATION,role:Em.ELLIPSIS},{set:["2e","fe52","ff0e"],type:gm.PUNCTUATION,role:Em.FULLSTOP},{set:["2d","207b","208b","2212","2796","fe63","ff0d"],type:gm.OPERATOR,role:Em.DASH,secondary:vm.BAR},{set:["5f","af",["2010","2015"],"203e","208b",["fe49","fe4f"],"fe58","ff3f","ffe3"],type:gm.PUNCTUATION,role:Em.DASH,secondary:vm.BAR},{set:["7e","2dc","2f7","303","330","334","2053","223c","223d","301c","ff5e"],type:gm.OPERATOR,role:Em.TILDE,secondary:vm.TILDE},{set:["27","2b9","2ba",["2032","2037"],"2057"],type:gm.PUNCTUATION,role:Em.PRIME},{set:["b0"],type:gm.PUNCTUATION,role:Em.DEGREE},{set:["2b","b1","2064","2213","2214","2228","222a",["228c","228e"],"2294","2295","229d","229e","22bb","22bd","22c4","22ce","22d3","2304","271b","271c","2795","27cf","29fa","29fb","29fe",["2a22","2a28"],"2a2d","2a2e","2a39","2a42","2a45","2a46","2a48","2a4a","2a4c","2a4f","2a50","2a52","2a54","2a56","2a57","2a59","2a5b","2a5d",["2a61","2a63"],"2adc","2add","fe62","ff0b"],type:gm.OPERATOR,role:Em.ADDITION},{set:["2a","b7","d7","2020","2021","204e","2051","2062",["2217","2219"],"2227","2229","2240","2293","2297",["2299","229b"],"22a0","22a1","22b9","22bc",["22c5","22cc"],"22cf","22d2","22d4","2303","2305","2306","25cb","2715","2716","27ce","27d1",["29d1","29d7"],"29e2","2a1d",["2a2f","2a37"],["2a3b","2a3d"],"2a40","2a43","2a44","2a47","2a49","2a4b","2a4d","2a4e","2a51","2a53","2a55","2a58","2a5a","2a5c",["2a5e","2a60"],"2ada","2adb","fe61","ff0a"],type:gm.OPERATOR,role:Em.MULTIPLICATION},{set:["2d","af","2010","2011","2052","207b","208b","2212","2216","2238","2242","2296","229f","2796","29ff",["2a29","2a2c"],"2a3a","2a41","fe63","ff0d"],type:gm.OPERATOR,role:Em.SUBTRACTION},{set:["2f","f7","2044","2215","2298","2797","27cc","29bc",["29f5","29f9"],"2a38"],type:gm.OPERATOR,role:Em.DIVISION},{set:["25","2030","2031","ff05","fe6a"],type:gm.OPERATOR,role:Em.POSTFIXOP},{set:["ac","2200","2201","2203","2204","2206",["221a","221c"],"2310","ffe2"],type:gm.OPERATOR,role:Em.PREFIXOP},{set:["2320","2321","23aa","23ae","23af","23b2","23b3","23b6","23b7"],type:gm.OPERATOR,role:Em.PREFIXOP},{set:["1d7ca","1d7cb"],type:gm.OPERATOR,role:Em.PREFIXOP,font:ym.BOLD},{set:["3d","7e","207c","208c","221d","2237",["223a","223f"],"2243","2245","2248",["224a","224e"],["2251","225f"],"2261","2263","229c","22cd","22d5","29e4","29e6","2a66","2a67",["2a6a","2a6c"],["2a6c","2a78"],"fe66","ff1d"],type:gm.RELATION,role:Em.EQUALITY},{set:["3c","3e","2241","2242","2244","2246","2247","2249","224f","2250","2260","2262",["2264","2281"],"22b0","22b1",["22d6","22e1"],["22e6","22e9"],["2976","2978"],"29c0","29c1","29e1","29e3","29e5",["2a79","2abc"],["2af7","2afa"],"fe64","fe65","ff1c","ff1e"],type:gm.RELATION,role:Em.INEQUALITY},{set:[["2282","228b"],["228f","2292"],["22b2","22b8"],"22d0","22d1",["22e2","22e5"],["22ea","22ed"],"27c3","27c4",["27c7","27c9"],["27d5","27d7"],"27dc",["2979","297b"],"29df",["2abd","2ad8"]],type:gm.RELATION,role:Em.SET},{set:["2236",["27e0","27e5"],"292b","292c",["29b5","29bb"],"29be","29bf",["29c2","29d0"]],type:gm.RELATION,role:Em.UNKNOWN},{set:["2205",["29b0","29b4"]],type:gm.IDENTIFIER,role:Em.SETEMPTY},{set:["1ab2","221e",["29dc","29de"]],type:gm.IDENTIFIER,role:Em.INFTY},{set:["22a2","22a3",["22a6","22af"],"27da","27db","27dd","27de","2ade",["2ae2","2ae6"],"2aec","2aed"],type:gm.RELATION,role:Em.LOGIC},{set:["22a4","22a5","22ba","27d8","27d9","27df","2adf","2ae0",["2ae7","2aeb"],"2af1"],type:gm.IDENTIFIER,role:Em.LOGIC},{set:[["2190","21ff"],"2301","2324","238b","2794",["2798","27af"],["27b1","27be"],["27f0","27ff"],["2900","292a"],["292d","2975"],["297c","297f"],["2b00","2b11"],["2b30","2b4c"],["ffe9","ffec"]],type:gm.RELATION,role:Em.ARROW},{set:["2208","220a",["22f2","22f9"],"22ff","27d2","2ad9"],type:gm.OPERATOR,role:Em.ELEMENT},{set:["2209"],type:gm.OPERATOR,role:Em.NONELEMENT},{set:["220b","220d",["22fa","22fe"]],type:gm.OPERATOR,role:Em.REELEMENT},{set:["220c"],type:gm.OPERATOR,role:Em.RENONELEMENT},{set:[["220f","2211"],["22c0","22c3"],["2a00","2a0b"],"2a3f","2afc","2aff"],type:gm.LARGEOP,role:Em.SUM},{set:["2140"],type:gm.LARGEOP,role:Em.SUM,font:ym.DOUBLESTRUCK},{set:[["222b","2233"],["2a0c","2a17"],["2a17","2a1c"]],type:gm.LARGEOP,role:Em.INTEGRAL},{set:[["2500","257F"]],type:gm.RELATION,role:Em.BOX},{set:[["2580","259F"]],type:gm.IDENTIFIER,role:Em.BLOCK},{set:[["25A0","25FF"],["2B12","2B2F"],["2B50","2B59"]],type:gm.RELATION,role:Em.GEOMETRY},{set:["220e","2300","2302","2311","29bd","29e0",["29e8","29f3"],"2a1e","2afe","ffed","ffee"],type:gm.OPERATOR,role:Em.GEOMETRY},{set:[["221f","2222"],"22be","22bf",["2312","2314"],"237c","27c0",["299b","29af"]],type:gm.OPERATOR,role:Em.GEOMETRY},{set:["24",["a2","a5"],"b5","2123",["2125","2127"],"212a","212b","fe69","ff04","ffe0","ffe1","ffe5","ffe6"],type:gm.IDENTIFIER,role:Em.UNKNOWN},{set:["a9","ae","210f","2114","2116","2117",["211e","2122"],"212e","2132",["2139","213b"],["2141","2144"],"214d","214e",["1f12a","1f12c"],"1f18a"],type:gm.IDENTIFIER,role:Em.OTHERLETTER},{set:["2224","2226","2239","2307","27b0","27bf","27c1","27c2","27ca","27cb","27cd","27d0","27d3","27d4","2981","2999","299a","29e7","29f4","2a20","2a21","2a64","2a65","2a68","2a69","2ae1",["2aee","2af0"],"2af2","2af3","2af5","2af6","2afb","2afd"],type:gm.OPERATOR,role:Em.UNKNOWN},{set:["2605","2606","26aa","26ab",["2720","274d"]],type:gm.OPERATOR,role:Em.UNKNOWN},{set:[["2145","2149"]],type:gm.IDENTIFIER,role:Em.LATINLETTER,font:ym.DOUBLESTRUCKITALIC,secondary:vm.ALLLETTERS},{set:[["213c","213f"]],type:gm.IDENTIFIER,role:Em.GREEKLETTER,font:ym.DOUBLESTRUCK,secondary:vm.ALLLETTERS},{set:["3d0","3d7","3f6",["1d26","1d2a"],"1d5e","1d60",["1d66","1d6a"]],type:gm.IDENTIFIER,role:Em.GREEKLETTER,font:ym.NORMAL,secondary:vm.ALLLETTERS},{set:[["2135","2138"]],type:gm.IDENTIFIER,role:Em.OTHERLETTER,font:ym.NORMAL,secondary:vm.ALLLETTERS},{set:["131","237"],type:gm.IDENTIFIER,role:Em.LATINLETTER,font:ym.NORMAL},{set:["1d6a4","1d6a5"],type:gm.IDENTIFIER,role:Em.LATINLETTER,font:ym.ITALIC},{set:["2113","2118"],type:gm.IDENTIFIER,role:Em.LATINLETTER,font:ym.SCRIPT},{set:[["c0","d6"],["d8","f6"],["f8","1bf"],["1c4","2af"],["1d00","1d25"],["1d6b","1d9a"],["1e00","1ef9"],["363","36f"],["1dd3","1de6"],["1d62","1d65"],"1dca","2071","207f",["2090","209c"],"2c7c"],type:gm.IDENTIFIER,role:Em.LATINLETTER,font:ym.NORMAL},{set:[["00bc","00be"],["2150","215f"],"2189"],type:gm.NUMBER,role:Em.FLOAT},{set:["23E8",["3248","324f"]],type:gm.NUMBER,role:Em.INTEGER},{set:[["214A","214C"],"2705","2713","2714","2717","2718"],type:gm.IDENTIFIER,role:Em.UNKNOWN},{set:["20","a0","ad",["2000","200f"],["2028","202f"],["205f","2060"],"206a","206b","206e","206f","feff",["fff9","fffb"]],type:gm.TEXT,role:Em.SPACE},{set:["7c","a6","2223","23b8","23b9","23d0","2758",["fe31","fe34"],"ff5c","ffe4","ffe8"],type:gm.FENCE,role:Em.NEUTRAL},{set:["2016","2225","2980","2af4"],type:gm.FENCE,role:Em.METRIC}].forEach(t=>{var{set:e}=t,s=Tm(t,["set"]);return Rm(function(t){let e=[];for(const s of t)Array.isArray(s)?e=e.concat(dm(s)):e.push(String.fromCodePoint(parseInt(s,16)));return e}(e),s)}),Mm(Sm.FencesVert,["23b4",["23dc","23e1"],["fe35","fe44"],"fe47"]),Mm(Sm.FencesHoriz,["28","2045","207D","208D",["2308","230f"],["231c","231f"],"2329","23b0",["2768","2775"],"27c5",["27e6","27ef"],["2983","2998"],["29d8","29db"],"29fc",["2e22","2e29"],["3008","3011"],["3014","301b"],"fd3e","fe17",["fe59","fe5e"],"ff08","ff5f","ff62"]),Mm(Sm.FencesHoriz,["5b","7b","ff3b","ff5b"],2),Mm(Sm.FencesHoriz,[["239b","23a6"]],3),Mm(Sm.FencesHoriz,[["23a7","23a9"]],4),Rm([...Sm.FencesHoriz.keys()],{type:gm.FENCE,role:Em.OPEN}),Rm([...Sm.FencesHoriz.values()],{type:gm.FENCE,role:Em.CLOSE}),Rm([...Sm.FencesVert.keys()],{type:gm.FENCE,role:Em.TOP}),Rm([...Sm.FencesVert.values()],{type:gm.FENCE,role:Em.BOTTOM}),Pm(Im,vm.PAREN),Pm(km,vm.CURLY),Pm(wm,vm.BRACKET),Pm(Om,vm.CEIL),Pm(Dm,vm.FLOOR),function(){for(const[t,e]of Object.entries(ym)){const s=!!am[t]?ym.UNKNOWN:e===ym.FULLWIDTH?ym.NORMAL:e;Fm(lm.LATINCAP,gm.IDENTIFIER,Em.LATINLETTER,e,s,[vm.ALLLETTERS]),Fm(lm.LATINSMALL,gm.IDENTIFIER,Em.LATINLETTER,e,s,[vm.ALLLETTERS],{},{3:vm.D}),Fm(lm.GREEKCAP,gm.IDENTIFIER,Em.GREEKLETTER,e,s,[vm.ALLLETTERS]),Fm(lm.GREEKSMALL,gm.IDENTIFIER,Em.GREEKLETTER,e,s,[vm.ALLLETTERS],{0:{type:gm.OPERATOR,role:Em.PREFIXOP,font:s},26:{type:gm.OPERATOR,role:Em.PREFIXOP,font:s}}),Fm(lm.DIGIT,gm.NUMBER,Em.INTEGER,e,s)}}(),Rm(["inf","lim","liminf","limsup","max","min","sup","injlim","projlim"],{type:gm.FUNCTION,role:Em.LIMFUNC}),Rm(Bm,{type:gm.FUNCTION,role:Em.PREFIXFUNC}),Rm(["mod","rem"],{type:gm.OPERATOR,role:Em.PREFIXFUNC});const jm=[];function _m(t,e){for(let s,i=0;s=jm[i];i++){const i=s.compare(t,e);if(0!==i)return i}return 0}function Um(t){if(t.length<=1)return t;const e=t.slice();!function(t){t.sort(_m)}(e);const s=[];let i;do{i=e.pop(),s.push(i)}while(i&&e.length&&0===_m(e[e.length-1],i));return s}function Hm(t,e){return t.match(/^.+:.+$/)||!e?t:t+":"+e}new class{constructor(t,e=null){this.comparator=t,this.type=e,function(t){jm.push(t)}(this)}compare(t,e){return this.type&&this.type===t.type&&this.type===e.type?this.comparator(t,e):0}}(function(t,e){return t.role===Em.SIMPLEFUNC?1:e.role===Em.SIMPLEFUNC?-1:0},gm.IDENTIFIER);class Wm extends Map{set(t,e){return super.set(Hm(t,e.font),e),this}setNode(t){this.set(t.textContent,t.meaning())}get(t,e=null){return super.get(Hm(t,e))}getNode(t){return this.get(t.textContent,t.font)}}class zm extends Map{add(t,e){const s=this.get(t);s?s.push(e):super.set(t,[e])}get(t,e=null){return super.get(Hm(t,e))}getNode(t){return this.get(t.textContent,t.font)}minimize(){for(const[t,e]of this)1===e.length&&this.delete(t)}isMultiValued(){for(const t of this.values())if(t.length>1)return!0;return!1}}class qm extends zm{add(t,e){super.add(Hm(t,e.font),e)}addNode(t){this.add(t.textContent,t)}toString(){const t=[];for(const[e,s]of this){const i=Array(e.length+3).join(" "),r=s.map(t=>t.toString()).join("\n"+i);t.push(e+": "+r)}return t.join("\n")}collateMeaning(){const t=new Vm;for(const[e,s]of this)t.set(e,s.map(t=>t.meaning()));return t}}class Vm extends zm{add(t,e){const s=this.get(t,e.font);s&&s.find(function(t){return i=e,(s=t).type===i.type&&s.role===i.role&&s.font===i.font;var s,i})||super.add(Hm(t,e.font),e)}addNode(t){this.add(t.textContent,t.meaning())}toString(){const t=[];for(const[e,s]of this){const i=Array(e.length+3).join(" "),r=s.map(t=>`{type: ${t.type}, role: ${t.role}, font: ${t.font}}`).join("\n"+i);t.push(e+": "+r)}return t.join("\n")}reduce(){for(const[t,e]of this)1!==e.length&&this.set(t,Um(e))}default(){const t=new Wm;for(const[e,s]of this)1===s.length&&t.set(e,s[0]);return t}newDefault(){const t=this.default();this.reduce();const e=this.default();return t.size!==e.size?e:null}}var Xm;!function(t){t.ANNOTATION="ANNOTATION",t.ANNOTATIONXML="ANNOTATION-XML",t.MACTION="MACTION",t.MALIGNGROUP="MALIGNGROUP",t.MALIGNMARK="MALIGNMARK",t.MATH="MATH",t.MENCLOSE="MENCLOSE",t.MERROR="MERROR",t.MFENCED="MFENCED",t.MFRAC="MFRAC",t.MGLYPH="MGLYPH",t.MI="MI",t.MLABELEDTR="MLABELEDTR",t.MMULTISCRIPTS="MMULTISCRIPTS",t.MN="MN",t.MO="MO",t.MOVER="MOVER",t.MPADDED="MPADDED",t.MPHANTOM="MPHANTOM",t.MPRESCRIPTS="MPRESCRIPTS",t.MROOT="MROOT",t.MROW="MROW",t.MS="MS",t.MSPACE="MSPACE",t.MSQRT="MSQRT",t.MSTYLE="MSTYLE",t.MSUB="MSUB",t.MSUBSUP="MSUBSUP",t.MSUP="MSUP",t.MTABLE="MTABLE",t.MTD="MTD",t.MTEXT="MTEXT",t.MTR="MTR",t.MUNDER="MUNDER",t.MUNDEROVER="MUNDEROVER",t.NONE="NONE",t.SEMANTICS="SEMANTICS"}(Xm||(Xm={}));const Gm=Object.values(Xm),Jm=[Xm.MO,Xm.MI,Xm.MN,Xm.MTEXT,Xm.MS,Xm.MSPACE],Km=[Xm.MERROR,Xm.MPHANTOM,Xm.MALIGNGROUP,Xm.MALIGNMARK,Xm.MPRESCRIPTS,Xm.ANNOTATION,Xm.ANNOTATIONXML],$m=[Xm.MATH,Xm.MROW,Xm.MPADDED,Xm.MACTION,Xm.NONE,Xm.MSTYLE,Xm.SEMANTICS],Ym=[Xm.MFRAC,Xm.MSUP,Xm.MSUB,Xm.MSUBSUP,Xm.MOVER,Xm.MUNDER,Xm.MUNDEROVER,Xm.MROOT,Xm.MMULTISCRIPTS],Qm=[Xm.MROOT,Xm.MSQRT],Zm=["aria-label","exact-speech","alt"];function tf(t){return!!t&&Qp(t)===Xm.MATH}function ef(t){return!!t&&(Km.includes(Qp(t))||!Gm.includes(Qp(t)))}function sf(t){return!!t&&$m.includes(Qp(t))}function rf(t){return!!t&&Qp(t)===Xm.MGLYPH&&!function(t){return!!t&&Jm.includes(Qp(t))}(t.parentNode)}function nf(t){return Ym.includes(Qp(t))}const of=1e4;function af(t,e){let s=0;return()=>{if(++s>t)throw new Bp("function"==typeof e?e():e)}}function lf(t,e){if(!t)return!1;const s=af(of,"isDescendant cycle");let i=t.parentNode;for(;i;){if(s(),i===e)return!0;i=i.parentNode}return!1}function cf(t){const e=[];for(let s,i=0;s=t[i];i++){if(s.nodeType!==qp.ELEMENT_NODE)continue;const t=Qp(s);Km.includes(t)||($m.includes(t)&&0===s.childNodes.length||e.push(s))}return e}function hf(t,e){var s;if(null===(s=e.attributes)||void 0===s?void 0:s.length){const s=e.attributes;for(let e=s.length-1;e>=0;e--){const i=s[e].name;i.match(/^ext/)&&(t.attributes[i]=s[e].value,t.nobreaking=!0),Zm.includes(i)&&(t.attributes["ext-speech"]=s[e].value,t.nobreaking=!0),"href"===i&&(t.attributes.href=s[e].value,t.nobreaking=!0),"data-latex"!==i.toLowerCase()&&"latex"!==i.toLowerCase()||(t.attributes.latex=s[e].value),i.match(/texclass$/)&&(t.attributes.texclass=s[e].value),"color"!==i&&"mathcolor"!==i||(t.attributes.color=s[e].value)}}}function df(t){return t&&t.embellished&&t.childNodes.length>0?df(t.childNodes[0]):t}function uf(t,e,s){s&&t.reverse();const i=[];for(let r,n=0;r=t[n];n++){if(e(r))return s?{head:t.slice(n+1).reverse(),div:r,tail:i.reverse()}:{head:i,div:r,tail:t.slice(n+1)};i.push(r)}return s?{head:[],div:null,tail:i.reverse()}:{head:i,div:null,tail:[]}}function pf(t,e){let s=t;const i=[],r=[];let n=null;do{n=uf(s,e),r.push(n.head),i.push(n.div),s=n.tail}while(n.div);return i.pop(),{rel:i,comp:r}}function mf(t,e){if(t.mathmlTree)return;const s=new Set;if(e.forEach(t=>{var e;return s.add((null===(e=t.mathmlTree)||void 0===e?void 0:e.parentElement)||null)}),1===s.size&&!s.has(null)){const i=[...s][0];return sf(i)&&i.childNodes.length===e.length?void(t.mathmlTree=i):void 0}if(s.has(null)&&s.size<=2&&(s.delete(null),e.forEach(t=>{if(!t.mathmlTree){const e=new Set(t.mathml);t.mathml.forEach(t=>{t.parentElement&&!function(t,e){let s=t.parentElement;for(;s;){if(e.has(s))return!0;s=s.parentElement}return!1}(t,e)&&s.add(t.parentElement)})}})),1===s.size&&!s.has(null)){const e=[...s][0];if(sf(e)&&Vp(e.childNodes).every(e=>t.mathml.includes(e)))return void(t.mathmlTree=e)}}function ff(t){if(!t||Qp(t)!==Xm.MSPACE)return!1;const e=t.getAttribute("width"),s=e&&e.match(/[a-z]*$/);if(!s)return!1;const i=s[0],r=parseFloat(e.slice(0,s.index)),n={cm:.4,pc:.5,em:.5,ex:1,in:.15,pt:5,mm:5}[i];return!(!n||isNaN(r)||re.parent=t),"CONTENT"===Qp(s)?t.contentNodes=e:t.childNodes=e}}constructor(t){this.id=t,this.mathml=[],this.parent=null,this.type=gm.UNKNOWN,this.role=Em.UNKNOWN,this.font=ym.UNKNOWN,this.embellished=null,this.fencePointer="",this.childNodes=[],this.textContent="",this.mathmlTree=null,this.contentNodes=[],this.annotation={},this.attributes={},this.nobreaking=!1,this.noupdate=!1}querySelectorAll(t){let e=[];for(let s,i=0;s=this.childNodes[i];i++)e=e.concat(s.querySelectorAll(t));for(let s,i=0;s=this.contentNodes[i];i++)e=e.concat(s.querySelectorAll(t));return t(this)&&e.unshift(this),e}xml(t,e){const s=function(s,i){const r=i.map(function(s){return s.xml(t,e)}),n=t.createElementNS("",s);for(let t,e=0;t=r[e];e++)n.appendChild(t);return n},i=t.createElementNS("",this.type);return e||this.xmlAttributes(i),i.textContent=this.textContent,this.contentNodes.length>0&&i.appendChild(s(gf.CONTENT,this.contentNodes)),this.childNodes.length>0&&i.appendChild(s(gf.CHILDREN,this.childNodes)),i}toString(t=!1){const e=Xp("");return Zp(this.xml(e.ownerDocument,t))}allAttributes(){const t=[];return t.push([gf.ROLE,this.role]),this.font!==ym.UNKNOWN&&t.push([gf.FONT,this.font]),Object.keys(this.annotation).length&&t.push([gf.ANNOTATION,this.annotationXml()]),this.embellished&&t.push([gf.EMBELLISHED,this.embellished]),this.fencePointer&&t.push([gf.FENCEPOINTER,this.fencePointer]),t.push([gf.ID,this.id.toString()]),t}annotationXml(){const t=[];for(const[e,s]of Object.entries(this.annotation))s.forEach(s=>t.push(e+":"+s));return t.join(";")}attributesXml(){const t=[];for(const[e,s]of Object.entries(this.attributes))t.push(e+":"+bf.escapeValue(s));return t.join(";")}toJson(){const t={};t[gf.TYPE]=this.type;const e=this.allAttributes();for(let s,i=0;s=e[i];i++)t[s[0]]=s[1].toString();return this.textContent&&(t[gf.TEXT]=this.textContent),this.childNodes.length&&(t[gf.CHILDREN]=this.childNodes.map(function(t){return t.toJson()})),this.contentNodes.length&&(t[gf.CONTENT]=this.contentNodes.map(function(t){return t.toJson()})),t}updateContent(t,e){const s=e?t.replace(/^[ \f\n\r\t\v\u200b]*/,"").replace(/[ \f\n\r\t\v\u200b]*$/,""):t.trim();if(t=t&&!s?t:s,this.textContent===t)return;const i=Sm.Meaning.get(t.replace(/\s/g," "));this.textContent=t,this.role=i.role,this.type=i.type,this.font=i.font}addMathmlNodes(t){for(let e,s=0;e=t[s];s++)-1===this.mathml.indexOf(e)&&this.mathml.push(e)}appendChild(t){this.childNodes.push(t),this.addMathmlNodes(t.mathml),t.parent=this}replaceChild(t,e){const s=this.childNodes.indexOf(t);if(-1===s)return;t.parent=null,e.parent=this,this.childNodes[s]=e;const i=t.mathml.filter(function(t){return-1===e.mathml.indexOf(t)}),r=e.mathml.filter(function(e){return-1===t.mathml.indexOf(e)});this.removeMathmlNodes(i),this.addMathmlNodes(r)}appendContentNode(t){t&&(this.contentNodes.push(t),this.addMathmlNodes(t.mathml),t.parent=this)}removeContentNode(t){if(t){const e=this.contentNodes.indexOf(t);-1!==e&&this.contentNodes.slice(e,1)}}equals(t){if(!t)return!1;if(this.type!==t.type||this.role!==t.role||this.textContent!==t.textContent||this.childNodes.length!==t.childNodes.length||this.contentNodes.length!==t.contentNodes.length)return!1;for(let e,s,i=0;e=this.childNodes[i],s=t.childNodes[i];i++)if(!e.equals(s))return!1;for(let e,s,i=0;e=this.contentNodes[i],s=t.contentNodes[i];i++)if(!e.equals(s))return!1;return!0}displayTree(){console.info(this.displayTree_(0))}addAnnotation(t,e){e&&this.addAnnotation_(t,e)}getAnnotation(t){const e=this.annotation[t];return e||[]}hasAnnotation(t,e){const s=this.annotation[t];return!!s&&-1!==s.indexOf(e)}parseAnnotation(t){const e=t.split(";");for(let t=0,s=e.length;t0&&vf(e[e.length-1],Em.OPENFENCE)}function Uf(t){return t.childNodes.every(function(t){return t.childNodes.length<=1})}function Hf(t){return yf(t,gm.LINE)&&t.contentNodes.length&&vf(t.contentNodes[0],Em.LABEL)}function Wf(t){return yf(t,gm.LARGEOP)||yf(t,gm.LIMBOTH)||yf(t,gm.LIMLOWER)||yf(t,gm.LIMUPPER)||yf(t,gm.FUNCTION)&&vf(t,Em.LIMFUNC)||(yf(t,gm.OVERSCORE)||yf(t,gm.UNDERSCORE))&&Wf(t.childNodes[0])}function zf(t,e,s){return 1===e.length&&(t[s].type===gm.PUNCTUATION||t[s].embellished===gm.PUNCTUATION)&&t[s]===e[0]}function qf(t){return yf(t,gm.IDENTIFIER)&&vf(t,Em.SIMPLEFUNC)}const Vf=[gm.PUNCTUATION,gm.PUNCTUATED,gm.RELSEQ,gm.MULTIREL,gm.TABLE,gm.MULTILINE,gm.CASES,gm.INFERENCE],Xf=[gm.LIMUPPER,gm.LIMLOWER,gm.LIMBOTH,gm.SUBSCRIPT,gm.SUPERSCRIPT,gm.UNDERSCORE,gm.OVERSCORE,gm.TENSOR];function Gf(t){const e=t.type;return-1===Vf.indexOf(e)&&(e!==gm.INFIXOP||t.role===Em.IMPLICIT)&&(e===gm.FENCED?t.role!==Em.LEFTRIGHT||Gf(t.childNodes[0]):-1===Xf.indexOf(e)||Gf(t.childNodes[0]))}function Jf(t){return function(t){return t.type===gm.NUMBER&&(t.role===Em.INTEGER||t.role===Em.FLOAT)}(t)||t.role===Em.VULGAR||t.role===Em.MIXED}function Kf(t){const e=t.childNodes;return t.role===Em.UNIT&&(!e.length||e[0].role===Em.UNIT)}function $f(t){const e=t.childNodes;return t.type===gm.INFIXOP&&(t.role===Em.MULTIPLICATION||t.role===Em.IMPLICIT)&&e.length&&(Kf(e[0])||Jf(e[0]))&&t.childNodes.slice(1).every(Kf)}function Yf(t){return t.type===gm.INFIXOP&&(t.role===Em.IMPLICIT||t.role===Em.UNIT&&!!t.contentNodes.length&&t.contentNodes[0].textContent===Cm.invisibleTimes)}function Qf(t){return t.type===gm.INFIXOP&&t.role===Em.IMPLICIT}function Zf(t){return t.role===Em.NEUTRAL||t.role===Em.METRIC}function tg(t,e){return Zf(t)&&Zf(e)&&df(t).textContent===df(e).textContent}function eg(t){return!!Zf(t)&&(!t.embellished||t.type!==gm.SUPERSCRIPT&&t.type!==gm.SUBSCRIPT&&(t.type!==gm.TENSOR||t.childNodes[3].type===gm.EMPTY&&t.childNodes[4].type===gm.EMPTY))}function sg(t){return!!Zf(t)&&(!t.embellished||(t.type!==gm.TENSOR||t.childNodes[1].type===gm.EMPTY&&t.childNodes[2].type===gm.EMPTY))}function ig(t){return[Em.ELEMENT,Em.NONELEMENT,Em.REELEMENT,Em.RENONELEMENT].includes(t.role)}const rg={factory:null,options:new Op,updateFactory:function(t){rg.factory=t},heuristics:new Map,flags:{combine_juxtaposition:!0,convert_juxtaposition:!0,multioperator:!0},blacklist:{},add:function(t){const e=t.name;rg.heuristics.set(e,t),rg.flags[e]||(rg.flags[e]=!1)},run:function(t,e,s){const i=rg.heuristics.get(t);return i&&!rg.blacklist[t]&&(rg.flags[t]||i.applicable(e))?i.apply(e):s?s(e):e}};class ng{static getInstance(){return ng.instance=ng.instance||new ng,ng.instance}static tableToMultiline(t){if(!Uf(t))return rg.run("rewrite_subcases",t,ng.classifyTable);t.type=gm.MULTILINE;for(let e,s=0;e=t.childNodes[s];s++)ng.rowToLine_(e,Em.MULTILINE);return 1===t.childNodes.length&&!Hf(t.childNodes[0])&&jf(t.childNodes[0].childNodes[0])&&ng.tableToMatrixOrVector_(ng.rewriteFencedLine_(t)),ng.classifyMultiline(t)}static number(t){t.type!==gm.UNKNOWN&&t.type!==gm.IDENTIFIER||(t.type=gm.NUMBER),ng.meaningFromContent(t,ng.numberRole_),ng.exprFont_(t)}static classifyMultiline(t){return ng.binomialForm_(t),ng.classifyMultiline_(t),t}static classifyMultiline_(t){let e=0;const s=t.childNodes.length;let i;for(;e=s)return;const r=i.childNodes[0].role;r!==Em.UNKNOWN&&t.childNodes.every(function(t){const e=t.childNodes[0];return!e||e.role===r&&(yf(e,gm.RELATION)||yf(e,gm.RELSEQ))})&&(t.role=r)}static classifyTable(t){const e=ng.computeColumns_(t);return ng.classifyByColumns_(t,e,Em.EQUALITY)||ng.classifyByColumns_(t,e,Em.INEQUALITY,[Em.EQUALITY])||ng.classifyByColumns_(t,e,Em.ARROW)||ng.detectCaleyTable(t),t}static detectCaleyTable(t){if(!t.mathmlTree)return!1;const e=t.mathmlTree,s=e.getAttribute("columnlines"),i=e.getAttribute("rowlines");return!(!s||!i)&&(!(!ng.cayleySpacing(s)||!ng.cayleySpacing(i))&&(t.role=Em.CAYLEY,!0))}static cayleySpacing(t){const e=t.split(" ");return("solid"===e[0]||"dashed"===e[0])&&e.slice(1).every(t=>"none"===t)}static proof(t,e,s){const i=ng.separateSemantics(e);return ng.getInstance().proof(t,i,s)}static findSemantics(t,e,s){const i=null==s?null:s,r=ng.getSemantics(t);return!!r&&(!!r[e]&&(null==i||r[e]===i))}static getSemantics(t){const e=t.getAttribute("semantics");return e?ng.separateSemantics(e):null}static removePrefix(t){const[,...e]=t.split("_");return e.join("_")}static separateSemantics(t){const e={};return t.split(";").forEach(function(t){const[s,i]=t.split(":");e[ng.removePrefix(s)]=i}),e}static matchSpaces_(t,e){for(let s,i=0;s=e[i];i++){const e=t[i].mathmlTree,r=t[i+1].mathmlTree;if(!e||!r)continue;const n=e.nextSibling;if(!n||n===r)continue;const o=ng.getSpacer_(n);o&&o!==r&&(s.addMathmlNodes([o]),s.mathmlTree=o,s.role=Em.SPACE)}}static getSpacer_(t){if(Qp(t)===Xm.MSPACE)return t;for(;sf(t)&&1===t.childNodes.length;)if(Qp(t=t.childNodes[0])===Xm.MSPACE)return t;return null}static fenceToPunct_(t){const e=ng.FENCE_TO_PUNCT_[t.role];if(e){for(;t.embellished;)t.embellished=gm.PUNCTUATION,vf(t,Em.SUBSUP)||vf(t,Em.UNDEROVER)||(t.role=e),t=t.childNodes[0];t.type=gm.PUNCTUATION,t.role=e}}static classifyFunction_(t,e){if(t.type===gm.APPL||t.type===gm.BIGOP||t.type===gm.INTEGRAL)return"";if(e[0]&&e[0].textContent===Cm.functionApplication){ng.getInstance().funcAppls[t.id]=e.shift();let s=Em.SIMPLEFUNC;return rg.run("simple2prefix",t),t.role!==Em.PREFIXFUNC&&t.role!==Em.LIMFUNC||(s=t.role),ng.propagateFunctionRole_(t,s),"prefix"}const s=ng.CLASSIFY_FUNCTION_[t.role];return s||((i=t).type===gm.IDENTIFIER||i.role===Em.LATINLETTER||i.role===Em.GREEKLETTER||i.role===Em.OTHERLETTER?"simple":"");var i}static propagateFunctionRole_(t,e){if(t){if(t.type===gm.INFIXOP)return;vf(t,Em.SUBSUP)||vf(t,Em.UNDEROVER)||(t.role=e),ng.propagateFunctionRole_(t.childNodes[0],e)}}static getFunctionOp_(t,e){if(e(t))return t;for(let s,i=0;s=t.childNodes[i];i++){const t=ng.getFunctionOp_(s,e);if(t)return t}return null}static tableToMatrixOrVector_(t){const e=t.childNodes[0];yf(e,gm.MULTILINE)?ng.tableToVector_(t):ng.tableToMatrix_(t),t.contentNodes.forEach(e.appendContentNode.bind(e));for(let t,s=0;t=e.childNodes[s];s++)ng.assignRoleToRow_(t,ng.getComponentRoles_(e));return e.parent=null,e}static tableToVector_(t){const e=t.childNodes[0];e.type=gm.VECTOR,1!==e.childNodes.length?ng.binomialForm_(e):ng.tableToSquare_(t)}static binomialForm_(t){vf(t,Em.UNKNOWN)&&(2===t.childNodes.length&&(t.role=Em.BINOMIAL,t.childNodes[0].role=Em.BINOMIAL,t.childNodes[1].role=Em.BINOMIAL))}static tableToMatrix_(t){const e=t.childNodes[0];e.type=gm.MATRIX,e.childNodes&&e.childNodes.length>0&&e.childNodes[0].childNodes&&e.childNodes.length===e.childNodes[0].childNodes.length?ng.tableToSquare_(t):e.childNodes&&1===e.childNodes.length&&(e.role=Em.ROWVECTOR)}static tableToSquare_(t){const e=t.childNodes[0];vf(e,Em.UNKNOWN)&&(Zf(t)?e.role=Em.DETERMINANT:e.role=Em.SQUAREMATRIX)}static getComponentRoles_(t){const e=t.role;return e&&e!==Em.UNKNOWN?e:t.type.toLowerCase()||Em.UNKNOWN}static tableToCases_(t,e){for(let e,s=0;e=t.childNodes[s];s++)ng.assignRoleToRow_(e,Em.CASES);return t.type=gm.CASES,t.appendContentNode(e),Uf(t)&&ng.binomialForm_(t),t}static rewriteFencedLine_(t){const e=t.childNodes[0],s=t.childNodes[0].childNodes[0],i=t.childNodes[0].childNodes[0].childNodes[0];return s.parent=t.parent,t.parent=s,i.parent=e,s.childNodes=[t],e.childNodes=[i],s}static rowToLine_(t,e){const s=e||Em.UNKNOWN;yf(t,gm.ROW)&&(t.type=gm.LINE,t.role=s,1===t.childNodes.length&&yf(t.childNodes[0],gm.CELL)&&(t.childNodes=t.childNodes[0].childNodes,t.childNodes.forEach(function(e){e.parent=t})))}static assignRoleToRow_(t,e){yf(t,gm.LINE)?t.role=e:yf(t,gm.ROW)&&(t.role=e,t.childNodes.forEach(function(t){yf(t,gm.CELL)&&(t.role=e)}))}static nextSeparatorFunction_(t){let e;if(t){if(t.match(/^\s+$/))return null;e=t.replace(/\s/g,"").split("").filter(function(t){return t})}else e=[","];return function(){return e.length>1?e.shift():e[0]}}static meaningFromContent(t,e){const s=[...t.textContent].filter(t=>t.match(/[^\s]/)),i=s.map(t=>Sm.Meaning.get(t));e(t,s,i)}static numberRole_(t,e,s){if(t.role===Em.UNKNOWN)return s.every(function(t){return t.type===gm.NUMBER&&t.role===Em.INTEGER||t.type===gm.PUNCTUATION&&t.role===Em.COMMA})?(t.role=Em.INTEGER,void("0"===e[0]&&t.addAnnotation("general","basenumber"))):void(s.every(function(t){return t.type===gm.NUMBER&&t.role===Em.INTEGER||t.type===gm.PUNCTUATION})?t.role=Em.FLOAT:t.role=Em.OTHERNUMBER)}static exprFont_(t){t.font===ym.UNKNOWN&&ng.compSemantics(t,"font",ym)}static compSemantics(t,e,s){const i=[...t.textContent].map(t=>Sm.Meaning.get(t)).reduce(function(t,i){return t&&i[e]&&i[e]!==s.UNKNOWN&&i[e]!==t?t===s.UNKNOWN?i[e]:null:t},s.UNKNOWN);i&&(t[e]=i)}static purgeFences_(t){const e=t.rel,s=t.comp,i=[],r=[];for(;e.length>0;){const t=e.shift();let n=s.shift();Df(t)?(i.push(t),r.push(n)):(ng.fenceToPunct_(t),n.push(t),n=n.concat(s.shift()),s.unshift(n))}return r.push(s.shift()),{rel:i,comp:r}}static rewriteFencedNode_(t){const e=t.contentNodes[0],s=t.contentNodes[1];let i=ng.rewriteFence_(t,e);return t.contentNodes[0]=i.fence,i=ng.rewriteFence_(i.node,s),t.contentNodes[1]=i.fence,t.contentNodes[0].parent=t,t.contentNodes[1].parent=t,function(t){const e=Sm.FencesSecondary.get(t.contentNodes[0].textContent),s=Sm.FencesSecondary.get(t.contentNodes[1].textContent);e===s&&t.addAnnotation("fences",e)}(t),i.node.parent=null,i.node}static rewriteFence_(t,e){if(!e.embellished)return{node:t,fence:e};const s=e.childNodes[0],i=ng.rewriteFence_(t,s);return yf(e,gm.SUPERSCRIPT)||yf(e,gm.SUBSCRIPT)||yf(e,gm.TENSOR)?(vf(e,Em.SUBSUP)||(e.role=t.role),s!==i.node&&(e.replaceChild(s,i.node),s.parent=t),ng.propagateFencePointer_(e,s),{node:e,fence:i.fence}):(e.replaceChild(s,i.fence),e.mathmlTree&&-1===e.mathml.indexOf(e.mathmlTree)&&e.addMathmlNodes([e.mathmlTree]),{node:i.node,fence:e})}static propagateFencePointer_(t,e){t.fencePointer=e.fencePointer||e.id.toString(),t.embellished=null}static classifyByColumns_(t,e,s,i=[]){const r=[s].concat(i);return!!(3===e.length&&ng.testColumns_(e,1,t=>ng.isPureRelation_(t,r))||2===e.length&&(ng.testColumns_(e,1,t=>ng.isEndRelation_(t,r)||ng.isPureRelation_(t,r))||ng.testColumns_(e,0,t=>ng.isEndRelation_(t,r,!0)||ng.isPureRelation_(t,r))))&&(t.role=s,!0)}static isEndRelation_(t,e,s){const i=s?t.childNodes.length-1:0;return yf(t,gm.RELSEQ)&&e.some(e=>vf(t,e))&&yf(t.childNodes[i],gm.EMPTY)}static isPureRelation_(t,e){return yf(t,gm.RELATION)&&e.some(e=>vf(t,e))}static computeColumns_(t){const e=[];for(let s,i=0;s=t.childNodes[i];i++)for(let t,i=0;t=s.childNodes[i];i++){e[i]?e[i].push(t):e[i]=[t]}return e}static testColumns_(t,e,s){const i=t[e];return!!i&&(i.some(function(t){return t.childNodes.length&&s(t.childNodes[0])})&&i.every(function(t){return!t.childNodes.length||s(t.childNodes[0])}))}setNodeFactory(t){ng.getInstance().factory_=t,rg.updateFactory(ng.getInstance().factory_)}getNodeFactory(){return ng.getInstance().factory_}identifierNode(t,e,s){if("MathML-Unit"!==s||(i=t,[Em.DEGREE].includes(i.role)||[].includes(i.type))){if(!e&&1===t.textContent.length&&(t.role===Em.INTEGER||t.role===Em.LATINLETTER||t.role===Em.GREEKLETTER)&&t.font===ym.NORMAL)return t.font=ym.ITALIC,rg.run("simpleNamedFunction",t)}else t.type=gm.IDENTIFIER,t.role=Em.UNIT;var i;return t.type===gm.UNKNOWN&&(t.type=gm.IDENTIFIER),ng.exprFont_(t),rg.run("simpleNamedFunction",t)}implicitNode(t){if(t=ng.getInstance().getMixedNumbers_(t),t=ng.getInstance().combineUnits_(t),1===(t=ng.getInstance().combineScripts_(t)).length)return t[0];const e=ng.getInstance().implicitNode_(t);return rg.run("combine_juxtaposition",e)}text(t,e){if(ng.exprFont_(t),t.type=gm.TEXT,e===Xm.ANNOTATIONXML)return t.role=Em.ANNOTATION,t;if(e===Xm.MS)return t.role=Em.STRING,t;if(e===Xm.MSPACE||t.textContent.match(/^\s*$/))return t.role=Em.SPACE,t;if(/\s/.exec(t.textContent))return t.role=Em.TEXT,t;const s=[...t.textContent];if(1!==s.length)return t.role=Em.UNKNOWN,t;const i=Sm.Meaning.get(s[0]);return i.type===gm.UNKNOWN||i.type===gm.IDENTIFIER||(t.type=i.type,t.role=i.role,t.font=i.font,t.addAnnotation("general","text")),t}row(t,e=!1){return 0===(t=t.filter(function(t){return!yf(t,gm.EMPTY)||t.hasAnnotation("empty","MFENCED")||e})).length?ng.getInstance().factory_.makeEmptyNode():(t=ng.getInstance().getFencesInRow_(t),t=ng.getInstance().tablesInRow(t),t=ng.getInstance().getPunctuationInRow_(t),t=ng.getInstance().getTextInRow_(t),t=ng.getInstance().getFunctionsInRow_(t),ng.getInstance().relationsInRow_(t))}limitNode(t,e){if(!e.length)return ng.getInstance().factory_.makeEmptyNode();let s=e[0];const{length:i}=ng.MML_TO_LIMIT_[t];if(e=e.slice(0,i+1),[t,e]=ng.getInstance().cleanLimitNode(t,e,i),!e[1])return s;let{type:r,length:n}=ng.MML_TO_LIMIT_[t];if(1===n&&e[1].role===Em.DEGREE)return ng.getInstance().row([e[0],e[1]]);if(rg.run("op_with_limits",e),Wf(s)){if(1===n&&Tf(e[1])||2===n&&Tf(e[1])&&Tf(e[2])){const i=ng.MML_TO_BOUNDS_[t];return ng.getInstance().accentNode_(s,e,i.type,i.length,i.accent)}if(2===n){if(Tf(e[1]))return s=ng.getInstance().accentNode_(s,[s,e[1]],{MSUBSUP:gm.SUBSCRIPT,MUNDEROVER:gm.UNDERSCORE}[t],1,!0),e[2]?ng.getInstance().makeLimitNode_(s,[s,e[2]],null,gm.LIMUPPER):s;if(e[2]&&Tf(e[2]))return s=ng.getInstance().accentNode_(s,[s,e[2]],{MSUBSUP:gm.SUPERSCRIPT,MUNDEROVER:gm.OVERSCORE}[t],1,!0),ng.getInstance().makeLimitNode_(s,[s,e[1]],null,gm.LIMLOWER);e[n]||(r=gm.LIMLOWER)}return ng.getInstance().makeLimitNode_(s,e,null,r)}const o=ng.MML_TO_BOUNDS_[t];return ng.getInstance().accentNode_(s,e,o.type,o.length,o.accent)}cleanLimitNode(t,e,s){const i=t=>(t=>!t||yf(t,gm.EMPTY))(t)||(t=>t&&yf(t,gm.TEXT)&&vf(t,Em.SPACE))(t);if(1===s)return i(e[1])?(e[0].noupdate=!0,[t,[ag([t],e[0])]]):[t,e];const r=e[1],n=e[2];return i(r)&&i(n)?(e[0].noupdate=!0,[t,[ag([t],e[0])]]):i(r)?[t===Xm.MSUBSUP?Xm.MSUP:Xm.MOVER,[e[0],n]]:i(n)?[t===Xm.MSUBSUP?Xm.MSUB:Xm.MUNDER,[e[0],r]]:[t,e]}tablesInRow(t){let e=pf(t,Ff),s=[];for(let t,i=0;t=e.rel[i];i++)s=s.concat(e.comp.shift()),s.push(ng.tableToMatrixOrVector_(t));s=s.concat(e.comp.shift()),e=pf(s,Bf),s=[];for(let t,i=0;t=e.rel[i];i++){const i=e.comp.shift();_f(0,i)&&ng.tableToCases_(t,i.pop()),s=s.concat(i),(s.length||e.comp[0].length)&&(t=ng.rewriteTrivialTable(t)),s.push(t)}return s.concat(e.comp.shift())}mfenced(t,e,s,i){if(s&&i.length>0){const t=ng.nextSeparatorFunction_(s),e=[i.shift()];i.forEach(s=>{e.push(ng.getInstance().factory_.makeContentNode(t())),e.push(s)}),i=e}return t&&e?ng.getInstance().horizontalFencedNode_(ng.getInstance().factory_.makeContentNode(t),ng.getInstance().factory_.makeContentNode(e),i):(t&&i.unshift(ng.getInstance().factory_.makeContentNode(t)),e&&i.push(ng.getInstance().factory_.makeContentNode(e)),ng.getInstance().row(i))}fractionLikeNode(t,e,s,i){let r;if(!i&&function(t){if(!t)return!1;if(["negativeveryverythinmathspace","negativeverythinmathspace","negativethinmathspace","negativemediummathspace","negativethickmathspace","negativeverythickmathspace","negativeveryverythickmathspace"].includes(t))return!0;const e=t.match(/[0-9.]+/);return!!e&&0===parseFloat(e[0])}(s)){const s=ng.getInstance().factory_.makeBranchNode(gm.LINE,[t],[]),i=ng.getInstance().factory_.makeBranchNode(gm.LINE,[e],[]);return r=ng.getInstance().factory_.makeBranchNode(gm.MULTILINE,[s,i],[]),ng.classifyMultiline(r)}return r=ng.getInstance().fractionNode_(t,e),i&&r.addAnnotation("general","bevelled"),r}tensor(t,e,s,i,r){const n=ng.getInstance().factory_.makeBranchNode(gm.TENSOR,[t,ng.getInstance().scriptNode_(e,Em.LEFTSUB),ng.getInstance().scriptNode_(s,Em.LEFTSUPER),ng.getInstance().scriptNode_(i,Em.RIGHTSUB),ng.getInstance().scriptNode_(r,Em.RIGHTSUPER)],[]);return n.role=t.role,n.embellished=Mf(t),n}pseudoTensor(t,e,s){const i=t=>!yf(t,gm.EMPTY),r=e.filter(i).length,n=s.filter(i).length;if(!r&&!n)return t;const o=r?n?Xm.MSUBSUP:Xm.MSUB:Xm.MSUP,a=[t];return r&&a.push(ng.getInstance().scriptNode_(e,Em.RIGHTSUB,!0)),n&&a.push(ng.getInstance().scriptNode_(s,Em.RIGHTSUPER,!0)),ng.getInstance().limitNode(o,a)}font(t){const e=ng.MATHJAX_FONTS[t];return e||t}proof(t,e,s){if(e.inference||e.axiom||console.log("Noise"),e.axiom){const e=ng.getInstance().cleanInference(t.childNodes),i=e.length?ng.getInstance().factory_.makeBranchNode(gm.INFERENCE,s(e),[]):ng.getInstance().factory_.makeEmptyNode();return i.role=Em.AXIOM,i.mathmlTree=t,i}const i=ng.getInstance().inference(t,e,s);return e.proof&&(i.role=Em.PROOF,i.childNodes[0].role=Em.FINAL),i}inference(t,e,s){if(e.inferenceRule){const e=ng.getInstance().getFormulas(t,[],s);return ng.getInstance().factory_.makeBranchNode(gm.INFERENCE,[e.conclusion,e.premises],[])}const i=e.labelledRule,r=Vp(t.childNodes),n=[];"left"!==i&&"both"!==i||n.push(ng.getInstance().getLabel(t,r,s,Em.LEFT)),"right"!==i&&"both"!==i||n.push(ng.getInstance().getLabel(t,r,s,Em.RIGHT));const o=ng.getInstance().getFormulas(t,r,s),a=ng.getInstance().factory_.makeBranchNode(gm.INFERENCE,[o.conclusion,o.premises],n);return a.mathmlTree=t,a}getLabel(t,e,s,i){const r=ng.getInstance().findNestedRow(e,"prooflabel",i),n=ng.getInstance().factory_.makeBranchNode(gm.RULELABEL,s(Vp(r.childNodes)),[]);return n.role=i,n.mathmlTree=r,n}getFormulas(t,e,s){const i=e.length?ng.getInstance().findNestedRow(e,"inferenceRule"):t,r="up"===ng.getSemantics(i).inferenceRule,n=r?i.childNodes[1]:i.childNodes[0],o=r?i.childNodes[0]:i.childNodes[1],a=n.childNodes[0].childNodes[0],l=Vp(a.childNodes[0].childNodes),c=[];let h=1;for(const t of l)h%2&&c.push(t.childNodes[0]),h++;const d=s(c),u=s(Vp(o.childNodes[0].childNodes))[0],p=ng.getInstance().factory_.makeBranchNode(gm.PREMISES,d,[]);p.mathmlTree=a;const m=ng.getInstance().factory_.makeBranchNode(gm.CONCLUSION,[u],[]);return m.mathmlTree=o.childNodes[0].childNodes[0],{conclusion:m,premises:p}}findNestedRow(t,e,s){return ng.getInstance().findNestedRow_(t,e,0,s)}cleanInference(t){return Vp(t).filter(function(t){return"MSPACE"!==Qp(t)})}operatorNode(t){return t.type===gm.UNKNOWN&&(t.type=gm.OPERATOR),rg.run("multioperator",t)}static rewriteTrivialTable(t){return yf(e=t,gm.MULTILINE)&&1===e.childNodes.length&&e.childNodes[0].childNodes.length&&!Hf(e.childNodes[0])?ng.getInstance().unwrapTrivialTable(t):t;var e}unwrapTrivialTable(t){if(!t.childNodes[0].childNodes.length)return ng.getInstance().factory_.makeEmptyNode();const e=t.childNodes[0].childNodes[0];return e.parent=null,ag([Xm.MTD,Xm.MTR,Xm.MTABLE],e),e}constructor(){this.funcAppls={},this.splitRoles=new Map([[Em.SUBTRACTION,Em.NEGATIVE],[Em.ADDITION,Em.POSITIVE]]),this.splitOps=["\u2212","-","\u2010","\u2011","+"],this.factory_=new Ef,rg.updateFactory(this.factory_)}implicitNode_(t){const e=ng.getInstance().factory_.makeMultipleContentNodes(t.length-1,Cm.invisibleTimes);ng.matchSpaces_(t,e);const s=ng.getInstance().infixNode_(t,e[0]);return s.role=Em.IMPLICIT,e.forEach(function(t){t.parent=s}),s.contentNodes=e,s}infixNode_(t,e){let s=ng.getInstance().factory_.makeBranchNode(gm.INFIXOP,t,[e],df(e).textContent);return s.role=e.role,s=rg.run("propagateInterval",s),rg.run("propagateSimpleFunction",s)}explicitMixed_(t){const e=pf(t,function(t){return t.textContent===Cm.invisiblePlus});if(!e.rel.length)return t;let s=[];for(let t,i=0;t=e.rel[i];i++){const r=e.comp[i],n=e.comp[i+1],o=r.length-1;if(r[o]&&n[0]&&yf(r[o],gm.NUMBER)&&!vf(r[o],Em.MIXED)&&yf(n[0],gm.FRACTION)){const t=ng.getInstance().factory_.makeBranchNode(gm.NUMBER,[r[o],n[0]],[]);t.role=Em.MIXED,s=s.concat(r.slice(0,o)),s.push(t),n.shift()}else s=s.concat(r),s.push(t)}return s.concat(e.comp[e.comp.length-1])}concatNode_(t,e,s){if(0===e.length)return t;const i=e.map(function(t){return df(t).textContent}).join(" "),r=ng.getInstance().factory_.makeBranchNode(s,[t],e,i);return e.length>1&&(r.role=Em.MULTIOP),mf(r,[t,...e]),r}multiopNode_(t){const e=ng.getInstance().factory_.makeBranchNode(gm.OPERATOR,t,[]);return e.role=Em.MULTIOP,mf(e,t),e}prefixNode_(t,e){const s=this.splitSingles(e);let i=t;for(;s.length>0;){const t=s.pop();i=ng.getInstance().concatNode_(i,t,gm.PREFIXOP),1===t.length&&-1!==this.splitOps.indexOf(t[0].textContent)&&(i.role=this.splitRoles.get(t[0].role))}return i}splitSingles(t){let e=0;const s=[];let i=0;for(;iyf(t,gm.SUPERSCRIPT)&&yf(t.childNodes[0],gm.EMPTY)||yf(t,gm.SUBSCRIPT)&&yf(t.childNodes[0],gm.EMPTY));if(!e.rel.length)return t;let s=[];do{const t=e.comp.shift(),i=e.rel.shift();if(!t.length){s.push(i);continue}const r=t.pop();yf(r,gm.NUMBER)||yf(r,gm.IDENTIFIER)?(i.childNodes[0]=r,r.parent=i,i.role=r.type.toLowerCase(),i.addAnnotation("collapsed",r.type.toLowerCase()),s=s.concat(t),s.push(i)):yf(r,gm.SUBSCRIPT)&&yf(i,gm.SUPERSCRIPT)?(i.childNodes[0]=r,r.parent=i,i.role=r.type.toLowerCase(),i.addAnnotation("collapsed",r.type.toLowerCase()),r.role=Em.SUBSUP,s=s.concat(t),s.push(i)):(s=s.concat(t),s.push(r),s.push(i))}while(e.rel.length);return s=s.concat(e.comp.pop()),s}combineUnits_(t){const e=pf(t,function(t){return!vf(t,Em.UNIT)});if(t.length===e.rel.length)return e.rel;const s=[];let i,r;do{const t=e.comp.shift();i=e.rel.shift();let n=null;r=s.pop(),r&&(t.length&&Jf(r)?t.unshift(r):s.push(r)),1===t.length&&(n=t.pop()),t.length>1&&(n=ng.getInstance().implicitNode_(t),n.role=Em.UNIT),n&&s.push(n),i&&s.push(i)}while(i);return s}getMixedNumbers_(t){const e=pf(t,function(t){return yf(t,gm.FRACTION)&&vf(t,Em.VULGAR)});if(!e.rel.length)return t;let s=[];for(let t,i=0;t=e.rel[i];i++){const r=e.comp[i],n=r.length-1;if(r[n]&&yf(r[n],gm.NUMBER)&&(vf(r[n],Em.INTEGER)||vf(r[n],Em.FLOAT))){const e=ng.getInstance().factory_.makeBranchNode(gm.NUMBER,[r[n],t],[]);e.role=Em.MIXED,s=s.concat(r.slice(0,n)),s.push(e)}else s=s.concat(r),s.push(t)}return s.concat(e.comp[e.comp.length-1])}getTextInRow_(t){if(0===t.length)return t;if(1===t.length)return t[0].type===gm.TEXT&&t[0].role===Em.UNKNOWN&&(t[0].role=Em.ANNOTATION),t;const{rel:e,comp:s}=pf(t,t=>yf(t,gm.TEXT)&&!t.annotation.factor);if(0===e.length)return t;const i=[];let r=s.shift();for(;e.length>0;){let t=e.shift(),n=s.shift();const o=[];for(;!n.length&&e.length&&t.role!==Em.SPACE&&e[0].role!==Em.SPACE;)o.push(t),t=e.shift(),n=s.shift();if(o.length&&(o.push(t),t=ng.getInstance().dummyNode_(o)),t.role!==Em.UNKNOWN){const e=og(r,t,n);if(e){r=e;continue}r.length&&i.push(ng.getInstance().row(r)),i.push(t),r=n;continue}const a=Sm.Meaning.get(t.textContent);if(a.type!==gm.UNKNOWN){t.type=a.type,t.role=a.role,t.font=a.font,t.addAnnotation("general","text"),r.push(t),r=r.concat(n);continue}if(ng.meaningFromContent(t,(t,e,s)=>{if(t.role===Em.UNKNOWN){if(ng.numberRole_(t,e,s),t.role===Em.OTHERNUMBER)return s.some(t=>t.type!==gm.NUMBER&&t.type!==gm.IDENTIFIER)?(t.type=gm.TEXT,void(t.role=Em.ANNOTATION)):void(t.role=Em.UNKNOWN);t.type=gm.NUMBER}}),t.role===Em.UNKNOWN&&(e.length||n.length?n.length&&n[0].type===gm.FENCED?(t.type=gm.FUNCTION,t.role=Em.PREFIXFUNC):t.role=Em.TEXT:(t.type=gm.IDENTIFIER,t.role=Em.UNIT)),t.type!==gm.TEXT){r.push(t),r=r.concat(n);continue}const l=og(r,t,n);l?r=l:(r.length&&i.push(ng.getInstance().row(r)),i.push(t),r=n)}return r.length>0&&i.push(ng.getInstance().row(r)),i.length>1?[ng.getInstance().dummyNode_(i)]:i}relationsInRow_(t){const e=pf(t,wf),s=e.rel[0];if(!s)return ng.getInstance().operationsInRow_(t);if(1===t.length)return t[0];const i=e.comp.map(ng.getInstance().operationsInRow_);let r;return e.rel.some(function(t){return!t.equals(s)})?(r=ng.getInstance().factory_.makeBranchNode(gm.MULTIREL,i,e.rel),e.rel.every(function(t){return t.role===s.role})&&(r.role=s.role),r):(r=ng.getInstance().factory_.makeBranchNode(gm.RELSEQ,i,e.rel,df(s).textContent),r.role=s.role,r)}operationsInRow_(t){if(0===t.length)return ng.getInstance().factory_.makeEmptyNode();if(1===(t=ng.getInstance().explicitMixed_(t)).length)return t[0];const e=[];for(;t.length>0&&If(t[0]);)e.push(t.shift());if(0===t.length)return ng.getInstance().multiopNode_(e);if(1===t.length)return ng.getInstance().prefixNode_(t[0],e);const s=uf(t=rg.run("convert_juxtaposition",t),If),i=ng.getInstance().wrapFactor(e,s);return ng.getInstance().addFactor(i,s)}wrapPostfix(t){var e;(null===(e=t.div)||void 0===e?void 0:e.role)===Em.POSTFIXOP&&(t.tail.length&&t.tail[0].type!==gm.OPERATOR?t.div.role=Em.DIVISION:(t.head=[ng.getInstance().postfixNode_(ng.getInstance().implicitNode(t.head),[t.div])],t.div=t.tail.shift(),ng.getInstance().wrapPostfix(t)))}wrapFactor(t,e){return ng.getInstance().wrapPostfix(e),ng.getInstance().prefixNode_(ng.getInstance().implicitNode(e.head),t)}addFactor(t,e){return e.div?ng.getInstance().operationsTree_(e.tail,t,e.div):($f(t)&&(t.role=Em.UNIT),t)}operationsTree_(t,e,s,i=[]){if(0===t.length){if(i.unshift(s),e.type===gm.INFIXOP){const t=ng.getInstance().postfixNode_(e.childNodes.pop(),i);return e.appendChild(t),e}return ng.getInstance().postfixNode_(e,i)}const r=uf(t,If);if(0===r.head.length)return i.push(r.div),ng.getInstance().operationsTree_(r.tail,e,s,i);const n=ng.getInstance().wrapFactor(i,r),o=ng.getInstance().appendOperand_(e,s,n);return ng.getInstance().addFactor(o,r)}appendOperand_(t,e,s){if(t.type!==gm.INFIXOP)return ng.getInstance().infixNode_([t,s],e);const i=ng.getInstance().appendDivisionOp_(t,e,s);return i||(ng.getInstance().appendExistingOperator_(t,e,s)?t:e.role===Em.MULTIPLICATION?ng.getInstance().appendMultiplicativeOp_(t,e,s):ng.getInstance().appendAdditiveOp_(t,e,s))}appendDivisionOp_(t,e,s){return e.role===Em.DIVISION?Yf(t)?ng.getInstance().infixNode_([t,s],e):ng.getInstance().appendLastOperand_(t,e,s):t.role===Em.DIVISION?ng.getInstance().infixNode_([t,s],e):null}appendLastOperand_(t,e,s){let i=t,r=t.childNodes[t.childNodes.length-1];for(;r&&r.type===gm.INFIXOP&&!Yf(r);)i=r,r=i.childNodes[i.childNodes.length-1];const n=ng.getInstance().infixNode_([i.childNodes.pop(),s],e);return i.appendChild(n),t}appendMultiplicativeOp_(t,e,s){if(Yf(t))return ng.getInstance().infixNode_([t,s],e);let i=t,r=t.childNodes[t.childNodes.length-1];for(;r&&r.type===gm.INFIXOP&&!Yf(r);)i=r,r=i.childNodes[i.childNodes.length-1];const n=ng.getInstance().infixNode_([i.childNodes.pop(),s],e);return i.appendChild(n),t}appendAdditiveOp_(t,e,s){return ng.getInstance().infixNode_([t,s],e)}appendExistingOperator_(t,e,s){return!(!t||t.type!==gm.INFIXOP||Yf(t))&&(t.contentNodes[0].equals(e)?(t.appendContentNode(e),t.appendChild(s),!0):ng.getInstance().appendExistingOperator_(t.childNodes[t.childNodes.length-1],e,s))}getFencesInRow_(t){let e=pf(t,Of);e=ng.purgeFences_(e);const s=e.comp.shift();return ng.getInstance().fences_(e.rel,e.comp,[],[s])}fences_(t,e,s,i){if(0===t.length&&0===s.length)return i[0];const r=rg.run("bracketed_interval",[t[0],t[1],...e[0]||[]],()=>null);if(r){t.shift(),t.shift(),e.shift();const n=i.pop()||[];return i.push([...n,r,...e.shift()]),ng.getInstance().fences_(t,e,s,i)}const n=t=>vf(t,Em.OPEN);if(0===t.length){const t=i.shift();for(;s.length>0;){if(n(s[0])){const e=s.shift();ng.fenceToPunct_(e),t.push(e)}else{const e=uf(s,n),r=e.head.length-1,o=ng.getInstance().neutralFences_(e.head,i.slice(0,r));i=i.slice(r),t.push(...o),e.div&&e.tail.unshift(e.div),s=e.tail}t.push(...i.shift())}return t}const o=s[s.length-1],a=t[0].role;if(a===Em.OPEN||Zf(t[0])&&(!o||!tg(t[0],o))){s.push(t.shift());const r=e.shift();return r&&i.push(r),ng.getInstance().fences_(t,e,s,i)}if(o&&a===Em.CLOSE&&o.role===Em.OPEN){const r=ng.getInstance().horizontalFencedNode_(s.pop(),t.shift(),i.pop());return i.push(i.pop().concat([r],e.shift())),ng.getInstance().fences_(t,e,s,i)}if(o&&tg(t[0],o)){if(!eg(o)||!sg(t[0])){s.push(t.shift());const r=e.shift();return r&&i.push(r),ng.getInstance().fences_(t,e,s,i)}const r=ng.getInstance().horizontalFencedNode_(s.pop(),t.shift(),i.pop());return i.push(i.pop().concat([r],e.shift())),ng.getInstance().fences_(t,e,s,i)}if(o&&a===Em.CLOSE&&Zf(o)&&s.some(n)){const r=uf(s,n,!0),o=i.pop(),a=i.length-r.tail.length+1,l=ng.getInstance().neutralFences_(r.tail,i.slice(a));i=i.slice(0,a);const c=ng.getInstance().horizontalFencedNode_(r.div,t.shift(),i.pop().concat(l,o));return i.push(i.pop().concat([c],e.shift())),ng.getInstance().fences_(t,e,r.head,i)}const l=t.shift();return ng.fenceToPunct_(l),i.push(i.pop().concat([l],e.shift())),ng.getInstance().fences_(t,e,s,i)}neutralFences_(t,e){if(0===t.length)return t;if(1===t.length)return ng.fenceToPunct_(t[0]),t;const s=t.shift();if(!eg(s)){ng.fenceToPunct_(s);const i=e.shift();return i.unshift(s),i.concat(ng.getInstance().neutralFences_(t,e))}const i=uf(t,function(t){return tg(t,s)});if(!i.div){ng.fenceToPunct_(s);const i=e.shift();return i.unshift(s),i.concat(ng.getInstance().neutralFences_(t,e))}if(!sg(i.div))return ng.fenceToPunct_(i.div),t.unshift(s),ng.getInstance().neutralFences_(t,e);const r=ng.getInstance().combineFencedContent_(s,i.div,i.head,e);if(i.tail.length>0){const t=r.shift(),e=ng.getInstance().neutralFences_(i.tail,r);return t.concat(e)}return r[0]}combineFencedContent_(t,e,s,i){if(0===s.length){const s=ng.getInstance().horizontalFencedNode_(t,e,i.shift());return i.length>0?i[0].unshift(s):i=[[s]],i}const r=i.shift(),n=s.length-1,o=i.slice(0,n),a=(i=i.slice(n)).shift(),l=ng.getInstance().neutralFences_(s,o);r.push(...l),r.push(...a);const c=ng.getInstance().horizontalFencedNode_(t,e,r);return i.length>0?i[0].unshift(c):i=[[c]],i}horizontalFencedNode_(t,e,s){var i;const r=ng.getInstance().row(s),n=null===(i=t.mathmlTree)||void 0===i?void 0:i.nextSibling;yf(r,gm.EMPTY)&&!r.mathmlTree&&t.mathmlTree&&e.mathmlTree!==n&&!lf(e.mathmlTree,n)&&(r.mathmlTree=n,r.addMathmlNodes([n]));let o=ng.getInstance().factory_.makeBranchNode(gm.FENCED,[r],[t,e]);return t.role===Em.OPEN?(ng.getInstance().classifyHorizontalFence_(o),o=rg.run("propagateComposedFunction",o)):o.role=t.role,o=rg.run("detect_cycle",o),ng.rewriteFencedNode_(o)}classifyHorizontalFence_(t){if(rg.run("interval_heuristic",t),t.role===Em.INTERVAL)return;t.role=Em.LEFTRIGHT;const e=t.childNodes;if(!function(t){return function(t){return!!t&&-1!==["{","\ufe5b","\uff5b"].indexOf(t.textContent)}(df(t.contentNodes[0]))&&function(t){return!!t&&-1!==["}","\ufe5c","\uff5d"].indexOf(t.textContent)}(df(t.contentNodes[1]))}(t)||e.length>1)return;if(0===e.length||e[0].type===gm.EMPTY)return void(t.role=Em.SETEMPTY);const s=e[0].type;if(1===e.length&&Gf(e[0]))return void(t.role=Em.SETSINGLE);const i=e[0].role;if(s===gm.PUNCTUATED&&i===Em.SEQUENCE){if(e[0].contentNodes[0].role!==Em.COMMA)return 1!==e[0].contentNodes.length||e[0].contentNodes[0].role!==Em.VBAR&&e[0].contentNodes[0].role!==Em.COLON?void 0:(t.role=Em.SETEXT,void ng.getInstance().setExtension_(t));t.role=Em.SETCOLLECT}}setExtension_(t){const e=t.childNodes[0].childNodes[0];e&&e.type===gm.INFIXOP&&1===e.contentNodes.length&&ig(e.contentNodes[0])&&(e.addAnnotation("set","intensional"),e.contentNodes[0].addAnnotation("set","intensional"))}getPunctuationInRow_(t){if(t.length<=1)return t;const e=t=>{const e=t.type;return"punctuation"===e||"text"===e||"operator"===e||"relation"===e},s=pf(t,function(s){if(!kf(s))return!1;if(kf(s)&&!vf(s,Em.ELLIPSIS))return!0;const i=t.indexOf(s);if(0===i)return!t[1]||!e(t[1]);const r=t[i-1];if(i===t.length-1)return!e(r);const n=t[i+1];return!e(r)||!e(n)});if(0===s.rel.length)return t;let i=[],r=s.comp.shift();r.length>0&&i.push(ng.getInstance().row(r));let n=0;for(;s.comp.length>0;){let t=[];const e=n;do{t.push(s.rel[n++]),r=s.comp.shift()}while(s.rel[n]&&r&&0===r.length);t=rg.run("ellipses",t),s.rel.splice(e,n-e,...t),n=e+t.length,i=i.concat(t),r&&r.length>0&&i.push(ng.getInstance().row(r))}return 1===i.length&&1===s.rel.length?i:[ng.getInstance().punctuatedNode_(i,s.rel)]}punctuatedNode_(t,e){const s=ng.getInstance().factory_.makeBranchNode(gm.PUNCTUATED,t,e);if(e.length===t.length){const t=e[0].role;if(t!==Em.UNKNOWN&&e.every(function(e){return e.role===t}))return s.role=t,s}const i=e[0];return zf(t,e,0)?s.role=i.childNodes.length&&!i.embellished?i.role:Em.STARTPUNCT:zf(t,e,t.length-1)?s.role=i.childNodes.length&&!i.embellished?i.role:Em.ENDPUNCT:e.every(t=>vf(t,Em.DUMMY))?s.role=Em.TEXT:e.every(t=>vf(t,Em.SPACE))?s.role=Em.SPACE:s.role=Em.SEQUENCE,s}dummyNode_(t){const e=ng.getInstance().factory_.makeMultipleContentNodes(t.length-1,Cm.invisibleComma);return e.forEach(function(t){t.role=Em.DUMMY}),ng.getInstance().punctuatedNode_(t,e)}accentRole_(t,e){if(!Tf(t))return!1;const s=t.textContent,i=Sm.Secondary.get(s,vm.BAR)||Sm.Secondary.get(s,vm.TILDE)||t.role;return t.role=e===gm.UNDERSCORE?Em.UNDERACCENT:Em.OVERACCENT,t.addAnnotation("accent",i),!0}accentNode_(t,e,s,i,r){const n=(e=e.slice(0,i+1))[1],o=e[2];let a;if(!r&&o&&(a=ng.getInstance().factory_.makeBranchNode(gm.SUBSCRIPT,[t,n],[]),a.role=Em.SUBSUP,e=[a,o],s=gm.SUPERSCRIPT),r){const i=ng.getInstance().accentRole_(n,s);if(o){ng.getInstance().accentRole_(o,gm.OVERSCORE)&&!i?(a=ng.getInstance().factory_.makeBranchNode(gm.OVERSCORE,[t,o],[]),e=[a,n],s=gm.UNDERSCORE):(a=ng.getInstance().factory_.makeBranchNode(gm.UNDERSCORE,[t,n],[]),e=[a,o],s=gm.OVERSCORE),a.role=Em.UNDEROVER}}return ng.getInstance().makeLimitNode_(t,e,a,s)}makeLimitNode_(t,e,s,i){if(i===gm.LIMUPPER&&t.type===gm.LIMLOWER)return t.childNodes.push(e[1]),e[1].parent=t,t.type=gm.LIMBOTH,t;if(i===gm.LIMLOWER&&t.type===gm.LIMUPPER)return t.childNodes.splice(1,-1,e[1]),e[1].parent=t,t.type=gm.LIMBOTH,t;const r=ng.getInstance().factory_.makeBranchNode(i,e,[]),n=Mf(t);return s&&(s.embellished=n),r.embellished=n,r.role=t.role,r}getFunctionsInRow_(t,e){const s=e||[];if(0===t.length)return s;const i=t.shift(),r=ng.classifyFunction_(i,t);if(!r)return s.push(i),ng.getInstance().getFunctionsInRow_(t,s);const n=ng.getInstance().getFunctionsInRow_(t,[]),o=ng.getInstance().getFunctionArgs_(i,n,r);return s.concat(o)}getFunctionArgs_(t,e,s){let i,r,n;switch(s){case"integral":{const s=ng.getInstance().getIntegralArgs_(e);if(!s.intvar&&!s.integrand.length)return s.rest.unshift(t),s.rest;const i=ng.getInstance().row(s.integrand);return n=ng.getInstance().integralNode_(t,i,s.intvar),rg.run("intvar_from_fraction",n),s.rest.unshift(n),s.rest}case"prefix":if(e[0]&&e[0].type===gm.FENCED){const s=e.shift();return Zf(s)||(s.role=Em.LEFTRIGHT),n=ng.getInstance().functionNode_(t,s),e.unshift(n),e}if(i=uf(e,Cf),i.head.length)r=ng.getInstance().row(i.head),i.div&&i.tail.unshift(i.div);else{if(!i.div||!yf(i.div,gm.APPL))return e.unshift(t),e;r=i.div}return n=ng.getInstance().functionNode_(t,r),i.tail.unshift(n),i.tail;case"bigop":return i=uf(e,Af),i.head.length?(r=ng.getInstance().row(i.head),n=ng.getInstance().bigOpNode_(t,r),i.div&&i.tail.unshift(i.div),i.tail.unshift(n),i.tail):(e.unshift(t),e);default:{if(0===e.length)return[t];const s=e[0];return s.type===gm.FENCED&&!Zf(s)&&function(t){const e=t.childNodes;if(0===e.length)return!0;if(e.length>1)return!1;const s=e[0];if(s.type===gm.INFIXOP){if(s.role!==Em.IMPLICIT)return!1;if(s.childNodes.some(t=>yf(t,gm.INFIXOP)))return!1}return!0}(s)?(s.role=Em.LEFTRIGHT,ng.propagateFunctionRole_(t,Em.SIMPLEFUNC),n=ng.getInstance().functionNode_(t,e.shift()),e.unshift(n),e):(e.unshift(t),e)}}}getIntegralArgs_(t,e=[]){if(0===t.length){const t=uf(e,Af);return t.div&&t.tail.unshift(t.div),{integrand:t.head,intvar:null,rest:t.tail}}rg.run("intvar_from_implicit",t);const s=t[0];if(Rf(s)){const{integrand:s,rest:i}=ng.getInstance().getIntegralArgs_(e);return{integrand:s,intvar:null,rest:i.concat(t)}}if(Sf(s))return s.role=Em.INTEGRAL,{integrand:e,intvar:s,rest:t.slice(1)};if(t[1]&&Lf(s,t[1])){const i=ng.getInstance().prefixNode_(t[1],[s]);return i.role=Em.INTEGRAL,{integrand:e,intvar:i,rest:t.slice(2)}}return e.push(t.shift()),ng.getInstance().getIntegralArgs_(t,e)}functionNode_(t,e){const s=ng.getInstance().factory_.makeContentNode(Cm.functionApplication),i=ng.getInstance().funcAppls[t.id];i&&(s.mathmlTree=i.mathmlTree,s.addMathmlNodes(i.mathml),s.annotation=i.annotation,s.attributes=i.attributes,delete ng.getInstance().funcAppls[t.id]),s.type=gm.PUNCTUATION,s.role=Em.APPLICATION;const r=ng.getFunctionOp_(t,function(t){return yf(t,gm.FUNCTION)||yf(t,gm.IDENTIFIER)&&vf(t,Em.SIMPLEFUNC)});return ng.getInstance().functionalNode_(gm.APPL,[t,e],r,[s])}bigOpNode_(t,e){const s=ng.getFunctionOp_(t,t=>yf(t,gm.LARGEOP));return ng.getInstance().functionalNode_(gm.BIGOP,[t,e],s,[])}integralNode_(t,e,s){e=e||ng.getInstance().factory_.makeEmptyNode(),s=s||ng.getInstance().factory_.makeEmptyNode();const i=ng.getFunctionOp_(t,t=>yf(t,gm.LARGEOP));return ng.getInstance().functionalNode_(gm.INTEGRAL,[t,e,s],i,[])}functionalNode_(t,e,s,i){const r=e[0];let n;s&&(n=s.parent,i.push(s));const o=ng.getInstance().factory_.makeBranchNode(t,e,i);return o.role=r.role,n&&(s.parent=n),o}fractionNode_(t,e){const s=ng.getInstance().factory_.makeBranchNode(gm.FRACTION,[t,e],[]);return s.role=s.childNodes.every(function(t){return yf(t,gm.NUMBER)&&vf(t,Em.INTEGER)})?Em.VULGAR:s.childNodes.every(Kf)?Em.UNIT:Em.DIVISION,rg.run("propagateSimpleFunction",s)}scriptNode_(t,e,s){let i;switch(t.length){case 0:i=ng.getInstance().factory_.makeEmptyNode();break;case 1:if(i=t[0],s)return i;break;default:i=ng.getInstance().dummyNode_(t),i.addAnnotation("general","script")}return i.role=e,i}findNestedRow_(t,e,s,i){if(s>3)return null;for(let r,n=0;r=t[n];n++){const t=Qp(r);if(t!==Xm.MSPACE){if(t===Xm.MROW)return ng.getInstance().findNestedRow_(Vp(r.childNodes),e,s+1,i);if(ng.findSemantics(r,e,i))return r}}return null}}function og(t,e,s){const i=t[t.length-1];if(i&&(i.type===gm.RELATION||i.type===gm.OPERATOR))return e.addAnnotation("factor",i.type),[...t,e,...s];const r=s[0];return!r||r.type!==gm.RELATION&&r.type!==gm.OPERATOR?null:(e.addAnnotation("factor",r.type),[...t,e,...s])}function ag(t,e){return t.forEach(t=>e.addAnnotation("empty",t)),e}ng.FENCE_TO_PUNCT_={[Em.METRIC]:Em.METRIC,[Em.NEUTRAL]:Em.VBAR,[Em.OPEN]:Em.OPENFENCE,[Em.CLOSE]:Em.CLOSEFENCE},ng.MML_TO_LIMIT_={[Xm.MSUB]:{type:gm.LIMLOWER,length:1},[Xm.MUNDER]:{type:gm.LIMLOWER,length:1},[Xm.MSUP]:{type:gm.LIMUPPER,length:1},[Xm.MOVER]:{type:gm.LIMUPPER,length:1},[Xm.MSUBSUP]:{type:gm.LIMBOTH,length:2},[Xm.MUNDEROVER]:{type:gm.LIMBOTH,length:2}},ng.MML_TO_BOUNDS_={[Xm.MSUB]:{type:gm.SUBSCRIPT,length:1,accent:!1},[Xm.MSUP]:{type:gm.SUPERSCRIPT,length:1,accent:!1},[Xm.MSUBSUP]:{type:gm.SUBSCRIPT,length:2,accent:!1},[Xm.MUNDER]:{type:gm.UNDERSCORE,length:1,accent:!0},[Xm.MOVER]:{type:gm.OVERSCORE,length:1,accent:!0},[Xm.MUNDEROVER]:{type:gm.UNDERSCORE,length:2,accent:!0}},ng.CLASSIFY_FUNCTION_={[Em.INTEGRAL]:"integral",[Em.SUM]:"bigop",[Em.PREFIXFUNC]:"prefix",[Em.LIMFUNC]:"prefix",[Em.SIMPLEFUNC]:"prefix",[Em.COMPFUNC]:"prefix"},ng.MATHJAX_FONTS={"-tex-caligraphic":ym.CALIGRAPHIC,"-tex-caligraphic-bold":ym.CALIGRAPHICBOLD,"-tex-calligraphic":ym.CALIGRAPHIC,"-tex-calligraphic-bold":ym.CALIGRAPHICBOLD,"-tex-oldstyle":ym.OLDSTYLE,"-tex-oldstyle-bold":ym.OLDSTYLEBOLD,"-tex-mathit":ym.ITALIC};class lg extends xf{static getAttribute_(t,e,s){if(!t.hasAttribute(e))return s;const i=t.getAttribute(e);return i.match(/^\s*$/)?null:i}constructor(t){super("MathML"),this.options=t,rg.options=t,this.parseMap_=new Map([[Xm.SEMANTICS,this.semantics_.bind(this)],[Xm.MATH,this.rows_.bind(this)],[Xm.MROW,this.rows_.bind(this)],[Xm.MPADDED,this.rows_.bind(this)],[Xm.MSTYLE,this.rows_.bind(this)],[Xm.MFRAC,this.fraction_.bind(this)],[Xm.MSUB,this.limits_.bind(this)],[Xm.MSUP,this.limits_.bind(this)],[Xm.MSUBSUP,this.limits_.bind(this)],[Xm.MOVER,this.limits_.bind(this)],[Xm.MUNDER,this.limits_.bind(this)],[Xm.MUNDEROVER,this.limits_.bind(this)],[Xm.MROOT,this.root_.bind(this)],[Xm.MSQRT,this.sqrt_.bind(this)],[Xm.MTABLE,this.table_.bind(this)],[Xm.MLABELEDTR,this.tableLabeledRow_.bind(this)],[Xm.MTR,this.tableRow_.bind(this)],[Xm.MTD,this.tableCell_.bind(this)],[Xm.MS,this.text_.bind(this)],[Xm.MTEXT,this.text_.bind(this)],[Xm.MSPACE,this.space_.bind(this)],[Xm.ANNOTATIONXML,this.text_.bind(this)],[Xm.MI,this.identifier_.bind(this)],[Xm.MN,this.number_.bind(this)],[Xm.MO,this.operator_.bind(this)],[Xm.MFENCED,this.fenced_.bind(this)],[Xm.MENCLOSE,this.enclosed_.bind(this)],[Xm.MMULTISCRIPTS,this.multiscripts_.bind(this)],[Xm.ANNOTATION,this.empty_.bind(this)],[Xm.NONE,this.empty_.bind(this)],[Xm.MACTION,this.action_.bind(this)],[Xm.MPHANTOM,this.phantom_.bind(this)]]);const e={type:gm.IDENTIFIER,role:Em.NUMBERSET,font:ym.DOUBLESTRUCK};["C","H","N","P","Q","R","Z","\u2102","\u210d","\u2115","\u2119","\u211a","\u211d","\u2124"].forEach((t=>this.getFactory().defaultMap.set(t,e)).bind(this))}parse(t){ng.getInstance().setNodeFactory(this.getFactory());const e=Vp(t.childNodes),s=Qp(t),i=this.parseMap_.get(s),r=(i||this.dummy_.bind(this))(t,e);return r.noupdate?r:(hf(r,t),-1!==[Xm.MATH,Xm.MROW,Xm.MPADDED,Xm.MSTYLE,Xm.SEMANTICS,Xm.MACTION].indexOf(s)||(r.mathml.unshift(t),r.mathmlTree=t),r)}semantics_(t,e){return e.length?this.parse(e[0]):this.getFactory().makeEmptyNode()}rows_(t,e){const s=t.getAttribute("semantics");if(s&&s.match("bspr_"))return ng.proof(t,s,this.parseList.bind(this));let i;if(1===(e=cf(e)).length)i=this.parse(e[0]),i.type!==gm.EMPTY||i.mathmlTree||(i.mathmlTree=t);else{const s=rg.run("function_from_identifiers",t),r=this.parseList(e),n=Qp(t)===Xm.MSTYLE;i=s&&s!==t?s:ng.getInstance().row(r,n)}return i.mathml.unshift(t),i}fraction_(t,e){if(!e.length)return this.getFactory().makeEmptyNode();const s=this.parse(e[0]),i=e[1]?this.parse(e[1]):this.getFactory().makeEmptyNode();return ng.getInstance().fractionLikeNode(s,i,t.getAttribute("linethickness"),"true"===t.getAttribute("bevelled"))}limits_(t,e){return ng.getInstance().limitNode(Qp(t),this.parseList(e))}root_(t,e){return e[1]?this.getFactory().makeBranchNode(gm.ROOT,[this.parse(e[1]),this.parse(e[0])],[]):this.sqrt_(t,e)}sqrt_(t,e){const s=this.parseList(cf(e));return this.getFactory().makeBranchNode(gm.SQRT,[ng.getInstance().row(s)],[])}table_(t,e){const s=t.getAttribute("semantics");if(s&&s.match("bspr_"))return ng.proof(t,s,this.parseList.bind(this));const i=this.getFactory().makeBranchNode(gm.TABLE,this.parseList(e),[]);return i.mathmlTree=t,ng.tableToMultiline(i)}tableRow_(t,e){const s=this.getFactory().makeBranchNode(gm.ROW,this.parseList(e),[]);return s.role=Em.TABLE,s}tableLabeledRow_(t,e){var s;if(!e.length)return this.tableRow_(t,e);const i=this.parse(e[0]);i.role=Em.LABEL,(null===(s=i.childNodes[0])||void 0===s?void 0:s.type)===gm.TEXT&&(i.childNodes[0].role=Em.LABEL);const r=this.getFactory().makeBranchNode(gm.ROW,this.parseList(e.slice(1)),[i]);return r.role=Em.TABLE,r}tableCell_(t,e){const s=this.parseList(cf(e));let i;i=s.length?1===s.length&&yf(s[0],gm.EMPTY)?s:[ng.getInstance().row(s)]:[];const r=this.getFactory().makeBranchNode(gm.CELL,i,[]);return r.role=Em.TABLE,r}phantom_(t,e){let s;return e.length?(s=this.getFactory().makeUnprocessed(t),s.type=gm.TEXT,s.role=Em.SPACE):s=this.empty_(t,e),s}space_(t,e){if(!ff(t))return this.empty_(t,e);const s=this.getFactory().makeUnprocessed(t);return ng.getInstance().text(s,Qp(t))}text_(t,e){const s=this.leaf_(t,e);return t.textContent?(s.updateContent(t.textContent,!0),ng.getInstance().text(s,Qp(t))):s}identifier_(t,e){const s=this.leaf_(t,e);return ng.getInstance().identifierNode(s,ng.getInstance().font(t.getAttribute("mathvariant")),t.getAttribute("class"))}number_(t,e){const s=this.leaf_(t,e);return ng.number(s),s}operator_(t,e){const s=this.leaf_(t,e);return ng.getInstance().operatorNode(s),s}fenced_(t,e){const s=this.parseList(e);s.forEach(t=>{yf(t,gm.EMPTY)&&t.addAnnotation("empty","MFENCED")});const i=lg.getAttribute_(t,"separators",","),r=lg.getAttribute_(t,"open","("),n=lg.getAttribute_(t,"close",")"),o=ng.getInstance().mfenced(r,n,i,s);o.mathmlTree=t,o.addMathmlNodes([t]);return ng.getInstance().tablesInRow([o])[0]}enclosed_(t,e){const s=this.parseList(cf(e)),i=this.getFactory().makeBranchNode(gm.ENCLOSE,[ng.getInstance().row(s)],[]);return i.role=t.getAttribute("notation")||Em.UNKNOWN,i}multiscripts_(t,e){if(!e.length)return this.getFactory().makeEmptyNode();const s=this.parse(e.shift());if(!e.length)return s;const i=[],r=[],n=[],o=[];let a=!1,l=0;for(let t,s=0;t=e[s];s++)Qp(t)!==Xm.MPRESCRIPTS?(a?1&l?i.push(t):r.push(t):1&l?n.push(t):o.push(t),l++):(a=!0,l=0);return cf(i).length||cf(r).length?ng.getInstance().tensor(s,this.parseList(r),this.parseList(i),this.parseList(o),this.parseList(n)):ng.getInstance().pseudoTensor(s,this.parseList(o),this.parseList(n))}empty_(t,e){const s=this.getFactory().makeEmptyNode();return s.addMathmlNodes([t]),s.mathmlTree=t,s}action_(t,e){const s=e[t.hasAttribute("selection")?parseInt(t.getAttribute("selection"),10)-1:0],i=this.parse(s);return i.mathmlTree=s,i}dummy_(t,e){const s=this.getFactory().makeUnprocessed(t);return s.role=t.tagName,s.textContent=t.textContent,s}leaf_(t,e){if(1===e.length&&e[0].nodeType!==qp.TEXT_NODE){const s=this.getFactory().makeUnprocessed(t);return s.role=e[0].tagName,hf(s,e[0]),s}const s=this.getFactory().makeLeafNode(t.textContent,ng.getInstance().font(t.getAttribute("mathvariant")));return t.hasAttribute("data-latex")&&Sm.LatexCommands.set(t.getAttribute("data-latex"),t.textContent),s}}class cg{constructor(t,e,s=t=>!1){this.name=t,this.apply=e,this.applicable=s}}class hg extends cg{}class dg extends cg{}function ug(t,e){const s=[];for(;t.length||e.length;)t.length&&s.push(t.shift()),e.length&&s.push(e.shift());return s}const pg="data-semantic-";var mg;!function(t){t.ADDED="data-semantic-added",t.ALTERNATIVE="data-semantic-alternative",t.CHILDREN="data-semantic-children",t.COLLAPSED="data-semantic-collapsed",t.CONTENT="data-semantic-content",t.EMBELLISHED="data-semantic-embellished",t.FENCEPOINTER="data-semantic-fencepointer",t.FONT="data-semantic-font",t.ID="data-semantic-id",t.ANNOTATION="data-semantic-annotation",t.ATTRIBUTES="data-semantic-attributes",t.OPERATOR="data-semantic-operator",t.OWNS="data-semantic-owns",t.PARENT="data-semantic-parent",t.POSTFIX="data-semantic-postfix",t.PREFIX="data-semantic-prefix",t.ROLE="data-semantic-role",t.SPEECH="data-semantic-speech",t.STRUCTURE="data-semantic-structure",t.SUMMARY="data-semantic-summary",t.TYPE="data-semantic-type"}(mg||(mg={}));const fg=[mg.ADDED,mg.ALTERNATIVE,mg.CHILDREN,mg.COLLAPSED,mg.CONTENT,mg.EMBELLISHED,mg.FENCEPOINTER,mg.FONT,mg.ID,mg.ANNOTATION,mg.ATTRIBUTES,mg.OPERATOR,mg.OWNS,mg.PARENT,mg.POSTFIX,mg.PREFIX,mg.ROLE,mg.SPEECH,mg.STRUCTURE,mg.SUMMARY,mg.TYPE];function gg(t){return t.map(function(t){return t.id}).join(",")}function bg(t,e){t.setAttribute(mg.TYPE,e.type);const s=e.allAttributes();for(let e,i=0;e=s[i];i++)t.setAttribute(pg+e[0].toLowerCase(),e[1]);e.childNodes.length&&t.setAttribute(mg.CHILDREN,gg(e.childNodes)),e.contentNodes.length&&t.setAttribute(mg.CONTENT,gg(e.contentNodes)),e.parent&&t.setAttribute(mg.PARENT,e.parent.id.toString());const i=e.attributesXml();i&&t.setAttribute(mg.ATTRIBUTES,i),function(t,e){const s=[];e.role===Em.MGLYPH&&s.push("image");e.attributes.href&&s.push("link");s.length&&t.setAttribute(mg.POSTFIX,s.join(" "))}(t,e)}function Eg(){const t=Jp("mrow");return t.setAttribute(mg.ADDED,"true"),t}class xg{static fromTree(t){return xg.fromNode(t.root)}static fromNode(t){return new xg(xg.fromNode_(t))}static fromString(t){return new xg(xg.fromString_(t))}static simpleCollapseStructure(t){return"number"==typeof t}static contentCollapseStructure(t){return!!t&&!xg.simpleCollapseStructure(t)&&"c"===t[0]}static interleaveIds(t,e){return ug(xg.collapsedLeafs(t),xg.collapsedLeafs(e))}static collapsedLeafs(...t){return t.reduce((t,e)=>{return t.concat((s=e,xg.simpleCollapseStructure(s)?[s]:xg.contentCollapseStructure(s[1])?s.slice(2):s.slice(1)));var s},[])}static fromStructure(t,e,s){const i=new Map;t.hasAttribute(mg.ID)&&i.set(t.getAttribute(mg.ID),t);for(const e of Yp(t,mg.ID))i.set(e.getAttribute(mg.ID),e);return new xg(xg.tree_(i,e.root,s))}static combineContentChildren(t,e,s,i){switch(t){case gm.RELSEQ:case gm.INFIXOP:case gm.MULTIREL:return ug(i,s);case gm.PREFIXOP:return s.concat(i);case gm.POSTFIXOP:return i.concat(s);case gm.MATRIX:case gm.VECTOR:case gm.FENCED:return i.unshift(s[0]),i.push(s[1]),i;case gm.CASES:return i.unshift(s[0]),i;case gm.APPL:return[i[0],s[0],i[1]];case gm.ROOT:return[i[0],i[1]];case gm.ROW:case gm.LINE:return s.length&&i.push(s[0]),i;default:return i}}static makeSexp_(t){return xg.simpleCollapseStructure(t)?t.toString():xg.contentCollapseStructure(t)?"(c "+t.slice(1).map(xg.makeSexp_).join(" ")+")":"("+t.map(xg.makeSexp_).join(" ")+")"}static fromString_(t){let e=t.replace(/\(/g,"[");return e=e.replace(/\)/g,"]"),e=e.replace(/ /g,","),e=e.replace(/c/g,'"c"'),JSON.parse(e)}static fromNode_(t){if(!t)return[];const e=t.contentNodes;let s;e.length&&(s=e.map(xg.fromNode_),s.unshift("c"));const i=t.childNodes;if(!i.length)return e.length?[t.id,s]:t.id;const r=i.map(xg.fromNode_);return e.length&&r.unshift(s),r.unshift(t.id),r}static tree_(t,e,s,i=0,r=1,n=1){if(!e)return[];const o=e.id,a=[o],l=t.get(o.toString());if(!e.childNodes.length)return xg.addAria(l,i,r,n,s),e.id;const c=xg.combineContentChildren(e.type,e.role,e.contentNodes,e.childNodes);l&&xg.addOwns_(l,c);for(let e,r=0,n=c.length;e=c[r];r++)a.push(xg.tree_(t,e,s,i+1,r+1,n));return xg.addAria(l,i,r,n,s),a}static addAria(t,e,s,i,r){const n=r.tree?e?"treeitem":"tree":"treeitem";r.aria&&t&&(t.setAttribute("aria-level",e.toString()),t.setAttribute("aria-posinset",s.toString()),t.setAttribute("aria-setsize",i.toString()),t.setAttribute("role",n),t.hasAttribute(mg.OWNS)&&t.setAttribute("aria-owns",t.getAttribute(mg.OWNS)))}static addOwns_(t,e){const s=t.getAttribute(mg.COLLAPSED),i=s?xg.realLeafs_(xg.fromString(s).array):e.map(t=>t.id);t.setAttribute(mg.OWNS,i.join(" "))}static realLeafs_(t){if(xg.simpleCollapseStructure(t))return[t];if(xg.contentCollapseStructure(t))return[];let e=[];for(let s=1;sxg.simpleCollapseStructure(t)?t:xg.contentCollapseStructure(t)?t[1]:t[0])}subtreeNodes(t){if(!this.isRoot(t))return[];const e=(t,s)=>{xg.simpleCollapseStructure(t)?s.push(t):(xg.contentCollapseStructure(t)&&(t=t.slice(1)),t.forEach(t=>e(t,s)))},s=this.levelsMap[t],i=[];return e(s.slice(1),i),i}}function yg(t,e,s){let i=null;if(!t.length)return i;const r=s[s.length-1],n=r&&r.length,o=e&&e.length,a=ng.getInstance();if(n&&o){if(e[0].type===gm.INFIXOP&&e[0].role===Em.IMPLICIT)return i=t.pop(),r.push(a.postfixNode_(r.pop(),t)),i;i=t.shift();const s=a.prefixNode_(e.shift(),t);return e.unshift(s),i}return n?(r.push(a.postfixNode_(r.pop(),t)),i):(o&&e.unshift(a.prefixNode_(e.shift(),t)),i)}function Ng(t,e,s){if(!e.length)return t;const i=t.pop(),r=e.shift(),n=s.shift();if(r.type===gm.INFIXOP&&(r.role===Em.IMPLICIT||r.role===Em.UNIT)){kp.getInstance().output("Juxta Heuristic Case 2");const o=(i?[i,r]:[r]).concat(n);return Ng(t.concat(o),e,s)}if(!i)return kp.getInstance().output("Juxta Heuristic Case 3"),Ng([r].concat(n),e,s);const o=n.shift();if(!o){kp.getInstance().output("Juxta Heuristic Case 9");const n=rg.factory.makeBranchNode(gm.INFIXOP,[i,e.shift()],[r],r.textContent);return n.role=Em.IMPLICIT,rg.run("combine_juxtaposition",n),e.unshift(n),Ng(t,e,s)}if(If(i)||If(o))return kp.getInstance().output("Juxta Heuristic Case 4"),Ng(t.concat([i,r,o]).concat(n),e,s);let a=null;return Qf(i)&&Qf(o)?(kp.getInstance().output("Juxta Heuristic Case 5"),i.contentNodes.push(r),i.contentNodes=i.contentNodes.concat(o.contentNodes),i.childNodes.push(o),i.childNodes=i.childNodes.concat(o.childNodes),o.childNodes.forEach(t=>t.parent=i),r.parent=i,i.addMathmlNodes(r.mathml),i.addMathmlNodes(o.mathml),a=i):Qf(i)?(kp.getInstance().output("Juxta Heuristic Case 6"),i.contentNodes.push(r),i.childNodes.push(o),o.parent=i,r.parent=i,i.addMathmlNodes(r.mathml),i.addMathmlNodes(o.mathml),a=i):Qf(o)?(kp.getInstance().output("Juxta Heuristic Case 7"),o.contentNodes.unshift(r),o.childNodes.unshift(i),i.parent=o,r.parent=o,o.addMathmlNodes(r.mathml),o.addMathmlNodes(i.mathml),a=o):(kp.getInstance().output("Juxta Heuristic Case 8"),a=rg.factory.makeBranchNode(gm.INFIXOP,[i,o],[r],r.textContent),a.role=Em.IMPLICIT),t.push(a),Ng(t.concat(n),e,s)}function vg(t){return t.childNodes[0]&&t.childNodes[0].childNodes[0]&&Qp(t.childNodes[0])===Xm.MPADDED&&Qp(t.childNodes[0].childNodes[0])===Xm.MPADDED&&Qp(t.childNodes[0].childNodes[t.childNodes[0].childNodes.length-1])===Xm.MPHANTOM}rg.add(new hg("combine_juxtaposition",function(t){for(let e,s=t.childNodes.length-1;e=t.childNodes[s];s--)Qf(e)&&!e.nobreaking&&(t.childNodes.splice(s,1,...e.childNodes),t.contentNodes.splice(s,0,...e.contentNodes),e.childNodes.concat(e.contentNodes).forEach(function(e){e.parent=t}),t.addMathmlNodes(e.mathml));return t})),rg.add(new hg("propagateSimpleFunction",t=>(t.type!==gm.INFIXOP&&t.type!==gm.FRACTION||!t.childNodes.every(qf)||(t.role=Em.COMPFUNC),t),t=>"clearspeak"===rg.options.domain)),rg.add(new hg("simpleNamedFunction",t=>(t.role!==Em.UNIT&&-1!==["f","g","h","F","G","H"].indexOf(t.textContent)&&(t.role=Em.SIMPLEFUNC),t),t=>"clearspeak"===rg.options.domain)),rg.add(new hg("propagateComposedFunction",t=>(t.type===gm.FENCED&&t.childNodes[0].role===Em.COMPFUNC&&(t.role=Em.COMPFUNC),t),t=>"clearspeak"===rg.options.domain)),rg.add(new hg("multioperator",t=>{t.role!==Em.UNKNOWN||t.textContent.length<=1||(ng.compSemantics(t,"role",Em),ng.compSemantics(t,"type",gm))})),rg.add(new dg("convert_juxtaposition",t=>{let e=pf(t,function(t){return t.textContent===Cm.invisibleTimes&&t.type===gm.OPERATOR});e=e.rel.length?function(t){const e=[],s=[];let i=t.comp.shift(),r=null,n=[];for(;t.comp.length;)if(n=[],i.length)r&&e.push(r),s.push(i),r=t.rel.shift(),i=t.comp.shift();else{for(r&&n.push(r);!i.length&&t.comp.length;)i=t.comp.shift(),n.push(t.rel.shift());r=yg(n,i,s)}n.length||i.length?(e.push(r),s.push(i)):(n.push(r),yg(n,i,s));return{rel:e,comp:s}}(e):e,t=e.comp[0];for(let s,i,r=1;s=e.comp[r],i=e.rel[r-1];r++)t.push(i),t=t.concat(s);return e=pf(t,function(t){return t.textContent===Cm.invisibleTimes&&(t.type===gm.OPERATOR||t.type===gm.INFIXOP)}),e.rel.length?Ng(e.comp.shift(),e.rel,e.comp):t})),rg.add(new hg("simple2prefix",t=>(t.textContent.length>1&&!t.textContent[0].match(/[A-Z]/)&&(t.role=Em.PREFIXFUNC),t),t=>"braille"===rg.options.modality&&t.type===gm.IDENTIFIER)),rg.add(new hg("detect_cycle",t=>{t.type=gm.MATRIX,t.role=Em.CYCLE;const e=t.childNodes[0];return e.type=gm.ROW,e.role=Em.CYCLE,e.textContent="",e.contentNodes=[],t},t=>t.type===gm.FENCED&&t.childNodes[0].type===gm.INFIXOP&&t.childNodes[0].role===Em.IMPLICIT&&t.childNodes[0].childNodes.every(function(t){return t.type===gm.NUMBER})&&t.childNodes[0].contentNodes.every(function(t){return t.role===Em.SPACE}))),rg.add(new dg("intvar_from_implicit",function(t){const e=t[0].childNodes;t.splice(0,1,...e),t.forEach(t=>t.parent=null)},t=>t[0]&&Yf(t[0]))),rg.add(new hg("intvar_from_fraction",function(t){const e=t.childNodes[1],s=e.childNodes[0];if(Sf(s))return void(s.role=Em.INTEGRAL);if(!Yf(s))return;const i=s.childNodes.length,r=s.childNodes[i-2],n=s.childNodes[i-1];if(Sf(n))return void(n.role=Em.INTEGRAL);if(Lf(r,n)){const t=ng.getInstance().prefixNode_(n,[r]);t.role=Em.INTEGRAL,2===i?e.childNodes[0]=t:(s.childNodes.pop(),s.contentNodes.pop(),s.childNodes[i-2]=t,t.parent=s)}},t=>{if(t.type!==gm.INTEGRAL)return!1;const[,e,s]=t.childNodes;return s.type===gm.EMPTY&&e.type===gm.FRACTION})),rg.add(new hg("rewrite_subcases",function(t){t.addAnnotation("Emph","top");let e=[];if(t.hasAnnotation("Emph","left")){const s=Cg(t.childNodes[0].childNodes[0].childNodes[0],!0);s.forEach(t=>t.addAnnotation("Emph","left")),e=e.concat(s);for(let e,s=0;e=t.childNodes[s];s++)e.childNodes.shift()}if(e.push(t),t.hasAnnotation("Emph","right")){const s=Cg(t.childNodes[0].childNodes[t.childNodes[0].childNodes.length-1].childNodes[0]);s.forEach(t=>t.addAnnotation("Emph","left")),e=e.concat(s),t.childNodes[0].childNodes.pop()}ng.tableToMultiline(t);const s=ng.getInstance().row(e),i=t.annotation.Emph;return t.annotation.Emph=["table"],i.forEach(t=>s.addAnnotation("Emph",t)),s},t=>{let e=!0,s=!0;const i=t.childNodes[0].childNodes[0];if(!i)return!1;if(vg(i.mathmlTree)){for(let s,i=1;s=t.childNodes[i];i++)if(s.childNodes[0].childNodes.length){e=!1;break}}else e=!1;e&&t.addAnnotation("Emph","left");if(vg(t.childNodes[0].childNodes[t.childNodes[0].childNodes.length-1].mathmlTree)){const e=t.childNodes[0].childNodes.length;for(let i,r=1;i=t.childNodes[r];r++)if(i.childNodes.length>=e){s=!1;break}}else s=!1;return s&&t.addAnnotation("Emph","right"),e||s}));const Tg=[gm.PUNCTUATED,gm.RELSEQ,gm.MULTIREL,gm.INFIXOP,gm.PREFIXOP,gm.POSTFIXOP];function Cg(t,e){if(!t.childNodes.length)return Lg(t),[t];let s=null;if(t.type===gm.PUNCTUATED&&(e?t.role===Em.ENDPUNCT:t.role===Em.STARTPUNCT)){const i=t.childNodes;Lg(i[e?i.length-1:0])&&(t=i[e?0:i.length-1],s=i[e?i.length-1:0])}if(-1!==Tg.indexOf(t.type)){const i=t.childNodes;Lg(i[e?i.length-1:0]);const r=xg.combineContentChildren(t.type,t.role,t.contentNodes,t.childNodes);return s&&(e?r.push(s):r.unshift(s)),r}return s?e?[t,s]:[s,t]:[t]}const Ag={[Em.METRIC]:Em.METRIC,[Em.VBAR]:Em.NEUTRAL,[Em.OPENFENCE]:Em.OPEN,[Em.CLOSEFENCE]:Em.CLOSE};function Lg(t){if(t.type!==gm.PUNCTUATION)return!1;const e=Ag[t.role];return!!e&&(t.role=e,t.type=gm.FENCE,t.addAnnotation("Emph","fence"),!0)}function Sg(t,e,s,i=s){const r=[];for(;t&&t.role===s;)r.push(t),t=e.shift();return r.length?(t&&e.unshift(t),[1===r.length?r[0]:Rg(r,i),e]):[t,e]}function Rg(t,e){const s=rg.factory.makeBranchNode(gm.PUNCTUATION,t,[]);return s.role=e,s}function Mg(t){return["[","\uff3b"].includes(t)}function Ig(t){return["]","\uff3d"].includes(t)}function wg(t){return["(","\u207d","\u208d"].includes(t)}function kg(t){return[")","\u207e","\u208e"].includes(t)}function Og(t){return t.role===Em.INFTY||t.type===gm.PREFIXOP&&t.childNodes[0].role===Em.INFTY}function Dg(t){const e=t.childNodes[0];if(t.type!==gm.FENCED||(null==e?void 0:e.type)!==gm.PUNCTUATED||3!==(null==e?void 0:e.childNodes.length)||1!==(null==e?void 0:e.contentNodes.length)||(null==e?void 0:e.childNodes[1].role)!==Em.COMMA)return!1;const s=t.childNodes[0].childNodes[0],i=t.childNodes[0].childNodes[2],r=t.contentNodes[0].textContent,n=t.contentNodes[1].textContent;return!!(Mg(r)&&kg(n)||wg(r)&&Ig(n))||!(!wg(r)||!kg(n)||!Og(s)&&!Og(i))}function Pg(t){return _g(t)||function(t){return Fg(t)||t.type===gm.INFIXOP&&t.role===Em.IMPLICIT&&(2===t.childNodes.length&&(Fg(t.childNodes[0])||_g(t.childNodes[0]))&&Fg(t.childNodes[1])||3===t.childNodes.length&&_g(t.childNodes[0])&&Fg(t.childNodes[1])&&Fg(t.childNodes[2]))}(t)||function(t){return t.type===gm.PUNCTUATED&&t.role===Em.ENDPUNCT&&2===t.childNodes.length&&t.childNodes[1].role===Em.DEGREE&&(Fg(t.childNodes[0])||jg(t.childNodes[0])||t.childNodes[0].type===gm.PREFIXOP&&t.childNodes[0].role===Em.NEGATIVE&&(Fg(t.childNodes[0].childNodes[0])||jg(t.childNodes[0].childNodes[0])))}(t)||function(t){return t.type===gm.PREFIXOP&&t.role===Em.NEGATIVE&&Bg(t.childNodes[0])&&t.childNodes[0].type!==gm.PREFIXOP&&t.childNodes[0].type!==gm.APPL&&t.childNodes[0].type!==gm.PUNCTUATED}(t)||function(t){return t.type===gm.APPL&&(t.childNodes[0].role===Em.PREFIXFUNC||t.childNodes[0].role===Em.SIMPLEFUNC)&&(Bg(t.childNodes[1])||t.childNodes[1].type===gm.FENCED&&Bg(t.childNodes[1].childNodes[0]))}(t)}function Bg(t){return t.hasAnnotation("clearspeak","simple")}function Fg(t){return t.type===gm.IDENTIFIER&&(t.role===Em.LATINLETTER||t.role===Em.GREEKLETTER||t.role===Em.OTHERLETTER||t.role===Em.SIMPLEFUNC)}function jg(t){return t.type===gm.NUMBER&&(t.role===Em.INTEGER||t.role===Em.FLOAT)}function _g(t){return jg(t)||function(t){if(Ug("Fraction_Over")||Ug("Fraction_FracOver"))return!1;if(t.type!==gm.FRACTION||t.role!==Em.VULGAR)return!1;if(Ug("Fraction_Ordinal"))return!0;const e=parseInt(t.childNodes[0].textContent,10),s=parseInt(t.childNodes[1].textContent,10);return e>0&&e<20&&s>0&&s<11}(t)}function Ug(t){return Fp.getInstance().options.style===t}function Hg(t){return t.type===gm.TEXT&&t.role!==Em.LABEL||t.type===gm.PUNCTUATED&&t.role===Em.TEXT&&jg(t.childNodes[0])&&function(t){for(let e=0;e{const e=[];let s=t.shift();for(;s;)[s,t]=Sg(s,t,Em.FULLSTOP,Em.ELLIPSIS),[s,t]=Sg(s,t,Em.DASH),e.push(s),s=t.shift();return e},t=>t.length>1)),rg.add(new dg("op_with_limits",t=>{const e=t[0];return e.type=gm.LARGEOP,e.role=Em.SUM,t},t=>(t[0].type===gm.OPERATOR||t[0].type===gm.IDENTIFIER&&"OP"===t[0].attributes.texclass)&&t.slice(1).some(t=>t.type===gm.RELSEQ||t.type===gm.MULTIREL||t.type===gm.INFIXOP&&t.role===Em.ELEMENT||t.type===gm.PUNCTUATED&&t.role===Em.SEQUENCE))),rg.add(new class extends cg{}("function_from_identifiers",t=>{const e=Vp(t.childNodes).map(t=>t.textContent.trim()).join("");if(Sm.Meaning.get(e).type===gm.UNKNOWN)return t;const s=rg.factory.makeLeafNode(e,ng.getInstance().font(t.getAttribute("mathvariant")));return s.mathmlTree=t,s},t=>{const e=Vp(t.childNodes);return!(e.length<2)&&e.every(t=>Qp(t)===Xm.MI&&Sm.Meaning.get(t.textContent.trim()).role===Em.LATINLETTER)})),rg.add(new dg("bracketed_interval",t=>{const e=t[0],s=t[1],i=t.slice(2),r=ng.getInstance().row(i),n=rg.factory.makeBranchNode(gm.FENCED,[r],[e,s]);return n.role=Em.INTERVAL,n},t=>{const e=t[0],s=t[1],i=t.slice(2);if(!(e&&s&&(Ig(e.textContent)&&(Mg(s.textContent)||Ig(s.textContent))||Mg(s.textContent)&&(Mg(e.textContent)||Ig(e.textContent)))))return!1;if(1===i.length&&i[0].type===gm.PUNCTUATED&&1===i[0].contentNodes.length)return!0;const r=pf(i,kf);return!(1!==r.rel.length||!r.comp[0].length||!r.comp[1].length)})),rg.add(new hg("interval_heuristic",t=>(t.role=Em.INTERVAL,t),t=>Dg(t))),rg.add(new hg("propagateInterval",t=>(t.childNodes.forEach(t=>{Dg(t)&&(t.role=Em.INTERVAL)}),t),t=>ig(t))),rm(new tm("clearspeak","simple",function(t){return Pg(t)?"simple":""})),nm("clearspeak","simple"),rm(new tm("clearspeak","unit",function(t){return Hg(t)?"unit":""})),nm("clearspeak","unit");const Wg=[gm.MULTIREL,gm.RELSEQ,gm.APPL,gm.ROW,gm.LINE],zg=[gm.SUBSCRIPT,gm.SUPERSCRIPT,gm.OVERSCORE,gm.UNDERSCORE];function qg(t,e){const s=t.parent;if(!s)return!1;const i=s.type;return-1!==Wg.indexOf(i)||i===gm.PREFIXOP&&s.role===Em.NEGATIVE&&!e.script&&!e.enclosed||i===gm.PREFIXOP&&s.role===Em.GEOMETRY||!(i!==gm.PUNCTUATED||e.enclosed&&s.role!==Em.TEXT)}rm(new em("nemeth","number",function(t,e){return t.childNodes.length?(-1!==zg.indexOf(t.type)&&(e.script=!0),t.type===gm.FENCED?(e.number=!1,e.enclosed=!0,["",e]):t.type===gm.PREFIXOP&&t.role!==Em.GEOMETRY&&t.role!==Em.NEGATIVE?(e.number=!1,["",e]):(qg(t,e)&&(e.number=!0,e.enclosed=!1),["",e])):(qg(t,e)&&(e.number=!0,e.script=!1,e.enclosed=!1),[e.number?"number":"",{number:!1,enclosed:e.enclosed,script:e.script}])},{number:!0})),nm("nemeth","number"),rm(new em("depth","depth",function(t){return t.parent?[parseInt(t.parent.annotation.depth[0])+1]:[1]})),nm("depth","depth");class Vg{static empty(){const t=Xp(""),e=new Vg(t,new Op);return e.mathml=t,e}static fromNode(t,e){const s=Vg.empty();return s.root=t,e&&(s.mathml=e),s}static fromRoot(t,e){let s=t;for(;s.parent;)s=s.parent;const i=Vg.fromNode(s);return e&&(i.mathml=e),i}static fromXml(t){const e=Vg.empty();return t.childNodes[0]&&(e.root=bf.fromXml(t.childNodes[0])),e}constructor(t,e){this.mathml=t,this.options=e,this.parser=new lg(e),this.root=this.parser.parse(t),this.root=ng.rewriteTrivialTable(this.root),this.collator=this.parser.getFactory().leafMap.collateMeaning();const s=this.collator.newDefault();s&&(this.parser=new lg(e),this.parser.getFactory().defaultMap=s,this.root=this.parser.parse(t)),Xg.visit(this.root,{}),function(t){for(const e of sm.values())e.active&&e.annotate(t);for(const e of im.values())e.active&&e.visit(t,Object.assign({},e.def))}(this.root),kp.getInstance().generate(()=>function(t){const e=new Map,s=t=>{if(t.mathmlTree){const s=e.get(t.mathmlTree)||new Set;s.add(t),e.set(t.mathmlTree,s)}t.childNodes.forEach(s),t.contentNodes.forEach(s)};s(t);const i=[];for(const[t,s]of e)s.size>1&&i.push(`DUPLICATE mathmlTree: ${Qp(t)} shared by `+Array.from(s).map(t=>`${t.id}:${t.type}:${t.role}`).join(", "));return i}(this.root))}xml(t){const e=Xp(""),s=this.root.xml(e.ownerDocument,t);return e.appendChild(s),e}toString(t){return Zp(this.xml(t))}formatXml(t){return Kp(this.toString(t))}displayTree(){this.root.displayTree()}replaceNode(t,e){const s=t.parent;s?s.replaceChild(t,e):this.root=e}toJson(){const t={};return t.stree=this.root.toJson(),t}}const Xg=new em("general","unit",(t,e)=>($f(t)&&(t.role=Em.UNIT),!1));function Gg(t,e){return new Vg(t,e)}const Jg=[],Kg=!0,$g=new Map;function Yg(t){kp.getInstance().generate(()=>["WALKING START: ",t.toString()]);const e=function(t){for(let e,s=0;e=Jg[s];s++)if(e.test(t))return e.constr(t);return null}(t);let s;if(e)return s=e.getMathml(),kp.getInstance().generate(()=>["WALKING END (1): ",t.toString()]),ub(s,t);if(1===t.mathml.length){if(kp.getInstance().output("Walktree Case 0"),!t.childNodes.length){kp.getInstance().output("Walktree Case 0.1"),s=t.mathml[0],bg(s,t),kp.getInstance().generate(()=>["WALKING END (2): ",t.toString()]);return ub(s,t.getAnnotation("empty").length&&!t.hasAnnotation("empty","MFENCED")?t:void 0)}const e=t.childNodes[0];if(1===t.childNodes.length&&e.type===gm.EMPTY)return kp.getInstance().output("Walktree Case 0.2"),s=t.mathml[0],bg(s,t),s.appendChild(Yg(e)),kp.getInstance().generate(()=>["WALKING END (3): ",t.toString()]),ub(s);t.childNodes.forEach(t=>{t.mathml.length||t.addMathmlNodes([Nb(t)])})}const i=t.contentNodes.map(xb);vb(t,i);const r=t.childNodes.map(Yg),n=xg.combineContentChildren(t.type,t.role,i,r);if(s=t.mathmlTree,null===s)kp.getInstance().output("Walktree Case 1"),s=Qg(n,t);else{s=yb(s);const e=lb(n);if(kp.getInstance().output("Walktree Case 2"),e){kp.getInstance().output("Walktree Case 2.1");const i=bb(e);if(i&&t.parent&&e!==s&&lf(s,i)){kp.getInstance().output("Walktree Case 2.1.fallback");const e=Tb(s);if(e!==s&&e.hasAttribute(mg.ID))return eb(bb(s)||s,n,t),$g.has(t.id)||($g.set(t.id,!0),bg(s,t)),kp.getInstance().generate(()=>["WALKING END (4): ",t.toString()]),ub(s,t);s=e}else s=i}else kp.getInstance().output("Walktree Case 2.2"),s=Tb(s)}return eb(s,n,t),$g.has(t.id)||($g.set(t.id,!0),bg(s,t)),kp.getInstance().generate(()=>["WALKING END (5): ",t.toString()]),ub(s,t)}function Qg(t,e){const s=function(t){const e=lb(t);if(!e)return{type:ab.INVALID,node:null};const s=lb(t.slice().reverse());if(e===s)return{type:ab.VALID,node:e};const i=cb(e),r=function(t,e){let s=0;for(;t[s]&&-1===e.indexOf(t[s]);)s++;return t.slice(0,s+1)}(i,t),n=cb(s,function(t){return-1!==r.indexOf(t)}),o=n[0],a=r.indexOf(o);if(-1===a)return{type:ab.INVALID,node:null};return{type:r.length!==i.length?ab.PRUNED:hb(r[a+1],n[1])?ab.VALID:ab.INVALID,node:o}}(t);let i=s.node;const r=s.type;if(r!==ab.VALID||!sf(i)||!i.parentNode&&e.parent)if(kp.getInstance().output("Walktree Case 1.1"),i=Eg(),r===ab.PRUNED)kp.getInstance().output("Walktree Case 1.1.0"),i=function(t,e,s){let i=pb(e);if(tf(i)){kp.getInstance().output("Walktree Case 1.1.0.0"),Zg(i,t),Vp(i.childNodes).forEach(function(e){t.appendChild(e)});const e=t;t=i,i=e}const r=s.indexOf(e);return s[r]=i,Gp(i,t),t.appendChild(i),s.forEach(function(e){t.appendChild(e)}),t}(i,s.node,t);else if(t[0]){kp.getInstance().output("Walktree Case 1.1.1");const s=lb(t);if(s){kp.getInstance().output("Walktree Case 1.1.1.0");const r=function(t,e){const s=Vp(t.childNodes);let i=1/0,r=-1/0;return e.forEach(function(t){const e=s.indexOf(t);-1!==e&&(i=Math.min(i,e),r=Math.max(r,e))}),s.slice(i,r+1)}(bb(s),t);!function(t,e){if("postfixop"!==t.type)return;const s=e[e.length-1],i=s.nextSibling;i&&function(t){return Qp(t)===Xm.MROW&&"ORD"===t.getAttribute("data-mjx-texclass")&&0===t.childNodes.length}(i)&&e.push(i)}(e,r),Gp(s,i),r.forEach(function(t){i.appendChild(t)})}else kp.getInstance().output("Walktree Case 1.1.1.1"),Zg(i,t[0]),i=t[0]}return e.mathmlTree||(e.mathmlTree=i),i}function Zg(t,e){for(const s of fg)t.hasAttribute(s)&&(e.setAttribute(s,t.getAttribute(s)),t.removeAttribute(s))}function tb(t,e){const s=[];let i=Vp(t.childNodes);for(;i.length;){const t=i.shift();t.nodeType===qp.ELEMENT_NODE&&(t.hasAttribute(mg.TYPE)||-1!==e.indexOf(t)?s.push(t):i=Vp(t.childNodes).concat(i))}return s}function eb(t,e,s){if(!e.length)return;if(1===e.length&&t===e[0])return;const i=s.role===Em.IMPLICIT&&rg.flags.combine_juxtaposition?function(t,e,s){const i=[];let r=Vp(t.childNodes),n=!1;for(;r.length;){const t=r.shift();if(t.hasAttribute(mg.TYPE)){i.push(t);continue}const s=tb(t,e);0!==s.length&&(1!==s.length?(n?t.setAttribute("AuxiliaryImplicit",!0):n=!0,r=s.concat(r)):i.push(t))}const o=[],a=s.childNodes.map(function(t){return t.mathmlTree});for(;a.length;){const t=a.pop();if(t){if(-1!==i.indexOf(t))break;-1!==e.indexOf(t)&&o.unshift(t)}}return i.concat(o)}(t,e,s):Vp(t.childNodes);if(!i.length)return void e.forEach(function(e){rb(t,e)||t.appendChild(e)});let r=0;const n=af(of,"mergeChildren infinite loop");for(;e.length;){n();const s=e[0];if(i[r]===s||ob(i[r],s)){e.shift(),r++;continue}if(i[r]&&-1===e.indexOf(i[r])){r++;continue}if(lf(s,t)){e.shift();continue}const o=i[r];if(!o){if(s.parentNode){t=bb(s),e.shift();continue}const i=e[1];if(i&&i.parentNode){let r=bb(i),n=i;for(;r&&r!==t&&nf(r);)n=r,r=bb(r);ib(t=r,s,n),e.shift(),e.shift();continue}ib(t,s,null),e.shift();continue}sb(t,o,s),e.shift()}}function sb(t,e,s){let i=e,r=bb(i);const n=af(of,()=>`insertNewChild loop: next=${null==r?void 0:r.tagName} parent=${null==i?void 0:i.tagName}`);for(;r&&nb(r,i)&&!i.hasAttribute("AuxiliaryImplicit")&&r!==t;)n(),i=r,r=bb(i);r&&(ib(r,s,i),i.removeAttribute("AuxiliaryImplicit"))}function ib(t,e,s){rb(t,e)||(Qp(t)===Xm.MACTION?ib(bb(t),e,t):t.insertBefore(e,s))}function rb(t,e){return t===e||lf(t,e)}function nb(t,e){if(Qp(t)!==Xm.MACTION)return t.firstChild===e;const s=parseInt(t.getAttribute("selection"))||1;return t.childNodes[s-1]===e}function ob(t,e){const s=Cm.functionApplication;if(t&&e&&t.textContent&&e.textContent&&t.textContent===s&&e.textContent===s&&"true"===e.getAttribute(mg.ADDED)){for(let s,i=0;s=t.attributes[i];i++)e.hasAttribute(s.nodeName)||e.setAttribute(s.nodeName,s.nodeValue);return Gp(t,e),!0}return!1}var ab;function lb(t){let e=0,s=null;for(;!s&&e!1),i=[t],r=af(of,()=>{var e;return`pathToRoot infinite loop at ${t.tagName} parent=${null===(e=t.parentNode)||void 0===e?void 0:e.tagName}`});for(;!s(t)&&!tf(t)&&t.parentNode;)r(),t=bb(t),i.unshift(t);return i}function hb(t,e){return!(!t||!e||db(t,"previousSibling")||db(e,"nextSibling"))}function db(t,e){let s=t[e];for(;s;){if(!gb(s))return!0;s=s[e]}return!1}function ub(t,e){var s,i;const r=e&&!e.hasAnnotation("empty","MFENCED")&&e.getAnnotation("empty"),n=null===(s=null==e?void 0:e.parent)||void 0===s?void 0:s.mathmlTree,o=af(of,()=>{var e;return`ascendNewNode infinite loop at ${t.tagName} parent=${null===(e=t.parentNode)||void 0===e?void 0:e.tagName}`}),a=!(!e||!e.parent);for(;t!==n&&!tf(t)&&(!a||!tf(bb(t)))&&(mb(t)||r&&t.parentNode&&(!n||lf(t,n))&&r.includes(null===(i=bb(t).tagName)||void 0===i?void 0:i.toUpperCase())&&fb(t));)o(),t=bb(t);return t}function pb(t){const e=Vp(t.childNodes);if(!e)return t;const s=e.filter(function(t){return t.nodeType===qp.ELEMENT_NODE&&!ef(t)});return 1===s.length&&sf(s[0])&&!s[0].hasAttribute(mg.TYPE)?pb(s[0]):t}function mb(t){const e=bb(t);return!(!e||!sf(e))&&fb(t)}function fb(t){const e=bb(t);return!!e&&Vp(e.childNodes).every(function(e){return e===t||gb(e)})}function gb(t){if(t.nodeType!==qp.ELEMENT_NODE)return!0;if(!t||ef(t))return!0;const e=Vp(t.childNodes);return!(!sf(t)&&e.length||function(t){return!!t&&Qm.includes(Qp(t))}(t)||ff(t)||t.hasAttribute(mg.TYPE)||rf(t))&&Vp(t.childNodes).every(gb)}function bb(t){return t.parentNode}function Eb(t,e){const s=new xg(e);t.setAttribute(mg.COLLAPSED,s.toString())}function xb(t){if(t.mathml.length)return ub(Yg(t),t);const e=Kg?Nb(t):Eg();return t.addMathmlNodes([e]),e}function yb(t){if(Qp(t)!==Xm.MFENCED)return t;const e=Eg();for(let s,i=0;s=t.attributes[i];i++)-1===["open","close","separators"].indexOf(s.name)&&e.setAttribute(s.name,s.value);return Vp(t.childNodes).forEach(function(t){e.appendChild(t)}),Gp(t,e),e}function Nb(t){const e=Jp("mo"),s=(i=t.textContent,Ip.document.createTextNode(i));var i;return e.appendChild(s),bg(e,t),e.setAttribute(mg.ADDED,"true"),e}function vb(t,e){const s=t.type+(t.textContent?","+t.textContent:"");e.forEach(function(t){Tb(t).setAttribute(mg.OPERATOR,s)})}function Tb(t){if(ef(t))return t;const e=Vp(t.childNodes);if(!e)return t;const s=e.filter(function(t){return!gb(t)}),i=[];for(let t,e=0;t=s[e];e++)if(sf(t)&&t.getAttribute(mg.TYPE)!==gm.PUNCTUATION){const e=Tb(t);e&&e!==t&&i.push(e)}else i.push(t);return 1===i.length?i[0]:t}function Cb(t){return Kp(t.toString()).toString().replace(new RegExp(pg,"g"),"")}function Ab(t,e){const s=!!e,i=e||[],r=t.parent,n=t.contentNodes.map(function(t){return t.id});n.unshift("c");const o=[t.id,n];for(let e,n=0;e=t.childNodes[n];n++){const t=Yg(e);i.push(t);const n=Tb(t);r&&!s&&n.setAttribute(mg.PARENT,r.id.toString()),o.push(e.id)}return o}!function(t){t.VALID="valid",t.INVALID="invalid",t.PRUNED="pruned"}(ab||(ab={}));class Lb{constructor(t){this.semantic=t}}class Sb extends Lb{static test(t){return!t.mathmlTree&&t.type===gm.LINE&&t.role===Em.BINOMIAL}constructor(t){super(t),this.mml=t.mathmlTree}getMathml(){if(!this.semantic.childNodes.length)return this.mml;const t=this.semantic.childNodes[0];if(this.mml=Yg(t),this.mml.hasAttribute(mg.TYPE)){const t=Eg();Gp(this.mml,t),t.appendChild(this.mml),this.mml=t}return bg(this.mml,this.semantic),this.mml}}class Rb extends Lb{static test(t){var e,s;return!!t.getAnnotation("collapsed").length&&(null===(s=null===(e=t.mathmlTree)||void 0===e?void 0:e.parentNode)||void 0===s?void 0:s.childNodes.length)>2}getMathml(){Yg(this.semantic.childNodes[0]),Yg(this.semantic.childNodes[1]);const t=this.semantic.mathmlTree,e=Qg([this.semantic.childNodes[0].mathmlTree,t],this.semantic);return bg(e,this.semantic),e}}class Mb extends Lb{static test(t){if(!t.mathmlTree||!t.childNodes.length)return!1;const e=Qp(t.mathmlTree),s=t.childNodes[0].role;return e===Xm.MSUBSUP&&s===Em.SUBSUP||e===Xm.MUNDEROVER&&s===Em.UNDEROVER}constructor(t){super(t),this.mml=t.mathmlTree}getMathml(){const t=this.semantic.childNodes[0],e=t.childNodes[0],s=this.semantic.childNodes[1],i=t.childNodes[1],r=Yg(s),n=Yg(e),o=Yg(i);return bg(this.mml,this.semantic),this.mml.setAttribute(mg.CHILDREN,gg([e,i,s])),[n,o,r].forEach(t=>Tb(t).setAttribute(mg.PARENT,this.mml.getAttribute(mg.ID))),this.mml.setAttribute(mg.TYPE,t.role),Eb(this.mml,[this.semantic.id,[t.id,e.id,i.id],s.id]),this.mml}}class Ib extends Lb{static multiscriptIndex(t){return t.type===gm.PUNCTUATED&&t.contentNodes[0].role===Em.DUMMY&&t.hasAnnotation("general","script")?Ab(t):(Yg(t),t.id)}static createNone_(t){const e=Jp("none");return t&&bg(e,t),e.setAttribute(mg.ADDED,"true"),e}constructor(t){super(t),this.mml=t.mathmlTree}completeMultiscript(t,e){const s=Vp(this.mml.childNodes).slice(1);let i=0;const r=t=>{for(const e of t){const t=s[i];if(t&&e===parseInt(t.getAttribute(mg.ID)))t.setAttribute(mg.PARENT,this.semantic.id.toString()),i++;else if(t&&e===parseInt(Tb(t).getAttribute(mg.ID)))Tb(t).setAttribute(mg.PARENT,this.semantic.id.toString()),i++;else{const s=this.semantic.querySelectorAll(t=>t.id===e);this.mml.insertBefore(Ib.createNone_(s[0]),t||null)}}};r(t),s[i]&&Qp(s[i])!==Xm.MPRESCRIPTS?this.mml.insertBefore(s[i],Jp("mprescripts")):i++,r(e)}}class wb extends Ib{static test(t){if(!t.mathmlTree)return!1;return Qp(t.mathmlTree)===Xm.MMULTISCRIPTS&&(t.type===gm.SUPERSCRIPT||t.type===gm.SUBSCRIPT)}constructor(t){super(t)}getMathml(){let t,e,s;if(bg(this.mml,this.semantic),this.semantic.childNodes[0]&&this.semantic.childNodes[0].role===Em.SUBSUP){const i=this.semantic.childNodes[0];t=i.childNodes[0],e=Ib.multiscriptIndex(this.semantic.childNodes[1]),s=Ib.multiscriptIndex(i.childNodes[1]);const r=[this.semantic.id,[i.id,t.id,s],e];Eb(this.mml,r),this.mml.setAttribute(mg.TYPE,i.role),this.completeMultiscript(xg.interleaveIds(s,e),[])}else{t=this.semantic.childNodes[0],e=Ib.multiscriptIndex(this.semantic.childNodes[1]);const s=[this.semantic.id,t.id,e];Eb(this.mml,s)}const i=xg.collapsedLeafs(s||[],e);return Tb(Yg(t)).setAttribute(mg.PARENT,this.semantic.id.toString()),i.unshift(t.id),this.mml.setAttribute(mg.CHILDREN,i.join(",")),this.mml}}class kb extends Ib{static test(t){return!!t.mathmlTree&&t.type===gm.TENSOR}constructor(t){super(t)}getMathml(){Yg(this.semantic.childNodes[0]);const t=Ib.multiscriptIndex(this.semantic.childNodes[1]),e=Ib.multiscriptIndex(this.semantic.childNodes[2]),s=Ib.multiscriptIndex(this.semantic.childNodes[3]),i=Ib.multiscriptIndex(this.semantic.childNodes[4]);bg(this.mml,this.semantic);const r=[this.semantic.id,this.semantic.childNodes[0].id,t,e,s,i];Eb(this.mml,r);const n=xg.collapsedLeafs(t,e,s,i);return n.unshift(this.semantic.childNodes[0].id),this.mml.setAttribute(mg.CHILDREN,n.join(",")),this.completeMultiscript(xg.interleaveIds(s,i),xg.interleaveIds(t,e)),this.mml}}class Ob extends Lb{static test(t){return!(!t.mathmlTree||!t.fencePointer||t.mathmlTree.getAttribute("data-semantic-type"))}static makeEmptyNode_(t){const e=Eg(),s=new bf(t);return s.type=gm.EMPTY,s.mathmlTree=e,s}static fencedMap_(t,e){e[t.id]=t.mathmlTree,t.embellished&&Ob.fencedMap_(t.childNodes[0],e)}constructor(t){super(t),this.fenced=null,this.fencedMml=null,this.fencedMmlNodes=[],this.ofence=null,this.ofenceMml=null,this.ofenceMap={},this.cfence=null,this.cfenceMml=null,this.cfenceMap={},this.parentCleanup=[]}getMathml(){this.getFenced_(),this.fencedMml=ub(Yg(this.fenced),this.fenced),this.getFencesMml_(),this.fenced.type!==gm.EMPTY||this.fencedMml.parentNode||(this.fencedMml.setAttribute(mg.ADDED,"true"),this.cfenceMml.parentNode.insertBefore(this.fencedMml,this.cfenceMml)),this.getFencedMml_();return this.rewrite_()}fencedElement(t){return t.type===gm.FENCED||t.type===gm.MATRIX||t.type===gm.VECTOR}getFenced_(){let t=this.semantic;for(;!this.fencedElement(t);)t=t.childNodes[0];this.fenced=t.childNodes[0],this.ofence=t.contentNodes[0],this.cfence=t.contentNodes[1],Ob.fencedMap_(this.ofence,this.ofenceMap),Ob.fencedMap_(this.cfence,this.cfenceMap)}getFencedMml_(){let t=this.ofenceMml.nextSibling;for(t=t===this.fencedMml?t:this.fencedMml;t&&t!==this.cfenceMml&&(this.fencedMmlNodes.push(t),!lf(this.cfenceMml,t));)t=t.nextSibling}getFencesMml_(){let t=this.semantic;const e=Object.keys(this.ofenceMap),s=Object.keys(this.cfenceMap);for(;!(this.ofenceMml&&this.cfenceMml||t===this.fenced);)-1===e.indexOf(t.fencePointer)||this.ofenceMml||(this.ofenceMml=t.mathmlTree),-1===s.indexOf(t.fencePointer)||this.cfenceMml||(this.cfenceMml=t.mathmlTree),t=t.childNodes[0];this.ofenceMml||(this.ofenceMml=this.ofence.mathmlTree),this.cfenceMml||(this.cfenceMml=this.cfence.mathmlTree),this.ofenceMml&&(this.ofenceMml=ub(this.ofenceMml)),this.cfenceMml&&(this.cfenceMml=ub(this.cfenceMml))}rewrite_(){let t=this.semantic,e=null;const s=this.introduceNewLayer_();for(bg(s,this.fenced.parent);!this.fencedElement(t);){const i=t.mathmlTree,r=this.specialCase_(t,i);if(r)t=r;else{bg(i,t);const e=[];for(let s,i=1;s=t.childNodes[i];i++)e.push(Yg(s));t=t.childNodes[0]}const n=Jp("dummy"),o=i.childNodes[0];Gp(i,n),Gp(s,i),Gp(i.childNodes[0],s),Gp(n,o),e||(e=i)}return Yg(this.ofence),Yg(this.cfence),this.cleanupParents_(),e||s}specialCase_(t,e){var s;const i=Qp(e);let r,n=null;if(i===Xm.MSUBSUP?(null===(s=t.childNodes[0])||void 0===s?void 0:s.role)===Em.SUBSUP&&(n=t.childNodes[0],r=Mb):i===Xm.MMULTISCRIPTS&&(t.type===gm.SUPERSCRIPT||t.type===gm.SUBSCRIPT?r=wb:t.type===gm.TENSOR&&(r=kb),n=r&&t.childNodes[0]&&t.childNodes[0].role===Em.SUBSUP?t.childNodes[0]:t),!n)return null;const o=n.childNodes[0],a=Ob.makeEmptyNode_(o.id);return n.childNodes[0]=a,e=new r(t).getMathml(),n.childNodes[0]=o,this.parentCleanup.push(e),n.childNodes[0]}introduceNewLayer_(){const t=this.fullFence(this.ofenceMml),e=this.fullFence(this.cfenceMml);let s=Eg();if(Gp(this.fencedMml,s),this.fencedMmlNodes.forEach(t=>s.appendChild(t)),rb(s,t)||s.insertBefore(t,this.fencedMml),rb(s,e)||s.appendChild(e),!s.parentNode){const t=Eg();for(;s.childNodes.length>0;)t.appendChild(s.childNodes[0]);s.appendChild(t),s=t}return s}fullFence(t){const e=this.fencedMml.parentNode;let s=t;for(;s.parentNode&&s.parentNode!==e;)s=s.parentNode;return s}cleanupParents_(){this.parentCleanup.forEach(function(t){const e=t.childNodes[1].getAttribute(mg.PARENT);t.childNodes[0].setAttribute(mg.PARENT,e)})}}class Db extends Lb{static test(t){return!!t.mathmlTree&&t.hasAnnotation("Emph","top")}constructor(t){super(t),this.mrows=[],this.mml=t.mathmlTree}getMathml(){if(this.recurseToTable(this.semantic),this.mrows.length){const t=Eg();this.mml.parentNode.insertBefore(t,this.mml);for(const e of this.mrows)t.appendChild(e);t.appendChild(this.mml)}return this.mml}recurseToTable(t){var e,s;if(t.hasAnnotation("Emph","top")||t.hasAnnotation("Emph","fence")||!t.hasAnnotation("Emph","left")&&!t.hasAnnotation("Emph","right")){if(!t.mathmlTree||Qp(t.mathmlTree)===Xm.MTABLE&&(null===(e=t.annotation.Emph)||void 0===e?void 0:e.length)&&"table"!==t.annotation.Emph[0]){const e=Eg();bg(e,t),this.mrows.unshift(e)}else{if(Qp(t.mathmlTree)===Xm.MTABLE&&(null===(s=t.annotation.Emph)||void 0===s?void 0:s.length)&&"table"===t.annotation.Emph[0])return void this.finalizeTable(t);bg(t.mathmlTree,t)}if(t.childNodes.forEach(this.recurseToTable.bind(this)),t.textContent||"punctuated"===t.type){const e=t.contentNodes.map(t=>{const e=xb(t);return e.hasAttribute("data-semantic-added")?this.mrows.unshift(e):this.recurseToTable(t),e});return void vb(t,e)}t.contentNodes.forEach(this.recurseToTable.bind(this))}else Yg(t)}finalizeTable(t){bg(t.mathmlTree,t),t.contentNodes.forEach(t=>{Yg(t)}),t.childNodes.forEach(t=>{Yg(t)})}}class Pb extends Lb{static test(t){if(!t.mathmlTree||!t.childNodes.length)return!1;const e=Qp(t.mathmlTree),s=t.type;return(s===gm.LIMUPPER||s===gm.LIMLOWER)&&(e===Xm.MSUBSUP||e===Xm.MUNDEROVER)||s===gm.LIMBOTH&&(e===Xm.MSUB||e===Xm.MUNDER||e===Xm.MSUP||e===Xm.MOVER)}static walkTree_(t){t&&Yg(t)}constructor(t){super(t),this.mml=t.mathmlTree}getMathml(){const t=this.semantic.childNodes;return this.semantic.type!==gm.LIMBOTH&&this.mml.childNodes.length>=3&&(this.mml=Qg([this.mml],this.semantic)),bg(this.mml,this.semantic),t[0].mathmlTree||(t[0].mathmlTree=this.semantic.mathmlTree),t.forEach(Pb.walkTree_),this.mml}}class Bb extends Lb{static test(t){return!!t.mathmlTree&&t.type===gm.LINE}constructor(t){super(t),this.mml=t.mathmlTree}getMathml(){return this.semantic.contentNodes.length&&Yg(this.semantic.contentNodes[0]),this.semantic.childNodes.length&&Yg(this.semantic.childNodes[0]),bg(this.mml,this.semantic),this.mml}}class Fb extends Lb{static test(t){return!!t.mathmlTree&&(t.type===gm.INFERENCE||t.type===gm.PREMISES)}constructor(t){super(t),this.mml=t.mathmlTree}getMathml(){return this.semantic.childNodes.length?(this.semantic.contentNodes.forEach(function(t){Yg(t),bg(t.mathmlTree,t)}),this.semantic.childNodes.forEach(function(t){Yg(t)}),bg(this.mml,this.semantic),this.mml.getAttribute("data-semantic-id")===this.mml.getAttribute("data-semantic-parent")&&this.mml.removeAttribute("data-semantic-parent"),this.mml):this.mml}}class jb extends Lb{static test(t){return t.type===gm.MATRIX||t.type===gm.VECTOR||t.type===gm.CASES}constructor(t){super(t),this.inner=[],this.mml=t.mathmlTree}getMathml(){const t=xb(this.semantic.contentNodes[0]),e=this.semantic.contentNodes[1]?xb(this.semantic.contentNodes[1]):null;if(this.inner=this.semantic.childNodes.map(Yg),this.mml)if(Qp(this.mml)===Xm.MFENCED){const s=this.mml.childNodes;this.mml.insertBefore(t,s[0]||null),e&&this.mml.appendChild(e),this.mml=yb(this.mml)}else{const s=[t,this.mml];e&&s.push(e),this.mml=Qg(s,this.semantic)}else this.mml=Qg([t].concat(this.inner,[e]),this.semantic);return bg(this.mml,this.semantic),this.mml}}class _b extends Lb{static test(t){return t.type===gm.PUNCTUATED&&(t.role===Em.TEXT||t.contentNodes.every(t=>t.role===Em.DUMMY))}constructor(t){super(t),this.mml=t.mathmlTree}getMathml(){const t=[],e=Ab(this.semantic,t);return this.mml=Qg(t,this.semantic),bg(this.mml,this.semantic),this.mml.removeAttribute(mg.CONTENT),Eb(this.mml,e),this.mml}}function Ub(t,e){const s=function(t){return t.cloneNode(!0)}(t),i=function(t,e,s){return kp.getInstance().generate(()=>["Original MathML",Cb(t)]),$g.clear(),Yg(e.root),s.structure&&t.setAttribute(mg.STRUCTURE,xg.fromStructure(t,e,s).toString()),kp.getInstance().generate(()=>["Semantic Tree\n",Cb(e),"Semantically enriched MathML\n",Cb(t)]),t}(s,Gg(s,e),e);return i}Jg.push({test:Pb.test,constr:t=>new Pb(t)},{test:Ob.test,constr:t=>new Ob(t)},{test:Rb.test,constr:t=>new Rb(t)},{test:Mb.test,constr:t=>new Mb(t)},{test:kb.test,constr:t=>new kb(t)},{test:wb.test,constr:t=>new wb(t)},{test:Bb.test,constr:t=>new Bb(t)},{test:Sb.test,constr:t=>new Sb(t)},{test:Fb.test,constr:t=>new Fb(t)},{test:Db.test,constr:t=>new Db(t)},{test:jb.test,constr:t=>new jb(t)},{test:_b.test,constr:t=>new _b(t)});const Hb=new hp({AbsoluteValue:["Auto","AbsEnd","Cardinality","Determinant"],Bar:["Auto","Conjugate"],Caps:["Auto","SayCaps"],CombinationPermutation:["Auto","ChoosePermute"],Currency:["Auto","Position","Prefix"],Ellipses:["Auto","AndSoOn"],Enclosed:["Auto","EndEnclose"],Exponent:["Auto","AfterPower","Ordinal","OrdinalPower","Exponent"],Fraction:["Auto","EndFrac","FracOver","General","GeneralEndFrac","Ordinal","Over","OverEndFrac","Per"],Functions:["Auto","None","Reciprocal"],Inference:["Auto","Long"],ImpliedTimes:["Auto","MoreImpliedTimes","None"],Log:["Auto","LnAsNaturalLog"],Matrix:["Auto","Combinatoric","EndMatrix","EndVector","SilentColNum","SpeakColNum","Vector"],MultiLineLabel:["Auto","Case","Constraint","Equation","Line","None","Row","Step"],MultiLineOverview:["Auto","None"],MultiLinePausesBetweenColumns:["Auto","Long","Short"],MultsymbolDot:["Auto","Dot"],MultsymbolX:["Auto","By","Cross"],Paren:["Auto","CoordPoint","Interval","Silent","Speak","SpeakNestingLevel"],Prime:["Auto","Angle","Length"],Roots:["Auto","PosNegSqRoot","PosNegSqRootEnd","RootEnd"],SetMemberSymbol:["Auto","Belongs","Element","Member","In"],Sets:["Auto","SilentBracket","woAll"],TriangleSymbol:["Auto","Delta"],Trig:["Auto","ArcTrig","TrigInverse","Reciprocal"],VerticalLine:["Auto","Divides","Given","SuchThat"]}),Wb="Auto";function zb(t){const e=t.split(":"),s={},i=Hb.getProperties(),r=Object.keys(i);for(let t,n=0;t=e[n];n++){const e=t.split("_");if(-1===r.indexOf(e[0]))continue;const n=e[1];n&&n!==Wb&&-1!==i[e[0]].indexOf(n)&&(s[e[0]]=e[1])}return s}function qb(t){const e=Object.keys(t),s=[];for(let i=0;iFp.getInstance().setup(t),Gb=()=>Fp.getInstance().json(),Jb=t=>function(t,e){const s=Xp(t);try{return Ub(s,e)}catch(t){return console.error(t),s}}(t,Fp.getInstance().options),Kb=Xp,$b=function(t,e,s){if("default"===t)return e+"_"+s;const i=zb(t);return i[e]=s,qb(i)},Yb=zb,Qb=qb;var Zb=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};let tE={},eE=null;function sE(t){var e,s;const i=null==t?void 0:t.match(/^clearspeak-(.*)/);return eE=null!==(s=null!==(e=i&&i[1])&&void 0!==e?e:eE)&&void 0!==s?s:"default",eE}const iE=new Map;const rE=new Map;let nE=0;function oE(t,e){const s=iE.get(e);!function(t,e){const s=t.pool.lookup("speechRules"),i=sE(t.settings.speechRules);tE=Yb(i);for(const i of e)t.factory.get("variable")(t.factory,{name:"csprf_"+i,setter:t=>{tE[i]=t,s.setValue("clearspeak-"+Qb(tE))},getter:()=>tE[i]||"Auto"},t.pool)}(t,Object.keys(s));const i=[];for(const t of Object.getOwnPropertyNames(s))i.push({title:t,values:s[t].map(e=>e.replace(RegExp("^"+t+"_"),"")),variable:"csprf_"+t});const r=new op("Clearspeak Preferences","",i,"alphabetical","square",t);return{type:"command",id:"ClearspeakPreferences",content:"Select Preferences",action:()=>r.post()}}function aE(t,e,s){return Zb(this,void 0,void 0,function*(){var i,r;const n=i=>{s(t.factory.get("subMenu")(t.factory,{items:i,id:"Clearspeak"},e))};if(!t.settings.speech||!t.settings.enrich)return void n([]);const o=t.pool.lookup("locale").getValue();if(yield function(t,e){return Zb(this,void 0,void 0,function*(){iE.has(e)||(yield t.mathItem.generatorPool.getLocalePreferences(iE))})}(t,o),!iE.get(o))return void n([]);const a=oE(t,o);let l=[];if(t.settings.speech){const e=t.mathItem,s=null===(i=null==e?void 0:e.explorers)||void 0===i?void 0:i.speech,n=sE(t.settings.speechRules);l=l.concat(function(t){return[{type:"radio",content:"No Preferences",id:"clearspeak-default",variable:"speechRules"},{type:"radio",content:"Current Preferences",id:"clearspeak-"+t,variable:"speechRules"},{type:"rule"}]}(n));const a=null==s?void 0:s.refocus,c=null!==(r=null==a?void 0:a.getAttribute("data-semantic-id"))&&void 0!==r?r:null,h=nE++;yield e.generatorPool.getRelevantPreferences(e,c,rE,h);const d=rE.get(h);if(rE.delete(h),d){const t=function(t,e,s){const i=iE.get(s);return[{type:"label",content:"Preferences for "+e},{type:"rule"}].concat(i[e].map(function(e){const[s,i]=e.split("_");return{type:"radioCompare",content:i,id:"clearspeak-"+$b(t,s,i),variable:"speechRules",comparator:(t,e)=>{if(t===e)return!0;if("Auto"!==i)return!1;const[r,n]=t.split("-"),[o]=e.split("-");return r===o&&!Yb(n)[s]}}}))}(n,d,o);l=l.concat(t)}}l.splice(2,0,a),n(l)})}np.DynamicSubmenus.set("Clearspeak",[aE,"speech"]);let lE=null;function cE(t,e,s){if(lE)return void s(lE);const i=[];for(const t of Vb.keys())"nemeth"!==t&&"euro"!==t&&i.push({type:"radio",id:t,content:Vb.get(t)||t,variable:"locale"});i.sort((t,e)=>t.content.localeCompare(e.content,"en")),lE=t.factory.get("subMenu")(t.factory,{items:i,id:"Language"},e),s(lE)}np.DynamicSubmenus.set("A11yLanguage",[cE,"speech"]);const hE="MacOS"===mi.os;function dE(t){const e=mi.document,s=e.createElement("textarea");s.value=t,s.setAttribute("readonly",""),s.style.cssText="height: 1px; width: 1px; padding: 1px; position: absolute; left: -10px",e.body.appendChild(s),s.select();try{e.execCommand("copy")}catch(t){alert(`Can't copy to clipboard: ${t.message}`)}e.body.removeChild(s)}function uE(t,e,s){return(i,r,n)=>{!function(t,e,s){if(!t)return;for(const i of t.childNodes)if(i.isKind("annotation")){const t=mE(i,e);if(t){const e=i.childNodes.reduce((t,e)=>t+e.toString(),"");s.push([t,e])}}}(function(t){var e;let s=null===(e=t.mathItem)||void 0===e?void 0:e.root;for(;s&&!s.isKind("semantics");){if(s.isToken||1!==s.childNodes.length)return null;s=s.childNodes[0]}return s}(i),e,s),n(gE(i,r,s,t))}}function pE(t){return(e,s,i)=>{const r=t.slice();t.length=0,i(gE(e,s,r,()=>dE(fE.trim())))}}function mE(t,e){const s=t.attributes.get("encoding");for(const t of Object.keys(e))if(e[t].includes(s))return t;return null}let fE="";function gE(t,e,s,i){return t.factory.get("subMenu")(t.factory,{items:s.map(([t,e])=>({type:"command",id:t,content:t,action:()=>{fE=e,i()}})),id:"annotations"},e)}class bE extends po{static post(t){return super.post(t)}html(t){var e;null!==(e=t.extraNodes)&&void 0!==e||(t.extraNodes=[]);const s=t.adaptor.node("input",{type:"button",value:"Copy to Clipboard","data-drag":"none"});return s.addEventListener("click",this.copyToClipboard.bind(this)),t.extraNodes.push(s),t.code&&(t.message="
"+this.formatSource(t.message)+"
"),super.html(t)}formatSource(t){return t.trim().replace(/&/g,"&").replace(//g,">")}}class EE extends _u{static fromJson(t,{content:e,variable:s,id:i,comparator:r},n){return new this(n,e,s,i,r)}constructor(t,e,s,i,r){super(t,e,s,i),this.comparator=r,this.role="menuitemradiocompare"}updateAria(){this.html.setAttribute("aria-checked",this.comparator(this.variable.getValue(),this.id)?"true":"false")}updateSpan(){this.span.style.display=this.comparator(this.variable.getValue(),this.id)?"":"none"}}class xE extends Qn{constructor(){super(...arguments),this.options={filterSRE:!0,filterTex:!0,texHints:!0,semantics:!1},this.mathItem=null}visitTree(t,e=null,s={}){return this.mathItem=e,ji(this.options,s),this.visitNode(t,"")}visitTeXAtomNode(t,e){return this.options.texHints?super.visitDefault(t,e):t.childNodes[0]&&1===t.childNodes[0].childNodes.length?this.visitNode(t.childNodes[0],e):`${e}\n`+this.childNodeMml(t,e+" ","\n")+`${e}`}visitMathNode(t,e){if(!this.options.semantics||"TeX"!==this.mathItem.inputJax.name)return super.visitDefault(t,e);const s=t.childNodes.length&&t.childNodes[0].childNodes.length>1;return`${e}\n${e} \n`+(s?e+" \n":"")+this.childNodeMml(t,e+(s?" ":" "),"\n")+(s?e+" \n":"")+`${e} `+this.mathItem.math+`\n${e} \n${e}`}getAttributeList(t){const e=super.getAttributeList(t);if(this.options.filterTex&&(delete e["data-latex"],delete e["data-latex-item"]),this.options.filterSRE){const t=Object.keys(e).filter(t=>t.match(/^(?:data-semantic-.*?|data-speech-node|role|aria-(?:level|posinset|setsize|owns))$/));for(const s of t)delete e[s]}return e}}var yE=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};const NE=di;class vE{get isLoading(){return vE.loading>0}get loadingPromise(){return this.isLoading?(vE._loadingPromise||(vE._loadingPromise=new Promise((t,e)=>{vE._loadingOK=t,vE._loadingFailed=e})),vE._loadingPromise):Promise.resolve()}about(){const t=[];if(t.push("Input Jax: "+this.document.inputJax.map(t=>t.name).join(", ")),t.push("Output Jax: "+this.document.outputJax.name),t.push("Document Type: "+this.document.kind),NE&&NE.loader){t.push("
Modules Loaded:");const e=NE._.components.package.Package,s=NE.loader.versions;for(const i of Array.from(e.packages.keys()).sort(this.sortPackages)){const r=s.get(e.resolvePath(i));r&&t.push(`    ${i} (${r})`)}}po.post({title:"MathJax v"+eo.version+"",message:t.join("
"),adaptor:this.document.adaptor,styles:{".mjx-dialog":{"max-height":"calc(min(20em, 85%))"},"mjx-dialog > div":{"white-space":"nowrap"},"dialog.mjx-dialog-help > mjx-dialog > div":{"white-space":"normal"},"mjx-v":{"font-size":"80%"}},extraNodes:[this.document.adaptor.node("a",{href:"https://www.mathjax.org","data-drag":"false",target:"_blank"},[this.document.adaptor.text("https://www.mathjax.org")])]})}sortPackages(t,e){const[s,i]=t.includes("/")?t.split(/\//):["",t],[r,n]=e.includes("/")?e.split(/\//):["",e];return s===r?iMathJax is a JavaScript library that allows page"," authors to include mathematics within their web pages."," As a reader, you don't need to do anything to make that happen.

","

Browsers: MathJax works with all modern browsers including"," Edge, Firefox, Chrome, Safari, Opera, and most mobile browsers.

","

Math Menu: MathJax adds a contextual menu to equations."," Right-click or CTRL-click on any mathematics to access the menu.

",'
',"

Show Math As: These options allow you to view the formula's"," source markup (as MathML or in its original format).

","

Copy to Clipboard: These options copy the formula's source markup,"," as MathML or in its original format, to the clipboard"," (in browsers that support that).

","

Math Settings: These give you control over features of MathJax,"," such the size of the mathematics, the mechanism used to display equations,"," how to handle equations that are too wide, and the language to use for"," MathJax's menus and error messages (not yet implemented in v4).","

","

Accessibility: MathJax can work with screen"," readers to make mathematics accessible to the visually impaired."," Turn on speech or braille generation to enable creation of speech strings"," and the ability to investigate expressions interactively. You can control"," the style of the explorer in its menu.

","
","

Math Zoom: If you are having difficulty reading an"," equation, MathJax can enlarge it to help you see it better, or"," you can scale all the math on the page to make it larger."," Turn these features on in the Math Settings menu.

","

Preferences: MathJax uses your browser's localStorage database"," to save the preferences set via this menu locally in your browser. These"," are not used to track you, and are not transferred or used remotely by"," MathJax in any way.

"].join("\n"),adaptor:this.document.adaptor,extraNodes:[this.document.adaptor.node("a",{href:"https://www.mathjax.org","data-drag":"none"},[this.document.adaptor.text("https://www.mathjax.org")])]})}mathMLCode(){bE.post({title:"MathJax MathML Expression",message:this.menu.mathItem?this.toMML(this.menu.mathItem):"",adaptor:this.document.adaptor,code:!0})}originalText(){var t,e;bE.post({title:"MathJax Original Source",message:null!==(e=null===(t=this.menu.mathItem)||void 0===t?void 0:t.math)&&void 0!==e?e:"",adaptor:this.document.adaptor,code:!0})}annotationBox(){bE.post({title:"MathJax Annotation Text",message:fE,adaptor:this.document.adaptor,code:!0})}svgImage(){return yE(this,void 0,void 0,function*(){bE.post({title:"MathJax SVG Image",message:yield this.toSVG(this.menu.mathItem),adaptor:this.document.adaptor,code:!0})})}speechText(){var t,e,s;bE.post({title:"MathJax Speech Text",message:null!==(s=null===(e=null===(t=this.menu.mathItem)||void 0===t?void 0:t.outputData)||void 0===e?void 0:e.speech)&&void 0!==s?s:"",adaptor:this.document.adaptor,code:!0})}brailleText(){var t,e,s;bE.post({title:"MathJax Braille Text",message:null!==(s=null===(e=null===(t=this.menu.mathItem)||void 0===t?void 0:t.outputData)||void 0===e?void 0:e.braille)&&void 0!==s?s:"",adaptor:this.document.adaptor,code:!0})}errorMessage(){bE.post({title:"MathJax Error Message",message:this.menu.mathItem?this.menu.errorMsg:"",adaptor:this.document.adaptor,code:!0})}zoomBox(){let t="";if(this.menu.mathItem){const e=this.menu.mathItem.typesetRoot,s=this.document.adaptor.fontSize(e),i=e.cloneNode(!0);i.style.margin="0";t=`
${i.outerHTML}
`}po.post({title:"MathJax Zoomed Expression",message:t,adaptor:this.document.adaptor,styles:{"mjx-dialog > div":{padding:"1.8em"}}})}constructor(t,e={}){this.settings=null,this.defaultSettings=null,this.menu=null,this.current=null,this.MmlVisitor=new xE,this.initialized=!1,this.jax={CHTML:null,SVG:null},this.rerenderStart=lr.LAST,this.requiredExtensions=[],this.document=t,this.options=ji(Fi({},this.constructor.OPTIONS),e),this.initSettings(),this.mergeUserSettings(),this.initMenu(),this.applySettings(),this.initialized=!0}initSettings(){var t;this.settings=this.options.settings,this.jax=this.options.jax;const e=this.document.outputJax;this.jax[e.name]=e,this.settings.renderer=e.name,this.settings.scale=e.options.scale,e.options.displayOverflow&&(this.settings.overflow=e.options.displayOverflow.substring(0,1).toUpperCase()+e.options.displayOverflow.substring(1).toLowerCase()),this.settings.breakInline=null===(t=e.options.linebreaks)||void 0===t?void 0:t.inline,this.defaultSettings=Object.assign({},this.document.options.a11y,this.settings),this.setA11y({roleDescription:this.settings.roleDescription})}initMenu(){const t=new Zu([["contextMenu",np.fromJson.bind(np)],["radioCompare",EE.fromJson.bind(EE)]]);this.menu=t.parse({type:"contextMenu",id:"MathJax_Menu",pool:[this.variable("showSRE"),this.variable("showTex"),this.variable("texHints"),this.variable("semantics"),this.variable("zoom"),this.variable("zscale"),this.variable("renderer",t=>this.setRenderer(t)),this.variable("overflow",t=>this.setOverflow(t)),this.variable("breakInline",t=>this.setInlineBreaks(t)),this.variable("alt"),this.variable("cmd"),this.variable("ctrl"),this.variable("shift"),this.variable("scale",t=>this.setScale(t)),this.a11yVar("speech",t=>this.setSpeech(t)),this.a11yVar("braille",t=>this.setBraille(t)),this.variable("brailleCode",t=>this.setBrailleCode(t)),this.a11yVar("brailleSpeech",t=>this.setBrailleSpeech(t)),this.a11yVar("brailleCombine",t=>this.setBrailleCombine(t)),this.a11yVar("highlight",t=>this.setHighlight(t)),this.a11yVar("backgroundColor",t=>this.setColor("bg",t)),this.a11yVar("backgroundOpacity",t=>this.setColor("bg",null,t)),this.a11yVar("foregroundColor",t=>this.setColor("fg",t)),this.a11yVar("foregroundOpacity",t=>this.setColor("fg",null,t)),this.a11yVar("subtitles"),this.a11yVar("viewBraille"),this.a11yVar("voicing"),this.a11yVar("roleDescription",()=>this.setRoleDescription()),this.a11yVar("help"),this.a11yVar("locale",t=>this.setLocale(t)),this.variable("speechRules",t=>{const[e,s]=t.split("-");this.document.options.sre.domain=e,this.document.options.sre.style=s,this.rerender(lr.COMPILED)}),this.a11yVar("magnification"),this.a11yVar("magnify"),this.a11yVar("treeColoring"),this.a11yVar("infoType"),this.a11yVar("infoRole"),this.a11yVar("infoPrefix"),this.variable("autocollapse"),this.variable("collapsible",t=>this.setCollapsible(t)),this.variable("enrich",t=>this.setEnrichment(t)),this.a11yVar("inTabOrder",t=>this.setTabOrder(t)),this.a11yVar("tabSelects"),this.variable("assistiveMml",t=>this.setAssistiveMml(t))],items:[this.submenu("Show","Show Math As",[this.command("MathMLcode","MathML Code",()=>this.mathMLCode()),this.command("Original","Original Form",()=>this.originalText()),this.rule(),this.command("Speech","Speech Text",()=>this.speechText(),{disabled:!0}),this.command("Braille","Braille Code",()=>this.brailleText(),{disabled:!0}),this.command("SVG","SVG Image",()=>this.svgImage(),{disabled:!0}),this.submenu("ShowAnnotation","Annotation"),this.rule(),this.command("Error","Error Message",()=>this.errorMessage(),{disabled:!0})]),this.submenu("Copy","Copy to Clipboard",[this.command("MathMLcode","MathML Code",()=>this.copyMathML()),this.command("Original","Original Form",()=>this.copyOriginal()),this.rule(),this.command("Speech","Speech Text",()=>this.copySpeechText(),{disabled:!0}),this.command("Braille","Braille Code",()=>this.copyBrailleText(),{disabled:!0}),this.command("SVG","SVG Image",()=>this.copySvgImage(),{disabled:!0}),this.submenu("CopyAnnotation","Annotation"),this.rule(),this.command("Error","Error Message",()=>this.copyErrorMessage(),{disabled:!0})]),this.rule(),this.submenu("Settings","Math Settings",[this.submenu("Renderer","Math Renderer",this.radioGroup("renderer",[["CHTML"],["SVG"]])),this.submenu("Overflow","Wide Expressions",[this.radioGroup("overflow",[["Overflow"],["Scroll"],["Linebreak"],["Scale"],["Truncate"],["Elide"]]),this.rule(),this.checkbox("BreakInline","Allow In-line Breaks","breakInline")]),this.rule(),this.submenu("MathmlIncludes","MathML/SVG has",[this.checkbox("showSRE","Semantic attributes","showSRE"),this.checkbox("showTex","LaTeX attributes","showTex"),this.checkbox("texHints","TeX hints","texHints"),this.checkbox("semantics","Original as annotation","semantics")]),this.submenu("Language","Language"),this.rule(),this.submenu("ZoomTrigger","Zoom Trigger",[this.command("ZoomNow","Zoom Once Now",()=>this.zoom(null,"")),this.rule(),this.radioGroup("zoom",[["Click"],["DoubleClick","Double-Click"],["NoZoom","No Zoom"]]),this.rule(),this.label("TriggerRequires","Trigger Requires:"),this.checkbox(hE?"Option":"Alt",hE?"Option":"Alt","alt"),this.checkbox("Command","Command","cmd",{hidden:!hE}),this.checkbox("Control","Control","ctrl",{hidden:hE}),this.checkbox("Shift","Shift","shift")]),this.submenu("ZoomFactor","Zoom Factor",this.radioGroup("zscale",[["150%"],["175%"],["200%"],["250%"],["300%"],["400%"]])),this.rule(),this.command("Scale","Scale All Math...",()=>this.scaleAllMath()),this.rule(),this.command("Reset","Reset to defaults",()=>this.resetDefaults())]),this.rule(),this.label("Accessibility","\xa0\xa0 Accessibility:"),this.submenu("Speech","\xa0 \xa0 Speech",[this.checkbox("Generate","Generate","speech"),this.checkbox("Subtitles","Show Subtitles","subtitles"),this.checkbox("Auto Voicing","Auto Voicing","voicing"),this.rule(),this.label("Rules","Rules:"),this.submenu("Mathspeak","Mathspeak",this.radioGroup("speechRules",[["mathspeak-default","Verbose"],["mathspeak-brief","Brief"],["mathspeak-sbrief","Superbrief"]])),this.submenu("Clearspeak","Clearspeak",this.radioGroup("speechRules",[["clearspeak-default","Auto"]])),this.rule(),this.submenu("A11yLanguage","Language")]),this.submenu("Braille","\xa0 \xa0 Braille",[this.checkbox("Generate","Generate","braille"),this.checkbox("Subtitles","Show Subtitles","viewBraille"),this.checkbox("BrailleSpeech","Replace Speech","brailleSpeech",{hidden:!0}),this.checkbox("BrailleCombine","Combine with Speech","brailleCombine"),this.rule(),this.label("Code","Code Format:"),this.radioGroup("brailleCode",[["nemeth","Nemeth"],["ueb","UEB"],["euro","Euro"]])]),this.submenu("Explorer","\xa0 \xa0 Explorer",[this.submenu("Highlight","Highlight",[this.submenu("Background","Background",this.radioGroup("backgroundColor",[["Blue"],["Red"],["Green"],["Yellow"],["Cyan"],["Magenta"],["White"],["Black"]])),{type:"slider",variable:"backgroundOpacity",content:" "},this.submenu("Foreground","Foreground",this.radioGroup("foregroundColor",[["Black"],["White"],["Magenta"],["Cyan"],["Yellow"],["Green"],["Red"],["Blue"]])),{type:"slider",variable:"foregroundOpacity",content:" "},this.rule(),this.radioGroup("highlight",[["None"],["Hover"],["Flame"]]),this.rule(),this.checkbox("TreeColoring","Tree Coloring","treeColoring")]),this.submenu("Magnification","Magnification",[this.radioGroup("magnification",[["None"],["Keyboard"],["Mouse"]]),this.rule(),this.radioGroup("magnify",[["200%"],["300%"],["400%"],["500%"]])]),this.submenu("Semantic Info","Semantic Info",[this.checkbox("Type","Type","infoType"),this.checkbox("Role","Role","infoRole"),this.checkbox("Prefix","Prefix","infoPrefix")]),this.rule(),this.submenu("Role Description","Describe math as",[this.radioGroup("roleDescription",[["MathJax expression"],["MathJax"],["math"],["clickable math"],["explorable math"],["none"]])]),this.checkbox("Math Help","Help message on focus","help")]),this.submenu("Options","\xa0 \xa0 Options",[this.checkbox("Enrich","Semantic Enrichment","enrich"),this.checkbox("Collapsible","Collapsible Math","collapsible"),this.checkbox("AutoCollapse","Auto Collapse","autocollapse",{disabled:!0}),this.rule(),this.checkbox("InTabOrder","Include in Tab Order","inTabOrder"),this.submenu("TabSelects","Tabbing Focuses on",[this.radioGroup("tabSelects",[["all","Whole Expression"],["last","Last Explored Node"]])]),this.rule(),this.checkbox("AssistiveMml","Include Hidden MathML","assistiveMml")]),this.rule(),this.command("About","About MathJax",()=>this.about()),this.command("Help","MathJax Help",()=>this.help())]});const e=this.menu;e.settings=this.settings,e.findID("Settings","Overflow","Elide").disable(),e.findID("Braille","ueb").hide(),e.setJax(this.jax),this.checkLoadableItems();const s=[];np.DynamicSubmenus.set("ShowAnnotation",[uE(()=>this.annotationBox(),this.options.annotationTypes,s),""]),np.DynamicSubmenus.set("CopyAnnotation",[pE(s),""]),function(t){rp(Object.assign(Object.assign({},sp),ip),t)}(this.document.document)}checkLoadableItems(){var t,e,s,i,r,n;if(NE&&NE._&&NE.loader&&NE.startup){const o=this.settings,a=this.document.options;(o.enrich||o.speech&&a.enableSpeech||o.braille&&a.enableBraille)&&!(null===(e=null===(t=NE._)||void 0===t?void 0:t.a11y)||void 0===e?void 0:e.explorer)&&this.loadA11y("explorer"),o.collapsible&&!(null===(i=null===(s=NE._)||void 0===s?void 0:s.a11y)||void 0===i?void 0:i.complexity)&&this.loadA11y("complexity"),o.assistiveMml&&!(null===(n=null===(r=NE._)||void 0===r?void 0:r.a11y)||void 0===n?void 0:n["assistive-mml"])&&this.loadA11y("assistive-mml")}else{const t=this.menu;for(const e of Object.keys(this.jax))this.jax[e]||t.findID("Settings","Renderer",e).disable();t.findID("Speech").disable(),t.findID("Braille").disable(),t.findID("Explorer").disable(),t.findID("Options","AutoCollapse").disable(),t.findID("Options","Collapsible").disable(),t.findID("Options","Enrich").disable(),t.findID("Options","AssistiveMml").disable()}}enableAccessibilityItems(t,e){const s=this.menu.findID(t).submenu;for(const t of s.items.slice(1))t instanceof Uu||(!e||t instanceof ku&&!t.submenu.items.length?t.disable():t.enable())}mergeUserSettings(){try{const t=localStorage.getItem(vE.MENU_STORAGE);if(!t)return;const e=JSON.parse(t);Object.assign(this.settings,e),this.setA11y(e)}catch(t){console.log("MathJax localStorage error: "+t.message)}}saveUserSettings(){const t={};for(const e of Object.keys(this.settings))this.settings[e]!==this.defaultSettings[e]&&(t[e]=this.settings[e]);try{Object.keys(t).length?localStorage.setItem(vE.MENU_STORAGE,JSON.stringify(t)):localStorage.removeItem(vE.MENU_STORAGE)}catch(t){console.log("MathJax localStorage error: "+t.message)}}setA11y(t){var e,s;(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s.explorer)&&NE._.a11y.explorer_ts.setA11yOptions(this.document,t)}getA11y(t){var e,s;if(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s.explorer)return void 0!==this.document.options.a11y[t]?this.document.options.a11y[t]:this.document.options.sre[t]}applySettings(){this.setTabOrder(this.settings.inTabOrder);this.document.options.enableAssistiveMml=this.settings.assistiveMml,this.enableAccessibilityItems("Speech",this.settings.speech),this.enableAccessibilityItems("Braille",this.settings.braille),this.setAccessibilityMenus();const t=this.settings.renderer.replace(/[^a-zA-Z0-9]/g,"")||"CHTML";(vE._loadingPromise||Promise.resolve()).then(()=>{const e=this.settings;if(this.applyRendererOptions(this.document.outputJax),!e.speechRules){const t=this.document.options.sre;e.speechRules=`${t.domain||"clearspeak"}-${t.style||"default"}`}t!==this.defaultSettings.renderer&&this.document.whenReady(()=>this.setRenderer(t,!1))})}setOverflow(t){this.document.outputJax.options.displayOverflow=t.toLowerCase(),!vE.loading&&this.initialized&&this.document.rerenderPromise()}setInlineBreaks(t){this.document.outputJax.options.linebreaks.inline=t,!vE.loading&&this.initialized&&this.document.rerenderPromise()}setScale(t){this.document.outputJax.options.scale=parseFloat(t),!vE.loading&&this.initialized&&this.document.rerenderPromise()}setRenderer(t,e=!0){if(Object.hasOwn(this.jax,t)&&this.jax[t])return this.applyRendererOptions(this.jax[t]),this.setOutputJax(t,e);const s=t.toLowerCase();return new Promise((i,r)=>{this.loadComponent("output/"+s,()=>{const n=NE.startup;if(!(s in n.constructors))return r(new Error(`Component ${s} not loaded`));n.useOutput(s,!0),n.output=this.applyRendererOptions(n.getOutputJax()),n.output.setAdaptor(this.document.adaptor),n.output.initialize(),this.jax[t]=n.output,this.setOutputJax(t,e).then(()=>i()).catch(t=>r(t))})})}applyRendererOptions(t){const e=this.settings,s=t.options;return s.scale=parseFloat(e.scale),s.displayOverflow=e.overflow.toLowerCase(),s.linebreaks&&(s.linebreaks.inline=e.breakInline),t}setOutputJax(t,e=!0){this.jax[t].setAdaptor(this.document.adaptor),this.document.outputJax=this.jax[t];const s=this.loadRequiredExtensions();return e?s.then(()=>eo.handleRetriesFor(()=>this.rerender())):s.then(()=>{})}loadRequiredExtensions(){const t=this.document.outputJax.name.toLowerCase(),e=[];for(const s of this.requiredExtensions)e.push(NE.loader.load(`[${s}]/${t}`));return this.requiredExtensions=[],Promise.all(e)}addRequiredExtensions(t){if(t){const e=new Set([...this.requiredExtensions,...t]);this.requiredExtensions=[...e]}}setTabOrder(t){const e=this.menu.findID("Options","TabSelects");t?e.enable():e.disable(),this.menu.store.inTaborder(t)}setAssistiveMml(t){var e,s;this.document.options.enableAssistiveMml=t,t&&this.noRerender(()=>{this.settings.speech&&this.menu.pool.lookup("speech").setValue(!1),this.settings.braille&&this.menu.pool.lookup("braille").setValue(!1)}),!t||(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s["assistive-mml"])?this.rerender():this.loadA11y("assistive-mml")}setAccessibilityMenus(){const t=this.settings.enrich,e=t?"enable":"disable";["Speech","Braille","Explorer"].forEach(t=>this.menu.findID(t)[e]());const s=this.document.options;s.enableSpeech=s.enableBraille=s.enableExplorer=t,t||(this.settings.collapsible=!1,this.document.options.enableCollapsible=!1)}setSpeech(t){var e,s;this.enableAccessibilityItems("Speech",t),this.document.options.enableSpeech=t,t&&(this.settings.assistiveMml&&this.noRerender(()=>this.menu.pool.lookup("assistiveMml").setValue(!1)),this.settings.brailleSpeech&&this.noRerender(()=>this.menu.pool.lookup("brailleSpeech").setValue(!1))),!t||(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s.explorer)?this.rerender(lr.COMPILED):this.loadA11y("explorer")}setBraille(t){var e,s;this.enableAccessibilityItems("Braille",t),this.document.options.enableBraille=t,t&&this.settings.assistiveMml&&this.noRerender(()=>this.menu.pool.lookup("assistiveMml").setValue(!1)),!t||(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s.explorer)?this.rerender(lr.COMPILED):this.loadA11y("explorer")}setBrailleCode(t){this.document.options.sre.braille=t,this.rerender(lr.COMPILED)}setBrailleSpeech(t){t&&this.settings.speech?this.noRerender(()=>this.menu.pool.lookup("speech").setValue(!1)):this.enableAccessibilityItems("Speech",!0),this.settings.brailleCombine=this.document.options.a11y.brailleCombine=!1,this.rerender(lr.COMPILED)}setBrailleCombine(t){this.settings.brailleSpeech&&this.menu.pool.lookup("brailleSpeech").setValue(!1),this.settings.brailleSpeech=this.document.options.a11y.brailleSpeech=!1,this.rerender(lr.COMPILED)}setLocale(t){this.document.options.sre.locale=t,this.rerender(lr.COMPILED)}setRoleDescription(){this.rerender(lr.COMPILED)}setEnrichment(t){var e,s;this.document.options.enableEnrichment=t,this.setAccessibilityMenus(),!t||(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s.explorer)?this.rerender(lr.COMPILED):this.loadA11y("explorer")}setCollapsible(t){var e,s;this.document.options.enableComplexity=t,t&&!this.settings.enrich&&(this.settings.enrich=this.document.options.enableEnrichment=!0,this.setAccessibilityMenus()),t||this.menu.pool.lookup("highlight").setValue("None"),!t||(null===(s=null===(e=NE._)||void 0===e?void 0:e.a11y)||void 0===s?void 0:s.complexity)?this.rerender(lr.COMPILED):this.loadA11y("complexity")}setHighlight(t){var e,s;if("None"!==t){if(!this.settings.collapsible){const t=this.menu.pool.lookup("collapsible");t.setValue(!0),null===(s=null===(e=t.items[0])||void 0===e?void 0:e.executeCallbacks_)||void 0===s||s.call(e)}vE.loadingPromises.has("a11y/complexity")||this.rerender(lr.COMPILED)}}setColor(t,e,s){const i=this.document.options.a11y;e||(e=i["fg"===t?"foregroundColor":"backgroundColor"]),s||(s=i["fg"===t?"foregroundOpacity":"backgroundOpacity"]),NE._.a11y.explorer.Region.LiveRegion.setColor(t,1,e.toLowerCase(),parseInt(s)/100)}scaleAllMath(){const t=(100*parseFloat(this.settings.scale)).toFixed(1).replace(/.0$/,""),e=prompt("Scale all mathematics (compared to surrounding text) by",t+"%");if(this.current){const t=this.menu.mathItem.explorers.speech;t.refocus=this.current,t.focus()}if(e)if(e.match(/^\s*\d+(\.\d*)?\s*%?\s*$/)){const t=parseFloat(e)/100;t?this.menu.pool.lookup("scale").setValue(String(t)):alert("The scale should not be zero")}else alert("The scale should be a percentage (e.g., 120%)")}resetDefaults(){this.noRerender(()=>{const t=this.menu.pool,e=this.defaultSettings;for(const s of Object.keys(e)){const i=t.lookup(s);if(i){if(i.getValue()!==e[s]){i.setValue(e[s]);const t=i.items[0];t&&t.executeCallbacks_()}}else Object.hasOwn(this.settings,s)&&(this.settings[s]=e[s])}}),this.rerender(lr.COMPILED)}checkComponent(t){const e=vE.loadingPromises.get(t);e&&eo.retryAfter(e)}loadComponent(t,e){if(vE.loadingPromises.has(t))return;const s=NE.loader;if(!s)return;vE.loading++;const i=s.load(t).then(()=>{vE.loading--,vE.loadingPromises.delete(t),0===vE.loading&&vE._loadingPromise&&(vE._loadingPromise=null,vE._loadingOK()),e()}).catch(t=>{vE._loadingPromise?(vE._loadingPromise=null,vE._loadingFailed(t)):console.log(t)});vE.loadingPromises.set(t,i)}loadA11y(t){const e=!lr.ENRICHED;this.loadComponent("a11y/"+t,()=>{var s,i;const r=NE.startup;eo.handlers.unregister(r.handler),r.handler=r.getHandler(),eo.handlers.register(r.handler);const n=this.document;this.document=r.document=r.getDocument(),this.document.processed=n.processed,this.document.menu=this,n.webworker&&(this.document.webworker=n.webworker),this.setA11y(this.settings),this.defaultSettings=Object.assign({},this.document.options.a11y,(null===(i=null===(s=NE.config)||void 0===s?void 0:s.options)||void 0===i?void 0:i.a11y)||{},this.defaultSettings),this.document.outputJax.reset(),this.transferMathList(n),this.document.processed=n.processed,vE._loadingPromise||(this.document.outputJax.reset(),eo.handleRetriesFor(()=>{this.rerender("complexity"===t||e?lr.COMPILED:lr.TYPESET)}))})}transferMathList(t){const e=this.document.options.MathItem;for(const s of t.math){const t=new e;Object.assign(t,s),this.document.math.push(t)}}toMML(t){return this.MmlVisitor.visitTree(t.root,t,{filterSRE:!this.settings.showSRE,filterTex:!this.settings.showTex,texHints:this.settings.texHints,semantics:this.settings.semantics&&"MathML"!==t.inputJax.name})}toSVG(t){return yE(this,void 0,void 0,function*(){const e=this.jax.SVG;if(!e)return"SVG can't be produced.
Try switching to SVG output first.";const s=e.adaptor,i=e.options.fontCache,r=!!t.root.getProperty("process-breaks");if("global"!==i&&(t.display||!r)&&"SVG"===s.getAttribute(t.typesetRoot,"jax"))for(const e of s.childNodes(t.typesetRoot))if("svg"===s.kind(e))return this.formatSvg(s.serializeXML(e));return this.typesetSVG(t,i,r)})}typesetSVG(t,e,s){return yE(this,void 0,void 0,function*(){const i=this.jax.SVG,r=i.html("div");"global"===e&&(i.options.fontCache="local");const n=t.root;return t.root=n.copy(!0),t.root.setInheritedAttributes({},t.display,0,!1),s&&(i.unmarkInlineBreaks(t.root),t.root.setProperty("inlineMarked",!1)),yield eo.handleRetriesFor(()=>{i.toDOM(t,r,i.document)}),t.root=n,i.options.fontCache=e,this.formatSvg(i.adaptor.serializeXML(r))})}formatSvg(t){const e=this.constructor.SvgCss,s=(t=(t=t.match(/^/)?t.replace(//,``):t.replace(/^()/,`$1`)).replace(/ (?:role|focusable)=".*?"/g,"").replace(/"currentColor"/g,'"black"')).split(/(<\/?[a-zA-Z].*?>)/);for(let t=2,e="";t\n${t}`}zoom(t,e){t&&!this.isZoomEvent(t,e)||this.zoomBox()}isZoomEvent(t,e){return this.settings.zoom===e&&(!this.settings.alt||t.altKey)&&(!this.settings.ctrl||t.ctrlKey)&&(!this.settings.cmd||t.metaKey)&&(!this.settings.shift||t.shiftKey)}rerender(t=lr.TYPESET){this.rerenderStart=Math.min(t,this.rerenderStart),!vE.loading&&NE.startup.hasTypeset&&this.document.whenReady(()=>yE(this,void 0,void 0,function*(){this.rerenderStart<=lr.COMPILED&&this.document.reset({inputJax:[]}),yield this.document.rerenderPromise(this.rerenderStart),this.rerenderStart=lr.LAST}))}noRerender(t){vE.loading++;try{t(),vE.loading--}catch(t){throw vE.loading--,t}}copyMathML(){dE(this.toMML(this.menu.mathItem))}copyOriginal(){dE(this.menu.mathItem.math.trim())}copySvgImage(){this.toSVG(this.menu.mathItem).then(t=>{dE(t)})}copySpeechText(){dE(this.menu.mathItem.outputData.speech)}copyBrailleText(){dE(this.menu.mathItem.outputData.braille)}copyErrorMessage(){dE(this.menu.errorMsg.trim())}addMenu(t){this.addEvents(t),this.menu.store.insert(t.typesetRoot),t.typesetRoot.tabIndex=this.settings.inTabOrder?0:-1}addEvents(t){const e=t.typesetRoot;e.addEventListener("mousedown",()=>{var e,s;this.menu.mathItem=t,this.current=null===(s=null===(e=t.explorers)||void 0===e?void 0:e.speech)||void 0===s?void 0:s.current},!0),e.addEventListener("contextmenu",()=>{var e;this.menu.mathItem=t;const s=null===(e=t.explorers)||void 0===e?void 0:e.speech;s&&(t.outputData.nofocus=!this.current,s.refocus=this.current)},!0),e.addEventListener("keydown",()=>this.menu.mathItem=t,!0),e.addEventListener("click",t=>this.zoom(t,"Click"),!0),e.addEventListener("dblclick",t=>this.zoom(t,"DoubleClick"),!0)}clear(){this.menu.store.clear()}variable(t,e){return{name:t,getter:()=>this.settings[t],setter:s=>{this.settings[t]=s,e&&e(s),this.saveUserSettings()}}}a11yVar(t,e){return{name:t,getter:()=>this.getA11y(t),setter:s=>{this.settings[t]=s,this.setA11y({[t]:s}),e&&e(s),this.saveUserSettings()}}}submenu(t,e,s=[],i=!1){let r=[];for(const t of s)Array.isArray(t)?r=r.concat(t):r.push(t);return{type:"submenu",id:t,content:e,menu:{items:r},disabled:0===r.length||i}}command(t,e,s,i={}){return Object.assign({type:"command",id:t,content:e,action:s},i)}checkbox(t,e,s,i={}){return Object.assign({type:"checkbox",id:t,content:e,variable:s},i)}radioGroup(t,e){return e.map(e=>this.radio(e[0],e[1]||e[0],t))}radio(t,e,s,i={}){return Object.assign({type:"radio",id:t,content:e,variable:s},i)}label(t,e){return{type:"label",id:t,content:e}}rule(){return{type:"rule"}}}function TE(t){return class extends t{addMenu(t,e=!1){this.state()>=lr.CONTEXT_MENU||(this.isEscaped||!t.options.enableMenu&&!e||t.menu.addMenu(this),this.state(lr.CONTEXT_MENU))}getMenus(t){t.menu.menu.store.sort()}checkLoading(t){t.checkLoading()}}}function CE(t){var e;return e=class extends t{constructor(...t){super(...t),this.menu=new this.options.MenuClass(this,this.options.menuOptions);const e=this.constructor.ProcessBits;e.has("context-menu")||e.allocate("context-menu"),this.options.MathItem=TE(this.options.MathItem);const s=this.menu.settings,i=this.options,r=i.enableEnrichment=s.enrich;i.enableSpeech=s.speech&&r,i.enableBraille=s.braille&&r,i.enableComplexity=s.collapsible&&r,i.enableExplorer=r}addMenu(){if(!this.processed.isSet("context-menu")){for(const t of this.math)t.addMenu(this);this.processed.set("context-menu")}return this}getMenus(){this.menu.menu.store.sort()}checkLoading(){let t=!0;try{this._checkLoading(),t=!1}catch(t){if(!t.retry)throw t}return t}_checkLoading(){return this.menu.isLoading&&eo.retryAfter(this.menu.loadingPromise.catch(t=>console.log(t))),this.options.enableComplexity&&this.menu.checkComponent("a11y/complexity"),this.options.enableExplorer&&this.menu.checkComponent("a11y/explorer"),this}state(t,e=!1){return super.state(t,e),tconsole.warn("Enrichment Error:",s)},t.OPTIONS),{MenuClass:vE,menuOptions:vE.OPTIONS,enableMenu:!0,sre:t.OPTIONS.sre||ki({}),a11y:t.OPTIONS.a11y||ki({}),renderActions:ki(Object.assign(Object.assign({},t.OPTIONS.renderActions),{addMenu:[lr.CONTEXT_MENU],getMenus:[lr.INSERTED+5,!1],checkLoading:[lr.UNPROCESSED+1,t=>t.checkLoading(),"",!1]}))}),e}function AE(t){return t.documentClass=CE(t.documentClass),t}vE.MENU_STORAGE="MathJax-Menu-Settings",vE.OPTIONS={settings:{showSRE:!1,showTex:!1,texHints:!0,semantics:!1,zoom:"NoZoom",zscale:"200%",renderer:"CHTML",alt:!0,cmd:!1,ctrl:!1,shift:!1,scale:1,overflow:"Scroll",breakInline:!0,autocollapse:!1,collapsible:!1,enrich:!0,assistiveMml:!1,speech:!0,braille:!0,brailleCode:"nemeth",brailleSpeech:!1,brailleCombine:!1,speechRules:"clearspeak-default",roleDescription:"math",inTabOrder:!0,tabSelects:"all",help:!0},jax:{CHTML:null,SVG:null},annotationTypes:ki({TeX:["TeX","LaTeX","application/x-tex"],StarMath:["StarMath 5.0"],Maple:["Maple"],ContentMathML:["MathML-Content","application/mathml-content+xml"],OpenMath:["OpenMath"]})},vE.SvgCss=["svg a{fill:blue;stroke:blue}",'[data-mml-node="merror"]>g{fill:red;stroke:red}','[data-mml-node="merror"]>rect[data-background]{fill:yellow;stroke:none}',"[data-frame],[data-line]{stroke-width:70px;fill:none}",".mjx-dashed{stroke-dasharray:140}",".mjx-dotted{stroke-linecap:round;stroke-dasharray:0,140}","use[data-c]{stroke-width:3px}"].join("\n"),vE.loading=0,vE.loadingPromises=new Map,vE._loadingPromise=null,vE._loadingOK=null,vE._loadingFailed=null,cr("CONTEXT_MENU",170),MathJax.loader&&MathJax.loader.checkVersion("ui/menu",ri,"ui"),hi({_:{a11y:{speech:{SpeechMenu:js}},ui:{menu:{AnnotationMenu:Us,MJContextMenu:Bs,Menu:zs,MenuHandler:qs,MenuUtil:_s,MmlVisitor:Ws,RadioCompare:Hs}}}}),MathJax.startup&&ui&&MathJax.startup.extendHandler(t=>AE(t),20),MathJax.loader&&MathJax.loader.checkVersion("a11y/sre",ri,"a11y"),hi({_:{a11y:{sre_ts:Fs}}}),cr("ENRICHED",lr.COMPILED+10);class LE extends Qn{visitTree(t,e){this.mactionId=0;const s=super.visitTree(t);return this.mactionId&&(e.inputData.hasMaction=!0),s}visitHtmlNode(t,e){return t.getSerializedXML()}visitMactionNode(t,e){const[s,i]=0===t.childNodes.length?["",""]:["\n",e],r=this.childNodeMml(t,e+" ",s);let n=this.getAttributes(t);if("toggle"===t.attributes.get("actiontype")){const e=++this.mactionId;t.setProperty("mactionId",e),n=` data-maction-id="${e}" selection="${t.attributes.get("selection")}"`+n.replace(/ selection="\d+"/,"").replace(/ data-maction-id="\d+"/,"")}return`${e}`+(r.match(/\S/)?s+r+i:"")+""}}function SE(t,e,s){return class extends t{constructor(){super(...arguments),this.toMathML=s}serializeMml(t){if("outerHTML"in t)return t.outerHTML;if("undefined"!=typeof Element&&"undefined"!=typeof window&&t instanceof Element){const e=window.document.createElement("div");return e.appendChild(t),e.innerHTML}return t.toString()}enrich(t,s=!1){if(!(this.state()>=lr.ENRICHED)){if(!this.isEscaped&&(t.options.enableEnrichment||s)){const s=new t.options.MathItem("",e);try{let e;e=this.inputData.originalMml?this.adjustSelections():this.inputData.originalMml=this.toMathML(this.root,this);const i=Jb(e);this.inputData.enrichedMml=s.math=this.serializeMml(i),s.math=s.math.replace(/ role="treeitem"/g,' data-speech-node="true"').replace(/ aria-level/g," data-semantic-level-number").replace(/ aria-(?:posinset|owns|setsize)=".*?"/g,""),s.display=this.display,s.compile(t),this.root=s.root}catch(e){t.options.enrichError(t,this,e)}}this.state(lr.ENRICHED)}}toEnriched(t){return this.serializeMml(Jb(t))}unEnrich(t){const s=this.inputData.originalMml;if(!s)return;const i=new t.options.MathItem("",e);i.math=s,i.display=this.display,i.compile(t),this.root=i.root}adjustSelections(){const t=this.inputData.originalMml;if(!this.inputData.hasMaction)return t;const e=[];return this.root.walkTree(t=>{t.isKind("maction")&&(e[t.attributes.get("data-maction-id")]=t)}),t.replace(/(data-maction-id="(\d+)" selection=)"\d+"/g,(t,s,i)=>`${s}"${e[i].attributes.get("selection")}"`)}}}function RE(t,e){var s;return(s=class extends t{constructor(...t){super(...t),e.setMmlFactory(this.mmlFactory);const s=this.constructor.ProcessBits;s.has("enriched")||s.allocate("enriched");const i=new LE(this.mmlFactory);this.options.MathItem=SE(this.options.MathItem,e,(t,e)=>i.visitTree(t,e))}enrich(){if(!this.processed.isSet("enriched")){if(this.options.enableEnrichment){Xb(this.options.sre);for(const t of this.math)t.enrich(this)}this.processed.set("enriched")}return this}enrichError(t,e,s){console.warn("Enrichment error:",s)}state(t,e=!1){if(super.state(t,e),t=lr.COMPILED))for(const t of this.math)t.unEnrich(this);return this}}).OPTIONS=Object.assign(Object.assign({},t.OPTIONS),{enableEnrichment:!0,enrichError:(t,e,s)=>t.enrichError(t,e,s),renderActions:ki(Object.assign(Object.assign({},t.OPTIONS.renderActions),{enrich:[lr.ENRICHED]})),sre:ki({speech:"none",locale:"en",domain:"clearspeak",style:"default",braille:"nemeth",structure:!0,aria:!0})}),s}function ME(t,e){return e.setAdaptor(t.adaptor),t.documentClass=RE(t.documentClass,e),t}MathJax.loader&&MathJax.loader.checkVersion("a11y/semantic-enrich",ri,"a11y"),hi({_:{a11y:{"semantic-enrich":Vs}}}),MathJax.startup&&MathJax.startup.extendHandler(t=>ME(t,new Mc({allowHtmlInTokenNodes:!0})));const IE=["pitch","rate","volume"];function wE(t){const e=Kb(t),s=[],i=[];return kE(Array.from(e.childNodes),s,i),[i.join(" "),s]}function kE(t,e,s,i={}){for(const r of t){if(3===r.nodeType){const t=r.textContent.trim();t&&(s.push(t),e.push(Object.assign({text:t},i)));continue}if(1===r.nodeType){const t=r,n=t.tagName;if("speak"===n)continue;if("prosody"===n){kE(Array.from(r.childNodes),e,s,DE(t,i));continue}switch(n){case"break":e.push({pause:t.getAttribute("time")});break;case"mark":e.push({mark:t.getAttribute("name")});break;case"say-as":{const r=t.textContent;e.push(Object.assign({text:r,character:!0},i)),s.push(r);break}}}}}const OE={pitch:(t,e)=>t/100*1,volume:(t,e)=>t/100*.5,rate:(t,e)=>t/100*1};function DE(t,e){const s={};for(const i of IE)if(t.hasAttribute(i)){const[r,n]=BE(t.getAttribute(i));if(!r){s[i]="volume"===i?.5:1;continue}let o=e[i];o=o||("volume"===i?.5:1);const a=OE[i](parseInt(n,10),r);s[i]="-"===r?o-a:o+a}return s}const PE=/([+-]?)([0-9]+)%/;function BE(t){const e=t.match(PE);return e?[e[1],e[2]]:(console.warn("Something went wrong with the prosody matching."),["","100"])}function FE(t,e,s,i=" "){if(!t)return"";const r=[t];return e&&r.unshift(e),s&&r.push(s),r.join(i)}function jE(t,e="en",s="100"){return wE(`${t}`)}function _E(){const t=new AudioContext,e=t.createOscillator();e.frequency.value=300,e.connect(t.destination),e.start(t.currentTime),e.stop(t.currentTime+.05)}var UE,HE;!function(t){t[t.NONE=0]="NONE",t[t.DEPTH=1]="DEPTH",t[t.SUMMARY=2]="SUMMARY"}(UE||(UE={})),function(t){t.SPEECH="data-semantic-speech-none",t.SPEECH_SSML="data-semantic-speech",t.SUMMARY="data-semantic-summary-none",t.SUMMARY_SSML="data-semantic-summary",t.PREFIX="data-semantic-prefix-none",t.PREFIX_SSML="data-semantic-prefix",t.POSTFIX="data-semantic-postfix-none",t.POSTFIX_SSML="data-semantic-postfix",t.BRAILLE="data-semantic-braille"}(HE||(HE={}));class WE{constructor(){this.promise=Promise.resolve(),this.adaptor=null,this._options={},this._init=!1}set element(t){this._element=t}get element(){return this._element}set options(t){this._options=Object.assign({},(null==t?void 0:t.sre)||{},{enableSpeech:t.enableSpeech,enableBraille:t.enableBraille}),delete this._options.custom}get options(){return this._options}init(t,e,s){this.options=t,this._init||(this.adaptor=e,this.webworker=s,this._init=!0)}update(t){Object.assign(this.options,t)}Speech(t){const e=t.outputData.mml,s=Object.assign({},this.options,{modality:"speech"});return this.promise=this.webworker.Speech(e,s,t)}SpeechFor(t,e){const s=Object.assign({},this.options,{modality:"speech"});return this.webworker.speechFor(e,s,t)}cancel(t){var e;null===(e=this.webworker)||void 0===e||e.Cancel(t)}updateRegions(t,e,s){e.Update(this.getLabel(t)),s.Update(this.getBraille(t))}getOptions(t){var e,s,i,r;return{locale:null!==(e=this.adaptor.getAttribute(t,"data-semantic-locale"))&&void 0!==e?e:"",domain:null!==(s=this.adaptor.getAttribute(t,"data-semantic-domain"))&&void 0!==s?s:"",style:null!==(i=this.adaptor.getAttribute(t,"data-semantic-style"))&&void 0!==i?i:"",domain2style:null!==(r=this.adaptor.getAttribute(t,"data-semantic-domain2style"))&&void 0!==r?r:""}}nextRules(t){const e=this.getOptions(t.typesetRoot);return this.update(e),this.promise=this.webworker.nextRules(t.outputData.mml,Object.assign({},this.options,{modality:"speech"}),t)}nextStyle(t,e){const s=this.getOptions(e.typesetRoot);return this.update(s),this.promise=this.webworker.nextStyle(e.outputData.mml,Object.assign({},this.options,{modality:"speech"}),this.adaptor.getAttribute(t,"data-semantic-id"),e)}getLabel(t,e="",s=" "){const i=this.adaptor;return FE(i.getAttribute(t,HE.SPEECH_SSML),i.getAttribute(t,HE.PREFIX_SSML),i.getAttribute(t,HE.POSTFIX_SSML),s)||i.getAttribute(t,"aria-label")}getBraille(t){const e=this.adaptor;return e.getAttribute(t,"aria-braillelabel")||e.getAttribute(t,HE.BRAILLE)}getLocalePreferences(t){return this.promise=this.webworker.clearspeakLocalePreferences(this.options,t)}getRelevantPreferences(t,e,s,i){const r=t.outputData.mml;return this.promise=this.webworker.clearspeakRelevantPreferences(r,e,s,i)}}var zE=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};class qE{constructor(t,e,s,i){this.cmd=t,this.item=e,this.resolve=s,this.reject=i}}class VE{constructor(t,e){this.adaptor=t,this.options=e,this.ready=!1,this.tasks=[],this.Commands={Ready(t,e){t.ready=!0,t.postNext()},Finished(t,e){const s=t.tasks.shift();e.success?s.resolve(e.result):s.reject(e.error),t.postNext()},Log(t,e){t.options.debug&&console.log("Log:",e)}}}Start(){return zE(this,void 0,void 0,function*(){if(this.ready)throw Error("Worker already started");this.worker=yield this.adaptor.createWorker(this.Listener.bind(this),this.options)})}debug(t,...e){this.options.debug&&console.info(t,...e)}Listener(t){this.debug("Worker >>> Client:",t.data),Object.hasOwn(this.Commands,t.data.cmd)?this.Commands[t.data.cmd](this,t.data.data):this.debug("Invalid command from worker: "+t.data.cmd)}Post(t,e){const s=new Promise((s,i)=>{this.tasks.push(new qE(t,e,s,i))});return this.ready&&1===this.tasks.length&&this.postNext(),s}postNext(){if(this.tasks.length){const t=Object.assign({},this.tasks[0].cmd,{debug:this.options.debug});this.worker.postMessage(t)}}Cancel(t){const e=this.tasks.findIndex(e=>e.item===t);e>0&&(this.tasks[e].reject(`Task ${this.tasks[e].cmd.cmd} cancelled`),this.tasks.splice(e,1))}Setup(t){return this.Post({cmd:"setup",data:{domain:t.domain,style:t.style,locale:t.locale,modality:t.modality}})}Speech(t,e,s){return zE(this,void 0,void 0,function*(){this.Attach(s,e.enableSpeech,e.enableBraille,yield this.Post({cmd:"speech",data:{mml:t,options:e}},s))})}nextRules(t,e,s){return zE(this,void 0,void 0,function*(){this.Attach(s,e.enableSpeech,e.enableBraille,yield this.Post({cmd:"nextRules",data:{mml:t,options:e}},s))})}nextStyle(t,e,s,i){return zE(this,void 0,void 0,function*(){this.Attach(i,e.enableSpeech,e.enableBraille,yield this.Post({cmd:"nextStyle",data:{mml:t,options:e,nodeId:s}},i))})}speechFor(t,e,s){return zE(this,void 0,void 0,function*(){const i=yield this.Post({cmd:"speech",data:{mml:t,options:e}},s);return JSON.parse(i)})}Attach(t,e,s,i){const r=JSON.parse(i),n=t.typesetRoot;if(!n)return;this.setSpecialAttributes(n,r.options,"data-semantic-",["locale","domain","style","domain2style"]);const o=this.adaptor;this.setSpecialAttributes(n,r.translations,"data-semantic-");for(const[t,e]of Object.entries(r.mactions)){let s=o.getElement("#"+t,n);s&&o.childNodes(s)[0]&&(s=o.childNodes(s)[0],"rect"===o.kind(s)&&(s=o.next(s)),o.setAttribute(s,"data-semantic-type","dummy"),this.setSpecialAttributes(s,e,""))}for(const t of o.childNodes(n))"mjx-math"!==o.kind(t)&&"svg"!==o.kind(t)||this.setSpeechAttributes(t,"",r,e,s);e&&(r.label&&(o.setAttribute(n,HE.SPEECH,r.label),o.setAttribute(n,HE.SPEECH_SSML,r.ssml),t.outputData.speech=r.label),o.setAttribute(n,"data-speech-attached","true")),s&&(r.braillelabel&&(o.setAttribute(n,HE.BRAILLE,r.braillelabel),t.outputData.braille=r.braillelabel),r.braille&&o.setAttribute(n,"data-braille-attached","true"))}setSpeechAttribute(t,e,s,i){var r,n;const o=this.adaptor,a=o.getAttribute(t,"data-semantic-id");if(o.removeAttribute(t,"data-speech-node"),s&&e.speech[a]["speech-none"]){o.setAttribute(t,"data-speech-node","true");for(let[s,i]of Object.entries(e.speech[a]))s=s.replace(/-ssml$/,""),i&&o.setAttribute(t,`data-semantic-${s}`,i)}if(i&&(null===(n=null===(r=e.braille)||void 0===r?void 0:r[a])||void 0===n?void 0:n["braille-none"])){o.setAttribute(t,"data-speech-node","true");const s=e.braille[a]["braille-none"];o.setAttribute(t,HE.BRAILLE,s)}}setSpeechAttributes(t,e,s,i,r){const n=this.adaptor;if(!t||"#text"===n.kind(t)||"#comment"===n.kind(t))return e;n.hasAttribute(t,"data-semantic-id")&&(this.setSpeechAttribute(t,s,i,r),e||n.hasAttribute(t,"data-semantic-parent")||(e=n.getAttribute(t,"data-semantic-id")));for(const o of Array.from(n.childNodes(t)))e=this.setSpeechAttributes(o,e,s,i,r);return e}setSpecialAttributes(t,e,s,i){if(e){i=i||Object.keys(e);for(const r of i){const i=e[r];i&&this.adaptor.setAttribute(t,`${s}${r.toLowerCase()}`,i)}}}Detach(t){const e=t.typesetRoot;this.adaptor.removeAttribute(e,"data-speech-attached"),this.adaptor.removeAttribute(e,"data-braille-attached"),this.detachSpeech(e)}detachSpeech(t){const e=this.adaptor,s=e.childNodes(t);if(s){if("#text"!==e.kind(t))for(const s of["none","summary-none","speech","speech-none","summary","braille"])e.removeAttribute(t,`data-semantic-${s}`);for(const t of s)this.detachSpeech(t)}}Terminate(){this.debug("Terminating pending tasks");for(const t of this.tasks)t.reject(`${t.cmd.data.cmd} cancelled by WorkerHandler termination`);return this.tasks=[],this.debug("Terminating worker"),this.worker.terminate()}Stop(){return zE(this,void 0,void 0,function*(){if(!this.worker)throw Error("Worker has not been started");yield this.Terminate(),this.worker=null,this.ready=!1})}clearspeakLocalePreferences(t,e){return zE(this,void 0,void 0,function*(){yield this.Post({cmd:"localePreferences",data:{options:t}}).then(s=>{e.set(t.locale,JSON.parse(s))})})}clearspeakRelevantPreferences(t,e,s,i){return zE(this,void 0,void 0,function*(){yield this.Post({cmd:"relevantPreferences",data:{mml:t,id:e}}).then(t=>{s.set(i,t)})})}}const XE=di.config||{},GE=()=>(XE?.loader?.paths?.mathjax||XE?.__dirname||"/")+"/sre";var JE=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};function KE(t){return class extends t{constructor(){super(...arguments),this.generatorPool=new WE}attachSpeech(t){if(this.outputData.speechPromise=null,this.state()>=lr.ATTACHSPEECH)return;if(this.state(lr.ATTACHSPEECH),this.isEscaped||!t.options.enableSpeech&&!t.options.enableBraille||!t.options.enableEnrichment)return;t.getWebworker(),this.generatorPool.init(t.options,t.adaptor,t.webworker),this.outputData.mml=this.toMathML(this.root,this);const e=this.generatorPool.Speech(this).catch(e=>t.options.speechError(t,this,e));t.savePromise(e),this.outputData.speechPromise=e}detachSpeech(t){t.webworker.Detach(this)}speechFor(t){return JE(this,void 0,void 0,function*(){t=this.toEnriched(t);const e=yield this.generatorPool.SpeechFor(this,t);return[e.label,e.braillelabel]})}clear(){this.generatorPool.cancel(this)}}}function $E(t){var e;return e=class extends t{constructor(...t){super(...t),this.webworker=null;const e=this.constructor.ProcessBits;e.has("attach-speech")||e.allocate("attach-speech"),this.options.MathItem=KE(this.options.MathItem)}getWebworker(){this.webworker||(this.webworker=new VE(this.adaptor,this.options.worker),this.webworker.Start())}attachSpeech(){if(!this.processed.isSet("attach-speech")){const t=this.options;if(t.enableEnrichment&&(t.enableSpeech||t.enableBraille)){this.getWebworker();for(const t of this.math)t.attachSpeech(this)}this.processed.set("attach-speech")}return this}speechError(t,e,s){console.warn("Speech generation error:",s)}state(t,e=!1){if(super.state(t,e),t=lr.TYPESET))for(const t of this.math)t.detachSpeech(this);return this}done(){const t=Object.create(null,{done:{get:()=>super.done}});return JE(this,void 0,void 0,function*(){var e;return yield null===(e=this.webworker)||void 0===e?void 0:e.Stop(),t.done.call(this)})}},e.OPTIONS=Object.assign(Object.assign({},t.OPTIONS),{enableSpeech:!0,enableBraille:!0,speechError:(t,e,s)=>t.speechError(t,e,s),renderActions:ki(Object.assign(Object.assign({},t.OPTIONS.renderActions),{attachSpeech:[lr.ATTACHSPEECH]})),worker:{path:GE(),maps:GE().replace(/[cm]js\/a11y\/sre$/,"bundle/sre/mathmaps"),worker:"speech-worker.js",debug:!1},a11y:ki({speech:!0,braille:!0})}),e}function YE(t,e){return!t.documentClass.prototype.enrich&&e&&(t=ME(t,e)),t.documentClass=$E(t.documentClass),t}if(cr("ATTACHSPEECH",lr.INSERTED+10),MathJax.loader&&MathJax.loader.checkVersion("a11y/speech",ri,"a11y"),hi({_:{a11y:{speech_ts:Ks,speech:{GeneratorPool:Gs,SpeechUtil:Xs,WebWorker:Js}}}}),MathJax.loader){let t=gi.resolvePath("[sre]",!1),e=gi.resolvePath("[mathmaps]",!1);if(mi.window)t=new URL(t,location).href,e=new URL(e,location).href;else{const s="undefined"!=typeof require?require:MathJax.config.loader.require;s?.resolve?(t=mi.path(s.resolve(`${t}/require.mjs`)).replace(/\/[^\/]*$/,""),e=mi.path(s.resolve(`${e}/base.json`)).replace(/\/[^\/]*$/,"")):t=e=""}t&&ci(MathJax.config,"options",{worker:{path:t,maps:e}})}MathJax.startup&&MathJax.startup.extendHandler(t=>YE(t));class QE{constructor(t){this.document=t,this.CLASS=this.constructor,this.AddStyles()}static get sheetId(){return"MJX-"+this.name+"-styles"}static get styleSheet(){return document.head.querySelector("#"+this.sheetId)}AddStyles(){const t=this.CLASS.sheetId;if(!this.CLASS.style||this.document.adaptor.head().querySelector("#"+t))return;const e=this.document.adaptor.node("style",{id:t});e.innerHTML=this.CLASS.style.cssText,this.document.adaptor.head().appendChild(e)}AddElement(){if(this.div)return;const t=this.document.adaptor.node("div");t.classList.add(this.CLASS.className),this.div=t,this.inner=this.document.adaptor.node("div"),this.div.appendChild(this.inner),this.document.adaptor.body(this.document.adaptor.document).appendChild(this.div)}Show(t){this.AddElement(),this.position(t),this.div.classList.add(this.CLASS.className+"_Show")}Hide(){this.div&&(this.div.remove(),this.div=null,this.inner=null)}stackRegions(t){const e=t.getBoundingClientRect();let s=0,i=Number.POSITIVE_INFINITY;const r=this.document.adaptor.document.getElementsByClassName(this.CLASS.className+"_Show");for(let t,e=0;t=r[e];e++)t!==this.div&&(s=Math.max(t.getBoundingClientRect().bottom,s),i=Math.min(t.getBoundingClientRect().left,i));const n=(s||e.bottom+10)+window.scrollY,o=(i div`]:{"border-radius":"inherit",padding:"0 2px"},"@media (prefers-color-scheme: dark)":{["."+ex.className]:{"background-color":"#222025","box-shadow":"0px 5px 20px #000",border:"1px solid #7C7C7C"}}});class sx extends tx{static setColor(t,e,s,i){const r=this.styleSheet;if(r){const n=r.sheet.cssRules[0].style,o=`--mjx-${t}${e}-color`,a=`rgba(var(--mjx-${t}-${s}), ${1===i?1:`var(--mjx-${t}${e}-alpha)`})`;n.getPropertyValue(o)!==a&&n.setProperty(o,a);const l=`--mjx-${t}${e}-alpha`;n.getPropertyValue(l)!==String(i)&&(n.setProperty(l,i),r.sheet.cssRules[1].cssRules[0].style.setProperty(l,Math.pow(i,.7071)))}}}sx.className="MJX_LiveRegion",sx.priority={primary:1,secondary:2},sx.style=new lo({":root":{"--mjx-fg-red":"255, 0, 0","--mjx-fg-green":"0, 255, 0","--mjx-fg-blue":"0, 0, 255","--mjx-fg-yellow":"255, 255, 0","--mjx-fg-cyan":"0, 255, 255","--mjx-fg-magenta":"255, 0, 255","--mjx-fg-white":"255, 255, 255","--mjx-fg-black":"0, 0, 0","--mjx-bg-red":"255, 0, 0","--mjx-bg-green":"0, 255, 0","--mjx-bg-blue":"0, 0, 255","--mjx-bg-yellow":"255, 255, 0","--mjx-bg-cyan":"0, 255, 255","--mjx-bg-magenta":"255, 0, 255","--mjx-bg-white":"255, 255, 255","--mjx-bg-black":"0, 0, 0","--mjx-live-bg-color":"white","--mjx-live-shadow-color":"#888","--mjx-live-border-color":"#CCCCCC","--mjx-bg1-color":"rgba(var(--mjx-bg-blue), var(--mjx-bg1-alpha))","--mjx-fg1-color":"rgba(var(--mjx-fg-black), 1)","--mjx-bg2-color":"rgba(var(--mjx-bg-red), 1)","--mjx-fg2-color":"rgba(var(--mjx-fg-black), 1)","--mjx-bg1-alpha":.2,"--mjx-fg1-alpha":1,"--mjx-bg2-alpha":1,"--mjx-fg2-alpha":1},"@media (prefers-color-scheme: dark)":{":root":{"--mjx-bg-blue":"132, 132, 255","--mjx-bg-white":"0, 0, 0","--mjx-bg-black":"255, 255, 255","--mjx-fg-white":"0, 0, 0","--mjx-fg-black":"255, 255, 255","--mjx-live-bg-color":"#222025","--mjx-live-shadow-color":"black","--mjx-live-border-color":"#7C7C7C","--mjx-bg1-alpha":.3,"--mjx-fg1-alpha":1,"--mjx-bg2-alpha":1,"--mjx-fg2-alpha":1}},[`.${sx.className}`]:{position:"absolute",top:0,display:"none",width:"auto",height:"auto",padding:0,opacity:1,"z-index":"202",left:0,right:0,margin:"0 auto","background-color":"var(--mjx-live-bg-color)","box-shadow":"0px 5px 20px var(--mjx-live-shadow-color)",border:"2px solid var(--mjx-live-border-color)"},[`.${sx.className}_Show`]:{display:"block"},[`.${sx.className} > div`]:{color:"var(--mjx-fg1-color)","background-color":"var(--mjx-bg1-color)"},"mjx-container [data-sre-highlight-1]:not([data-mjx-collapsed], rect)":{color:"var(--mjx-fg1-color) ! important",fill:"var(--mjx-fg1-color) ! important"},[["mjx-container:not([data-mjx-clone-container])","[data-sre-highlight-1]:not([data-sre-enclosed], rect)"].join(" ")]:{"background-color":"var(--mjx-bg1-color) ! important"},"mjx-container rect[data-sre-highlight-1]:not([data-sre-enclosed])":{fill:"var(--mjx-bg1-color) ! important"},"mjx-container [data-sre-highlight-2]":{color:"var(--mjx-fg2-color) ! important","background-color":"var(--mjx-bg2-color) ! important",fill:"var(--mjx-fg2-color) ! important"},"mjx-container rect[data-sre-highlight-2]":{fill:"var(--mjx-bg2-color) ! important"}});class ix extends sx{constructor(){super(...arguments),this.active=!1,this.node=null,this.clear=!1,this.voiceRequest=!1,this.voiceCancelled=!1}Show(t){super.Update("\xa0"),this.node=t,super.Show(t)}Update(t){if(this.voiceRequest)return void this.makeVoice(t);speechSynthesis.onvoiceschanged=(()=>this.voiceRequest=!0).bind(this);new Promise(t=>{setTimeout(()=>{this.voiceRequest?t(!0):setTimeout(()=>{this.voiceRequest=!0,t(!0)},100)},100)}).then(()=>this.makeVoice(t))}makeVoice(t){this.active=this.document.options.a11y.voicing&&!!speechSynthesis.getVoices().length,speechSynthesis.cancel(),this.clear=!0;const[e,s]=jE(t,this.document.options.sre.locale,this.document.options.sre.rate);super.Update(e),this.active&&e&&this.makeUtterances(s,this.document.options.sre.locale)}makeUtterances(t,e){this.voiceCancelled=!1;let s=null;for(const i of t)if(i.mark){if(!s){this.highlightNode(i.mark,!0);continue}s.addEventListener("end",t=>{this.voiceCancelled||this.highlightNode(i.mark)})}else{if(i.pause){const t=parseInt(i.pause.match(/^[0-9]+/)[0]);if(isNaN(t)||!s)continue;s.addEventListener("end",e=>{speechSynthesis.pause(),setTimeout(()=>{speechSynthesis.resume()},t)});continue}s=new SpeechSynthesisUtterance(i.text),i.rate&&(s.rate=i.rate),i.pitch&&(s.pitch=i.pitch),s.lang=e,speechSynthesis.speak(s)}s&&s.addEventListener("end",t=>{this.highlighter.unhighlight()})}Hide(){this.cancelVoice(),super.Hide()}cancelVoice(){this.voiceCancelled=!0,speechSynthesis.cancel(),this.highlighter.unhighlight()}highlightNode(t,e=!1){this.highlighter.unhighlight();const s=Array.from(this.node.querySelectorAll(`[data-semantic-id="${t}"]`));this.clear&&!e||this.highlighter.highlight(s),this.clear=!1}}ix.style=null;class rx extends QE{position(t){const e=t.getBoundingClientRect(),s=this.div.getBoundingClientRect();let i,r=e.left+e.width/2-s.width/2;switch(r=r<0?0:r,r+=window.scrollX,this.document.options.a11y.align){case"top":i=e.top-s.height-10;break;case"bottom":i=e.bottom+10;break;default:i=e.top+e.height/2-s.height/2}i+=window.scrollY,i=i<0?0:i,this.div.style.top=i+"px",this.div.style.left=r+"px"}Show(t){this.AddElement(),this.div.style.fontSize=this.document.options.a11y.magnify,this.Update(t),super.Show(t)}Clear(){this.div&&(this.inner.textContent="",this.inner.style.top="",this.inner.style.backgroundColor="")}Update(t){if(!this.div)return;this.Clear();const e=this.cloneNode(t),s=e.querySelector("[data-mjx-clone]");this.inner.style.backgroundColor=t.style.backgroundColor,s.style.backgroundColor="",s.classList.remove("mjx-selected"),this.inner.appendChild(e),this.position(t)}cloneNode(t){let e=t.cloneNode(!0);if(e.setAttribute("data-mjx-clone","true"),"MJX-CONTAINER"!==e.nodeName){"g"!==e.nodeName&&(e.style.marginLeft=e.style.marginRight="0");const s=t.closest("mjx-container");if("MJX-MATH"!==e.nodeName&&"svg"!==e.nodeName){let i=s.firstChild;"MJX-BBOX"===i.nodeName&&(i=i.nextSibling),e=i.cloneNode(!1).appendChild(e).parentElement;const r=Array.from(s.querySelectorAll("[data-sre-enclosed]"));"svg"===i.nodeName?this.svgClone(t,r,e,s):this.chtmlClone(t,r,e)}e=s.cloneNode(!1).appendChild(e).parentElement,e.style.margin="0",e.style.minWidth=""}return e.setAttribute("data-mjx-clone-container","true"),e}chtmlClone(t,e,s){for(const i of e)if(i!==t){const t=i.getAttribute("data-semantic-id");t&&s.querySelector(`[data-semantic-id="${t}"]`)||s.appendChild(i.cloneNode(!0))}}svgClone(t,e,s,i){var r;let{x:n,y:o,width:a,height:l}=t.getBBox();if(e.length){s.firstChild.remove();const r=i.querySelector("g").cloneNode(!1);for(const s of e){const e=r.appendChild(s.cloneNode(!0));s===t&&e.setAttribute("data-mjx-clone","true");const[i,n]=this.xy(s);e.setAttribute("transform",`translate(${i}, ${n})`)}s.appendChild(r);const c=t.previousSibling,h=c.getBBox();a=h.width,l=h.height;const[d,u]=this.xy(c);n=d,o=u+h.y}const c=i.querySelector("g");if("full"===i.getAttribute("width")&&c.firstChild.lastChild===t)return s.innerHTML="",s.appendChild(i.cloneNode(!0).firstChild),s.querySelector(".mjx-selected").setAttribute("data-mjx-clone","true"),void(null===(r=s.querySelector("[data-sre-highlighter-added]"))||void 0===r||r.remove());s.firstChild.setAttribute("transform","scale(1, -1)");const h=parseFloat((s.getAttribute("viewBox")||s.getAttribute("data-mjx-viewBox")).split(/ /)[2]),d=parseFloat(s.style.minWidth||s.getAttribute("width"));s.setAttribute("viewBox",[n,-(o+l),a,l].join(" ")),s.removeAttribute("style"),s.setAttribute("width",d/h*a+"ex"),s.setAttribute("height",d/h*l+"ex")}xy(t){const e=DOMPoint.fromPoint({x:0,y:0}).matrixTransform(t.getCTM().inverse());return[-e.x,-e.y]}}rx.className="MJX_HoverRegion",rx.style=new lo({[`.${rx.className}`]:{display:"block",position:"absolute",width:"max-content",height:"auto",padding:0,opacity:1,"z-index":"202",margin:"0 auto","background-color":"white","line-height":0,"box-shadow":"0px 10px 20px #888",border:"2px solid #CCCCCC"},[`.${rx.className} > div`]:{overflow:"hidden",color:"var(--mjx-fg1-color)","background-color":"var(--mjx-bg1-color)"},"@media (prefers-color-scheme: dark)":{["."+rx.className]:{"background-color":"#222025","box-shadow":"0px 5px 20px #000",border:"1px solid #7C7C7C"}},"mjx-container[data-mjx-clone-container]":{padding:"2px ! important"},"mjx-math > mjx-mlabeledtr":{display:"inline-block","margin-right":".5em ! important"},"mjx-math > mjx-mtd":{float:"right"}});class nx{get highlighter(){return this.pool.highlighter}static stopEvent(t){t.preventDefault?t.preventDefault():t.returnValue=!1,t.stopImmediatePropagation?t.stopImmediatePropagation():t.stopPropagation&&t.stopPropagation(),t.cancelBubble=!0}static create(t,e,s,i,...r){return new this(t,e,s,i,...r)}constructor(t,e,s,i,...r){this.document=t,this.pool=e,this.region=s,this.node=i,this.stoppable=!0,this.events=[],this._active=!1}Events(){return this.events}get active(){return this._active}set active(t){this._active=t}Attach(){this.AddEvents()}Detach(){this.RemoveEvents()}Start(){this.active=!0}Stop(){this.active&&(this.region.Clear(),this.region.Hide(),this.active=!1)}AddEvents(){for(const[t,e]of this.events)this.node.addEventListener(t,e)}RemoveEvents(){for(const[t,e]of this.events)this.node.removeEventListener(t,e)}Update(t=!1){}stopEvent(t){this.stoppable&&nx.stopEvent(t)}}var ox=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){function o(t){try{l(i.next(t))}catch(t){n(t)}}function a(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){var e;t.done?r(t.value):(e=t.value,e instanceof s?e:new s(function(t){t(e)})).then(o,a)}l((i=i.apply(t,e||[])).next())})};const ax="Windows"===mi.os,lx=Array(40).fill("\u2800").join(""),cx="[data-speech-node]";function hx(t){return t.matches("mjx-container")}function dx(t,e=!0){return t.shiftKey&&e||t.metaKey||t.altKey||t.ctrlKey}class ux extends nx{static helpMessage(t,e,s){return`\n

Exploring expressions ${t}

\n\n

The mathematics on this page is being rendered by MathJax, which\n generates both the text spoken by screen readers, as well as the\n visual layout for sighted users.

\n\n

Expressions typeset by MathJax can be explored interactively, and\n are focusable. You can use the Tab key to move to a typeset\n expression${e}. Initially, the expression will be read in full,\n but you can use the following keys to explore the expression\n further:

\n\n
    \n\n
  • Down Arrow moves one level deeper into the\n expression to allow you to explore the current subexpression term by\n term.
  • \n\n
  • Up Arrow moves back up a level within the\n expression.
  • \n\n
  • Right Arrow moves to the next term in the\n current subexpression.
  • \n\n
  • Left Arrow moves to the next term in the\n current subexpression.
  • \n\n
  • Shift+Arrow moves to a\n neighboring cell within a table.
  • \n\n
  • 0-9+0-9 jumps to a cell\n by its index in the table, where 0 = 10.
  • \n\n
  • Home takes you to the top of the\n expression.
  • \n\n
  • Enter or Return clicks a\n link or activates an active subexpression.
  • \n\n
  • Space opens the MathJax contextual menu\n where you can view or copy the source format of the expression, or\n modify MathJax's settings.
  • \n\n
  • Escape exits the expression\n explorer.
  • \n\n
  • x gives a summary of the current\n subexpression.
  • \n\n
  • z gives the full text of a collapsed\n expression.
  • \n\n
  • d gives the current depth within the\n expression.
  • \n\n
  • s starts or stops auto-voicing with\n synchronized highlighting.
  • \n\n
  • v marks the current position in the\n expression.
  • \n\n
  • p cycles through the marked positions in\n the expression.
  • \n\n
  • u clears all marked positions and returns\n to the starting position.
  • \n\n
  • > cycles through the available speech\n rule sets (MathSpeak, ClearSpeak).
  • \n\n
  • < cycles through the verbosity levels\n for the current rule set.
  • \n\n
  • b toggles whether Braille notation is combined\n with speech text for tactile Braille devices, as discussed\n below.\n\n
  • h produces this help listing.
  • \n
\n\n

The MathJax contextual menu allows you to enable or disable speech\n or Braille generation for mathematical expressions, the language to\n use for the spoken mathematics, and other features of MathJax. In\n particular, the Explorer submenu allows you to specify how the\n mathematics should be identified in the page (e.g., by saying "math"\n when the expression is spoken), and whether or not to include a\n message about the letter "h" bringing up this dialog box. Turning off\n speech and Braille will disable the expression explorer, its\n highlighting, and its help icon.

\n\n

Support for tactile Braille devices varies across screen readers,\n browsers, and operative systems. If you are using a Braille output\n device, you may need to select the "Combine with Speech" option in the\n contextual menu's Braille submenu in order to obtain Nemeth or Euro\n Braille output rather than the speech text on your Braille\n device. ${s}

\n\n

The contextual menu also provides options for viewing or copying a\n MathML version of the expression or its original source format,\n creating an SVG version of the expression, and viewing various other\n information.

\n\n

Finally, selecting the "Insert Hidden MathML" item from the options\n submenu will turn of MathJax's speech and Braille generation and\n instead use visually hidden MathML that some screen readers can voice,\n though support for this is not universal across all screen readers and\n operating systems. Selecting speech or Braille generation in their\n submenus will remove the hidden MathML again.

\n\n

For more help, see the MathJax accessibility documentation.

\n `}get generators(){var t;return null===(t=this.item)||void 0===t?void 0:t.generatorPool}get role(){return this.item.ariaRole}get description(){return this.item.roleDescription}get none(){return this.document.options.a11y.brailleSpeech?this.item.brailleNone:this.item.none}get brailleNone(){return this.item.brailleNone}FocusIn(t){t.target.closest("mjx-html")||(this.item.outputData.nofocus?this.item.outputData.nofocus=!1:(this.clicked||(this.Start(),this.backTab=t.target===this.img),this.clicked=null))}FocusOut(t){this.current&&!this.focusSpeech&&(this.document.options.keepRegions||(this.setCurrent(null),this.Stop()),document.hasFocus()||this.focusTop())}KeyDown(t){if(this.pendingIndex.shift(),this.region.cancelVoice(),dx(t,!1))return;const e=this.constructor,s=1===t.key.length?t.key.toLowerCase():t.key,[i,r]=e.keyMap.get(s)||[],n=i?void 0===r||this.active?i(this,t):r:this.undefinedKey(t);n||(this.stopEvent(t),!1===n&&this.sound&&this.NoMove())}MouseDown(t){var e;if(this.pendingIndex=[],this.region.cancelVoice(),dx(t)||2===t.buttons)return void(this.item.outputData.nofocus=!0);const s=this.findClicked(t.target,t.x,t.y);s!==this.document.infoIcon?(null===(e=document.getSelection())||void 0===e||e.removeAllRanges(),t.target.getAttribute("sre-highlighter-added")?this.refocus=s:this.clicked=s):this.stopEvent(t)}Click(t){if(dx(t)||2===t.buttons||"Range"===document.getSelection().type)return void this.FocusOut(null);const e=this.findClicked(t.target,t.x,t.y);if(e===this.document.infoIcon)return this.stopEvent(t),void this.help();this.clicked||e&&!this.node.contains(e)||(this.refocus=e,this.triggerLinkMouse()||this.Start())}DblClick(t){var e;const s=null!==(e=document.getSelection().direction)&&void 0!==e?e:"none";dx(t)||2===t.buttons||"none"!==s?this.FocusOut(null):(this.refocus=this.rootNode(),this.Start())}spaceKey(){return this.refocus=this.current,!0}hKey(){if(!this.document.options.enableExplorerHelp)return!0;this.refocus=this.current,this.help()}escapeKey(t){return t.target.closest("mjx-html")?(this.refocus=t.target.closest(cx),this.Start()):(this.Stop(),this.focusTop(),this.setCurrent(null)),!0}tabKey(t){var e;const s=null!==(e=this.current)&&void 0!==e?e:this.node.contains(document.activeElement)?document.activeElement:null;if(0===this.tabs.length||!s)return!0;if(this.backTab)return!t.shiftKey||void this.tabTo(this.tabs[this.tabs.length-1]);const[i,r,n]=t.shiftKey?[this.tabs.slice(0).reverse(),Node.DOCUMENT_POSITION_PRECEDING,this.current&&this.isLink()?this.getAnchor():s]:[this.tabs,Node.DOCUMENT_POSITION_FOLLOWING,s];for(const t of i)if(n.compareDocumentPosition(t)&r)return void this.tabTo(t);return t.shiftKey&&this.current===this.rootNode()&&this.tabOut(),!0}tabTo(t){t.getAttribute("data-mjx-href")?this.setCurrent(this.linkFor(t)):t.focus()}tabOut(){const t=Array.from(this.node.querySelectorAll("mjx-html"));t.length&&(t.forEach(t=>{t.style.display="none"}),setTimeout(()=>{t.forEach(t=>{t.style.display=""})},0))}enterKey(t){if(this.active)if(this.triggerLinkKeyboard(t))this.Stop();else{const t=this.actionable(this.current);if(t)return this.refocus=t,void t.dispatchEvent(new Event("click"));const e=this.getInternalTabs(this.current).filter(t=>!t.getAttribute("data-mjx-href"));if(e.length)return void e[0].focus()}else this.Start()}homeKey(){this.setCurrent(this.rootNode())}moveDown(t){return t?this.moveToNeighborCell(1,0):this.moveTo(this.firstNode(this.current))}moveUp(t){return t?this.moveToNeighborCell(-1,0):this.moveTo(this.getParent(this.current))}moveRight(t){return t?this.moveToNeighborCell(0,1):this.moveTo(this.nextSibling(this.current))}moveLeft(t){return t?this.moveToNeighborCell(0,-1):this.moveTo(this.prevSibling(this.current))}moveTo(t){if(!t)return!1;this.setCurrent(t)}moveToNeighborCell(t,e){const s=this.tableCell(this.current);if(!s)return!1;const[i,r]=this.cellPosition(s);if(null==i)return!1;const n=this.cellAt(this.cellTable(s),i+t,r+e);if(!n)return!1;this.setCurrent(n)}undefinedKey(t){return!this.active||dx(t)}addMark(){this.current===this.marks[this.marks.length-1]?this.setCurrent(this.current):(this.currentMark=this.marks.length-1,this.marks.push(this.current),this.speak("Position marked"))}prevMark(){if(this.currentMark<0){if(0===this.marks.length)return void this.setCurrent(this.lastMark||this.rootNode());this.currentMark=this.marks.length-1}const t=this.currentMark;this.setCurrent(this.marks[t]),this.currentMark=t-1}clearMarks(){this.marks=[],this.currentMark=-1,this.prevMark()}autoVoice(){const t=!this.document.options.a11y.voicing;this.document.menu?this.document.menu.menu.pool.lookup("voicing").setValue(t):this.document.options.a11y.voicing=t,this.Update()}toggleBraille(){const t=!this.document.options.a11y.brailleCombine;this.document.menu?this.document.menu.menu.pool.lookup("brailleCombine").setValue(t):this.document.options.a11y.brailleCombine=t}numberKey(t){if(!this.tableCell(this.current))return!1;if(0===t&&(t=10),this.pendingIndex.length){const e=this.cellTable(this.tableCell(this.current)),s=this.cellAt(e,this.pendingIndex[0]-1,t-1);if(this.pendingIndex=[],this.speak(String(t)),!s)return!1;setTimeout(()=>this.setCurrent(s),500)}else this.pendingIndex=[null,t],this.speak(`Jump to row ${t} and column`)}depth(){var t,e,s;if("d"===this.speechType)return void this.setCurrent(this.current);this.speechType="d";const i=[[null!==(t=this.node.getAttribute("data-semantic-level"))&&void 0!==t?t:"Level",null!==(e=this.current.getAttribute("data-semantic-level-number"))&&void 0!==e?e:"0"].join(" ").trim()],r=this.actionable(this.current);r&&i.unshift(null!==(s=this.node.getAttribute("1"===r.getAttribute("toggle")?"data-semantic-expandable":"data-semantic-collapsible"))&&void 0!==s?s:""),this.speak(i.join(" "),this.current.getAttribute(HE.BRAILLE))}summary(){if("x"===this.speechType)return void this.setCurrent(this.current);this.speechType="x";const t=this.current.getAttribute(HE.SUMMARY);this.speak(t,this.current.getAttribute(HE.BRAILLE),this.SsmlAttributes(this.current,HE.SUMMARY_SSML))}nextRules(){this.node.removeAttribute("data-speech-attached"),this.restartAfter(this.generators.nextRules(this.item))}nextStyle(){this.node.removeAttribute("data-speech-attached"),this.restartAfter(this.generators.nextStyle(this.current,this.item))}details(){const t=this.actionable(this.current);if(!t||!t.getAttribute("data-collapsible")||"1"!==t.getAttribute("toggle")||"z"===this.speechType)return void this.setCurrent(this.current);this.speechType="z";const e=this.nodeId(this.current);let s;this.item.root.walkTree(t=>{t.attributes.get("data-semantic-id")===e&&(s=t)});let i=this.item.toMathML(s,this.item);s.isKind("math")||(i=`${i}`),i=i.replace(/ (?:data-semantic-|aria-|data-speech-|data-latex).*?=".*?"/g,""),this.item.speechFor(i).then(([t,e])=>this.speak(t,e))}help(){if(!this.document.options.enableExplorerHelp)return;const t=this.constructor,[e,s,i]=t.helpData.get(mi.os);po.post({title:"MathJax Expression Explorer Help",message:t.helpMessage(e,s,i),node:this.node,adaptor:this.document.adaptor,styles:{".mjx-dialog":{"max-height":"calc(min(35em, 90%))"},"mjx-dialog mjx-title":{"font-size":"133%",margin:".5em 1.75em"},"mjx-dialog h2":{"font-size":"20px",margin:".5em 0"},"mjx-dialog ul":{"list-style-type":"none"},"mjx-dialog li":{"margin-bottom":".5em"}}})}setCurrent(t,e=!1){if(this.backTab=!1,this.speechType="",document.hasFocus()||(this.refocus=this.current),this.node.setAttribute("aria-busy","true"),this.current){this.pool.unhighlight();for(const t of Array.from(this.node.querySelectorAll(".mjx-selected")))t.classList.remove("mjx-selected");"last"===this.document.options.a11y.tabSelects&&(this.refocus=this.current),t||(this.lastMark=this.current,this.removeSpeech()),this.current=null}if(this.current=t,this.currentMark=-1,this.current){const s=[...this.getSplitNodes(this.current)];this.highlighter.encloseNodes(s,this.node);for(const t of s)t.getAttribute("data-sre-enclosed")||t.classList.add("mjx-selected");this.pool.highlight(s),this.addSpeech(t,e),this.node.setAttribute("tabindex","-1"),this.Update()}this.node.removeAttribute("aria-busy")}getSplitNodes(t){const e=this.nodeId(t);if(!e)return[t];if(this.cacheParts.has(e))return this.cacheParts.get(e);const s=Array.from(this.node.querySelectorAll(`[data-semantic-id="${e}"]`)),i=this.subtree(e,s);return this.cacheParts.set(e,[...s,...i]),this.cacheParts.get(e)}subtree(t,e){const s=this.subtrees.get(t),i=new Set;for(const t of e)Array.from(t.querySelectorAll("[data-semantic-id]")).forEach(t=>i.add(this.nodeId(t)));return[...function(t,e){if(!t)return new Set;if(!e)return t;return new Set([...t].filter(t=>!e.has(t)))}(s,i)].map(t=>this.getNode(t)).filter(t=>null!==t)}addSpeech(t,e){var s;if(!this.document.options.enableSpeech&&!this.document.options.enableBraille)return;this.anchors.length?setTimeout(()=>{var t;return null===(t=this.img)||void 0===t?void 0:t.remove()},10):null===(s=this.img)||void 0===s||s.remove();let i=this.addComma([t.getAttribute(HE.PREFIX),t.getAttribute(HE.SPEECH),t.getAttribute(HE.POSTFIX)]).join(" ").trim();if(e){let t=this.description===this.none?"":", "+this.description;this.document.options.a11y.help&&this.document.options.enableExplorerHelp&&(t+=", press h for help"),i+=t}this.speak(i,t.getAttribute(HE.BRAILLE),this.SsmlAttributes(t,HE.SPEECH_SSML))}addComma(t){return t[2]&&(t[1]||t[0])&&(t[1]+=","),t}removeSpeech(){this.speech&&(this.unspeak(this.speech),this.speech=null,this.img&&this.node.append(this.img),this.node.setAttribute("tabindex",this.tabIndex))}speak(t,e="",s=null,i=this.none){const r=this.speech,n=this.speech=document.createElement("mjx-speech");if(n.setAttribute("role",this.role),n.setAttribute("aria-label",t||this.none),n.setAttribute("aria-roledescription",i||this.none),n.setAttribute(HE.SPEECH,t),s&&(n.setAttribute(HE.PREFIX_SSML,s[0]||""),n.setAttribute(HE.SPEECH_SSML,s[1]||""),n.setAttribute(HE.POSTFIX_SSML,s[2]||"")),e&&(this.document.options.a11y.brailleSpeech&&(n.setAttribute("aria-label",e),n.setAttribute("aria-roledescription",this.brailleNone)),n.setAttribute("aria-braillelabel",e),n.setAttribute("aria-brailleroledescription",this.brailleNone),this.document.options.a11y.brailleCombine&&n.setAttribute("aria-label",e+lx+t)),n.setAttribute("tabindex","0"),ax){const t=document.createElement("mjx-speech-container");t.setAttribute("role","application"),t.setAttribute("aria-roledescription",this.none),t.setAttribute("aria-brailleroledescription",this.brailleNone),t.append(n),this.node.append(t),n.setAttribute("role","img")}else this.node.append(n);this.focusSpeech=!0,n.focus(),this.focusSpeech=!1,this.Update(),r&&setTimeout(()=>this.unspeak(r),100)}unspeak(t){ax&&(t=t.parentElement),t.remove()}attachSpeech(){var t;const e=this.item,s=this.node;if(!s.hasAttribute("has-speech")){for(const t of Array.from(s.childNodes))t.setAttribute("aria-hidden","true");s.setAttribute("has-speech","true")}const i=e.roleDescription,r=(s.getAttribute(HE.SPEECH)||"")+(i?", "+i:"");null===(t=this.img)||void 0===t||t.remove(),this.img=this.document.adaptor.node("mjx-speech",{"aria-label":r,role:"img","aria-roledescription":e.none});const n=s.getAttribute(HE.BRAILLE);n&&(this.document.options.a11y.brailleSpeech&&(this.img.setAttribute("aria-label",n),this.img.setAttribute("aria-roledescription",this.brailleNone)),this.img.setAttribute("aria-braillelabel",n),this.img.setAttribute("aria-brailleroledescription",this.brailleNone),this.document.options.a11y.brailleCombine&&this.img.setAttribute("aria-label",n+lx+r)),s.appendChild(this.img),this.adjustAnchors(),this.getTabs()}detachSpeech(){var t;const e=this.node;null===(t=this.img)||void 0===t||t.remove(),e.removeAttribute("has-speech");for(const t of Array.from(e.childNodes))t.removeAttribute("aria-hidden");this.restoreAnchors()}adjustAnchors(){this.anchors=Array.from(this.node.querySelectorAll("a[href]"));for(const t of this.anchors){const e=t.getAttribute("href");t.setAttribute("data-mjx-href",e),t.removeAttribute("href")}this.anchors.length&&this.img.setAttribute("tabindex","0")}restoreAnchors(){for(const t of this.anchors)t.setAttribute("href",t.getAttribute("data-mjx-href")),t.removeAttribute("data-mjx-href");this.anchors=[]}getTabs(){this.tabs=this.getInternalTabs(this.node)}getInternalTabs(t){return Array.from(t.querySelectorAll('button, [data-mjx-href], input, select, textarea, [tabindex]:not([tabindex="-1"],mjx-speech)'))}focus(){this.node.focus()}nodeId(t){return t.getAttribute("data-semantic-id")}parentId(t){return t.getAttribute("data-semantic-parent")}getNode(t){return t?this.node.querySelector(`[data-semantic-id="${t}"]`):null}getParent(t){return this.getNode(this.parentId(t))}childArray(t){return t?t.getAttribute("data-semantic-children").split(/,/):[]}isCell(t){return!!t&&this.cellTypes.includes(t.getAttribute("data-semantic-type"))}isRow(t){return!!t&&"row"===t.getAttribute("data-semantic-type")}tableCell(t){for(;t&&t!==this.node;){if(this.isCell(t))return t;t=t.parentNode}return null}cellTable(t){const e=this.getParent(t);return this.isRow(e)?this.getParent(e):e}cellPosition(t){const e=this.getParent(t),s=this.childArray(e).indexOf(this.nodeId(t));if(!this.isRow(e))return[s,1];const i=this.getParent(e);return[this.childArray(i).indexOf(this.nodeId(e)),s]}cellAt(t,e,s){const i=this.getNode(this.childArray(t)[e]);if(!this.isRow(i))return 1===s?i:null;return this.getNode(this.childArray(i)[s])}firstNode(t){const e=t.getAttribute("data-semantic-owns");if(!e)return t.querySelector(cx);const s=e.split(/ /);for(const t of s){const e=this.getNode(t);if(null==e?void 0:e.hasAttribute("data-speech-node"))return e}return t.querySelector(cx)}rootNode(){const t=this.node.querySelector("[data-semantic-structure]");if(!t)return this.node.querySelector(cx);const e=t.getAttribute("data-semantic-structure").split(/ /)[0].replace("(","");return this.getNode(e)}nextSibling(t){var e;const s=this.parentId(t);if(!s)return null;const i=null===(e=this.getNode(s).getAttribute("data-semantic-owns"))||void 0===e?void 0:e.split(/ /);if(!i)return null;let r,n=i.indexOf(this.nodeId(t));do{r=this.getNode(i[++n])}while(r&&!r.hasAttribute("data-speech-node"));return r}prevSibling(t){var e;const s=this.parentId(t);if(!s)return null;const i=null===(e=this.getNode(s).getAttribute("data-semantic-owns"))||void 0===e?void 0:e.split(/ /);if(!i)return null;let r,n=i.indexOf(this.nodeId(t));do{r=this.getNode(i[--n])}while(r&&!r.hasAttribute("data-speech-node"));return r}findClicked(t,e,s){const i=this.document.infoIcon;if(i===t||i.contains(t))return i;if("SVG"!==this.node.getAttribute("jax"))return t.closest(cx);let r=null,n=this.node;for(;n;){n.matches(cx)&&(r=n);const t=Array.from(n.childNodes);n=null;for(const i of t)if(i!==this.speech&&i!==this.img&&i.tagName&&"rect"!==i.tagName.toLowerCase()){const{left:t,right:r,top:o,bottom:a}=i.getBoundingClientRect();if(t<=e&&e<=r&&o<=s&&s<=a){n=i;break}}}return r}isLink(t=this.current){var e;return!!(null===(e=null==t?void 0:t.getAttribute("data-semantic-attributes"))||void 0===e?void 0:e.includes("href:"))}getAnchor(t=this.current){const e=t.closest("a");return e&&this.node.contains(e)?e:null}linkFor(t){return null==t?void 0:t.querySelector('[data-semantic-attributes*="href:"]')}parentLink(t){const e=null==t?void 0:t.closest('[data-semantic-attributes*="href:"]');return e&&this.node.contains(e)?e:null}focusTop(){this.focusSpeech=!0,this.node.focus(),this.focusSpeech=!1}SsmlAttributes(t,e){return[t.getAttribute(HE.PREFIX_SSML),t.getAttribute(e),t.getAttribute(HE.POSTFIX_SSML)]}restartAfter(t){return ox(this,void 0,void 0,function*(){yield t,this.attachSpeech();const e=this.current;this.current=null,this.pool.unhighlight(),this.setCurrent(e)})}constructor(t,e,s,i,r,n,o,a){super(t,e,null,i),this.document=t,this.pool=e,this.region=s,this.node=i,this.brailleRegion=r,this.magnifyRegion=n,this.item=a,this.sound=!1,this.current=null,this.clicked=null,this.refocus=null,this.focusSpeech=!1,this.restarted=null,this.speech=null,this.speechType="",this.img=null,this.attached=!1,this.eventsAttached=!1,this.marks=[],this.currentMark=-1,this.lastMark=null,this.pendingIndex=[],this.cellTypes=["cell","line"],this.backTab=!1,this.events=super.Events().concat([["focusin",this.FocusIn.bind(this)],["focusout",this.FocusOut.bind(this)],["keydown",this.KeyDown.bind(this)],["mousedown",this.MouseDown.bind(this)],["click",this.Click.bind(this)],["dblclick",this.DblClick.bind(this)]]),this.subtrees=null,this.cacheParts=new Map}findStartNode(){let t=this.refocus||this.current;return!t&&this.restarted&&(t=this.node.querySelector(this.restarted)),this.refocus=this.restarted=null,t}Start(){const t=Object.create(null,{Start:{get:()=>super.Start}});return ox(this,void 0,void 0,function*(){if(this.subtrees||(this.subtrees=new Map,this.getSubtrees()),!this.attached||this.active)return;if(this.document.activeItem=this.item,this.item.state(){t.contains(document.activeElement)&&(e instanceof KeyboardEvent?(this.clicked=null,"Tab"!==e.key&&"Escape"!==e.key&&e.stopPropagation()):this.clicked=e.target)};t.addEventListener("mousedown",e),t.addEventListener("click",e),t.addEventListener("keydown",e),t.addEventListener("dblclick",e)}}actionable(t){const e=null==t?void 0:t.parentNode;return e&&this.highlighter.isMactionNode(e)?e:null}triggerLinkKeyboard(t){return this.current?this.triggerLink(this.current):t.target instanceof HTMLAnchorElement&&(t.target.dispatchEvent(new MouseEvent("click")),!0)}triggerLink(t){if(this.isLink(t)){const e=this.getAnchor(t);return e.classList.add("mjx-visited"),setTimeout(()=>this.FocusOut(null),50),window.location.href=e.getAttribute("data-mjx-href"),!0}return!1}triggerLinkMouse(){const t=this.parentLink(this.refocus);return!!this.triggerLink(t)}semanticFocus(){const t=[];let e="data-semantic-id",s=this.current||this.refocus||this.node;const i=this.actionable(s);i&&(e=i.hasAttribute("data-maction-id")?"data-maction-id":"id",s=i,t.push(cx));const r=s.getAttribute(e);return r&&t.unshift(`[${e}="${r}"]`),t.join(" ")}getSubtrees(){const t=this.node.querySelector("[data-semantic-structure]");if(!t)return;const e=t.getAttribute("data-semantic-structure");const s=function(t){const e=[[]];for(const s of t)if("("===s){const t=[];e[e.length-1].push(t),e.push(t)}else")"===s?e.pop():e[e.length-1].push(s);return e[0][0]}(e.replace(/\(/g," ( ").replace(/\)/g," ) ").trim().split(/\s+/));px(s,this.subtrees)}}function px(t,e){if("string"==typeof t)return e.has(t)||e.set(t,new Set),new Set;const[s,...i]=t,r=s,n=new Set;for(const t of i){const s="string"==typeof t?t:t[0],i=px(t,e);n.add(s),i.forEach(t=>n.add(t))}return e.set(r,n),n}ux.helpData=new Map([["MacOS",["on MacOS and iOS using VoiceOver",", or the VoiceOver arrow keys to select an expression",""]],["Windows",["in Windows using NVDA or JAWS",". The screen reader should enter focus or forms mode automatically\n when the expression gets the browser focus, but if not, you can toggle\n focus mode using NVDA+space in NVDA; for JAWS, Enter should start\n forms mode while Numpad Plus leaves it. Also note that you can use\n the NVDA or JAWS key plus the arrow keys to explore the expression\n even in browse mode, and you can use NVDA+shift+arrow keys to\n navigate out of an expression that has the focus in NVDA","NVDA users need to select this option, while JAWS users should be able\n to get Braille output without changing this setting."]],["Unix",["in Unix using Orca",", and Orca should enter focus mode automatically. If not, use the\n Orca+a key to toggle focus mode on or off. Also note that you can use\n Orca+arrow keys to explore expressions even in browse mode",""]],["unknown",["with a Screen Reader.","",""]]]),ux.keyMap=new Map([["Tab",[(t,e)=>t.tabKey(e)]],["Escape",[(t,e)=>t.escapeKey(e)]],["Enter",[(t,e)=>t.enterKey(e)]],["Home",[t=>t.homeKey()]],["ArrowDown",[(t,e)=>t.moveDown(e.shiftKey),!0]],["ArrowUp",[(t,e)=>t.moveUp(e.shiftKey),!0]],["ArrowLeft",[(t,e)=>t.moveLeft(e.shiftKey),!0]],["ArrowRight",[(t,e)=>t.moveRight(e.shiftKey),!0]],[" ",[t=>t.spaceKey()]],["h",[t=>t.hKey()]],[">",[t=>t.nextRules(),!1]],["<",[t=>t.nextStyle(),!1]],["x",[t=>t.summary(),!1]],["z",[t=>t.details(),!1]],["d",[t=>t.depth(),!1]],["v",[t=>t.addMark(),!1]],["p",[t=>t.prevMark(),!1]],["u",[t=>t.clearMarks(),!1]],["s",[t=>t.autoVoice(),!1]],["b",[t=>t.toggleBraille(),!1]],...[..."0123456789"].map(t=>[t,[e=>e.numberKey(parseInt(t)),!1]])]);class mx extends nx{constructor(){super(...arguments),this.events=super.Events().concat([["mouseover",this.MouseOver.bind(this)],["mouseout",this.MouseOut.bind(this)]])}MouseOver(t){this.Start()}MouseOut(t){this.Stop()}}class fx extends mx{constructor(t,e,s,i,r,n){super(t,e,s,i),this.document=t,this.pool=e,this.region=s,this.node=i,this.nodeQuery=r,this.nodeAccess=n}MouseOut(t){this.highlighter.unhighlight(),this.region.Hide(),super.MouseOut(t)}MouseOver(t){super.MouseOver(t);const e=t.target,[s,i]=this.getNode(e);s&&(this.highlighter.unhighlight(),this.highlighter.highlight([s]),this.region.Update(i),this.region.Show(s))}getNode(t){const e=t;for(;t&&t!==this.node;){if(this.nodeQuery(t))return[t,this.nodeAccess(t)];t=t.parentNode}for(t=e;t;){if(this.nodeQuery(t))return[t,this.nodeAccess(t)];const e=t.childNodes[0];t=e&&"defs"===e.tagName?t.childNodes[1]:e}return[null,null]}}class gx extends fx{}class bx extends fx{}class Ex extends fx{constructor(t,e,s,i){super(t,e,new ZE(t),i,t=>this.highlighter.isMactionNode(t),()=>{}),this.document=t,this.pool=e,this.node=i}}class xx extends nx{constructor(t,e,s,i,r){super(t,e,null,i),this.document=t,this.pool=e,this.region=s,this.node=i,this.mml=r,this.stoppable=!1}Attach(){super.Attach(),this.Start()}Detach(){this.Stop(),super.Detach()}}class yx extends xx{Start(){this.active||(this.active=!0,this.highlighter.highlightAll(this.node))}Stop(){this.active&&this.highlighter.unhighlightAll(),this.active=!1}}class Nx extends xx{constructor(){super(...arguments),this.contrast=new vx,this.leaves=[],this.modality="data-semantic-foreground"}Start(){this.active||(this.active=!0,this.node.hasAttribute("hasforegroundcolor")||(this.colorLeaves(),this.node.setAttribute("hasforegroundcolor","true")),this.leaves.forEach(t=>this.colorize(t)))}Stop(){this.active&&this.leaves.forEach(t=>this.uncolorize(t)),this.active=!1}colorLeaves(){this.leaves=Array.from(this.node.querySelectorAll("[data-semantic-id]:not([data-semantic-children])"));for(const t of this.leaves)t.setAttribute(this.modality,this.contrast.generate()),this.contrast.increment()}colorize(t){t.hasAttribute(this.modality)&&(t.setAttribute(this.modality+"-old",t.style.color),t.style.color=t.getAttribute(this.modality))}uncolorize(t){const e=this.modality+"-old";t.hasAttribute(e)&&(t.style.color=t.getAttribute(e))}}class vx{constructor(){this.hue=10,this.sat=100,this.light=50,this.incr=53}generate(){return vx.hsl2rgb(this.hue,this.sat,this.light)}increment(){this.hue=(this.hue+this.incr)%360}static hsl2rgb(t,e,s){e=e>1?e/100:e,s=s>1?s/100:s;const i=(1-Math.abs(2*s-1))*e,r=i*(1-Math.abs(t/60%2-1)),n=s-i/2;let o=0,a=0,l=0;return 0<=t&&t<60?[o,a,l]=[i,r,0]:60<=t&&t<120?[o,a,l]=[r,i,0]:120<=t&&t<180?[o,a,l]=[0,i,r]:180<=t&&t<240?[o,a,l]=[0,r,i]:240<=t&&t<300?[o,a,l]=[r,0,i]:300<=t&&t<360&&([o,a,l]=[i,0,r]),`rgb(${255*(o+n)}, ${255*(a+n)}, ${255*(l+n)})`}}const Tx={color:"blue",alpha:.2},Cx={color:"black",alpha:1},Ax={ENCLOSED:"data-sre-enclosed",BBOX:"data-sre-highlighter-bbox",ADDED:"data-sre-highlighter-added"};class Lx{constructor(t){this.currentHighlights=[],this.priority=t,this.ATTR="data-sre-highlight-"+t}highlight(t){this.currentHighlights.push(t);for(const e of t)this.highlightNode(e),this.setHighlighted(e)}highlightAll(t){const e=this.getMactionNodes(t);for(const t of e)this.highlight([t])}unhighlight(){const t=this.currentHighlights.pop();t&&t.forEach(t=>{this.isHighlighted(t)&&(this.unhighlightNode(t),this.unsetHighlighted(t))})}unhighlightAll(){for(;this.currentHighlights.length>0;)this.unhighlight()}encloseNodes(t,e){if(1===t.length)return t;const s=this.constructor,i=s.lineSelector,r=s.lineAttr,n=new Map;for(const e of t){const t=e.closest(i),s=t?t.getAttribute(r):"";n.has(s)||n.set(s,[]),n.get(s).push(e)}for(const s of n.values())if(s.length>1){let[i,r,n,o]=[1/0,1/0,-1/0,-1/0];for(const t of s){t.setAttribute(Ax.ENCLOSED,"true");const{left:e,top:s,right:a,bottom:l}=t.getBoundingClientRect();s===l&&e===a||(eo&&(o=l),a>n&&(n=a))}const a=this.createEnclosure(i,o,n-i,o-r,e,s[0]);t.push(a)}return t}setColorCSS(t,e,s){var i,r;const n=null!==(i=e.color)&&void 0!==i?i:s.color,o=null!==(r=e.alpha)&&void 0!==r?r:s.alpha;sx.setColor(t,this.priority,n,o)}setColor(t,e){this.setColorCSS("fg",e,Cx),this.setColorCSS("bg",t,Tx)}isHighlighted(t){return t.hasAttribute(this.ATTR)}setHighlighted(t){t.setAttribute(this.ATTR,"true")}unsetHighlighted(t){t.removeAttribute(this.ATTR),t.removeAttribute(Ax.ENCLOSED)}}class Sx extends Lx{highlightNode(t){if(this.isHighlighted(t)||"svg"===t.tagName||"MJX-CONTAINER"===t.tagName||t.hasAttribute(Ax.BBOX)||t.hasAttribute(Ax.ENCLOSED))return;const{x:e,y:s,width:i,height:r}=t.getBBox(),n=this.createRect(e,s,i,r,t.getAttribute("transform"));this.setHighlighted(n),t.parentNode.insertBefore(n,t)}unhighlightNode(t){if(t.hasAttribute(Ax.BBOX))return void t.remove();const e=t.previousSibling;(null==e?void 0:e.hasAttribute(Ax.ADDED))&&e.remove()}createEnclosure(t,e,s,i,r,n){const[o,a]=this.screen2svg(t,e,n),[l,c]=this.screen2svg(t+s,e-i,n),h=this.createRect(o,a,l-o,c-a,n.getAttribute("transform"));return h.setAttribute(Ax.BBOX,"true"),n.parentNode.insertBefore(h,n),h}screen2svg(t,e,s){const i=s,r=DOMPoint.fromPoint({x:t,y:e}).matrixTransform(i.getScreenCTM().inverse());return[r.x,r.y]}createRect(t,e,s,i,r){const n=document.createElementNS("http://www.w3.org/2000/svg","rect");return n.setAttribute(Ax.ADDED,"true"),n.setAttribute("x",String(t-40)),n.setAttribute("y",String(e-40)),n.setAttribute("width",String(s+80)),n.setAttribute("height",String(i+80)),r&&n.setAttribute("transform",r),n}isMactionNode(t){return"maction"===t.getAttribute("data-mml-node")}getMactionNodes(t){return Array.from(t.querySelectorAll('[data-mml-node="maction"]'))}}Sx.lineSelector="[data-mjx-linebox]",Sx.lineAttr="data-mjx-lineno";class Rx extends Lx{highlightNode(t){}unhighlightNode(t){"mjx-bbox"===t.tagName.toLowerCase()&&t.remove()}createEnclosure(t,e,s,i,r){const n=r.getBoundingClientRect(),o=document.createElement("mjx-bbox");return o.style.width=s+"px",o.style.height=i+"px",o.style.left=t-n.left+"px",o.style.top=e-i-n.top+"px",o.style.position="absolute",r.prepend(o),o}isMactionNode(t){var e;return"mjx-maction"===(null===(e=t.tagName)||void 0===e?void 0:e.toLowerCase())}getMactionNodes(t){return Array.from(t.querySelectorAll("mjx-maction"))}}function Mx(t,e,s,i){const r=new Ix[i](t);return r.setColor(e,s),r}Rx.lineSelector="mjx-linebox",Rx.lineAttr="lineno";const Ix={SVG:Sx,CHTML:Rx,generic:Rx};class wx{constructor(t){this.document=t,this.speechRegion=new ix(this.document),this.brailleRegion=new sx(this.document),this.magnifier=new rx(this.document),this.tooltip1=new ex(this.document),this.tooltip2=new ex(this.document),this.tooltip3=new ex(this.document)}}const kx={speech:(t,e,s,...i)=>{const r=ux.create(t,e,t.explorerRegions.speechRegion,s,t.explorerRegions.brailleRegion,t.explorerRegions.magnifier,i[0],i[1]);return r.sound=!0,r},mouseMagnifier:(t,e,s,...i)=>bx.create(t,e,t.explorerRegions.magnifier,s,t=>t.hasAttribute("data-semantic-type"),t=>t),hover:(t,e,s,...i)=>Ex.create(t,e,null,s),infoType:(t,e,s,...i)=>gx.create(t,e,t.explorerRegions.tooltip1,s,t=>t.hasAttribute("data-semantic-type"),t=>t.getAttribute("data-semantic-type")),infoRole:(t,e,s,...i)=>gx.create(t,e,t.explorerRegions.tooltip2,s,t=>t.hasAttribute("data-semantic-role"),t=>t.getAttribute("data-semantic-role")),infoPrefix:(t,e,s,...i)=>gx.create(t,e,t.explorerRegions.tooltip3,s,t=>{var e;return null===(e=t.hasAttribute)||void 0===e?void 0:e.call(t,"data-semantic-prefix-none")},t=>{var e;return null===(e=t.getAttribute)||void 0===e?void 0:e.call(t,"data-semantic-prefix-none")}),flame:(t,e,s,...i)=>yx.create(t,e,null,s),treeColoring:(t,e,s,...i)=>Nx.create(t,e,null,s,...i)};class Ox{constructor(){this.explorers={},this.attached=[],this._restart=[],this.speechExplorerKeys=["speech","braille","keyMagnifier"]}get highlighter(){if(this._renderer!==this.document.outputJax.name)return this._renderer=this.document.outputJax.name,this.setPrimaryHighlighter(),this._highlighter;const[t,e]=this.colorOptions();return this._highlighter.setColor(e,t),this._highlighter}init(t,e,s,i){this.document=t,this.mml=s,this.node=e,this.setPrimaryHighlighter();for(const t of Object.keys(kx))this.explorers[t]=kx[t](this.document,this,this.node,this.mml,i);this.setSecondaryHighlighter(),this.attach()}attach(){this.attached=[];const t=[],e=this.document.options.a11y;for(const[s,i]of Object.entries(this.explorers))i instanceof ux?(i.stoppable=!1,t.unshift(i),this.speechExplorerKeys.some(t=>this.document.options.a11y[t])?(i.Attach(),this.attached.push(s)):i.Detach()):e[s]||"speech"===s&&(e.braille||e.keyMagnifier)?(i.Attach(),this.attached.push(s)):i.Detach();for(const e of t)if(e.attached){e.stoppable=!0;break}}reattach(){for(const t of this.attached){const e=this.explorers[t];e.active&&(this._restart.push(t),e.Stop())}}restart(){this._restart.forEach(t=>{this.explorers[t].Start()}),this._restart=[]}setPrimaryHighlighter(){const[t,e]=this.colorOptions();this._highlighter=Mx(sx.priority.primary,e,t,this.document.outputJax.name)}setSecondaryHighlighter(){this.secondaryHighlighter=Mx(sx.priority.secondary,{color:"red",alpha:.8},{color:"black"},this.document.outputJax.name),this.speech.region.highlighter=this.secondaryHighlighter}highlight(t){this.highlighter.highlight(t)}unhighlight(){this.secondaryHighlighter.unhighlight(),this.highlighter.unhighlight()}get speech(){return this.explorers.speech}colorOptions(){const t=this.document.options.a11y;return[{color:t.foregroundColor.toLowerCase(),alpha:t.foregroundOpacity/100},{color:t.backgroundColor.toLowerCase(),alpha:t.backgroundOpacity/100}]}}const Dx="Unix"===mi.os;function Px(t,e){var s;return s=class extends t{constructor(){super(...arguments),this.refocus=null}get ariaRole(){return this.constructor.ariaRole}get roleDescription(){const t=this.constructor;return"none"===t.roleDescription?t.none:t.roleDescription}get none(){return this.constructor.none}get brailleNone(){return this.constructor.brailleNone}attachSpeech(t){var e,s;super.attachSpeech(t),null===(s=null===(e=this.outputData.speechPromise)||void 0===e?void 0:e.then(()=>this.explorers.speech.attachSpeech()))||void 0===s||s.then(()=>{var t;(null===(t=this.explorers)||void 0===t?void 0:t.speech)&&(this.explorers.speech.restarted=this.refocus),this.refocus=null,this.explorers&&this.explorers.restart()})}detachSpeech(t){super.detachSpeech(t),this.explorers.speech.detachSpeech()}explorable(t,s=!1){if(!(this.state()>=lr.EXPLORER)){if(!this.isEscaped&&(t.options.enableExplorer||s)){const s=this.typesetRoot,i=e(this.root);this.explorers||(this.explorers=new Ox),this.explorers.init(t,s,i,this)}this.state(lr.EXPLORER)}}state(t=null,e=!1){if(tsetTimeout(()=>t.remove(),100))}}},s.ariaRole=Dx?"tree":"application",s.roleDescription="math",s.none="\x91",s.brailleNone="\u2800",s}function Bx(t){var e;return e=class extends t{constructor(...t){super(...t),this.explorerRegions=null,this.activeItem=null;const e=this.constructor.ProcessBits;e.has("explorer")||e.allocate("explorer");const s=new Qn(this.mmlFactory),i=this.options;i.a11y.speechRules||(i.a11y.speechRules=`${i.sre.domain}-${i.sre.style}`);const r=i.MathItem=Px(i.MathItem,t=>s.visitTree(t));r.roleDescription=i.roleDescription,this.explorerRegions=new wx(this),"addStyles"in this&&this.addStyles(this.constructor.speechStyles);const n=this.adaptor,o="http://www.w3.org/2000/svg";this.infoIcon=n.node("mjx-help",{},[n.node("svg",{viewBox:"0 0 18 18",xmlns:o,"aria-hidden":"true"},[n.node("circle",{stroke:"none"},[],o),n.node("circle",{},[],o),n.node("line",{x1:9,y1:9,x2:9,y2:13},[],o),n.node("line",{x1:9,y1:5.5,x2:9,y2:5.5},[],o)],o)]),this.tmpFocus=n.node("mjx-focus",{tabIndex:0,style:{outline:"none",display:"block",position:"absolute",top:0,left:"-10px",width:"1px",height:"1px",overflow:"hidden"},role:r.ariaRole,"aria-label":r.none,"aria-roledescription":r.none})}explorable(){if(!this.processed.isSet("explorer")){if(this.options.enableExplorer)for(const t of this.math)t.explorable(this);this.processed.set("explorer")}return this}rerender(t){const e=this.activeItem,s=null==e?void 0:e.setTemporaryFocus(this);return super.rerender(t),null==e||e.clearTemporaryFocus(s),this}state(t,e=!1){return super.state(t,e),t mjx-help":{display:"none",position:"absolute",top:"-.3em",right:"-.5em",width:".6em",height:".6em",cursor:"pointer"},'mjx-container[display="true"] > mjx-help':{position:"sticky",inset:"-100% 0 100% 0",margin:"-.3em -.5em 0 -.1em",right:0,top:"initial"},"mjx-help > svg":{stroke:"black",width:"100%",height:"100%"},"mjx-help > svg > circle":{"stroke-width":"1.5px",cx:"9px",cy:"9px",r:"9px",fill:"white"},"mjx-help > svg > circle:nth-child(2)":{fill:"var(--mjx-bg1-color)",r:"7px"},"mjx-help > svg > line":{"stroke-width":"2.5px","stroke-linecap":"round"},"mjx-help:hover > svg > circle:nth-child(2)":{fill:"white"},"mjx-container.mjx-explorer-active > mjx-help":{display:"inline-flex","align-items":"center"},"@media (prefers-color-scheme: dark) /* explorer */":{"mjx-help > svg":{stroke:"#E0E0E0"},"mjx-help > svg > circle":{fill:"#404040"},"mjx-help > svg > circle:nth-child(2)":{fill:"rgba(132, 132, 255, .3)"},"mjx-help:hover > svg > circle:nth-child(2)":{stroke:"#AAAAAA",fill:"#404040"}}},e}function Fx(t,e=null){return t.documentClass.prototype.attachSpeech||(t=YE(t,e)),t.documentClass=Bx(t.documentClass),t}function jx(t,e){var s;const i=Gb();for(const s in e)void 0!==t.options.a11y[s]?_x(t,s,e[s]):void 0!==i[s]&&(t.options.sre[s]=e[s]);e.roleDescription&&(t.options.MathItem.roleDescription=e.roleDescription);for(const e of t.math)null===(s=null==e?void 0:e.explorers)||void 0===s||s.attach()}function _x(t,e,s){switch(e){case"speechRules":{const[e,i]=s.split("-");t.options.sre.domain=e,t.options.sre.style=i;break}case"magnification":switch(s){case"None":t.options.a11y.magnification=s,t.options.a11y.keyMagnifier=!1,t.options.a11y.mouseMagnifier=!1;break;case"Keyboard":t.options.a11y.magnification=s,t.options.a11y.keyMagnifier=!0,t.options.a11y.mouseMagnifier=!1;break;case"Mouse":t.options.a11y.magnification=s,t.options.a11y.keyMagnifier=!1,t.options.a11y.mouseMagnifier=!0}break;case"highlight":switch(s){case"None":t.options.a11y.highlight=s,t.options.a11y.hover=!1,t.options.a11y.flame=!1;break;case"Hover":t.options.a11y.highlight=s,t.options.a11y.hover=!0,t.options.a11y.flame=!1;break;case"Flame":t.options.a11y.highlight=s,t.options.a11y.hover=!1,t.options.a11y.flame=!0}break;case"locale":t.options.sre.locale=s;break;default:t.options.a11y[e]=s}}cr("EXPLORER",lr.INSERTED+30),MathJax.loader&&MathJax.loader.checkVersion("a11y/explorer",ri,"a11y"),hi({_:{a11y:{explorer_ts:ii,explorer:{Explorer:Ys,ExplorerPool:si,Highlighter:ei,KeyExplorer:Qs,MouseExplorer:Zs,Region:$s,TreeExplorer:ti}}}}),MathJax.startup&&ui&&MathJax.startup.extendHandler(t=>Fx(t)),Ti.preLoaded("a11y/sre","a11y/semantic-enrich","a11y/speech","a11y/explorer","input/mml"),Ti.preLoaded("loader","startup","core","input/tex","input/mml","output/chtml","ui/menu"),Ti.saveVersion("tex-mml-chtml"),function(t,e){lu.loadFont(t,"chtml",iu,e)}(function(t){return Ti.load(...Ai.load).then(()=>(t||function(){})()).then(()=>Ai.ready()).catch(t=>Ai.failed(t))},!0)})()})(); \ No newline at end of file