/main/khan/static/latestKhan/utils/MathJax/1.1a/config/KAthJax-62e7a7b628ba168df6b9cd3de8feac38.js
JavaScript | 5957 lines | 5957 code | 0 blank | 0 comment | 887 complexity | 62e7a7b628ba168df6b9cd3de8feac38 MD5 | raw file
Possible License(s): Apache-2.0
Large files files are truncated, but you can click here to view the full file
- MathJax.Hub.Config({
- messageStyle: "none",
- skipStartupTypeset: !0,
- jax: [ "input/TeX", "output/HTML-CSS" ],
- extensions: [ "tex2jax.js", "MathZoom.js" ],
- TeX: {
- extensions: [ "AMSmath.js", "AMSsymbols.js", "noErrors.js", "noUndefined.js", "newcommand.js", "boldsymbol.js" ],
- Macros: {
- RR: "\\mathbb{R}",
- blue: "\\color{#6495ED}",
- orange: "\\color{#FFA500}",
- pink: "\\color{#FF00AF}",
- red: "\\color{red}",
- green: "\\color{#28AE7B}",
- gray: "\\color{gray}",
- purple: "\\color{purple}"
- },
- Augment: {
- Definitions: {
- macros: {
- lrsplit: "LRSplit",
- cancel: "Cancel",
- lcm: [ "NamedOp", 0 ]
- }
- },
- Parse: {
- prototype: {
- LRSplit: function(e) {
- var t = this.GetArgument(e), n = this.GetArgument(e), r = MathJax.ElementJax.mml.mfrac(MathJax.InputJax.TeX.Parse("\\strut\\textstyle{" + t + "\\qquad}", this.stack.env).mml(), MathJax.InputJax.TeX.Parse("\\strut\\textstyle{\\qquad " + n + "}", this.stack.env).mml());
- r.numalign = MathJax.ElementJax.mml.ALIGN.LEFT, r.denomalign = MathJax.ElementJax.mml.ALIGN.RIGHT, r.linethickness = "0em", this.Push(r);
- },
- Cancel: function(e) {
- this.Push(MathJax.ElementJax.mml.menclose(this.ParseArg(e)).With({
- notation: MathJax.ElementJax.mml.NOTATION.UPDIAGONALSTRIKE
- }));
- }
- }
- }
- }
- },
- "HTML-CSS": {
- scale: 100,
- showMathMenu: !1,
- availableFonts: [ "TeX" ],
- imageFont: null
- }
- }), MathJax.Hub.elementScripts = function(e) {
- return e.nodeName.toLowerCase() === "code" ? [ e ] : e.getElementsByTagName("code");
- }, MathJax.Hub.Browser.isKonqueror = !0, MathJax.Ajax.timeout = 6e4, MathJax.Ajax.loadError = function(e) {
- return function(t) {
- Khan.warnTimeout(), MathJax.Ajax.loadComplete = function(e) {}, e.call(this, t);
- };
- }(MathJax.Ajax.loadError), MathJax.Hub.Register.StartupHook("HTML-CSS Jax - disable web fonts", function() {
- Khan.warnFont();
- }), MathJax.Message.Init = function(e) {
- return function(t) {
- if (this.div && this.div.parentNode == null) {
- var n = document.getElementById("MathJax_Message");
- if (n && n.firstChild == null) {
- var r = n.parentNode;
- r && r.removeChild(n);
- }
- }
- e.call(this, t);
- };
- }(MathJax.Message.Init), MathJax.Hub.Startup.onload(), MathJax.Ajax.Preloading("[MathJax]/extensions/MathZoom.js", "[MathJax]/extensions/TeX/AMSmath.js", "[MathJax]/extensions/TeX/AMSsymbols.js", "[MathJax]/extensions/TeX/noErrors.js", "[MathJax]/extensions/TeX/noUndefined.js", "[MathJax]/extensions/TeX/newcommand.js", "[MathJax]/extensions/TeX/boldsymbol.js", "[MathJax]/extensions/tex2jax.js", "[MathJax]/jax/element/mml/jax.js", "[MathJax]/jax/input/TeX/config.js", "[MathJax]/jax/input/TeX/jax.js", "[MathJax]/jax/output/HTML-CSS/config.js", "[MathJax]/jax/output/HTML-CSS/jax.js"), MathJax.Hub.Config({
- "v1.0-compatible": !1
- }), function(e, t, n, r, i) {
- var s = "1.1", o = e.CombineConfig("MathZoom", {
- delay: 400,
- styles: {
- "#MathJax_Zoom": {
- position: "absolute",
- "background-color": "#F0F0F0",
- overflow: "auto",
- display: "block",
- "z-index": 301,
- padding: ".5em",
- border: "1px solid black",
- margin: 0,
- "font-family": "serif",
- "font-size": "85%",
- "font-weight": "normal",
- "font-style": "normal",
- "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",
- "box-shadow": "5px 5px 15px #AAAAAA",
- "-webkit-box-shadow": "5px 5px 15px #AAAAAA",
- "-moz-box-shadow": "5px 5px 15px #AAAAAA",
- "-khtml-box-shadow": "5px 5px 15px #AAAAAA",
- filter: "progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')"
- },
- "#MathJax_ZoomOverlay": {
- position: "absolute",
- left: 0,
- top: 0,
- "z-index": 300,
- display: "inline-block",
- width: "100%",
- height: "100%",
- border: 0,
- padding: 0,
- margin: 0,
- "background-color": "white",
- opacity: 0,
- filter: "alpha(opacity=0)"
- }
- }
- }), u = function(e) {
- return e || (e = window.event), e && (e.preventDefault && e.preventDefault(), e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0, e.returnValue = !1), !1;
- }, a = MathJax.Extension.MathZoom = {
- version: s,
- settings: e.config.menuSettings,
- HandleEvent: function(e, t, n) {
- return e || (e = window.event), a.settings.CTRL && !e.ctrlKey ? !0 : a.settings.ALT && !e.altKey ? !0 : a.settings.CMD && !e.metaKey ? !0 : a.settings.Shift && !e.shiftKey ? !0 : a[t](e, n);
- },
- Click: function(e, t) {
- if (this.settings.zoom === "Click") return this.Zoom(t, e);
- },
- DblClick: function(e, t) {
- if (this.settings.zoom === "Double-Click") return this.Zoom(t, e);
- },
- Mouseover: function(e, t) {
- if (this.settings.zoom === "Hover") return a.oldMouseOver = t.onmouseover, t.onmouseover = null, t.onmousemove = this.Mousemove, t.onmouseout = this.Mouseout, a.Timer(e, t);
- },
- Mouseout: function(e) {
- return this.onmouseover = a.oldMouseOver, delete a.oldMouseOver, this.onmousemove = this.onmouseout = null, a.ClearTimer(), u(e);
- },
- Mousemove: function(e) {
- return a.Timer(e || window.event, this);
- },
- Timer: function(e, t) {
- return this.ClearTimer(), this.timer = setTimeout(MathJax.Callback([ "Zoom", this, t, {} ]), o.delay), u(e);
- },
- ClearTimer: function() {
- this.timer && (clearTimeout(this.timer), delete this.timer);
- },
- Zoom: function(n, s) {
- this.ClearTimer(), this.Remove();
- var a = n.parentNode;
- a.className === "MathJax_MathContainer" && (a = a.parentNode), a.parentNode.className === "MathJax_MathContainer" && (a = a.parentNode.parentNode);
- var f = (String(a.className).match(/^MathJax_(MathML|Display)$/) ? a : n).nextSibling, l = e.getJaxFor(f), p = l.root, v = r && l.outputJax.isa(r.constructor) ? "HTMLCSS" : i && l.outputJax.isa(i.constructor) ? "MathML" : null;
- if (!v) return;
- var m = Math.floor(.85 * document.body.clientWidth), y = Math.floor(.85 * document.body.clientHeight), w = t.Element("span", {
- style: {
- position: "relative",
- display: "inline-block",
- height: 0,
- width: 0
- },
- id: "MathJax_ZoomFrame"
- }, [ [ "span", {
- id: "MathJax_ZoomOverlay",
- onmousedown: this.Remove
- } ], [ "span", {
- id: "MathJax_Zoom",
- onclick: this.Remove,
- style: {
- visibility: "hidden",
- fontSize: this.settings.zscale,
- "max-width": m + "px",
- "max-height": y + "px"
- }
- }, [ [ "span" ] ] ] ]), E = w.lastChild, S = E.firstChild, x = w.firstChild;
- n.parentNode.insertBefore(w, n);
- if (this.msieZIndexBug) {
- var T = t.Element("img", {
- src: "about:blank",
- id: "MathJax_ZoomTracker",
- style: {
- width: 0,
- height: 0,
- position: "relative"
- }
- });
- document.body.appendChild(w), w.style.position = "absolute", w.style.zIndex = o.styles["#MathJax_ZoomOverlay"]["z-index"], w = T;
- }
- var N = this["Zoom" + v](p, S, n);
- return this.msiePositionBug ? (this.msieIE8Bug && (S.style.position = "absolute", E.style.height = S.offsetHeight, S.style.position = "", E.offsetHeight <= y && E.offsetWidth <= m && (E.style.overflow = "visible")), this.msieWidthBug ? E.style.width = Math.min(m, N.w) : N.w > m && (E.style.width = m), E.offsetHeight > y && (E.style.Height = y + "px"), n.nextSibling ? n.parentNode.insertBefore(w, n.nextSibling) : a.appendChild(w)) : this.operaPositionBug && (E.style.width = Math.min(m, S.offsetWidth) + "px"), this.Position(E, N, v === "MathML" && a.nodeName.toLowerCase() === "div"), E.style.visibility = "", this.settings.zoom === "Hover" && (x.onmouseover = this.Remove), window.addEventListener ? addEventListener("resize", this.Resize, !1) : window.attachEvent ? attachEvent("onresize", this.Resize) : (this.onresize = window.onresize, window.onresize = this.Resize), u(s);
- },
- ZoomHTMLCSS: function(e, t, n) {
- t.className = "MathJax", r.idPostfix = "-zoom", r.getScales(t, t), e.toHTML(t, t);
- var i = e.HTMLspanElement().bbox;
- r.idPostfix = "";
- if (i.width && i.width !== "100%") {
- var s = Math.floor(.85 * document.body.clientWidth);
- t.style.width = s + "px", t.style.display = "inline-block";
- var o = (e.id || "MathJax-Span-" + e.spanID) + "-zoom", u = document.getElementById(o).firstChild;
- while (u && u.style.width !== i.width) u = u.nextSibling;
- u && (u.style.width = "100%");
- }
- t.appendChild(this.topImg);
- var a = this.topImg.offsetTop;
- t.removeChild(this.topImg);
- var f = this.msieWidthBug ? r.getW(n) * r.em : n.offsetWidth;
- return {
- w: i.w * r.em,
- Y: -a,
- W: f
- };
- },
- ZoomMathML: function(e, t, n) {
- e.toNativeMML(t, t);
- var r;
- t.appendChild(this.topImg), r = this.topImg.offsetTop, t.removeChild(this.topImg);
- var i = (this.ffMMLwidthBug ? n.parentNode : n).offsetWidth;
- return {
- w: t.offsetWidth,
- Y: -r,
- W: i
- };
- },
- Position: function(e, t, n) {
- var r = this.Resize(), i = r.x, s = r.y, o = t.W;
- this.msiePositionBug && (o = -o), n && this.ffMMLcenterBug && (o = 0);
- var u = -Math.floor((e.offsetWidth - o) / 2), a = t.Y;
- e.style.left = Math.max(u, 20 - i) + "px", e.style.top = Math.max(a, 20 - s) + "px";
- },
- Resize: function(e) {
- a.onresize && a.onresize(e);
- var t = 0, n = 0, r = document.getElementById("MathJax_ZoomFrame"), i = document.getElementById("MathJax_ZoomOverlay"), s = a.msieZIndexBug ? document.getElementById("MathJax_ZoomTracker") : r;
- a.operaPositionBug && (r.style.border = "1px solid");
- if (s.offsetParent) do t += s.offsetLeft, n += s.offsetTop; while (s = s.offsetParent);
- return a.operaPositionBug && (r.style.border = ""), a.msieZIndexBug && (r.style.left = t + "px", r.style.top = n + "px"), i.style.left = -t + "px", i.style.top = -n + "px", a.msiePositionBug ? setTimeout(a.SetWH, 0) : a.SetWH(), {
- x: t,
- y: n
- };
- },
- SetWH: function() {
- var e = document.getElementById("MathJax_ZoomOverlay");
- e.style.width = e.style.height = "1px", e.style.width = document.body.scrollWidth + "px", e.style.height = document.body.scrollHeight + "px";
- },
- Remove: function(e) {
- var n = document.getElementById("MathJax_ZoomFrame");
- if (n) {
- n.parentNode.removeChild(n), n = document.getElementById("MathJax_ZoomTracker"), n && n.parentNode.removeChild(n);
- if (a.operaRefreshBug) {
- var r = t.addElement(document.body, "div", {
- style: {
- position: "fixed",
- left: 0,
- top: 0,
- width: "100%",
- height: "100%",
- backgroundColor: "white",
- opacity: 0
- },
- id: "MathJax_OperaDiv"
- });
- document.body.removeChild(r);
- }
- window.removeEventListener ? removeEventListener("resize", a.Resize, !1) : window.detachEvent ? detachEvent("onresize", a.Resize) : (window.onresize = a.onresize, delete a.onresize);
- }
- return u(e);
- }
- };
- e.Register.StartupHook("HTML-CSS Jax Ready", function() {
- r = MathJax.OutputJax["HTML-CSS"], r.Augment({
- HandleEvent: a.HandleEvent
- });
- }), e.Register.StartupHook("NativeMML Jax Ready", function() {
- i = MathJax.OutputJax.NativeMML, i.Augment({
- HandleEvent: a.HandleEvent,
- MSIEmouseup: function(e, t, n) {
- return this.trapUp ? (delete this.trapUp, !0) : this.MSIEzoomKeys(e) ? !0 : !1;
- },
- MSIEclick: function(e, t, n) {
- return this.trapClick ? (delete this.trapClick, !0) : this.MSIEzoomKeys(e) ? this.settings.zoom.match(/Click/) ? a.Click(e, t) === !1 : !1 : !1;
- },
- MSIEdblclick: function(e, t, n) {
- return this.MSIEzoomKeys(e) ? a.DblClick(e, t) === !1 : !1;
- },
- MSIEmouseover: function(e, t, n) {
- return this.settings.zoom !== "Hover" ? !1 : (a.Timer(e, t), !0);
- },
- MSIEmouseout: function(e, t, n) {
- return this.settings.zoom !== "Hover" ? !1 : (a.ClearTimer(), !0);
- },
- MSIEmousemove: function(e, t, n) {
- return this.settings.zoom !== "Hover" ? !1 : (a.Timer(e, t), !0);
- },
- MSIEzoomKeys: function(e) {
- return this.settings.CTRL && !e.ctrlKey ? !1 : this.settings.CMD && !e.metaKey ? !1 : this.settings.ALT && !e.altKey ? !1 : this.settings.Shift && !e.shiftKey ? !1 : !0;
- }
- });
- }), e.Browser.Select({
- MSIE: function(e) {
- var t = document.compatMode === "BackCompat", n = e.versionAtLeast("8.0") && document.documentMode > 7;
- a.msiePositionBug = !0, a.msieWidthBug = !t, a.msieIE8Bug = n, a.msieZIndexBug = !n, a.msieInlineBlockAlignBug = !n || t, document.documentMode >= 9 && delete o.styles["#MathJax_Zoom"].filter;
- },
- Opera: function(e) {
- a.operaPositionBug = !0, a.operaRefreshBug = !0;
- },
- Firefox: function(e) {
- a.ffMMLwidthBug = !0, a.ffMMLcenterBug = !0;
- }
- }), a.topImg = a.msieInlineBlockAlignBug ? t.Element("img", {
- style: {
- width: 0,
- height: 0
- },
- src: "about:blank"
- }) : t.Element("span", {
- style: {
- width: 0,
- height: 0,
- display: "inline-block"
- }
- }), a.operaPositionBug && (a.topImg.style.border = "1px solid"), MathJax.Callback.Queue([ "Styles", n, o.styles ], [ "Post", e.Startup.signal, "MathZoom Ready" ], [ "loadComplete", n, "[MathJax]/extensions/MathZoom.js" ]);
- }(MathJax.Hub, MathJax.HTML, MathJax.Ajax, MathJax.OutputJax["HTML-CSS"], MathJax.OutputJax.NativeMML), MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- var e = "1.1", t = MathJax.ElementJax.mml, n = MathJax.InputJax.TeX, r = n.Definitions, i = n.Stack.Item, s = function(e) {
- return e.join("em ") + "em";
- };
- MathJax.Hub.Insert(r, {
- macros: {
- mathring: [ "Accent", "2DA" ],
- nobreakspace: "Tilde",
- negmedspace: [ "Spacer", t.LENGTH.NEGATIVEMEDIUMMATHSPACE ],
- negthickspace: [ "Spacer", t.LENGTH.NEGATIVETHICKMATHSPACE ],
- intI: [ "Macro", "\\mathchoice{\\!}{}{}{}\\!\\!\\int" ],
- iiiint: [ "MultiIntegral", "\\int\\intI\\intI\\intI" ],
- idotsint: [ "MultiIntegral", "\\int\\cdots\\int" ],
- dddot: [ "Macro", "\\mathop{#1}\\limits^{\\textstyle \\mathord{.}\\mathord{.}\\mathord{.}}", 1 ],
- ddddot: [ "Macro", "\\mathop{#1}\\limits^{\\textstyle \\mathord{.}\\mathord{.}\\mathord{.}\\mathord{.}}", 1 ],
- sideset: [ "Macro", "\\mathop{\\mathop{\\rlap{\\phantom{#3}}}\\nolimits#1\\!\\mathop{#3}\\nolimits#2}", 3 ],
- boxed: [ "Macro", "\\fbox{$\\displaystyle{#1}$}", 1 ],
- tag: "HandleTag",
- notag: "HandleNoTag",
- substack: [ "Macro", "\\begin{subarray}{c}#1\\end{subarray}", 1 ],
- injlim: [ "Macro", "\\mathop{\\rm inj\\,lim}" ],
- projlim: [ "Macro", "\\mathop{\\rm proj\\,lim}" ],
- varliminf: [ "Macro", "\\mathop{\\underline{\\rm lim}}" ],
- varlimsup: [ "Macro", "\\mathop{\\overline{\\rm lim}}" ],
- varinjlim: [ "Macro", "\\mathop{\\underrightarrow{\\rm lim\\Rule{-1pt}{0pt}{1pt}}\\Rule{0pt}{0pt}{.45em}}" ],
- varprojlim: [ "Macro", "\\mathop{\\underleftarrow{\\rm lim\\Rule{-1pt}{0pt}{1pt}}\\Rule{0pt}{0pt}{.45em}}" ],
- DeclareMathOperator: "HandleDeclareOp",
- operatorname: "HandleOperatorName",
- genfrac: "Genfrac",
- frac: [ "Genfrac", "", "", "", "" ],
- tfrac: [ "Genfrac", "", "", "", 1 ],
- dfrac: [ "Genfrac", "", "", "", 0 ],
- binom: [ "Genfrac", "(", ")", "0em", "" ],
- tbinom: [ "Genfrac", "(", ")", "0em", 1 ],
- dbinom: [ "Genfrac", "(", ")", "0em", 0 ],
- cfrac: "CFrac",
- shoveleft: [ "HandleShove", t.ALIGN.LEFT ],
- shoveright: [ "HandleShove", t.ALIGN.RIGHT ],
- xrightarrow: [ "xArrow", 8594, 5, 6 ],
- xleftarrow: [ "xArrow", 8592, 7, 3 ]
- },
- environment: {
- align: [ "AMSarray", null, !0, !0, "rlrlrlrlrlrl", s([ 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18 ]) ],
- "align*": [ "AMSarray", null, !1, !0, "rlrlrlrlrlrl", s([ 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18 ]) ],
- multline: [ "Multline", null, !0 ],
- "multline*": [ "Multline", null, !1 ],
- split: [ "AMSarray", null, !1, !1, "rl", s([ 5 / 18 ]) ],
- gather: [ "AMSarray", null, !0, !0, "c" ],
- "gather*": [ "AMSarray", null, !1, !0, "c" ],
- alignat: [ "AlignAt", null, !0, !0 ],
- "alignat*": [ "AlignAt", null, !1, !0 ],
- alignedat: [ "AlignAt", null, !1, !1 ],
- aligned: [ "Array", null, null, null, "rlrlrlrlrlrl", s([ 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18, 2, 5 / 18 ]), ".5em", "D" ],
- gathered: [ "Array", null, null, null, "c", null, ".5em", "D" ],
- subarray: [ "Array", null, null, null, null, s([ 0, 0, 0, 0 ]), "0.1em", "S", 1 ],
- smallmatrix: [ "Array", null, null, null, "c", s([ 1 / 3 ]), ".2em", "S", 1 ]
- },
- delimiter: {
- "\\lvert": [ "2223", {
- texClass: t.TEXCLASS.OPEN
- } ],
- "\\rvert": [ "2223", {
- texClass: t.TEXCLASS.CLOSE
- } ],
- "\\lVert": [ "2225", {
- texClass: t.TEXCLASS.OPEN
- } ],
- "\\rVert": [ "2225", {
- texClass: t.TEXCLASS.CLOSE
- } ]
- }
- }), n.Parse.Augment({
- HandleTag: function(e) {
- var r = this.trimSpaces(this.GetArgument(e));
- r === "*" ? r = this.GetArgument(e) : r = "(" + r + ")", this.stack.global.notag && n.Error(e + " not allowed in " + this.stack.global.notag + " environment"), this.stack.global.tag && n.Error("Multiple " + e), this.stack.global.tag = t.mtd.apply(t, this.InternalMath(r));
- },
- HandleNoTag: function(e) {
- this.stack.global.tag && delete this.stack.global.tag;
- },
- HandleDeclareOp: function(e) {
- var t = "", r = this.trimSpaces(this.GetArgument(e));
- r == "*" && (t = "\\limits", r = this.trimSpaces(this.GetArgument(e))), r.charAt(0) == "\\" && (r = r.substr(1));
- var i = this.GetArgument(e);
- i = i.replace(/\*/g, "\\text{*}").replace(/-/g, "\\text{-}"), n.Definitions.macros[r] = [ "Macro", "\\mathop{\\rm " + i + "}" + t ];
- },
- HandleOperatorName: function(e) {
- var t = "\\nolimits", n = this.trimSpaces(this.GetArgument(e));
- n == "*" && (t = "\\limits", n = this.trimSpaces(this.GetArgument(e))), n = n.replace(/\*/g, "\\text{*}").replace(/-/g, "\\text{-}"), this.string = "\\mathop{\\rm " + n + "}" + t + " " + this.string.slice(this.i), this.i = 0;
- },
- HandleShove: function(e, t) {
- var r = this.stack.Top();
- (r.type !== "multline" || r.data.length) && n.Error(e + " must come at the beginning of the line"), r.data.shove = t;
- },
- CFrac: function(e) {
- var r = this.trimSpaces(this.GetBrackets(e)), i = this.GetArgument(e), s = this.GetArgument(e), o = t.mfrac(n.Parse("\\strut\\textstyle{" + i + "}", this.stack.env).mml(), n.Parse("\\strut\\textstyle{" + s + "}", this.stack.env).mml());
- r = {
- l: t.ALIGN.LEFT,
- r: t.ALIGN.RIGHT,
- "": ""
- }[r], r == null && n.Error("Illegal alignment specified in " + e), r && (o.numalign = o.denomalign = r), this.Push(o);
- },
- Genfrac: function(e, r, i, s, o) {
- r == null ? r = this.GetDelimiterArg(e) : r = this.convertDelimiter(r), i == null ? i = this.GetDelimiterArg(e) : i = this.convertDelimiter(i), s == null && (s = this.GetArgument(e)), o == null && (o = this.trimSpaces(this.GetArgument(e)));
- var u = this.ParseArg(e), l = this.ParseArg(e), c = t.mfrac(u, l);
- s !== "" && (c.linethickness = s);
- if (r || i) c = t.mfenced(c).With({
- open: r,
- close: i
- });
- if (o !== "") {
- var h = [ "D", "T", "S", "SS" ][o];
- h == null && n.Error("Bad math style for " + e), c = t.mstyle(c), h === "D" ? (c.displaystyle = !0, c.scriptlevel = 0) : (c.displaystyle = !1, c.scriptlevel = o - 1);
- }
- this.Push(c);
- },
- Multline: function(e, t) {
- return this.Push(e), i.multline().With({
- arraydef: {
- displaystyle: !0,
- rowspacing: ".5em",
- width: n.config.MultLineWidth,
- columnwidth: "100%",
- side: n.config.TagSide,
- minlabelspacing: n.config.TagIndent
- }
- });
- },
- AMSarray: function(e, t, r, s, o) {
- return this.Push(e), s = s.replace(/[^clr]/g, "").split("").join(" "), s = s.replace(/l/g, "left").replace(/r/g, "right").replace(/c/g, "center"), i.AMSarray(e.name, t, r, this.stack).With({
- arraydef: {
- displaystyle: !0,
- rowspacing: ".5em",
- columnalign: s,
- columnspacing: o || "1em",
- rowspacing: "3pt",
- side: n.config.TagSide,
- minlabelspacing: n.config.TagIndent
- }
- });
- },
- AlignAt: function(e, t, r) {
- var i = this.GetArgument("\\begin{" + e.name + "}");
- i.match(/[^0-9]/) && n.Error("Argument to \\begin{" + e.name + "} must me a positive integer"), align = "", spacing = [];
- while (i > 0) align += "rl", spacing.push("0em 0em"), i--;
- return spacing = spacing.join(" "), r ? this.AMSarray(e, t, r, align, spacing) : this.Array(e, null, null, align, spacing, ".5em", "D");
- },
- MultiIntegral: function(e, t) {
- var n = this.GetNext();
- if (n === "\\") {
- var r = this.i;
- n = this.GetArgument(e), this.i = r, n === "\\limits" && (e === "\\idotsint" ? t = "\\!\\!\\mathop{\\,\\," + t + "}" : t = "\\!\\!\\!\\mathop{\\,\\,\\," + t + "}");
- }
- this.string = t + " " + this.string.slice(this.i), this.i = 0;
- },
- xArrow: function(e, r, i, s) {
- var o = {
- width: "+" + (i + s) + "mu",
- lspace: i + "mu"
- }, u = this.GetBrackets(e), l = this.ParseArg(e), c = t.mo(t.chars(String.fromCharCode(r))).With({
- stretchy: !0,
- texClass: t.TEXCLASS.REL
- }), h = t.munderover(c);
- h.SetData(h.over, t.mpadded(l).With(o).With({
- voffset: ".15em"
- })), u && (u = n.Parse(u, this.stack.env).mml(), h.SetData(h.under, t.mpadded(u).With(o).With({
- voffset: "-.24em"
- }))), this.Push(h);
- },
- GetDelimiterArg: function(e) {
- var t = this.trimSpaces(this.GetArgument(e));
- return t == "" ? null : (r.delimiter[t] || n.Error("Missing or unrecognized delimiter for " + e), this.convertDelimiter(t));
- }
- }), i.multline = i.array.Subclass({
- type: "multline",
- EndEntry: function() {
- var e = t.mtd.apply(t, this.data);
- this.data.shove && (e.columnalign = this.data.shove), this.row.push(e), this.data = [];
- },
- EndRow: function() {
- this.row.length != 1 && n.Error("multline rows must have exactly one column"), this.table.push(this.row), this.row = [];
- },
- EndTable: function() {
- this.SUPER(arguments).EndTable.call(this);
- if (this.table.length) {
- var e = this.table.length - 1, n;
- this.table[0][0].columnalign || (this.table[0][0].columnalign = t.ALIGN.LEFT), this.table[e][0].columnalign || (this.table[e][0].columnalign = t.ALIGN.RIGHT);
- var r = t.mtr;
- this.global.tag && (this.table[0] = [ this.global.tag ].concat(this.table[0]), delete this.global.tag, r = t.mlabeledtr), this.table[0] = r.apply(t, this.table[0]);
- for (n = 1, e = this.table.length; n < e; n++) this.table[n] = t.mtr.apply(t, this.table[n]);
- }
- }
- }), i.AMSarray = i.array.Subclass({
- type: "AMSarray",
- Init: function(e, t, n, r) {
- this.SUPER(arguments).Init.apply(this), this.numbered = t, this.save_notag = r.global.notag, r.global.notag = n ? null : e;
- },
- EndRow: function() {
- var e = t.mtr;
- this.global.tag && (this.row = [ this.global.tag ].concat(this.row), e = t.mlabeledtr, delete this.global.tag), this.table.push(e.apply(t, this.row)), this.row = [];
- },
- EndTable: function() {
- this.SUPER(arguments).EndTable.call(this), this.global.notag = this.save_notag;
- }
- }), i.start.Augment({
- oldCheckItem: i.start.prototype.checkItem,
- checkItem: function(e) {
- if (e.type === "stop") {
- var r = this.mmlData();
- if (this.global.tag) {
- var s = [ this.global.tag, t.mtd(r) ];
- delete this.global.tag;
- var o = {
- side: n.config.TagSide,
- minlabelspacing: n.config.TagIndent,
- columnalign: r.displayAlign
- };
- r.displayAlign === t.INDENTALIGN.LEFT ? (o.width = "100%", r.displayIndent && !String(r.displayIndent).match(/^0+(\.0*)?($|[a-z%])/) && (o.columnwidth = r.displayIndent + " fit", o.columnspacing = "0", s = [ s[0], t.mtd(), s[1] ])) : r.displayAlign === t.INDENTALIGN.RIGHT && (o.width = "100%", r.displayIndent && !String(r.displayIndent).match(/^0+(\.0*)?($|[a-z%])/) && (o.columnwidth = "fit " + r.displayIndent, o.columnspacing = "0", s[2] = t.mtd())), r = t.mtable(t.mlabeledtr.apply(t, s)).With(o);
- }
- return i.mml(r);
- }
- return this.SUPER(arguments).checkItem.call(this, e);
- }
- }), MathJax.Hub.Startup.signal.Post("TeX AMSmath Ready");
- }), MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/AMSmath.js"), MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- var e = "1.1.2", t = MathJax.ElementJax.mml;
- MathJax.Hub.Insert(MathJax.InputJax.TeX.Definitions, {
- mathchar0mi: {
- digamma: "03DD",
- varkappa: "03F0",
- varGamma: [ "0393", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varDelta: [ "0394", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varTheta: [ "0398", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varLambda: [ "039B", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varXi: [ "039E", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varPi: [ "03A0", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varSigma: [ "03A3", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varUpsilon: [ "03A5", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varPhi: [ "03A6", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varPsi: [ "03A8", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- varOmega: [ "03A9", {
- mathvariant: t.VARIANT.ITALIC
- } ],
- beth: "2136",
- gimel: "2137",
- daleth: "2138",
- backprime: [ "2035", {
- variantForm: !0
- } ],
- hslash: [ "210F", {
- variantForm: !0
- } ],
- varnothing: [ "2205", {
- variantForm: !0
- } ],
- blacktriangle: "25B2",
- triangledown: "25BD",
- blacktriangledown: "25BC",
- square: "25A1",
- Box: "25A1",
- blacksquare: "25A0",
- lozenge: "25CA",
- Diamond: "25CA",
- blacklozenge: "29EB",
- circledS: [ "24C8", {
- mathvariant: t.VARIANT.NORMAL
- } ],
- bigstar: "2605",
- sphericalangle: "2222",
- measuredangle: "2221",
- nexists: "2204",
- complement: "2201",
- mho: "2127",
- eth: [ "00F0", {
- mathvariant: t.VARIANT.NORMAL
- } ],
- Finv: "2132",
- diagup: "2571",
- Game: "2141",
- diagdown: "2572",
- Bbbk: [ "006B", {
- mathvariant: t.VARIANT.DOUBLESTRUCK
- } ],
- yen: "00A5",
- circledR: "00AE",
- checkmark: "2713",
- maltese: "2720"
- },
- mathchar0mo: {
- dotplus: "2214",
- ltimes: "22C9",
- smallsetminus: [ "2216", {
- variantForm: !0
- } ],
- rtimes: "22CA",
- Cap: "22D2",
- doublecap: "22D2",
- leftthreetimes: "22CB",
- Cup: "22D3",
- doublecup: "22D3",
- rightthreetimes: "22CC",
- barwedge: "22BC",
- curlywedge: "22CF",
- veebar: "22BB",
- curlyvee: "22CE",
- doublebarwedge: "2A5E",
- boxminus: "229F",
- circleddash: "229D",
- boxtimes: "22A0",
- circledast: "229B",
- boxdot: "22A1",
- circledcirc: "229A",
- boxplus: "229E",
- centerdot: "22C5",
- divideontimes: "22C7",
- intercal: "22BA",
- leqq: "2266",
- geqq: "2267",
- leqslant: "2A7D",
- geqslant: "2A7E",
- eqslantless: "2A95",
- eqslantgtr: "2A96",
- lesssim: "2272",
- gtrsim: "2273",
- lessapprox: "2A85",
- gtrapprox: "2A86",
- approxeq: "224A",
- lessdot: "22D6",
- gtrdot: "22D7",
- lll: "22D8",
- llless: "22D8",
- ggg: "22D9",
- gggtr: "22D9",
- lessgtr: "2276",
- gtrless: "2277",
- lesseqgtr: "22DA",
- gtreqless: "22DB",
- lesseqqgtr: "2A8B",
- gtreqqless: "2A8C",
- doteqdot: "2251",
- Doteq: "2251",
- eqcirc: "2256",
- risingdotseq: "2253",
- circeq: "2257",
- fallingdotseq: "2252",
- triangleq: "225C",
- backsim: "223D",
- thicksim: [ "223C", {
- variantForm: !0
- } ],
- backsimeq: "22CD",
- thickapprox: "2248",
- subseteqq: "2AC5",
- supseteqq: "2AC6",
- Subset: "22D0",
- Supset: "22D1",
- sqsubset: "228F",
- sqsupset: "2290",
- preccurlyeq: "227C",
- succcurlyeq: "227D",
- curlyeqprec: "22DE",
- curlyeqsucc: "22DF",
- precsim: "227E",
- succsim: "227F",
- precapprox: "2AB7",
- succapprox: "2AB8",
- vartriangleleft: "22B2",
- lhd: "22B2",
- vartriangleright: "22B3",
- rhd: "22B3",
- trianglelefteq: "22B4",
- unlhd: "22B4",
- trianglerighteq: "22B5",
- unrhd: "22B5",
- vDash: "22A8",
- Vdash: "22A9",
- Vvdash: "22AA",
- smallsmile: "2323",
- shortmid: [ "2223", {
- variantForm: !0
- } ],
- smallfrown: "2322",
- shortparallel: [ "2225", {
- variantForm: !0
- } ],
- bumpeq: "224F",
- between: "226C",
- Bumpeq: "224E",
- pitchfork: "22D4",
- varpropto: "221D",
- backepsilon: "220D",
- blacktriangleleft: "25C0",
- blacktriangleright: "25B6",
- therefore: "2234",
- because: "2235",
- eqsim: "2242",
- vartriangle: [ "25B3", {
- variantForm: !0
- } ],
- Join: "22C8",
- nless: "226E",
- ngtr: "226F",
- nleq: "2270",
- ngeq: "2271",
- nleqslant: [ "2A87", {
- variantForm: !0
- } ],
- ngeqslant: [ "2A88", {
- variantForm: !0
- } ],
- nleqq: [ "2270", {
- variantForm: !0
- } ],
- ngeqq: [ "2271", {
- variantForm: !0
- } ],
- lneq: "2A87",
- gneq: "2A88",
- lneqq: "2268",
- gneqq: "2269",
- lvertneqq: [ "2268", {
- variantForm: !0
- } ],
- gvertneqq: [ "2269", {
- variantForm: !0
- } ],
- lnsim: "22E6",
- gnsim: "22E7",
- lnapprox: "2A89",
- gnapprox: "2A8A",
- nprec: "2280",
- nsucc: "2281",
- npreceq: [ "22E0", {
- variantForm: !0
- } ],
- nsucceq: [ "22E1", {
- variantForm: !0
- } ],
- precneqq: "2AB5",
- succneqq: "2AB6",
- precnsim: "22E8",
- succnsim: "22E9",
- precnapprox: "2AB9",
- succnapprox: "2ABA",
- nsim: "2241",
- ncong: "2246",
- nshortmid: [ "2224", {
- variantForm: !0
- } ],
- nshortparallel: [ "2226", {
- variantForm: !0
- } ],
- nmid: "2224",
- nparallel: "2226",
- nvdash: "22AC",
- nvDash: "22AD",
- nVdash: "22AE",
- nVDash: "22AF",
- ntriangleleft: "22EA",
- ntriangleright: "22EB",
- ntrianglelefteq: "22EC",
- ntrianglerighteq: "22ED",
- nsubseteq: "2288",
- nsupseteq: "2289",
- nsubseteqq: [ "2288", {
- variantForm: !0
- } ],
- nsupseteqq: [ "2289", {
- variantForm: !0
- } ],
- subsetneq: "228A",
- supsetneq: "228B",
- varsubsetneq: [ "228A", {
- variantForm: !0
- } ],
- varsupsetneq: [ "228B", {
- variantForm: !0
- } ],
- subsetneqq: "2ACB",
- supsetneqq: "2ACC",
- varsubsetneqq: [ "2ACB", {
- variantForm: !0
- } ],
- varsupsetneqq: [ "2ACC", {
- variantForm: !0
- } ],
- leftleftarrows: "21C7",
- rightrightarrows: "21C9",
- leftrightarrows: "21C6",
- rightleftarrows: "21C4",
- Lleftarrow: "21DA",
- Rrightarrow: "21DB",
- twoheadleftarrow: "219E",
- twoheadrightarrow: "21A0",
- leftarrowtail: "21A2",
- rightarrowtail: "21A3",
- looparrowleft: "21AB",
- looparrowright: "21AC",
- leftrightharpoons: "21CB",
- rightleftharpoons: [ "21CC", {
- variantForm: !0
- } ],
- curvearrowleft: "21B6",
- curvearrowright: "21B7",
- circlearrowleft: "21BA",
- circlearrowright: "21BB",
- Lsh: "21B0",
- Rsh: "21B1",
- upuparrows: "21C8",
- downdownarrows: "21CA",
- upharpoonleft: "21BF",
- upharpoonright: "21BE",
- downharpoonleft: "21C3",
- restriction: "21BE",
- multimap: "22B8",
- downharpoonright: "21C2",
- leftrightsquigarrow: "21AD",
- rightsquigarrow: "21DD",
- leadsto: "21DD",
- dashrightarrow: "21E2",
- dashleftarrow: "21E0",
- nleftarrow: "219A",
- nrightarrow: "219B",
- nLeftarrow: "21CD",
- nRightarrow: "21CF",
- nleftrightarrow: "21AE",
- nLeftrightarrow: "21CE"
- },
- delimiter: {
- "\\ulcorner": "250C",
- "\\urcorner": "2510",
- "\\llcorner": "2514",
- "\\lrcorner": "2518"
- },
- macros: {
- implies: [ "Macro", "\\;\\Longrightarrow\\;" ],
- impliedby: [ "Macro", "\\;\\Longleftarrow\\;" ]
- }
- });
- var n = t.mo.OPTYPES.REL;
- MathJax.Hub.Insert(t.mo.prototype, {
- OPTABLE: {
- infix: {
- "\u2322": n,
- "\u2323": n,
- "\u25b3": n,
- "\ue006": n,
- "\ue007": n,
- "\ue00c": n,
- "\ue00d": n,
- "\ue00e": n,
- "\ue00f": n,
- "\ue010": n,
- "\ue011": n,
- "\ue016": n,
- "\ue017": n,
- "\ue018": n,
- "\ue019": n,
- "\ue01a": n,
- "\ue01b": n,
- "\ue04b": n,
- "\ue04f": n
- }
- }
- });
- }), MathJax.Hub.Register.StartupHook("HTML-CSS Jax Ready", function() {
- var e = MathJax.OutputJax["HTML-CSS"], t = e.FONTDATA.VARIANT;
- e.fontInUse === "TeX" && (t["-TeX-variant"] = {
- fonts: [ "MathJax_AMS", "MathJax_Main", "MathJax_Size1" ],
- remap: {
- 8808: 57356,
- 8809: 57357,
- 8816: 57361,
- 8817: 57358,
- 10887: 57360,
- 10888: 57359,
- 8740: 57350,
- 8742: 57351,
- 8840: 57366,
- 8841: 57368,
- 8842: 57370,
- 8843: 57371,
- 10955: 57367,
- 10956: 57369,
- 988: 57352,
- 1008: 57353
- }
- }, e.msieIE6 && MathJax.Hub.Insert(t["-TeX-variant"].remap, {
- 8592: [ 58049, "-WinIE6" ],
- 8594: [ 58048, "-WinIE6" ],
- 8739: [ 58050, "-WinIE6" ],
- 8741: [ 58051, "-WinIE6" ],
- 8764: [ 58052, "-WinIE6" ],
- 9651: [ 58067, "-WinIE6" ]
- })), e.fontInUse === "STIX" && MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- var e = MathJax.InputJax.TeX.Definitions;
- e.mathchar0mi.varnothing = "2205", e.mathchar0mi.hslash = "210F", e.mathchar0mi.blacktriangle = "25B4", e.mathchar0mi.blacktriangledown = "25BE", e.mathchar0mi.square = "25FB", e.mathchar0mi.blacksquare = "25FC", e.mathchar0mi.vartriangle = [ "25B3", {
- mathsize: "71%"
- } ], e.mathchar0mi.triangledown = [ "25BD", {
- mathsize: "71%"
- } ], e.mathchar0mo.blacktriangleleft = "25C2", e.mathchar0mo.blacktriangleright = "25B8", e.mathchar0mo.smallsetminus = "2216", MathJax.Hub.Insert(t["-STIX-variant"], {
- remap: {
- 10887: 57360,
- 10888: 57359,
- 8816: 57361,
- 8817: 57358,
- 8928: 57419,
- 8929: 57423,
- 8840: 57366,
- 8841: 57368
- }
- });
- }), MathJax.Hub.Startup.signal.Post("TeX AMSsymbols Ready");
- }), MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/AMSsymbols.js"), function() {
- var e = "1.1", t = MathJax.Hub.CombineConfig("TeX.noErrors", {
- multiLine: !0,
- inlineDelimiters: [ "", "" ],
- style: {
- "font-family": "serif",
- "font-size": "80%",
- "text-align": "left",
- color: "black",
- padding: "1px 3px",
- border: "1px solid"
- }
- }), n = "\u00a0";
- MathJax.Extension["TeX/noErrors"] = {
- version: e,
- config: t
- }, MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- MathJax.InputJax.TeX.Augment({
- formatError: function(e, r, i, s) {
- var o = t.inlineDelimiters, u = i || t.multiLine;
- return i || (r = o[0] + r + o[1]), u ? r = r.replace(/ /g, n) : r = r.replace(/\n/g, " "), MathJax.ElementJax.mml.merror(r).With({
- isError: !0,
- multiLine: u
- });
- }
- });
- }), MathJax.Hub.Register.StartupHook("HTML-CSS Jax Config", function() {
- MathJax.Hub.Config({
- "HTML-CSS": {
- styles: {
- ".MathJax .merror": MathJax.Hub.Insert({
- "font-style": null,
- "background-color": null,
- "vertical-align": MathJax.Hub.Browser.isMSIE && t.multiLine ? "-2px" : ""
- }, t.style)
- }
- }
- });
- });
- }(), MathJax.Hub.Register.StartupHook("HTML-CSS Jax Ready", function() {
- var e = MathJax.ElementJax.mml, t = MathJax.OutputJax["HTML-CSS"], n = e.math.prototype.toHTML;
- e.math.Augment({
- toHTML: function(e, t) {
- return this.data[0] && this.data[0].data[0] && this.data[0].data[0].isError ? this.data[0].data[0].toHTML(e) : n.call(this, e, t);
- }
- }), e.merror.Augment({
- toHTML: function(n) {
- if (!this.isError) return e.mbase.prototype.toHTML.call(this, n);
- n = this.HTMLcreateSpan(n), this.multiLine && (n.style.display = "inline-block");
- var r = this.data[0].data[0].data.join("").split(/\n/);
- for (var i = 0, s = r.length; i < s; i++) t.addText(n, r[i]), i !== s - 1 && t.addElement(n, "br");
- var o = t.getHD(n.parentNode), u = t.getW(n.parentNode);
- if (s > 1) {
- var f = (o.h + o.d) / 2, l = t.TeX.x_height / 2, c = t.config.styles[".MathJax .merror"]["font-size"];
- c && c.match(/%/) && (l *= parseInt(c) / 100), n.parentNode.style.verticalAlign = t.Em(o.d + (l - f)), o.h = l + f, o.d = f - l;
- }
- return n.bbox = {
- h: o.h,
- d: o.d,
- w: u,
- lw: 0,
- rw: u
- }, n;
- }
- }), MathJax.Hub.Startup.signal.Post("TeX noErrors Ready");
- }), MathJax.Hub.Register.StartupHook("NativeMML Jax Ready", function() {
- var e = MathJax.ElementJax.mml, t = MathJax.Extension["TeX/noErrors"].config, n = e.math.prototype.toNativeMML;
- e.math.Augment({
- toNativeMML: function(e) {
- return this.data[0] && this.data[0].data[0] && this.data[0].data[0].isError ? this.data[0].data[0].toNativeMML(e) : n.call(this, e);
- }
- }), e.merror.Augment({
- toNativeMML: function(n) {
- if (!this.isError) return e.mbase.prototype.toNativeMML.call(this, n);
- n = n.appendChild(document.createElement("span"));
- var r = this.data[0].data[0].data.join("").split(/\n/);
- for (var i = 0, s = r.length; i < s; i++) n.appendChild(document.createTextNode(r[i])), i !== s - 1 && n.appendChild(document.createElement("br"));
- this.multiLine && (n.style.display = "inline-block", s > 1 && (n.style.verticalAlign = "middle"));
- for (var o in t.style) if (t.style.hasOwnProperty(o)) {
- var u = o.replace(/-./g, function(e) {
- return e.charAt(1).toUpperCase();
- });
- n.style[u] = t.style[o];
- }
- return n;
- }
- }), MathJax.Hub.Startup.signal.Post("TeX noErrors Ready");
- }), MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/noErrors.js"), MathJax.Extension["TeX/noUndefined"] = {
- version: "1.1",
- config: MathJax.Hub.CombineConfig("TeX.noUndefined", {
- attributes: {
- mathcolor: "red"
- }
- })
- }, MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- var e = MathJax.Extension["TeX/noUndefined"].config, t = MathJax.ElementJax.mml;
- MathJax.InputJax.TeX.Parse.Augment({
- csUndefined: function(n) {
- this.Push(t.mtext(n).With(e.attributes));
- }
- }), MathJax.Hub.Startup.signal.Post("TeX noUndefined Ready");
- }), MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/noUndefined.js"), MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- var e = "1.1", t = MathJax.InputJax.TeX, n = t.Definitions;
- MathJax.Hub.Insert(n, {
- macros: {
- newcommand: "NewCommand",
- renewcommand: "NewCommand",
- newenvironment: "NewEnvironment",
- def: "MacroDef"
- }
- }), t.Parse.Augment({
- NewCommand: function(e) {
- var r = this.trimSpaces(this.GetArgument(e)), i = this.trimSpaces(this.GetBrackets(e)), s = this.GetArgument(e);
- i === "" && (i = null), r.charAt(0) === "\\" && (r = r.substr(1)), r.match(/^(.|[a-z]+)$/i) || t.Error("Illegal control sequence name for " + e), i != null && !i.match(/^[0-9]+$/) && t.Error("Illegal number of parameters specified in " + e), n.macros[r] = [ "Macro", s, i ];
- },
- NewEnvironment: function(e) {
- var r = this.trimSpaces(this.GetArgument(e)), i = this.trimSpaces(this.GetBrackets(e)), s = this.GetArgument(e), o = this.GetArgument(e);
- i === "" && (i = null), i != null && !i.match(/^[0-9]+$/) && t.Error("Illegal number of parameters specified in " + e), n.environment[r] = [ "BeginEnv", "EndEnv", s, o, i ];
- },
- MacroDef: function(e) {
- var t = this.GetCSname(e), r = this.GetTemplate(e, "\\" + t), i = this.GetArgument(e);
- r instanceof Array ? n.macros[t] = [ "MacroWithTemplate", i, r[0], r[1] ] : n.macros[t] = [ "Macro", i, r ];
- },
- GetCSname: function(e) {
- var n = this.GetNext();
- n !== "\\" && t.Error("\\ must be followed by a control sequence");
- var r = this.trimSpaces(this.GetArgument(e));
- return r.substr(1);
- },
- GetTemplate: function(e, n) {
- var r, i = [], s = 0;
- r = this.GetNext();
- var o = this.i;
- while (this.i < this.string.length) {
- r = this.GetNext();
- if (r === "#") o !== this.i && (i[s] = this.string.substr(o, this.i - o)), r = this.string.charAt(++this.i), r.match(/^[1-9]$/) || t.Error("Illegal use of # in template for " + n), parseInt(r) != ++s && t.Error("Parameters for " + n + " must be numbered sequentially"), o = this.i + 1; else if (r === "{") return o !== this.i && (i[s] = this.string.substr(o, this.i - o)), i.length > 0 ? [ s, i ] : s;
- this.i++;
- }
- t.Error("Missing replacement string for definition of " + e);
- },
- MacroWithTemplate: function(e, n, r, i) {
- if (r) {
- var s = [];
- this.GetNext(), i[0] && !this.MatchParam(i[0]) && t.Error("Use of " + e + " doesn't match its definition");
- for (var o = 0; o < r; o++) s.push(this.GetParameter(e, i[o + 1]));
- n = this.SubstituteArgs(s, n);
- }
- this.string = this.AddArgs(n, this.string.slice(this.i)), this.i = 0, ++this.macroCount > t.config.MAXMACROS && t.Error("MathJax maximum macro substitution count exceeded; is there a recursive macro call?");
- },
- BeginEnv: function(e, t, n, r) {
- if (r) {
- var i = [];
- for (var s = 0; s < r; s++) i.push(this.GetArgument("\\begin{" + name + "}"));
- t = this.SubstituteArgs(i, t), n = this.SubstituteArgs(i, n);
- }
- return e.edef = n, this.string = this.AddArgs(t, this.string.slice(this.i)), this.i = 0, e;
- },
- EndEnv: function(e, t) {
- return this.string = this.AddArgs(e.edef, this.string.slice(this.i)), this.i = 0, t;
- },
- GetParameter: function(e, n) {
- if (n == null) return this.GetArgument(e);
- var r = this.i, i = 0, s = 0;
- while (this.i < this.string.length) if (this.string.charAt(this.i) === "{") this.i === r && (s = 1), this.GetArgument(e), i = this.i - r; else {
- if (this.MatchParam(n)) return s && (r++, i -= 2), this.string.substr(r, i);
- this.i++, i++, s = 0;
- }
- t.Error("Runaway argument for " + e + "?");
- },
- MatchParam: function(e) {
- return this.string.substr(this.i, e.length) !== e ? 0 : (this.i += e.length, 1);
- }
- }), t.Environment = function(e) {
- n.environment[e] = [ "BeginEnv", "EndEnv" ].concat([].slice.call(arguments, 1));
- }, MathJax.Hub.Startup.signal.Post("TeX newcommand Ready");
- }), MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/newcommand.js"), MathJax.Hub.Register.StartupHook("TeX Jax Ready", function() {
- var e = "1.1", t = MathJax.ElementJax.mml, n = MathJax.InputJax.TeX, r = n.Definitions, i = {};
- i[t.VARIANT.NORMAL] = t.VARIANT.BOLD, i[t.VARIANT.ITALIC] = t.VARIANT.BOLDITALIC, i[t.VARIANT.FRAKTUR] = t.VARIANT.BOLDFRAKTUR, i[t.VARIANT.SCRIPT] = t.VARIANT.BOLDSCRIPT, i[t.VARIANT.SANSSERIF] = t.VARIANT.BOLDSANSSERIF, i["-tex-caligraphic"] = "-tex-caligraphic-bold", i["-tex-oldstyle"] = "-tex-oldstyle-bold", r.macros.boldsymbol = "Boldsymbol", n.Parse.Augment({
- mmlToken: function(e) {
- if (this.stack.env.boldsymbol) {
- var n = e.Get("mathvariant");
- n == null ? e.mathvariant = t.VARIANT.BOLD : e.mathvariant = i[n] || n;
- }
- return e;
- },
- Boldsymbol: function(e) {
- var t = this.stack.env.boldsymbol, n = this.stack.env.font;
- this.stack.env.boldsymbol = !0, this.stack.env.font = null;
- var r = this.ParseArg(e);
- this.stack.env.font = n, this.stack.env.boldsymbol = t, this.Push(r);
- }
- });
- }), MathJax.Hub.Register.StartupHook("HTML-CSS Jax Ready", function() {
- var e = MathJax.OutputJax["HTML-CSS"], t = e.FONTDATA.FONTS, n = e.FONTDATA.VARIANT;
- e.fontInUse === "TeX" ? (t["MathJax_Caligraphic-bold"] = "Caligraphic/Bold/Main.js", n["-tex-caligraphic-bold"] = {
- fonts: [ "MathJax_Caligraphic-bold", "MathJax_Main-bold", "MathJax_Main", "MathJax_Math", "MathJax_Size1" ],
- offsetA: 65,
- variantA: "bold-italic"
- }, n["-tex-oldstyle-bold"] = {
- fonts: [ "MathJax_Caligraphic-bold", "MathJax_Main-bold", "MathJax_Main", "MathJax_Math", "MathJax_Size1" ]
- }, e.msieCheckGreek && e.Font.testFont({
- family: "MathJax_Greek",
- weight: "bold",
- style: "italic",
- testString: e.msieCheckGreek
- }) && (n["bold-italic"].offsetG = 913, n["bold-italic"].variantG = "-Greek-Bold-Italic", n["-Greek-Bold-Italic"] = {
- fonts: [ "MathJax_Greek-bold-italic" ]
- }, t["MathJax_Greek-bold-italic"] = "Greek/BoldItalic/Main.js"), MathJax.Hub.Browser.isChrome && !MathJax.Hub.Browser.versionAtLeast("5.0") && (n["-tex-caligraphic-bold"].remap = {
- 84: [ 58096, "-WinChrome" ]
- })) : e.fontInUse === "STIX" && (n["-tex-caligraphic-bold"] = {
- fonts: [ "STIXGeneral-bold-italic", "STIXNonUnicode-bold-italic", "STIXNonUnicode", "STIXGeneral", "STIXSizeOneSym" ],
- offsetA: 57927,
- noLowerCase: 1
- }, n["-tex-oldstyle-bold"] = {
- fonts: [ "STIXGeneral-bold", "STIXNonUnicode-bold", "STIXGeneral", "STIXSizeOneSym" ],
- offsetN: 57955,
- remap: {
- 57956: 57959,
- 57957: 57963,
- 57958: 57967,
- 57959: 57971,
- 57960: 57975,
- 57961: 57979,
- 57962: 57983,
- 57963: 57987,
- 57964: 57991
- }
- }), MathJax.Hub.Startup.signal.Post("TeX boldsymbol Ready");
- }), MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/boldsymbol.js"), MathJax.Extension.tex2jax = {
- version: "1.1.3",
- config: {
- inlineMath: [ [ "\\(", "\\)" ] ],
- displayMath: [ [ "$$", "$$" ], [ "\\[", "\\]" ] ],
- skipTags: [ "script", "noscript", "style", "textarea", "pre", "code" ],
- ignoreClass: "tex2jax_ignore",
- processClass: "tex2jax_process",
- processEscapes: !1,
- processEnvironments: !0,
- preview: "TeX"
- },
- PreProcess: function(e) {
- this.configured || (this.config = MathJax.Hub.CombineConfig("tex2jax", this.config), this.config.Augment && MathJax.Hub.Insert(this, this.config.Augment), typeof this.config.previewTeX != "undefined" && !this.config.previewTeX && (this.config.preview = "none"), this.configured = !0), typeof e == "string" && (e = document.getElementById(e)), e || (e = document.body), this.createPatterns(), this.scanElement(e, e.nextSibling);
- },
- createPatterns: function() {
- var e = [], t, n, r = this.config;
- this.match = {};
- for (t = 0, n = r.inlineMath.length; t < n; t++) e.push(this.patternQuote(r.inlineMath[t][0])), this.match[r.inlineMath[t][0]] = {
- mode: "",
- end: r.inlineMath[t][1],
- pattern: this.endPattern(r.inlineMath[t][1])
- };
- for (t = 0, n = r.displayMath.length; t < n; t++) e.push(this.patternQuote(r.displayMath[t][0])), this.match[r.displayMath[t][0]] = {
- mode: "; mode=display",
- end: r.displayMath[t][1],
- pattern: this.endPattern(r.displayMath[t][1])
- };
- this.start = new RegExp(e.sort(this.sortLength).join("|") + (r.processEnvironments ? "|\\\\begin\\{([^}]*)\\}" : "") + (r.processEscapes ? "|\\\\*\\\\\\$" : ""), "g"), this.skipTags = new RegExp("^(" + r.skipTags.join("|") + ")$", "i"), this.ignoreClass = new RegExp("(^| )(" + r.ignoreClass + ")( |$)"), this.processClass = new RegExp("(^| )(" + r.processClass + ")( |$)");
- },
- patternQuote: function(e) {
- return e.replace(/([\^$(){}+*?\-|\[\]\:\\])/g, "\\$1");
- },
- endPattern: function(e) {
- return new RegExp(this.patternQuote(e) + "|\\\\.", "g");
- },
- sortLength: function(e, t) {
- return e.length !== t.length ? t.length - e.length : e == t ? 0 : e < t ? -1 : 1;
- },
- scanElement: function(e, t, n) {
- var r, i, s;
- while (e && e != t) e.nodeName.toLowerCase() === "#text" ? n || (e = this.scanText(e)) : (r = typeof e.className == "undefined" ? "" : e.className, i = typeof e.tagName == "undefined" ? "" : e.tagName, typeof r != "string" && (r = String(r)), e.firstChild && !r.match(/(^| )MathJax/) && !this.skipTags.exec(i) && (s = (n || this.ignoreClass.exec(r)) && !this.processClass.exec(r), this.scanElement(e.firstChild, t, s))), e && (e = e.nextSibling);
- },
- scanText: function(e) {
- if (e.nodeValue.replace(/\s+/, "") == "") return e;
- var t, n;
- this.search = {
- start: !0
- }, this.pattern = this.start;
- while (e) {
- this.pattern.lastIndex = 0;
- while (e && e.nodeName.toLowerCase() === "#text" && (t = this.pattern.exec(e.nodeValue))) this.search.start ? e = this.startMatch(t, e) : e = this.endMatch(t, e);
- this.search.matched && (e = this.encloseMath(e));
- if (e) {
- do n = e, e = e.nextSibling; while (e && (e.nodeName.toLowerCase() === "br" || e.nodeName.toLowerCase() === "#comment"));
- if (!e || e.nodeName !== "#text") return n;
- }
- }
- return e;
- },
- startMatch: function(e, t) {
- var n = this.match[e[0]];
- if (n != null) this.search = {
- end: n.end,
- mode: n.mode,
- open: t,
- olen: e[0].length,
- opos: this.pattern.lastIndex - e[0].length
- }, this.switchPattern(n.pattern); else if (e[0].substr(0, 6) === "\\begin") this.search = {
- end: "\\end{" + e[1] + "}",
- mode: "; mode=display",
- open: t,
- olen: 0,
- opos: this.pattern.lastIndex - e[0].length,
- isBeginEnd: !0
- }, this.switchPattern(this.endPattern(this.search.end)); else {
- var r = e[0].substr(0, e[0].length - 1), i, s;
- r.length % 2 === 0 ? (s = [ r.replace(/\\\\/g, "\\") ], i = 1) : (s = [ r.substr(1).replace(/\\\\/g, "\\"), "$" ], i = 0), s = MathJax.HTML.Element("span", null, s);
- var o = MathJax.HTML.TextNode(t.nodeValue.substr(0, e.index));
- t.nodeValue = t.nodeValue.substr(e.index + e[0].length - i), t.parentNode.insertBefore(s, t), t.parentNode.insertBefore(o, s), this.pattern.lastIndex = i;
- }
- return t;
- },
- endMatch: function(e, t) {
- return e[0] == this.search.end && (this.search.close = t, this.search.cpos = this.pattern.lastIndex, this.search.clen = this.search.isBeginEnd ? 0 : e[0].length, this.search.matched = !0, t = this.encloseMath(t), this.switchPattern(this.start)), t;
- },
- switchPattern: function(e) {
- e.lastIndex = this.pattern.lastIndex, this.pattern = e, this.search.start = e === this.start;
- },
- encloseMath: function(e) {
- var t = this.search, n = t.close, r, i;
- t.cpos === n.length ? n = n.nextSibling : n = n.splitText(t.cpos), n || (r = n = MathJax.HTML.addText(t.close.parentNode, "")), t.close = n, i = t.opos ? t.open.splitText(t.opos) : t.open;
- while (i.nextSibling && i.nextSibling !== n) i.nextSibling.nodeValue !== null ? i.nextSibling.nodeName === "#comment" ? i.nodeValue += i.nextSibling.nodeValue.replace(/^\[CDATA\[((.|\n|\r)*)\]\]$/, "$1") : i.nodeValue += i.nextSibling.nodeValue : this.msieNewlineBug ? i.nodeValue += i.nextSibling.nodeName.toLowerCase() === "br" ? "\n" : " " : i.nodeValue += " ", i.parentNode.removeChild(i.nextSibling);
- var s = i.nodeValue.substr(t.olen, i.nodeValue.length - t.olen - t.clen);
- return i.parentNode.removeChild(i), this.config.preview !== "none" && this.createPreview(t.mode, s), i = this.createMathTag(t.mode, s), this.search = {}, this.pattern.lastIndex = 0, r && r.parentNode.removeChild(r), i;
- },
- insertNode: function(e) {
- var t = this.search;
- t.close.parentNode.insertBefore(e, t.close);
- },
- createPreview: function(e, t) {
- var n;
- this.config.preview === "TeX" ? n = [ this.filterTeX(t) ] : this.config.preview instanceof Array && (n = this.config.preview), n && (n = MathJax.HTML.Element("span", {
- className: MathJax.Hub.config.preRemoveClass
- }, n), this.insertNode(n));
- },
- createMathTag: function(e, t) {
- var n = document.createElement("script");
- return n.type = "math/tex" + e, MathJax.HTML.setScript(n, t), this.insertNode(n), n;
- },
- filterTeX: function(e) {
- return e;
- },
- msieNewlineBug: MathJax.Hub.Browser.isMSIE && document.documentMode < 9
- }, MathJax.Hub.Register.PreProcessor([ "PreProcess", MathJax.Extension.tex2jax ]), MathJax.Ajax.loadComplete("[MathJax]/extensions/tex2jax.js"), MathJax.ElementJax.mml = MathJax.ElementJax({
- mimeType: "jax/mml"
- }, {
- id: "mml",
- version: "1.1.1",
- directory: MathJax.ElementJax.directory + "/mml",
- extensionDir: MathJax.ElementJax.extensionDir + "/mml",
- optableDir: MathJax.ElementJax.directory + "/mml/optable"
- }), MathJax.ElementJax.mml.Augment({
- Init: function() {
- arguments.length === 1 && arguments[0].type === "math" ? this.root = arguments[0] : this.root = MathJax.ElementJax.mml.math.apply(this, arguments), this.root.mode && (!this.root.display && this.root.mode === "display" && (this.root.display = "block"), delete this.root.mode);
- }
- }, {
- INHERIT: "_inherit_",
- AUTO: "_auto_",
- SIZE: {
- INFINITY: "infinity",
- SMALL: "small",
- NORMAL: "normal",
- BIG: "big"
- },
- COLOR: {
- TRANSPARENT: "transparent"
- },
- 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",
- CALIGRAPHIC: "-tex-caligraphic",
- OLDSTYLE: "-tex-oldstyle"
- },
- 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",
- RADICAL: "radical",
- BOX: "box",
- ROUNDEDBOX: "roundedbox",
- CIRCLE: "circle",
- LEFT: "left",
- RIGHT: "right",
- TOP: "top",
- BOTTOM: "bottom",
- UPDIAGONALSTRIKE: "updiagonalstrike",
- DOWNDIAGONALSTRIKE: "downdiagonalstrike",
- VERTICALSTRIKE: "verticalstrike",
- HORIZONTALSTRIKE: "horizontalstrike",
- MADRUWB: "madruwb"
- },
- 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"
- },
- LENGTH: {
- VERYVERYTHINMATHSPACE: "veryverythinmathspace",
- VERYTHINMATHSPACE: "verythinmathspace",
- THINMATHSPACE: "thinmathspace",
- MEDIUMMATHSPACE: "mediummathspace",
- THICKMATHSPACE: "thickmathspace",
- VERYTHICKMATHSPACE: "verythickmathspace",
- VERYVERYTHICKMATHSPACE: "veryverythickmathspace",
- NEGATIVEVERYVERYTHINMATHSPACE: "negativeveryverythinmathspace",
- NEGATIVEVERYTHINMATHSPACE: "negativeverythinmathspace",
- NEGATIVETHINMATHSPACE: "negativethinmathspace",
- NEGATIVEMEDIUMMATHSPACE: "negativemediummathspace",
- NEGATIVETHICKMATHSPACE: "negativethickmathspace",
- NEGATIVEVERYTHICKMATHSPACE: "negativeverythickmathspace",
- NEGATIVEVERYVERYTHICKMATHSP…
Large files files are truncated, but you can click here to view the full file