(function(){“use strict”;var webpack_modules={667:function(e,t){t.q=void 0,t.q=“3.2.2”},63:function(__unused_webpack_module,exports){function createTransform(){var nodeRequire=eval(“require”),dirname=eval(“__dirname”);try{nodeRequire.resolve(“saxon-js”)}catch(e){throw Error(“Saxon-js not found. Run the command:n npm install saxon-jsnand try again.”)}var Saxon=nodeRequire(“saxon-js”),path=nodeRequire(“path”),fs=nodeRequire(“fs”),xsltFile=path.resolve(dirname,“mml3.sef.json”),xslt=JSON.parse(fs.readFileSync(xsltFile));return function(e,t){var l,s=t.adaptor,n=s.outerHTML(e);n.match(/ xmlns/)||(n=n.replace(/<(?:(w+)(:))?math/,‘<$1$2math xmlns$2$1=“www.w3.org/1998/Math/MathML”’));try{l=s.firstChild(s.body(s.parse(Saxon.transform({stylesheetInternal:xslt,sourceText:n,destination:“serialized”}).principalResult)))}catch(t){l=e}return l}}Object.defineProperty(exports,“__esModule”,{value:!0}),exports.createTransform=void 0,exports.createTransform=createTransform},514:function(e,t,l){var s,n=this&&this.__extends||(s=function(e,t){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var l in t)Object.prototype.hasOwnProperty.call(t,l)&&(e=t)},s(e,t)},function(e,t){if(“function”!=typeof t&&null!==t)throw new TypeError(“Class extends value ”+String(t)+“ is not a constructor or null”);function l(){this.constructor=e}s(e,t),e.prototype=null===t?Object.create(t):(l.prototype=t.prototype,new l)}),m=this&&this.__assign||function(){return m=Object.assign||function(e){for(var t,l=1,s=arguments.length;l<s;l++)for(var n in t=arguments)Object.prototype.hasOwnProperty.call(t,n)&&(e=t);return e},m.apply(this,arguments)},o=this&&this.__read||function(e,t){var l=“function”==typeof Symbol&&e;if(!l)return e;var s,n,m=l.call(e),o=[];try{for(;(void 0===t||t– >0)&&!(s=m.next()).done;)o.push(s.value)}catch(e){n={error:e}}finally{try{s&&!s.done&&(l=m.return)&&l.call(m)}finally{if(n)throw n.error}}return o},a=this&&this.__spreadArray||function(e,t,l){if(l||2===arguments.length)for(var s,n=0,m=t.length;n<m;n++)!s&&n in t||(s||(s=Array.prototype.slice.call(t,0,n)),s=t);return e.concat(s||Array.prototype.slice.call(t))},r=this&&this.__values||function(e){var t=“function”==typeof Symbol&&Symbol.iterator,l=t&&e,s=0;if(l)return l.call(e);if(e&&“number”==typeof e.length)return{next:function(){return e&&s>=e.length&&(e=void 0),{value:e&&e,done:!e}}};throw new TypeError(t?“Object is not iterable.”:“Symbol.iterator is not defined.”)};Object.defineProperty(t,“__esModule”,{value:!0}),t.Mml3Handler=t.Mml3=void 0;var c=l(63),i=function(){function e(t){if(“undefined”==typeof XSLTProcessor)this.transform=(0,c.createTransform)();else{var l=new XSLTProcessor,s=t.adaptor.parse(e.XSLT,“text/xml”);l.importStylesheet(s),this.transform=function(e){var s=t.adaptor,n=s.node(“div”,{},[s.clone(e)]),m=l.transformToDocument(n);return s.tags(m,“math”)}}}return e.prototype.mmlFilter=function(e){e.document.options.enableMml3&&(e.data=this.transform(e.data,e.document))},e}();t.Mml3=i,t.Mml3Handler=function(e){var t;return e.documentClass=(t=function(e){function t(){for(var t,l,s=[],n=0;n<arguments.length;n++)s=arguments;var m=e.apply(this,a([],o(s),!1))||this;try{for(var c=r(m.inputJax||[]),p=c.next();!p.done;p=c.next()){var x=p.value;if(“MathML”===x.name){if(!x.options._mml3){var d=new i(m);x.mmlFilters.add(d.mmlFilter.bind(d)),x.options._mml3=!0}break}}}catch(e){t={error:e}}finally{try{p&&!p.done&&(l=c.return)&&l.call©}finally{if(t)throw t.error}}return m}return n(t,e),t}(e.documentClass),t.OPTIONS=m(m({},e.documentClass.OPTIONS),{enableMml3:!0}),t),e},i.XSLT=‘n<xsl:stylesheet version=“1.0” xmlns:xsl=“www.w3.org/1999/XSL/Transform”nttxmlns:m=“www.w3.org/1998/Math/MathML”nttxmlns:c=“exslt.org/common”nttexclude-result-prefixes=“m c”>n<xsl:output indent=“yes” omit-xml-declaration=“yes”/>n<xsl:output indent=“yes” omit-xml-declaration=“yes”/>n<xsl:template match=“*”>n <xsl:copy>n <xsl:copy-of select=“@*”/>n <xsl:apply-templates/>n </xsl:copy>n</xsl:template>n<xsl:template match=“m:*” priority=“10”>n <xsl:apply-templates mode=“rtl” select=“.”/>n</xsl:template>n<xsl:template match=“@*” mode=“rtl”>n <xsl:copy-of select=“.”/>n <xsl:attribute name=“dir”>ltr</xsl:attribute>n</xsl:template>n<xsl:template match=“*” mode=“rtl”>n <xsl:copy>n <xsl:apply-templates select=“@*” mode=“rtl”/>n <xsl:for-each select=“node()”>n <xsl:sort data-type=“number” order=“descending” select=“position()”/>n <xsl:text> </xsl:text>n <xsl:apply-templates mode=“rtl” select=“.”/>n </xsl:for-each>n </xsl:copy>n</xsl:template>n<xsl:template match=“@open” mode=“rtl”>n <xsl:attribute name=“close”><xsl:value-of select=“.”/></xsl:attribute>n</xsl:template>n<xsl:template match=“@open” mode=“rtl”>n <xsl:attribute name=“close”>)</xsl:attribute>n</xsl:template>n<xsl:template match=“@open” mode=“rtl”>n <xsl:attribute name=“close”>(</xsl:attribute>n</xsl:template>n<xsl:template match=“@open[.='” mode=“rtl”>n <xsl:attribute name=“close”>]</xsl:attribute>n</xsl:template>n<xsl:template match=“@open']” mode=“rtl”>n <xsl:attribute name=“close”>[</xsl:attribute>n</xsl:template>n<xsl:template match=“@open” mode=“rtl”>n <xsl:attribute name=“close”>}</xsl:attribute>n</xsl:template>n<xsl:template match=“@open” mode=“rtl”>n <xsl:attribute name=“close”>{</xsl:attribute>n</xsl:template>n<xsl:template match=“@close” mode=“rtl”>n <xsl:attribute name=“open”><xsl:value-of select=“.”/></xsl:attribute>n</xsl:template>n<xsl:template match=“@close” mode=“rtl”>n <xsl:attribute name=“open”>)</xsl:attribute>n</xsl:template>n<xsl:template match=“@close” mode=“rtl”>n <xsl:attribute name=“open”>(</xsl:attribute>n</xsl:template>n<xsl:template match=“@close[.='” mode=“rtl”>n <xsl:attribute name=“open”>]</xsl:attribute>n</xsl:template>n<xsl:template match=“@close']” mode=“rtl”>n <xsl:attribute name=“open”>[</xsl:attribute>n</xsl:template>n<xsl:template match=“@close” mode=“rtl”>n <xsl:attribute name=“open”>}</xsl:attribute>n</xsl:template>n<xsl:template match=“@close” mode=“rtl”>n <xsl:attribute name=“open”>{</xsl:attribute>n</xsl:template>n<xsl:template match=“m:mfrac” mode=“rtl”>n <m:mrow>n <m:msub><m:mi></m:mi><xsl:apply-templates select=“*” mode=“rtl”/></m:msub>n <m:mo>\</m:mo>n <m:msup><m:mi></m:mi><xsl:apply-templates select=“*” mode=“rtl”/></m:msup>n </m:mrow>n</xsl:template>n<xsl:template match=“m:mfrac” mode=“rtl”>n <xsl:copy>n <xsl:apply-templates mode=“rtl” select=“@*|*”/>n </xsl:copy>n</xsl:template>n<xsl:template match=“m:mroot” mode=“rtl”>n <m:msup>n <m:menclose notation=“top right”>n <xsl:apply-templates mode=“rtl” select=“@*|*”/>n </m:menclose>n <xsl:apply-templates mode=“rtl” select=“*”/>n </m:msup>n</xsl:template>n<xsl:template match=“m:msqrt” mode=“rtl”>n <m:menclose notation=“top right”>n <xsl:apply-templates mode=“rtl” select=“@*|*”/>n </m:menclose>n</xsl:template>n<xsl:template match=“m:mtable|m:munder|m:mover|m:munderover” mode=“rtl” priority=“2”>n <xsl:copy>n <xsl:apply-templates select=“@*” mode=“rtl”/>n <xsl:apply-templates mode=“rtl”>n </xsl:apply-templates>n </xsl:copy>n</xsl:template>n<xsl:template match=“m:msup” mode=“rtl” priority=“2”>n <m:mmultiscripts>n <xsl:apply-templates select=“*” mode=“rtl”/>n <m:mprescripts/>n <m:none/>n <xsl:apply-templates select=“*” mode=“rtl”/>n </m:mmultiscripts>n</xsl:template>n<xsl:template match=“m:msub” mode=“rtl” priority=“2”>n <m:mmultiscripts>n <xsl:apply-templates select=“*” mode=“rtl”/>n <m:mprescripts/>n <xsl:apply-templates select=“*” mode=“rtl”/>n <m:none/>n </m:mmultiscripts>n</xsl:template>n<xsl:template match=“m:msubsup” mode=“rtl” priority=“2”>n <m:mmultiscripts>n <xsl:apply-templates select=“*” mode=“rtl”/>n <m:mprescripts/>n <xsl:apply-templates select=“*” mode=“rtl”/>n <xsl:apply-templates select=“*” mode=“rtl”/>n </m:mmultiscripts>n</xsl:template>n<xsl:template match=“m:mmultiscripts” mode=“rtl” priority=“2”>n <m:mmultiscripts>n <xsl:apply-templates select=“*” mode=“rtl”/>n <xsl:for-each select=“m:mprescripts/following-sibling::*[position() mod 2 = 1]”>n <xsl:sort data-type=“number” order=“descending” select=“position()”/>n <xsl:apply-templates select=“.” mode=“rtl”/>n <xsl:apply-templates select=“following-sibling::*” mode=“rtl”/>n </xsl:for-each>n <m:mprescripts/>n <xsl:for-each select=“m:mprescripts/preceding-sibling::*[position() mod 2 = 0]”>n <xsl:sort data-type=“number” order=“descending” select=“position()”/>n <xsl:apply-templates select=“.” mode=“rtl”/>n <xsl:apply-templates select=“following-sibling::*” mode=“rtl”/>n </xsl:for-each>n </m:mmultiscripts>n</xsl:template>n<xsl:template match=“m:mmultiscripts” mode=“rtl” priority=“3”>n <m:mmultiscripts>n <xsl:apply-templates select=“*” mode=“rtl”/>n <m:mprescripts/>n <xsl:for-each select=“*[position() mod 2 = 0]”>n <xsl:sort data-type=“number” order=“descending” select=“position()”/>n <xsl:apply-templates select=“.” mode=“rtl”/>n <xsl:apply-templates select=“following-sibling::*” mode=“rtl”/>n </xsl:for-each>n </m:mmultiscripts>n</xsl:template>n<xsl:template match=“text()” mode=“rtl”>)</xsl:template>n<xsl:template match=“text()” mode=“rtl”>(</xsl:template>n<xsl:template match=“text()” mode=“rtl”>}</xsl:template>n<xsl:template match=“text()” mode=“rtl”>{</xsl:template>n<xsl:template match=“text()” mode=“rtl”>></xsl:template>n<xsl:template match=“text()” mode=“rtl”><</xsl:template>n<xsl:template match=“text()” mode=“rtl”>∋</xsl:template>n<xsl:template match=“text()” mode=“rtl”>∈</xsl:template>n<xsl:template match=“@notation” mode=“rtl”>n <xsl:attribute name=“notation”>top right</xsl:attribute>n</xsl:template>n<xsl:template match=“m:mlongdiv|m:mstack” mode=“rtl”>n <m:mrow dir=“ltr”>n <xsl:apply-templates select=“.”/>n </m:mrow>n</xsl:template>n<xsl:template match=“m:mstack” priority=“11”>n <xsl:variable name=“m”>n <m:mtable columnspacing=“0em” rowspacing=“0em”>n <xsl:copy-of select=“@align”/>n <xsl:variable name=“t”>n <xsl:apply-templates select=“*” mode=“mstack1”>n <xsl:with-param name=“p” select=“0”/>n </xsl:apply-templates>n </xsl:variable>n <xsl:variable name=“maxl”>n <xsl:for-each select=“c:node-set($t)/*/@l”>n <xsl:sort data-type=“number” order=“descending”/>n <xsl:if test=“position()=1”>n <xsl:value-of select=“.”/>n </xsl:if>n </xsl:for-each>n </xsl:variable>n <xsl:for-each select=“c:node-set($t)/*[not(@class='mscarries') or following-sibling::*/@class='mscarries']”>n<xsl:variable name=“c” select=“preceding-sibling::*[@class='mscarries']”/>n <xsl:text> </xsl:text>n <m:mtr>n <xsl:copy-of select=“@class”/>n <xsl:variable name=“offset” select=“$maxl - @l”/>n <xsl:choose>n <xsl:when test=“@class='msline' and @l='*'”>n <xsl:variable name=“msl” select=“*”/>n <xsl:for-each select=“(//node())”>n <xsl:copy-of select=“$msl”/>n </xsl:for-each>n </xsl:when>n <xsl:when test=“$c”>n <xsl:variable name=“ldiff” select=“$c/@l - @l”/>n <xsl:variable name=“loffset” select=“$maxl - $c/@l”/>n <xsl:for-each select=“(//*)[position()<= $offset]”>n <xsl:variable name=“pn” select=“position()”/>n <xsl:variable name=“cy” select=“$c/*[position()=$pn - $loffset]”/>nt <m:mtd>nt <xsl:if test=“$cy/*”>nt <m:mover><m:mphantom><m:mn>0</m:mn></m:mphantom><m:mpadded width=“0em” lspace=“-0.5width”>nt <xsl:copy-of select=“$cy/*”/></m:mpadded></m:mover>nt </xsl:if>nt </m:mtd>n </xsl:for-each>n <xsl:for-each select=“*”>n <xsl:variable name=“pn” select=“position()”/>n <xsl:variable name=“cy” select=“$c/*[position()=$pn + $ldiff]”/>n <xsl:copy>nt<xsl:copy-of select=“@*”/>nt<xsl:variable name=“b”>nt <xsl:choose>nt <xsl:when test=“not(string($cy/@crossout) or $cy/@crossout='none')”><xsl:copy-of select=“*”/></xsl:when>nt <xsl:otherwise>nt <m:menclose notation=“{$cy/@crossout}”><xsl:copy-of select=“*”/></m:menclose>nt </xsl:otherwise>nt </xsl:choose>nt</xsl:variable>nt<xsl:choose>nt <xsl:when test=“$cy/m:none or not($cy/*)”><xsl:copy-of select=“$b”/></xsl:when>nt <xsl:when test=“not(string($cy/@location)) or $cy/@location='n'”>nt <m:mover>nt <xsl:copy-of select=“$b”/><m:mpadded width=“0em” lspace=“-0.5width”>nt <xsl:copy-of select=“$cy/*”/>nt </m:mpadded>nt </m:mover>nt </xsl:when>nt <xsl:when test=“$cy/@location='nw'”>nt <m:mmultiscripts><xsl:copy-of select=“$b”/><m:mprescripts/><m:none/><m:mpadded lspace=“-1width” width=“0em”><xsl:copy-of select=“$cy/*”/></m:mpadded></m:mmultiscripts>nt </xsl:when>nt <xsl:when test=“$cy/@location='s'”>nt <m:munder><xsl:copy-of select=“$b”/><m:mpadded width=“0em” lspace=“-0.5width”><xsl:copy-of select=“$cy/*”/></m:mpadded></m:munder>nt </xsl:when>nt <xsl:when test=“$cy/@location='sw'”>nt <m:mmultiscripts><xsl:copy-of select=“$b”/><m:mprescripts/><m:mpadded lspace=“-1width” width=“0em”><xsl:copy-of select=“$cy/*”/></m:mpadded><m:none/></m:mmultiscripts>nt </xsl:when>nt <xsl:when test=“$cy/@location='ne'”>nt <m:msup><xsl:copy-of select=“$b”/><m:mpadded width=“0em”><xsl:copy-of select=“$cy/*”/></m:mpadded></m:msup>nt </xsl:when>nt <xsl:when test=“$cy/@location='se'”>nt <m:msub><xsl:copy-of select=“$b”/><m:mpadded width=“0em”><xsl:copy-of select=“$cy/*”/></m:mpadded></m:msub>nt </xsl:when>nt <xsl:when test=“$cy/@location='w'”>nt <m:msup><m:mrow/><m:mpadded lspace=“-1width” width=“0em”><xsl:copy-of select=“$cy/*”/></m:mpadded></m:msup>nt <xsl:copy-of select=“$b”/>nt </xsl:when>nt <xsl:when test=“$cy/@location='e'”>nt <xsl:copy-of select=“$b”/>nt <m:msup><m:mrow/><m:mpadded width=“0em”><xsl:copy-of select=“$cy/*”/></m:mpadded></m:msup>nt </xsl:when>nt <xsl:otherwise>nt <xsl:copy-of select=“$b”/>nt </xsl:otherwise>nt</xsl:choose>n </xsl:copy>n </xsl:for-each>n </xsl:when>n <xsl:otherwise>n <xsl:for-each select=“(//*)[position()<= $offset]”><m:mtd/></xsl:for-each>n <xsl:copy-of select=“*”/>n </xsl:otherwise>n </xsl:choose>n </m:mtr>n </xsl:for-each>n </m:mtable>n</xsl:variable>n<xsl:apply-templates mode=“ml” select=“c:node-set($m)”/>n</xsl:template>n<xsl:template match=“m:none” mode=“ml”>n<m:mrow/>n</xsl:template>n<xsl:template match=“*” mode=“ml”>n <xsl:copy>n <xsl:copy-of select=“@*”/>n <xsl:apply-templates mode=“ml”/>n </xsl:copy>n</xsl:template>n<xsl:template mode=“ml” match=“m:mtr[following-sibling::*[@class='msline']]”>n <m:mtr>n <xsl:copy-of select=“@*”/>n <xsl:variable name=“m” select=“following-sibling::*/m:mtd”/>n <xsl:for-each select=“m:mtd”>n <xsl:variable name=“p” select=“position()”/>n <m:mtd>n <xsl:copy-of select=“@*”/>n <xsl:choose>n <xsl:when test=“$m/m:mpadded”>n <m:mpadded depth=“+.2em”>n <m:menclose notation=“bottom”>n <m:mpadded depth=“.1em” height=“.8em” width=“.8em”>n <m:mspace width=“.15em”/>n <xsl:copy-of select=“*”/>n </m:mpadded>n </m:menclose>n </m:mpadded>n </xsl:when>n <xsl:otherwise>n <xsl:copy-of select=“*”/>n </xsl:otherwise>n </xsl:choose>n </m:mtd>n </xsl:for-each>n </m:mtr>n</xsl:template>n<xsl:template mode=“ml” match=“m:mtr[@class='msline']” priority=“3”>n <m:mtr>n <xsl:copy-of select=“@*”/>n <xsl:for-each select=“m:mtd”>n <m:mtd>n <xsl:copy-of select=“@*”/>n <xsl:if test=“m:mpadded”>n <m:menclose notation=“bottom”>n <m:mpadded depth=“.1em” height=“1em” width=“.5em”>n <m:mspace width=“.2em”/>n </m:mpadded>n </m:menclose>n </xsl:if>n </m:mtd>n </xsl:for-each>n </m:mtr>n</xsl:template>n<xsl:template mode=“ml” match=“m:mtr” priority=“2”/>n<xsl:template mode=“mstack1” match=“*”>n <xsl:param name=“p”/>n <xsl:param name=“maxl” select=“0”/>n <m:mtr l=“{1 + $p}”>n <xsl:if test=“ancestor::mstack/@stackalign='left'”>n <xsl:attribute name=“l”><xsl:value-of select=“$p”/></xsl:attribute>n </xsl:if>n <m:mtd><xsl:apply-templates select=“.”/></m:mtd>n </m:mtr>n</xsl:template>n<xsl:template mode=“mstack1” match=“m:msrow”>n <xsl:param name=“p”/>n <xsl:param name=“maxl” select=“0”/>n <xsl:variable name=“align1” select=“ancestor::m:mstack/@stackalign”/>n <xsl:variable name=“align”>n <xsl:choose>n <xsl:when test=“string($align1)=''”>decimalpoint</xsl:when>n <xsl:otherwise><xsl:value-of select=“$align1”/></xsl:otherwise>n </xsl:choose>n </xsl:variable>n <xsl:variable name=“row”>n <xsl:apply-templates mode=“mstack1” select=“*”>n <xsl:with-param name=“p” select=“0”/>n </xsl:apply-templates>n </xsl:variable>n <xsl:text> </xsl:text>n <xsl:variable name=“l1”>n <xsl:choose>n <xsl:when test=“$align='decimalpoint' and m:mn”>n <xsl:for-each select=“c:node-set($row)/m:mtr[1]”>n <xsl:value-of select=“number(sum(@l))+count(preceding-sibling::*/@l)”/>n </xsl:for-each>n </xsl:when>n <xsl:when test=“$align='right' or $align='decimalpoint'”>n <xsl:value-of select=“count(c:node-set($row)/m:mtr/m:mtd)”/>n </xsl:when>n <xsl:otherwise>n <xsl:value-of select=“0”/>n </xsl:otherwise>n </xsl:choose>n </xsl:variable>n <m:mtr class=“msrow” l=“{number($l1) + number(sum(@position)) +$p}”>n <xsl:copy-of select=“c:node-set($row)/m:mtr/*”/>n </m:mtr>n</xsl:template>n<xsl:template mode=“mstack1” match=“m:mn”>n <xsl:param name=“p”/>n <xsl:variable name=“align1” select=“ancestor::m:mstack/@stackalign”/>n <xsl:variable name=“dp1” select=“ancestor::*[1]/@decimalpoint”/>n <xsl:variable name=“align”>n <xsl:choose>n <xsl:when test=“string($align1)=''”>decimalpoint</xsl:when>n <xsl:otherwise><xsl:value-of select=“$align1”/></xsl:otherwise>n </xsl:choose>n </xsl:variable>n <xsl:variable name=“dp”>n <xsl:choose>n <xsl:when test=“string($dp1)=''”>.</xsl:when>n <xsl:otherwise><xsl:value-of select=“$dp1”/></xsl:otherwise>n </xsl:choose>n </xsl:variable>n <m:mtr l=“$p”>n <xsl:variable name=“mn” select=“normalize-space(.)”/>n <xsl:variable name=“len” select=“string-length($mn)”/>n <xsl:choose>n <xsl:when test=“$align='right' or ($align='decimalpoint' and not(contains($mn,$dp)))”>n <xsl:attribute name=“l”><xsl:value-of select=“$p + $len”/></xsl:attribute>n </xsl:when>n <xsl:when test=“$align='center'”>n <xsl:attribute name=“l”><xsl:value-of select=“round(($p + $len) div 2)”/></xsl:attribute>n </xsl:when>n <xsl:when test=“$align='decimalpoint'”>n <xsl:attribute name=“l”><xsl:value-of select=“$p + string-length(substring-before($mn,$dp))”/></xsl:attribute>n </xsl:when>n </xsl:choose>n <xsl:for-each select=“(//node())[position() <=$len]”>n <xsl:variable name=“pos” select=“position()”/>n <xsl:variable name=“digit” select=“substring($mn,$pos,1)”/>n <m:mtd>n <xsl:if test=“$digit='.' or $digit=','”>n <m:mspace width=“.15em”/>n </xsl:if>n <m:mn><xsl:value-of select=“$digit”/></m:mn>n </m:mtd>n </xsl:for-each>n </m:mtr>n</xsl:template>n<xsl:template match=“m:msgroup” mode=“mstack1”>n <xsl:param name=“p”/>n <xsl:variable name=“s” select=“number(sum(@shift))”/>n <xsl:variable name=“thisp” select=“number(sum(@position))”/>n <xsl:for-each select=“*”>n <xsl:apply-templates mode=“mstack1” select=“.”>n <xsl:with-param name=“p” select=“number($p)+$thisp+(position()-1)*$s”/>n </xsl:apply-templates>n </xsl:for-each>n</xsl:template>n<xsl:template match=“m:msline” mode=“mstack1”>n <xsl:param name=“p”/>n <xsl:variable name=“align1” select=“ancestor::m:mstack/@stackalign”/>n <xsl:variable name=“align”>n <xsl:choose>n <xsl:when test=“string($align1)=''”>decimalpoint</xsl:when>n <xsl:otherwise><xsl:value-of select=“$align1”/></xsl:otherwise>n </xsl:choose>n </xsl:variable>n <m:mtr class=“msline”>n <xsl:attribute name=“l”>n <xsl:choose>n <xsl:when test=“not(string(@length)) or @length=0”>*</xsl:when>n <xsl:when test=“string($align)='right' or string($align)='decimalpoint' ”><xsl:value-of select=“$p+ @length”/></xsl:when>n <xsl:otherwise><xsl:value-of select=“$p”/></xsl:otherwise>n </xsl:choose>n </xsl:attribute>n <xsl:variable name=“w”>n <xsl:choose>n <xsl:when test=“@mslinethickness='thin'”>0.1em</xsl:when>n <xsl:when test=“@mslinethickness='medium'”>0.15em</xsl:when>n <xsl:when test=“@mslinethickness='thick'”>0.2em</xsl:when>n <xsl:when test=“@mslinethickness”><xsl:value-of select=“@mslinethickness”/></xsl:when>n <xsl:otherwise>0.15em</xsl:otherwise>n </xsl:choose>n </xsl:variable>n <xsl:choose>n <xsl:when test=“not(string(@length)) or @length=0”>n <m:mtd class=“mslinemax”>n <m:mpadded lspace=“-0.2em” width=“0em” height=“0em”>n <m:mfrac linethickness=“{$w}”>n <m:mspace width=“.5em”/>n <m:mrow/>n </m:mfrac>n </m:mpadded>n </m:mtd>n </xsl:when>n <xsl:otherwise>n <xsl:variable name=“l” select=“@length”/>n <xsl:for-each select=“(//node())”>n <m:mtd class=“msline”>n <m:mpadded lspace=“-0.2em” width=“0em” height=“0em”>n <m:mfrac linethickness=“{$w}”>nt<m:mspace width=“.5em”/>nt<m:mrow/>n </m:mfrac>n </m:mpadded>n </m:mtd>n </xsl:for-each>n </xsl:otherwise>n </xsl:choose>n </m:mtr>n</xsl:template>n<xsl:template match=“m:mscarries” mode=“mstack1”>n <xsl:param name=“p”/>n <xsl:variable name=“align1” select=“ancestor::m:mstack/@stackalign”/>n <xsl:variable name=“l1”>n <xsl:choose>n <xsl:when test=“string($align1)='left'”>0</xsl:when>n <xsl:otherwise><xsl:value-of select=“count(*)”/></xsl:otherwise>n </xsl:choose>n </xsl:variable>n <m:mtr class=“mscarries” l=“{$p + $l1 + sum(@position)}”>n <xsl:apply-templates select=“*” mode=“msc”/>n </m:mtr>n</xsl:template>n<xsl:template match=“*” mode=“msc”>n <m:mtd>n <xsl:copy-of select=“../@location|../@crossout”/>n <xsl:choose>n <xsl:when test=“../@scriptsizemultiplier”>n <m:mstyle mathsize=“{round(../@scriptsizemultiplier div .007)}%”>n <xsl:apply-templates select=“.”/>n </m:mstyle>n </xsl:when>n <xsl:otherwise>n <xsl:apply-templates select=“.”/>n </xsl:otherwise>n </xsl:choose>n </m:mtd>n</xsl:template>n<xsl:template match=“m:mscarry” mode=“msc”>n <m:mtd>n <xsl:copy-of select=“@location|@crossout”/>n <xsl:choose>n <xsl:when test=“../@scriptsizemultiplier”>n <m:mstyle mathsize=“{round(../@scriptsizemultiplier div .007)}%”>n <xsl:apply-templates/>n </m:mstyle>n </xsl:when>n <xsl:otherwise>n <xsl:apply-templates/>n </xsl:otherwise>n </xsl:choose>n </m:mtd>n</xsl:template>n<xsl:template match=“m:mlongdiv” priority=“11”>n <xsl:variable name=“ms”>n <m:mstack>n <xsl:copy-of select=“(ancestor-or-self::*/@decimalpoint)”/>n <xsl:choose>n <xsl:when test=“@longdivstyle='left)(right'”>n <m:msrow>n <m:mrow><xsl:copy-of select=“*”/></m:mrow>n <m:mo>)</m:mo>n <xsl:copy-of select=“*”/>n <m:mo>(</m:mo>n <xsl:copy-of select=“*”/>n </m:msrow>n </xsl:when>n <xsl:when test=“@longdivstyle='left/right'”>n <m:msrow>n <m:mrow><xsl:copy-of select=“*”/></m:mrow>n <m:mo>/</m:mo>n <xsl:copy-of select=“*”/>n <m:mo></m:mo>n <xsl:copy-of select=“*”/>n </m:msrow>n </xsl:when>n <xsl:when test=“@longdivstyle=':right=right'”>n <m:msrow>n <xsl:copy-of select=“*”/>n <m:mo>:</m:mo>n <xsl:copy-of select=“*”/>n <m:mo>=</m:mo>n <xsl:copy-of select=“*”/>n </m:msrow>n </xsl:when>n <xsl:when test=“@longdivstyle='stackedrightright'ntt or @longdivstyle='mediumstackedrightright'ntt or @longdivstyle='shortstackedrightright'ntt or @longdivstyle='stackedleftleft'ntt ”>n <xsl:attribute name=“align”>top</xsl:attribute>n <xsl:copy-of select=“*”/>n </xsl:when>n <xsl:when test=“@longdivstyle='stackedleftlinetop'”>n <xsl:copy-of select=“*”/>n <m:msline length=“{string-length(*)}”/>n <m:msrow>n <m:mrow>n <m:menclose notation=“bottom right”>n <xsl:copy-of select=“*”/>n </m:menclose>n </m:mrow>n <xsl:copy-of select=“*”/>n </m:msrow>n </xsl:when>n <xsl:when test=“@longdivstyle='righttop'”>n <xsl:copy-of select=“*”/>n <m:msline length=“{string-length(*)}”/>n <m:msrow>n <xsl:copy-of select=“*”/>n <m:menclose notation=“top left bottom”>n <xsl:copy-of select=“*”/></m:menclose>n </m:msrow>n </xsl:when>n <xsl:otherwise>n <xsl:copy-of select=“*”/>n <m:msline length=“{string-length(*)+1}”/>n <m:msrow>n <m:mrow><xsl:copy-of select=“*”/><m:mspace width=“.2em”/></m:mrow>n <m:mpadded voffset=“.1em” lspace=“-.15em” depth=“-.2em” height=“-.2em”>n <m:mo minsize=“1.2em”>)</m:mo>n </m:mpadded>n <xsl:copy-of select=“*”/>n </m:msrow>n </xsl:otherwise>n </xsl:choose>n <xsl:copy-of select=“*”/>n </m:mstack>n </xsl:variable>n <xsl:choose>n <xsl:when test=“@longdivstyle='stackedrightright'”>n <m:menclose notation=“right”>n <xsl:apply-templates select=“c:node-set($ms)”/>n </m:menclose>n <m:mtable align=“top”>n <m:mtr>n <m:menclose notation=“bottom”>n <xsl:copy-of select=“*”/>n </m:menclose>n </m:mtr>n <m:mtr>n <mtd><xsl:copy-of select=“*”/></mtd>n </m:mtr>n </m:mtable>n </xsl:when>n <xsl:when test=“@longdivstyle='mediumstackedrightright'”>n <xsl:apply-templates select=“c:node-set($ms)”/>n <m:menclose notation=“left”>n <m:mtable align=“top”>n <m:mtr>n <m:menclose notation=“bottom”>n <xsl:copy-of select=“*”/>n </m:menclose>n </m:mtr>n <m:mtr>n <mtd><xsl:copy-of select=“*”/></mtd>n </m:mtr>n </m:mtable>n </m:menclose>n </xsl:when>n <xsl:when test=“@longdivstyle='shortstackedrightright'”>n <xsl:apply-templates select=“c:node-set($ms)”/>n <m:mtable align=“top”>n <m:mtr>n <m:menclose notation=“left bottom”>n <xsl:copy-of select=“*”/>n </m:menclose>n </m:mtr>n <m:mtr>n <mtd><xsl:copy-of select=“*”/></mtd>n </m:mtr>n </m:mtable>n </xsl:when>n <xsl:when test=“@longdivstyle='stackedleftleft'”>n <m:mtable align=“top”>n <m:mtr>n <m:menclose notation=“bottom”>n <xsl:copy-of select=“*”/>n </m:menclose>n </m:mtr>n <m:mtr>n <mtd><xsl:copy-of select=“*”/></mtd>n </m:mtr>n </m:mtable>n <m:menclose notation=“left”>n <xsl:apply-templates select=“c:node-set($ms)”/>n </m:menclose>n </xsl:when>n <xsl:otherwise>n <xsl:apply-templates select=“c:node-set($ms)”/>n </xsl:otherwise>n </xsl:choose>n</xsl:template>n<xsl:template match=“m:menclose” mode=“rtl”>n <m:menclose notation=“bottom right”>n <xsl:apply-templates mode=“rtl”/>n </m:menclose>n</xsl:template>n</xsl:stylesheet>n’},955:function(e,t){MathJax._.components.global.isObject,MathJax._.components.global.combineConfig,MathJax._.components.global.combineDefaults,t.r8=MathJax._.components.global.combineWithMathJax,MathJax._.components.global.MathJax}},webpack_module_cache={};function webpack_require(e){var t=webpack_module_cache[e];if(void 0!==t)return t.exports;var l=webpack_module_cache[e]={exports:{}};return webpack_modules[e].call(l.exports,l,l.exports,webpack_require),l.exports}var webpack_exports={},global,version,mml3_node,mml3;global=webpack_require(955),version=webpack_require(667),mml3_node=webpack_require(63),mml3=webpack_require(514),MathJax.loader&&MathJax.loader.checkVersion(“/mml3”,version.q,“input/mml/extensions”),(0,global.r8)({_:{input:{mathml:{mml3:{“mml3-node”:mml3_node,mml3:mml3}}}}}),MathJax.startup&&MathJax.startup.extendHandler((function(e){return(0,mml3.Mml3Handler)(e)}))})();