;(function () {
  'use strict'
  var __webpack_modules__ = {
      351: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          l =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AssistiveMmlHandler = e.AssistiveMmlMathDocumentMixin = e.AssistiveMmlMathItemMixin = e.LimitedMmlVisitor = void 0)
        var c = r(4474),
          u = r(9259),
          p = r(7233),
          h = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.getAttributes = function (e) {
                return t.prototype.getAttributes.call(this, e).replace(/ ?id=".*?"/, '')
              }),
              e
            )
          })(u.SerializedMmlVisitor)
        function f(t) {
          return (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.assistiveMml = function (t, e) {
                if ((void 0 === e && (e = !1), !(this.state() >= c.STATE.ASSISTIVEMML))) {
                  if (!this.isEscaped && (t.options.enableAssistiveMml || e)) {
                    var r = t.adaptor,
                      n = t
                        .toMML(this.root)
                        .replace(/\n */g, '')
                        .replace(/<!--.*?-->/g, ''),
                      o = r.firstChild(r.body(r.parse(n, 'text/html'))),
                      i = r.node('mjx-assistive-mml', { unselectable: 'on', display: this.display ? 'block' : 'inline' }, [o])
                    r.setAttribute(r.firstChild(this.typesetRoot), 'aria-hidden', 'true'), r.setStyle(this.typesetRoot, 'position', 'relative'), r.append(this.typesetRoot, i)
                  }
                  this.state(c.STATE.ASSISTIVEMML)
                }
              }),
              e
            )
          })(t)
        }
        function d(t) {
          var e
          return (
            (e = (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, a([], s(e), !1)) || this,
                  o = n.constructor,
                  i = o.ProcessBits
                return i.has('assistive-mml') || i.allocate('assistive-mml'), (n.visitor = new h(n.mmlFactory)), (n.options.MathItem = f(n.options.MathItem)), 'addStyles' in n && n.addStyles(o.assistiveStyles), n
              }
              return (
                o(e, t),
                (e.prototype.toMML = function (t) {
                  return this.visitor.visitTree(t)
                }),
                (e.prototype.assistiveMml = function () {
                  var t, e
                  if (!this.processed.isSet('assistive-mml')) {
                    try {
                      for (var r = l(this.math), n = r.next(); !n.done; n = r.next()) {
                        n.value.assistiveMml(this)
                      }
                    } catch (e) {
                      t = { error: e }
                    } finally {
                      try {
                        n && !n.done && (e = r.return) && e.call(r)
                      } finally {
                        if (t) throw t.error
                      }
                    }
                    this.processed.set('assistive-mml')
                  }
                  return this
                }),
                (e.prototype.state = function (e, r) {
                  return void 0 === r && (r = !1), t.prototype.state.call(this, e, r), e < c.STATE.ASSISTIVEMML && this.processed.clear('assistive-mml'), this
                }),
                e
              )
            })(t)),
            (e.OPTIONS = i(i({}, t.OPTIONS), { enableAssistiveMml: !0, renderActions: (0, p.expandable)(i(i({}, t.OPTIONS.renderActions), { assistiveMml: [c.STATE.ASSISTIVEMML] })) })),
            (e.assistiveStyles = {
              'mjx-assistive-mml': {
                position: 'absolute !important',
                top: '0px',
                left: '0px',
                clip: 'rect(1px, 1px, 1px, 1px)',
                padding: '1px 0px 0px 0px !important',
                border: '0px !important',
                display: 'block !important',
                width: 'auto !important',
                overflow: 'hidden !important',
                '-webkit-touch-callout': 'none',
                '-webkit-user-select': 'none',
                '-khtml-user-select': 'none',
                '-moz-user-select': 'none',
                '-ms-user-select': 'none',
                'user-select': 'none'
              },
              'mjx-assistive-mml[display="block"]': { width: '100% !important' }
            }),
            e
          )
        }
        ;(e.LimitedMmlVisitor = h),
          (0, c.newState)('ASSISTIVEMML', 153),
          (e.AssistiveMmlMathItemMixin = f),
          (e.AssistiveMmlMathDocumentMixin = d),
          (e.AssistiveMmlHandler = function (t) {
            return (t.documentClass = d(t.documentClass)), t
          })
      },
      5282: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        var r = new Map()
        e.default = r
      },
      5445: function (t, e, r) {
        var n =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          o =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          i =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && n(e, t, r)
              return o(e, t), e
            },
          s =
            (this && this.__awaiter) ||
            function (t, e, r, n) {
              return new (r || (r = Promise))(function (o, i) {
                function s(t) {
                  try {
                    l(n.next(t))
                  } catch (t) {
                    i(t)
                  }
                }
                function a(t) {
                  try {
                    l(n.throw(t))
                  } catch (t) {
                    i(t)
                  }
                }
                function l(t) {
                  var e
                  t.done
                    ? o(t.value)
                    : ((e = t.value),
                      e instanceof r
                        ? e
                        : new r(function (t) {
                            t(e)
                          })).then(s, a)
                }
                l((n = n.apply(t, e || [])).next())
              })
            },
          a =
            (this && this.__generator) ||
            function (t, e) {
              var r,
                n,
                o,
                i,
                s = {
                  label: 0,
                  sent: function () {
                    if (1 & o[0]) throw o[1]
                    return o[1]
                  },
                  trys: [],
                  ops: []
                }
              return (
                (i = { next: a(0), throw: a(1), return: a(2) }),
                'function' == typeof Symbol &&
                  (i[Symbol.iterator] = function () {
                    return this
                  }),
                i
              )
              function a(i) {
                return function (a) {
                  return (function (i) {
                    if (r) throw new TypeError('Generator is already executing.')
                    for (; s; )
                      try {
                        if (((r = 1), n && (o = 2 & i[0] ? n.return : i[0] ? n.throw || ((o = n.return) && o.call(n), 0) : n.next) && !(o = o.call(n, i[1])).done)) return o
                        switch (((n = 0), o && (i = [2 & i[0], o.value]), i[0])) {
                          case 0:
                          case 1:
                            o = i
                            break
                          case 4:
                            return s.label++, { value: i[1], done: !1 }
                          case 5:
                            s.label++, (n = i[1]), (i = [0])
                            continue
                          case 7:
                            ;(i = s.ops.pop()), s.trys.pop()
                            continue
                          default:
                            if (!((o = s.trys), (o = o.length > 0 && o[o.length - 1]) || (6 !== i[0] && 2 !== i[0]))) {
                              s = 0
                              continue
                            }
                            if (3 === i[0] && (!o || (i[1] > o[0] && i[1] < o[3]))) {
                              s.label = i[1]
                              break
                            }
                            if (6 === i[0] && s.label < o[1]) {
                              ;(s.label = o[1]), (o = i)
                              break
                            }
                            if (o && s.label < o[2]) {
                              ;(s.label = o[2]), s.ops.push(i)
                              break
                            }
                            o[2] && s.ops.pop(), s.trys.pop()
                            continue
                        }
                        i = e.call(t, s)
                      } catch (t) {
                        ;(i = [6, t]), (n = 0)
                      } finally {
                        r = o = 0
                      }
                    if (5 & i[0]) throw i[1]
                    return { value: i[0] ? i[1] : void 0, done: !0 }
                  })([i, a])
                }
              }
            },
          l =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sreReady = e.Sre = void 0)
        var c,
          u = i(r(2998)),
          p = i(r(3362)),
          h = i(r(9552)),
          f = i(r(4440)),
          d = l(r(5897)),
          m = r(8504),
          y = i(r(3090)),
          g = r(1377),
          b = l(r(5282))
        !(function (t) {
          ;(t.locales = g.Variables.LOCALES),
            (t.sreReady = u.engineReady),
            (t.setupEngine = u.setupEngine),
            (t.engineSetup = u.engineSetup),
            (t.toEnriched = u.toEnriched),
            (t.toSpeech = u.toSpeech),
            (t.clearspeakPreferences = m.ClearspeakPreferences),
            (t.getHighlighter = y.highlighter),
            (t.getSpeechGenerator = h.generator),
            (t.getWalker = p.walker),
            (t.clearspeakStyle = function () {
              return f.DOMAIN_TO_STYLES.clearspeak
            }),
            (t.preloadLocales = function (t) {
              return s(this, void 0, void 0, function () {
                var e
                return a(this, function (r) {
                  return [
                    2,
                    (e = b.default.get(t))
                      ? new Promise(function (t, r) {
                          return t(JSON.stringify(e))
                        })
                      : u.localeLoader()(t)
                  ]
                })
              })
            })
        })((c = e.Sre || (e.Sre = {}))),
          (e.sreReady = c.sreReady),
          (d.default.getInstance().delay = !0),
          (e.default = c)
      },
      444: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HTMLAdaptor = void 0)
        var s = (function (t) {
          function e(e) {
            var r = t.call(this, e.document) || this
            return (r.window = e), (r.parser = new e.DOMParser()), r
          }
          return (
            o(e, t),
            (e.prototype.parse = function (t, e) {
              return void 0 === e && (e = 'text/html'), this.parser.parseFromString(t, e)
            }),
            (e.prototype.create = function (t, e) {
              return e ? this.document.createElementNS(e, t) : this.document.createElement(t)
            }),
            (e.prototype.text = function (t) {
              return this.document.createTextNode(t)
            }),
            (e.prototype.head = function (t) {
              return t.head || t
            }),
            (e.prototype.body = function (t) {
              return t.body || t
            }),
            (e.prototype.root = function (t) {
              return t.documentElement || t
            }),
            (e.prototype.doctype = function (t) {
              return t.doctype ? '<!DOCTYPE '.concat(t.doctype.name, '>') : ''
            }),
            (e.prototype.tags = function (t, e, r) {
              void 0 === r && (r = null)
              var n = r ? t.getElementsByTagNameNS(r, e) : t.getElementsByTagName(e)
              return Array.from(n)
            }),
            (e.prototype.getElements = function (t, e) {
              var r,
                n,
                o = []
              try {
                for (var s = i(t), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  'string' == typeof l ? (o = o.concat(Array.from(this.document.querySelectorAll(l)))) : Array.isArray(l) || l instanceof this.window.NodeList || l instanceof this.window.HTMLCollection ? (o = o.concat(Array.from(l))) : o.push(l)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  a && !a.done && (n = s.return) && n.call(s)
                } finally {
                  if (r) throw r.error
                }
              }
              return o
            }),
            (e.prototype.contains = function (t, e) {
              return t.contains(e)
            }),
            (e.prototype.parent = function (t) {
              return t.parentNode
            }),
            (e.prototype.append = function (t, e) {
              return t.appendChild(e)
            }),
            (e.prototype.insert = function (t, e) {
              return this.parent(e).insertBefore(t, e)
            }),
            (e.prototype.remove = function (t) {
              return this.parent(t).removeChild(t)
            }),
            (e.prototype.replace = function (t, e) {
              return this.parent(e).replaceChild(t, e)
            }),
            (e.prototype.clone = function (t) {
              return t.cloneNode(!0)
            }),
            (e.prototype.split = function (t, e) {
              return t.splitText(e)
            }),
            (e.prototype.next = function (t) {
              return t.nextSibling
            }),
            (e.prototype.previous = function (t) {
              return t.previousSibling
            }),
            (e.prototype.firstChild = function (t) {
              return t.firstChild
            }),
            (e.prototype.lastChild = function (t) {
              return t.lastChild
            }),
            (e.prototype.childNodes = function (t) {
              return Array.from(t.childNodes)
            }),
            (e.prototype.childNode = function (t, e) {
              return t.childNodes[e]
            }),
            (e.prototype.kind = function (t) {
              var e = t.nodeType
              return 1 === e || 3 === e || 8 === e ? t.nodeName.toLowerCase() : ''
            }),
            (e.prototype.value = function (t) {
              return t.nodeValue || ''
            }),
            (e.prototype.textContent = function (t) {
              return t.textContent
            }),
            (e.prototype.innerHTML = function (t) {
              return t.innerHTML
            }),
            (e.prototype.outerHTML = function (t) {
              return t.outerHTML
            }),
            (e.prototype.serializeXML = function (t) {
              return new this.window.XMLSerializer().serializeToString(t)
            }),
            (e.prototype.setAttribute = function (t, e, r, n) {
              return void 0 === n && (n = null), n ? ((e = n.replace(/.*\//, '') + ':' + e.replace(/^.*:/, '')), t.setAttributeNS(n, e, r)) : t.setAttribute(e, r)
            }),
            (e.prototype.getAttribute = function (t, e) {
              return t.getAttribute(e)
            }),
            (e.prototype.removeAttribute = function (t, e) {
              return t.removeAttribute(e)
            }),
            (e.prototype.hasAttribute = function (t, e) {
              return t.hasAttribute(e)
            }),
            (e.prototype.allAttributes = function (t) {
              return Array.from(t.attributes).map(function (t) {
                return { name: t.name, value: t.value }
              })
            }),
            (e.prototype.addClass = function (t, e) {
              t.classList ? t.classList.add(e) : (t.className = (t.className + ' ' + e).trim())
            }),
            (e.prototype.removeClass = function (t, e) {
              t.classList
                ? t.classList.remove(e)
                : (t.className = t.className
                    .split(/ /)
                    .filter(function (t) {
                      return t !== e
                    })
                    .join(' '))
            }),
            (e.prototype.hasClass = function (t, e) {
              return t.classList ? t.classList.contains(e) : t.className.split(/ /).indexOf(e) >= 0
            }),
            (e.prototype.setStyle = function (t, e, r) {
              t.style[e] = r
            }),
            (e.prototype.getStyle = function (t, e) {
              return t.style[e]
            }),
            (e.prototype.allStyles = function (t) {
              return t.style.cssText
            }),
            (e.prototype.insertRules = function (t, e) {
              var r, n
              try {
                for (var o = i(e.reverse()), s = o.next(); !s.done; s = o.next()) {
                  var a = s.value
                  try {
                    t.sheet.insertRule(a, 0)
                  } catch (t) {
                    console.warn("MathJax: can't insert css rule '".concat(a, "': ").concat(t.message))
                  }
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  s && !s.done && (n = o.return) && n.call(o)
                } finally {
                  if (r) throw r.error
                }
              }
            }),
            (e.prototype.fontSize = function (t) {
              var e = this.window.getComputedStyle(t)
              return parseFloat(e.fontSize)
            }),
            (e.prototype.fontFamily = function (t) {
              return this.window.getComputedStyle(t).fontFamily || ''
            }),
            (e.prototype.nodeSize = function (t, e, r) {
              if ((void 0 === e && (e = 1), void 0 === r && (r = !1), r && t.getBBox)) {
                var n = t.getBBox()
                return [n.width / e, n.height / e]
              }
              return [t.offsetWidth / e, t.offsetHeight / e]
            }),
            (e.prototype.nodeBBox = function (t) {
              var e = t.getBoundingClientRect()
              return { left: e.left, right: e.right, top: e.top, bottom: e.bottom }
            }),
            e
          )
        })(r(5009).AbstractDOMAdaptor)
        e.HTMLAdaptor = s
      },
      6191: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.browserAdaptor = void 0)
        var n = r(444)
        e.browserAdaptor = function () {
          return new n.HTMLAdaptor(window)
        }
      },
      9515: function (t, e, r) {
        var n =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathJax = e.combineWithMathJax = e.combineDefaults = e.combineConfig = e.isObject = void 0)
        var o = r(3282)
        function i(t) {
          return 'object' == typeof t && null !== t
        }
        function s(t, e) {
          var r, o
          try {
            for (var a = n(Object.keys(e)), l = a.next(); !l.done; l = a.next()) {
              var c = l.value
              '__esModule' !== c && (!i(t[c]) || !i(e[c]) || e[c] instanceof Promise ? null !== e[c] && void 0 !== e[c] && (t[c] = e[c]) : s(t[c], e[c]))
            }
          } catch (t) {
            r = { error: t }
          } finally {
            try {
              l && !l.done && (o = a.return) && o.call(a)
            } finally {
              if (r) throw r.error
            }
          }
          return t
        }
        ;(e.isObject = i),
          (e.combineConfig = s),
          (e.combineDefaults = function t(e, r, o) {
            var s, a
            e[r] || (e[r] = {}), (e = e[r])
            try {
              for (var l = n(Object.keys(o)), c = l.next(); !c.done; c = l.next()) {
                var u = c.value
                i(e[u]) && i(o[u]) ? t(e, u, o[u]) : null == e[u] && null != o[u] && (e[u] = o[u])
              }
            } catch (t) {
              s = { error: t }
            } finally {
              try {
                c && !c.done && (a = l.return) && a.call(l)
              } finally {
                if (s) throw s.error
              }
            }
            return e
          }),
          (e.combineWithMathJax = function (t) {
            return s(e.MathJax, t)
          }),
          void 0 === r.g.MathJax && (r.g.MathJax = {}),
          r.g.MathJax.version || (r.g.MathJax = { version: o.VERSION, _: {}, config: r.g.MathJax }),
          (e.MathJax = r.g.MathJax)
      },
      235: function (t, e, r) {
        var n,
          o,
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CONFIG = e.MathJax = e.Loader = e.PathFilters = e.PackageError = e.Package = void 0)
        var s = r(9515),
          a = r(265),
          l = r(265)
        Object.defineProperty(e, 'Package', {
          enumerable: !0,
          get: function () {
            return l.Package
          }
        }),
          Object.defineProperty(e, 'PackageError', {
            enumerable: !0,
            get: function () {
              return l.PackageError
            }
          })
        var c,
          u = r(7525)
        if (
          ((e.PathFilters = {
            source: function (t) {
              return e.CONFIG.source.hasOwnProperty(t.name) && (t.name = e.CONFIG.source[t.name]), !0
            },
            normalize: function (t) {
              var e = t.name
              return e.match(/^(?:[a-z]+:\/)?\/|[a-z]:\\|\[/i) || (t.name = '[mathjax]/' + e.replace(/^\.\//, '')), t.addExtension && !e.match(/\.[^\/]+$/) && (t.name += '.js'), !0
            },
            prefix: function (t) {
              for (var r; (r = t.name.match(/^\[([^\]]*)\]/)) && e.CONFIG.paths.hasOwnProperty(r[1]); ) t.name = e.CONFIG.paths[r[1]] + t.name.substr(r[0].length)
              return !0
            }
          }),
          (function (t) {
            var r = s.MathJax.version
            ;(t.versions = new Map()),
              (t.ready = function () {
                for (var t, e, r = [], n = 0; n < arguments.length; n++) r[n] = arguments[n]
                0 === r.length && (r = Array.from(a.Package.packages.keys()))
                var o = []
                try {
                  for (var s = i(r), l = s.next(); !l.done; l = s.next()) {
                    var c = l.value,
                      u = a.Package.packages.get(c) || new a.Package(c, !0)
                    o.push(u.promise)
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    l && !l.done && (e = s.return) && e.call(s)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return Promise.all(o)
              }),
              (t.load = function () {
                for (var r, n, o = [], s = 0; s < arguments.length; s++) o[s] = arguments[s]
                if (0 === o.length) return Promise.resolve()
                var l = [],
                  c = function (r) {
                    var n = a.Package.packages.get(r)
                    n || (n = new a.Package(r)).provides(e.CONFIG.provides[r]),
                      n.checkNoLoad(),
                      l.push(
                        n.promise.then(function () {
                          e.CONFIG.versionWarnings && n.isLoaded && !t.versions.has(a.Package.resolvePath(r)) && console.warn('No version information available for component '.concat(r))
                        })
                      )
                  }
                try {
                  for (var u = i(o), p = u.next(); !p.done; p = u.next()) {
                    var h = p.value
                    c(h)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    p && !p.done && (n = u.return) && n.call(u)
                  } finally {
                    if (r) throw r.error
                  }
                }
                return a.Package.loadAll(), Promise.all(l)
              }),
              (t.preLoad = function () {
                for (var t, r, n = [], o = 0; o < arguments.length; o++) n[o] = arguments[o]
                try {
                  for (var s = i(n), l = s.next(); !l.done; l = s.next()) {
                    var c = l.value,
                      u = a.Package.packages.get(c)
                    u || (u = new a.Package(c, !0)).provides(e.CONFIG.provides[c]), u.loaded()
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    l && !l.done && (r = s.return) && r.call(s)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (t.defaultReady = function () {
                void 0 !== e.MathJax.startup && e.MathJax.config.startup.ready()
              }),
              (t.getRoot = function () {
                var t = '//../../es5'
                if ('undefined' != typeof document) {
                  var e = document.currentScript || document.getElementById('MathJax-script')
                  e && (t = e.src.replace(/\/[^\/]*$/, ''))
                }
                return t
              }),
              (t.checkVersion = function (n, o, i) {
                return t.versions.set(a.Package.resolvePath(n), r), !(!e.CONFIG.versionWarnings || o === r) && (console.warn('Component '.concat(n, ' uses ').concat(o, ' of MathJax; version in use is ').concat(r)), !0)
              }),
              (t.pathFilters = new u.FunctionList()),
              t.pathFilters.add(e.PathFilters.source, 0),
              t.pathFilters.add(e.PathFilters.normalize, 10),
              t.pathFilters.add(e.PathFilters.prefix, 20)
          })((c = e.Loader || (e.Loader = {}))),
          (e.MathJax = s.MathJax),
          void 0 === e.MathJax.loader)
        ) {
          ;(0, s.combineDefaults)(e.MathJax.config, 'loader', {
            paths: { mathjax: c.getRoot() },
            source: {},
            dependencies: {},
            provides: {},
            load: [],
            ready: c.defaultReady.bind(c),
            failed: function (t) {
              return console.log('MathJax('.concat(t.package || '?', '): ').concat(t.message))
            },
            require: null,
            pathFilters: [],
            versionWarnings: !0
          }),
            (0, s.combineWithMathJax)({ loader: c })
          try {
            for (var p = i(e.MathJax.config.loader.pathFilters), h = p.next(); !h.done; h = p.next()) {
              var f = h.value
              Array.isArray(f) ? c.pathFilters.add(f[0], f[1]) : c.pathFilters.add(f)
            }
          } catch (t) {
            n = { error: t }
          } finally {
            try {
              h && !h.done && (o = p.return) && o.call(p)
            } finally {
              if (n) throw n.error
            }
          }
        }
        e.CONFIG = e.MathJax.config.loader
      },
      265: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Package = e.PackageError = void 0)
        var l = r(235),
          c = (function (t) {
            function e(e, r) {
              var n = t.call(this, e) || this
              return (n.package = r), n
            }
            return o(e, t), e
          })(Error)
        e.PackageError = c
        var u = (function () {
          function t(e, r) {
            void 0 === r && (r = !1),
              (this.isLoaded = !1),
              (this.isLoading = !1),
              (this.hasFailed = !1),
              (this.dependents = []),
              (this.dependencies = []),
              (this.dependencyCount = 0),
              (this.provided = []),
              (this.name = e),
              (this.noLoad = r),
              t.packages.set(e, this),
              (this.promise = this.makePromise(this.makeDependencies()))
          }
          return (
            Object.defineProperty(t.prototype, 'canLoad', {
              get: function () {
                return 0 === this.dependencyCount && !this.noLoad && !this.isLoading && !this.hasFailed
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.resolvePath = function (t, e) {
              void 0 === e && (e = !0)
              var r = { name: t, original: t, addExtension: e }
              return l.Loader.pathFilters.execute(r), r.name
            }),
            (t.loadAll = function () {
              var t, e
              try {
                for (var r = i(this.packages.values()), n = r.next(); !n.done; n = r.next()) {
                  var o = n.value
                  o.canLoad && o.load()
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  n && !n.done && (e = r.return) && e.call(r)
                } finally {
                  if (t) throw t.error
                }
              }
            }),
            (t.prototype.makeDependencies = function () {
              var e,
                r,
                n = [],
                o = t.packages,
                c = this.noLoad,
                u = this.name,
                p = []
              l.CONFIG.dependencies.hasOwnProperty(u) ? p.push.apply(p, a([], s(l.CONFIG.dependencies[u]), !1)) : 'core' !== u && p.push('core')
              try {
                for (var h = i(p), f = h.next(); !f.done; f = h.next()) {
                  var d = f.value,
                    m = o.get(d) || new t(d, c)
                  this.dependencies.indexOf(m) < 0 && (m.addDependent(this, c), this.dependencies.push(m), m.isLoaded || (this.dependencyCount++, n.push(m.promise)))
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  f && !f.done && (r = h.return) && r.call(h)
                } finally {
                  if (e) throw e.error
                }
              }
              return n
            }),
            (t.prototype.makePromise = function (t) {
              var e = this,
                r = new Promise(function (t, r) {
                  ;(e.resolve = t), (e.reject = r)
                }),
                n = l.CONFIG[this.name] || {}
              return (
                n.ready &&
                  (r = r.then(function (t) {
                    return n.ready(e.name)
                  })),
                t.length &&
                  (t.push(r),
                  (r = Promise.all(t).then(function (t) {
                    return t.join(', ')
                  }))),
                n.failed &&
                  r.catch(function (t) {
                    return n.failed(new c(t, e.name))
                  }),
                r
              )
            }),
            (t.prototype.load = function () {
              if (!this.isLoaded && !this.isLoading && !this.noLoad) {
                this.isLoading = !0
                var e = t.resolvePath(this.name)
                l.CONFIG.require ? this.loadCustom(e) : this.loadScript(e)
              }
            }),
            (t.prototype.loadCustom = function (t) {
              var e = this
              try {
                var r = l.CONFIG.require(t)
                r instanceof Promise
                  ? r
                      .then(function () {
                        return e.checkLoad()
                      })
                      .catch(function (r) {
                        return e.failed('Can\'t load "' + t + '"\n' + r.message.trim())
                      })
                  : this.checkLoad()
              } catch (t) {
                this.failed(t.message)
              }
            }),
            (t.prototype.loadScript = function (t) {
              var e = this,
                r = document.createElement('script')
              ;(r.src = t),
                (r.charset = 'UTF-8'),
                (r.onload = function (t) {
                  return e.checkLoad()
                }),
                (r.onerror = function (r) {
                  return e.failed('Can\'t load "' + t + '"')
                }),
                document.head.appendChild(r)
            }),
            (t.prototype.loaded = function () {
              var t, e, r, n
              ;(this.isLoaded = !0), (this.isLoading = !1)
              try {
                for (var o = i(this.dependents), s = o.next(); !s.done; s = o.next()) {
                  s.value.requirementSatisfied()
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  s && !s.done && (e = o.return) && e.call(o)
                } finally {
                  if (t) throw t.error
                }
              }
              try {
                for (var a = i(this.provided), l = a.next(); !l.done; l = a.next()) {
                  l.value.loaded()
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  l && !l.done && (n = a.return) && n.call(a)
                } finally {
                  if (r) throw r.error
                }
              }
              this.resolve(this.name)
            }),
            (t.prototype.failed = function (t) {
              ;(this.hasFailed = !0), (this.isLoading = !1), this.reject(new c(t, this.name))
            }),
            (t.prototype.checkLoad = function () {
              var t = this
              ;(
                (l.CONFIG[this.name] || {}).checkReady ||
                function () {
                  return Promise.resolve()
                }
              )()
                .then(function () {
                  return t.loaded()
                })
                .catch(function (e) {
                  return t.failed(e)
                })
            }),
            (t.prototype.requirementSatisfied = function () {
              this.dependencyCount && (this.dependencyCount--, this.canLoad && this.load())
            }),
            (t.prototype.provides = function (e) {
              var r, n
              void 0 === e && (e = [])
              try {
                for (var o = i(e), s = o.next(); !s.done; s = o.next()) {
                  var a = s.value,
                    c = t.packages.get(a)
                  c || (l.CONFIG.dependencies[a] || (l.CONFIG.dependencies[a] = []), l.CONFIG.dependencies[a].push(a), ((c = new t(a, !0)).isLoading = !0)), this.provided.push(c)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  s && !s.done && (n = o.return) && n.call(o)
                } finally {
                  if (r) throw r.error
                }
              }
            }),
            (t.prototype.addDependent = function (t, e) {
              this.dependents.push(t), e || this.checkNoLoad()
            }),
            (t.prototype.checkNoLoad = function () {
              var t, e
              if (this.noLoad) {
                this.noLoad = !1
                try {
                  for (var r = i(this.dependencies), n = r.next(); !n.done; n = r.next()) {
                    n.value.checkNoLoad()
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    n && !n.done && (e = r.return) && e.call(r)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }
            }),
            (t.packages = new Map()),
            t
          )
        })()
        e.Package = u
      },
      2388: function (t, e, r) {
        var n =
            (this && this.__assign) ||
            function () {
              return (
                (n =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                n.apply(this, arguments)
              )
            },
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CONFIG = e.MathJax = e.Startup = void 0)
        var a,
          l = r(9515),
          c = r(8666),
          u = r(7233)
        !(function (t) {
          var a,
            l,
            u = new c.PrioritizedList()
          function h(e) {
            return a.visitTree(e, t.document)
          }
          function f() {
            ;(a = new e.MathJax._.core.MmlTree.SerializedMmlVisitor.SerializedMmlVisitor()),
              (l = e.MathJax._.mathjax.mathjax),
              (t.input = v()),
              (t.output = _()),
              (t.adaptor = S()),
              t.handler && l.handlers.unregister(t.handler),
              (t.handler = M()),
              t.handler && (l.handlers.register(t.handler), (t.document = O()))
          }
          function d() {
            var e, r
            t.input && t.output && m()
            var n = t.output ? t.output.name.toLowerCase() : ''
            try {
              for (var i = o(t.input), s = i.next(); !s.done; s = i.next()) {
                var a = s.value,
                  l = a.name.toLowerCase()
                g(l, a), b(l, a), t.output && y(l, n, a)
              }
            } catch (t) {
              e = { error: t }
            } finally {
              try {
                s && !s.done && (r = i.return) && r.call(i)
              } finally {
                if (e) throw e.error
              }
            }
          }
          function m() {
            ;(e.MathJax.typeset = function (e) {
              void 0 === e && (e = null), (t.document.options.elements = e), t.document.reset(), t.document.render()
            }),
              (e.MathJax.typesetPromise = function (e) {
                return (
                  void 0 === e && (e = null),
                  (t.document.options.elements = e),
                  t.document.reset(),
                  l.handleRetriesFor(function () {
                    t.document.render()
                  })
                )
              }),
              (e.MathJax.typesetClear = function (e) {
                void 0 === e && (e = null), e ? t.document.clearMathItemsWithin(e) : t.document.clear()
              })
          }
          function y(r, n, o) {
            var i = r + '2' + n
            ;(e.MathJax[i] = function (e, r) {
              return void 0 === r && (r = {}), (r.format = o.name), t.document.convert(e, r)
            }),
              (e.MathJax[i + 'Promise'] = function (e, r) {
                return (
                  void 0 === r && (r = {}),
                  (r.format = o.name),
                  l.handleRetriesFor(function () {
                    return t.document.convert(e, r)
                  })
                )
              }),
              (e.MathJax[n + 'Stylesheet'] = function () {
                return t.output.styleSheet(t.document)
              }),
              'getMetricsFor' in t.output &&
                (e.MathJax.getMetricsFor = function (e, r) {
                  return t.output.getMetricsFor(e, r)
                })
          }
          function g(r, n) {
            var o = e.MathJax._.core.MathItem.STATE
            ;(e.MathJax[r + '2mml'] = function (e, r) {
              return void 0 === r && (r = {}), (r.end = o.CONVERT), (r.format = n.name), h(t.document.convert(e, r))
            }),
              (e.MathJax[r + '2mmlPromise'] = function (e, r) {
                return (
                  void 0 === r && (r = {}),
                  (r.end = o.CONVERT),
                  (r.format = n.name),
                  l.handleRetriesFor(function () {
                    return h(t.document.convert(e, r))
                  })
                )
              })
          }
          function b(t, r) {
            e.MathJax[t + 'Reset'] = function () {
              for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
              return r.reset.apply(r, s([], i(t), !1))
            }
          }
          function v() {
            var r,
              n,
              i = []
            try {
              for (var s = o(e.CONFIG.input), a = s.next(); !a.done; a = s.next()) {
                var l = a.value,
                  c = t.constructors[l]
                if (!c) throw Error('Input Jax "' + l + '" is not defined (has it been loaded?)')
                i.push(new c(e.MathJax.config[l]))
              }
            } catch (t) {
              r = { error: t }
            } finally {
              try {
                a && !a.done && (n = s.return) && n.call(s)
              } finally {
                if (r) throw r.error
              }
            }
            return i
          }
          function _() {
            var r = e.CONFIG.output
            if (!r) return null
            var n = t.constructors[r]
            if (!n) throw Error('Output Jax "' + r + '" is not defined (has it been loaded?)')
            return new n(e.MathJax.config[r])
          }
          function S() {
            var r = e.CONFIG.adaptor
            if (!r || 'none' === r) return null
            var n = t.constructors[r]
            if (!n) throw Error('DOMAdaptor "' + r + '" is not defined (has it been loaded?)')
            return n(e.MathJax.config[r])
          }
          function M() {
            var r,
              n,
              i = e.CONFIG.handler
            if (!i || 'none' === i || !t.adaptor) return null
            var s = t.constructors[i]
            if (!s) throw Error('Handler "' + i + '" is not defined (has it been loaded?)')
            var a = new s(t.adaptor, 5)
            try {
              for (var l = o(u), c = l.next(); !c.done; c = l.next()) {
                a = c.value.item(a)
              }
            } catch (t) {
              r = { error: t }
            } finally {
              try {
                c && !c.done && (n = l.return) && n.call(l)
              } finally {
                if (r) throw r.error
              }
            }
            return a
          }
          function O(r) {
            return void 0 === r && (r = null), l.document(r || e.CONFIG.document, n(n({}, e.MathJax.config.options), { InputJax: t.input, OutputJax: t.output }))
          }
          ;(t.constructors = {}),
            (t.input = []),
            (t.output = null),
            (t.handler = null),
            (t.adaptor = null),
            (t.elements = null),
            (t.document = null),
            (t.promise = new Promise(function (e, r) {
              ;(t.promiseResolve = e), (t.promiseReject = r)
            })),
            (t.pagePromise = new Promise(function (t, e) {
              var n = r.g.document
              if (n && n.readyState && 'complete' !== n.readyState && 'interactive' !== n.readyState) {
                var o = function () {
                  return t()
                }
                n.defaultView.addEventListener('load', o, !0), n.defaultView.addEventListener('DOMContentLoaded', o, !0)
              } else t()
            })),
            (t.toMML = h),
            (t.registerConstructor = function (e, r) {
              t.constructors[e] = r
            }),
            (t.useHandler = function (t, r) {
              void 0 === r && (r = !1), (e.CONFIG.handler && !r) || (e.CONFIG.handler = t)
            }),
            (t.useAdaptor = function (t, r) {
              void 0 === r && (r = !1), (e.CONFIG.adaptor && !r) || (e.CONFIG.adaptor = t)
            }),
            (t.useInput = function (t, r) {
              void 0 === r && (r = !1), (p && !r) || e.CONFIG.input.push(t)
            }),
            (t.useOutput = function (t, r) {
              void 0 === r && (r = !1), (e.CONFIG.output && !r) || (e.CONFIG.output = t)
            }),
            (t.extendHandler = function (t, e) {
              void 0 === e && (e = 10), u.add(t, e)
            }),
            (t.defaultReady = function () {
              f(),
                d(),
                t.pagePromise
                  .then(function () {
                    return e.CONFIG.pageReady()
                  })
                  .then(function () {
                    return t.promiseResolve()
                  })
                  .catch(function (e) {
                    return t.promiseReject(e)
                  })
            }),
            (t.defaultPageReady = function () {
              return e.CONFIG.typeset && e.MathJax.typesetPromise ? e.MathJax.typesetPromise(e.CONFIG.elements) : Promise.resolve()
            }),
            (t.getComponents = f),
            (t.makeMethods = d),
            (t.makeTypesetMethods = m),
            (t.makeOutputMethods = y),
            (t.makeMmlMethods = g),
            (t.makeResetMethod = b),
            (t.getInputJax = v),
            (t.getOutputJax = _),
            (t.getAdaptor = S),
            (t.getHandler = M),
            (t.getDocument = O)
        })((a = e.Startup || (e.Startup = {}))),
          (e.MathJax = l.MathJax),
          void 0 === e.MathJax._.startup &&
            ((0, l.combineDefaults)(e.MathJax.config, 'startup', {
              input: [],
              output: '',
              handler: null,
              adaptor: null,
              document: 'undefined' == typeof document ? '' : document,
              elements: null,
              typeset: !0,
              ready: a.defaultReady.bind(a),
              pageReady: a.defaultPageReady.bind(a)
            }),
            (0, l.combineWithMathJax)({ startup: a, options: {} }),
            e.MathJax.config.startup.invalidOption && (u.OPTIONS.invalidOption = e.MathJax.config.startup.invalidOption),
            e.MathJax.config.startup.optionError && (u.OPTIONS.optionError = e.MathJax.config.startup.optionError)),
          (e.CONFIG = e.MathJax.config.startup)
        var p = 0 !== e.CONFIG.input.length
      },
      3282: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.VERSION = void 0), (e.VERSION = '3.2.1')
      },
      5009: function (t, e) {
        var r =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractDOMAdaptor = void 0)
        var n = (function () {
          function t(t) {
            void 0 === t && (t = null), (this.document = t)
          }
          return (
            (t.prototype.node = function (t, e, n, o) {
              var i, s
              void 0 === e && (e = {}), void 0 === n && (n = [])
              var a = this.create(t, o)
              this.setAttributes(a, e)
              try {
                for (var l = r(n), c = l.next(); !c.done; c = l.next()) {
                  var u = c.value
                  this.append(a, u)
                }
              } catch (t) {
                i = { error: t }
              } finally {
                try {
                  c && !c.done && (s = l.return) && s.call(l)
                } finally {
                  if (i) throw i.error
                }
              }
              return a
            }),
            (t.prototype.setAttributes = function (t, e) {
              var n, o, i, s, a, l
              if (e.style && 'string' != typeof e.style)
                try {
                  for (var c = r(Object.keys(e.style)), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value
                    this.setStyle(
                      t,
                      p.replace(/-([a-z])/g, function (t, e) {
                        return e.toUpperCase()
                      }),
                      e.style[p]
                    )
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    u && !u.done && (o = c.return) && o.call(c)
                  } finally {
                    if (n) throw n.error
                  }
                }
              if (e.properties)
                try {
                  for (var h = r(Object.keys(e.properties)), f = h.next(); !f.done; f = h.next()) {
                    t[(p = f.value)] = e.properties[p]
                  }
                } catch (t) {
                  i = { error: t }
                } finally {
                  try {
                    f && !f.done && (s = h.return) && s.call(h)
                  } finally {
                    if (i) throw i.error
                  }
                }
              try {
                for (var d = r(Object.keys(e)), m = d.next(); !m.done; m = d.next()) {
                  ;('style' === (p = m.value) && 'string' != typeof e.style) || 'properties' === p || this.setAttribute(t, p, e[p])
                }
              } catch (t) {
                a = { error: t }
              } finally {
                try {
                  m && !m.done && (l = d.return) && l.call(d)
                } finally {
                  if (a) throw a.error
                }
              }
            }),
            (t.prototype.replace = function (t, e) {
              return this.insert(t, e), this.remove(e), e
            }),
            (t.prototype.childNode = function (t, e) {
              return this.childNodes(t)[e]
            }),
            (t.prototype.allClasses = function (t) {
              var e = this.getAttribute(t, 'class')
              return e ? e.replace(/  +/g, ' ').replace(/^ /, '').replace(/ $/, '').split(/ /) : []
            }),
            t
          )
        })()
        e.AbstractDOMAdaptor = n
      },
      3494: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractFindMath = void 0)
        var n = r(7233),
          o = (function () {
            function t(t) {
              var e = this.constructor
              this.options = (0, n.userOptions)((0, n.defaultOptions)({}, e.OPTIONS), t)
            }
            return (t.OPTIONS = {}), t
          })()
        e.AbstractFindMath = o
      },
      3670: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractHandler = void 0)
        var i = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), e
          })(r(5722).AbstractMathDocument),
          s = (function () {
            function t(t, e) {
              void 0 === e && (e = 5), (this.documentClass = i), (this.adaptor = t), (this.priority = e)
            }
            return (
              Object.defineProperty(t.prototype, 'name', {
                get: function () {
                  return this.constructor.NAME
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.handlesDocument = function (t) {
                return !1
              }),
              (t.prototype.create = function (t, e) {
                return new this.documentClass(t, this.adaptor, e)
              }),
              (t.NAME = 'generic'),
              t
            )
          })()
        e.AbstractHandler = s
      },
      805: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HandlerList = void 0)
        var s = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.register = function (t) {
              return this.add(t, t.priority)
            }),
            (e.prototype.unregister = function (t) {
              this.remove(t)
            }),
            (e.prototype.handlesDocument = function (t) {
              var e, r
              try {
                for (var n = i(this), o = n.next(); !o.done; o = n.next()) {
                  var s = o.value.item
                  if (s.handlesDocument(t)) return s
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  o && !o.done && (r = n.return) && r.call(n)
                } finally {
                  if (e) throw e.error
                }
              }
              throw new Error("Can't find handler for document")
            }),
            (e.prototype.document = function (t, e) {
              return void 0 === e && (e = null), this.handlesDocument(t).create(t, e)
            }),
            e
          )
        })(r(8666).PrioritizedList)
        e.HandlerList = s
      },
      9206: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractInputJax = void 0)
        var n = r(7233),
          o = r(7525),
          i = (function () {
            function t(t) {
              void 0 === t && (t = {}), (this.adaptor = null), (this.mmlFactory = null)
              var e = this.constructor
              ;(this.options = (0, n.userOptions)((0, n.defaultOptions)({}, e.OPTIONS), t)), (this.preFilters = new o.FunctionList()), (this.postFilters = new o.FunctionList())
            }
            return (
              Object.defineProperty(t.prototype, 'name', {
                get: function () {
                  return this.constructor.NAME
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.setAdaptor = function (t) {
                this.adaptor = t
              }),
              (t.prototype.setMmlFactory = function (t) {
                this.mmlFactory = t
              }),
              (t.prototype.initialize = function () {}),
              (t.prototype.reset = function () {
                for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
              }),
              Object.defineProperty(t.prototype, 'processStrings', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.findMath = function (t, e) {
                return []
              }),
              (t.prototype.executeFilters = function (t, e, r, n) {
                var o = { math: e, document: r, data: n }
                return t.execute(o), o.data
              }),
              (t.NAME = 'generic'),
              (t.OPTIONS = {}),
              t
            )
          })()
        e.AbstractInputJax = i
      },
      5722: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractMathDocument = e.resetAllOptions = e.resetOptions = e.RenderList = void 0)
        var l = r(7233),
          c = r(9206),
          u = r(2975),
          p = r(9e3),
          h = r(4474),
          f = r(3909),
          d = r(6751),
          m = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.create = function (t) {
                var e,
                  r,
                  n = new this()
                try {
                  for (var o = i(Object.keys(t)), a = o.next(); !a.done; a = o.next()) {
                    var l = a.value,
                      c = s(this.action(l, t[l]), 2),
                      u = c[0],
                      p = c[1]
                    p && n.add(u, p)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    a && !a.done && (r = o.return) && r.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return n
              }),
              (e.action = function (t, e) {
                var r,
                  n,
                  o,
                  i,
                  a,
                  l,
                  c = !0,
                  u = e[0]
                if (1 === e.length || 'boolean' == typeof e[1]) 2 === e.length && (c = e[1]), (a = (r = s(this.methodActions(t), 2))[0]), (l = r[1])
                else if ('string' == typeof e[1])
                  if ('string' == typeof e[2]) {
                    4 === e.length && (c = e[3])
                    var p = s(e.slice(1), 2),
                      h = p[0],
                      f = p[1]
                    ;(a = (n = s(this.methodActions(h, f), 2))[0]), (l = n[1])
                  } else 3 === e.length && (c = e[2]), (a = (o = s(this.methodActions(e[1]), 2))[0]), (l = o[1])
                else 4 === e.length && (c = e[3]), (a = (i = s(e.slice(1), 2))[0]), (l = i[1])
                return [{ id: t, renderDoc: a, renderMath: l, convert: c }, u]
              }),
              (e.methodActions = function (t, e) {
                return (
                  void 0 === e && (e = t),
                  [
                    function (e) {
                      return t && e[t](), !1
                    },
                    function (t, r) {
                      return e && t[e](r), !1
                    }
                  ]
                )
              }),
              (e.prototype.renderDoc = function (t, e) {
                var r, n
                void 0 === e && (e = h.STATE.UNPROCESSED)
                try {
                  for (var o = i(this.items), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value
                    if (a.priority >= e && a.item.renderDoc(t)) return
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = o.return) && n.call(o)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (e.prototype.renderMath = function (t, e, r) {
                var n, o
                void 0 === r && (r = h.STATE.UNPROCESSED)
                try {
                  for (var s = i(this.items), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value
                    if (l.priority >= r && l.item.renderMath(t, e)) return
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    a && !a.done && (o = s.return) && o.call(s)
                  } finally {
                    if (n) throw n.error
                  }
                }
              }),
              (e.prototype.renderConvert = function (t, e, r) {
                var n, o
                void 0 === r && (r = h.STATE.LAST)
                try {
                  for (var s = i(this.items), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value
                    if (l.priority > r) return
                    if (l.item.convert && l.item.renderMath(t, e)) return
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    a && !a.done && (o = s.return) && o.call(s)
                  } finally {
                    if (n) throw n.error
                  }
                }
              }),
              (e.prototype.findID = function (t) {
                var e, r
                try {
                  for (var n = i(this.items), o = n.next(); !o.done; o = n.next()) {
                    var s = o.value
                    if (s.item.id === t) return s.item
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return null
              }),
              e
            )
          })(r(8666).PrioritizedList)
        ;(e.RenderList = m), (e.resetOptions = { all: !1, processed: !1, inputJax: null, outputJax: null }), (e.resetAllOptions = { all: !0, processed: !0, inputJax: [], outputJax: [] })
        var y = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.compile = function (t) {
                return null
              }),
              e
            )
          })(c.AbstractInputJax),
          g = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.typeset = function (t, e) {
                return void 0 === e && (e = null), null
              }),
              (e.prototype.escaped = function (t, e) {
                return null
              }),
              e
            )
          })(u.AbstractOutputJax),
          b = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), e
          })(p.AbstractMathList),
          v = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), e
          })(h.AbstractMathItem),
          _ = (function () {
            function t(e, r, n) {
              var o = this,
                i = this.constructor
              ;(this.document = e),
                (this.options = (0, l.userOptions)((0, l.defaultOptions)({}, i.OPTIONS), n)),
                (this.math = new (this.options.MathList || b)()),
                (this.renderActions = m.create(this.options.renderActions)),
                (this.processed = new t.ProcessBits()),
                (this.outputJax = this.options.OutputJax || new g())
              var s = this.options.InputJax || [new y()]
              Array.isArray(s) || (s = [s]),
                (this.inputJax = s),
                (this.adaptor = r),
                this.outputJax.setAdaptor(r),
                this.inputJax.map(function (t) {
                  return t.setAdaptor(r)
                }),
                (this.mmlFactory = this.options.MmlFactory || new f.MmlFactory()),
                this.inputJax.map(function (t) {
                  return t.setMmlFactory(o.mmlFactory)
                }),
                this.outputJax.initialize(),
                this.inputJax.map(function (t) {
                  return t.initialize()
                })
            }
            return (
              Object.defineProperty(t.prototype, 'kind', {
                get: function () {
                  return this.constructor.KIND
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.addRenderAction = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
                var n = s(m.action(t, e), 2),
                  o = n[0],
                  i = n[1]
                this.renderActions.add(o, i)
              }),
              (t.prototype.removeRenderAction = function (t) {
                var e = this.renderActions.findID(t)
                e && this.renderActions.remove(e)
              }),
              (t.prototype.render = function () {
                return this.renderActions.renderDoc(this), this
              }),
              (t.prototype.rerender = function (t) {
                return void 0 === t && (t = h.STATE.RERENDER), this.state(t - 1), this.render(), this
              }),
              (t.prototype.convert = function (t, e) {
                void 0 === e && (e = {})
                var r = (0, l.userOptions)({ format: this.inputJax[0].name, display: !0, end: h.STATE.LAST, em: 16, ex: 8, containerWidth: null, lineWidth: 1e6, scale: 1, family: '' }, e),
                  n = r.format,
                  o = r.display,
                  i = r.end,
                  s = r.ex,
                  a = r.em,
                  c = r.containerWidth,
                  u = r.lineWidth,
                  p = r.scale,
                  f = r.family
                null === c && (c = 80 * s)
                var d = this.inputJax.reduce(function (t, e) {
                    return e.name === n ? e : t
                  }, null),
                  m = new this.options.MathItem(t, d, o)
                return (
                  (m.start.node = this.adaptor.body(this.document)),
                  m.setMetrics(a, s, c, u, p),
                  this.outputJax.options.mtextInheritFont && (m.outputData.mtextFamily = f),
                  this.outputJax.options.merrorInheritFont && (m.outputData.merrorFamily = f),
                  m.convert(this, i),
                  m.typesetRoot || m.root
                )
              }),
              (t.prototype.findMath = function (t) {
                return void 0 === t && (t = null), this.processed.set('findMath'), this
              }),
              (t.prototype.compile = function () {
                var t, e, r, n
                if (!this.processed.isSet('compile')) {
                  var o = []
                  try {
                    for (var s = i(this.math), a = s.next(); !a.done; a = s.next()) {
                      var l = a.value
                      this.compileMath(l), void 0 !== l.inputData.recompile && o.push(l)
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      a && !a.done && (e = s.return) && e.call(s)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  try {
                    for (var c = i(o), u = c.next(); !u.done; u = c.next()) {
                      var p = (l = u.value).inputData.recompile
                      l.state(p.state), (l.inputData.recompile = p), this.compileMath(l)
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      u && !u.done && (n = c.return) && n.call(c)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                  this.processed.set('compile')
                }
                return this
              }),
              (t.prototype.compileMath = function (t) {
                try {
                  t.compile(this)
                } catch (e) {
                  if (e.retry || e.restart) throw e
                  this.options.compileError(this, t, e), (t.inputData.error = e)
                }
              }),
              (t.prototype.compileError = function (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)
              }),
              (t.prototype.typeset = function () {
                var t, e
                if (!this.processed.isSet('typeset')) {
                  try {
                    for (var r = i(this.math), n = r.next(); !n.done; n = r.next()) {
                      var o = n.value
                      try {
                        o.typeset(this)
                      } catch (t) {
                        if (t.retry || t.restart) throw t
                        this.options.typesetError(this, o, t), (o.outputData.error = t)
                      }
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      n && !n.done && (e = r.return) && e.call(r)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  this.processed.set('typeset')
                }
                return this
              }),
              (t.prototype.typesetError = function (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)
              }),
              (t.prototype.getMetrics = function () {
                return this.processed.isSet('getMetrics') || (this.outputJax.getMetrics(this), this.processed.set('getMetrics')), this
              }),
              (t.prototype.updateDocument = function () {
                var t, e
                if (!this.processed.isSet('updateDocument')) {
                  try {
                    for (var r = i(this.math.reversed()), n = r.next(); !n.done; n = r.next()) {
                      n.value.updateDocument(this)
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      n && !n.done && (e = r.return) && e.call(r)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  this.processed.set('updateDocument')
                }
                return this
              }),
              (t.prototype.removeFromDocument = function (t) {
                return void 0 === t && (t = !1), this
              }),
              (t.prototype.state = function (t, e) {
                var r, n
                void 0 === e && (e = !1)
                try {
                  for (var o = i(this.math), s = o.next(); !s.done; s = o.next()) {
                    s.value.state(t, e)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = o.return) && n.call(o)
                  } finally {
                    if (r) throw r.error
                  }
                }
                return t < h.STATE.INSERTED && this.processed.clear('updateDocument'), t < h.STATE.TYPESET && (this.processed.clear('typeset'), this.processed.clear('getMetrics')), t < h.STATE.COMPILED && this.processed.clear('compile'), this
              }),
              (t.prototype.reset = function (t) {
                var r
                return (
                  void 0 === t && (t = { processed: !0 }),
                  (t = (0, l.userOptions)(Object.assign({}, e.resetOptions), t)).all && Object.assign(t, e.resetAllOptions),
                  t.processed && this.processed.reset(),
                  t.inputJax &&
                    this.inputJax.forEach(function (e) {
                      return e.reset.apply(e, a([], s(t.inputJax), !1))
                    }),
                  t.outputJax && (r = this.outputJax).reset.apply(r, a([], s(t.outputJax), !1)),
                  this
                )
              }),
              (t.prototype.clear = function () {
                return this.reset(), this.math.clear(), this
              }),
              (t.prototype.concat = function (t) {
                return this.math.merge(t), this
              }),
              (t.prototype.clearMathItemsWithin = function (t) {
                var e,
                  r = this.getMathItemsWithin(t)
                return (e = this.math).remove.apply(e, a([], s(r), !1)), r
              }),
              (t.prototype.getMathItemsWithin = function (t) {
                var e, r, n, o
                Array.isArray(t) || (t = [t])
                var s = this.adaptor,
                  a = [],
                  l = s.getElements(t, this.document)
                try {
                  t: for (var c = i(this.math), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value
                    try {
                      for (var h = ((n = void 0), i(l)), f = h.next(); !f.done; f = h.next()) {
                        var d = f.value
                        if (p.start.node && s.contains(d, p.start.node)) {
                          a.push(p)
                          continue t
                        }
                      }
                    } catch (t) {
                      n = { error: t }
                    } finally {
                      try {
                        f && !f.done && (o = h.return) && o.call(h)
                      } finally {
                        if (n) throw n.error
                      }
                    }
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    u && !u.done && (r = c.return) && r.call(c)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return a
              }),
              (t.KIND = 'MathDocument'),
              (t.OPTIONS = {
                OutputJax: null,
                InputJax: null,
                MmlFactory: null,
                MathList: b,
                MathItem: v,
                compileError: function (t, e, r) {
                  t.compileError(e, r)
                },
                typesetError: function (t, e, r) {
                  t.typesetError(e, r)
                },
                renderActions: (0, l.expandable)({ find: [h.STATE.FINDMATH, 'findMath', '', !1], compile: [h.STATE.COMPILED], metrics: [h.STATE.METRICS, 'getMetrics', '', !1], typeset: [h.STATE.TYPESET], update: [h.STATE.INSERTED, 'updateDocument', !1] })
              }),
              (t.ProcessBits = (0, d.BitFieldClass)('findMath', 'compile', 'getMetrics', 'typeset', 'updateDocument')),
              t
            )
          })()
        e.AbstractMathDocument = _
      },
      4474: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.newState = e.STATE = e.AbstractMathItem = e.protoItem = void 0),
          (e.protoItem = function (t, e, r, n, o, i, s) {
            return void 0 === s && (s = null), { open: t, math: e, close: r, n: n, start: { n: o }, end: { n: i }, display: s }
          })
        var r = (function () {
          function t(t, r, n, o, i) {
            void 0 === n && (n = !0),
              void 0 === o && (o = { i: 0, n: 0, delim: '' }),
              void 0 === i && (i = { i: 0, n: 0, delim: '' }),
              (this.root = null),
              (this.typesetRoot = null),
              (this.metrics = {}),
              (this.inputData = {}),
              (this.outputData = {}),
              (this._state = e.STATE.UNPROCESSED),
              (this.math = t),
              (this.inputJax = r),
              (this.display = n),
              (this.start = o),
              (this.end = i),
              (this.root = null),
              (this.typesetRoot = null),
              (this.metrics = {}),
              (this.inputData = {}),
              (this.outputData = {})
          }
          return (
            Object.defineProperty(t.prototype, 'isEscaped', {
              get: function () {
                return null === this.display
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.render = function (t) {
              t.renderActions.renderMath(this, t)
            }),
            (t.prototype.rerender = function (t, r) {
              void 0 === r && (r = e.STATE.RERENDER), this.state() >= r && this.state(r - 1), t.renderActions.renderMath(this, t, r)
            }),
            (t.prototype.convert = function (t, r) {
              void 0 === r && (r = e.STATE.LAST), t.renderActions.renderConvert(this, t, r)
            }),
            (t.prototype.compile = function (t) {
              this.state() < e.STATE.COMPILED && ((this.root = this.inputJax.compile(this, t)), this.state(e.STATE.COMPILED))
            }),
            (t.prototype.typeset = function (t) {
              this.state() < e.STATE.TYPESET && ((this.typesetRoot = t.outputJax[this.isEscaped ? 'escaped' : 'typeset'](this, t)), this.state(e.STATE.TYPESET))
            }),
            (t.prototype.updateDocument = function (t) {}),
            (t.prototype.removeFromDocument = function (t) {
              void 0 === t && (t = !1)
            }),
            (t.prototype.setMetrics = function (t, e, r, n, o) {
              this.metrics = { em: t, ex: e, containerWidth: r, lineWidth: n, scale: o }
            }),
            (t.prototype.state = function (t, r) {
              return (
                void 0 === t && (t = null),
                void 0 === r && (r = !1),
                null != t &&
                  (t < e.STATE.INSERTED && this._state >= e.STATE.INSERTED && this.removeFromDocument(r),
                  t < e.STATE.TYPESET && this._state >= e.STATE.TYPESET && (this.outputData = {}),
                  t < e.STATE.COMPILED && this._state >= e.STATE.COMPILED && (this.inputData = {}),
                  (this._state = t)),
                this._state
              )
            }),
            (t.prototype.reset = function (t) {
              void 0 === t && (t = !1), this.state(e.STATE.UNPROCESSED, t)
            }),
            t
          )
        })()
        ;(e.AbstractMathItem = r),
          (e.STATE = { UNPROCESSED: 0, FINDMATH: 10, COMPILED: 20, CONVERT: 100, METRICS: 110, RERENDER: 125, TYPESET: 150, INSERTED: 200, LAST: 1e4 }),
          (e.newState = function (t, r) {
            if (t in e.STATE) throw Error('State ' + t + ' already exists')
            e.STATE[t] = r
          })
      },
      9e3: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractMathList = void 0)
        var i = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.isBefore = function (t, e) {
              return t.start.i < e.start.i || (t.start.i === e.start.i && t.start.n < e.start.n)
            }),
            e
          )
        })(r(103).LinkedList)
        e.AbstractMathList = i
      },
      91: function (t, e) {
        var r =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Attributes = e.INHERIT = void 0), (e.INHERIT = '_inherit_')
        var n = (function () {
          function t(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)
          }
          return (
            (t.prototype.set = function (t, e) {
              this.attributes[t] = e
            }),
            (t.prototype.setList = function (t) {
              Object.assign(this.attributes, t)
            }),
            (t.prototype.get = function (t) {
              var r = this.attributes[t]
              return r === e.INHERIT && (r = this.global[t]), r
            }),
            (t.prototype.getExplicit = function (t) {
              if (this.attributes.hasOwnProperty(t)) return this.attributes[t]
            }),
            (t.prototype.getList = function () {
              for (var t, e, n = [], o = 0; o < arguments.length; o++) n[o] = arguments[o]
              var i = {}
              try {
                for (var s = r(n), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  i[l] = this.get(l)
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  a && !a.done && (e = s.return) && e.call(s)
                } finally {
                  if (t) throw t.error
                }
              }
              return i
            }),
            (t.prototype.setInherited = function (t, e) {
              this.inherited[t] = e
            }),
            (t.prototype.getInherited = function (t) {
              return this.inherited[t]
            }),
            (t.prototype.getDefault = function (t) {
              return this.defaults[t]
            }),
            (t.prototype.isSet = function (t) {
              return this.attributes.hasOwnProperty(t) || this.inherited.hasOwnProperty(t)
            }),
            (t.prototype.hasDefault = function (t) {
              return t in this.defaults
            }),
            (t.prototype.getExplicitNames = function () {
              return Object.keys(this.attributes)
            }),
            (t.prototype.getInheritedNames = function () {
              return Object.keys(this.inherited)
            }),
            (t.prototype.getDefaultNames = function () {
              return Object.keys(this.defaults)
            }),
            (t.prototype.getGlobalNames = function () {
              return Object.keys(this.global)
            }),
            (t.prototype.getAllAttributes = function () {
              return this.attributes
            }),
            (t.prototype.getAllInherited = function () {
              return this.inherited
            }),
            (t.prototype.getAllDefaults = function () {
              return this.defaults
            }),
            (t.prototype.getAllGlobals = function () {
              return this.global
            }),
            t
          )
        })()
        e.Attributes = n
      },
      6336: function (t, e, r) {
        var n
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MML = void 0)
        var o = r(9007),
          i = r(3233),
          s = r(450),
          a = r(3050),
          l = r(2756),
          c = r(4770),
          u = r(6030),
          p = r(7265),
          h = r(9878),
          f = r(6850),
          d = r(7131),
          m = r(6145),
          y = r(1314),
          g = r(1581),
          b = r(7238),
          v = r(5741),
          _ = r(5410),
          S = r(6661),
          M = r(9145),
          O = r(4461),
          x = r(5184),
          E = r(6405),
          A = r(1349),
          C = r(5022),
          T = r(4359),
          N = r(142),
          w = r(7590),
          L = r(3985),
          I = r(9102),
          P = r(3948),
          R = r(1334)
        e.MML =
          (((n = {})[i.MmlMath.prototype.kind] = i.MmlMath),
          (n[s.MmlMi.prototype.kind] = s.MmlMi),
          (n[a.MmlMn.prototype.kind] = a.MmlMn),
          (n[l.MmlMo.prototype.kind] = l.MmlMo),
          (n[c.MmlMtext.prototype.kind] = c.MmlMtext),
          (n[u.MmlMspace.prototype.kind] = u.MmlMspace),
          (n[p.MmlMs.prototype.kind] = p.MmlMs),
          (n[h.MmlMrow.prototype.kind] = h.MmlMrow),
          (n[h.MmlInferredMrow.prototype.kind] = h.MmlInferredMrow),
          (n[f.MmlMfrac.prototype.kind] = f.MmlMfrac),
          (n[d.MmlMsqrt.prototype.kind] = d.MmlMsqrt),
          (n[m.MmlMroot.prototype.kind] = m.MmlMroot),
          (n[y.MmlMstyle.prototype.kind] = y.MmlMstyle),
          (n[g.MmlMerror.prototype.kind] = g.MmlMerror),
          (n[b.MmlMpadded.prototype.kind] = b.MmlMpadded),
          (n[v.MmlMphantom.prototype.kind] = v.MmlMphantom),
          (n[_.MmlMfenced.prototype.kind] = _.MmlMfenced),
          (n[S.MmlMenclose.prototype.kind] = S.MmlMenclose),
          (n[M.MmlMaction.prototype.kind] = M.MmlMaction),
          (n[O.MmlMsub.prototype.kind] = O.MmlMsub),
          (n[O.MmlMsup.prototype.kind] = O.MmlMsup),
          (n[O.MmlMsubsup.prototype.kind] = O.MmlMsubsup),
          (n[x.MmlMunder.prototype.kind] = x.MmlMunder),
          (n[x.MmlMover.prototype.kind] = x.MmlMover),
          (n[x.MmlMunderover.prototype.kind] = x.MmlMunderover),
          (n[E.MmlMmultiscripts.prototype.kind] = E.MmlMmultiscripts),
          (n[E.MmlMprescripts.prototype.kind] = E.MmlMprescripts),
          (n[E.MmlNone.prototype.kind] = E.MmlNone),
          (n[A.MmlMtable.prototype.kind] = A.MmlMtable),
          (n[C.MmlMlabeledtr.prototype.kind] = C.MmlMlabeledtr),
          (n[C.MmlMtr.prototype.kind] = C.MmlMtr),
          (n[T.MmlMtd.prototype.kind] = T.MmlMtd),
          (n[N.MmlMaligngroup.prototype.kind] = N.MmlMaligngroup),
          (n[w.MmlMalignmark.prototype.kind] = w.MmlMalignmark),
          (n[L.MmlMglyph.prototype.kind] = L.MmlMglyph),
          (n[I.MmlSemantics.prototype.kind] = I.MmlSemantics),
          (n[I.MmlAnnotation.prototype.kind] = I.MmlAnnotation),
          (n[I.MmlAnnotationXML.prototype.kind] = I.MmlAnnotationXML),
          (n[P.TeXAtom.prototype.kind] = P.TeXAtom),
          (n[R.MathChoice.prototype.kind] = R.MathChoice),
          (n[o.TextNode.prototype.kind] = o.TextNode),
          (n[o.XMLNode.prototype.kind] = o.XMLNode),
          n)
      },
      1759: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathMLVisitor = void 0)
        var s = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.document = null), e
          }
          return (
            o(e, t),
            (e.prototype.visitTree = function (t, e) {
              this.document = e
              var r = e.createElement('top')
              return this.visitNode(t, r), (this.document = null), r.firstChild
            }),
            (e.prototype.visitTextNode = function (t, e) {
              e.appendChild(this.document.createTextNode(t.getText()))
            }),
            (e.prototype.visitXMLNode = function (t, e) {
              e.appendChild(t.getXML().cloneNode(!0))
            }),
            (e.prototype.visitInferredMrowNode = function (t, e) {
              var r, n
              try {
                for (var o = i(t.childNodes), s = o.next(); !s.done; s = o.next()) {
                  var a = s.value
                  this.visitNode(a, e)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  s && !s.done && (n = o.return) && n.call(o)
                } finally {
                  if (r) throw r.error
                }
              }
            }),
            (e.prototype.visitDefault = function (t, e) {
              var r,
                n,
                o = this.document.createElement(t.kind)
              this.addAttributes(t, o)
              try {
                for (var s = i(t.childNodes), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  this.visitNode(l, o)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  a && !a.done && (n = s.return) && n.call(s)
                } finally {
                  if (r) throw r.error
                }
              }
              e.appendChild(o)
            }),
            (e.prototype.addAttributes = function (t, e) {
              var r,
                n,
                o = t.attributes,
                s = o.getExplicitNames()
              try {
                for (var a = i(s), l = a.next(); !l.done; l = a.next()) {
                  var c = l.value
                  e.setAttribute(c, o.getExplicit(c).toString())
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  l && !l.done && (n = a.return) && n.call(a)
                } finally {
                  if (r) throw r.error
                }
              }
            }),
            e
          )
        })(r(6325).MmlVisitor)
        e.MathMLVisitor = s
      },
      3909: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlFactory = void 0)
        var i = r(7860),
          s = r(6336),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'MML', {
                get: function () {
                  return this.node
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaultNodes = s.MML),
              e
            )
          })(i.AbstractNodeFactory)
        e.MmlFactory = a
      },
      9007: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          a =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.XMLNode = e.TextNode = e.AbstractMmlEmptyNode = e.AbstractMmlBaseNode = e.AbstractMmlLayoutNode = e.AbstractMmlTokenNode = e.AbstractMmlNode = e.indentAttributes = e.TEXCLASSNAMES = e.TEXCLASS = void 0)
        var l = r(91),
          c = r(4596)
        ;(e.TEXCLASS = { ORD: 0, OP: 1, BIN: 2, REL: 3, OPEN: 4, CLOSE: 5, PUNCT: 6, INNER: 7, VCENTER: 8, NONE: -1 }), (e.TEXCLASSNAMES = ['ORD', 'OP', 'BIN', 'REL', 'OPEN', 'CLOSE', 'PUNCT', 'INNER', 'VCENTER'])
        var u = ['', 'thinmathspace', 'mediummathspace', 'thickmathspace'],
          p = [
            [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]
          ]
        e.indentAttributes = ['indentalign', 'indentalignfirst', 'indentshift', 'indentshiftfirst']
        var h = (function (t) {
          function r(e, r, n) {
            void 0 === r && (r = {}), void 0 === n && (n = [])
            var o = t.call(this, e) || this
            return (
              (o.prevClass = null),
              (o.prevLevel = null),
              (o.texclass = null),
              o.arity < 0 && ((o.childNodes = [e.create('inferredMrow')]), (o.childNodes[0].parent = o)),
              o.setChildren(n),
              (o.attributes = new l.Attributes(e.getNodeClass(o.kind).defaults, e.getNodeClass('math').defaults)),
              o.attributes.setList(r),
              o
            )
          }
          return (
            o(r, t),
            (r.prototype.copy = function (t) {
              var e, r, n, o
              void 0 === t && (t = !1)
              var a = this.factory.create(this.kind)
              if (((a.properties = i({}, this.properties)), this.attributes)) {
                var l = this.attributes.getAllAttributes()
                try {
                  for (var c = s(Object.keys(l)), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value
                    ;('id' !== p || t) && a.attributes.set(p, l[p])
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    u && !u.done && (r = c.return) && r.call(c)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }
              if (this.childNodes && this.childNodes.length) {
                var h = this.childNodes
                1 === h.length && h[0].isInferred && (h = h[0].childNodes)
                try {
                  for (var f = s(h), d = f.next(); !d.done; d = f.next()) {
                    var m = d.value
                    m ? a.appendChild(m.copy()) : a.childNodes.push(null)
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    d && !d.done && (o = f.return) && o.call(f)
                  } finally {
                    if (n) throw n.error
                  }
                }
              }
              return a
            }),
            Object.defineProperty(r.prototype, 'texClass', {
              get: function () {
                return this.texclass
              },
              set: function (t) {
                this.texclass = t
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isToken', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isEmbellished', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isSpacelike', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'linebreakContainer', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'hasNewLine', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'arity', {
              get: function () {
                return 1 / 0
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isInferred', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'Parent', {
              get: function () {
                for (var t = this.parent; t && t.notParent; ) t = t.Parent
                return t
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'notParent', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            (r.prototype.setChildren = function (e) {
              return this.arity < 0 ? this.childNodes[0].setChildren(e) : t.prototype.setChildren.call(this, e)
            }),
            (r.prototype.appendChild = function (e) {
              var r,
                n,
                o = this
              if (this.arity < 0) return this.childNodes[0].appendChild(e), e
              if (e.isInferred) {
                if (this.arity === 1 / 0)
                  return (
                    e.childNodes.forEach(function (e) {
                      return t.prototype.appendChild.call(o, e)
                    }),
                    e
                  )
                var i = e
                ;(e = this.factory.create('mrow')).setChildren(i.childNodes), (e.attributes = i.attributes)
                try {
                  for (var a = s(i.getPropertyNames()), l = a.next(); !l.done; l = a.next()) {
                    var c = l.value
                    e.setProperty(c, i.getProperty(c))
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    l && !l.done && (n = a.return) && n.call(a)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }
              return t.prototype.appendChild.call(this, e)
            }),
            (r.prototype.replaceChild = function (e, r) {
              return this.arity < 0 ? (this.childNodes[0].replaceChild(e, r), e) : t.prototype.replaceChild.call(this, e, r)
            }),
            (r.prototype.core = function () {
              return this
            }),
            (r.prototype.coreMO = function () {
              return this
            }),
            (r.prototype.coreIndex = function () {
              return 0
            }),
            (r.prototype.childPosition = function () {
              for (var t, e, r = this, n = r.parent; n && n.notParent; ) (r = n), (n = n.parent)
              if (n) {
                var o = 0
                try {
                  for (var i = s(n.childNodes), a = i.next(); !a.done; a = i.next()) {
                    if (a.value === r) return o
                    o++
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    a && !a.done && (e = i.return) && e.call(i)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }
              return null
            }),
            (r.prototype.setTeXclass = function (t) {
              return this.getPrevClass(t), null != this.texClass ? this : t
            }),
            (r.prototype.updateTeXclass = function (t) {
              t && ((this.prevClass = t.prevClass), (this.prevLevel = t.prevLevel), (t.prevClass = t.prevLevel = null), (this.texClass = t.texClass))
            }),
            (r.prototype.getPrevClass = function (t) {
              t && ((this.prevClass = t.texClass), (this.prevLevel = t.attributes.get('scriptlevel')))
            }),
            (r.prototype.texSpacing = function () {
              var t = null != this.prevClass ? this.prevClass : e.TEXCLASS.NONE,
                r = this.texClass || e.TEXCLASS.ORD
              if (t === e.TEXCLASS.NONE || r === e.TEXCLASS.NONE) return ''
              t === e.TEXCLASS.VCENTER && (t = e.TEXCLASS.ORD), r === e.TEXCLASS.VCENTER && (r = e.TEXCLASS.ORD)
              var n = p[t][r]
              return (this.prevLevel > 0 || this.attributes.get('scriptlevel') > 0) && n >= 0 ? '' : u[Math.abs(n)]
            }),
            (r.prototype.hasSpacingAttributes = function () {
              return this.isEmbellished && this.coreMO().hasSpacingAttributes()
            }),
            (r.prototype.setInheritedAttributes = function (t, e, n, o) {
              var i, l
              void 0 === t && (t = {}), void 0 === e && (e = !1), void 0 === n && (n = 0), void 0 === o && (o = !1)
              var c = this.attributes.getAllDefaults()
              try {
                for (var u = s(Object.keys(t)), p = u.next(); !p.done; p = u.next()) {
                  var h = p.value
                  if (c.hasOwnProperty(h) || r.alwaysInherit.hasOwnProperty(h)) {
                    var f = a(t[h], 2),
                      d = f[0],
                      m = f[1]
                    ;((r.noInherit[d] || {})[this.kind] || {})[h] || this.attributes.setInherited(h, m)
                  }
                }
              } catch (t) {
                i = { error: t }
              } finally {
                try {
                  p && !p.done && (l = u.return) && l.call(u)
                } finally {
                  if (i) throw i.error
                }
              }
              void 0 === this.attributes.getExplicit('displaystyle') && this.attributes.setInherited('displaystyle', e),
                void 0 === this.attributes.getExplicit('scriptlevel') && this.attributes.setInherited('scriptlevel', n),
                o && this.setProperty('texprimestyle', o)
              var y = this.arity
              if (y >= 0 && y !== 1 / 0 && ((1 === y && 0 === this.childNodes.length) || (1 !== y && this.childNodes.length !== y)))
                if (y < this.childNodes.length) this.childNodes = this.childNodes.slice(0, y)
                else for (; this.childNodes.length < y; ) this.appendChild(this.factory.create('mrow'))
              this.setChildInheritedAttributes(t, e, n, o)
            }),
            (r.prototype.setChildInheritedAttributes = function (t, e, r, n) {
              var o, i
              try {
                for (var a = s(this.childNodes), l = a.next(); !l.done; l = a.next()) {
                  l.value.setInheritedAttributes(t, e, r, n)
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  l && !l.done && (i = a.return) && i.call(a)
                } finally {
                  if (o) throw o.error
                }
              }
            }),
            (r.prototype.addInheritedAttributes = function (t, e) {
              var r,
                n,
                o = i({}, t)
              try {
                for (var a = s(Object.keys(e)), l = a.next(); !l.done; l = a.next()) {
                  var c = l.value
                  'displaystyle' !== c && 'scriptlevel' !== c && 'style' !== c && (o[c] = [this.kind, e[c]])
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  l && !l.done && (n = a.return) && n.call(a)
                } finally {
                  if (r) throw r.error
                }
              }
              return o
            }),
            (r.prototype.inheritAttributesFrom = function (t) {
              var e = t.attributes,
                r = e.get('displaystyle'),
                n = e.get('scriptlevel'),
                o = e.isSet('mathsize') ? { mathsize: ['math', e.get('mathsize')] } : {},
                i = t.getProperty('texprimestyle') || !1
              this.setInheritedAttributes(o, r, n, i)
            }),
            (r.prototype.verifyTree = function (t) {
              if ((void 0 === t && (t = null), null !== t)) {
                this.verifyAttributes(t)
                var e = this.arity
                t.checkArity && e >= 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)
              }
            }),
            (r.prototype.verifyAttributes = function (t) {
              var e, r
              if (t.checkAttributes) {
                var n = this.attributes,
                  o = []
                try {
                  for (var i = s(n.getExplicitNames()), a = i.next(); !a.done; a = i.next()) {
                    var l = a.value
                    'data-' === l.substr(0, 5) || void 0 !== n.getDefault(l) || l.match(/^(?:class|style|id|(?:xlink:)?href)$/) || o.push(l)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    a && !a.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
                o.length && this.mError('Unknown attributes for ' + this.kind + ' node: ' + o.join(', '), t)
              }
            }),
            (r.prototype.verifyChildren = function (t) {
              var e, r
              try {
                for (var n = s(this.childNodes), o = n.next(); !o.done; o = n.next()) {
                  o.value.verifyTree(t)
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  o && !o.done && (r = n.return) && r.call(n)
                } finally {
                  if (e) throw e.error
                }
              }
            }),
            (r.prototype.mError = function (t, e, r) {
              if ((void 0 === r && (r = !1), this.parent && this.parent.isKind('merror'))) return null
              var n = this.factory.create('merror')
              if ((n.attributes.set('data-mjx-message', t), e.fullErrors || r)) {
                var o = this.factory.create('mtext'),
                  i = this.factory.create('text')
                i.setText(e.fullErrors ? t : this.kind), o.appendChild(i), n.appendChild(o), this.parent.replaceChild(n, this)
              } else this.parent.replaceChild(n, this), n.appendChild(this)
              return n
            }),
            (r.defaults = { mathbackground: l.INHERIT, mathcolor: l.INHERIT, mathsize: l.INHERIT, dir: l.INHERIT }),
            (r.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 } } }),
            (r.alwaysInherit = { scriptminsize: !0, scriptsizemultiplier: !0 }),
            (r.verifyDefaults = { checkArity: !0, checkAttributes: !1, fullErrors: !1, fixMmultiscripts: !0, fixMtables: !0 }),
            r
          )
        })(c.AbstractNode)
        e.AbstractMmlNode = h
        var f = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'isToken', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.getText = function () {
              var t,
                e,
                r = ''
              try {
                for (var n = s(this.childNodes), o = n.next(); !o.done; o = n.next()) {
                  var i = o.value
                  i instanceof g && (r += i.getText())
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  o && !o.done && (e = n.return) && e.call(n)
                } finally {
                  if (t) throw t.error
                }
              }
              return r
            }),
            (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
              var o, i
              try {
                for (var a = s(this.childNodes), l = a.next(); !l.done; l = a.next()) {
                  var c = l.value
                  c instanceof h && c.setInheritedAttributes(t, e, r, n)
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  l && !l.done && (i = a.return) && i.call(a)
                } finally {
                  if (o) throw o.error
                }
              }
            }),
            (e.prototype.walkTree = function (t, e) {
              var r, n
              t(this, e)
              try {
                for (var o = s(this.childNodes), i = o.next(); !i.done; i = o.next()) {
                  var a = i.value
                  a instanceof h && a.walkTree(t, e)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  i && !i.done && (n = o.return) && n.call(o)
                } finally {
                  if (r) throw r.error
                }
              }
              return e
            }),
            (e.defaults = i(i({}, h.defaults), { mathvariant: 'normal', mathsize: l.INHERIT })),
            e
          )
        })(h)
        e.AbstractMmlTokenNode = f
        var d = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'isSpacelike', {
              get: function () {
                return this.childNodes[0].isSpacelike
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isEmbellished', {
              get: function () {
                return this.childNodes[0].isEmbellished
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return -1
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.core = function () {
              return this.childNodes[0]
            }),
            (e.prototype.coreMO = function () {
              return this.childNodes[0].coreMO()
            }),
            (e.prototype.setTeXclass = function (t) {
              return (t = this.childNodes[0].setTeXclass(t)), this.updateTeXclass(this.childNodes[0]), t
            }),
            (e.defaults = h.defaults),
            e
          )
        })(h)
        e.AbstractMmlLayoutNode = d
        var m = (function (t) {
          function r() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(r, t),
            Object.defineProperty(r.prototype, 'isEmbellished', {
              get: function () {
                return this.childNodes[0].isEmbellished
              },
              enumerable: !1,
              configurable: !0
            }),
            (r.prototype.core = function () {
              return this.childNodes[0]
            }),
            (r.prototype.coreMO = function () {
              return this.childNodes[0].coreMO()
            }),
            (r.prototype.setTeXclass = function (t) {
              var r, n
              this.getPrevClass(t), (this.texClass = e.TEXCLASS.ORD)
              var o = this.childNodes[0]
              o ? (this.isEmbellished || o.isKind('mi') ? ((t = o.setTeXclass(t)), this.updateTeXclass(this.core())) : (o.setTeXclass(null), (t = this))) : (t = this)
              try {
                for (var i = s(this.childNodes.slice(1)), a = i.next(); !a.done; a = i.next()) {
                  var l = a.value
                  l && l.setTeXclass(null)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  a && !a.done && (n = i.return) && n.call(i)
                } finally {
                  if (r) throw r.error
                }
              }
              return t
            }),
            (r.defaults = h.defaults),
            r
          )
        })(h)
        e.AbstractMmlBaseNode = m
        var y = (function (t) {
          function r() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(r, t),
            Object.defineProperty(r.prototype, 'isToken', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isEmbellished', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isSpacelike', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'linebreakContainer', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'hasNewLine', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'arity', {
              get: function () {
                return 0
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'isInferred', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'notParent', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'Parent', {
              get: function () {
                return this.parent
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'texClass', {
              get: function () {
                return e.TEXCLASS.NONE
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'prevClass', {
              get: function () {
                return e.TEXCLASS.NONE
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(r.prototype, 'prevLevel', {
              get: function () {
                return 0
              },
              enumerable: !1,
              configurable: !0
            }),
            (r.prototype.hasSpacingAttributes = function () {
              return !1
            }),
            Object.defineProperty(r.prototype, 'attributes', {
              get: function () {
                return null
              },
              enumerable: !1,
              configurable: !0
            }),
            (r.prototype.core = function () {
              return this
            }),
            (r.prototype.coreMO = function () {
              return this
            }),
            (r.prototype.coreIndex = function () {
              return 0
            }),
            (r.prototype.childPosition = function () {
              return 0
            }),
            (r.prototype.setTeXclass = function (t) {
              return t
            }),
            (r.prototype.texSpacing = function () {
              return ''
            }),
            (r.prototype.setInheritedAttributes = function (t, e, r, n) {}),
            (r.prototype.inheritAttributesFrom = function (t) {}),
            (r.prototype.verifyTree = function (t) {}),
            (r.prototype.mError = function (t, e, r) {
              return void 0 === r && (r = !1), null
            }),
            r
          )
        })(c.AbstractEmptyNode)
        e.AbstractMmlEmptyNode = y
        var g = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.text = ''), e
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'text'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.getText = function () {
              return this.text
            }),
            (e.prototype.setText = function (t) {
              return (this.text = t), this
            }),
            (e.prototype.copy = function () {
              return this.factory.create(this.kind).setText(this.getText())
            }),
            (e.prototype.toString = function () {
              return this.text
            }),
            e
          )
        })(y)
        e.TextNode = g
        var b = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.xml = null), (e.adaptor = null), e
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'XML'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.getXML = function () {
              return this.xml
            }),
            (e.prototype.setXML = function (t, e) {
              return void 0 === e && (e = null), (this.xml = t), (this.adaptor = e), this
            }),
            (e.prototype.getSerializedXML = function () {
              return this.adaptor.serializeXML(this.xml)
            }),
            (e.prototype.copy = function () {
              return this.factory.create(this.kind).setXML(this.adaptor.clone(this.xml))
            }),
            (e.prototype.toString = function () {
              return 'XML data'
            }),
            e
          )
        })(y)
        e.XMLNode = b
      },
      3948: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.TeXAtom = void 0)
        var s = r(9007),
          a = r(2756),
          l = (function (t) {
            function e(e, r, n) {
              var o = t.call(this, e, r, n) || this
              return (o.texclass = s.TEXCLASS.ORD), o.setProperty('texClass', o.texClass), o
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'TeXAtom'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return -1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'notParent', {
                get: function () {
                  return this.childNodes[0] && 1 === this.childNodes[0].childNodes.length
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                return this.childNodes[0].setTeXclass(null), this.adjustTeXclass(t)
              }),
              (e.prototype.adjustTeXclass = function (t) {
                return t
              }),
              (e.defaults = i({}, s.AbstractMmlBaseNode.defaults)),
              e
            )
          })(s.AbstractMmlBaseNode)
        ;(e.TeXAtom = l), (l.prototype.adjustTeXclass = a.MmlMo.prototype.adjustTeXclass)
      },
      9145: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMaction = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'maction'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'selected', {
                get: function () {
                  var t = this.attributes.get('selection'),
                    e = Math.max(1, Math.min(this.childNodes.length, t)) - 1
                  return this.childNodes[e] || this.factory.create('mrow')
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isEmbellished', {
                get: function () {
                  return this.selected.isEmbellished
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isSpacelike', {
                get: function () {
                  return this.selected.isSpacelike
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.core = function () {
                return this.selected.core()
              }),
              (e.prototype.coreMO = function () {
                return this.selected.coreMO()
              }),
              (e.prototype.verifyAttributes = function (e) {
                ;(t.prototype.verifyAttributes.call(this, e), 'toggle' !== this.attributes.get('actiontype') && void 0 !== this.attributes.getExplicit('selection')) && delete this.attributes.getAllAttributes().selection
              }),
              (e.prototype.setTeXclass = function (t) {
                'tooltip' === this.attributes.get('actiontype') && this.childNodes[1] && this.childNodes[1].setTeXclass(null)
                var e = this.selected
                return (t = e.setTeXclass(t)), this.updateTeXclass(e), t
              }),
              (e.prototype.nextToggleSelection = function () {
                var t = Math.max(1, this.attributes.get('selection') + 1)
                t > this.childNodes.length && (t = 1), this.attributes.set('selection', t)
              }),
              (e.defaults = i(i({}, s.AbstractMmlNode.defaults), { actiontype: 'toggle', selection: 1 })),
              e
            )
          })(s.AbstractMmlNode)
        e.MmlMaction = a
      },
      142: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMaligngroup = void 0)
        var s = r(9007),
          a = r(91),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'maligngroup'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isSpacelike', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (e, r, n, o) {
                ;(e = this.addInheritedAttributes(e, this.attributes.getAllAttributes())), t.prototype.setChildInheritedAttributes.call(this, e, r, n, o)
              }),
              (e.defaults = i(i({}, s.AbstractMmlLayoutNode.defaults), { groupalign: a.INHERIT })),
              e
            )
          })(s.AbstractMmlLayoutNode)
        e.MmlMaligngroup = l
      },
      7590: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMalignmark = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'malignmark'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isSpacelike', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i(i({}, s.AbstractMmlNode.defaults), { edge: 'left' })),
              e
            )
          })(s.AbstractMmlNode)
        e.MmlMalignmark = a
      },
      3233: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMath = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'math'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (e, r, n, o) {
                'display' === this.attributes.get('mode') && this.attributes.setInherited('display', 'block'),
                  (e = this.addInheritedAttributes(e, this.attributes.getAllAttributes())),
                  (r = !!this.attributes.get('displaystyle') || (!this.attributes.get('displaystyle') && 'block' === this.attributes.get('display'))),
                  this.attributes.setInherited('displaystyle', r),
                  (n = this.attributes.get('scriptlevel') || this.constructor.defaults.scriptlevel),
                  t.prototype.setChildInheritedAttributes.call(this, e, r, n, o)
              }),
              (e.defaults = i(i({}, s.AbstractMmlLayoutNode.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: '8px',
                infixlinebreakstyle: 'before',
                lineleading: '1ex',
                linebreakmultchar: '\u2062',
                indentshift: 'auto',
                indentalign: 'auto',
                indenttarget: '',
                indentalignfirst: 'indentalign',
                indentshiftfirst: 'indentshift',
                indentalignlast: 'indentalign',
                indentshiftlast: 'indentshift'
              })),
              e
            )
          })(s.AbstractMmlLayoutNode)
        e.MmlMath = a
      },
      1334: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathChoice = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'MathChoice'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 4
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'notParent', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setInheritedAttributes = function (t, e, r, n) {
                var o = e ? 0 : Math.max(0, Math.min(r, 2)) + 1,
                  i = this.childNodes[o] || this.factory.create('mrow')
                this.parent.replaceChild(i, this), i.setInheritedAttributes(t, e, r, n)
              }),
              (e.defaults = i({}, s.AbstractMmlBaseNode.defaults)),
              e
            )
          })(s.AbstractMmlBaseNode)
        e.MathChoice = a
      },
      6661: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMenclose = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'menclose'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return -1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContininer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                return (t = this.childNodes[0].setTeXclass(t)), this.updateTeXclass(this.childNodes[0]), t
              }),
              (e.defaults = i(i({}, s.AbstractMmlNode.defaults), { notation: 'longdiv' })),
              e
            )
          })(s.AbstractMmlNode)
        e.MmlMenclose = a
      },
      1581: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMerror = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'merror'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return -1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i({}, s.AbstractMmlNode.defaults)),
              e
            )
          })(s.AbstractMmlNode)
        e.MmlMerror = a
      },
      5410: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMfenced = void 0)
        var a = r(9007),
          l = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = a.TEXCLASS.INNER), (e.separators = []), (e.open = null), (e.close = null), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mfenced'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                this.getPrevClass(t), this.open && (t = this.open.setTeXclass(t)), this.childNodes[0] && (t = this.childNodes[0].setTeXclass(t))
                for (var e = 1, r = this.childNodes.length; e < r; e++) this.separators[e - 1] && (t = this.separators[e - 1].setTeXclass(t)), this.childNodes[e] && (t = this.childNodes[e].setTeXclass(t))
                return this.close && (t = this.close.setTeXclass(t)), this.updateTeXclass(this.open), t
              }),
              (e.prototype.setChildInheritedAttributes = function (e, r, n, o) {
                var i, a
                this.addFakeNodes()
                try {
                  for (var l = s([this.open, this.close].concat(this.separators)), c = l.next(); !c.done; c = l.next()) {
                    var u = c.value
                    u && u.setInheritedAttributes(e, r, n, o)
                  }
                } catch (t) {
                  i = { error: t }
                } finally {
                  try {
                    c && !c.done && (a = l.return) && a.call(l)
                  } finally {
                    if (i) throw i.error
                  }
                }
                t.prototype.setChildInheritedAttributes.call(this, e, r, n, o)
              }),
              (e.prototype.addFakeNodes = function () {
                var t,
                  e,
                  r = this.attributes.getList('open', 'close', 'separators'),
                  n = r.open,
                  o = r.close,
                  i = r.separators
                if (((n = n.replace(/[ \t\n\r]/g, '')), (o = o.replace(/[ \t\n\r]/g, '')), (i = i.replace(/[ \t\n\r]/g, '')), n && (this.open = this.fakeNode(n, { fence: !0, form: 'prefix' }, a.TEXCLASS.OPEN)), i)) {
                  for (; i.length < this.childNodes.length - 1; ) i += i.charAt(i.length - 1)
                  var l = 0
                  try {
                    for (var c = s(this.childNodes.slice(1)), u = c.next(); !u.done; u = c.next()) {
                      u.value && this.separators.push(this.fakeNode(i.charAt(l++)))
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      u && !u.done && (e = c.return) && e.call(c)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                }
                o && (this.close = this.fakeNode(o, { fence: !0, form: 'postfix' }, a.TEXCLASS.CLOSE))
              }),
              (e.prototype.fakeNode = function (t, e, r) {
                void 0 === e && (e = {}), void 0 === r && (r = null)
                var n = this.factory.create('text').setText(t),
                  o = this.factory.create('mo', e, [n])
                return (o.texClass = r), (o.parent = this), o
              }),
              (e.defaults = i(i({}, a.AbstractMmlNode.defaults), { open: '(', close: ')', separators: ',' })),
              e
            )
          })(a.AbstractMmlNode)
        e.MmlMfenced = l
      },
      6850: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMfrac = void 0)
        var a = r(9007),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mfrac'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 2
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                var e, r
                this.getPrevClass(t)
                try {
                  for (var n = s(this.childNodes), o = n.next(); !o.done; o = n.next()) {
                    o.value.setTeXclass(null)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return this
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                ;(!e || r > 0) && r++, this.childNodes[0].setInheritedAttributes(t, !1, r, n), this.childNodes[1].setInheritedAttributes(t, !1, r, !0)
              }),
              (e.defaults = i(i({}, a.AbstractMmlBaseNode.defaults), { linethickness: 'medium', numalign: 'center', denomalign: 'center', bevelled: !1 })),
              e
            )
          })(a.AbstractMmlBaseNode)
        e.MmlMfrac = l
      },
      3985: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMglyph = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mglyph'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.verifyAttributes = function (e) {
                var r = this.attributes.getList('src', 'fontfamily', 'index'),
                  n = r.src,
                  o = r.fontfamily,
                  i = r.index
                '' !== n || ('' !== o && '' !== i) ? t.prototype.verifyAttributes.call(this, e) : this.mError('mglyph must have either src or fontfamily and index attributes', e, !0)
              }),
              (e.defaults = i(i({}, s.AbstractMmlTokenNode.defaults), { alt: '', src: '', index: '', width: 'auto', height: 'auto', valign: '0em' })),
              e
            )
          })(s.AbstractMmlTokenNode)
        e.MmlMglyph = a
      },
      450: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMi = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mi'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setInheritedAttributes = function (r, n, o, i) {
                void 0 === r && (r = {}),
                  void 0 === n && (n = !1),
                  void 0 === o && (o = 0),
                  void 0 === i && (i = !1),
                  t.prototype.setInheritedAttributes.call(this, r, n, o, i),
                  this.getText().match(e.singleCharacter) && !r.mathvariant && this.attributes.setInherited('mathvariant', 'italic')
              }),
              (e.prototype.setTeXclass = function (t) {
                this.getPrevClass(t)
                var r = this.getText()
                return (
                  r.length > 1 &&
                    r.match(e.operatorName) &&
                    'normal' === this.attributes.get('mathvariant') &&
                    void 0 === this.getProperty('autoOP') &&
                    void 0 === this.getProperty('texClass') &&
                    ((this.texClass = s.TEXCLASS.OP), this.setProperty('autoOP', !0)),
                  this
                )
              }),
              (e.defaults = i({}, s.AbstractMmlTokenNode.defaults)),
              (e.operatorName = /^[a-z][a-z0-9]*$/i),
              (e.singleCharacter = /^[\uD800-\uDBFF]?.[\u0300-\u036F\u1AB0-\u1ABE\u1DC0-\u1DFF\u20D0-\u20EF]*$/),
              e
            )
          })(s.AbstractMmlTokenNode)
        e.MmlMi = a
      },
      6405: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlNone = e.MmlMprescripts = e.MmlMmultiscripts = void 0)
        var s = r(9007),
          a = r(4461),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mmultiscripts'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 1
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                this.childNodes[0].setInheritedAttributes(t, e, r, n)
                for (var o = !1, i = 1, s = 0; i < this.childNodes.length; i++) {
                  var a = this.childNodes[i]
                  if (a.isKind('mprescripts')) {
                    if (!o && ((o = !0), i % 2 == 0)) {
                      var l = this.factory.create('mrow')
                      this.childNodes.splice(i, 0, l), (l.parent = this), i++
                    }
                  } else {
                    var c = n || s % 2 == 0
                    a.setInheritedAttributes(t, !1, r + 1, c), s++
                  }
                }
                this.childNodes.length % 2 == (o ? 1 : 0) && (this.appendChild(this.factory.create('mrow')), this.childNodes[this.childNodes.length - 1].setInheritedAttributes(t, !1, r + 1, n))
              }),
              (e.prototype.verifyChildren = function (e) {
                for (var r = !1, n = e.fixMmultiscripts, o = 0; o < this.childNodes.length; o++) {
                  var i = this.childNodes[o]
                  i.isKind('mprescripts') && (r ? i.mError(i.kind + ' can only appear once in ' + this.kind, e, !0) : ((r = !0), o % 2 != 0 || n || this.mError('There must be an equal number of prescripts of each type', e)))
                }
                this.childNodes.length % 2 != (r ? 1 : 0) || n || this.mError('There must be an equal number of scripts of each type', e), t.prototype.verifyChildren.call(this, e)
              }),
              (e.defaults = i({}, a.MmlMsubsup.defaults)),
              e
            )
          })(a.MmlMsubsup)
        e.MmlMmultiscripts = l
        var c = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'mprescripts'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.verifyTree = function (e) {
              t.prototype.verifyTree.call(this, e), this.parent && !this.parent.isKind('mmultiscripts') && this.mError(this.kind + ' must be a child of mmultiscripts', e, !0)
            }),
            (e.defaults = i({}, s.AbstractMmlNode.defaults)),
            e
          )
        })(s.AbstractMmlNode)
        e.MmlMprescripts = c
        var u = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'none'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.verifyTree = function (e) {
              t.prototype.verifyTree.call(this, e), this.parent && !this.parent.isKind('mmultiscripts') && this.mError(this.kind + ' must be a child of mmultiscripts', e, !0)
            }),
            (e.defaults = i({}, s.AbstractMmlNode.defaults)),
            e
          )
        })(s.AbstractMmlNode)
        e.MmlNone = u
      },
      3050: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMn = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mn'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i({}, s.AbstractMmlTokenNode.defaults)),
              e
            )
          })(s.AbstractMmlTokenNode)
        e.MmlMn = a
      },
      2756: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMo = void 0)
        var l = r(9007),
          c = r(4082),
          u = r(505),
          p = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e._texClass = null), (e.lspace = 5 / 18), (e.rspace = 5 / 18), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'texClass', {
                get: function () {
                  if (null === this._texClass) {
                    var t = this.getText(),
                      e = s(this.handleExplicitForm(this.getForms()), 3),
                      r = e[0],
                      n = e[1],
                      o = e[2],
                      i = this.constructor.OPTABLE,
                      a = i[r][t] || i[n][t] || i[o][t]
                    return a ? a[2] : l.TEXCLASS.REL
                  }
                  return this._texClass
                },
                set: function (t) {
                  this._texClass = t
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mo'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isEmbellished', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'hasNewLine', {
                get: function () {
                  return 'newline' === this.attributes.get('linebreak')
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.coreParent = function () {
                for (var t = this, e = this, r = this.factory.getNodeClass('math'); e && e.isEmbellished && e.coreMO() === this && !(e instanceof r); ) (t = e), (e = e.parent)
                return t
              }),
              (e.prototype.coreText = function (t) {
                if (!t) return ''
                if (t.isEmbellished) return t.coreMO().getText()
                for (; (((t.isKind('mrow') || (t.isKind('TeXAtom') && t.texClass !== l.TEXCLASS.VCENTER) || 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() : ''
              }),
              (e.prototype.hasSpacingAttributes = function () {
                return this.attributes.isSet('lspace') || this.attributes.isSet('rspace')
              }),
              Object.defineProperty(e.prototype, 'isAccent', {
                get: function () {
                  var t = !1,
                    e = this.coreParent().parent
                  if (e) {
                    var r = 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 (r) t = void 0 !== e.attributes.getExplicit(r) ? t : this.attributes.get('accent')
                  }
                  return t
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                var e = this.attributes.getList('form', 'fence'),
                  r = e.form,
                  n = e.fence
                return void 0 === this.getProperty('texClass') && (this.attributes.isSet('lspace') || this.attributes.isSet('rspace'))
                  ? null
                  : (n && this.texClass === l.TEXCLASS.REL && ('prefix' === r && (this.texClass = l.TEXCLASS.OPEN), 'postfix' === r && (this.texClass = l.TEXCLASS.CLOSE)), this.adjustTeXclass(t))
              }),
              (e.prototype.adjustTeXclass = function (t) {
                var e = this.texClass,
                  r = this.prevClass
                if (e === l.TEXCLASS.NONE) return t
                if (
                  (t
                    ? (!t.getProperty('autoOP') || (e !== l.TEXCLASS.BIN && e !== l.TEXCLASS.REL) || (r = t.texClass = l.TEXCLASS.ORD), (r = this.prevClass = t.texClass || l.TEXCLASS.ORD), (this.prevLevel = this.attributes.getInherited('scriptlevel')))
                    : (r = this.prevClass = l.TEXCLASS.NONE),
                  e !== l.TEXCLASS.BIN || (r !== l.TEXCLASS.NONE && r !== l.TEXCLASS.BIN && r !== l.TEXCLASS.OP && r !== l.TEXCLASS.REL && r !== l.TEXCLASS.OPEN && r !== l.TEXCLASS.PUNCT))
                )
                  if (r !== l.TEXCLASS.BIN || (e !== l.TEXCLASS.REL && e !== l.TEXCLASS.CLOSE && e !== l.TEXCLASS.PUNCT)) {
                    if (e === l.TEXCLASS.BIN) {
                      for (var n = this, o = this.parent; o && o.parent && o.isEmbellished && (1 === o.childNodes.length || (!o.isKind('mrow') && o.core() === n)); ) (n = o), (o = o.parent)
                      o.childNodes[o.childNodes.length - 1] === n && (this.texClass = l.TEXCLASS.ORD)
                    }
                  } else t.texClass = this.prevClass = l.TEXCLASS.ORD
                else this.texClass = l.TEXCLASS.ORD
                return this
              }),
              (e.prototype.setInheritedAttributes = function (e, r, n, o) {
                void 0 === e && (e = {}), void 0 === r && (r = !1), void 0 === n && (n = 0), void 0 === o && (o = !1), t.prototype.setInheritedAttributes.call(this, e, r, n, o)
                var i = this.getText()
                this.checkOperatorTable(i), this.checkPseudoScripts(i), this.checkPrimes(i), this.checkMathAccent(i)
              }),
              (e.prototype.checkOperatorTable = function (t) {
                var e,
                  r,
                  n = s(this.handleExplicitForm(this.getForms()), 3),
                  o = n[0],
                  i = n[1],
                  l = n[2]
                this.attributes.setInherited('form', o)
                var u = this.constructor.OPTABLE,
                  p = u[o][t] || u[i][t] || u[l][t]
                if (p) {
                  void 0 === this.getProperty('texClass') && (this.texClass = p[2])
                  try {
                    for (var h = a(Object.keys(p[3] || {})), f = h.next(); !f.done; f = h.next()) {
                      var d = f.value
                      this.attributes.setInherited(d, p[3][d])
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      f && !f.done && (r = h.return) && r.call(h)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                  ;(this.lspace = (p[0] + 1) / 18), (this.rspace = (p[1] + 1) / 18)
                } else {
                  var m = (0, c.getRange)(t)
                  if (m) {
                    void 0 === this.getProperty('texClass') && (this.texClass = m[2])
                    var y = this.constructor.MMLSPACING[m[2]]
                    ;(this.lspace = (y[0] + 1) / 18), (this.rspace = (y[1] + 1) / 18)
                  }
                }
              }),
              (e.prototype.getForms = function () {
                for (var t = this, e = this.parent, r = this.Parent; r && r.isEmbellished; ) (t = e), (e = r.parent), (r = r.Parent)
                if (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']
              }),
              (e.prototype.handleExplicitForm = function (t) {
                if (this.attributes.isSet('form')) {
                  var e = this.attributes.get('form')
                  t = [e].concat(
                    t.filter(function (t) {
                      return t !== e
                    })
                  )
                }
                return t
              }),
              (e.prototype.checkPseudoScripts = function (t) {
                var e = this.constructor.pseudoScripts
                if (t.match(e)) {
                  var r = this.coreParent().Parent,
                    n = !r || !(r.isKind('msubsup') && !r.isKind('msub'))
                  this.setProperty('pseudoscript', n), n && (this.attributes.setInherited('lspace', 0), this.attributes.setInherited('rspace', 0))
                }
              }),
              (e.prototype.checkPrimes = function (t) {
                var e = this.constructor.primes
                if (t.match(e)) {
                  var r = this.constructor.remapPrimes,
                    n = (0, u.unicodeString)(
                      (0, u.unicodeChars)(t).map(function (t) {
                        return r[t]
                      })
                    )
                  this.setProperty('primes', n)
                }
              }),
              (e.prototype.checkMathAccent = function (t) {
                var e = this.Parent
                if (void 0 === this.getProperty('mathaccent') && e && e.isKind('munderover')) {
                  var r = e.childNodes[0]
                  if (!r.isEmbellished || r.coreMO() !== this) {
                    var n = this.constructor.mathaccents
                    t.match(n) && this.setProperty('mathaccent', !0)
                  }
                }
              }),
              (e.defaults = i(i({}, l.AbstractMmlTokenNode.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: '1ex',
                linebreakstyle: 'before',
                indentalign: 'auto',
                indentshift: '0',
                indenttarget: '',
                indentalignfirst: 'indentalign',
                indentshiftfirst: 'indentshift',
                indentalignlast: 'indentalign',
                indentshiftlast: 'indentshift'
              })),
              (e.MMLSPACING = c.MMLSPACING),
              (e.OPTABLE = c.OPTABLE),
              (e.pseudoScripts = new RegExp(['^["\'*`', '\xaa', '\xb0', '\xb2-\xb4', '\xb9', '\xba', '\u2018-\u201f', '\u2032-\u2037\u2057', '\u2070\u2071', '\u2074-\u207f', '\u2080-\u208e', ']+$'].join(''))),
              (e.primes = new RegExp(['^["\'`', '\u2018-\u201f', ']+$'].join(''))),
              (e.remapPrimes = { 34: 8243, 39: 8242, 96: 8245, 8216: 8245, 8217: 8242, 8218: 8242, 8219: 8245, 8220: 8246, 8221: 8243, 8222: 8243, 8223: 8246 }),
              (e.mathaccents = new RegExp(
                ['^[', '\xb4\u0301\u02ca', '`\u0300\u02cb', '\xa8\u0308', '~\u0303\u02dc', '\xaf\u0304\u02c9', '\u02d8\u0306', '\u02c7\u030c', '^\u0302\u02c6', '\u2192\u20d7', '\u02d9\u0307', '\u02da\u030a', '\u20db', '\u20dc', ']$'].join('')
              )),
              e
            )
          })(l.AbstractMmlTokenNode)
        e.MmlMo = p
      },
      7238: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMpadded = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mpadded'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i(i({}, s.AbstractMmlLayoutNode.defaults), { width: '', height: '', depth: '', lspace: 0, voffset: 0 })),
              e
            )
          })(s.AbstractMmlLayoutNode)
        e.MmlMpadded = a
      },
      5741: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMphantom = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mphantom'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i({}, s.AbstractMmlLayoutNode.defaults)),
              e
            )
          })(s.AbstractMmlLayoutNode)
        e.MmlMphantom = a
      },
      6145: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMroot = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mroot'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 2
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                return this.getPrevClass(t), this.childNodes[0].setTeXclass(null), this.childNodes[1].setTeXclass(null), this
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                this.childNodes[0].setInheritedAttributes(t, e, r, !0), this.childNodes[1].setInheritedAttributes(t, !1, r + 2, n)
              }),
              (e.defaults = i({}, s.AbstractMmlNode.defaults)),
              e
            )
          })(s.AbstractMmlNode)
        e.MmlMroot = a
      },
      9878: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlInferredMrow = e.MmlMrow = void 0)
        var a = r(9007),
          l = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e._core = null), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mrow'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isSpacelike', {
                get: function () {
                  var t, e
                  try {
                    for (var r = s(this.childNodes), n = r.next(); !n.done; n = r.next()) {
                      if (!n.value.isSpacelike) return !1
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      n && !n.done && (e = r.return) && e.call(r)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isEmbellished', {
                get: function () {
                  var t,
                    e,
                    r = !1,
                    n = 0
                  try {
                    for (var o = s(this.childNodes), i = o.next(); !i.done; i = o.next()) {
                      var a = i.value
                      if (a)
                        if (a.isEmbellished) {
                          if (r) return !1
                          ;(r = !0), (this._core = n)
                        } else if (!a.isSpacelike) return !1
                      n++
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      i && !i.done && (e = o.return) && e.call(o)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  return r
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.core = function () {
                return this.isEmbellished && null != this._core ? this.childNodes[this._core] : this
              }),
              (e.prototype.coreMO = function () {
                return this.isEmbellished && null != this._core ? this.childNodes[this._core].coreMO() : this
              }),
              (e.prototype.nonSpaceLength = function () {
                var t,
                  e,
                  r = 0
                try {
                  for (var n = s(this.childNodes), o = n.next(); !o.done; o = n.next()) {
                    var i = o.value
                    i && !i.isSpacelike && r++
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return r
              }),
              (e.prototype.firstNonSpace = function () {
                var t, e
                try {
                  for (var r = s(this.childNodes), n = r.next(); !n.done; n = r.next()) {
                    var o = n.value
                    if (o && !o.isSpacelike) return o
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    n && !n.done && (e = r.return) && e.call(r)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return null
              }),
              (e.prototype.lastNonSpace = function () {
                for (var t = this.childNodes.length; --t >= 0; ) {
                  var e = this.childNodes[t]
                  if (e && !e.isSpacelike) return e
                }
                return null
              }),
              (e.prototype.setTeXclass = function (t) {
                var e, r, n, o
                if (null != this.getProperty('open') || null != this.getProperty('close')) {
                  this.getPrevClass(t), (t = null)
                  try {
                    for (var i = s(this.childNodes), l = i.next(); !l.done; l = i.next()) {
                      t = l.value.setTeXclass(t)
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      l && !l.done && (r = i.return) && r.call(i)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                  null == this.texClass && (this.texClass = a.TEXCLASS.INNER)
                } else {
                  try {
                    for (var c = s(this.childNodes), u = c.next(); !u.done; u = c.next()) {
                      t = u.value.setTeXclass(t)
                    }
                  } catch (t) {
                    n = { error: t }
                  } finally {
                    try {
                      u && !u.done && (o = c.return) && o.call(c)
                    } finally {
                      if (n) throw n.error
                    }
                  }
                  this.childNodes[0] && this.updateTeXclass(this.childNodes[0])
                }
                return t
              }),
              (e.defaults = i({}, a.AbstractMmlNode.defaults)),
              e
            )
          })(a.AbstractMmlNode)
        e.MmlMrow = l
        var c = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'inferredMrow'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isInferred', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'notParent', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.toString = function () {
              return '[' + this.childNodes.join(',') + ']'
            }),
            (e.defaults = l.defaults),
            e
          )
        })(l)
        e.MmlInferredMrow = c
      },
      7265: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMs = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'ms'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i(i({}, s.AbstractMmlTokenNode.defaults), { lquote: '"', rquote: '"' })),
              e
            )
          })(s.AbstractMmlTokenNode)
        e.MmlMs = a
      },
      6030: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMspace = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.NONE), e
            }
            return (
              o(e, t),
              (e.prototype.setTeXclass = function (t) {
                return t
              }),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mspace'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isSpacelike', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'hasNewline', {
                get: function () {
                  var t = this.attributes
                  return null == t.getExplicit('width') && null == t.getExplicit('height') && null == t.getExplicit('depth') && 'newline' === t.get('linebreak')
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i(i({}, s.AbstractMmlTokenNode.defaults), { width: '0em', height: '0ex', depth: '0ex', linebreak: 'auto' })),
              e
            )
          })(s.AbstractMmlTokenNode)
        e.MmlMspace = a
      },
      7131: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMsqrt = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'msqrt'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return -1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setTeXclass = function (t) {
                return this.getPrevClass(t), this.childNodes[0].setTeXclass(null), this
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                this.childNodes[0].setInheritedAttributes(t, e, r, !0)
              }),
              (e.defaults = i({}, s.AbstractMmlNode.defaults)),
              e
            )
          })(s.AbstractMmlNode)
        e.MmlMsqrt = a
      },
      1314: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMstyle = void 0)
        var s = r(9007),
          a = r(91),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mstyle'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'notParent', {
                get: function () {
                  return this.childNodes[0] && 1 === this.childNodes[0].childNodes.length
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                var o = this.attributes.getExplicit('scriptlevel')
                null != o && ((o = o.toString()).match(/^\s*[-+]/) ? (r += parseInt(o)) : (r = parseInt(o)), (n = !1))
                var i = this.attributes.getExplicit('displaystyle')
                null != i && ((e = !0 === i), (n = !1))
                var s = this.attributes.getExplicit('data-cramped')
                null != s && (n = s), (t = this.addInheritedAttributes(t, this.attributes.getAllAttributes())), this.childNodes[0].setInheritedAttributes(t, e, r, n)
              }),
              (e.defaults = i(i({}, s.AbstractMmlLayoutNode.defaults), {
                scriptlevel: a.INHERIT,
                displaystyle: a.INHERIT,
                scriptsizemultiplier: 1 / Math.sqrt(2),
                scriptminsize: '8px',
                mathbackground: a.INHERIT,
                mathcolor: a.INHERIT,
                dir: a.INHERIT,
                infixlinebreakstyle: 'before'
              })),
              e
            )
          })(s.AbstractMmlLayoutNode)
        e.MmlMstyle = l
      },
      4461: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMsup = e.MmlMsub = e.MmlMsubsup = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'msubsup'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 3
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'base', {
                get: function () {
                  return 0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'sub', {
                get: function () {
                  return 1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'sup', {
                get: function () {
                  return 2
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                var o = this.childNodes
                o[0].setInheritedAttributes(t, e, r, n), o[1].setInheritedAttributes(t, !1, r + 1, n || 1 === this.sub), o[2] && o[2].setInheritedAttributes(t, !1, r + 1, n || 2 === this.sub)
              }),
              (e.defaults = i(i({}, s.AbstractMmlBaseNode.defaults), { subscriptshift: '', superscriptshift: '' })),
              e
            )
          })(s.AbstractMmlBaseNode)
        e.MmlMsubsup = a
        var l = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'msub'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 2
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.defaults = i({}, a.defaults)),
            e
          )
        })(a)
        e.MmlMsub = l
        var c = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'msup'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 2
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'sup', {
              get: function () {
                return 1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'sub', {
              get: function () {
                return 2
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.defaults = i({}, a.defaults)),
            e
          )
        })(a)
        e.MmlMsup = c
      },
      1349: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMtable = void 0)
        var a = r(9007),
          l = r(505),
          c = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.properties = { useHeight: !0 }), (e.texclass = a.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mtable'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setInheritedAttributes = function (e, r, n, o) {
                var i, l
                try {
                  for (var c = s(a.indentAttributes), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value
                    e[p] && this.attributes.setInherited(p, e[p][1]), void 0 !== this.attributes.getExplicit(p) && delete this.attributes.getAllAttributes()[p]
                  }
                } catch (t) {
                  i = { error: t }
                } finally {
                  try {
                    u && !u.done && (l = c.return) && l.call(c)
                  } finally {
                    if (i) throw i.error
                  }
                }
                t.prototype.setInheritedAttributes.call(this, e, r, n, o)
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                var o, i, a, c
                try {
                  for (var u = s(this.childNodes), p = u.next(); !p.done; p = u.next()) {
                    ;(y = p.value).isKind('mtr') || this.replaceChild(this.factory.create('mtr'), y).appendChild(y)
                  }
                } catch (t) {
                  o = { error: t }
                } finally {
                  try {
                    p && !p.done && (i = u.return) && i.call(u)
                  } finally {
                    if (o) throw o.error
                  }
                }
                ;(r = this.getProperty('scriptlevel') || r),
                  (e = !(!this.attributes.getExplicit('displaystyle') && !this.attributes.getDefault('displaystyle'))),
                  (t = this.addInheritedAttributes(t, { columnalign: this.attributes.get('columnalign'), rowalign: 'center' }))
                var h = this.attributes.getExplicit('data-cramped'),
                  f = (0, l.split)(this.attributes.get('rowalign'))
                try {
                  for (var d = s(this.childNodes), m = d.next(); !m.done; m = d.next()) {
                    var y = m.value
                    ;(t.rowalign[1] = f.shift() || t.rowalign[1]), y.setInheritedAttributes(t, e, r, !!h)
                  }
                } catch (t) {
                  a = { error: t }
                } finally {
                  try {
                    m && !m.done && (c = d.return) && c.call(d)
                  } finally {
                    if (a) throw a.error
                  }
                }
              }),
              (e.prototype.verifyChildren = function (e) {
                for (var r = null, n = this.factory, o = 0; o < this.childNodes.length; o++) {
                  var i = this.childNodes[o]
                  if (i.isKind('mtr')) r = null
                  else {
                    var s = i.isKind('mtd')
                    if ((r ? (this.removeChild(i), o--) : (r = this.replaceChild(n.create('mtr'), i)), r.appendChild(s ? i : n.create('mtd', {}, [i])), !e.fixMtables)) {
                      i.parent.removeChild(i), (i.parent = this), s && r.appendChild(n.create('mtd'))
                      var a = i.mError('Children of ' + this.kind + ' must be mtr or mlabeledtr', e, s)
                      r.childNodes[r.childNodes.length - 1].appendChild(a)
                    }
                  }
                }
                t.prototype.verifyChildren.call(this, e)
              }),
              (e.prototype.setTeXclass = function (t) {
                var e, r
                this.getPrevClass(t)
                try {
                  for (var n = s(this.childNodes), o = n.next(); !o.done; o = n.next()) {
                    o.value.setTeXclass(null)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return this
              }),
              (e.defaults = i(i({}, a.AbstractMmlNode.defaults), {
                align: 'axis',
                rowalign: 'baseline',
                columnalign: 'center',
                groupalign: '{left}',
                alignmentscope: !0,
                columnwidth: 'auto',
                width: 'auto',
                rowspacing: '1ex',
                columnspacing: '.8em',
                rowlines: 'none',
                columnlines: 'none',
                frame: 'none',
                framespacing: '0.4em 0.5ex',
                equalrows: !1,
                equalcolumns: !1,
                displaystyle: !1,
                side: 'right',
                minlabelspacing: '0.8em'
              })),
              e
            )
          })(a.AbstractMmlNode)
        e.MmlMtable = c
      },
      4359: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMtd = void 0)
        var s = r(9007),
          a = r(91),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mtd'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return -1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.verifyChildren = function (e) {
                !this.parent || this.parent.isKind('mtr') ? t.prototype.verifyChildren.call(this, e) : this.mError(this.kind + ' can only be a child of an mtr or mlabeledtr', e, !0)
              }),
              (e.prototype.setTeXclass = function (t) {
                return this.getPrevClass(t), this.childNodes[0].setTeXclass(null), this
              }),
              (e.defaults = i(i({}, s.AbstractMmlBaseNode.defaults), { rowspan: 1, columnspan: 1, rowalign: a.INHERIT, columnalign: a.INHERIT, groupalign: a.INHERIT })),
              e
            )
          })(s.AbstractMmlBaseNode)
        e.MmlMtd = l
      },
      4770: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMtext = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.texclass = s.TEXCLASS.ORD), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mtext'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isSpacelike', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i({}, s.AbstractMmlTokenNode.defaults)),
              e
            )
          })(s.AbstractMmlTokenNode)
        e.MmlMtext = a
      },
      5022: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMlabeledtr = e.MmlMtr = void 0)
        var a = r(9007),
          l = r(91),
          c = r(505),
          u = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'mtr'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                var o, i, a, l
                try {
                  for (var u = s(this.childNodes), p = u.next(); !p.done; p = u.next()) {
                    ;(m = p.value).isKind('mtd') || this.replaceChild(this.factory.create('mtd'), m).appendChild(m)
                  }
                } catch (t) {
                  o = { error: t }
                } finally {
                  try {
                    p && !p.done && (i = u.return) && i.call(u)
                  } finally {
                    if (o) throw o.error
                  }
                }
                var h = (0, c.split)(this.attributes.get('columnalign'))
                1 === this.arity && h.unshift(this.parent.attributes.get('side')), (t = this.addInheritedAttributes(t, { rowalign: this.attributes.get('rowalign'), columnalign: 'center' }))
                try {
                  for (var f = s(this.childNodes), d = f.next(); !d.done; d = f.next()) {
                    var m = d.value
                    ;(t.columnalign[1] = h.shift() || t.columnalign[1]), m.setInheritedAttributes(t, e, r, n)
                  }
                } catch (t) {
                  a = { error: t }
                } finally {
                  try {
                    d && !d.done && (l = f.return) && l.call(f)
                  } finally {
                    if (a) throw a.error
                  }
                }
              }),
              (e.prototype.verifyChildren = function (e) {
                var r, n
                if (!this.parent || this.parent.isKind('mtable')) {
                  try {
                    for (var o = s(this.childNodes), i = o.next(); !i.done; i = o.next()) {
                      var a = i.value
                      if (!a.isKind('mtd')) this.replaceChild(this.factory.create('mtd'), a).appendChild(a), e.fixMtables || a.mError('Children of ' + this.kind + ' must be mtd', e)
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      i && !i.done && (n = o.return) && n.call(o)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                  t.prototype.verifyChildren.call(this, e)
                } else this.mError(this.kind + ' can only be a child of an mtable', e, !0)
              }),
              (e.prototype.setTeXclass = function (t) {
                var e, r
                this.getPrevClass(t)
                try {
                  for (var n = s(this.childNodes), o = n.next(); !o.done; o = n.next()) {
                    o.value.setTeXclass(null)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return this
              }),
              (e.defaults = i(i({}, a.AbstractMmlNode.defaults), { rowalign: l.INHERIT, columnalign: l.INHERIT, groupalign: l.INHERIT })),
              e
            )
          })(a.AbstractMmlNode)
        e.MmlMtr = u
        var p = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'mlabeledtr'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 1
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(u)
        e.MmlMlabeledtr = p
      },
      5184: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlMover = e.MmlMunder = e.MmlMunderover = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'munderover'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 3
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'base', {
                get: function () {
                  return 0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'under', {
                get: function () {
                  return 1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'over', {
                get: function () {
                  return 2
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'linebreakContainer', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.setChildInheritedAttributes = function (t, e, r, n) {
                var o = this.childNodes
                o[0].setInheritedAttributes(t, e, r, n || !!o[this.over])
                var i = !(e || !o[0].coreMO().attributes.get('movablelimits')),
                  s = this.constructor.ACCENTS
                o[1].setInheritedAttributes(t, !1, this.getScriptlevel(s[1], i, r), n || 1 === this.under),
                  this.setInheritedAccent(1, s[1], e, r, n, i),
                  o[2] && (o[2].setInheritedAttributes(t, !1, this.getScriptlevel(s[2], i, r), n || 2 === this.under), this.setInheritedAccent(2, s[2], e, r, n, i))
              }),
              (e.prototype.getScriptlevel = function (t, e, r) {
                return (!e && this.attributes.get(t)) || r++, r
              }),
              (e.prototype.setInheritedAccent = function (t, e, r, n, o, i) {
                var s = this.childNodes[t]
                if (null == this.attributes.getExplicit(e) && s.isEmbellished) {
                  var a = s.coreMO().attributes.get('accent')
                  this.attributes.setInherited(e, a), a !== this.attributes.getDefault(e) && s.setInheritedAttributes({}, r, this.getScriptlevel(e, i, n), o)
                }
              }),
              (e.defaults = i(i({}, s.AbstractMmlBaseNode.defaults), { accent: !1, accentunder: !1, align: 'center' })),
              (e.ACCENTS = ['', 'accentunder', 'accent']),
              e
            )
          })(s.AbstractMmlBaseNode)
        e.MmlMunderover = a
        var l = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'munder'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 2
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.defaults = i({}, a.defaults)),
            e
          )
        })(a)
        e.MmlMunder = l
        var c = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'mover'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'arity', {
              get: function () {
                return 2
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'over', {
              get: function () {
                return 1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'under', {
              get: function () {
                return 2
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.defaults = i({}, a.defaults)),
            (e.ACCENTS = ['', 'accent', 'accentunder']),
            e
          )
        })(a)
        e.MmlMover = c
      },
      9102: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlAnnotation = e.MmlAnnotationXML = e.MmlSemantics = void 0)
        var s = r(9007),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'semantics'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'arity', {
                get: function () {
                  return 1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'notParent', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.defaults = i(i({}, s.AbstractMmlBaseNode.defaults), { definitionUrl: null, encoding: null })),
              e
            )
          })(s.AbstractMmlBaseNode)
        e.MmlSemantics = a
        var l = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'annotation-xml'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.setChildInheritedAttributes = function () {}),
            (e.defaults = i(i({}, s.AbstractMmlNode.defaults), { definitionUrl: null, encoding: null, cd: 'mathmlkeys', name: '', src: null })),
            e
          )
        })(s.AbstractMmlNode)
        e.MmlAnnotationXML = l
        var c = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.properties = { isChars: !0 }), e
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'annotation'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.defaults = i({}, l.defaults)),
            e
          )
        })(l)
        e.MmlAnnotation = c
      },
      6325: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlVisitor = void 0)
        var i = r(3909),
          s = (function (t) {
            function e(e) {
              return void 0 === e && (e = null), e || (e = new i.MmlFactory()), t.call(this, e) || this
            }
            return (
              o(e, t),
              (e.prototype.visitTextNode = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
              }),
              (e.prototype.visitXMLNode = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
              }),
              e
            )
          })(r(8823).AbstractVisitor)
        e.MmlVisitor = s
      },
      4082: function (t, e, r) {
        var n =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.OPTABLE = e.MMLSPACING = e.getRange = e.RANGES = e.MO = e.OPDEF = void 0)
        var o = r(9007)
        function i(t, e, r, n) {
          return void 0 === r && (r = o.TEXCLASS.BIN), void 0 === n && (n = null), [t, e, r, n]
        }
        ;(e.OPDEF = i),
          (e.MO = {
            ORD: i(0, 0, o.TEXCLASS.ORD),
            ORD11: i(1, 1, o.TEXCLASS.ORD),
            ORD21: i(2, 1, o.TEXCLASS.ORD),
            ORD02: i(0, 2, o.TEXCLASS.ORD),
            ORD55: i(5, 5, o.TEXCLASS.ORD),
            NONE: i(0, 0, o.TEXCLASS.NONE),
            OP: i(1, 2, o.TEXCLASS.OP, { largeop: !0, movablelimits: !0, symmetric: !0 }),
            OPFIXED: i(1, 2, o.TEXCLASS.OP, { largeop: !0, movablelimits: !0 }),
            INTEGRAL: i(0, 1, o.TEXCLASS.OP, { largeop: !0, symmetric: !0 }),
            INTEGRAL2: i(1, 2, o.TEXCLASS.OP, { largeop: !0, symmetric: !0 }),
            BIN3: i(3, 3, o.TEXCLASS.BIN),
            BIN4: i(4, 4, o.TEXCLASS.BIN),
            BIN01: i(0, 1, o.TEXCLASS.BIN),
            BIN5: i(5, 5, o.TEXCLASS.BIN),
            TALLBIN: i(4, 4, o.TEXCLASS.BIN, { stretchy: !0 }),
            BINOP: i(4, 4, o.TEXCLASS.BIN, { largeop: !0, movablelimits: !0 }),
            REL: i(5, 5, o.TEXCLASS.REL),
            REL1: i(1, 1, o.TEXCLASS.REL, { stretchy: !0 }),
            REL4: i(4, 4, o.TEXCLASS.REL),
            RELSTRETCH: i(5, 5, o.TEXCLASS.REL, { stretchy: !0 }),
            RELACCENT: i(5, 5, o.TEXCLASS.REL, { accent: !0 }),
            WIDEREL: i(5, 5, o.TEXCLASS.REL, { accent: !0, stretchy: !0 }),
            OPEN: i(0, 0, o.TEXCLASS.OPEN, { fence: !0, stretchy: !0, symmetric: !0 }),
            CLOSE: i(0, 0, o.TEXCLASS.CLOSE, { fence: !0, stretchy: !0, symmetric: !0 }),
            INNER: i(0, 0, o.TEXCLASS.INNER),
            PUNCT: i(0, 3, o.TEXCLASS.PUNCT),
            ACCENT: i(0, 0, o.TEXCLASS.ORD, { accent: !0 }),
            WIDEACCENT: i(0, 0, o.TEXCLASS.ORD, { accent: !0, stretchy: !0 })
          }),
          (e.RANGES = [
            [32, 127, o.TEXCLASS.REL, 'mo'],
            [160, 191, o.TEXCLASS.ORD, 'mo'],
            [192, 591, o.TEXCLASS.ORD, 'mi'],
            [688, 879, o.TEXCLASS.ORD, 'mo'],
            [880, 6688, o.TEXCLASS.ORD, 'mi'],
            [6832, 6911, o.TEXCLASS.ORD, 'mo'],
            [6912, 7615, o.TEXCLASS.ORD, 'mi'],
            [7616, 7679, o.TEXCLASS.ORD, 'mo'],
            [7680, 8191, o.TEXCLASS.ORD, 'mi'],
            [8192, 8303, o.TEXCLASS.ORD, 'mo'],
            [8304, 8351, o.TEXCLASS.ORD, 'mo'],
            [8448, 8527, o.TEXCLASS.ORD, 'mi'],
            [8528, 8591, o.TEXCLASS.ORD, 'mn'],
            [8592, 8703, o.TEXCLASS.REL, 'mo'],
            [8704, 8959, o.TEXCLASS.BIN, 'mo'],
            [8960, 9215, o.TEXCLASS.ORD, 'mo'],
            [9312, 9471, o.TEXCLASS.ORD, 'mn'],
            [9472, 10223, o.TEXCLASS.ORD, 'mo'],
            [10224, 10239, o.TEXCLASS.REL, 'mo'],
            [10240, 10495, o.TEXCLASS.ORD, 'mtext'],
            [10496, 10623, o.TEXCLASS.REL, 'mo'],
            [10624, 10751, o.TEXCLASS.ORD, 'mo'],
            [10752, 11007, o.TEXCLASS.BIN, 'mo'],
            [11008, 11055, o.TEXCLASS.ORD, 'mo'],
            [11056, 11087, o.TEXCLASS.REL, 'mo'],
            [11088, 11263, o.TEXCLASS.ORD, 'mo'],
            [11264, 11744, o.TEXCLASS.ORD, 'mi'],
            [11776, 11903, o.TEXCLASS.ORD, 'mo'],
            [11904, 12255, o.TEXCLASS.ORD, 'mi', 'normal'],
            [12272, 12351, o.TEXCLASS.ORD, 'mo'],
            [12352, 42143, o.TEXCLASS.ORD, 'mi', 'normal'],
            [42192, 43055, o.TEXCLASS.ORD, 'mi'],
            [43056, 43071, o.TEXCLASS.ORD, 'mn'],
            [43072, 55295, o.TEXCLASS.ORD, 'mi'],
            [63744, 64255, o.TEXCLASS.ORD, 'mi', 'normal'],
            [64256, 65023, o.TEXCLASS.ORD, 'mi'],
            [65024, 65135, o.TEXCLASS.ORD, 'mo'],
            [65136, 65791, o.TEXCLASS.ORD, 'mi'],
            [65792, 65935, o.TEXCLASS.ORD, 'mn'],
            [65936, 74751, o.TEXCLASS.ORD, 'mi', 'normal'],
            [74752, 74879, o.TEXCLASS.ORD, 'mn'],
            [74880, 113823, o.TEXCLASS.ORD, 'mi', 'normal'],
            [113824, 119391, o.TEXCLASS.ORD, 'mo'],
            [119648, 119679, o.TEXCLASS.ORD, 'mn'],
            [119808, 120781, o.TEXCLASS.ORD, 'mi'],
            [120782, 120831, o.TEXCLASS.ORD, 'mn'],
            [122624, 129023, o.TEXCLASS.ORD, 'mo'],
            [129024, 129279, o.TEXCLASS.REL, 'mo'],
            [129280, 129535, o.TEXCLASS.ORD, 'mo'],
            [131072, 195103, o.TEXCLASS.ORD, 'mi', 'normnal']
          ]),
          (e.getRange = function (t) {
            var r,
              o,
              i = t.codePointAt(0)
            try {
              for (var s = n(e.RANGES), a = s.next(); !a.done; a = s.next()) {
                var l = a.value
                if (i <= l[1]) {
                  if (i >= l[0]) return l
                  break
                }
              }
            } catch (t) {
              r = { error: t }
            } finally {
              try {
                a && !a.done && (o = s.return) && o.call(s)
              } finally {
                if (r) throw r.error
              }
            }
            return null
          }),
          (e.MMLSPACING = [
            [0, 0],
            [1, 2],
            [3, 3],
            [4, 4],
            [0, 0],
            [0, 0],
            [0, 3]
          ]),
          (e.OPTABLE = {
            prefix: {
              '(': e.MO.OPEN,
              '+': e.MO.BIN01,
              '-': e.MO.BIN01,
              '[': e.MO.OPEN,
              '{': e.MO.OPEN,
              '|': e.MO.OPEN,
              '||': [0, 0, o.TEXCLASS.BIN, { fence: !0, stretchy: !0, symmetric: !0 }],
              '|||': [0, 0, o.TEXCLASS.ORD, { fence: !0, stretchy: !0, symmetric: !0 }],
              '\xac': e.MO.ORD21,
              '\xb1': e.MO.BIN01,
              '\u2016': [0, 0, o.TEXCLASS.ORD, { fence: !0, stretchy: !0 }],
              '\u2018': [0, 0, o.TEXCLASS.OPEN, { fence: !0 }],
              '\u201c': [0, 0, o.TEXCLASS.OPEN, { fence: !0 }],
              '\u2145': e.MO.ORD21,
              '\u2146': i(2, 0, o.TEXCLASS.ORD),
              '\u2200': e.MO.ORD21,
              '\u2202': e.MO.ORD21,
              '\u2203': e.MO.ORD21,
              '\u2204': e.MO.ORD21,
              '\u2207': e.MO.ORD21,
              '\u220f': e.MO.OP,
              '\u2210': e.MO.OP,
              '\u2211': e.MO.OP,
              '\u2212': e.MO.BIN01,
              '\u2213': e.MO.BIN01,
              '\u221a': [1, 1, o.TEXCLASS.ORD, { stretchy: !0 }],
              '\u221b': e.MO.ORD11,
              '\u221c': e.MO.ORD11,
              '\u2220': e.MO.ORD,
              '\u2221': e.MO.ORD,
              '\u2222': e.MO.ORD,
              '\u222b': e.MO.INTEGRAL,
              '\u222c': e.MO.INTEGRAL,
              '\u222d': e.MO.INTEGRAL,
              '\u222e': e.MO.INTEGRAL,
              '\u222f': e.MO.INTEGRAL,
              '\u2230': e.MO.INTEGRAL,
              '\u2231': e.MO.INTEGRAL,
              '\u2232': e.MO.INTEGRAL,
              '\u2233': e.MO.INTEGRAL,
              '\u22c0': e.MO.OP,
              '\u22c1': e.MO.OP,
              '\u22c2': e.MO.OP,
              '\u22c3': e.MO.OP,
              '\u2308': e.MO.OPEN,
              '\u230a': e.MO.OPEN,
              '\u2329': e.MO.OPEN,
              '\u2772': e.MO.OPEN,
              '\u27e6': e.MO.OPEN,
              '\u27e8': e.MO.OPEN,
              '\u27ea': e.MO.OPEN,
              '\u27ec': e.MO.OPEN,
              '\u27ee': e.MO.OPEN,
              '\u2980': [0, 0, o.TEXCLASS.ORD, { fence: !0, stretchy: !0 }],
              '\u2983': e.MO.OPEN,
              '\u2985': e.MO.OPEN,
              '\u2987': e.MO.OPEN,
              '\u2989': e.MO.OPEN,
              '\u298b': e.MO.OPEN,
              '\u298d': e.MO.OPEN,
              '\u298f': e.MO.OPEN,
              '\u2991': e.MO.OPEN,
              '\u2993': e.MO.OPEN,
              '\u2995': e.MO.OPEN,
              '\u2997': e.MO.OPEN,
              '\u29fc': e.MO.OPEN,
              '\u2a00': e.MO.OP,
              '\u2a01': e.MO.OP,
              '\u2a02': e.MO.OP,
              '\u2a03': e.MO.OP,
              '\u2a04': e.MO.OP,
              '\u2a05': e.MO.OP,
              '\u2a06': e.MO.OP,
              '\u2a07': e.MO.OP,
              '\u2a08': e.MO.OP,
              '\u2a09': e.MO.OP,
              '\u2a0a': e.MO.OP,
              '\u2a0b': e.MO.INTEGRAL2,
              '\u2a0c': e.MO.INTEGRAL,
              '\u2a0d': e.MO.INTEGRAL2,
              '\u2a0e': e.MO.INTEGRAL2,
              '\u2a0f': e.MO.INTEGRAL2,
              '\u2a10': e.MO.OP,
              '\u2a11': e.MO.OP,
              '\u2a12': e.MO.OP,
              '\u2a13': e.MO.OP,
              '\u2a14': e.MO.OP,
              '\u2a15': e.MO.INTEGRAL2,
              '\u2a16': e.MO.INTEGRAL2,
              '\u2a17': e.MO.INTEGRAL2,
              '\u2a18': e.MO.INTEGRAL2,
              '\u2a19': e.MO.INTEGRAL2,
              '\u2a1a': e.MO.INTEGRAL2,
              '\u2a1b': e.MO.INTEGRAL2,
              '\u2a1c': e.MO.INTEGRAL2,
              '\u2afc': e.MO.OP,
              '\u2aff': e.MO.OP
            },
            postfix: {
              '!!': i(1, 0),
              '!': [1, 0, o.TEXCLASS.CLOSE, null],
              '"': e.MO.ACCENT,
              '&': e.MO.ORD,
              ')': e.MO.CLOSE,
              '++': i(0, 0),
              '--': i(0, 0),
              '..': i(0, 0),
              '...': e.MO.ORD,
              "'": e.MO.ACCENT,
              ']': e.MO.CLOSE,
              '^': e.MO.WIDEACCENT,
              _: e.MO.WIDEACCENT,
              '`': e.MO.ACCENT,
              '|': e.MO.CLOSE,
              '}': e.MO.CLOSE,
              '~': e.MO.WIDEACCENT,
              '||': [0, 0, o.TEXCLASS.BIN, { fence: !0, stretchy: !0, symmetric: !0 }],
              '|||': [0, 0, o.TEXCLASS.ORD, { fence: !0, stretchy: !0, symmetric: !0 }],
              '\xa8': e.MO.ACCENT,
              '\xaa': e.MO.ACCENT,
              '\xaf': e.MO.WIDEACCENT,
              '\xb0': e.MO.ORD,
              '\xb2': e.MO.ACCENT,
              '\xb3': e.MO.ACCENT,
              '\xb4': e.MO.ACCENT,
              '\xb8': e.MO.ACCENT,
              '\xb9': e.MO.ACCENT,
              '\xba': e.MO.ACCENT,
              '\u02c6': e.MO.WIDEACCENT,
              '\u02c7': e.MO.WIDEACCENT,
              '\u02c9': e.MO.WIDEACCENT,
              '\u02ca': e.MO.ACCENT,
              '\u02cb': e.MO.ACCENT,
              '\u02cd': e.MO.WIDEACCENT,
              '\u02d8': e.MO.ACCENT,
              '\u02d9': e.MO.ACCENT,
              '\u02da': e.MO.ACCENT,
              '\u02dc': e.MO.WIDEACCENT,
              '\u02dd': e.MO.ACCENT,
              '\u02f7': e.MO.WIDEACCENT,
              '\u0302': e.MO.WIDEACCENT,
              '\u0311': e.MO.ACCENT,
              '\u03f6': e.MO.REL,
              '\u2016': [0, 0, o.TEXCLASS.ORD, { fence: !0, stretchy: !0 }],
              '\u2019': [0, 0, o.TEXCLASS.CLOSE, { fence: !0 }],
              '\u201a': e.MO.ACCENT,
              '\u201b': e.MO.ACCENT,
              '\u201d': [0, 0, o.TEXCLASS.CLOSE, { fence: !0 }],
              '\u201e': e.MO.ACCENT,
              '\u201f': e.MO.ACCENT,
              '\u2032': e.MO.ORD,
              '\u2033': e.MO.ACCENT,
              '\u2034': e.MO.ACCENT,
              '\u2035': e.MO.ACCENT,
              '\u2036': e.MO.ACCENT,
              '\u2037': e.MO.ACCENT,
              '\u203e': e.MO.WIDEACCENT,
              '\u2057': e.MO.ACCENT,
              '\u20db': e.MO.ACCENT,
              '\u20dc': e.MO.ACCENT,
              '\u2309': e.MO.CLOSE,
              '\u230b': e.MO.CLOSE,
              '\u232a': e.MO.CLOSE,
              '\u23b4': e.MO.WIDEACCENT,
              '\u23b5': e.MO.WIDEACCENT,
              '\u23dc': e.MO.WIDEACCENT,
              '\u23dd': e.MO.WIDEACCENT,
              '\u23de': e.MO.WIDEACCENT,
              '\u23df': e.MO.WIDEACCENT,
              '\u23e0': e.MO.WIDEACCENT,
              '\u23e1': e.MO.WIDEACCENT,
              '\u25a0': e.MO.BIN3,
              '\u25a1': e.MO.BIN3,
              '\u25aa': e.MO.BIN3,
              '\u25ab': e.MO.BIN3,
              '\u25ad': e.MO.BIN3,
              '\u25ae': e.MO.BIN3,
              '\u25af': e.MO.BIN3,
              '\u25b0': e.MO.BIN3,
              '\u25b1': e.MO.BIN3,
              '\u25b2': e.MO.BIN4,
              '\u25b4': e.MO.BIN4,
              '\u25b6': e.MO.BIN4,
              '\u25b7': e.MO.BIN4,
              '\u25b8': e.MO.BIN4,
              '\u25bc': e.MO.BIN4,
              '\u25be': e.MO.BIN4,
              '\u25c0': e.MO.BIN4,
              '\u25c1': e.MO.BIN4,
              '\u25c2': e.MO.BIN4,
              '\u25c4': e.MO.BIN4,
              '\u25c5': e.MO.BIN4,
              '\u25c6': e.MO.BIN4,
              '\u25c7': e.MO.BIN4,
              '\u25c8': e.MO.BIN4,
              '\u25c9': e.MO.BIN4,
              '\u25cc': e.MO.BIN4,
              '\u25cd': e.MO.BIN4,
              '\u25ce': e.MO.BIN4,
              '\u25cf': e.MO.BIN4,
              '\u25d6': e.MO.BIN4,
              '\u25d7': e.MO.BIN4,
              '\u25e6': e.MO.BIN4,
              '\u266d': e.MO.ORD02,
              '\u266e': e.MO.ORD02,
              '\u266f': e.MO.ORD02,
              '\u2773': e.MO.CLOSE,
              '\u27e7': e.MO.CLOSE,
              '\u27e9': e.MO.CLOSE,
              '\u27eb': e.MO.CLOSE,
              '\u27ed': e.MO.CLOSE,
              '\u27ef': e.MO.CLOSE,
              '\u2980': [0, 0, o.TEXCLASS.ORD, { fence: !0, stretchy: !0 }],
              '\u2984': e.MO.CLOSE,
              '\u2986': e.MO.CLOSE,
              '\u2988': e.MO.CLOSE,
              '\u298a': e.MO.CLOSE,
              '\u298c': e.MO.CLOSE,
              '\u298e': e.MO.CLOSE,
              '\u2990': e.MO.CLOSE,
              '\u2992': e.MO.CLOSE,
              '\u2994': e.MO.CLOSE,
              '\u2996': e.MO.CLOSE,
              '\u2998': e.MO.CLOSE,
              '\u29fd': e.MO.CLOSE
            },
            infix: {
              '!=': e.MO.BIN4,
              '#': e.MO.ORD,
              $: e.MO.ORD,
              '%': [3, 3, o.TEXCLASS.ORD, null],
              '&&': e.MO.BIN4,
              '': e.MO.ORD,
              '*': e.MO.BIN3,
              '**': i(1, 1),
              '*=': e.MO.BIN4,
              '+': e.MO.BIN4,
              '+=': e.MO.BIN4,
              ',': [0, 3, o.TEXCLASS.PUNCT, { linebreakstyle: 'after', separator: !0 }],
              '-': e.MO.BIN4,
              '-=': e.MO.BIN4,
              '->': e.MO.BIN5,
              '.': [0, 3, o.TEXCLASS.PUNCT, { separator: !0 }],
              '/': e.MO.ORD11,
              '//': i(1, 1),
              '/=': e.MO.BIN4,
              ':': [1, 2, o.TEXCLASS.REL, null],
              ':=': e.MO.BIN4,
              ';': [0, 3, o.TEXCLASS.PUNCT, { linebreakstyle: 'after', separator: !0 }],
              '<': e.MO.REL,
              '<=': e.MO.BIN5,
              '<>': i(1, 1),
              '=': e.MO.REL,
              '==': e.MO.BIN4,
              '>': e.MO.REL,
              '>=': e.MO.BIN5,
              '?': [1, 1, o.TEXCLASS.CLOSE, null],
              '@': e.MO.ORD11,
              '\\': e.MO.ORD,
              '^': e.MO.ORD11,
              _: e.MO.ORD11,
              '|': [2, 2, o.TEXCLASS.ORD, { fence: !0, stretchy: !0, symmetric: !0 }],
              '||': [2, 2, o.TEXCLASS.BIN, { fence: !0, stretchy: !0, symmetric: !0 }],
              '|||': [2, 2, o.TEXCLASS.ORD, { fence: !0, stretchy: !0, symmetric: !0 }],
              '\xb1': e.MO.BIN4,
              '\xb7': e.MO.BIN4,
              '\xd7': e.MO.BIN4,
              '\xf7': e.MO.BIN4,
              '\u02b9': e.MO.ORD,
              '\u0300': e.MO.ACCENT,
              '\u0301': e.MO.ACCENT,
              '\u0303': e.MO.WIDEACCENT,
              '\u0304': e.MO.ACCENT,
              '\u0306': e.MO.ACCENT,
              '\u0307': e.MO.ACCENT,
              '\u0308': e.MO.ACCENT,
              '\u030c': e.MO.ACCENT,
              '\u0332': e.MO.WIDEACCENT,
              '\u0338': e.MO.REL4,
              '\u2015': [0, 0, o.TEXCLASS.ORD, { stretchy: !0 }],
              '\u2017': [0, 0, o.TEXCLASS.ORD, { stretchy: !0 }],
              '\u2020': e.MO.BIN3,
              '\u2021': e.MO.BIN3,
              '\u2022': e.MO.BIN4,
              '\u2026': e.MO.INNER,
              '\u2043': e.MO.BIN4,
              '\u2044': e.MO.TALLBIN,
              '\u2061': e.MO.NONE,
              '\u2062': e.MO.NONE,
              '\u2063': [0, 0, o.TEXCLASS.NONE, { linebreakstyle: 'after', separator: !0 }],
              '\u2064': e.MO.NONE,
              '\u20d7': e.MO.ACCENT,
              '\u2111': e.MO.ORD,
              '\u2113': e.MO.ORD,
              '\u2118': e.MO.ORD,
              '\u211c': e.MO.ORD,
              '\u2190': e.MO.WIDEREL,
              '\u2191': e.MO.RELSTRETCH,
              '\u2192': e.MO.WIDEREL,
              '\u2193': e.MO.RELSTRETCH,
              '\u2194': e.MO.WIDEREL,
              '\u2195': e.MO.RELSTRETCH,
              '\u2196': e.MO.RELSTRETCH,
              '\u2197': e.MO.RELSTRETCH,
              '\u2198': e.MO.RELSTRETCH,
              '\u2199': e.MO.RELSTRETCH,
              '\u219a': e.MO.RELACCENT,
              '\u219b': e.MO.RELACCENT,
              '\u219c': e.MO.WIDEREL,
              '\u219d': e.MO.WIDEREL,
              '\u219e': e.MO.WIDEREL,
              '\u219f': e.MO.WIDEREL,
              '\u21a0': e.MO.WIDEREL,
              '\u21a1': e.MO.RELSTRETCH,
              '\u21a2': e.MO.WIDEREL,
              '\u21a3': e.MO.WIDEREL,
              '\u21a4': e.MO.WIDEREL,
              '\u21a5': e.MO.RELSTRETCH,
              '\u21a6': e.MO.WIDEREL,
              '\u21a7': e.MO.RELSTRETCH,
              '\u21a8': e.MO.RELSTRETCH,
              '\u21a9': e.MO.WIDEREL,
              '\u21aa': e.MO.WIDEREL,
              '\u21ab': e.MO.WIDEREL,
              '\u21ac': e.MO.WIDEREL,
              '\u21ad': e.MO.WIDEREL,
              '\u21ae': e.MO.RELACCENT,
              '\u21af': e.MO.RELSTRETCH,
              '\u21b0': e.MO.RELSTRETCH,
              '\u21b1': e.MO.RELSTRETCH,
              '\u21b2': e.MO.RELSTRETCH,
              '\u21b3': e.MO.RELSTRETCH,
              '\u21b4': e.MO.RELSTRETCH,
              '\u21b5': e.MO.RELSTRETCH,
              '\u21b6': e.MO.RELACCENT,
              '\u21b7': e.MO.RELACCENT,
              '\u21b8': e.MO.REL,
              '\u21b9': e.MO.WIDEREL,
              '\u21ba': e.MO.REL,
              '\u21bb': e.MO.REL,
              '\u21bc': e.MO.WIDEREL,
              '\u21bd': e.MO.WIDEREL,
              '\u21be': e.MO.RELSTRETCH,
              '\u21bf': e.MO.RELSTRETCH,
              '\u21c0': e.MO.WIDEREL,
              '\u21c1': e.MO.WIDEREL,
              '\u21c2': e.MO.RELSTRETCH,
              '\u21c3': e.MO.RELSTRETCH,
              '\u21c4': e.MO.WIDEREL,
              '\u21c5': e.MO.RELSTRETCH,
              '\u21c6': e.MO.WIDEREL,
              '\u21c7': e.MO.WIDEREL,
              '\u21c8': e.MO.RELSTRETCH,
              '\u21c9': e.MO.WIDEREL,
              '\u21ca': e.MO.RELSTRETCH,
              '\u21cb': e.MO.WIDEREL,
              '\u21cc': e.MO.WIDEREL,
              '\u21cd': e.MO.RELACCENT,
              '\u21ce': e.MO.RELACCENT,
              '\u21cf': e.MO.RELACCENT,
              '\u21d0': e.MO.WIDEREL,
              '\u21d1': e.MO.RELSTRETCH,
              '\u21d2': e.MO.WIDEREL,
              '\u21d3': e.MO.RELSTRETCH,
              '\u21d4': e.MO.WIDEREL,
              '\u21d5': e.MO.RELSTRETCH,
              '\u21d6': e.MO.RELSTRETCH,
              '\u21d7': e.MO.RELSTRETCH,
              '\u21d8': e.MO.RELSTRETCH,
              '\u21d9': e.MO.RELSTRETCH,
              '\u21da': e.MO.WIDEREL,
              '\u21db': e.MO.WIDEREL,
              '\u21dc': e.MO.WIDEREL,
              '\u21dd': e.MO.WIDEREL,
              '\u21de': e.MO.REL,
              '\u21df': e.MO.REL,
              '\u21e0': e.MO.WIDEREL,
              '\u21e1': e.MO.RELSTRETCH,
              '\u21e2': e.MO.WIDEREL,
              '\u21e3': e.MO.RELSTRETCH,
              '\u21e4': e.MO.WIDEREL,
              '\u21e5': e.MO.WIDEREL,
              '\u21e6': e.MO.WIDEREL,
              '\u21e7': e.MO.RELSTRETCH,
              '\u21e8': e.MO.WIDEREL,
              '\u21e9': e.MO.RELSTRETCH,
              '\u21ea': e.MO.RELSTRETCH,
              '\u21eb': e.MO.RELSTRETCH,
              '\u21ec': e.MO.RELSTRETCH,
              '\u21ed': e.MO.RELSTRETCH,
              '\u21ee': e.MO.RELSTRETCH,
              '\u21ef': e.MO.RELSTRETCH,
              '\u21f0': e.MO.WIDEREL,
              '\u21f1': e.MO.REL,
              '\u21f2': e.MO.REL,
              '\u21f3': e.MO.RELSTRETCH,
              '\u21f4': e.MO.RELACCENT,
              '\u21f5': e.MO.RELSTRETCH,
              '\u21f6': e.MO.WIDEREL,
              '\u21f7': e.MO.RELACCENT,
              '\u21f8': e.MO.RELACCENT,
              '\u21f9': e.MO.RELACCENT,
              '\u21fa': e.MO.RELACCENT,
              '\u21fb': e.MO.RELACCENT,
              '\u21fc': e.MO.RELACCENT,
              '\u21fd': e.MO.WIDEREL,
              '\u21fe': e.MO.WIDEREL,
              '\u21ff': e.MO.WIDEREL,
              '\u2201': i(1, 2, o.TEXCLASS.ORD),
              '\u2205': e.MO.ORD,
              '\u2206': e.MO.BIN3,
              '\u2208': e.MO.REL,
              '\u2209': e.MO.REL,
              '\u220a': e.MO.REL,
              '\u220b': e.MO.REL,
              '\u220c': e.MO.REL,
              '\u220d': e.MO.REL,
              '\u220e': e.MO.BIN3,
              '\u2212': e.MO.BIN4,
              '\u2213': e.MO.BIN4,
              '\u2214': e.MO.BIN4,
              '\u2215': e.MO.TALLBIN,
              '\u2216': e.MO.BIN4,
              '\u2217': e.MO.BIN4,
              '\u2218': e.MO.BIN4,
              '\u2219': e.MO.BIN4,
              '\u221d': e.MO.REL,
              '\u221e': e.MO.ORD,
              '\u221f': e.MO.REL,
              '\u2223': e.MO.REL,
              '\u2224': e.MO.REL,
              '\u2225': e.MO.REL,
              '\u2226': e.MO.REL,
              '\u2227': e.MO.BIN4,
              '\u2228': e.MO.BIN4,
              '\u2229': e.MO.BIN4,
              '\u222a': e.MO.BIN4,
              '\u2234': e.MO.REL,
              '\u2235': e.MO.REL,
              '\u2236': e.MO.REL,
              '\u2237': e.MO.REL,
              '\u2238': e.MO.BIN4,
              '\u2239': e.MO.REL,
              '\u223a': e.MO.BIN4,
              '\u223b': e.MO.REL,
              '\u223c': e.MO.REL,
              '\u223d': e.MO.REL,
              '\u223d\u0331': e.MO.BIN3,
              '\u223e': e.MO.REL,
              '\u223f': e.MO.BIN3,
              '\u2240': e.MO.BIN4,
              '\u2241': e.MO.REL,
              '\u2242': e.MO.REL,
              '\u2242\u0338': e.MO.REL,
              '\u2243': e.MO.REL,
              '\u2244': e.MO.REL,
              '\u2245': e.MO.REL,
              '\u2246': e.MO.REL,
              '\u2247': e.MO.REL,
              '\u2248': e.MO.REL,
              '\u2249': e.MO.REL,
              '\u224a': e.MO.REL,
              '\u224b': e.MO.REL,
              '\u224c': e.MO.REL,
              '\u224d': e.MO.REL,
              '\u224e': e.MO.REL,
              '\u224e\u0338': e.MO.REL,
              '\u224f': e.MO.REL,
              '\u224f\u0338': e.MO.REL,
              '\u2250': e.MO.REL,
              '\u2251': e.MO.REL,
              '\u2252': e.MO.REL,
              '\u2253': e.MO.REL,
              '\u2254': e.MO.REL,
              '\u2255': e.MO.REL,
              '\u2256': e.MO.REL,
              '\u2257': e.MO.REL,
              '\u2258': e.MO.REL,
              '\u2259': e.MO.REL,
              '\u225a': e.MO.REL,
              '\u225b': e.MO.REL,
              '\u225c': e.MO.REL,
              '\u225d': e.MO.REL,
              '\u225e': e.MO.REL,
              '\u225f': e.MO.REL,
              '\u2260': e.MO.REL,
              '\u2261': e.MO.REL,
              '\u2262': e.MO.REL,
              '\u2263': e.MO.REL,
              '\u2264': e.MO.REL,
              '\u2265': e.MO.REL,
              '\u2266': e.MO.REL,
              '\u2266\u0338': e.MO.REL,
              '\u2267': e.MO.REL,
              '\u2268': e.MO.REL,
              '\u2269': e.MO.REL,
              '\u226a': e.MO.REL,
              '\u226a\u0338': e.MO.REL,
              '\u226b': e.MO.REL,
              '\u226b\u0338': e.MO.REL,
              '\u226c': e.MO.REL,
              '\u226d': e.MO.REL,
              '\u226e': e.MO.REL,
              '\u226f': e.MO.REL,
              '\u2270': e.MO.REL,
              '\u2271': e.MO.REL,
              '\u2272': e.MO.REL,
              '\u2273': e.MO.REL,
              '\u2274': e.MO.REL,
              '\u2275': e.MO.REL,
              '\u2276': e.MO.REL,
              '\u2277': e.MO.REL,
              '\u2278': e.MO.REL,
              '\u2279': e.MO.REL,
              '\u227a': e.MO.REL,
              '\u227b': e.MO.REL,
              '\u227c': e.MO.REL,
              '\u227d': e.MO.REL,
              '\u227e': e.MO.REL,
              '\u227f': e.MO.REL,
              '\u227f\u0338': e.MO.REL,
              '\u2280': e.MO.REL,
              '\u2281': e.MO.REL,
              '\u2282': e.MO.REL,
              '\u2282\u20d2': e.MO.REL,
              '\u2283': e.MO.REL,
              '\u2283\u20d2': e.MO.REL,
              '\u2284': e.MO.REL,
              '\u2285': e.MO.REL,
              '\u2286': e.MO.REL,
              '\u2287': e.MO.REL,
              '\u2288': e.MO.REL,
              '\u2289': e.MO.REL,
              '\u228a': e.MO.REL,
              '\u228b': e.MO.REL,
              '\u228c': e.MO.BIN4,
              '\u228d': e.MO.BIN4,
              '\u228e': e.MO.BIN4,
              '\u228f': e.MO.REL,
              '\u228f\u0338': e.MO.REL,
              '\u2290': e.MO.REL,
              '\u2290\u0338': e.MO.REL,
              '\u2291': e.MO.REL,
              '\u2292': e.MO.REL,
              '\u2293': e.MO.BIN4,
              '\u2294': e.MO.BIN4,
              '\u2295': e.MO.BIN4,
              '\u2296': e.MO.BIN4,
              '\u2297': e.MO.BIN4,
              '\u2298': e.MO.BIN4,
              '\u2299': e.MO.BIN4,
              '\u229a': e.MO.BIN4,
              '\u229b': e.MO.BIN4,
              '\u229c': e.MO.BIN4,
              '\u229d': e.MO.BIN4,
              '\u229e': e.MO.BIN4,
              '\u229f': e.MO.BIN4,
              '\u22a0': e.MO.BIN4,
              '\u22a1': e.MO.BIN4,
              '\u22a2': e.MO.REL,
              '\u22a3': e.MO.REL,
              '\u22a4': e.MO.ORD55,
              '\u22a5': e.MO.REL,
              '\u22a6': e.MO.REL,
              '\u22a7': e.MO.REL,
              '\u22a8': e.MO.REL,
              '\u22a9': e.MO.REL,
              '\u22aa': e.MO.REL,
              '\u22ab': e.MO.REL,
              '\u22ac': e.MO.REL,
              '\u22ad': e.MO.REL,
              '\u22ae': e.MO.REL,
              '\u22af': e.MO.REL,
              '\u22b0': e.MO.REL,
              '\u22b1': e.MO.REL,
              '\u22b2': e.MO.REL,
              '\u22b3': e.MO.REL,
              '\u22b4': e.MO.REL,
              '\u22b5': e.MO.REL,
              '\u22b6': e.MO.REL,
              '\u22b7': e.MO.REL,
              '\u22b8': e.MO.REL,
              '\u22b9': e.MO.REL,
              '\u22ba': e.MO.BIN4,
              '\u22bb': e.MO.BIN4,
              '\u22bc': e.MO.BIN4,
              '\u22bd': e.MO.BIN4,
              '\u22be': e.MO.BIN3,
              '\u22bf': e.MO.BIN3,
              '\u22c4': e.MO.BIN4,
              '\u22c5': e.MO.BIN4,
              '\u22c6': e.MO.BIN4,
              '\u22c7': e.MO.BIN4,
              '\u22c8': e.MO.REL,
              '\u22c9': e.MO.BIN4,
              '\u22ca': e.MO.BIN4,
              '\u22cb': e.MO.BIN4,
              '\u22cc': e.MO.BIN4,
              '\u22cd': e.MO.REL,
              '\u22ce': e.MO.BIN4,
              '\u22cf': e.MO.BIN4,
              '\u22d0': e.MO.REL,
              '\u22d1': e.MO.REL,
              '\u22d2': e.MO.BIN4,
              '\u22d3': e.MO.BIN4,
              '\u22d4': e.MO.REL,
              '\u22d5': e.MO.REL,
              '\u22d6': e.MO.REL,
              '\u22d7': e.MO.REL,
              '\u22d8': e.MO.REL,
              '\u22d9': e.MO.REL,
              '\u22da': e.MO.REL,
              '\u22db': e.MO.REL,
              '\u22dc': e.MO.REL,
              '\u22dd': e.MO.REL,
              '\u22de': e.MO.REL,
              '\u22df': e.MO.REL,
              '\u22e0': e.MO.REL,
              '\u22e1': e.MO.REL,
              '\u22e2': e.MO.REL,
              '\u22e3': e.MO.REL,
              '\u22e4': e.MO.REL,
              '\u22e5': e.MO.REL,
              '\u22e6': e.MO.REL,
              '\u22e7': e.MO.REL,
              '\u22e8': e.MO.REL,
              '\u22e9': e.MO.REL,
              '\u22ea': e.MO.REL,
              '\u22eb': e.MO.REL,
              '\u22ec': e.MO.REL,
              '\u22ed': e.MO.REL,
              '\u22ee': e.MO.ORD55,
              '\u22ef': e.MO.INNER,
              '\u22f0': e.MO.REL,
              '\u22f1': [5, 5, o.TEXCLASS.INNER, null],
              '\u22f2': e.MO.REL,
              '\u22f3': e.MO.REL,
              '\u22f4': e.MO.REL,
              '\u22f5': e.MO.REL,
              '\u22f6': e.MO.REL,
              '\u22f7': e.MO.REL,
              '\u22f8': e.MO.REL,
              '\u22f9': e.MO.REL,
              '\u22fa': e.MO.REL,
              '\u22fb': e.MO.REL,
              '\u22fc': e.MO.REL,
              '\u22fd': e.MO.REL,
              '\u22fe': e.MO.REL,
              '\u22ff': e.MO.REL,
              '\u2305': e.MO.BIN3,
              '\u2306': e.MO.BIN3,
              '\u2322': e.MO.REL4,
              '\u2323': e.MO.REL4,
              '\u2329': e.MO.OPEN,
              '\u232a': e.MO.CLOSE,
              '\u23aa': e.MO.ORD,
              '\u23af': [0, 0, o.TEXCLASS.ORD, { stretchy: !0 }],
              '\u23b0': e.MO.OPEN,
              '\u23b1': e.MO.CLOSE,
              '\u2500': e.MO.ORD,
              '\u25b3': e.MO.BIN4,
              '\u25b5': e.MO.BIN4,
              '\u25b9': e.MO.BIN4,
              '\u25bd': e.MO.BIN4,
              '\u25bf': e.MO.BIN4,
              '\u25c3': e.MO.BIN4,
              '\u25ef': e.MO.BIN3,
              '\u2660': e.MO.ORD,
              '\u2661': e.MO.ORD,
              '\u2662': e.MO.ORD,
              '\u2663': e.MO.ORD,
              '\u2758': e.MO.REL,
              '\u27f0': e.MO.RELSTRETCH,
              '\u27f1': e.MO.RELSTRETCH,
              '\u27f5': e.MO.WIDEREL,
              '\u27f6': e.MO.WIDEREL,
              '\u27f7': e.MO.WIDEREL,
              '\u27f8': e.MO.WIDEREL,
              '\u27f9': e.MO.WIDEREL,
              '\u27fa': e.MO.WIDEREL,
              '\u27fb': e.MO.WIDEREL,
              '\u27fc': e.MO.WIDEREL,
              '\u27fd': e.MO.WIDEREL,
              '\u27fe': e.MO.WIDEREL,
              '\u27ff': e.MO.WIDEREL,
              '\u2900': e.MO.RELACCENT,
              '\u2901': e.MO.RELACCENT,
              '\u2902': e.MO.RELACCENT,
              '\u2903': e.MO.RELACCENT,
              '\u2904': e.MO.RELACCENT,
              '\u2905': e.MO.RELACCENT,
              '\u2906': e.MO.RELACCENT,
              '\u2907': e.MO.RELACCENT,
              '\u2908': e.MO.REL,
              '\u2909': e.MO.REL,
              '\u290a': e.MO.RELSTRETCH,
              '\u290b': e.MO.RELSTRETCH,
              '\u290c': e.MO.WIDEREL,
              '\u290d': e.MO.WIDEREL,
              '\u290e': e.MO.WIDEREL,
              '\u290f': e.MO.WIDEREL,
              '\u2910': e.MO.WIDEREL,
              '\u2911': e.MO.RELACCENT,
              '\u2912': e.MO.RELSTRETCH,
              '\u2913': e.MO.RELSTRETCH,
              '\u2914': e.MO.RELACCENT,
              '\u2915': e.MO.RELACCENT,
              '\u2916': e.MO.RELACCENT,
              '\u2917': e.MO.RELACCENT,
              '\u2918': e.MO.RELACCENT,
              '\u2919': e.MO.RELACCENT,
              '\u291a': e.MO.RELACCENT,
              '\u291b': e.MO.RELACCENT,
              '\u291c': e.MO.RELACCENT,
              '\u291d': e.MO.RELACCENT,
              '\u291e': e.MO.RELACCENT,
              '\u291f': e.MO.RELACCENT,
              '\u2920': e.MO.RELACCENT,
              '\u2921': e.MO.RELSTRETCH,
              '\u2922': e.MO.RELSTRETCH,
              '\u2923': e.MO.REL,
              '\u2924': e.MO.REL,
              '\u2925': e.MO.REL,
              '\u2926': e.MO.REL,
              '\u2927': e.MO.REL,
              '\u2928': e.MO.REL,
              '\u2929': e.MO.REL,
              '\u292a': e.MO.REL,
              '\u292b': e.MO.REL,
              '\u292c': e.MO.REL,
              '\u292d': e.MO.REL,
              '\u292e': e.MO.REL,
              '\u292f': e.MO.REL,
              '\u2930': e.MO.REL,
              '\u2931': e.MO.REL,
              '\u2932': e.MO.REL,
              '\u2933': e.MO.RELACCENT,
              '\u2934': e.MO.REL,
              '\u2935': e.MO.REL,
              '\u2936': e.MO.REL,
              '\u2937': e.MO.REL,
              '\u2938': e.MO.REL,
              '\u2939': e.MO.REL,
              '\u293a': e.MO.RELACCENT,
              '\u293b': e.MO.RELACCENT,
              '\u293c': e.MO.RELACCENT,
              '\u293d': e.MO.RELACCENT,
              '\u293e': e.MO.REL,
              '\u293f': e.MO.REL,
              '\u2940': e.MO.REL,
              '\u2941': e.MO.REL,
              '\u2942': e.MO.RELACCENT,
              '\u2943': e.MO.RELACCENT,
              '\u2944': e.MO.RELACCENT,
              '\u2945': e.MO.RELACCENT,
              '\u2946': e.MO.RELACCENT,
              '\u2947': e.MO.RELACCENT,
              '\u2948': e.MO.RELACCENT,
              '\u2949': e.MO.REL,
              '\u294a': e.MO.RELACCENT,
              '\u294b': e.MO.RELACCENT,
              '\u294c': e.MO.REL,
              '\u294d': e.MO.REL,
              '\u294e': e.MO.WIDEREL,
              '\u294f': e.MO.RELSTRETCH,
              '\u2950': e.MO.WIDEREL,
              '\u2951': e.MO.RELSTRETCH,
              '\u2952': e.MO.WIDEREL,
              '\u2953': e.MO.WIDEREL,
              '\u2954': e.MO.RELSTRETCH,
              '\u2955': e.MO.RELSTRETCH,
              '\u2956': e.MO.RELSTRETCH,
              '\u2957': e.MO.RELSTRETCH,
              '\u2958': e.MO.RELSTRETCH,
              '\u2959': e.MO.RELSTRETCH,
              '\u295a': e.MO.WIDEREL,
              '\u295b': e.MO.WIDEREL,
              '\u295c': e.MO.RELSTRETCH,
              '\u295d': e.MO.RELSTRETCH,
              '\u295e': e.MO.WIDEREL,
              '\u295f': e.MO.WIDEREL,
              '\u2960': e.MO.RELSTRETCH,
              '\u2961': e.MO.RELSTRETCH,
              '\u2962': e.MO.RELACCENT,
              '\u2963': e.MO.REL,
              '\u2964': e.MO.RELACCENT,
              '\u2965': e.MO.REL,
              '\u2966': e.MO.RELACCENT,
              '\u2967': e.MO.RELACCENT,
              '\u2968': e.MO.RELACCENT,
              '\u2969': e.MO.RELACCENT,
              '\u296a': e.MO.RELACCENT,
              '\u296b': e.MO.RELACCENT,
              '\u296c': e.MO.RELACCENT,
              '\u296d': e.MO.RELACCENT,
              '\u296e': e.MO.RELSTRETCH,
              '\u296f': e.MO.RELSTRETCH,
              '\u2970': e.MO.RELACCENT,
              '\u2971': e.MO.RELACCENT,
              '\u2972': e.MO.RELACCENT,
              '\u2973': e.MO.RELACCENT,
              '\u2974': e.MO.RELACCENT,
              '\u2975': e.MO.RELACCENT,
              '\u2976': e.MO.RELACCENT,
              '\u2977': e.MO.RELACCENT,
              '\u2978': e.MO.RELACCENT,
              '\u2979': e.MO.RELACCENT,
              '\u297a': e.MO.RELACCENT,
              '\u297b': e.MO.RELACCENT,
              '\u297c': e.MO.RELACCENT,
              '\u297d': e.MO.RELACCENT,
              '\u297e': e.MO.REL,
              '\u297f': e.MO.REL,
              '\u2981': e.MO.BIN3,
              '\u2982': e.MO.BIN3,
              '\u2999': e.MO.BIN3,
              '\u299a': e.MO.BIN3,
              '\u299b': e.MO.BIN3,
              '\u299c': e.MO.BIN3,
              '\u299d': e.MO.BIN3,
              '\u299e': e.MO.BIN3,
              '\u299f': e.MO.BIN3,
              '\u29a0': e.MO.BIN3,
              '\u29a1': e.MO.BIN3,
              '\u29a2': e.MO.BIN3,
              '\u29a3': e.MO.BIN3,
              '\u29a4': e.MO.BIN3,
              '\u29a5': e.MO.BIN3,
              '\u29a6': e.MO.BIN3,
              '\u29a7': e.MO.BIN3,
              '\u29a8': e.MO.BIN3,
              '\u29a9': e.MO.BIN3,
              '\u29aa': e.MO.BIN3,
              '\u29ab': e.MO.BIN3,
              '\u29ac': e.MO.BIN3,
              '\u29ad': e.MO.BIN3,
              '\u29ae': e.MO.BIN3,
              '\u29af': e.MO.BIN3,
              '\u29b0': e.MO.BIN3,
              '\u29b1': e.MO.BIN3,
              '\u29b2': e.MO.BIN3,
              '\u29b3': e.MO.BIN3,
              '\u29b4': e.MO.BIN3,
              '\u29b5': e.MO.BIN3,
              '\u29b6': e.MO.BIN4,
              '\u29b7': e.MO.BIN4,
              '\u29b8': e.MO.BIN4,
              '\u29b9': e.MO.BIN4,
              '\u29ba': e.MO.BIN4,
              '\u29bb': e.MO.BIN4,
              '\u29bc': e.MO.BIN4,
              '\u29bd': e.MO.BIN4,
              '\u29be': e.MO.BIN4,
              '\u29bf': e.MO.BIN4,
              '\u29c0': e.MO.REL,
              '\u29c1': e.MO.REL,
              '\u29c2': e.MO.BIN3,
              '\u29c3': e.MO.BIN3,
              '\u29c4': e.MO.BIN4,
              '\u29c5': e.MO.BIN4,
              '\u29c6': e.MO.BIN4,
              '\u29c7': e.MO.BIN4,
              '\u29c8': e.MO.BIN4,
              '\u29c9': e.MO.BIN3,
              '\u29ca': e.MO.BIN3,
              '\u29cb': e.MO.BIN3,
              '\u29cc': e.MO.BIN3,
              '\u29cd': e.MO.BIN3,
              '\u29ce': e.MO.REL,
              '\u29cf': e.MO.REL,
              '\u29cf\u0338': e.MO.REL,
              '\u29d0': e.MO.REL,
              '\u29d0\u0338': e.MO.REL,
              '\u29d1': e.MO.REL,
              '\u29d2': e.MO.REL,
              '\u29d3': e.MO.REL,
              '\u29d4': e.MO.REL,
              '\u29d5': e.MO.REL,
              '\u29d6': e.MO.BIN4,
              '\u29d7': e.MO.BIN4,
              '\u29d8': e.MO.BIN3,
              '\u29d9': e.MO.BIN3,
              '\u29db': e.MO.BIN3,
              '\u29dc': e.MO.BIN3,
              '\u29dd': e.MO.BIN3,
              '\u29de': e.MO.REL,
              '\u29df': e.MO.BIN3,
              '\u29e0': e.MO.BIN3,
              '\u29e1': e.MO.REL,
              '\u29e2': e.MO.BIN4,
              '\u29e3': e.MO.REL,
              '\u29e4': e.MO.REL,
              '\u29e5': e.MO.REL,
              '\u29e6': e.MO.REL,
              '\u29e7': e.MO.BIN3,
              '\u29e8': e.MO.BIN3,
              '\u29e9': e.MO.BIN3,
              '\u29ea': e.MO.BIN3,
              '\u29eb': e.MO.BIN3,
              '\u29ec': e.MO.BIN3,
              '\u29ed': e.MO.BIN3,
              '\u29ee': e.MO.BIN3,
              '\u29ef': e.MO.BIN3,
              '\u29f0': e.MO.BIN3,
              '\u29f1': e.MO.BIN3,
              '\u29f2': e.MO.BIN3,
              '\u29f3': e.MO.BIN3,
              '\u29f4': e.MO.REL,
              '\u29f5': e.MO.BIN4,
              '\u29f6': e.MO.BIN4,
              '\u29f7': e.MO.BIN4,
              '\u29f8': e.MO.BIN3,
              '\u29f9': e.MO.BIN3,
              '\u29fa': e.MO.BIN3,
              '\u29fb': e.MO.BIN3,
              '\u29fe': e.MO.BIN4,
              '\u29ff': e.MO.BIN4,
              '\u2a1d': e.MO.BIN3,
              '\u2a1e': e.MO.BIN3,
              '\u2a1f': e.MO.BIN3,
              '\u2a20': e.MO.BIN3,
              '\u2a21': e.MO.BIN3,
              '\u2a22': e.MO.BIN4,
              '\u2a23': e.MO.BIN4,
              '\u2a24': e.MO.BIN4,
              '\u2a25': e.MO.BIN4,
              '\u2a26': e.MO.BIN4,
              '\u2a27': e.MO.BIN4,
              '\u2a28': e.MO.BIN4,
              '\u2a29': e.MO.BIN4,
              '\u2a2a': e.MO.BIN4,
              '\u2a2b': e.MO.BIN4,
              '\u2a2c': e.MO.BIN4,
              '\u2a2d': e.MO.BIN4,
              '\u2a2e': e.MO.BIN4,
              '\u2a2f': e.MO.BIN4,
              '\u2a30': e.MO.BIN4,
              '\u2a31': e.MO.BIN4,
              '\u2a32': e.MO.BIN4,
              '\u2a33': e.MO.BIN4,
              '\u2a34': e.MO.BIN4,
              '\u2a35': e.MO.BIN4,
              '\u2a36': e.MO.BIN4,
              '\u2a37': e.MO.BIN4,
              '\u2a38': e.MO.BIN4,
              '\u2a39': e.MO.BIN4,
              '\u2a3a': e.MO.BIN4,
              '\u2a3b': e.MO.BIN4,
              '\u2a3c': e.MO.BIN4,
              '\u2a3d': e.MO.BIN4,
              '\u2a3e': e.MO.BIN4,
              '\u2a3f': e.MO.BIN4,
              '\u2a40': e.MO.BIN4,
              '\u2a41': e.MO.BIN4,
              '\u2a42': e.MO.BIN4,
              '\u2a43': e.MO.BIN4,
              '\u2a44': e.MO.BIN4,
              '\u2a45': e.MO.BIN4,
              '\u2a46': e.MO.BIN4,
              '\u2a47': e.MO.BIN4,
              '\u2a48': e.MO.BIN4,
              '\u2a49': e.MO.BIN4,
              '\u2a4a': e.MO.BIN4,
              '\u2a4b': e.MO.BIN4,
              '\u2a4c': e.MO.BIN4,
              '\u2a4d': e.MO.BIN4,
              '\u2a4e': e.MO.BIN4,
              '\u2a4f': e.MO.BIN4,
              '\u2a50': e.MO.BIN4,
              '\u2a51': e.MO.BIN4,
              '\u2a52': e.MO.BIN4,
              '\u2a53': e.MO.BIN4,
              '\u2a54': e.MO.BIN4,
              '\u2a55': e.MO.BIN4,
              '\u2a56': e.MO.BIN4,
              '\u2a57': e.MO.BIN4,
              '\u2a58': e.MO.BIN4,
              '\u2a59': e.MO.REL,
              '\u2a5a': e.MO.BIN4,
              '\u2a5b': e.MO.BIN4,
              '\u2a5c': e.MO.BIN4,
              '\u2a5d': e.MO.BIN4,
              '\u2a5e': e.MO.BIN4,
              '\u2a5f': e.MO.BIN4,
              '\u2a60': e.MO.BIN4,
              '\u2a61': e.MO.BIN4,
              '\u2a62': e.MO.BIN4,
              '\u2a63': e.MO.BIN4,
              '\u2a64': e.MO.BIN4,
              '\u2a65': e.MO.BIN4,
              '\u2a66': e.MO.REL,
              '\u2a67': e.MO.REL,
              '\u2a68': e.MO.REL,
              '\u2a69': e.MO.REL,
              '\u2a6a': e.MO.REL,
              '\u2a6b': e.MO.REL,
              '\u2a6c': e.MO.REL,
              '\u2a6d': e.MO.REL,
              '\u2a6e': e.MO.REL,
              '\u2a6f': e.MO.REL,
              '\u2a70': e.MO.REL,
              '\u2a71': e.MO.BIN4,
              '\u2a72': e.MO.BIN4,
              '\u2a73': e.MO.REL,
              '\u2a74': e.MO.REL,
              '\u2a75': e.MO.REL,
              '\u2a76': e.MO.REL,
              '\u2a77': e.MO.REL,
              '\u2a78': e.MO.REL,
              '\u2a79': e.MO.REL,
              '\u2a7a': e.MO.REL,
              '\u2a7b': e.MO.REL,
              '\u2a7c': e.MO.REL,
              '\u2a7d': e.MO.REL,
              '\u2a7d\u0338': e.MO.REL,
              '\u2a7e': e.MO.REL,
              '\u2a7e\u0338': e.MO.REL,
              '\u2a7f': e.MO.REL,
              '\u2a80': e.MO.REL,
              '\u2a81': e.MO.REL,
              '\u2a82': e.MO.REL,
              '\u2a83': e.MO.REL,
              '\u2a84': e.MO.REL,
              '\u2a85': e.MO.REL,
              '\u2a86': e.MO.REL,
              '\u2a87': e.MO.REL,
              '\u2a88': e.MO.REL,
              '\u2a89': e.MO.REL,
              '\u2a8a': e.MO.REL,
              '\u2a8b': e.MO.REL,
              '\u2a8c': e.MO.REL,
              '\u2a8d': e.MO.REL,
              '\u2a8e': e.MO.REL,
              '\u2a8f': e.MO.REL,
              '\u2a90': e.MO.REL,
              '\u2a91': e.MO.REL,
              '\u2a92': e.MO.REL,
              '\u2a93': e.MO.REL,
              '\u2a94': e.MO.REL,
              '\u2a95': e.MO.REL,
              '\u2a96': e.MO.REL,
              '\u2a97': e.MO.REL,
              '\u2a98': e.MO.REL,
              '\u2a99': e.MO.REL,
              '\u2a9a': e.MO.REL,
              '\u2a9b': e.MO.REL,
              '\u2a9c': e.MO.REL,
              '\u2a9d': e.MO.REL,
              '\u2a9e': e.MO.REL,
              '\u2a9f': e.MO.REL,
              '\u2aa0': e.MO.REL,
              '\u2aa1': e.MO.REL,
              '\u2aa1\u0338': e.MO.REL,
              '\u2aa2': e.MO.REL,
              '\u2aa2\u0338': e.MO.REL,
              '\u2aa3': e.MO.REL,
              '\u2aa4': e.MO.REL,
              '\u2aa5': e.MO.REL,
              '\u2aa6': e.MO.REL,
              '\u2aa7': e.MO.REL,
              '\u2aa8': e.MO.REL,
              '\u2aa9': e.MO.REL,
              '\u2aaa': e.MO.REL,
              '\u2aab': e.MO.REL,
              '\u2aac': e.MO.REL,
              '\u2aad': e.MO.REL,
              '\u2aae': e.MO.REL,
              '\u2aaf': e.MO.REL,
              '\u2aaf\u0338': e.MO.REL,
              '\u2ab0': e.MO.REL,
              '\u2ab0\u0338': e.MO.REL,
              '\u2ab1': e.MO.REL,
              '\u2ab2': e.MO.REL,
              '\u2ab3': e.MO.REL,
              '\u2ab4': e.MO.REL,
              '\u2ab5': e.MO.REL,
              '\u2ab6': e.MO.REL,
              '\u2ab7': e.MO.REL,
              '\u2ab8': e.MO.REL,
              '\u2ab9': e.MO.REL,
              '\u2aba': e.MO.REL,
              '\u2abb': e.MO.REL,
              '\u2abc': e.MO.REL,
              '\u2abd': e.MO.REL,
              '\u2abe': e.MO.REL,
              '\u2abf': e.MO.REL,
              '\u2ac0': e.MO.REL,
              '\u2ac1': e.MO.REL,
              '\u2ac2': e.MO.REL,
              '\u2ac3': e.MO.REL,
              '\u2ac4': e.MO.REL,
              '\u2ac5': e.MO.REL,
              '\u2ac6': e.MO.REL,
              '\u2ac7': e.MO.REL,
              '\u2ac8': e.MO.REL,
              '\u2ac9': e.MO.REL,
              '\u2aca': e.MO.REL,
              '\u2acb': e.MO.REL,
              '\u2acc': e.MO.REL,
              '\u2acd': e.MO.REL,
              '\u2ace': e.MO.REL,
              '\u2acf': e.MO.REL,
              '\u2ad0': e.MO.REL,
              '\u2ad1': e.MO.REL,
              '\u2ad2': e.MO.REL,
              '\u2ad3': e.MO.REL,
              '\u2ad4': e.MO.REL,
              '\u2ad5': e.MO.REL,
              '\u2ad6': e.MO.REL,
              '\u2ad7': e.MO.REL,
              '\u2ad8': e.MO.REL,
              '\u2ad9': e.MO.REL,
              '\u2ada': e.MO.REL,
              '\u2adb': e.MO.REL,
              '\u2add': e.MO.REL,
              '\u2add\u0338': e.MO.REL,
              '\u2ade': e.MO.REL,
              '\u2adf': e.MO.REL,
              '\u2ae0': e.MO.REL,
              '\u2ae1': e.MO.REL,
              '\u2ae2': e.MO.REL,
              '\u2ae3': e.MO.REL,
              '\u2ae4': e.MO.REL,
              '\u2ae5': e.MO.REL,
              '\u2ae6': e.MO.REL,
              '\u2ae7': e.MO.REL,
              '\u2ae8': e.MO.REL,
              '\u2ae9': e.MO.REL,
              '\u2aea': e.MO.REL,
              '\u2aeb': e.MO.REL,
              '\u2aec': e.MO.REL,
              '\u2aed': e.MO.REL,
              '\u2aee': e.MO.REL,
              '\u2aef': e.MO.REL,
              '\u2af0': e.MO.REL,
              '\u2af1': e.MO.REL,
              '\u2af2': e.MO.REL,
              '\u2af3': e.MO.REL,
              '\u2af4': e.MO.BIN4,
              '\u2af5': e.MO.BIN4,
              '\u2af6': e.MO.BIN4,
              '\u2af7': e.MO.REL,
              '\u2af8': e.MO.REL,
              '\u2af9': e.MO.REL,
              '\u2afa': e.MO.REL,
              '\u2afb': e.MO.BIN4,
              '\u2afd': e.MO.BIN4,
              '\u2afe': e.MO.BIN3,
              '\u2b45': e.MO.RELSTRETCH,
              '\u2b46': e.MO.RELSTRETCH,
              '\u3008': e.MO.OPEN,
              '\u3009': e.MO.CLOSE,
              '\ufe37': e.MO.WIDEACCENT,
              '\ufe38': e.MO.WIDEACCENT
            }
          }),
          (e.OPTABLE.infix['^'] = e.MO.WIDEREL),
          (e.OPTABLE.infix._ = e.MO.WIDEREL),
          (e.OPTABLE.infix['\u2adc'] = e.MO.REL)
      },
      9259: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SerializedMmlVisitor = e.toEntity = e.DATAMJX = void 0)
        var a = r(6325),
          l = r(9007),
          c = r(450)
        e.DATAMJX = 'data-mjx-'
        e.toEntity = function (t) {
          return '&#x' + t.codePointAt(0).toString(16).toUpperCase() + ';'
        }
        var u = (function (t) {
          function r() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(r, t),
            (r.prototype.visitTree = function (t) {
              return this.visitNode(t, '')
            }),
            (r.prototype.visitTextNode = function (t, e) {
              return this.quoteHTML(t.getText())
            }),
            (r.prototype.visitXMLNode = function (t, e) {
              return e + t.getSerializedXML()
            }),
            (r.prototype.visitInferredMrowNode = function (t, e) {
              var r,
                n,
                o = []
              try {
                for (var s = i(t.childNodes), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  o.push(this.visitNode(l, e))
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  a && !a.done && (n = s.return) && n.call(s)
                } finally {
                  if (r) throw r.error
                }
              }
              return o.join('\n')
            }),
            (r.prototype.visitTeXAtomNode = function (t, e) {
              var r = this.childNodeMml(t, e + '  ', '\n')
              return e + '<mrow' + this.getAttributes(t) + '>' + (r.match(/\S/) ? '\n' + r + e : '') + '</mrow>'
            }),
            (r.prototype.visitAnnotationNode = function (t, e) {
              return e + '<annotation' + this.getAttributes(t) + '>' + this.childNodeMml(t, '', '') + '</annotation>'
            }),
            (r.prototype.visitDefault = function (t, e) {
              var r = t.kind,
                n = s(t.isToken || 0 === t.childNodes.length ? ['', ''] : ['\n', e], 2),
                o = n[0],
                i = n[1],
                a = this.childNodeMml(t, e + '  ', o)
              return e + '<' + r + this.getAttributes(t) + '>' + (a.match(/\S/) ? o + a + i : '') + '</' + r + '>'
            }),
            (r.prototype.childNodeMml = function (t, e, r) {
              var n,
                o,
                s = ''
              try {
                for (var a = i(t.childNodes), l = a.next(); !l.done; l = a.next()) {
                  var c = l.value
                  s += this.visitNode(c, e) + r
                }
              } catch (t) {
                n = { error: t }
              } finally {
                try {
                  l && !l.done && (o = a.return) && o.call(a)
                } finally {
                  if (n) throw n.error
                }
              }
              return s
            }),
            (r.prototype.getAttributes = function (t) {
              var e,
                r,
                n = [],
                o = this.constructor.defaultAttributes[t.kind] || {},
                s = Object.assign({}, o, this.getDataAttributes(t), t.attributes.getAllAttributes()),
                a = this.constructor.variants
              s.hasOwnProperty('mathvariant') && a.hasOwnProperty(s.mathvariant) && (s.mathvariant = a[s.mathvariant])
              try {
                for (var l = i(Object.keys(s)), c = l.next(); !c.done; c = l.next()) {
                  var u = c.value,
                    p = String(s[u])
                  void 0 !== p && n.push(u + '="' + this.quoteHTML(p) + '"')
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  c && !c.done && (r = l.return) && r.call(l)
                } finally {
                  if (e) throw e.error
                }
              }
              return n.length ? ' ' + n.join(' ') : ''
            }),
            (r.prototype.getDataAttributes = function (t) {
              var e = {},
                r = t.attributes.getExplicit('mathvariant'),
                n = this.constructor.variants
              r && n.hasOwnProperty(r) && this.setDataAttribute(e, 'variant', r),
                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')
              var o = t.getProperty('scriptalign')
              o && this.setDataAttribute(e, 'script-align', o)
              var i = t.getProperty('texClass')
              if (void 0 !== i) {
                var s = !0
                if (i === l.TEXCLASS.OP && t.isKind('mi')) {
                  var a = t.getText()
                  s = !(a.length > 1 && a.match(c.MmlMi.operatorName))
                }
                s && this.setDataAttribute(e, 'texclass', i < 0 ? 'NONE' : l.TEXCLASSNAMES[i])
              }
              return t.getProperty('scriptlevel') && !1 === t.getProperty('useHeight') && this.setDataAttribute(e, 'smallmatrix', 'true'), e
            }),
            (r.prototype.setDataAttribute = function (t, r, n) {
              t[e.DATAMJX + r] = n
            }),
            (r.prototype.quoteHTML = function (t) {
              return t
                .replace(/&/g, '&amp;')
                .replace(/</g, '&lt;')
                .replace(/>/g, '&gt;')
                .replace(/\"/g, '&quot;')
                .replace(/[\uD800-\uDBFF]./g, e.toEntity)
                .replace(/[\u0080-\uD7FF\uE000-\uFFFF]/g, e.toEntity)
            }),
            (r.variants = { '-tex-calligraphic': 'script', '-tex-bold-calligraphic': 'bold-script', '-tex-oldstyle': 'normal', '-tex-bold-oldstyle': 'bold', '-tex-mathit': 'italic' }),
            (r.defaultAttributes = { math: { xmlns: 'http://www.w3.org/1998/Math/MathML' } }),
            r
          )
        })(a.MmlVisitor)
        e.SerializedMmlVisitor = u
      },
      2975: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractOutputJax = void 0)
        var n = r(7233),
          o = r(7525),
          i = (function () {
            function t(t) {
              void 0 === t && (t = {}), (this.adaptor = null)
              var e = this.constructor
              ;(this.options = (0, n.userOptions)((0, n.defaultOptions)({}, e.OPTIONS), t)), (this.postFilters = new o.FunctionList())
            }
            return (
              Object.defineProperty(t.prototype, 'name', {
                get: function () {
                  return this.constructor.NAME
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.setAdaptor = function (t) {
                this.adaptor = t
              }),
              (t.prototype.initialize = function () {}),
              (t.prototype.reset = function () {
                for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
              }),
              (t.prototype.getMetrics = function (t) {}),
              (t.prototype.styleSheet = function (t) {
                return null
              }),
              (t.prototype.pageElements = function (t) {
                return null
              }),
              (t.prototype.executeFilters = function (t, e, r, n) {
                var o = { math: e, document: r, data: n }
                return t.execute(o), o.data
              }),
              (t.NAME = 'generic'),
              (t.OPTIONS = {}),
              t
            )
          })()
        e.AbstractOutputJax = i
      },
      4574: function (t, e) {
        var r =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractFactory = void 0)
        var i = (function () {
          function t(t) {
            var e, n
            void 0 === t && (t = null), (this.defaultKind = 'unknown'), (this.nodeMap = new Map()), (this.node = {}), null === t && (t = this.constructor.defaultNodes)
            try {
              for (var o = r(Object.keys(t)), i = o.next(); !i.done; i = o.next()) {
                var s = i.value
                this.setNodeClass(s, t[s])
              }
            } catch (t) {
              e = { error: t }
            } finally {
              try {
                i && !i.done && (n = o.return) && n.call(o)
              } finally {
                if (e) throw e.error
              }
            }
          }
          return (
            (t.prototype.create = function (t) {
              for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
              return (this.node[t] || this.node[this.defaultKind]).apply(void 0, o([], n(e), !1))
            }),
            (t.prototype.setNodeClass = function (t, e) {
              this.nodeMap.set(t, e)
              var r = this,
                i = this.nodeMap.get(t)
              this.node[t] = function () {
                for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
                return new (i.bind.apply(i, o([void 0, r], n(t), !1)))()
              }
            }),
            (t.prototype.getNodeClass = function (t) {
              return this.nodeMap.get(t)
            }),
            (t.prototype.deleteNodeClass = function (t) {
              this.nodeMap.delete(t), delete this.node[t]
            }),
            (t.prototype.nodeIsKind = function (t, e) {
              return t instanceof this.getNodeClass(e)
            }),
            (t.prototype.getKinds = function () {
              return Array.from(this.nodeMap.keys())
            }),
            (t.defaultNodes = {}),
            t
          )
        })()
        e.AbstractFactory = i
      },
      4596: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__assign) ||
            function () {
              return (
                (o =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                o.apply(this, arguments)
              )
            },
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractEmptyNode = e.AbstractNode = void 0)
        var s = (function () {
          function t(t, e, r) {
            var n, o
            void 0 === e && (e = {}), void 0 === r && (r = []), (this.factory = t), (this.parent = null), (this.properties = {}), (this.childNodes = [])
            try {
              for (var s = i(Object.keys(e)), a = s.next(); !a.done; a = s.next()) {
                var l = a.value
                this.setProperty(l, e[l])
              }
            } catch (t) {
              n = { error: t }
            } finally {
              try {
                a && !a.done && (o = s.return) && o.call(s)
              } finally {
                if (n) throw n.error
              }
            }
            r.length && this.setChildren(r)
          }
          return (
            Object.defineProperty(t.prototype, 'kind', {
              get: function () {
                return 'unknown'
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.setProperty = function (t, e) {
              this.properties[t] = e
            }),
            (t.prototype.getProperty = function (t) {
              return this.properties[t]
            }),
            (t.prototype.getPropertyNames = function () {
              return Object.keys(this.properties)
            }),
            (t.prototype.getAllProperties = function () {
              return this.properties
            }),
            (t.prototype.removeProperty = function () {
              for (var t, e, r = [], n = 0; n < arguments.length; n++) r[n] = arguments[n]
              try {
                for (var o = i(r), s = o.next(); !s.done; s = o.next()) {
                  var a = s.value
                  delete this.properties[a]
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  s && !s.done && (e = o.return) && e.call(o)
                } finally {
                  if (t) throw t.error
                }
              }
            }),
            (t.prototype.isKind = function (t) {
              return this.factory.nodeIsKind(this, t)
            }),
            (t.prototype.setChildren = function (t) {
              var e, r
              this.childNodes = []
              try {
                for (var n = i(t), o = n.next(); !o.done; o = n.next()) {
                  var s = o.value
                  this.appendChild(s)
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  o && !o.done && (r = n.return) && r.call(n)
                } finally {
                  if (e) throw e.error
                }
              }
            }),
            (t.prototype.appendChild = function (t) {
              return this.childNodes.push(t), (t.parent = this), t
            }),
            (t.prototype.replaceChild = function (t, e) {
              var r = this.childIndex(e)
              return null !== r && ((this.childNodes[r] = t), (t.parent = this), (e.parent = null)), t
            }),
            (t.prototype.removeChild = function (t) {
              var e = this.childIndex(t)
              return null !== e && (this.childNodes.splice(e, 1), (t.parent = null)), t
            }),
            (t.prototype.childIndex = function (t) {
              var e = this.childNodes.indexOf(t)
              return -1 === e ? null : e
            }),
            (t.prototype.copy = function () {
              var t,
                e,
                r = this.factory.create(this.kind)
              r.properties = o({}, this.properties)
              try {
                for (var n = i(this.childNodes || []), s = n.next(); !s.done; s = n.next()) {
                  var a = s.value
                  a && r.appendChild(a.copy())
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  s && !s.done && (e = n.return) && e.call(n)
                } finally {
                  if (t) throw t.error
                }
              }
              return r
            }),
            (t.prototype.findNodes = function (t) {
              var e = []
              return (
                this.walkTree(function (r) {
                  r.isKind(t) && e.push(r)
                }),
                e
              )
            }),
            (t.prototype.walkTree = function (t, e) {
              var r, n
              t(this, e)
              try {
                for (var o = i(this.childNodes), s = o.next(); !s.done; s = o.next()) {
                  var a = s.value
                  a && a.walkTree(t, e)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  s && !s.done && (n = o.return) && n.call(o)
                } finally {
                  if (r) throw r.error
                }
              }
              return e
            }),
            (t.prototype.toString = function () {
              return this.kind + '(' + this.childNodes.join(',') + ')'
            }),
            t
          )
        })()
        e.AbstractNode = s
        var a = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            n(e, t),
            (e.prototype.setChildren = function (t) {}),
            (e.prototype.appendChild = function (t) {
              return t
            }),
            (e.prototype.replaceChild = function (t, e) {
              return e
            }),
            (e.prototype.childIndex = function (t) {
              return null
            }),
            (e.prototype.walkTree = function (t, e) {
              return t(this, e), e
            }),
            (e.prototype.toString = function () {
              return this.kind
            }),
            e
          )
        })(s)
        e.AbstractEmptyNode = a
      },
      7860: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractNodeFactory = void 0)
        var i = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.create = function (t, e, r) {
              return void 0 === e && (e = {}), void 0 === r && (r = []), this.node[t](e, r)
            }),
            e
          )
        })(r(4574).AbstractFactory)
        e.AbstractNodeFactory = i
      },
      8823: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractVisitor = void 0)
        var s = r(4596),
          a = (function () {
            function t(e) {
              var r, o
              this.nodeHandlers = new Map()
              try {
                for (var i = n(e.getKinds()), s = i.next(); !s.done; s = i.next()) {
                  var a = s.value,
                    l = this[t.methodName(a)]
                  l && this.nodeHandlers.set(a, l)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  s && !s.done && (o = i.return) && o.call(i)
                } finally {
                  if (r) throw r.error
                }
              }
            }
            return (
              (t.methodName = function (t) {
                return 'visit' + (t.charAt(0).toUpperCase() + t.substr(1)).replace(/[^a-z0-9_]/gi, '_') + 'Node'
              }),
              (t.prototype.visitTree = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
                return this.visitNode.apply(this, i([t], o(e), !1))
              }),
              (t.prototype.visitNode = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
                var n = this.nodeHandlers.get(t.kind) || this.visitDefault
                return n.call.apply(n, i([this, t], o(e), !1))
              }),
              (t.prototype.visitDefault = function (t) {
                for (var e, r, a = [], l = 1; l < arguments.length; l++) a[l - 1] = arguments[l]
                if (t instanceof s.AbstractNode)
                  try {
                    for (var c = n(t.childNodes), u = c.next(); !u.done; u = c.next()) {
                      var p = u.value
                      this.visitNode.apply(this, i([p], o(a), !1))
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      u && !u.done && (r = c.return) && r.call(c)
                    } finally {
                      if (e) throw e.error
                    }
                  }
              }),
              (t.prototype.setNodeHandler = function (t, e) {
                this.nodeHandlers.set(t, e)
              }),
              (t.prototype.removeNodeHandler = function (t) {
                this.nodeHandlers.delete(t)
              }),
              t
            )
          })()
        e.AbstractVisitor = a
      },
      8912: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractWrapper = void 0)
        var r = (function () {
          function t(t, e) {
            ;(this.factory = t), (this.node = e)
          }
          return (
            Object.defineProperty(t.prototype, 'kind', {
              get: function () {
                return this.node.kind
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.wrap = function (t) {
              return this.factory.wrap(t)
            }),
            t
          )
        })()
        e.AbstractWrapper = r
      },
      3811: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractWrapperFactory = void 0)
        var a = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.wrap = function (t) {
              for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
              return this.create.apply(this, s([t.kind, t], i(e), !1))
            }),
            e
          )
        })(r(4574).AbstractFactory)
        e.AbstractWrapperFactory = a
      },
      6272: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.RegisterHTMLHandler = void 0)
        var n = r(5713),
          o = r(3726)
        e.RegisterHTMLHandler = function (t) {
          var e = new o.HTMLHandler(t)
          return n.mathjax.handlers.register(e), e
        }
      },
      3683: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HTMLDocument = void 0)
        var l = r(5722),
          c = r(7233),
          u = r(3363),
          p = r(3335),
          h = r(5138),
          f = r(4474),
          d = (function (t) {
            function e(e, r, n) {
              var o = this,
                i = s((0, c.separateOptions)(n, h.HTMLDomStrings.OPTIONS), 2),
                a = i[0],
                l = i[1]
              return ((o = t.call(this, e, r, a) || this).domStrings = o.options.DomStrings || new h.HTMLDomStrings(l)), (o.domStrings.adaptor = r), (o.styles = []), o
            }
            return (
              o(e, t),
              (e.prototype.findPosition = function (t, e, r, n) {
                var o,
                  i,
                  l = this.adaptor
                try {
                  for (var c = a(n[t]), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value,
                      h = s(p, 2),
                      f = h[0],
                      d = h[1]
                    if (e <= d && '#text' === l.kind(f)) return { node: f, n: Math.max(e, 0), delim: r }
                    e -= d
                  }
                } catch (t) {
                  o = { error: t }
                } finally {
                  try {
                    u && !u.done && (i = c.return) && i.call(c)
                  } finally {
                    if (o) throw o.error
                  }
                }
                return { node: null, n: 0, delim: r }
              }),
              (e.prototype.mathItem = function (t, e, r) {
                var n = t.math,
                  o = this.findPosition(t.n, t.start.n, t.open, r),
                  i = this.findPosition(t.n, t.end.n, t.close, r)
                return new this.options.MathItem(n, e, t.display, o, i)
              }),
              (e.prototype.findMath = function (t) {
                var e, r, n, o, i, l, u, p, h
                if (!this.processed.isSet('findMath')) {
                  ;(this.adaptor.document = this.document), (t = (0, c.userOptions)({ elements: this.options.elements || [this.adaptor.body(this.document)] }, t))
                  try {
                    for (var f = a(this.adaptor.getElements(t.elements, this.document)), d = f.next(); !d.done; d = f.next()) {
                      var m = d.value,
                        y = s([null, null], 2),
                        g = y[0],
                        b = y[1]
                      try {
                        for (var v = ((n = void 0), a(this.inputJax)), _ = v.next(); !_.done; _ = v.next()) {
                          var S = _.value,
                            M = new this.options.MathList()
                          if (S.processStrings) {
                            null === g && ((g = (i = s(this.domStrings.find(m), 2))[0]), (b = i[1]))
                            try {
                              for (var O = ((l = void 0), a(S.findMath(g))), x = O.next(); !x.done; x = O.next()) {
                                var E = x.value
                                M.push(this.mathItem(E, S, b))
                              }
                            } catch (t) {
                              l = { error: t }
                            } finally {
                              try {
                                x && !x.done && (u = O.return) && u.call(O)
                              } finally {
                                if (l) throw l.error
                              }
                            }
                          } else
                            try {
                              for (var A = ((p = void 0), a(S.findMath(m))), C = A.next(); !C.done; C = A.next()) {
                                E = C.value
                                var T = new this.options.MathItem(E.math, S, E.display, E.start, E.end)
                                M.push(T)
                              }
                            } catch (t) {
                              p = { error: t }
                            } finally {
                              try {
                                C && !C.done && (h = A.return) && h.call(A)
                              } finally {
                                if (p) throw p.error
                              }
                            }
                          this.math.merge(M)
                        }
                      } catch (t) {
                        n = { error: t }
                      } finally {
                        try {
                          _ && !_.done && (o = v.return) && o.call(v)
                        } finally {
                          if (n) throw n.error
                        }
                      }
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      d && !d.done && (r = f.return) && r.call(f)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                  this.processed.set('findMath')
                }
                return this
              }),
              (e.prototype.updateDocument = function () {
                return this.processed.isSet('updateDocument') || (this.addPageElements(), this.addStyleSheet(), t.prototype.updateDocument.call(this), this.processed.set('updateDocument')), this
              }),
              (e.prototype.addPageElements = function () {
                var t = this.adaptor.body(this.document),
                  e = this.documentPageElements()
                e && this.adaptor.append(t, e)
              }),
              (e.prototype.addStyleSheet = function () {
                var t = this.documentStyleSheet(),
                  e = this.adaptor
                if (t && !e.parent(t)) {
                  var r = e.head(this.document),
                    n = this.findSheet(r, e.getAttribute(t, 'id'))
                  n ? e.replace(t, n) : e.append(r, t)
                }
              }),
              (e.prototype.findSheet = function (t, e) {
                var r, n
                if (e)
                  try {
                    for (var o = a(this.adaptor.tags(t, 'style')), i = o.next(); !i.done; i = o.next()) {
                      var s = i.value
                      if (this.adaptor.getAttribute(s, 'id') === e) return s
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      i && !i.done && (n = o.return) && n.call(o)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                return null
              }),
              (e.prototype.removeFromDocument = function (t) {
                var e, r
                if ((void 0 === t && (t = !1), this.processed.isSet('updateDocument')))
                  try {
                    for (var n = a(this.math), o = n.next(); !o.done; o = n.next()) {
                      var i = o.value
                      i.state() >= f.STATE.INSERTED && i.state(f.STATE.TYPESET, t)
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      o && !o.done && (r = n.return) && r.call(n)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                return this.processed.clear('updateDocument'), this
              }),
              (e.prototype.documentStyleSheet = function () {
                return this.outputJax.styleSheet(this)
              }),
              (e.prototype.documentPageElements = function () {
                return this.outputJax.pageElements(this)
              }),
              (e.prototype.addStyles = function (t) {
                this.styles.push(t)
              }),
              (e.prototype.getStyles = function () {
                return this.styles
              }),
              (e.KIND = 'HTML'),
              (e.OPTIONS = i(i({}, l.AbstractMathDocument.OPTIONS), {
                renderActions: (0, c.expandable)(i(i({}, l.AbstractMathDocument.OPTIONS.renderActions), { styles: [f.STATE.INSERTED + 1, '', 'updateStyleSheet', !1] })),
                MathList: p.HTMLMathList,
                MathItem: u.HTMLMathItem,
                DomStrings: null
              })),
              e
            )
          })(l.AbstractMathDocument)
        e.HTMLDocument = d
      },
      5138: function (t, e, r) {
        var n =
          (this && this.__read) ||
          function (t, e) {
            var r = 'function' == typeof Symbol && t[Symbol.iterator]
            if (!r) return t
            var n,
              o,
              i = r.call(t),
              s = []
            try {
              for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
            } catch (t) {
              o = { error: t }
            } finally {
              try {
                n && !n.done && (r = i.return) && r.call(i)
              } finally {
                if (o) throw o.error
              }
            }
            return s
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HTMLDomStrings = void 0)
        var o = r(7233),
          i = (function () {
            function t(t) {
              void 0 === t && (t = null)
              var e = this.constructor
              ;(this.options = (0, o.userOptions)((0, o.defaultOptions)({}, e.OPTIONS), t)), this.init(), this.getPatterns()
            }
            return (
              (t.prototype.init = function () {
                ;(this.strings = []), (this.string = ''), (this.snodes = []), (this.nodes = []), (this.stack = [])
              }),
              (t.prototype.getPatterns = function () {
                var t = (0, o.makeArray)(this.options.skipHtmlTags),
                  e = (0, o.makeArray)(this.options.ignoreHtmlClass),
                  r = (0, o.makeArray)(this.options.processHtmlClass)
                ;(this.skipHtmlTags = new RegExp('^(?:' + t.join('|') + ')$', 'i')), (this.ignoreHtmlClass = new RegExp('(?:^| )(?:' + e.join('|') + ')(?: |$)')), (this.processHtmlClass = new RegExp('(?:^| )(?:' + r + ')(?: |$)'))
              }),
              (t.prototype.pushString = function () {
                this.string.match(/\S/) && (this.strings.push(this.string), this.nodes.push(this.snodes)), (this.string = ''), (this.snodes = [])
              }),
              (t.prototype.extendString = function (t, e) {
                this.snodes.push([t, e.length]), (this.string += e)
              }),
              (t.prototype.handleText = function (t, e) {
                return e || this.extendString(t, this.adaptor.value(t)), this.adaptor.next(t)
              }),
              (t.prototype.handleTag = function (t, e) {
                if (!e) {
                  var r = this.options.includeHtmlTags[this.adaptor.kind(t)]
                  this.extendString(t, r)
                }
                return this.adaptor.next(t)
              }),
              (t.prototype.handleContainer = function (t, e) {
                this.pushString()
                var r = this.adaptor.getAttribute(t, 'class') || '',
                  n = this.adaptor.kind(t) || '',
                  o = this.processHtmlClass.exec(r),
                  i = t
                return (
                  !this.adaptor.firstChild(t) || this.adaptor.getAttribute(t, 'data-MJX') || (!o && this.skipHtmlTags.exec(n))
                    ? (i = this.adaptor.next(t))
                    : (this.adaptor.next(t) && this.stack.push([this.adaptor.next(t), e]), (i = this.adaptor.firstChild(t)), (e = (e || this.ignoreHtmlClass.exec(r)) && !o)),
                  [i, e]
                )
              }),
              (t.prototype.handleOther = function (t, e) {
                return this.pushString(), this.adaptor.next(t)
              }),
              (t.prototype.find = function (t) {
                var e, r
                this.init()
                for (var o = this.adaptor.next(t), i = !1, s = this.options.includeHtmlTags; t && t !== o; ) {
                  var a = this.adaptor.kind(t)
                  '#text' === a ? (t = this.handleText(t, i)) : s.hasOwnProperty(a) ? (t = this.handleTag(t, i)) : a ? ((t = (e = n(this.handleContainer(t, i), 2))[0]), (i = e[1])) : (t = this.handleOther(t, i)),
                    !t && this.stack.length && (this.pushString(), (t = (r = n(this.stack.pop(), 2))[0]), (i = r[1]))
                }
                this.pushString()
                var l = [this.strings, this.nodes]
                return this.init(), l
              }),
              (t.OPTIONS = {
                skipHtmlTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code', 'annotation', 'annotation-xml'],
                includeHtmlTags: { br: '\n', wbr: '', '#comment': '' },
                ignoreHtmlClass: 'mathjax_ignore',
                processHtmlClass: 'mathjax_process'
              }),
              t
            )
          })()
        e.HTMLDomStrings = i
      },
      3726: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HTMLHandler = void 0)
        var i = r(3670),
          s = r(3683),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.documentClass = s.HTMLDocument), e
            }
            return (
              o(e, t),
              (e.prototype.handlesDocument = function (t) {
                var 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
              }),
              (e.prototype.create = function (e, r) {
                var n = this.adaptor
                if ('string' == typeof e) e = n.parse(e, 'text/html')
                else if (e instanceof n.window.HTMLElement || e instanceof n.window.DocumentFragment) {
                  var o = e
                  ;(e = n.parse('', 'text/html')), n.append(n.body(e), o)
                }
                return t.prototype.create.call(this, e, r)
              }),
              e
            )
          })(i.AbstractHandler)
        e.HTMLHandler = a
      },
      3363: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HTMLMathItem = void 0)
        var i = r(4474),
          s = (function (t) {
            function e(e, r, n, o, i) {
              return void 0 === n && (n = !0), void 0 === o && (o = { node: null, n: 0, delim: '' }), void 0 === i && (i = { node: null, n: 0, delim: '' }), t.call(this, e, r, n, o, i) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'adaptor', {
                get: function () {
                  return this.inputJax.adaptor
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.updateDocument = function (t) {
                if (this.state() < i.STATE.INSERTED) {
                  if (this.inputJax.processStrings) {
                    var e = this.start.node
                    if (e === this.end.node)
                      this.end.n && this.end.n < this.adaptor.value(this.end.node).length && this.adaptor.split(this.end.node, this.end.n), this.start.n && (e = this.adaptor.split(this.start.node, this.start.n)), this.adaptor.replace(this.typesetRoot, e)
                    else {
                      for (this.start.n && (e = this.adaptor.split(e, this.start.n)); e !== this.end.node; ) {
                        var r = this.adaptor.next(e)
                        this.adaptor.remove(e), (e = r)
                      }
                      this.adaptor.insert(this.typesetRoot, e), this.end.n < this.adaptor.value(e).length && this.adaptor.split(e, this.end.n), this.adaptor.remove(e)
                    }
                  } else this.adaptor.replace(this.typesetRoot, this.start.node)
                  ;(this.start.node = this.end.node = this.typesetRoot), (this.start.n = this.end.n = 0), this.state(i.STATE.INSERTED)
                }
              }),
              (e.prototype.updateStyleSheet = function (t) {
                t.addStyleSheet()
              }),
              (e.prototype.removeFromDocument = function (t) {
                if ((void 0 === t && (t = !1), this.state() >= i.STATE.TYPESET)) {
                  var e = this.adaptor,
                    r = this.start.node,
                    n = e.text('')
                  if (t) {
                    var o = this.start.delim + this.math + this.end.delim
                    if (this.inputJax.processStrings) n = e.text(o)
                    else {
                      var s = e.parse(o, 'text/html')
                      n = e.firstChild(e.body(s))
                    }
                  }
                  e.parent(r) && e.replace(n, r), (this.start.node = this.end.node = n), (this.start.n = this.end.n = 0)
                }
              }),
              e
            )
          })(i.AbstractMathItem)
        e.HTMLMathItem = s
      },
      3335: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HTMLMathList = void 0)
        var i = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return o(e, t), e
        })(r(9e3).AbstractMathList)
        e.HTMLMathList = i
      },
      2892: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathML = void 0)
        var s = r(9206),
          a = r(7233),
          l = r(7525),
          c = r(625),
          u = r(2769),
          p = (function (t) {
            function e(e) {
              void 0 === e && (e = {})
              var r = this,
                n = i((0, a.separateOptions)(e, c.FindMathML.OPTIONS, u.MathMLCompile.OPTIONS), 3),
                o = n[0],
                s = n[1],
                p = n[2]
              return ((r = t.call(this, o) || this).findMathML = r.options.FindMathML || new c.FindMathML(s)), (r.mathml = r.options.MathMLCompile || new u.MathMLCompile(p)), (r.mmlFilters = new l.FunctionList()), r
            }
            return (
              o(e, t),
              (e.prototype.setAdaptor = function (e) {
                t.prototype.setAdaptor.call(this, e), (this.findMathML.adaptor = e), (this.mathml.adaptor = e)
              }),
              (e.prototype.setMmlFactory = function (e) {
                t.prototype.setMmlFactory.call(this, e), this.mathml.setMmlFactory(e)
              }),
              Object.defineProperty(e.prototype, 'processStrings', {
                get: function () {
                  return !1
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.compile = function (t, e) {
                var r = t.start.node
                if (!r || !t.end.node || this.options.forceReparse || '#text' === this.adaptor.kind(r)) {
                  var n = this.executeFilters(this.preFilters, t, e, (t.math || '<math></math>').trim()),
                    o = this.checkForErrors(this.adaptor.parse(n, 'text/' + this.options.parseAs)),
                    i = this.adaptor.body(o)
                  1 !== this.adaptor.childNodes(i).length && this.error('MathML must consist of a single element'),
                    (r = this.adaptor.remove(this.adaptor.firstChild(i))),
                    'math' !== this.adaptor.kind(r).replace(/^[a-z]+:/, '') && this.error('MathML must be formed by a <math> element, not <' + this.adaptor.kind(r) + '>')
                }
                return (r = this.executeFilters(this.mmlFilters, t, e, r)), this.executeFilters(this.postFilters, t, e, this.mathml.compile(r))
              }),
              (e.prototype.checkForErrors = function (t) {
                var 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
              }),
              (e.prototype.error = function (t) {
                throw new Error(t)
              }),
              (e.prototype.findMath = function (t) {
                return this.findMathML.findMath(t)
              }),
              (e.NAME = 'MathML'),
              (e.OPTIONS = (0, a.defaultOptions)(
                {
                  parseAs: 'html',
                  forceReparse: !1,
                  FindMathML: null,
                  MathMLCompile: null,
                  parseError: function (t) {
                    this.error(this.adaptor.textContent(t).replace(/\n.*/g, ''))
                  }
                },
                s.AbstractInputJax.OPTIONS
              )),
              e
            )
          })(s.AbstractInputJax)
        e.MathML = p
      },
      625: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.FindMathML = void 0)
        var s = r(3494),
          a = 'http://www.w3.org/1998/Math/MathML',
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.findMath = function (t) {
                var e = new Set()
                this.findMathNodes(t, e), this.findMathPrefixed(t, e)
                var r = this.adaptor.root(this.adaptor.document)
                return 'html' === this.adaptor.kind(r) && 0 === e.size && this.findMathNS(t, e), this.processMath(e)
              }),
              (e.prototype.findMathNodes = function (t, e) {
                var r, n
                try {
                  for (var o = i(this.adaptor.tags(t, 'math')), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value
                    e.add(a)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = o.return) && n.call(o)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (e.prototype.findMathPrefixed = function (t, e) {
                var r,
                  n,
                  o,
                  s,
                  l = this.adaptor.root(this.adaptor.document)
                try {
                  for (var c = i(this.adaptor.allAttributes(l)), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value
                    if ('xmlns:' === p.name.substr(0, 6) && p.value === a) {
                      var h = p.name.substr(6)
                      try {
                        for (var f = ((o = void 0), i(this.adaptor.tags(t, h + ':math'))), d = f.next(); !d.done; d = f.next()) {
                          var m = d.value
                          e.add(m)
                        }
                      } catch (t) {
                        o = { error: t }
                      } finally {
                        try {
                          d && !d.done && (s = f.return) && s.call(f)
                        } finally {
                          if (o) throw o.error
                        }
                      }
                    }
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    u && !u.done && (n = c.return) && n.call(c)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (e.prototype.findMathNS = function (t, e) {
                var r, n
                try {
                  for (var o = i(this.adaptor.tags(t, 'math', a)), s = o.next(); !s.done; s = o.next()) {
                    var l = s.value
                    e.add(l)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = o.return) && n.call(o)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (e.prototype.processMath = function (t) {
                var e,
                  r,
                  n = []
                try {
                  for (var o = i(Array.from(t)), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value,
                      l = 'block' === this.adaptor.getAttribute(a, 'display') || 'display' === this.adaptor.getAttribute(a, 'mode'),
                      c = { node: a, n: 0, delim: '' },
                      u = { node: a, n: 0, delim: '' }
                    n.push({ math: this.adaptor.outerHTML(a), start: c, end: u, display: l })
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = o.return) && r.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return n
              }),
              (e.OPTIONS = {}),
              e
            )
          })(s.AbstractFindMath)
        e.FindMathML = l
      },
      2769: function (t, e, r) {
        var n =
            (this && this.__assign) ||
            function () {
              return (
                (n =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                n.apply(this, arguments)
              )
            },
          o =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          i =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          s =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && o(e, t, r)
              return i(e, t), e
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathMLCompile = void 0)
        var l = r(9007),
          c = r(7233),
          u = s(r(5368)),
          p = (function () {
            function t(t) {
              void 0 === t && (t = {})
              var e = this.constructor
              this.options = (0, c.userOptions)((0, c.defaultOptions)({}, e.OPTIONS), t)
            }
            return (
              (t.prototype.setMmlFactory = function (t) {
                this.factory = t
              }),
              (t.prototype.compile = function (t) {
                var e = this.makeNode(t)
                return e.verifyTree(this.options.verify), e.setInheritedAttributes({}, !1, 0, !1), e.walkTree(this.markMrows), e
              }),
              (t.prototype.makeNode = function (t) {
                var e,
                  r,
                  n = this.adaptor,
                  o = !1,
                  i = n.kind(t).replace(/^.*:/, ''),
                  s = n.getAttribute(t, 'data-mjx-texclass') || ''
                s && (s = this.filterAttribute('data-mjx-texclass', s) || '')
                var c = s && 'mrow' === i ? 'TeXAtom' : i
                try {
                  for (var u = a(this.filterClassList(n.allClasses(t))), p = u.next(); !p.done; p = u.next()) {
                    var h = p.value
                    h.match(/^MJX-TeXAtom-/) && 'mrow' === i ? ((s = h.substr(12)), (c = 'TeXAtom')) : 'MJX-fixedlimits' === h && (o = !0)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    p && !p.done && (r = u.return) && r.call(u)
                  } finally {
                    if (e) throw e.error
                  }
                }
                this.factory.getNodeClass(c) || this.error('Unknown node type "' + c + '"')
                var f = this.factory.create(c)
                return (
                  'TeXAtom' !== c || 'OP' !== s || o || (f.setProperty('movesupsub', !0), f.attributes.setInherited('movablelimits', !0)),
                  s && ((f.texClass = l.TEXCLASS[s]), f.setProperty('texClass', f.texClass)),
                  this.addAttributes(f, t),
                  this.checkClass(f, t),
                  this.addChildren(f, t),
                  f
                )
              }),
              (t.prototype.addAttributes = function (t, e) {
                var r,
                  n,
                  o = !1
                try {
                  for (var i = a(this.adaptor.allAttributes(e)), s = i.next(); !s.done; s = i.next()) {
                    var l = s.value,
                      c = l.name,
                      u = this.filterAttribute(c, l.value)
                    if (null !== u && 'xmlns' !== c)
                      if ('data-mjx-' === c.substr(0, 9))
                        switch (c.substr(9)) {
                          case 'alternate':
                            t.setProperty('variantForm', !0)
                            break
                          case 'variant':
                            t.attributes.set('mathvariant', u), (o = !0)
                            break
                          case 'smallmatrix':
                            t.setProperty('scriptlevel', 1), t.setProperty('useHeight', !1)
                            break
                          case 'accent':
                            t.setProperty('mathaccent', 'true' === u)
                            break
                          case 'auto-op':
                            t.setProperty('autoOP', 'true' === u)
                            break
                          case 'script-align':
                            t.setProperty('scriptalign', u)
                        }
                      else if ('class' !== c) {
                        var p = u.toLowerCase()
                        'true' === p || 'false' === p ? t.attributes.set(c, 'true' === p) : (o && 'mathvariant' === c) || t.attributes.set(c, u)
                      }
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = i.return) && n.call(i)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (t.prototype.filterAttribute = function (t, e) {
                return e
              }),
              (t.prototype.filterClassList = function (t) {
                return t
              }),
              (t.prototype.addChildren = function (t, e) {
                var r, n
                if (0 !== t.arity) {
                  var o = this.adaptor
                  try {
                    for (var i = a(o.childNodes(e)), s = i.next(); !s.done; s = i.next()) {
                      var l = s.value,
                        c = o.kind(l)
                      if ('#comment' !== c)
                        if ('#text' === c) this.addText(t, l)
                        else if (t.isKind('annotation-xml')) t.appendChild(this.factory.create('XML').setXML(l, o))
                        else {
                          var u = t.appendChild(this.makeNode(l))
                          0 === u.arity && o.childNodes(l).length && (this.options.fixMisplacedChildren ? this.addChildren(t, l) : u.mError('There should not be children for ' + u.kind + ' nodes', this.options.verify, !0))
                        }
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      s && !s.done && (n = i.return) && n.call(i)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                }
              }),
              (t.prototype.addText = function (t, e) {
                var r = this.adaptor.value(e)
                ;(t.isToken || t.getProperty('isChars')) && t.arity ? (t.isToken && ((r = u.translate(r)), (r = this.trimSpace(r))), t.appendChild(this.factory.create('text').setText(r))) : r.match(/\S/) && this.error('Unexpected text node "' + r + '"')
              }),
              (t.prototype.checkClass = function (t, e) {
                var r,
                  n,
                  o = []
                try {
                  for (var i = a(this.filterClassList(this.adaptor.allClasses(e))), s = i.next(); !s.done; s = i.next()) {
                    var l = s.value
                    'MJX-' === l.substr(0, 4) ? ('MJX-variant' === l ? t.setProperty('variantForm', !0) : 'MJX-TeXAtom' !== l.substr(0, 11) && t.attributes.set('mathvariant', this.fixCalligraphic(l.substr(3)))) : o.push(l)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = i.return) && n.call(i)
                  } finally {
                    if (r) throw r.error
                  }
                }
                o.length && t.attributes.set('class', o.join(' '))
              }),
              (t.prototype.fixCalligraphic = function (t) {
                return t.replace(/caligraphic/, 'calligraphic')
              }),
              (t.prototype.markMrows = function (t) {
                if (t.isKind('mrow') && !t.isInferred && t.childNodes.length >= 2) {
                  var e = t.childNodes[0],
                    r = t.childNodes[t.childNodes.length - 1]
                  e.isKind('mo') &&
                    e.attributes.get('fence') &&
                    e.attributes.get('stretchy') &&
                    r.isKind('mo') &&
                    r.attributes.get('fence') &&
                    r.attributes.get('stretchy') &&
                    (e.childNodes.length && t.setProperty('open', e.getText()), r.childNodes.length && t.setProperty('close', r.getText()))
                }
              }),
              (t.prototype.trimSpace = function (t) {
                return t
                  .replace(/[\t\n\r]/g, ' ')
                  .replace(/^ +/, '')
                  .replace(/ +$/, '')
                  .replace(/  +/g, ' ')
              }),
              (t.prototype.error = function (t) {
                throw new Error(t)
              }),
              (t.OPTIONS = { MmlFactory: null, fixMisplacedChildren: !0, verify: n({}, l.AbstractMmlNode.verifyDefaults), translateEntities: !0 }),
              t
            )
          })()
        e.MathMLCompile = p
      },
      8462: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.TeX = void 0)
        var l = r(9206),
          c = r(7233),
          u = r(7073),
          p = a(r(4676)),
          h = a(r(1256)),
          f = a(r(8417)),
          d = a(r(3971)),
          m = a(r(8562)),
          y = r(6521),
          g = r(9899)
        r(2942)
        var b = (function (t) {
          function e(r) {
            void 0 === r && (r = {})
            var n = this,
              o = s((0, c.separateOptions)(r, e.OPTIONS, u.FindTeX.OPTIONS), 3),
              i = o[0],
              a = o[1],
              l = o[2]
            ;(n = t.call(this, a) || this).findTeX = n.options.FindTeX || new u.FindTeX(l)
            var h = n.options.packages,
              f = (n.configuration = e.configure(h)),
              d = (n._parseOptions = new m.default(f, [n.options, y.TagsFactory.OPTIONS]))
            return (
              (0, c.userOptions)(d.options, i),
              f.config(n),
              e.tags(d, f),
              n.postFilters.add(p.default.cleanSubSup, -6),
              n.postFilters.add(p.default.setInherited, -5),
              n.postFilters.add(p.default.moveLimits, -4),
              n.postFilters.add(p.default.cleanStretchy, -3),
              n.postFilters.add(p.default.cleanAttributes, -2),
              n.postFilters.add(p.default.combineRelations, -1),
              n
            )
          }
          return (
            o(e, t),
            (e.configure = function (t) {
              var e = new g.ParserConfiguration(t, ['tex'])
              return e.init(), e
            }),
            (e.tags = function (t, e) {
              y.TagsFactory.addTags(e.tags), y.TagsFactory.setDefault(t.options.tags), (t.tags = y.TagsFactory.getDefault()), (t.tags.configuration = t)
            }),
            (e.prototype.setMmlFactory = function (e) {
              t.prototype.setMmlFactory.call(this, e), this._parseOptions.nodeFactory.setMmlFactory(e)
            }),
            Object.defineProperty(e.prototype, 'parseOptions', {
              get: function () {
                return this._parseOptions
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.reset = function (t) {
              void 0 === t && (t = 0), this.parseOptions.tags.reset(t)
            }),
            (e.prototype.compile = function (t, e) {
              this.parseOptions.clear(), this.executeFilters(this.preFilters, t, e, this.parseOptions)
              var r,
                n,
                o = t.display
              ;(this.latex = t.math), this.parseOptions.tags.startEquation(t)
              try {
                var i = new f.default(this.latex, { display: o, isInner: !1 }, this.parseOptions)
                ;(r = i.mml()), (n = i.stack.global)
              } catch (t) {
                if (!(t instanceof d.default)) throw t
                ;(this.parseOptions.error = !0), (r = this.options.formatError(this, t))
              }
              return (
                (r = this.parseOptions.nodeFactory.create('node', 'math', [r])),
                (null == n ? void 0 : n.indentalign) && h.default.setAttribute(r, 'indentalign', n.indentalign),
                o && h.default.setAttribute(r, 'display', 'block'),
                this.parseOptions.tags.finishEquation(t),
                (this.parseOptions.root = r),
                this.executeFilters(this.postFilters, t, e, this.parseOptions),
                (this.mathNode = this.parseOptions.root),
                this.mathNode
              )
            }),
            (e.prototype.findMath = function (t) {
              return this.findTeX.findMath(t)
            }),
            (e.prototype.formatError = function (t) {
              var e = t.message.replace(/\n.*/, '')
              return this.parseOptions.nodeFactory.create('error', e, t.id, this.latex)
            }),
            (e.NAME = 'TeX'),
            (e.OPTIONS = i(i({}, l.AbstractInputJax.OPTIONS), {
              FindTeX: null,
              packages: ['base'],
              digits: /^(?:[0-9]+(?:\{,\}[0-9]{3})*(?:\.[0-9]*)?|\.[0-9]+)/,
              maxBuffer: 5120,
              formatError: function (t, e) {
                return t.formatError(e)
              }
            })),
            e
          )
        })(l.AbstractInputJax)
        e.TeX = b
      },
      9899: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ParserConfiguration = e.ConfigurationHandler = e.Configuration = void 0)
        var i,
          s = r(7233),
          a = r(2947),
          l = r(7525),
          c = r(8666),
          u = r(6521),
          p = (function () {
            function t(t, e, r, n, o, i, s, a, l, c, u, p, h) {
              void 0 === e && (e = {}),
                void 0 === r && (r = {}),
                void 0 === n && (n = {}),
                void 0 === o && (o = {}),
                void 0 === i && (i = {}),
                void 0 === s && (s = {}),
                void 0 === a && (a = []),
                void 0 === l && (l = []),
                void 0 === c && (c = null),
                void 0 === u && (u = null),
                (this.name = t),
                (this.handler = e),
                (this.fallback = r),
                (this.items = n),
                (this.tags = o),
                (this.options = i),
                (this.nodes = s),
                (this.preprocessors = a),
                (this.postprocessors = l),
                (this.initMethod = c),
                (this.configMethod = u),
                (this.priority = p),
                (this.parser = h),
                (this.handler = Object.assign({ character: [], delimiter: [], macro: [], environment: [] }, e))
            }
            return (
              (t.makeProcessor = function (t, e) {
                return Array.isArray(t) ? t : [t, e]
              }),
              (t._create = function (e, r) {
                var n = this
                void 0 === r && (r = {})
                var o = r.priority || c.PrioritizedList.DEFAULTPRIORITY,
                  i = r.init ? this.makeProcessor(r.init, o) : null,
                  s = r.config ? this.makeProcessor(r.config, o) : null,
                  a = (r.preprocessors || []).map(function (t) {
                    return n.makeProcessor(t, o)
                  }),
                  l = (r.postprocessors || []).map(function (t) {
                    return n.makeProcessor(t, o)
                  }),
                  u = r.parser || 'tex'
                return new t(e, r.handler || {}, r.fallback || {}, r.items || {}, r.tags || {}, r.options || {}, r.nodes || {}, a, l, i, s, o, u)
              }),
              (t.create = function (e, r) {
                void 0 === r && (r = {})
                var n = t._create(e, r)
                return i.set(e, n), n
              }),
              (t.local = function (e) {
                return void 0 === e && (e = {}), t._create('', e)
              }),
              Object.defineProperty(t.prototype, 'init', {
                get: function () {
                  return this.initMethod ? this.initMethod[0] : null
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(t.prototype, 'config', {
                get: function () {
                  return this.configMethod ? this.configMethod[0] : null
                },
                enumerable: !1,
                configurable: !0
              }),
              t
            )
          })()
        ;(e.Configuration = p),
          (function (t) {
            var e = new Map()
            ;(t.set = function (t, r) {
              e.set(t, r)
            }),
              (t.get = function (t) {
                return e.get(t)
              }),
              (t.keys = function () {
                return e.keys()
              })
          })((i = e.ConfigurationHandler || (e.ConfigurationHandler = {})))
        var h = (function () {
          function t(t, e) {
            var r, o, i, s
            void 0 === e && (e = ['tex']),
              (this.initMethod = new l.FunctionList()),
              (this.configMethod = new l.FunctionList()),
              (this.configurations = new c.PrioritizedList()),
              (this.parsers = []),
              (this.handlers = new a.SubHandlers()),
              (this.items = {}),
              (this.tags = {}),
              (this.options = {}),
              (this.nodes = {}),
              (this.parsers = e)
            try {
              for (var u = n(t.slice().reverse()), p = u.next(); !p.done; p = u.next()) {
                var h = p.value
                this.addPackage(h)
              }
            } catch (t) {
              r = { error: t }
            } finally {
              try {
                p && !p.done && (o = u.return) && o.call(u)
              } finally {
                if (r) throw r.error
              }
            }
            try {
              for (var f = n(this.configurations), d = f.next(); !d.done; d = f.next()) {
                var m = d.value,
                  y = m.item,
                  g = m.priority
                this.append(y, g)
              }
            } catch (t) {
              i = { error: t }
            } finally {
              try {
                d && !d.done && (s = f.return) && s.call(f)
              } finally {
                if (i) throw i.error
              }
            }
          }
          return (
            (t.prototype.init = function () {
              this.initMethod.execute(this)
            }),
            (t.prototype.config = function (t) {
              var e, r
              this.configMethod.execute(this, t)
              try {
                for (var o = n(this.configurations), i = o.next(); !i.done; i = o.next()) {
                  var s = i.value
                  this.addFilters(t, s.item)
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  i && !i.done && (r = o.return) && r.call(o)
                } finally {
                  if (e) throw e.error
                }
              }
            }),
            (t.prototype.addPackage = function (t) {
              var e = 'string' == typeof t ? t : t[0],
                r = this.getPackage(e)
              r && this.configurations.add(r, 'string' == typeof t ? r.priority : t[1])
            }),
            (t.prototype.add = function (t, e, r) {
              var o, i
              void 0 === r && (r = {})
              var a = this.getPackage(t)
              this.append(a), this.configurations.add(a, a.priority), this.init()
              var l = e.parseOptions
              l.nodeFactory.setCreators(a.nodes)
              try {
                for (var c = n(Object.keys(a.items)), p = c.next(); !p.done; p = c.next()) {
                  var h = p.value
                  l.itemFactory.setNodeClass(h, a.items[h])
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  p && !p.done && (i = c.return) && i.call(c)
                } finally {
                  if (o) throw o.error
                }
              }
              u.TagsFactory.addTags(a.tags), (0, s.defaultOptions)(l.options, a.options), (0, s.userOptions)(l.options, r), this.addFilters(e, a), a.config && a.config(this, e)
            }),
            (t.prototype.getPackage = function (t) {
              var e = i.get(t)
              if (e && this.parsers.indexOf(e.parser) < 0) throw Error('Package '.concat(t, " doesn't target the proper parser"))
              return e
            }),
            (t.prototype.append = function (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),
                (0, s.defaultOptions)(this.options, t.options),
                Object.assign(this.nodes, t.nodes)
            }),
            (t.prototype.addFilters = function (t, e) {
              var r, i, s, a
              try {
                for (var l = n(e.preprocessors), c = l.next(); !c.done; c = l.next()) {
                  var u = o(c.value, 2),
                    p = u[0],
                    h = u[1]
                  t.preFilters.add(p, h)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  c && !c.done && (i = l.return) && i.call(l)
                } finally {
                  if (r) throw r.error
                }
              }
              try {
                for (var f = n(e.postprocessors), d = f.next(); !d.done; d = f.next()) {
                  var m = o(d.value, 2),
                    y = m[0]
                  h = m[1]
                  t.postFilters.add(y, h)
                }
              } catch (t) {
                s = { error: t }
              } finally {
                try {
                  d && !d.done && (a = f.return) && a.call(f)
                } finally {
                  if (s) throw s.error
                }
              }
            }),
            t
          )
        })()
        e.ParserConfiguration = h
      },
      4676: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var i,
          s = r(9007),
          a = o(r(1256))
        !(function (t) {
          ;(t.cleanStretchy = function (t) {
            var e,
              r,
              o = t.data
            try {
              for (var i = n(o.getList('fixStretchy')), s = i.next(); !s.done; s = i.next()) {
                var l = s.value
                if (a.default.getProperty(l, 'fixStretchy')) {
                  var c = a.default.getForm(l)
                  c && c[3] && c[3].stretchy && a.default.setAttribute(l, 'stretchy', !1)
                  var u = l.parent
                  if (!(a.default.getTexClass(l) || (c && c[2]))) {
                    var p = o.nodeFactory.create('node', 'TeXAtom', [l])
                    u.replaceChild(p, l), p.inheritAttributesFrom(l)
                  }
                  a.default.removeProperties(l, 'fixStretchy')
                }
              }
            } catch (t) {
              e = { error: t }
            } finally {
              try {
                s && !s.done && (r = i.return) && r.call(i)
              } finally {
                if (e) throw e.error
              }
            }
          }),
            (t.cleanAttributes = function (t) {
              t.data.root.walkTree(function (t, e) {
                var r,
                  o,
                  i = t.attributes
                if (i) {
                  var s = new Set((i.get('mjx-keep-attrs') || '').split(/ /))
                  delete i.getAllAttributes()['mjx-keep-attrs']
                  try {
                    for (var a = n(i.getExplicitNames()), l = a.next(); !l.done; l = a.next()) {
                      var c = l.value
                      s.has(c) || i.attributes[c] !== t.attributes.getInherited(c) || delete i.attributes[c]
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      l && !l.done && (o = a.return) && o.call(a)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                }
              }, {})
            }),
            (t.combineRelations = function (t) {
              var o,
                i,
                l,
                c,
                u = []
              try {
                for (var p = n(t.data.getList('mo')), h = p.next(); !h.done; h = p.next()) {
                  var f = h.value
                  if (!f.getProperty('relationsCombined') && f.parent && (!f.parent || a.default.isType(f.parent, 'mrow')) && a.default.getTexClass(f) === s.TEXCLASS.REL) {
                    for (var d = f.parent, m = void 0, y = d.childNodes, g = y.indexOf(f) + 1, b = a.default.getProperty(f, 'variantForm'); g < y.length && (m = y[g]) && a.default.isType(m, 'mo') && a.default.getTexClass(m) === s.TEXCLASS.REL; ) {
                      if (b !== a.default.getProperty(m, 'variantForm') || !r(f, m)) {
                        null == f.attributes.getExplicit('rspace') && a.default.setAttribute(f, 'rspace', '0pt'), null == m.attributes.getExplicit('lspace') && a.default.setAttribute(m, 'lspace', '0pt')
                        break
                      }
                      a.default.appendChildren(f, a.default.getChildren(m)), e(['stretchy', 'rspace'], f, m)
                      try {
                        for (var v = ((l = void 0), n(m.getPropertyNames())), _ = v.next(); !_.done; _ = v.next()) {
                          var S = _.value
                          f.setProperty(S, m.getProperty(S))
                        }
                      } catch (t) {
                        l = { error: t }
                      } finally {
                        try {
                          _ && !_.done && (c = v.return) && c.call(v)
                        } finally {
                          if (l) throw l.error
                        }
                      }
                      y.splice(g, 1), u.push(m), (m.parent = null), m.setProperty('relationsCombined', !0)
                    }
                    f.attributes.setInherited('form', f.getForms()[0])
                  }
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  h && !h.done && (i = p.return) && i.call(p)
                } finally {
                  if (o) throw o.error
                }
              }
              t.data.removeFromList('mo', u)
            })
          var e = function (t, e, r) {
              var n = e.attributes,
                o = r.attributes
              t.forEach(function (t) {
                var e = o.getExplicit(t)
                null != e && n.set(t, e)
              })
            },
            r = function (t, e) {
              var r,
                o,
                i = function (t, e) {
                  return t.getExplicitNames().filter(function (r) {
                    return r !== e && ('stretchy' !== r || t.getExplicit('stretchy'))
                  })
                },
                s = t.attributes,
                a = e.attributes,
                l = i(s, 'lspace'),
                c = i(a, 'rspace')
              if (l.length !== c.length) return !1
              try {
                for (var u = n(l), p = u.next(); !p.done; p = u.next()) {
                  var h = p.value
                  if (s.getExplicit(h) !== a.getExplicit(h)) return !1
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  p && !p.done && (o = u.return) && o.call(u)
                } finally {
                  if (r) throw r.error
                }
              }
              return !0
            },
            o = function (t, e, r) {
              var o,
                i,
                s = []
              try {
                for (var l = n(t.getList('m' + e + r)), c = l.next(); !c.done; c = l.next()) {
                  var u = c.value,
                    p = u.childNodes
                  if (!p[u[e]] || !p[u[r]]) {
                    var h = u.parent,
                      f = p[u[e]] ? t.nodeFactory.create('node', 'm' + e, [p[u.base], p[u[e]]]) : t.nodeFactory.create('node', 'm' + r, [p[u.base], p[u[r]]])
                    a.default.copyAttributes(u, f), h ? h.replaceChild(f, u) : (t.root = f), s.push(u)
                  }
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  c && !c.done && (i = l.return) && i.call(l)
                } finally {
                  if (o) throw o.error
                }
              }
              t.removeFromList('m' + e + r, s)
            }
          t.cleanSubSup = function (t) {
            var e = t.data
            e.error || (o(e, 'sub', 'sup'), o(e, 'under', 'over'))
          }
          var i = function (t, e, r) {
            var o,
              i,
              s = []
            try {
              for (var l = n(t.getList(e)), c = l.next(); !c.done; c = l.next()) {
                var u = c.value
                if (!u.attributes.get('displaystyle')) {
                  var p = u.childNodes[u.base],
                    h = p.coreMO()
                  if (p.getProperty('movablelimits') && !h.attributes.getExplicit('movablelimits')) {
                    var f = t.nodeFactory.create('node', r, u.childNodes)
                    a.default.copyAttributes(u, f), u.parent ? u.parent.replaceChild(f, u) : (t.root = f), s.push(u)
                  }
                }
              }
            } catch (t) {
              o = { error: t }
            } finally {
              try {
                c && !c.done && (i = l.return) && i.call(l)
              } finally {
                if (o) throw o.error
              }
            }
            t.removeFromList(e, s)
          }
          ;(t.moveLimits = function (t) {
            var e = t.data
            i(e, 'munderover', 'msubsup'), i(e, 'munder', 'msub'), i(e, 'mover', 'msup')
          }),
            (t.setInherited = function (t) {
              t.data.root.setInheritedAttributes({}, t.math.display, 0, !1)
            })
        })(i || (i = {})),
          (e.default = i)
      },
      7073: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.FindTeX = void 0)
        var s = r(3494),
          a = r(505),
          l = r(4474),
          c = (function (t) {
            function e(e) {
              var r = t.call(this, e) || this
              return r.getPatterns(), r
            }
            return (
              o(e, t),
              (e.prototype.getPatterns = function () {
                var t = this,
                  e = this.options,
                  r = [],
                  n = [],
                  o = []
                ;(this.end = {}), (this.env = this.sub = 0)
                var i = 1
                e.inlineMath.forEach(function (e) {
                  return t.addPattern(r, e, !1)
                }),
                  e.displayMath.forEach(function (e) {
                    return t.addPattern(r, e, !0)
                  }),
                  r.length && n.push(r.sort(a.sortLength).join('|')),
                  e.processEnvironments && (n.push('\\\\begin\\s*\\{([^}]*)\\}'), (this.env = i), i++),
                  e.processEscapes && o.push('\\\\([\\\\$])'),
                  e.processRefs && o.push('(\\\\(?:eq)?ref\\s*\\{[^}]*\\})'),
                  o.length && (n.push('(' + o.join('|') + ')'), (this.sub = i)),
                  (this.start = new RegExp(n.join('|'), 'g')),
                  (this.hasPatterns = n.length > 0)
              }),
              (e.prototype.addPattern = function (t, e, r) {
                var n = i(e, 2),
                  o = n[0],
                  s = n[1]
                t.push((0, a.quotePattern)(o)), (this.end[o] = [s, r, this.endPattern(s)])
              }),
              (e.prototype.endPattern = function (t, e) {
                return new RegExp((e || (0, a.quotePattern)(t)) + '|\\\\(?:[a-zA-Z]|.)|[{}]', 'g')
              }),
              (e.prototype.findEnd = function (t, e, r, n) {
                for (var o, s = i(n, 3), a = s[0], c = s[1], u = s[2], p = (u.lastIndex = r.index + r[0].length), h = 0; (o = u.exec(t)); ) {
                  if ((o[1] || o[0]) === a && 0 === h) return (0, l.protoItem)(r[0], t.substr(p, o.index - p), o[0], e, r.index, o.index + o[0].length, c)
                  '{' === o[0] ? h++ : '}' === o[0] && h && h--
                }
                return null
              }),
              (e.prototype.findMathInString = function (t, e, r) {
                var n, o
                for (this.start.lastIndex = 0; (n = this.start.exec(r)); ) {
                  if (void 0 !== n[this.env] && this.env) {
                    var i = '\\\\end\\s*(\\{' + (0, a.quotePattern)(n[this.env]) + '\\})'
                    ;(o = this.findEnd(r, e, n, ['{' + n[this.env] + '}', !0, this.endPattern(null, i)])) && ((o.math = o.open + o.math + o.close), (o.open = o.close = ''))
                  } else if (void 0 !== n[this.sub] && this.sub) {
                    var s = n[this.sub]
                    i = n.index + n[this.sub].length
                    o = 2 === s.length ? (0, l.protoItem)('', s.substr(1), '', e, n.index, i) : (0, l.protoItem)('', s, '', e, n.index, i, !1)
                  } else o = this.findEnd(r, e, n, this.end[n[0]])
                  o && (t.push(o), (this.start.lastIndex = o.end.n))
                }
              }),
              (e.prototype.findMath = function (t) {
                var e = []
                if (this.hasPatterns) for (var r = 0, n = t.length; r < n; r++) this.findMathInString(e, r, t[r])
                return e
              }),
              (e.OPTIONS = {
                inlineMath: [['\\(', '\\)']],
                displayMath: [
                  ['$$', '$$'],
                  ['\\[', '\\]']
                ],
                processEscapes: !0,
                processEnvironments: !0,
                processRefs: !0
              }),
              e
            )
          })(s.AbstractFindMath)
        e.FindTeX = c
      },
      2947: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SubHandlers = e.SubHandler = e.MapHandler = void 0)
        var i,
          s = r(8666),
          a = r(7525)
        !(function (t) {
          var e = new Map()
          ;(t.register = function (t) {
            e.set(t.name, t)
          }),
            (t.getMap = function (t) {
              return e.get(t)
            })
        })((i = e.MapHandler || (e.MapHandler = {})))
        var l = (function () {
          function t() {
            ;(this._configuration = new s.PrioritizedList()), (this._fallback = new a.FunctionList())
          }
          return (
            (t.prototype.add = function (t, e, r) {
              var o, a
              void 0 === r && (r = s.PrioritizedList.DEFAULTPRIORITY)
              try {
                for (var l = n(t.slice().reverse()), c = l.next(); !c.done; c = l.next()) {
                  var u = c.value,
                    p = i.getMap(u)
                  if (!p) return void this.warn('Configuration ' + u + ' not found! Omitted.')
                  this._configuration.add(p, r)
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  c && !c.done && (a = l.return) && a.call(l)
                } finally {
                  if (o) throw o.error
                }
              }
              e && this._fallback.add(e, r)
            }),
            (t.prototype.parse = function (t) {
              var e, r
              try {
                for (var i = n(this._configuration), s = i.next(); !s.done; s = i.next()) {
                  var a = s.value.item.parse(t)
                  if (a) return a
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  s && !s.done && (r = i.return) && r.call(i)
                } finally {
                  if (e) throw e.error
                }
              }
              var l = o(t, 2),
                c = l[0],
                u = l[1]
              Array.from(this._fallback)[0].item(c, u)
            }),
            (t.prototype.lookup = function (t) {
              var e = this.applicable(t)
              return e ? e.lookup(t) : null
            }),
            (t.prototype.contains = function (t) {
              return !!this.applicable(t)
            }),
            (t.prototype.toString = function () {
              var t,
                e,
                r = []
              try {
                for (var o = n(this._configuration), i = o.next(); !i.done; i = o.next()) {
                  var s = i.value.item
                  r.push(s.name)
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  i && !i.done && (e = o.return) && e.call(o)
                } finally {
                  if (t) throw t.error
                }
              }
              return r.join(', ')
            }),
            (t.prototype.applicable = function (t) {
              var e, r
              try {
                for (var o = n(this._configuration), i = o.next(); !i.done; i = o.next()) {
                  var s = i.value.item
                  if (s.contains(t)) return s
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  i && !i.done && (r = o.return) && r.call(o)
                } finally {
                  if (e) throw e.error
                }
              }
              return null
            }),
            (t.prototype.retrieve = function (t) {
              var e, r
              try {
                for (var o = n(this._configuration), i = o.next(); !i.done; i = o.next()) {
                  var s = i.value.item
                  if (s.name === t) return s
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  i && !i.done && (r = o.return) && r.call(o)
                } finally {
                  if (e) throw e.error
                }
              }
              return null
            }),
            (t.prototype.warn = function (t) {
              console.log('TexParser Warning: ' + t)
            }),
            t
          )
        })()
        e.SubHandler = l
        var c = (function () {
          function t() {
            this.map = new Map()
          }
          return (
            (t.prototype.add = function (t, e, r) {
              var o, i
              void 0 === r && (r = s.PrioritizedList.DEFAULTPRIORITY)
              try {
                for (var a = n(Object.keys(t)), c = a.next(); !c.done; c = a.next()) {
                  var u = c.value,
                    p = this.get(u)
                  p || ((p = new l()), this.set(u, p)), p.add(t[u], e[u], r)
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  c && !c.done && (i = a.return) && i.call(a)
                } finally {
                  if (o) throw o.error
                }
              }
            }),
            (t.prototype.set = function (t, e) {
              this.map.set(t, e)
            }),
            (t.prototype.get = function (t) {
              return this.map.get(t)
            }),
            (t.prototype.retrieve = function (t) {
              var e, r
              try {
                for (var o = n(this.map.values()), i = o.next(); !i.done; i = o.next()) {
                  var s = i.value.retrieve(t)
                  if (s) return s
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  i && !i.done && (r = o.return) && r.call(o)
                } finally {
                  if (e) throw e.error
                }
              }
              return null
            }),
            (t.prototype.keys = function () {
              return this.map.keys()
            }),
            t
          )
        })()
        e.SubHandlers = c
      },
      8929: function (t, e, r) {
        var n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.NodeFactory = void 0)
        var s = i(r(1256)),
          a = (function () {
            function t() {
              ;(this.mmlFactory = null), (this.factory = { node: t.createNode, token: t.createToken, text: t.createText, error: t.createError })
            }
            return (
              (t.createNode = function (t, e, r, n, o) {
                void 0 === r && (r = []), void 0 === n && (n = {})
                var i = t.mmlFactory.create(e)
                return i.setChildren(r), o && i.appendChild(o), s.default.setProperties(i, n), i
              }),
              (t.createToken = function (t, e, r, n) {
                void 0 === r && (r = {}), void 0 === n && (n = '')
                var o = t.create('text', n)
                return t.create('node', e, [], r, o)
              }),
              (t.createText = function (t, e) {
                return null == e ? null : t.mmlFactory.create('text').setText(e)
              }),
              (t.createError = function (t, e) {
                var r = t.create('text', e),
                  n = t.create('node', 'mtext', [], {}, r)
                return t.create('node', 'merror', [n], { 'data-mjx-error': e })
              }),
              (t.prototype.setMmlFactory = function (t) {
                this.mmlFactory = t
              }),
              (t.prototype.set = function (t, e) {
                this.factory[t] = e
              }),
              (t.prototype.setCreators = function (t) {
                for (var e in t) this.set(e, t[e])
              }),
              (t.prototype.create = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
                var i = this.factory[t] || this.factory.node,
                  s = i.apply(void 0, o([this, e[0]], n(e.slice(1)), !1))
                return 'node' === t && this.configuration.addNode(e[0], s), s
              }),
              (t.prototype.get = function (t) {
                return this.factory[t]
              }),
              t
            )
          })()
        e.NodeFactory = a
      },
      1256: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var s,
          a = r(9007),
          l = r(2756)
        !(function (t) {
          var e = new Map([
            ['autoOP', !0],
            ['fnOP', !0],
            ['movesupsub', !0],
            ['subsupOK', !0],
            ['texprimestyle', !0],
            ['useHeight', !0],
            ['variantForm', !0],
            ['withDelims', !0],
            ['mathaccent', !0],
            ['open', !0],
            ['close', !0]
          ])
          function r(t, r) {
            var o, i
            try {
              for (var s = n(Object.keys(r)), a = s.next(); !a.done; a = s.next()) {
                var l = a.value,
                  c = r[l]
                'texClass' === l
                  ? ((t.texClass = c), t.setProperty(l, c))
                  : 'movablelimits' === l
                  ? (t.setProperty('movablelimits', c), (t.isKind('mo') || t.isKind('mstyle')) && t.attributes.set('movablelimits', c))
                  : 'inferred' === l || (e.has(l) ? t.setProperty(l, c) : t.attributes.set(l, c))
              }
            } catch (t) {
              o = { error: t }
            } finally {
              try {
                a && !a.done && (i = s.return) && i.call(s)
              } finally {
                if (o) throw o.error
              }
            }
          }
          function s(t, e, r) {
            ;(t.childNodes[e] = r), r && (r.parent = t)
          }
          function c(t, e) {
            return t.isKind(e)
          }
          ;(t.createEntity = function (t) {
            return String.fromCodePoint(parseInt(t, 16))
          }),
            (t.getChildren = function (t) {
              return t.childNodes
            }),
            (t.getText = function (t) {
              return t.getText()
            }),
            (t.appendChildren = function (t, e) {
              var r, o
              try {
                for (var i = n(e), s = i.next(); !s.done; s = i.next()) {
                  var a = s.value
                  t.appendChild(a)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  s && !s.done && (o = i.return) && o.call(i)
                } finally {
                  if (r) throw r.error
                }
              }
            }),
            (t.setAttribute = function (t, e, r) {
              t.attributes.set(e, r)
            }),
            (t.setProperty = function (t, e, r) {
              t.setProperty(e, r)
            }),
            (t.setProperties = r),
            (t.getProperty = function (t, e) {
              return t.getProperty(e)
            }),
            (t.getAttribute = function (t, e) {
              return t.attributes.get(e)
            }),
            (t.removeProperties = function (t) {
              for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
              t.removeProperty.apply(t, i([], o(e), !1))
            }),
            (t.getChildAt = function (t, e) {
              return t.childNodes[e]
            }),
            (t.setChild = s),
            (t.copyChildren = function (t, e) {
              for (var r = t.childNodes, n = 0; n < r.length; n++) s(e, n, r[n])
            }),
            (t.copyAttributes = function (t, e) {
              ;(e.attributes = t.attributes), r(e, t.getAllProperties())
            }),
            (t.isType = c),
            (t.isEmbellished = function (t) {
              return t.isEmbellished
            }),
            (t.getTexClass = function (t) {
              return t.texClass
            }),
            (t.getCoreMO = function (t) {
              return t.coreMO()
            }),
            (t.isNode = function (t) {
              return t instanceof a.AbstractMmlNode || t instanceof a.AbstractMmlEmptyNode
            }),
            (t.isInferred = function (t) {
              return t.isInferred
            }),
            (t.getForm = function (t) {
              var e, r
              if (!c(t, 'mo')) return null
              var o = t,
                i = o.getForms()
              try {
                for (var s = n(i), a = s.next(); !a.done; a = s.next()) {
                  var u = a.value,
                    p = l.MmlMo.OPTABLE[u][o.getText()]
                  if (p) return p
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  a && !a.done && (r = s.return) && r.call(s)
                } finally {
                  if (e) throw e.error
                }
              }
              return null
            })
        })(s || (s = {})),
          (e.default = s)
      },
      5450: function (t, e, r) {
        var n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var s,
          a = i(r(1256)),
          l = r(8317),
          c = i(r(1130))
        !(function (t) {
          ;(t.variable = function (t, e) {
            var r = c.default.getFontDef(t),
              n = t.stack.env
            n.multiLetterIdentifiers && '' !== n.font && ((e = t.string.substr(t.i - 1).match(n.multiLetterIdentifiers)[0]), (t.i += e.length - 1), r.mathvariant === l.TexConstant.Variant.NORMAL && n.noAutoOP && e.length > 1 && (r.autoOP = !1))
            var o = t.create('token', 'mi', r, e)
            t.Push(o)
          }),
            (t.digit = function (t, e) {
              var r,
                n = t.configuration.options.digits,
                o = t.string.slice(t.i - 1).match(n),
                i = c.default.getFontDef(t)
              o ? ((r = t.create('token', 'mn', i, o[0].replace(/[{}]/g, ''))), (t.i += o[0].length - 1)) : (r = t.create('token', 'mo', i, e)), t.Push(r)
            }),
            (t.controlSequence = function (t, e) {
              var r = t.GetCS()
              t.parse('macro', [t, r])
            }),
            (t.mathchar0mi = function (t, e) {
              var r = e.attributes || { mathvariant: l.TexConstant.Variant.ITALIC },
                n = t.create('token', 'mi', r, e.char)
              t.Push(n)
            }),
            (t.mathchar0mo = function (t, e) {
              var r = e.attributes || {}
              r.stretchy = !1
              var n = t.create('token', 'mo', r, e.char)
              a.default.setProperty(n, 'fixStretchy', !0), t.configuration.addNode('fixStretchy', n), t.Push(n)
            }),
            (t.mathchar7 = function (t, e) {
              var r = e.attributes || { mathvariant: l.TexConstant.Variant.NORMAL }
              t.stack.env.font && (r.mathvariant = t.stack.env.font)
              var n = t.create('token', 'mi', r, e.char)
              t.Push(n)
            }),
            (t.delimiter = function (t, e) {
              var r = e.attributes || {}
              r = Object.assign({ fence: !1, stretchy: !1 }, r)
              var n = t.create('token', 'mo', r, e.char)
              t.Push(n)
            }),
            (t.environment = function (t, e, r, i) {
              var s = i[0],
                a = t.itemFactory.create('begin').setProperties({ name: e, end: s })
              ;(a = r.apply(void 0, o([t, a], n(i.slice(1)), !1))), t.Push(a)
            })
        })(s || (s = {})),
          (e.default = s)
      },
      8562: function (t, e, r) {
        var n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var a = s(r(5453)),
          l = r(8929),
          c = s(r(1256)),
          u = r(7233),
          p = (function () {
            function t(t, e) {
              void 0 === e && (e = []),
                (this.options = {}),
                (this.packageData = new Map()),
                (this.parsers = []),
                (this.root = null),
                (this.nodeLists = {}),
                (this.error = !1),
                (this.handlers = t.handlers),
                (this.nodeFactory = new l.NodeFactory()),
                (this.nodeFactory.configuration = this),
                this.nodeFactory.setCreators(t.nodes),
                (this.itemFactory = new a.default(t.items)),
                (this.itemFactory.configuration = this),
                u.defaultOptions.apply(void 0, o([this.options], n(e), !1)),
                (0, u.defaultOptions)(this.options, t.options)
            }
            return (
              (t.prototype.pushParser = function (t) {
                this.parsers.unshift(t)
              }),
              (t.prototype.popParser = function () {
                this.parsers.shift()
              }),
              Object.defineProperty(t.prototype, 'parser', {
                get: function () {
                  return this.parsers[0]
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.clear = function () {
                ;(this.parsers = []), (this.root = null), (this.nodeLists = {}), (this.error = !1), this.tags.resetTag()
              }),
              (t.prototype.addNode = function (t, e) {
                var r = this.nodeLists[t]
                if ((r || (r = this.nodeLists[t] = []), r.push(e), e.kind !== t)) {
                  var n = c.default.getProperty(e, 'in-lists') || '',
                    o = (n ? n.split(/,/) : []).concat(t).join(',')
                  c.default.setProperty(e, 'in-lists', o)
                }
              }),
              (t.prototype.getList = function (t) {
                var e,
                  r,
                  n = this.nodeLists[t] || [],
                  o = []
                try {
                  for (var s = i(n), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value
                    this.inTree(l) && o.push(l)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    a && !a.done && (r = s.return) && r.call(s)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return (this.nodeLists[t] = o), o
              }),
              (t.prototype.removeFromList = function (t, e) {
                var r,
                  n,
                  o = this.nodeLists[t] || []
                try {
                  for (var s = i(e), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value,
                      c = o.indexOf(l)
                    c >= 0 && o.splice(c, 1)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    a && !a.done && (n = s.return) && n.call(s)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (t.prototype.inTree = function (t) {
                for (; t && t !== this.root; ) t = t.parent
                return !!t
              }),
              t
            )
          })()
        e.default = p
      },
      1130: function (t, e, r) {
        var n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var s,
          a = r(9007),
          l = i(r(1256)),
          c = i(r(8417)),
          u = i(r(3971)),
          p = r(5368)
        !(function (t) {
          var e = 7.2,
            r = {
              em: function (t) {
                return t
              },
              ex: function (t) {
                return 0.43 * t
              },
              pt: function (t) {
                return t / 10
              },
              pc: function (t) {
                return 1.2 * t
              },
              px: function (t) {
                return (t * e) / 72
              },
              in: function (t) {
                return t * e
              },
              cm: function (t) {
                return (t * e) / 2.54
              },
              mm: function (t) {
                return (t * e) / 25.4
              },
              mu: function (t) {
                return t / 18
              }
            },
            i = '([-+]?([.,]\\d+|\\d+([.,]\\d*)?))',
            s = '(pt|em|ex|mu|px|mm|cm|in|pc)',
            h = RegExp('^\\s*' + i + '\\s*' + s + '\\s*$'),
            f = RegExp('^\\s*' + i + '\\s*' + s + ' ?')
          function d(t, e) {
            void 0 === e && (e = !1)
            var o = t.match(e ? f : h)
            return o
              ? (function (t) {
                  var e = n(t, 3),
                    o = e[0],
                    i = e[1],
                    s = e[2]
                  if ('mu' !== i) return [o, i, s]
                  return [m(r[i](parseFloat(o || '1'))).slice(0, -2), 'em', s]
                })([o[1].replace(/,/, '.'), o[4], o[0].length])
              : [null, null, 0]
          }
          function m(t) {
            return Math.abs(t) < 6e-4 ? '0em' : t.toFixed(3).replace(/\.?0+$/, '') + 'em'
          }
          function y(t, e, r) {
            ;('{' !== e && '}' !== e) || (e = '\\' + e)
            var n = '{\\bigg' + r + ' ' + e + '}',
              o = '{\\big' + r + ' ' + e + '}'
            return new c.default('\\mathchoice' + n + o + o + o, {}, t).mml()
          }
          function g(t, e, r) {
            e = e.replace(/^\s+/, p.entities.nbsp).replace(/\s+$/, p.entities.nbsp)
            var n = t.create('text', e)
            return t.create('node', 'mtext', [], r, n)
          }
          function b(t, e, r) {
            if ((r.match(/^[a-z]/i) && e.match(/(^|[^\\])(\\\\)*\\[a-z]+$/i) && (e += ' '), e.length + r.length > t.configuration.options.maxBuffer))
              throw new u.default('MaxBufferSize', 'MathJax internal buffer size exceeded; is there a recursive macro call?')
            return e + r
          }
          function v(t, e) {
            for (; e > 0; ) (t = t.trim().slice(1, -1)), e--
            return t.trim()
          }
          function _(t, e) {
            for (var r = t.length, n = 0, o = '', i = 0, s = 0, a = !0, l = !1; i < r; ) {
              var c = t[i++]
              switch (c) {
                case ' ':
                  break
                case '{':
                  a ? s++ : ((l = !1), s > n && (s = n)), n++
                  break
                case '}':
                  n && n--, (a || l) && (s--, (l = !0)), (a = !1)
                  break
                default:
                  if (!n && -1 !== e.indexOf(c)) return [l ? 'true' : v(o, s), c, t.slice(i)]
                  ;(a = !1), (l = !1)
              }
              o += c
            }
            if (n) throw new u.default('ExtraOpenMissingClose', 'Extra open brace or missing close brace')
            return [l ? 'true' : v(o, s), '', t.slice(i)]
          }
          ;(t.matchDimen = d),
            (t.dimen2em = function (t) {
              var e = n(d(t), 2),
                o = e[0],
                i = e[1],
                s = parseFloat(o || '1'),
                a = r[i]
              return a ? a(s) : 0
            }),
            (t.Em = m),
            (t.cols = function () {
              for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
              return t
                .map(function (t) {
                  return m(t)
                })
                .join(' ')
            }),
            (t.fenced = function (t, e, r, n, o, i) {
              void 0 === o && (o = ''), void 0 === i && (i = '')
              var s,
                u = t.nodeFactory,
                p = u.create('node', 'mrow', [], { open: e, close: n, texClass: a.TEXCLASS.INNER })
              if (o) s = new c.default('\\' + o + 'l' + e, t.parser.stack.env, t).mml()
              else {
                var h = u.create('text', e)
                s = u.create('node', 'mo', [], { fence: !0, stretchy: !0, symmetric: !0, texClass: a.TEXCLASS.OPEN }, h)
              }
              if ((l.default.appendChildren(p, [s, r]), o)) s = new c.default('\\' + o + 'r' + n, t.parser.stack.env, t).mml()
              else {
                var f = u.create('text', n)
                s = u.create('node', 'mo', [], { fence: !0, stretchy: !0, symmetric: !0, texClass: a.TEXCLASS.CLOSE }, f)
              }
              return i && s.attributes.set('mathcolor', i), l.default.appendChildren(p, [s]), p
            }),
            (t.fixedFence = function (t, e, r, n) {
              var o = t.nodeFactory.create('node', 'mrow', [], { open: e, close: n, texClass: a.TEXCLASS.ORD })
              return e && l.default.appendChildren(o, [y(t, e, 'l')]), l.default.isType(r, 'mrow') ? l.default.appendChildren(o, l.default.getChildren(r)) : l.default.appendChildren(o, [r]), n && l.default.appendChildren(o, [y(t, n, 'r')]), o
            }),
            (t.mathPalette = y),
            (t.fixInitialMO = function (t, e) {
              for (var r = 0, n = e.length; r < n; r++) {
                var o = e[r]
                if (o && !l.default.isType(o, 'mspace') && (!l.default.isType(o, 'TeXAtom') || (l.default.getChildren(o)[0] && l.default.getChildren(l.default.getChildren(o)[0]).length))) {
                  if (l.default.isEmbellished(o) || (l.default.isType(o, 'TeXAtom') && l.default.getTexClass(o) === a.TEXCLASS.REL)) {
                    var i = t.nodeFactory.create('node', 'mi')
                    e.unshift(i)
                  }
                  break
                }
              }
            }),
            (t.internalMath = function (t, e, r, n) {
              if (t.configuration.options.internalMath) return t.configuration.options.internalMath(t, e, r, n)
              var o,
                i,
                s = n || t.stack.env.font,
                a = s ? { mathvariant: s } : {},
                l = [],
                p = 0,
                h = 0,
                f = '',
                d = 0
              if (e.match(/\\?[${}\\]|\\\(|\\(eq)?ref\s*\{/)) {
                for (; p < e.length; )
                  if ('$' === (o = e.charAt(p++)))
                    '$' === f && 0 === d ? ((i = t.create('node', 'TeXAtom', [new c.default(e.slice(h, p - 1), {}, t.configuration).mml()])), l.push(i), (f = ''), (h = p)) : '' === f && (h < p - 1 && l.push(g(t, e.slice(h, p - 1), a)), (f = '$'), (h = p))
                  else if ('{' === o && '' !== f) d++
                  else if ('}' === o)
                    if ('}' === f && 0 === d) {
                      var m = new c.default(e.slice(h, p), {}, t.configuration).mml()
                      ;(i = t.create('node', 'TeXAtom', [m], a)), l.push(i), (f = ''), (h = p)
                    } else '' !== f && d && d--
                  else if ('\\' === o)
                    if ('' === f && e.substr(p).match(/^(eq)?ref\s*\{/)) {
                      var y = RegExp['$&'].length
                      h < p - 1 && l.push(g(t, e.slice(h, p - 1), a)), (f = '}'), (h = p - 1), (p += y)
                    } else
                      '(' === (o = e.charAt(p++)) && '' === f
                        ? (h < p - 2 && l.push(g(t, e.slice(h, p - 2), a)), (f = ')'), (h = p))
                        : ')' === o && ')' === f && 0 === d
                        ? ((i = t.create('node', 'TeXAtom', [new c.default(e.slice(h, p - 2), {}, t.configuration).mml()])), l.push(i), (f = ''), (h = p))
                        : o.match(/[${}\\]/) && '' === f && (p--, (e = e.substr(0, p - 1) + e.substr(p)))
                if ('' !== f) throw new u.default('MathNotTerminated', 'Math not terminated in text box')
              }
              return h < e.length && l.push(g(t, e.slice(h), a)), null != r ? (l = [t.create('node', 'mstyle', l, { displaystyle: !1, scriptlevel: r })]) : l.length > 1 && (l = [t.create('node', 'mrow', l)]), l
            }),
            (t.internalText = g),
            (t.underOver = function (e, r, n, o, i) {
              if ((t.checkMovableLimits(r), l.default.isType(r, 'munderover') && l.default.isEmbellished(r))) {
                l.default.setProperties(l.default.getCoreMO(r), { lspace: 0, rspace: 0 })
                var s = e.create('node', 'mo', [], { rspace: 0 })
                r = e.create('node', 'mrow', [s, r])
              }
              var c = e.create('node', 'munderover', [r])
              l.default.setChild(c, 'over' === o ? c.over : c.under, n)
              var u = c
              return i && (u = e.create('node', 'TeXAtom', [c], { texClass: a.TEXCLASS.OP, movesupsub: !0 })), l.default.setProperty(u, 'subsupOK', !0), u
            }),
            (t.checkMovableLimits = function (t) {
              var e = l.default.isType(t, 'mo') ? l.default.getForm(t) : null
              ;(l.default.getProperty(t, 'movablelimits') || (e && e[3] && e[3].movablelimits)) && l.default.setProperties(t, { movablelimits: !1 })
            }),
            (t.trimSpaces = function (t) {
              if ('string' != typeof t) return t
              var e = t.trim()
              return e.match(/\\$/) && t.match(/ $/) && (e += ' '), e
            }),
            (t.setArrayAlign = function (e, r) {
              return 't' === (r = t.trimSpaces(r || '')) ? (e.arraydef.align = 'baseline 1') : 'b' === r ? (e.arraydef.align = 'baseline -1') : 'c' === r ? (e.arraydef.align = 'axis') : r && (e.arraydef.align = r), e
            }),
            (t.substituteArgs = function (t, e, r) {
              for (var n = '', o = '', i = 0; i < r.length; ) {
                var s = r.charAt(i++)
                if ('\\' === s) n += s + r.charAt(i++)
                else if ('#' === s)
                  if ('#' === (s = r.charAt(i++))) n += s
                  else {
                    if (!s.match(/[1-9]/) || parseInt(s, 10) > e.length) throw new u.default('IllegalMacroParam', 'Illegal macro parameter reference')
                    ;(o = b(t, b(t, o, n), e[parseInt(s, 10) - 1])), (n = '')
                  }
                else n += s
              }
              return b(t, o, n)
            }),
            (t.addArgs = b),
            (t.checkMaxMacros = function (t, e) {
              if ((void 0 === e && (e = !0), !(++t.macroCount <= t.configuration.options.maxMacros)))
                throw e
                  ? new u.default('MaxMacroSub1', 'MathJax maximum macro substitution count exceeded; is here a recursive macro call?')
                  : new u.default('MaxMacroSub2', 'MathJax maximum substitution count exceeded; is there a recursive latex environment?')
            }),
            (t.checkEqnEnv = function (t) {
              if (t.stack.global.eqnenv) throw new u.default('ErroneousNestingEq', 'Erroneous nesting of equation structures')
              t.stack.global.eqnenv = !0
            }),
            (t.copyNode = function (t, e) {
              var r = t.copy(),
                n = e.configuration
              return (
                r.walkTree(function (t) {
                  var e, r
                  n.addNode(t.kind, t)
                  var i = (t.getProperty('in-lists') || '').split(/,/)
                  try {
                    for (var s = o(i), a = s.next(); !a.done; a = s.next()) {
                      var l = a.value
                      l && n.addNode(l, t)
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      a && !a.done && (r = s.return) && r.call(s)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                }),
                r
              )
            }),
            (t.MmlFilterAttribute = function (t, e, r) {
              return r
            }),
            (t.getFontDef = function (t) {
              var e = t.stack.env.font
              return e ? { mathvariant: e } : {}
            }),
            (t.keyvalOptions = function (t, e, r) {
              var i, s
              void 0 === e && (e = null), void 0 === r && (r = !1)
              var a = (function (t) {
                var e,
                  r,
                  o,
                  i,
                  s,
                  a = {},
                  l = t
                for (; l; ) (i = (e = n(_(l, ['=', ',']), 3))[0]), (o = e[1]), (l = e[2]), '=' === o ? ((s = (r = n(_(l, [',']), 3))[0]), (o = r[1]), (l = r[2]), (s = 'false' === s || 'true' === s ? JSON.parse(s) : s), (a[i] = s)) : i && (a[i] = !0)
                return a
              })(t)
              if (e)
                try {
                  for (var l = o(Object.keys(a)), c = l.next(); !c.done; c = l.next()) {
                    var p = c.value
                    if (!e.hasOwnProperty(p)) {
                      if (r) throw new u.default('InvalidOption', 'Invalid option: %1', p)
                      delete a[p]
                    }
                  }
                } catch (t) {
                  i = { error: t }
                } finally {
                  try {
                    c && !c.done && (s = l.return) && s.call(l)
                  } finally {
                    if (i) throw i.error
                  }
                }
              return a
            })
        })(s || (s = {})),
          (e.default = s)
      },
      9497: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var a = s(r(1256)),
          l = (function () {
            function t(t, e, r) {
              ;(this._factory = t), (this._env = e), (this.global = {}), (this.stack = []), (this.global = { isInner: r }), (this.stack = [this._factory.create('start', this.global)]), e && (this.stack[0].env = e), (this.env = this.stack[0].env)
            }
            return (
              Object.defineProperty(t.prototype, 'env', {
                get: function () {
                  return this._env
                },
                set: function (t) {
                  this._env = t
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.Push = function () {
                for (var t, e, r = [], s = 0; s < arguments.length; s++) r[s] = arguments[s]
                try {
                  for (var l = n(r), c = l.next(); !c.done; c = l.next()) {
                    var u = c.value
                    if (u) {
                      var p = a.default.isNode(u) ? this._factory.create('mml', u) : u
                      p.global = this.global
                      var h = o(this.stack.length ? this.Top().checkItem(p) : [null, !0], 2),
                        f = h[0],
                        d = h[1]
                      d && (f ? (this.Pop(), this.Push.apply(this, i([], o(f), !1))) : (this.stack.push(p), p.env ? (p.copyEnv && Object.assign(p.env, this.env), (this.env = p.env)) : (p.env = this.env)))
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    c && !c.done && (e = l.return) && e.call(l)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (t.prototype.Pop = function () {
                var t = this.stack.pop()
                return t.isOpen || delete t.env, (this.env = this.stack.length ? this.Top().env : {}), t
              }),
              (t.prototype.Top = function (t) {
                return void 0 === t && (t = 1), this.stack.length < t ? null : this.stack[this.stack.length - t]
              }),
              (t.prototype.Prev = function (t) {
                var e = this.Top()
                return t ? e.First : e.Pop()
              }),
              (t.prototype.toString = function () {
                return 'stack[\n  ' + this.stack.join('\n  ') + '\n]'
              }),
              t
            )
          })()
        e.default = l
      },
      8292: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          l =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BaseItem = e.MmlStack = void 0)
        var c = l(r(3971)),
          u = (function () {
            function t(t) {
              this._nodes = t
            }
            return (
              Object.defineProperty(t.prototype, 'nodes', {
                get: function () {
                  return this._nodes
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.Push = function () {
                for (var t, e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                ;(t = this._nodes).push.apply(t, s([], i(e), !1))
              }),
              (t.prototype.Pop = function () {
                return this._nodes.pop()
              }),
              Object.defineProperty(t.prototype, 'First', {
                get: function () {
                  return this._nodes[this.Size() - 1]
                },
                set: function (t) {
                  this._nodes[this.Size() - 1] = t
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(t.prototype, 'Last', {
                get: function () {
                  return this._nodes[0]
                },
                set: function (t) {
                  this._nodes[0] = t
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.Peek = function (t) {
                return null == t && (t = 1), this._nodes.slice(this.Size() - t)
              }),
              (t.prototype.Size = function () {
                return this._nodes.length
              }),
              (t.prototype.Clear = function () {
                this._nodes = []
              }),
              (t.prototype.toMml = function (t, e) {
                return void 0 === t && (t = !0), 1 !== this._nodes.length || e ? this.create('node', t ? 'inferredMrow' : 'mrow', this._nodes, {}) : this.First
              }),
              (t.prototype.create = function (t) {
                for (var e, r = [], n = 1; n < arguments.length; n++) r[n - 1] = arguments[n]
                return (e = this.factory.configuration.nodeFactory).create.apply(e, s([t], i(r), !1))
              }),
              t
            )
          })()
        e.MmlStack = u
        var p = (function (t) {
          function e(e) {
            for (var r = [], n = 1; n < arguments.length; n++) r[n - 1] = arguments[n]
            var o = t.call(this, r) || this
            return (o.factory = e), (o.global = {}), (o._properties = {}), o.isOpen && (o._env = {}), o
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'base'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'env', {
              get: function () {
                return this._env
              },
              set: function (t) {
                this._env = t
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'copyEnv', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.getProperty = function (t) {
              return this._properties[t]
            }),
            (e.prototype.setProperty = function (t, e) {
              return (this._properties[t] = e), this
            }),
            Object.defineProperty(e.prototype, 'isOpen', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isFinal', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.isKind = function (t) {
              return t === this.kind
            }),
            (e.prototype.checkItem = function (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 e.fail
                throw new c.default('Misplaced', 'Misplaced %1', t.getName())
              }
              if (t.isClose && this.getErrors(t.kind)) {
                var r = i(this.getErrors(t.kind), 2),
                  n = r[0],
                  o = r[1]
                throw new c.default(n, o, t.getName())
              }
              return t.isFinal ? (this.Push(t.First), e.fail) : e.success
            }),
            (e.prototype.clearEnv = function () {
              var t, e
              try {
                for (var r = a(Object.keys(this.env)), n = r.next(); !n.done; n = r.next()) {
                  var o = n.value
                  delete this.env[o]
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  n && !n.done && (e = r.return) && e.call(r)
                } finally {
                  if (t) throw t.error
                }
              }
            }),
            (e.prototype.setProperties = function (t) {
              return Object.assign(this._properties, t), this
            }),
            (e.prototype.getName = function () {
              return this.getProperty('name')
            }),
            (e.prototype.toString = function () {
              return this.kind + '[' + this.nodes.join('; ') + ']'
            }),
            (e.prototype.getErrors = function (t) {
              return (this.constructor.errors || {})[t] || e.errors[t]
            }),
            (e.fail = [null, !1]),
            (e.success = [null, !0]),
            (e.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']
            }),
            e
          )
        })(u)
        e.BaseItem = p
      },
      5453: function (t, e, r) {
        var n,
          o,
          i =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 })
        var s = r(8292),
          a = r(4574),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return i(e, t), e
          })(s.BaseItem),
          c = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.defaultKind = 'dummy'), (e.configuration = null), e
            }
            return i(e, t), (e.DefaultStackItems = (((o = {})[l.prototype.kind] = l), o)), e
          })(a.AbstractFactory)
        e.default = c
      },
      8803: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Macro = e.Symbol = void 0)
        var r = (function () {
          function t(t, e, r) {
            ;(this._symbol = t), (this._char = e), (this._attributes = r)
          }
          return (
            Object.defineProperty(t.prototype, 'symbol', {
              get: function () {
                return this._symbol
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(t.prototype, 'char', {
              get: function () {
                return this._char
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(t.prototype, 'attributes', {
              get: function () {
                return this._attributes
              },
              enumerable: !1,
              configurable: !0
            }),
            t
          )
        })()
        e.Symbol = r
        var n = (function () {
          function t(t, e, r) {
            void 0 === r && (r = []), (this._symbol = t), (this._func = e), (this._args = r)
          }
          return (
            Object.defineProperty(t.prototype, 'symbol', {
              get: function () {
                return this._symbol
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(t.prototype, 'func', {
              get: function () {
                return this._func
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(t.prototype, 'args', {
              get: function () {
                return this._args
              },
              enumerable: !1,
              configurable: !0
            }),
            t
          )
        })()
        e.Macro = n
      },
      9140: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          a =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.EnvironmentMap = e.CommandMap = e.MacroMap = e.DelimiterMap = e.CharacterMap = e.AbstractParseMap = e.RegExpMap = e.AbstractSymbolMap = e.parseResult = void 0)
        var l = r(8803),
          c = r(2947)
        function u(t) {
          return void 0 === t || t
        }
        e.parseResult = u
        var p = (function () {
          function t(t, e) {
            ;(this._name = t), (this._parser = e), c.MapHandler.register(this)
          }
          return (
            Object.defineProperty(t.prototype, 'name', {
              get: function () {
                return this._name
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.parserFor = function (t) {
              return this.contains(t) ? this.parser : null
            }),
            (t.prototype.parse = function (t) {
              var e = i(t, 2),
                r = e[0],
                n = e[1],
                o = this.parserFor(n),
                s = this.lookup(n)
              return o && s ? u(o(r, s)) : null
            }),
            Object.defineProperty(t.prototype, 'parser', {
              get: function () {
                return this._parser
              },
              set: function (t) {
                this._parser = t
              },
              enumerable: !1,
              configurable: !0
            }),
            t
          )
        })()
        e.AbstractSymbolMap = p
        var h = (function (t) {
          function e(e, r, n) {
            var o = t.call(this, e, r) || this
            return (o._regExp = n), o
          }
          return (
            o(e, t),
            (e.prototype.contains = function (t) {
              return this._regExp.test(t)
            }),
            (e.prototype.lookup = function (t) {
              return this.contains(t) ? t : null
            }),
            e
          )
        })(p)
        e.RegExpMap = h
        var f = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.map = new Map()), e
          }
          return (
            o(e, t),
            (e.prototype.lookup = function (t) {
              return this.map.get(t)
            }),
            (e.prototype.contains = function (t) {
              return this.map.has(t)
            }),
            (e.prototype.add = function (t, e) {
              this.map.set(t, e)
            }),
            (e.prototype.remove = function (t) {
              this.map.delete(t)
            }),
            e
          )
        })(p)
        e.AbstractParseMap = f
        var d = (function (t) {
          function e(e, r, n) {
            var o,
              a,
              c = t.call(this, e, r) || this
            try {
              for (var u = s(Object.keys(n)), p = u.next(); !p.done; p = u.next()) {
                var h = p.value,
                  f = n[h],
                  d = i('string' == typeof f ? [f, null] : f, 2),
                  m = d[0],
                  y = d[1],
                  g = new l.Symbol(h, m, y)
                c.add(h, g)
              }
            } catch (t) {
              o = { error: t }
            } finally {
              try {
                p && !p.done && (a = u.return) && a.call(u)
              } finally {
                if (o) throw o.error
              }
            }
            return c
          }
          return o(e, t), e
        })(f)
        e.CharacterMap = d
        var m = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.parse = function (e) {
              var r = i(e, 2),
                n = r[0],
                o = r[1]
              return t.prototype.parse.call(this, [n, '\\' + o])
            }),
            e
          )
        })(d)
        e.DelimiterMap = m
        var y = (function (t) {
          function e(e, r, n) {
            var o,
              a,
              c = t.call(this, e, null) || this
            try {
              for (var u = s(Object.keys(r)), p = u.next(); !p.done; p = u.next()) {
                var h = p.value,
                  f = r[h],
                  d = i('string' == typeof f ? [f] : f),
                  m = d[0],
                  y = d.slice(1),
                  g = new l.Macro(h, n[m], y)
                c.add(h, g)
              }
            } catch (t) {
              o = { error: t }
            } finally {
              try {
                p && !p.done && (a = u.return) && a.call(u)
              } finally {
                if (o) throw o.error
              }
            }
            return c
          }
          return (
            o(e, t),
            (e.prototype.parserFor = function (t) {
              var e = this.lookup(t)
              return e ? e.func : null
            }),
            (e.prototype.parse = function (t) {
              var e = i(t, 2),
                r = e[0],
                n = e[1],
                o = this.lookup(n),
                s = this.parserFor(n)
              return o && s ? u(s.apply(void 0, a([r, o.symbol], i(o.args), !1))) : null
            }),
            e
          )
        })(f)
        e.MacroMap = y
        var g = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.parse = function (t) {
              var e = i(t, 2),
                r = e[0],
                n = e[1],
                o = this.lookup(n),
                s = this.parserFor(n)
              if (!o || !s) return null
              var l = r.currentCS
              r.currentCS = '\\' + n
              var c = s.apply(void 0, a([r, '\\' + o.symbol], i(o.args), !1))
              return (r.currentCS = l), u(c)
            }),
            e
          )
        })(y)
        e.CommandMap = g
        var b = (function (t) {
          function e(e, r, n, o) {
            var i = t.call(this, e, n, o) || this
            return (i.parser = r), i
          }
          return (
            o(e, t),
            (e.prototype.parse = function (t) {
              var e = i(t, 2),
                r = e[0],
                n = e[1],
                o = this.lookup(n),
                s = this.parserFor(n)
              return o && s ? u(this.parser(r, o.symbol, s, o.args)) : null
            }),
            e
          )
        })(y)
        e.EnvironmentMap = b
      },
      6521: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.TagsFactory = e.AllTags = e.NoTags = e.AbstractTags = e.TagInfo = e.Label = void 0)
        var a = s(r(8417)),
          l = function (t, e) {
            void 0 === t && (t = '???'), void 0 === e && (e = ''), (this.tag = t), (this.id = e)
          }
        e.Label = l
        var c = function (t, e, r, n, o, i, s, a) {
          void 0 === t && (t = ''),
            void 0 === e && (e = !1),
            void 0 === r && (r = !1),
            void 0 === n && (n = null),
            void 0 === o && (o = ''),
            void 0 === i && (i = ''),
            void 0 === s && (s = !1),
            void 0 === a && (a = ''),
            (this.env = t),
            (this.taggable = e),
            (this.defaultTags = r),
            (this.tag = n),
            (this.tagId = o),
            (this.tagFormat = i),
            (this.noTag = s),
            (this.labelId = a)
        }
        e.TagInfo = c
        var u = (function () {
          function t() {
            ;(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 c()),
              (this.history = []),
              (this.stack = []),
              (this.enTag = function (t, e) {
                var r = this.configuration.nodeFactory,
                  n = r.create('node', 'mtd', [t]),
                  o = r.create('node', 'mlabeledtr', [e, n])
                return r.create('node', 'mtable', [o], { side: this.configuration.options.tagSide, minlabelspacing: this.configuration.options.tagIndent, displaystyle: !0 })
              })
          }
          return (
            (t.prototype.start = function (t, e, r) {
              this.currentTag && this.stack.push(this.currentTag), (this.currentTag = new c(t, e, r))
            }),
            Object.defineProperty(t.prototype, 'env', {
              get: function () {
                return this.currentTag.env
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.end = function () {
              this.history.push(this.currentTag), (this.currentTag = this.stack.pop())
            }),
            (t.prototype.tag = function (t, e) {
              ;(this.currentTag.tag = t), (this.currentTag.tagFormat = e ? t : this.formatTag(t)), (this.currentTag.noTag = !1)
            }),
            (t.prototype.notag = function () {
              this.tag('', !0), (this.currentTag.noTag = !0)
            }),
            Object.defineProperty(t.prototype, 'noTag', {
              get: function () {
                return this.currentTag.noTag
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(t.prototype, 'label', {
              get: function () {
                return this.currentTag.labelId
              },
              set: function (t) {
                this.currentTag.labelId = t
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.formatUrl = function (t, e) {
              return e + '#' + encodeURIComponent(t)
            }),
            (t.prototype.formatTag = function (t) {
              return '(' + t + ')'
            }),
            (t.prototype.formatId = function (t) {
              return 'mjx-eqn:' + t.replace(/\s/g, '_')
            }),
            (t.prototype.formatNumber = function (t) {
              return t.toString()
            }),
            (t.prototype.autoTag = function () {
              null == this.currentTag.tag && (this.counter++, this.tag(this.formatNumber(this.counter), !1))
            }),
            (t.prototype.clearTag = function () {
              ;(this.label = ''), this.tag(null, !0), (this.currentTag.tagId = '')
            }),
            (t.prototype.getTag = function (t) {
              if ((void 0 === t && (t = !1), t)) return this.autoTag(), this.makeTag()
              var e = this.currentTag
              return e.taggable && !e.noTag && (e.defaultTags && this.autoTag(), e.tag) ? this.makeTag() : null
            }),
            (t.prototype.resetTag = function () {
              ;(this.history = []), (this.redo = !1), (this.refUpdate = !1), this.clearTag()
            }),
            (t.prototype.reset = function (t) {
              void 0 === t && (t = 0), this.resetTag(), (this.counter = this.allCounter = t), (this.allLabels = {}), (this.allIds = {})
            }),
            (t.prototype.startEquation = function (t) {
              ;(this.history = []), (this.stack = []), this.clearTag(), (this.currentTag = new c('', void 0, void 0)), (this.labels = {}), (this.ids = {}), (this.counter = this.allCounter), (this.redo = !1)
              var e = t.inputData.recompile
              e && ((this.refUpdate = !0), (this.counter = e.counter))
            }),
            (t.prototype.finishEquation = function (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)
            }),
            (t.prototype.finalize = function (t, e) {
              if (!e.display || this.currentTag.env || null == this.currentTag.tag) return t
              var r = this.makeTag()
              return this.enTag(t, r)
            }),
            (t.prototype.makeId = function () {
              this.currentTag.tagId = this.formatId((this.configuration.options.useLabelIds && this.label) || this.currentTag.tag)
            }),
            (t.prototype.makeTag = function () {
              this.makeId(), this.label && (this.labels[this.label] = new l(this.currentTag.tag, this.currentTag.tagId))
              var t = new a.default('\\text{' + this.currentTag.tagFormat + '}', {}, this.configuration).mml()
              return this.configuration.nodeFactory.create('node', 'mtd', [t], { id: this.currentTag.tagId })
            }),
            t
          )
        })()
        e.AbstractTags = u
        var p = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.autoTag = function () {}),
            (e.prototype.getTag = function () {
              return this.currentTag.tag ? t.prototype.getTag.call(this) : null
            }),
            e
          )
        })(u)
        e.NoTags = p
        var h = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.finalize = function (t, e) {
              if (
                !e.display ||
                this.history.find(function (t) {
                  return t.taggable
                })
              )
                return t
              var r = this.getTag(!0)
              return this.enTag(t, r)
            }),
            e
          )
        })(u)
        ;(e.AllTags = h),
          (function (t) {
            var e = new Map([
                ['none', p],
                ['all', h]
              ]),
              r = 'none'
            ;(t.OPTIONS = { tags: r, tagSide: 'right', tagIndent: '0.8em', useLabelIds: !0, ignoreDuplicateLabels: !1 }),
              (t.add = function (t, r) {
                e.set(t, r)
              }),
              (t.addTags = function (e) {
                var r, n
                try {
                  for (var o = i(Object.keys(e)), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value
                    t.add(a, e[a])
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    s && !s.done && (n = o.return) && n.call(o)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }),
              (t.create = function (t) {
                var n = e.get(t) || e.get(r)
                if (!n) throw Error('Unknown tags class')
                return new n()
              }),
              (t.setDefault = function (t) {
                r = t
              }),
              (t.getDefault = function () {
                return t.create(r)
              })
          })(e.TagsFactory || (e.TagsFactory = {}))
      },
      8317: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.TexConstant = void 0),
          (function (t) {
            ;(t.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'
            }),
              (t.Form = { PREFIX: 'prefix', INFIX: 'infix', POSTFIX: 'postfix' }),
              (t.LineBreak = { AUTO: 'auto', NEWLINE: 'newline', NOBREAK: 'nobreak', GOODBREAK: 'goodbreak', BADBREAK: 'badbreak' }),
              (t.LineBreakStyle = { BEFORE: 'before', AFTER: 'after', DUPLICATE: 'duplicate', INFIXLINBREAKSTYLE: 'infixlinebreakstyle' }),
              (t.IndentAlign = { LEFT: 'left', CENTER: 'center', RIGHT: 'right', AUTO: 'auto', ID: 'id', INDENTALIGN: 'indentalign' }),
              (t.IndentShift = { INDENTSHIFT: 'indentshift' }),
              (t.LineThickness = { THIN: 'thin', MEDIUM: 'medium', THICK: 'thick' }),
              (t.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'
              }),
              (t.Align = { TOP: 'top', BOTTOM: 'bottom', CENTER: 'center', BASELINE: 'baseline', AXIS: 'axis', LEFT: 'left', RIGHT: 'right' }),
              (t.Lines = { NONE: 'none', SOLID: 'solid', DASHED: 'dashed' }),
              (t.Side = { LEFT: 'left', RIGHT: 'right', LEFTOVERLAP: 'leftoverlap', RIGHTOVERLAP: 'rightoverlap' }),
              (t.Width = { AUTO: 'auto', FIT: 'fit' }),
              (t.Actiontype = { TOGGLE: 'toggle', STATUSLINE: 'statusline', TOOLTIP: 'tooltip', INPUT: 'input' }),
              (t.Overflow = { LINBREAK: 'linebreak', SCROLL: 'scroll', ELIDE: 'elide', TRUNCATE: 'truncate', SCALE: 'scale' }),
              (t.Unit = { EM: 'em', EX: 'ex', PX: 'px', IN: 'in', CM: 'cm', MM: 'mm', PT: 'pt', PC: 'pc' })
          })(e.TexConstant || (e.TexConstant = {}))
      },
      3971: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        var r = (function () {
          function t(e, r) {
            for (var n = [], o = 2; o < arguments.length; o++) n[o - 2] = arguments[o]
            ;(this.id = e), (this.message = t.processString(r, n))
          }
          return (
            (t.processString = function (e, r) {
              for (var n = e.split(t.pattern), o = 1, i = n.length; o < i; o += 2) {
                var s = n[o].charAt(0)
                if (s >= '0' && s <= '9') (n[o] = r[parseInt(n[o], 10) - 1]), 'number' == typeof n[o] && (n[o] = n[o].toString())
                else if ('{' === s) {
                  if ((s = n[o].substr(1)) >= '0' && s <= '9') (n[o] = r[parseInt(n[o].substr(1, n[o].length - 2), 10) - 1]), 'number' == typeof n[o] && (n[o] = n[o].toString())
                  else n[o].match(/^\{([a-z]+):%(\d+)\|(.*)\}$/) && (n[o] = '%' + n[o])
                }
                null == n[o] && (n[o] = '???')
              }
              return n.join('')
            }),
            (t.pattern = /%(\d+|\{\d+\}|\{[a-z]+:\%\d+(?:\|(?:%\{\d+\}|%.|[^\}])*)+\}|.)/g),
            t
          )
        })()
        e.default = r
      },
      8417: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var a = s(r(1130)),
          l = s(r(9497)),
          c = s(r(3971)),
          u = r(9007),
          p = (function () {
            function t(t, e, r) {
              var o, i
              ;(this._string = t), (this.configuration = r), (this.macroCount = 0), (this.i = 0), (this.currentCS = '')
              var s,
                a = e.hasOwnProperty('isInner'),
                c = e.isInner
              if ((delete e.isInner, e)) {
                s = {}
                try {
                  for (var u = n(Object.keys(e)), p = u.next(); !p.done; p = u.next()) {
                    var h = p.value
                    s[h] = e[h]
                  }
                } catch (t) {
                  o = { error: t }
                } finally {
                  try {
                    p && !p.done && (i = u.return) && i.call(u)
                  } finally {
                    if (o) throw o.error
                  }
                }
              }
              this.configuration.pushParser(this), (this.stack = new l.default(this.itemFactory, s, !a || c)), this.Parse(), this.Push(this.itemFactory.create('stop'))
            }
            return (
              Object.defineProperty(t.prototype, 'options', {
                get: function () {
                  return this.configuration.options
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(t.prototype, 'itemFactory', {
                get: function () {
                  return this.configuration.itemFactory
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(t.prototype, 'tags', {
                get: function () {
                  return this.configuration.tags
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(t.prototype, 'string', {
                get: function () {
                  return this._string
                },
                set: function (t) {
                  this._string = t
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.parse = function (t, e) {
                return this.configuration.handlers.get(t).parse(e)
              }),
              (t.prototype.lookup = function (t, e) {
                return this.configuration.handlers.get(t).lookup(e)
              }),
              (t.prototype.contains = function (t, e) {
                return this.configuration.handlers.get(t).contains(e)
              }),
              (t.prototype.toString = function () {
                var t,
                  e,
                  r = ''
                try {
                  for (var o = n(Array.from(this.configuration.handlers.keys())), i = o.next(); !i.done; i = o.next()) {
                    var s = i.value
                    r += s + ': ' + this.configuration.handlers.get(s) + '\n'
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    i && !i.done && (e = o.return) && e.call(o)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return r
              }),
              (t.prototype.Parse = function () {
                for (var t; this.i < this.string.length; ) (t = this.getCodePoint()), (this.i += t.length), this.parse('character', [this, t])
              }),
              (t.prototype.Push = function (t) {
                t instanceof u.AbstractMmlNode && t.isInferred ? this.PushAll(t.childNodes) : this.stack.Push(t)
              }),
              (t.prototype.PushAll = function (t) {
                var e, r
                try {
                  for (var o = n(t), i = o.next(); !i.done; i = o.next()) {
                    var s = i.value
                    this.stack.Push(s)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    i && !i.done && (r = o.return) && r.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }),
              (t.prototype.mml = function () {
                if (!this.stack.Top().isKind('mml')) return null
                var t = this.stack.Top().First
                return this.configuration.popParser(), t
              }),
              (t.prototype.convertDelimiter = function (t) {
                var e = this.lookup('delimiter', t)
                return e ? e.char : null
              }),
              (t.prototype.getCodePoint = function () {
                var t = this.string.codePointAt(this.i)
                return void 0 === t ? '' : String.fromCodePoint(t)
              }),
              (t.prototype.nextIsSpace = function () {
                return !!this.string.charAt(this.i).match(/\s/)
              }),
              (t.prototype.GetNext = function () {
                for (; this.nextIsSpace(); ) this.i++
                return this.getCodePoint()
              }),
              (t.prototype.GetCS = function () {
                var t = this.string.slice(this.i).match(/^(([a-z]+) ?|[\uD800-\uDBFF].|.)/i)
                return t ? ((this.i += t[0].length), t[2] || t[1]) : (this.i++, ' ')
              }),
              (t.prototype.GetArgument = function (t, e) {
                switch (this.GetNext()) {
                  case '':
                    if (!e) throw new c.default('MissingArgFor', 'Missing argument for %1', this.currentCS)
                    return null
                  case '}':
                    if (!e) throw new c.default('ExtraCloseMissingOpen', 'Extra close brace or missing open brace')
                    return null
                  case '\\':
                    return this.i++, '\\' + this.GetCS()
                  case '{':
                    for (var r = ++this.i, n = 1; this.i < this.string.length; )
                      switch (this.string.charAt(this.i++)) {
                        case '\\':
                          this.i++
                          break
                        case '{':
                          n++
                          break
                        case '}':
                          if (0 == --n) return this.string.slice(r, this.i - 1)
                      }
                    throw new c.default('MissingCloseBrace', 'Missing close brace')
                }
                var o = this.getCodePoint()
                return (this.i += o.length), o
              }),
              (t.prototype.GetBrackets = function (t, e) {
                if ('[' !== this.GetNext()) return e
                for (var r = ++this.i, n = 0; this.i < this.string.length; )
                  switch (this.string.charAt(this.i++)) {
                    case '{':
                      n++
                      break
                    case '\\':
                      this.i++
                      break
                    case '}':
                      if (n-- <= 0) throw new c.default('ExtraCloseLooking', 'Extra close brace while looking for %1', "']'")
                      break
                    case ']':
                      if (0 === n) return this.string.slice(r, this.i - 1)
                  }
                throw new c.default('MissingCloseBracket', "Could not find closing ']' for argument to %1", this.currentCS)
              }),
              (t.prototype.GetDelimiter = function (t, e) {
                var r = this.GetNext()
                if (((this.i += r.length), this.i <= this.string.length && ('\\' === r ? (r += this.GetCS()) : '{' === r && e && (this.i--, (r = this.GetArgument(t).trim())), this.contains('delimiter', r)))) return this.convertDelimiter(r)
                throw new c.default('MissingOrUnrecognizedDelim', 'Missing or unrecognized delimiter for %1', this.currentCS)
              }),
              (t.prototype.GetDimen = function (t) {
                if ('{' === this.GetNext()) {
                  var e = this.GetArgument(t),
                    r = o(a.default.matchDimen(e), 2),
                    n = r[0],
                    i = r[1]
                  if (n) return n + i
                } else {
                  e = this.string.slice(this.i)
                  var s = o(a.default.matchDimen(e, !0), 3),
                    l = ((n = s[0]), (i = s[1]), s[2])
                  if (n) return (this.i += l), n + i
                }
                throw new c.default('MissingDimOrUnits', 'Missing dimension or its units for %1', this.currentCS)
              }),
              (t.prototype.GetUpTo = function (t, e) {
                for (; this.nextIsSpace(); ) this.i++
                for (var r = this.i, n = 0; this.i < this.string.length; ) {
                  var o = this.i,
                    i = this.GetNext()
                  switch (((this.i += i.length), i)) {
                    case '\\':
                      i += this.GetCS()
                      break
                    case '{':
                      n++
                      break
                    case '}':
                      if (0 === n) throw new c.default('ExtraCloseLooking', 'Extra close brace while looking for %1', e)
                      n--
                  }
                  if (0 === n && i === e) return this.string.slice(r, o)
                }
                throw new c.default('TokenNotFoundForCommand', 'Could not find %1 for %2', e, this.currentCS)
              }),
              (t.prototype.ParseArg = function (e) {
                return new t(this.GetArgument(e), this.stack.env, this.configuration).mml()
              }),
              (t.prototype.ParseUpTo = function (e, r) {
                return new t(this.GetUpTo(e, r), this.stack.env, this.configuration).mml()
              }),
              (t.prototype.GetDelimiterArg = function (t) {
                var e = a.default.trimSpaces(this.GetArgument(t))
                if ('' === e) return null
                if (this.contains('delimiter', e)) return e
                throw new c.default('MissingOrUnrecognizedDelim', 'Missing or unrecognized delimiter for %1', this.currentCS)
              }),
              (t.prototype.GetStar = function () {
                var t = '*' === this.GetNext()
                return t && this.i++, t
              }),
              (t.prototype.create = function (t) {
                for (var e, r = [], n = 1; n < arguments.length; n++) r[n - 1] = arguments[n]
                return (e = this.configuration.nodeFactory).create.apply(e, i([t], o(r), !1))
              }),
              t
            )
          })()
        e.default = p
      },
      8021: function (t, e, r) {
        var n,
          o,
          i =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AmsConfiguration = e.AmsTags = void 0)
        var s = r(9899),
          a = r(2790),
          l = r(6521),
          c = r(4387)
        r(7379)
        var u = r(9140),
          p = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return i(e, t), e
          })(l.AbstractTags)
        e.AmsTags = p
        e.AmsConfiguration = s.Configuration.create('ams', {
          handler: {
            character: ['AMSmath-operatorLetter'],
            delimiter: ['AMSsymbols-delimiter', 'AMSmath-delimiter'],
            macro: ['AMSsymbols-mathchar0mi', 'AMSsymbols-mathchar0mo', 'AMSsymbols-delimiter', 'AMSsymbols-macros', 'AMSmath-mathchar0mo', 'AMSmath-macros', 'AMSmath-delimiter'],
            environment: ['AMSmath-environment']
          },
          items: ((o = {}), (o[a.MultlineItem.prototype.kind] = a.MultlineItem), (o[a.FlalignItem.prototype.kind] = a.FlalignItem), o),
          tags: { ams: p },
          init: function (t) {
            new u.CommandMap(c.NEW_OPS, {}, {}), t.append(s.Configuration.local({ handler: { macro: [c.NEW_OPS] }, priority: -1 }))
          },
          config: function (t, e) {
            e.parseOptions.options.multlineWidth && (e.parseOptions.options.ams.multlineWidth = e.parseOptions.options.multlineWidth), delete e.parseOptions.options.multlineWidth
          },
          options: { multlineWidth: '', ams: { multlineWidth: '100%', multlineIndent: '1em' } }
        })
      },
      2790: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.FlalignItem = e.MultlineItem = void 0)
        var a = r(1181),
          l = s(r(1130)),
          c = s(r(1256)),
          u = s(r(3971)),
          p = r(8317),
          h = (function (t) {
            function e(e) {
              for (var r = [], n = 1; n < arguments.length; n++) r[n - 1] = arguments[n]
              var o = t.call(this, e) || this
              return o.factory.configuration.tags.start('multline', !0, r[0]), o
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'multline'
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.EndEntry = function () {
                this.table.length && l.default.fixInitialMO(this.factory.configuration, this.nodes)
                var t = this.getProperty('shove'),
                  e = this.create('node', 'mtd', this.nodes, t ? { columnalign: t } : {})
                this.setProperty('shove', null), this.row.push(e), this.Clear()
              }),
              (e.prototype.EndRow = function () {
                if (1 !== this.row.length) throw new u.default('MultlineRowsOneCol', 'The rows within the %1 environment must have exactly one column', 'multline')
                var t = this.create('node', 'mtr', this.row)
                this.table.push(t), (this.row = [])
              }),
              (e.prototype.EndTable = function () {
                if ((t.prototype.EndTable.call(this), this.table.length)) {
                  var e = this.table.length - 1,
                    r = -1
                  c.default.getAttribute(c.default.getChildren(this.table[0])[0], 'columnalign') || c.default.setAttribute(c.default.getChildren(this.table[0])[0], 'columnalign', p.TexConstant.Align.LEFT),
                    c.default.getAttribute(c.default.getChildren(this.table[e])[0], 'columnalign') || c.default.setAttribute(c.default.getChildren(this.table[e])[0], 'columnalign', p.TexConstant.Align.RIGHT)
                  var n = this.factory.configuration.tags.getTag()
                  if (n) {
                    r = this.arraydef.side === p.TexConstant.Align.LEFT ? 0 : this.table.length - 1
                    var o = this.table[r],
                      i = this.create('node', 'mlabeledtr', [n].concat(c.default.getChildren(o)))
                    c.default.copyAttributes(o, i), (this.table[r] = i)
                  }
                }
                this.factory.configuration.tags.end()
              }),
              e
            )
          })(a.ArrayItem)
        e.MultlineItem = h
        var f = (function (t) {
          function e(e, r, n, o, i) {
            var s = t.call(this, e) || this
            return (s.name = r), (s.numbered = n), (s.padded = o), (s.center = i), s.factory.configuration.tags.start(r, n, n), s
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'flalign'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.EndEntry = function () {
              t.prototype.EndEntry.call(this)
              var e = this.getProperty('xalignat')
              if (e && this.row.length > e) throw new u.default('XalignOverflow', 'Extra %1 in row of %2', '&', this.name)
            }),
            (e.prototype.EndRow = function () {
              for (var e, r = this.row, n = this.getProperty('xalignat'); r.length < n; ) r.push(this.create('node', 'mtd'))
              for (this.row = [], this.padded && this.row.push(this.create('node', 'mtd')); (e = r.shift()); ) this.row.push(e), (e = r.shift()) && this.row.push(e), (r.length || this.padded) && this.row.push(this.create('node', 'mtd'))
              this.row.length > this.maxrow && (this.maxrow = this.row.length), t.prototype.EndRow.call(this)
              var o = this.table[this.table.length - 1]
              if (this.getProperty('zeroWidthLabel') && o.isKind('mlabeledtr')) {
                var s = c.default.getChildren(o)[0],
                  a = this.factory.configuration.options.tagSide,
                  l = i({ width: 0 }, 'right' === a ? { lspace: '-1width' } : {}),
                  u = this.create('node', 'mpadded', c.default.getChildren(s), l)
                s.setChildren([u])
              }
            }),
            (e.prototype.EndTable = function () {
              ;(t.prototype.EndTable.call(this), this.center) && this.maxrow <= 2 && (delete this.arraydef.width, delete this.global.indentalign)
            }),
            e
          )
        })(a.EqnArrayItem)
        e.FlalignItem = f
      },
      7379: function (t, e, r) {
        var n =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          o =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          i =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && n(e, t, r)
              return o(e, t), e
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var a = r(4387),
          l = i(r(9140)),
          c = r(8317),
          u = s(r(5450)),
          p = s(r(1130)),
          h = r(9007),
          f = r(6010)
        new l.CharacterMap('AMSmath-mathchar0mo', u.default.mathchar0mo, { iiiint: ['\u2a0c', { texClass: h.TEXCLASS.OP }] }),
          new l.RegExpMap('AMSmath-operatorLetter', a.AmsMethods.operatorLetter, /[-*]/i),
          new l.CommandMap(
            'AMSmath-macros',
            {
              mathring: ['Accent', '02DA'],
              nobreakspace: 'Tilde',
              negmedspace: ['Spacer', f.MATHSPACE.negativemediummathspace],
              negthickspace: ['Spacer', f.MATHSPACE.negativethickmathspace],
              idotsint: ['MultiIntegral', '\\int\\cdots\\int'],
              dddot: ['Accent', '20DB'],
              ddddot: ['Accent', '20DC'],
              sideset: 'SideSet',
              boxed: ['Macro', '\\fbox{$\\displaystyle{#1}$}', 1],
              tag: 'HandleTag',
              notag: 'HandleNoTag',
              eqref: ['HandleRef', !0],
              substack: ['Macro', '\\begin{subarray}{c}#1\\end{subarray}', 1],
              injlim: ['NamedOp', 'inj&thinsp;lim'],
              projlim: ['NamedOp', 'proj&thinsp;lim'],
              varliminf: ['Macro', '\\mathop{\\underline{\\mmlToken{mi}{lim}}}'],
              varlimsup: ['Macro', '\\mathop{\\overline{\\mmlToken{mi}{lim}}}'],
              varinjlim: ['Macro', '\\mathop{\\underrightarrow{\\mmlToken{mi}{lim}}}'],
              varprojlim: ['Macro', '\\mathop{\\underleftarrow{\\mmlToken{mi}{lim}}}'],
              DeclareMathOperator: 'HandleDeclareOp',
              operatorname: 'HandleOperatorName',
              genfrac: 'Genfrac',
              frac: ['Genfrac', '', '', '', ''],
              tfrac: ['Genfrac', '', '', '', '1'],
              dfrac: ['Genfrac', '', '', '', '0'],
              binom: ['Genfrac', '(', ')', '0', ''],
              tbinom: ['Genfrac', '(', ')', '0', '1'],
              dbinom: ['Genfrac', '(', ')', '0', '0'],
              cfrac: 'CFrac',
              shoveleft: ['HandleShove', c.TexConstant.Align.LEFT],
              shoveright: ['HandleShove', c.TexConstant.Align.RIGHT],
              xrightarrow: ['xArrow', 8594, 5, 10],
              xleftarrow: ['xArrow', 8592, 10, 5]
            },
            a.AmsMethods
          ),
          new l.EnvironmentMap(
            'AMSmath-environment',
            u.default.environment,
            {
              'equation*': ['Equation', null, !1],
              'eqnarray*': ['EqnArray', null, !1, !0, 'rcl', p.default.cols(0, f.MATHSPACE.thickmathspace), '.5em'],
              align: ['EqnArray', null, !0, !0, 'rl', p.default.cols(0, 2)],
              'align*': ['EqnArray', null, !1, !0, 'rl', p.default.cols(0, 2)],
              multline: ['Multline', null, !0],
              'multline*': ['Multline', null, !1],
              split: ['EqnArray', null, !1, !1, 'rl', p.default.cols(0)],
              gather: ['EqnArray', null, !0, !0, 'c'],
              'gather*': ['EqnArray', null, !1, !0, 'c'],
              alignat: ['AlignAt', null, !0, !0],
              'alignat*': ['AlignAt', null, !1, !0],
              alignedat: ['AlignAt', null, !1, !1],
              aligned: ['AmsEqnArray', null, null, null, 'rl', p.default.cols(0, 2), '.5em', 'D'],
              gathered: ['AmsEqnArray', null, null, null, 'c', null, '.5em', 'D'],
              xalignat: ['XalignAt', null, !0, !0],
              'xalignat*': ['XalignAt', null, !1, !0],
              xxalignat: ['XalignAt', null, !1, !1],
              flalign: ['FlalignArray', null, !0, !1, !0, 'rlc', 'auto auto fit'],
              'flalign*': ['FlalignArray', null, !1, !1, !0, 'rlc', 'auto auto fit'],
              subarray: ['Array', null, null, null, null, p.default.cols(0), '0.1em', 'S', 1],
              smallmatrix: ['Array', null, null, null, 'c', p.default.cols(1 / 3), '.2em', 'S', 1],
              matrix: ['Array', null, null, null, 'c'],
              pmatrix: ['Array', null, '(', ')', 'c'],
              bmatrix: ['Array', null, '[', ']', 'c'],
              Bmatrix: ['Array', null, '\\{', '\\}', 'c'],
              vmatrix: ['Array', null, '\\vert', '\\vert', 'c'],
              Vmatrix: ['Array', null, '\\Vert', '\\Vert', 'c'],
              cases: ['Array', null, '\\{', '.', 'll', null, '.2em', 'T']
            },
            a.AmsMethods
          ),
          new l.DelimiterMap('AMSmath-delimiter', u.default.delimiter, {
            '\\lvert': ['|', { texClass: h.TEXCLASS.OPEN }],
            '\\rvert': ['|', { texClass: h.TEXCLASS.CLOSE }],
            '\\lVert': ['\u2016', { texClass: h.TEXCLASS.OPEN }],
            '\\rVert': ['\u2016', { texClass: h.TEXCLASS.CLOSE }]
          }),
          new l.CharacterMap('AMSsymbols-mathchar0mi', u.default.mathchar0mi, {
            digamma: '\u03dd',
            varkappa: '\u03f0',
            varGamma: ['\u0393', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varDelta: ['\u0394', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varTheta: ['\u0398', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varLambda: ['\u039b', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varXi: ['\u039e', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varPi: ['\u03a0', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varSigma: ['\u03a3', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varUpsilon: ['\u03a5', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varPhi: ['\u03a6', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varPsi: ['\u03a8', { mathvariant: c.TexConstant.Variant.ITALIC }],
            varOmega: ['\u03a9', { mathvariant: c.TexConstant.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: c.TexConstant.Variant.NORMAL }],
            bigstar: '\u2605',
            sphericalangle: '\u2222',
            measuredangle: '\u2221',
            nexists: '\u2204',
            complement: '\u2201',
            mho: '\u2127',
            eth: ['\xf0', { mathvariant: c.TexConstant.Variant.NORMAL }],
            Finv: '\u2132',
            diagup: '\u2571',
            Game: '\u2141',
            diagdown: '\u2572',
            Bbbk: ['k', { mathvariant: c.TexConstant.Variant.DOUBLESTRUCK }],
            yen: '\xa5',
            circledR: '\xae',
            checkmark: '\u2713',
            maltese: '\u2720'
          }),
          new l.CharacterMap('AMSsymbols-mathchar0mo', u.default.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', { variantForm: !0 }],
            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 l.DelimiterMap('AMSsymbols-delimiter', u.default.delimiter, { '\\ulcorner': '\u231c', '\\urcorner': '\u231d', '\\llcorner': '\u231e', '\\lrcorner': '\u231f' }),
          new l.CommandMap('AMSsymbols-macros', { implies: ['Macro', '\\;\\Longrightarrow\\;'], impliedby: ['Macro', '\\;\\Longleftarrow\\;'] }, a.AmsMethods)
      },
      4387: function (t, e, r) {
        var n =
            (this && this.__assign) ||
            function () {
              return (
                (n =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                n.apply(this, arguments)
              )
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.NEW_OPS = e.AmsMethods = void 0)
        var s = i(r(1130)),
          a = i(r(5450)),
          l = i(r(1256)),
          c = r(8317),
          u = i(r(8417)),
          p = i(r(3971)),
          h = r(8803),
          f = i(r(7693)),
          d = r(9007)
        function m(t) {
          if (!t || (t.isInferred && 0 === t.childNodes.length)) return [null, null]
          if (t.isKind('msubsup') && y(t)) return [t, null]
          var e = l.default.getChildAt(t, 0)
          return t.isInferred && e && y(e) ? (t.childNodes.splice(0, 1), [e, t]) : [null, t]
        }
        function y(t) {
          var e = t.childNodes[0]
          return e && e.isKind('mi') && '' === e.getText()
        }
        ;(e.AmsMethods = {}),
          (e.AmsMethods.AmsEqnArray = function (t, e, r, n, o, i, a) {
            var l = t.GetBrackets('\\begin{' + e.getName() + '}'),
              c = f.default.EqnArray(t, e, r, n, o, i, a)
            return s.default.setArrayAlign(c, l)
          }),
          (e.AmsMethods.AlignAt = function (t, r, n, o) {
            var i,
              a,
              l = r.getName(),
              c = '',
              u = []
            if ((o || (a = t.GetBrackets('\\begin{' + l + '}')), (i = t.GetArgument('\\begin{' + l + '}')).match(/[^0-9]/))) throw new p.default('PositiveIntegerArg', 'Argument to %1 must me a positive integer', '\\begin{' + l + '}')
            for (var h = parseInt(i, 10); h > 0; ) (c += 'rl'), u.push('0em 0em'), h--
            var f = u.join(' ')
            if (o) return e.AmsMethods.EqnArray(t, r, n, o, c, f)
            var d = e.AmsMethods.EqnArray(t, r, n, o, c, f)
            return s.default.setArrayAlign(d, a)
          }),
          (e.AmsMethods.Multline = function (t, e, r) {
            t.Push(e), s.default.checkEqnEnv(t)
            var n = t.itemFactory.create('multline', r, t.stack)
            return (
              (n.arraydef = {
                displaystyle: !0,
                rowspacing: '.5em',
                columnspacing: '100%',
                width: t.options.ams.multlineWidth,
                side: t.options.tagSide,
                minlabelspacing: t.options.tagIndent,
                framespacing: t.options.ams.multlineIndent + ' 0',
                frame: '',
                'data-width-includes-label': !0
              }),
              n
            )
          }),
          (e.AmsMethods.XalignAt = function (t, r, n, o) {
            var i = t.GetArgument('\\begin{' + r.getName() + '}')
            if (i.match(/[^0-9]/)) throw new p.default('PositiveIntegerArg', 'Argument to %1 must me a positive integer', '\\begin{' + r.getName() + '}')
            var s = o ? 'crl' : 'rlc',
              a = o ? 'fit auto auto' : 'auto auto fit',
              l = e.AmsMethods.FlalignArray(t, r, n, o, !1, s, a, !0)
            return l.setProperty('xalignat', 2 * parseInt(i)), l
          }),
          (e.AmsMethods.FlalignArray = function (t, e, r, n, o, i, a, l) {
            void 0 === l && (l = !1), t.Push(e), s.default.checkEqnEnv(t), (i = i.split('').join(' ').replace(/r/g, 'right').replace(/l/g, 'left').replace(/c/g, 'center'))
            var c = t.itemFactory.create('flalign', e.getName(), r, n, o, t.stack)
            return (
              (c.arraydef = { width: '100%', displaystyle: !0, columnalign: i, columnspacing: '0em', columnwidth: a, rowspacing: '3pt', side: t.options.tagSide, minlabelspacing: l ? '0' : t.options.tagIndent, 'data-width-includes-label': !0 }),
              c.setProperty('zeroWidthLabel', l),
              c
            )
          }),
          (e.NEW_OPS = 'ams-declare-ops'),
          (e.AmsMethods.HandleDeclareOp = function (t, r) {
            var n = t.GetStar() ? '*' : '',
              o = s.default.trimSpaces(t.GetArgument(r))
            '\\' === o.charAt(0) && (o = o.substr(1))
            var i = t.GetArgument(r)
            t.configuration.handlers.retrieve(e.NEW_OPS).add(o, new h.Macro(o, e.AmsMethods.Macro, ['\\operatorname'.concat(n, '{').concat(i, '}')]))
          }),
          (e.AmsMethods.HandleOperatorName = function (t, e) {
            var r = t.GetStar(),
              o = s.default.trimSpaces(t.GetArgument(e)),
              i = new u.default(o, n(n({}, t.stack.env), { font: c.TexConstant.Variant.NORMAL, multiLetterIdentifiers: /^[-*a-z]+/i, operatorLetters: !0 }), t.configuration).mml()
            if ((i.isKind('mi') || (i = t.create('node', 'TeXAtom', [i])), l.default.setProperties(i, { movesupsub: r, movablelimits: !0, texClass: d.TEXCLASS.OP }), !r)) {
              var a = t.GetNext(),
                p = t.i
              '\\' === a && ++t.i && 'limits' !== t.GetCS() && (t.i = p)
            }
            t.Push(i)
          }),
          (e.AmsMethods.SideSet = function (t, e) {
            var r = o(m(t.ParseArg(e)), 2),
              n = r[0],
              i = r[1],
              a = o(m(t.ParseArg(e)), 2),
              c = a[0],
              u = a[1],
              p = t.ParseArg(e),
              h = p
            n &&
              (i
                ? n.replaceChild(t.create('node', 'mphantom', [t.create('node', 'mpadded', [s.default.copyNode(p, t)], { width: 0 })]), l.default.getChildAt(n, 0))
                : ((h = t.create('node', 'mmultiscripts', [p])),
                  c && l.default.appendChildren(h, [l.default.getChildAt(c, 1) || t.create('node', 'none'), l.default.getChildAt(c, 2) || t.create('node', 'none')]),
                  l.default.setProperty(h, 'scriptalign', 'left'),
                  l.default.appendChildren(h, [t.create('node', 'mprescripts'), l.default.getChildAt(n, 1) || t.create('node', 'none'), l.default.getChildAt(n, 2) || t.create('node', 'none')]))),
              c && h === p && (c.replaceChild(p, l.default.getChildAt(c, 0)), (h = c))
            var f = t.create('node', 'TeXAtom', [], { texClass: d.TEXCLASS.OP, movesupsub: !0, movablelimits: !0 })
            i && (n && f.appendChild(n), f.appendChild(i)), f.appendChild(h), u && f.appendChild(u), t.Push(f)
          }),
          (e.AmsMethods.operatorLetter = function (t, e) {
            return !!t.stack.env.operatorLetters && a.default.variable(t, e)
          }),
          (e.AmsMethods.MultiIntegral = function (t, e, r) {
            var n = t.GetNext()
            if ('\\' === n) {
              var o = t.i
              ;(n = t.GetArgument(e)), (t.i = o), '\\limits' === n && (r = '\\idotsint' === e ? '\\!\\!\\mathop{\\,\\,' + r + '}' : '\\!\\!\\!\\mathop{\\,\\,\\,' + r + '}')
            }
            ;(t.string = r + ' ' + t.string.slice(t.i)), (t.i = 0)
          }),
          (e.AmsMethods.xArrow = function (t, e, r, n, o) {
            var i = { width: '+' + s.default.Em((n + o) / 18), lspace: s.default.Em(n / 18) },
              a = t.GetBrackets(e),
              c = t.ParseArg(e),
              p = t.create('node', 'mspace', [], { depth: '.25em' }),
              h = t.create('token', 'mo', { stretchy: !0, texClass: d.TEXCLASS.REL }, String.fromCodePoint(r))
            h = t.create('node', 'mstyle', [h], { scriptlevel: 0 })
            var f = t.create('node', 'munderover', [h]),
              m = t.create('node', 'mpadded', [c, p], i)
            if ((l.default.setAttribute(m, 'voffset', '-.2em'), l.default.setAttribute(m, 'height', '-.2em'), l.default.setChild(f, f.over, m), a)) {
              var y = new u.default(a, t.stack.env, t.configuration).mml(),
                g = t.create('node', 'mspace', [], { height: '.75em' })
              ;(m = t.create('node', 'mpadded', [y, g], i)), l.default.setAttribute(m, 'voffset', '.15em'), l.default.setAttribute(m, 'depth', '-.15em'), l.default.setChild(f, f.under, m)
            }
            l.default.setProperty(f, 'subsupOK', !0), t.Push(f)
          }),
          (e.AmsMethods.HandleShove = function (t, e, r) {
            var n = t.stack.Top()
            if ('multline' !== n.kind) throw new p.default('CommandOnlyAllowedInEnv', '%1 only allowed in %2 environment', t.currentCS, 'multline')
            if (n.Size()) throw new p.default('CommandAtTheBeginingOfLine', '%1 must come at the beginning of the line', t.currentCS)
            n.setProperty('shove', r)
          }),
          (e.AmsMethods.CFrac = function (t, e) {
            var r = s.default.trimSpaces(t.GetBrackets(e, '')),
              n = t.GetArgument(e),
              o = t.GetArgument(e),
              i = { l: c.TexConstant.Align.LEFT, r: c.TexConstant.Align.RIGHT, '': '' },
              a = new u.default('\\strut\\textstyle{' + n + '}', t.stack.env, t.configuration).mml(),
              h = new u.default('\\strut\\textstyle{' + o + '}', t.stack.env, t.configuration).mml(),
              f = t.create('node', 'mfrac', [a, h])
            if (null == (r = i[r])) throw new p.default('IllegalAlign', 'Illegal alignment specified in %1', t.currentCS)
            r && l.default.setProperties(f, { numalign: r, denomalign: r }), t.Push(f)
          }),
          (e.AmsMethods.Genfrac = function (t, e, r, n, o, i) {
            null == r && (r = t.GetDelimiterArg(e)), null == n && (n = t.GetDelimiterArg(e)), null == o && (o = t.GetArgument(e)), null == i && (i = s.default.trimSpaces(t.GetArgument(e)))
            var a = t.ParseArg(e),
              c = t.ParseArg(e),
              u = t.create('node', 'mfrac', [a, c])
            if (('' !== o && l.default.setAttribute(u, 'linethickness', o), (r || n) && (l.default.setProperty(u, 'withDelims', !0), (u = s.default.fixedFence(t.configuration, r, u, n))), '' !== i)) {
              var h = parseInt(i, 10),
                f = ['D', 'T', 'S', 'SS'][h]
              if (null == f) throw new p.default('BadMathStyleFor', 'Bad math style for %1', t.currentCS)
              ;(u = t.create('node', 'mstyle', [u])), 'D' === f ? l.default.setProperties(u, { displaystyle: !0, scriptlevel: 0 }) : l.default.setProperties(u, { displaystyle: !1, scriptlevel: h - 1 })
            }
            t.Push(u)
          }),
          (e.AmsMethods.HandleTag = function (t, e) {
            if (!t.tags.currentTag.taggable && t.tags.env) throw new p.default('CommandNotAllowedInEnv', '%1 not allowed in %2 environment', t.currentCS, t.tags.env)
            if (t.tags.currentTag.tag) throw new p.default('MultipleCommand', 'Multiple %1', t.currentCS)
            var r = t.GetStar(),
              n = s.default.trimSpaces(t.GetArgument(e))
            t.tags.tag(n, r)
          }),
          (e.AmsMethods.HandleNoTag = f.default.HandleNoTag),
          (e.AmsMethods.HandleRef = f.default.HandleRef),
          (e.AmsMethods.Macro = f.default.Macro),
          (e.AmsMethods.Accent = f.default.Accent),
          (e.AmsMethods.Tilde = f.default.Tilde),
          (e.AmsMethods.Array = f.default.Array),
          (e.AmsMethods.Spacer = f.default.Spacer),
          (e.AmsMethods.NamedOp = f.default.NamedOp),
          (e.AmsMethods.EqnArray = f.default.EqnArray),
          (e.AmsMethods.Equation = f.default.Equation)
      },
      1275: function (t, e, r) {
        var n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AutoloadConfiguration = void 0)
        var i = r(9899),
          s = r(9140),
          a = r(8803),
          l = r(7741),
          c = r(265),
          u = r(7233)
        function p(t, e, r, i) {
          var s, a, u, p
          if (c.Package.packages.has(t.options.require.prefix + r)) {
            var d = t.options.autoload[r],
              m = n(2 === d.length && Array.isArray(d[0]) ? d : [d, []], 2),
              y = m[0],
              g = m[1]
            try {
              for (var b = o(y), v = b.next(); !v.done; v = b.next()) {
                var _ = v.value
                h.remove(_)
              }
            } catch (t) {
              s = { error: t }
            } finally {
              try {
                v && !v.done && (a = b.return) && a.call(b)
              } finally {
                if (s) throw s.error
              }
            }
            try {
              for (var S = o(g), M = S.next(); !M.done; M = S.next()) {
                var O = M.value
                f.remove(O)
              }
            } catch (t) {
              u = { error: t }
            } finally {
              try {
                M && !M.done && (p = S.return) && p.call(S)
              } finally {
                if (u) throw u.error
              }
            }
            ;(t.string = (i ? e + ' ' : '\\begin{' + e.slice(1) + '}') + t.string.slice(t.i)), (t.i = 0)
          }
          ;(0, l.RequireLoad)(t, r)
        }
        var h = new s.CommandMap('autoload-macros', {}, {}),
          f = new s.CommandMap('autoload-environments', {}, {})
        e.AutoloadConfiguration = i.Configuration.create('autoload', {
          handler: { macro: ['autoload-macros'], environment: ['autoload-environments'] },
          options: {
            autoload: (0, u.expandable)({
              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: ['href', 'class', 'style', 'cssId'],
              mhchem: ['ce', 'pu'],
              newcommand: ['newcommand', 'renewcommand', 'newenvironment', 'renewenvironment', 'def', 'let'],
              unicode: ['unicode'],
              verb: ['verb']
            })
          },
          config: function (t, e) {
            var r,
              i,
              s,
              c,
              u,
              d,
              m = e.parseOptions,
              y = m.handlers.get('macro'),
              g = m.handlers.get('environment'),
              b = m.options.autoload
            m.packageData.set('autoload', { Autoload: p })
            try {
              for (var v = o(Object.keys(b)), _ = v.next(); !_.done; _ = v.next()) {
                var S = _.value,
                  M = b[S],
                  O = n(2 === M.length && Array.isArray(M[0]) ? M : [M, []], 2),
                  x = O[0],
                  E = O[1]
                try {
                  for (var A = ((s = void 0), o(x)), C = A.next(); !C.done; C = A.next()) {
                    var T = C.value
                    ;(y.lookup(T) && 'color' !== T) || h.add(T, new a.Macro(T, p, [S, !0]))
                  }
                } catch (t) {
                  s = { error: t }
                } finally {
                  try {
                    C && !C.done && (c = A.return) && c.call(A)
                  } finally {
                    if (s) throw s.error
                  }
                }
                try {
                  for (var N = ((u = void 0), o(E)), w = N.next(); !w.done; w = N.next()) {
                    var L = w.value
                    g.lookup(L) || f.add(L, new a.Macro(L, p, [S, !1]))
                  }
                } catch (t) {
                  u = { error: t }
                } finally {
                  try {
                    w && !w.done && (d = N.return) && d.call(N)
                  } finally {
                    if (u) throw u.error
                  }
                }
              }
            } catch (t) {
              r = { error: t }
            } finally {
              try {
                _ && !_.done && (i = v.return) && i.call(v)
              } finally {
                if (r) throw r.error
              }
            }
            m.packageData.get('require') || l.RequireConfiguration.config(t, e)
          },
          init: function (t) {
            t.options.require || (0, u.defaultOptions)(t.options, l.RequireConfiguration.options)
          },
          priority: 10
        })
      },
      2942: function (t, e, r) {
        var n,
          o,
          i =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          s =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          a =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          l =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && s(e, t, r)
              return a(e, t), e
            },
          c =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          u =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BaseConfiguration = e.BaseTags = e.Other = void 0)
        var p = r(9899),
          h = r(2947),
          f = u(r(3971)),
          d = u(r(1256)),
          m = r(9140),
          y = l(r(1181)),
          g = r(6521)
        r(1267)
        var b = r(4082)
        function v(t, e) {
          var r = t.stack.env.font ? { mathvariant: t.stack.env.font } : {},
            n = h.MapHandler.getMap('remap').lookup(e),
            o = (0, b.getRange)(e),
            i = o ? o[3] : 'mo',
            s = t.create('token', i, r, n ? n.char : e)
          o[4] && s.attributes.set('mathvariant', o[4]), 'mo' === i && (d.default.setProperty(s, 'fixStretchy', !0), t.configuration.addNode('fixStretchy', s)), t.Push(s)
        }
        new m.CharacterMap('remap', null, { '-': '\u2212', '*': '\u2217', '`': '\u2018' }), (e.Other = v)
        var _ = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return i(e, t), e
        })(g.AbstractTags)
        ;(e.BaseTags = _),
          (e.BaseConfiguration = p.Configuration.create('base', {
            handler: { character: ['command', 'special', 'letter', 'digit'], delimiter: ['delimiter'], macro: ['delimiter', 'macros', 'mathchar0mi', 'mathchar0mo', 'mathchar7'], environment: ['environment'] },
            fallback: {
              character: v,
              macro: function (t, e) {
                throw new f.default('UndefinedControlSequence', 'Undefined control sequence %1', '\\' + e)
              },
              environment: function (t, e) {
                throw new f.default('UnknownEnv', "Unknown environment '%1'", e)
              }
            },
            items:
              ((o = {}),
              (o[y.StartItem.prototype.kind] = y.StartItem),
              (o[y.StopItem.prototype.kind] = y.StopItem),
              (o[y.OpenItem.prototype.kind] = y.OpenItem),
              (o[y.CloseItem.prototype.kind] = y.CloseItem),
              (o[y.PrimeItem.prototype.kind] = y.PrimeItem),
              (o[y.SubsupItem.prototype.kind] = y.SubsupItem),
              (o[y.OverItem.prototype.kind] = y.OverItem),
              (o[y.LeftItem.prototype.kind] = y.LeftItem),
              (o[y.Middle.prototype.kind] = y.Middle),
              (o[y.RightItem.prototype.kind] = y.RightItem),
              (o[y.BeginItem.prototype.kind] = y.BeginItem),
              (o[y.EndItem.prototype.kind] = y.EndItem),
              (o[y.StyleItem.prototype.kind] = y.StyleItem),
              (o[y.PositionItem.prototype.kind] = y.PositionItem),
              (o[y.CellItem.prototype.kind] = y.CellItem),
              (o[y.MmlItem.prototype.kind] = y.MmlItem),
              (o[y.FnItem.prototype.kind] = y.FnItem),
              (o[y.NotItem.prototype.kind] = y.NotItem),
              (o[y.NonscriptItem.prototype.kind] = y.NonscriptItem),
              (o[y.DotsItem.prototype.kind] = y.DotsItem),
              (o[y.ArrayItem.prototype.kind] = y.ArrayItem),
              (o[y.EqnArrayItem.prototype.kind] = y.EqnArrayItem),
              (o[y.EquationItem.prototype.kind] = y.EquationItem),
              o),
            options: { maxMacros: 1e3, baseURL: 'undefined' == typeof document || 0 === document.getElementsByTagName('base').length ? '' : String(document.location).replace(/#.*$/, '') },
            tags: { base: _ },
            postprocessors: [
              [
                function (t) {
                  var e,
                    r,
                    n = t.data
                  try {
                    for (var o = c(n.getList('nonscript')), i = o.next(); !i.done; i = o.next()) {
                      var s = i.value
                      if (s.attributes.get('scriptlevel') > 0) {
                        var a = s.parent
                        if ((a.childNodes.splice(a.childIndex(s), 1), n.removeFromList(s.kind, [s]), s.isKind('mrow'))) {
                          var l = s.childNodes[0]
                          n.removeFromList('mstyle', [l]), n.removeFromList('mspace', l.childNodes[0].childNodes)
                        }
                      } else s.isKind('mrow') && (s.parent.replaceChild(s.childNodes[0], s), n.removeFromList('mrow', [s]))
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      i && !i.done && (r = o.return) && r.call(o)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                },
                -4
              ]
            ]
          }))
      },
      1181: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          a =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.EquationItem =
            e.EqnArrayItem =
            e.ArrayItem =
            e.DotsItem =
            e.NonscriptItem =
            e.NotItem =
            e.FnItem =
            e.MmlItem =
            e.CellItem =
            e.PositionItem =
            e.StyleItem =
            e.EndItem =
            e.BeginItem =
            e.RightItem =
            e.Middle =
            e.LeftItem =
            e.OverItem =
            e.SubsupItem =
            e.PrimeItem =
            e.CloseItem =
            e.OpenItem =
            e.StopItem =
            e.StartItem =
              void 0)
        var l = r(2947),
          c = r(5368),
          u = r(9007),
          p = a(r(3971)),
          h = a(r(1130)),
          f = a(r(1256)),
          d = r(8292),
          m = (function (t) {
            function e(e, r) {
              var n = t.call(this, e) || this
              return (n.global = r), n
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'start'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isOpen', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.checkItem = function (e) {
                if (e.isKind('stop')) {
                  var r = this.toMml()
                  return this.global.isInner || (r = this.factory.configuration.tags.finalize(r, this.env)), [[this.factory.create('mml', r)], !0]
                }
                return t.prototype.checkItem.call(this, e)
              }),
              e
            )
          })(d.BaseItem)
        e.StartItem = m
        var y = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'stop'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.StopItem = y
        var g = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'open'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isOpen', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isKind('close')) {
                var r = this.toMml(),
                  n = this.create('node', 'TeXAtom', [r])
                return [[this.factory.create('mml', n)], !0]
              }
              return t.prototype.checkItem.call(this, e)
            }),
            (e.errors = Object.assign(Object.create(d.BaseItem.errors), { stop: ['ExtraOpenMissingClose', 'Extra open brace or missing close brace'] })),
            e
          )
        })(d.BaseItem)
        e.OpenItem = g
        var b = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'close'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.CloseItem = b
        var v = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'prime'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (t) {
              var e = i(this.Peek(2), 2),
                r = e[0],
                n = e[1]
              return !f.default.isType(r, 'msubsup') || f.default.isType(r, 'msup') ? [[this.create('node', 'msup', [r, n]), t], !0] : (f.default.setChild(r, r.sup, n), [[r, t], !0])
            }),
            e
          )
        })(d.BaseItem)
        e.PrimeItem = v
        var _ = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'subsup'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isKind('open') || e.isKind('left')) return d.BaseItem.success
              var r = this.First,
                n = this.getProperty('position')
              if (e.isKind('mml')) {
                if (this.getProperty('primes'))
                  if (2 !== n) f.default.setChild(r, 2, this.getProperty('primes'))
                  else {
                    f.default.setProperty(this.getProperty('primes'), 'variantForm', !0)
                    var o = this.create('node', 'mrow', [this.getProperty('primes'), e.First])
                    e.First = o
                  }
                return f.default.setChild(r, n, e.First), null != this.getProperty('movesupsub') && f.default.setProperty(r, 'movesupsub', this.getProperty('movesupsub')), [[this.factory.create('mml', r)], !0]
              }
              if (t.prototype.checkItem.call(this, e)[1]) {
                var a = this.getErrors(['', 'sub', 'sup'][n])
                throw new (p.default.bind.apply(p.default, s([void 0, a[0], a[1]], i(a.splice(2)), !1)))()
              }
              return null
            }),
            (e.errors = Object.assign(Object.create(d.BaseItem.errors), {
              stop: ['MissingScript', 'Missing superscript or subscript argument'],
              sup: ['MissingOpenForSup', 'Missing open brace for superscript'],
              sub: ['MissingOpenForSub', 'Missing open brace for subscript']
            })),
            e
          )
        })(d.BaseItem)
        e.SubsupItem = _
        var S = (function (t) {
          function e(e) {
            var r = t.call(this, e) || this
            return r.setProperty('name', '\\over'), r
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'over'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isKind('over')) throw new p.default('AmbiguousUseOf', 'Ambiguous use of %1', e.getName())
              if (e.isClose) {
                var r = this.create('node', 'mfrac', [this.getProperty('num'), this.toMml(!1)])
                return (
                  null != this.getProperty('thickness') && f.default.setAttribute(r, 'linethickness', this.getProperty('thickness')),
                  (this.getProperty('open') || this.getProperty('close')) && (f.default.setProperty(r, 'withDelims', !0), (r = h.default.fixedFence(this.factory.configuration, this.getProperty('open'), r, this.getProperty('close')))),
                  [[this.factory.create('mml', r), e], !0]
                )
              }
              return t.prototype.checkItem.call(this, e)
            }),
            (e.prototype.toString = function () {
              return 'over[' + this.getProperty('num') + ' / ' + this.nodes.join('; ') + ']'
            }),
            e
          )
        })(d.BaseItem)
        e.OverItem = S
        var M = (function (t) {
          function e(e, r) {
            var n = t.call(this, e) || this
            return n.setProperty('delim', r), n
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'left'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isOpen', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isKind('right')) return [[this.factory.create('mml', h.default.fenced(this.factory.configuration, this.getProperty('delim'), this.toMml(), e.getProperty('delim'), '', e.getProperty('color')))], !0]
              if (e.isKind('middle')) {
                var r = { stretchy: !0 }
                return (
                  e.getProperty('color') && (r.mathcolor = e.getProperty('color')),
                  this.Push(this.create('node', 'TeXAtom', [], { texClass: u.TEXCLASS.CLOSE }), this.create('token', 'mo', r, e.getProperty('delim')), this.create('node', 'TeXAtom', [], { texClass: u.TEXCLASS.OPEN })),
                  (this.env = {}),
                  [[this], !0]
                )
              }
              return t.prototype.checkItem.call(this, e)
            }),
            (e.errors = Object.assign(Object.create(d.BaseItem.errors), { stop: ['ExtraLeftMissingRight', 'Extra \\left or missing \\right'] })),
            e
          )
        })(d.BaseItem)
        e.LeftItem = M
        var O = (function (t) {
          function e(e, r, n) {
            var o = t.call(this, e) || this
            return o.setProperty('delim', r), n && o.setProperty('color', n), o
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'middle'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.Middle = O
        var x = (function (t) {
          function e(e, r, n) {
            var o = t.call(this, e) || this
            return o.setProperty('delim', r), n && o.setProperty('color', n), o
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'right'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.RightItem = x
        var E = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'begin'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isOpen', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isKind('end')) {
                if (e.getName() !== this.getName()) throw new p.default('EnvBadEnd', '\\begin{%1} ended with \\end{%2}', this.getName(), e.getName())
                return this.getProperty('end') ? d.BaseItem.fail : [[this.factory.create('mml', this.toMml())], !0]
              }
              if (e.isKind('stop')) throw new p.default('EnvMissingEnd', 'Missing \\end{%1}', this.getName())
              return t.prototype.checkItem.call(this, e)
            }),
            e
          )
        })(d.BaseItem)
        e.BeginItem = E
        var A = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'end'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.EndItem = A
        var C = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'style'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (!e.isClose) return t.prototype.checkItem.call(this, e)
              var r = this.create('node', 'mstyle', this.nodes, this.getProperty('styles'))
              return [[this.factory.create('mml', r), e], !0]
            }),
            e
          )
        })(d.BaseItem)
        e.StyleItem = C
        var T = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'position'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isClose) throw new p.default('MissingBoxFor', 'Missing box for %1', this.getName())
              if (e.isFinal) {
                var r = e.toMml()
                switch (this.getProperty('move')) {
                  case 'vertical':
                    return (r = this.create('node', 'mpadded', [r], { height: this.getProperty('dh'), depth: this.getProperty('dd'), voffset: this.getProperty('dh') })), [[this.factory.create('mml', r)], !0]
                  case 'horizontal':
                    return [[this.factory.create('mml', this.getProperty('left')), e, this.factory.create('mml', this.getProperty('right'))], !0]
                }
              }
              return t.prototype.checkItem.call(this, e)
            }),
            e
          )
        })(d.BaseItem)
        e.PositionItem = T
        var N = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'cell'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isClose', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.CellItem = N
        var w = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'isFinal', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'mml'
              },
              enumerable: !1,
              configurable: !0
            }),
            e
          )
        })(d.BaseItem)
        e.MmlItem = w
        var L = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'fn'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              var r = this.First
              if (r) {
                if (e.isOpen) return d.BaseItem.success
                if (!e.isKind('fn')) {
                  var n = e.First
                  if (!e.isKind('mml') || !n) return [[r, e], !0]
                  if ((f.default.isType(n, 'mstyle') && n.childNodes.length && f.default.isType(n.childNodes[0].childNodes[0], 'mspace')) || f.default.isType(n, 'mspace')) return [[r, e], !0]
                  f.default.isEmbellished(n) && (n = f.default.getCoreMO(n))
                  var o = f.default.getForm(n)
                  if (null != o && [0, 0, 1, 1, 0, 1, 1, 0, 0, 0][o[2]]) return [[r, e], !0]
                }
                var i = this.create('token', 'mo', { texClass: u.TEXCLASS.NONE }, c.entities.ApplyFunction)
                return [[r, i, e], !0]
              }
              return t.prototype.checkItem.apply(this, arguments)
            }),
            e
          )
        })(d.BaseItem)
        e.FnItem = L
        var I = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.remap = l.MapHandler.getMap('not_remap')), e
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'not'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (t) {
              var e, r, n
              if (t.isKind('open') || t.isKind('left')) return d.BaseItem.success
              if (
                t.isKind('mml') &&
                (f.default.isType(t.First, 'mo') || f.default.isType(t.First, 'mi') || f.default.isType(t.First, 'mtext')) &&
                ((e = t.First), 1 === (r = f.default.getText(e)).length && !f.default.getProperty(e, 'movesupsub') && 1 === f.default.getChildren(e).length)
              )
                return this.remap.contains(r) ? ((n = this.create('text', this.remap.lookup(r).char)), f.default.setChild(e, 0, n)) : ((n = this.create('text', '\u0338')), f.default.appendChildren(e, [n])), [[t], !0]
              n = this.create('text', '\u29f8')
              var o = this.create('node', 'mtext', [], {}, n),
                i = this.create('node', 'mpadded', [o], { width: 0 })
              return [[(e = this.create('node', 'TeXAtom', [i], { texClass: u.TEXCLASS.REL })), t], !0]
            }),
            e
          )
        })(d.BaseItem)
        e.NotItem = I
        var P = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'nonscript'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (t) {
              if (t.isKind('mml') && 1 === t.Size()) {
                var e = t.First
                if ((e.isKind('mstyle') && e.notParent && (e = f.default.getChildren(f.default.getChildren(e)[0])[0]), e.isKind('mspace'))) {
                  if (e !== t.First) {
                    var r = this.create('node', 'mrow', [t.Pop()])
                    t.Push(r)
                  }
                  this.factory.configuration.addNode('nonscript', t.First)
                }
              }
              return [[t], !0]
            }),
            e
          )
        })(d.BaseItem)
        e.NonscriptItem = P
        var R = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'dots'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (t) {
              if (t.isKind('open') || t.isKind('left')) return d.BaseItem.success
              var e = this.getProperty('ldots'),
                r = t.First
              if (t.isKind('mml') && f.default.isEmbellished(r)) {
                var n = f.default.getTexClass(f.default.getCoreMO(r))
                ;(n !== u.TEXCLASS.BIN && n !== u.TEXCLASS.REL) || (e = this.getProperty('cdots'))
              }
              return [[e, t], !0]
            }),
            e
          )
        })(d.BaseItem)
        e.DotsItem = R
        var k = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.table = []), (e.row = []), (e.frame = []), (e.hfill = []), (e.arraydef = {}), (e.dashed = !1), e
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'array'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isOpen', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'copyEnv', {
              get: function () {
                return !1
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isClose && !e.isKind('over')) {
                if (e.getProperty('isEntry')) return this.EndEntry(), this.clearEnv(), d.BaseItem.fail
                if (e.getProperty('isCR')) return this.EndEntry(), this.EndRow(), this.clearEnv(), d.BaseItem.fail
                this.EndTable(), this.clearEnv()
                var r = this.factory.create('mml', this.createMml())
                if (this.getProperty('requireClose')) {
                  if (e.isKind('close')) return [[r], !0]
                  throw new p.default('MissingCloseBrace', 'Missing close brace')
                }
                return [[r, e], !0]
              }
              return t.prototype.checkItem.call(this, e)
            }),
            (e.prototype.createMml = function () {
              var t = this.arraydef.scriptlevel
              delete this.arraydef.scriptlevel
              var e = this.create('node', 'mtable', this.table, this.arraydef)
              return (
                t && e.setProperty('scriptlevel', t),
                4 === this.frame.length
                  ? f.default.setAttribute(e, 'frame', this.dashed ? 'dashed' : 'solid')
                  : this.frame.length &&
                    (this.arraydef.rowlines && (this.arraydef.rowlines = this.arraydef.rowlines.replace(/none( none)+$/, 'none')),
                    f.default.setAttribute(e, 'frame', ''),
                    (e = this.create('node', 'menclose', [e], { notation: this.frame.join(' ') })),
                    ('none' === (this.arraydef.columnlines || 'none') && 'none' === (this.arraydef.rowlines || 'none')) || f.default.setAttribute(e, 'data-padding', 0)),
                (this.getProperty('open') || this.getProperty('close')) && (e = h.default.fenced(this.factory.configuration, this.getProperty('open'), e, this.getProperty('close'))),
                e
              )
            }),
            (e.prototype.EndEntry = function () {
              var t = this.create('node', 'mtd', this.nodes)
              this.hfill.length &&
                (0 === this.hfill[0] && f.default.setAttribute(t, 'columnalign', 'right'), this.hfill[this.hfill.length - 1] === this.Size() && f.default.setAttribute(t, 'columnalign', f.default.getAttribute(t, 'columnalign') ? 'center' : 'left')),
                this.row.push(t),
                this.Clear(),
                (this.hfill = [])
            }),
            (e.prototype.EndRow = function () {
              var t
              this.getProperty('isNumbered') && 3 === this.row.length ? (this.row.unshift(this.row.pop()), (t = this.create('node', 'mlabeledtr', this.row))) : (t = this.create('node', 'mtr', this.row)), this.table.push(t), (this.row = [])
            }),
            (e.prototype.EndTable = function () {
              ;(this.Size() || this.row.length) && (this.EndEntry(), this.EndRow()), this.checkLines()
            }),
            (e.prototype.checkLines = function () {
              if (this.arraydef.rowlines) {
                var t = this.arraydef.rowlines.split(/ /)
                t.length === this.table.length ? (this.frame.push('bottom'), t.pop(), (this.arraydef.rowlines = t.join(' '))) : t.length < this.table.length - 1 && (this.arraydef.rowlines += ' none')
              }
              if (this.getProperty('rowspacing')) {
                for (var e = this.arraydef.rowspacing.split(/ /); e.length < this.table.length; ) e.push(this.getProperty('rowspacing') + 'em')
                this.arraydef.rowspacing = e.join(' ')
              }
            }),
            (e.prototype.addRowSpacing = function (t) {
              if (this.arraydef.rowspacing) {
                var e = this.arraydef.rowspacing.split(/ /)
                if (!this.getProperty('rowspacing')) {
                  var r = h.default.dimen2em(e[0])
                  this.setProperty('rowspacing', r)
                }
                for (var n = this.getProperty('rowspacing'); e.length < this.table.length; ) e.push(h.default.Em(n))
                ;(e[this.table.length - 1] = h.default.Em(Math.max(0, n + h.default.dimen2em(t)))), (this.arraydef.rowspacing = e.join(' '))
              }
            }),
            e
          )
        })(d.BaseItem)
        e.ArrayItem = k
        var j = (function (t) {
          function e(e) {
            for (var r = [], n = 1; n < arguments.length; n++) r[n - 1] = arguments[n]
            var o = t.call(this, e) || this
            return (o.maxrow = 0), o.factory.configuration.tags.start(r[0], r[2], r[1]), o
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'eqnarray'
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.EndEntry = function () {
              this.row.length && h.default.fixInitialMO(this.factory.configuration, this.nodes)
              var t = this.create('node', 'mtd', this.nodes)
              this.row.push(t), this.Clear()
            }),
            (e.prototype.EndRow = function () {
              this.row.length > this.maxrow && (this.maxrow = this.row.length)
              var t = 'mtr',
                e = this.factory.configuration.tags.getTag()
              e && ((this.row = [e].concat(this.row)), (t = 'mlabeledtr')), this.factory.configuration.tags.clearTag()
              var r = this.create('node', t, this.row)
              this.table.push(r), (this.row = [])
            }),
            (e.prototype.EndTable = function () {
              t.prototype.EndTable.call(this), this.factory.configuration.tags.end(), this.extendArray('columnalign', this.maxrow), this.extendArray('columnwidth', this.maxrow), this.extendArray('columnspacing', this.maxrow - 1)
            }),
            (e.prototype.extendArray = function (t, e) {
              if (this.arraydef[t]) {
                var r = this.arraydef[t].split(/ /),
                  n = s([], i(r), !1)
                if (n.length > 1) {
                  for (; n.length < e; ) n.push.apply(n, s([], i(r), !1))
                  this.arraydef[t] = n.slice(0, e).join(' ')
                }
              }
            }),
            e
          )
        })(k)
        e.EqnArrayItem = j
        var B = (function (t) {
          function e(e) {
            for (var r = [], n = 1; n < arguments.length; n++) r[n - 1] = arguments[n]
            var o = t.call(this, e) || this
            return o.factory.configuration.tags.start('equation', !0, r[0]), o
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'kind', {
              get: function () {
                return 'equation'
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'isOpen', {
              get: function () {
                return !0
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.checkItem = function (e) {
              if (e.isKind('end')) {
                var r = this.toMml(),
                  n = this.factory.configuration.tags.getTag()
                return this.factory.configuration.tags.end(), [[n ? this.factory.configuration.tags.enTag(r, n) : r, e], !0]
              }
              if (e.isKind('stop')) throw new p.default('EnvMissingEnd', 'Missing \\end{%1}', this.getName())
              return t.prototype.checkItem.call(this, e)
            }),
            e
          )
        })(d.BaseItem)
        e.EquationItem = B
      },
      1267: function (t, e, r) {
        var n =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          o =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          i =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && n(e, t, r)
              return o(e, t), e
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var a = i(r(9140)),
          l = r(8317),
          c = s(r(7693)),
          u = s(r(5450)),
          p = s(r(1130)),
          h = r(9007),
          f = r(6010)
        new a.RegExpMap('letter', u.default.variable, /[a-z]/i),
          new a.RegExpMap('digit', u.default.digit, /[0-9.,]/),
          new a.RegExpMap('command', u.default.controlSequence, /^\\/),
          new a.MacroMap(
            'special',
            { '{': 'Open', '}': 'Close', '~': 'Tilde', '^': 'Superscript', _: 'Subscript', ' ': 'Space', '\t': 'Space', '\r': 'Space', '\n': 'Space', "'": 'Prime', '%': 'Comment', '&': 'Entry', '#': 'Hash', '\xa0': 'Space', '\u2019': 'Prime' },
            c.default
          ),
          new a.CharacterMap('mathchar0mi', u.default.mathchar0mi, {
            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',
            S: ['\xa7', { mathvariant: l.TexConstant.Variant.NORMAL }],
            aleph: ['\u2135', { mathvariant: l.TexConstant.Variant.NORMAL }],
            hbar: ['\u210f', { variantForm: !0 }],
            imath: '\u0131',
            jmath: '\u0237',
            ell: '\u2113',
            wp: ['\u2118', { mathvariant: l.TexConstant.Variant.NORMAL }],
            Re: ['\u211c', { mathvariant: l.TexConstant.Variant.NORMAL }],
            Im: ['\u2111', { mathvariant: l.TexConstant.Variant.NORMAL }],
            partial: ['\u2202', { mathvariant: l.TexConstant.Variant.ITALIC }],
            infty: ['\u221e', { mathvariant: l.TexConstant.Variant.NORMAL }],
            prime: ['\u2032', { variantForm: !0 }],
            emptyset: ['\u2205', { mathvariant: l.TexConstant.Variant.NORMAL }],
            nabla: ['\u2207', { mathvariant: l.TexConstant.Variant.NORMAL }],
            top: ['\u22a4', { mathvariant: l.TexConstant.Variant.NORMAL }],
            bot: ['\u22a5', { mathvariant: l.TexConstant.Variant.NORMAL }],
            angle: ['\u2220', { mathvariant: l.TexConstant.Variant.NORMAL }],
            triangle: ['\u25b3', { mathvariant: l.TexConstant.Variant.NORMAL }],
            backslash: ['\u2216', { mathvariant: l.TexConstant.Variant.NORMAL }],
            forall: ['\u2200', { mathvariant: l.TexConstant.Variant.NORMAL }],
            exists: ['\u2203', { mathvariant: l.TexConstant.Variant.NORMAL }],
            neg: ['\xac', { mathvariant: l.TexConstant.Variant.NORMAL }],
            lnot: ['\xac', { mathvariant: l.TexConstant.Variant.NORMAL }],
            flat: ['\u266d', { mathvariant: l.TexConstant.Variant.NORMAL }],
            natural: ['\u266e', { mathvariant: l.TexConstant.Variant.NORMAL }],
            sharp: ['\u266f', { mathvariant: l.TexConstant.Variant.NORMAL }],
            clubsuit: ['\u2663', { mathvariant: l.TexConstant.Variant.NORMAL }],
            diamondsuit: ['\u2662', { mathvariant: l.TexConstant.Variant.NORMAL }],
            heartsuit: ['\u2661', { mathvariant: l.TexConstant.Variant.NORMAL }],
            spadesuit: ['\u2660', { mathvariant: l.TexConstant.Variant.NORMAL }]
          }),
          new a.CharacterMap('mathchar0mo', u.default.mathchar0mo, {
            surd: '\u221a',
            coprod: ['\u2210', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigvee: ['\u22c1', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigwedge: ['\u22c0', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            biguplus: ['\u2a04', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigcap: ['\u22c2', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigcup: ['\u22c3', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            int: ['\u222b', { texClass: h.TEXCLASS.OP }],
            intop: ['\u222b', { texClass: h.TEXCLASS.OP, movesupsub: !0, movablelimits: !0 }],
            iint: ['\u222c', { texClass: h.TEXCLASS.OP }],
            iiint: ['\u222d', { texClass: h.TEXCLASS.OP }],
            prod: ['\u220f', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            sum: ['\u2211', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigotimes: ['\u2a02', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigoplus: ['\u2a01', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            bigodot: ['\u2a00', { texClass: h.TEXCLASS.OP, movesupsub: !0 }],
            oint: ['\u222e', { texClass: h.TEXCLASS.OP }],
            bigsqcup: ['\u2a06', { texClass: h.TEXCLASS.OP, 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',
            divsymbol: '\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: '\u22a5',
            equiv: '\u2261',
            asymp: '\u224d',
            smile: '\u2323',
            frown: '\u2322',
            ne: '\u2260',
            neq: '\u2260',
            cong: '\u2245',
            doteq: '\u2250',
            bowtie: '\u22c8',
            models: '\u22a8',
            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',
            dotsc: '\u2026',
            dotsb: '\u22ef',
            dotsm: '\u22ef',
            dotsi: '\u22ef',
            dotso: '\u2026',
            ldotp: ['.', { texClass: h.TEXCLASS.PUNCT }],
            cdotp: ['\u22c5', { texClass: h.TEXCLASS.PUNCT }],
            colon: [':', { texClass: h.TEXCLASS.PUNCT }]
          }),
          new a.CharacterMap('mathchar7', u.default.mathchar7, {
            Gamma: '\u0393',
            Delta: '\u0394',
            Theta: '\u0398',
            Lambda: '\u039b',
            Xi: '\u039e',
            Pi: '\u03a0',
            Sigma: '\u03a3',
            Upsilon: '\u03a5',
            Phi: '\u03a6',
            Psi: '\u03a8',
            Omega: '\u03a9',
            _: '_',
            '#': '#',
            $: '$',
            '%': '%',
            '&': '&',
            And: '&'
          }),
          new a.DelimiterMap('delimiter', u.default.delimiter, {
            '(': '(',
            ')': ')',
            '[': '[',
            ']': ']',
            '<': '\u27e8',
            '>': '\u27e9',
            '\\lt': '\u27e8',
            '\\gt': '\u27e9',
            '/': '/',
            '|': ['|', { texClass: h.TEXCLASS.ORD }],
            '.': '',
            '\\\\': '\\',
            '\\lmoustache': '\u23b0',
            '\\rmoustache': '\u23b1',
            '\\lgroup': '\u27ee',
            '\\rgroup': '\u27ef',
            '\\arrowvert': '\u23d0',
            '\\Arrowvert': '\u2016',
            '\\bracevert': '\u23aa',
            '\\Vert': ['\u2016', { texClass: h.TEXCLASS.ORD }],
            '\\|': ['\u2016', { texClass: h.TEXCLASS.ORD }],
            '\\vert': ['|', { texClass: h.TEXCLASS.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 a.CommandMap(
            'macros',
            {
              displaystyle: ['SetStyle', 'D', !0, 0],
              textstyle: ['SetStyle', 'T', !1, 0],
              scriptstyle: ['SetStyle', 'S', !1, 1],
              scriptscriptstyle: ['SetStyle', 'SS', !1, 2],
              rm: ['SetFont', l.TexConstant.Variant.NORMAL],
              mit: ['SetFont', l.TexConstant.Variant.ITALIC],
              oldstyle: ['SetFont', l.TexConstant.Variant.OLDSTYLE],
              cal: ['SetFont', l.TexConstant.Variant.CALLIGRAPHIC],
              it: ['SetFont', l.TexConstant.Variant.MATHITALIC],
              bf: ['SetFont', l.TexConstant.Variant.BOLD],
              bbFont: ['SetFont', l.TexConstant.Variant.DOUBLESTRUCK],
              scr: ['SetFont', l.TexConstant.Variant.SCRIPT],
              frak: ['SetFont', l.TexConstant.Variant.FRAKTUR],
              sf: ['SetFont', l.TexConstant.Variant.SANSSERIF],
              tt: ['SetFont', l.TexConstant.Variant.MONOSPACE],
              mathrm: ['MathFont', l.TexConstant.Variant.NORMAL],
              mathup: ['MathFont', l.TexConstant.Variant.NORMAL],
              mathnormal: ['MathFont', ''],
              mathbf: ['MathFont', l.TexConstant.Variant.BOLD],
              mathbfup: ['MathFont', l.TexConstant.Variant.BOLD],
              mathit: ['MathFont', l.TexConstant.Variant.MATHITALIC],
              mathbfit: ['MathFont', l.TexConstant.Variant.BOLDITALIC],
              mathbb: ['MathFont', l.TexConstant.Variant.DOUBLESTRUCK],
              Bbb: ['MathFont', l.TexConstant.Variant.DOUBLESTRUCK],
              mathfrak: ['MathFont', l.TexConstant.Variant.FRAKTUR],
              mathbffrak: ['MathFont', l.TexConstant.Variant.BOLDFRAKTUR],
              mathscr: ['MathFont', l.TexConstant.Variant.SCRIPT],
              mathbfscr: ['MathFont', l.TexConstant.Variant.BOLDSCRIPT],
              mathsf: ['MathFont', l.TexConstant.Variant.SANSSERIF],
              mathsfup: ['MathFont', l.TexConstant.Variant.SANSSERIF],
              mathbfsf: ['MathFont', l.TexConstant.Variant.BOLDSANSSERIF],
              mathbfsfup: ['MathFont', l.TexConstant.Variant.BOLDSANSSERIF],
              mathsfit: ['MathFont', l.TexConstant.Variant.SANSSERIFITALIC],
              mathbfsfit: ['MathFont', l.TexConstant.Variant.SANSSERIFBOLDITALIC],
              mathtt: ['MathFont', l.TexConstant.Variant.MONOSPACE],
              mathcal: ['MathFont', l.TexConstant.Variant.CALLIGRAPHIC],
              mathbfcal: ['MathFont', l.TexConstant.Variant.BOLDCALLIGRAPHIC],
              symrm: ['MathFont', l.TexConstant.Variant.NORMAL],
              symup: ['MathFont', l.TexConstant.Variant.NORMAL],
              symnormal: ['MathFont', ''],
              symbf: ['MathFont', l.TexConstant.Variant.BOLD],
              symbfup: ['MathFont', l.TexConstant.Variant.BOLD],
              symit: ['MathFont', l.TexConstant.Variant.ITALIC],
              symbfit: ['MathFont', l.TexConstant.Variant.BOLDITALIC],
              symbb: ['MathFont', l.TexConstant.Variant.DOUBLESTRUCK],
              symfrak: ['MathFont', l.TexConstant.Variant.FRAKTUR],
              symbffrak: ['MathFont', l.TexConstant.Variant.BOLDFRAKTUR],
              symscr: ['MathFont', l.TexConstant.Variant.SCRIPT],
              symbfscr: ['MathFont', l.TexConstant.Variant.BOLDSCRIPT],
              symsf: ['MathFont', l.TexConstant.Variant.SANSSERIF],
              symsfup: ['MathFont', l.TexConstant.Variant.SANSSERIF],
              symbfsf: ['MathFont', l.TexConstant.Variant.BOLDSANSSERIF],
              symbfsfup: ['MathFont', l.TexConstant.Variant.BOLDSANSSERIF],
              symsfit: ['MathFont', l.TexConstant.Variant.SANSSERIFITALIC],
              symbfsfit: ['MathFont', l.TexConstant.Variant.SANSSERIFBOLDITALIC],
              symtt: ['MathFont', l.TexConstant.Variant.MONOSPACE],
              symcal: ['MathFont', l.TexConstant.Variant.CALLIGRAPHIC],
              symbfcal: ['MathFont', l.TexConstant.Variant.BOLDCALLIGRAPHIC],
              textrm: ['HBox', null, l.TexConstant.Variant.NORMAL],
              textup: ['HBox', null, l.TexConstant.Variant.NORMAL],
              textnormal: ['HBox'],
              textit: ['HBox', null, l.TexConstant.Variant.ITALIC],
              textbf: ['HBox', null, l.TexConstant.Variant.BOLD],
              textsf: ['HBox', null, l.TexConstant.Variant.SANSSERIF],
              texttt: ['HBox', null, l.TexConstant.Variant.MONOSPACE],
              tiny: ['SetSize', 0.5],
              Tiny: ['SetSize', 0.6],
              scriptsize: ['SetSize', 0.7],
              small: ['SetSize', 0.85],
              normalsize: ['SetSize', 1],
              large: ['SetSize', 1.2],
              Large: ['SetSize', 1.44],
              LARGE: ['SetSize', 1.73],
              huge: ['SetSize', 2.07],
              Huge: ['SetSize', 2.49],
              arcsin: 'NamedFn',
              arccos: 'NamedFn',
              arctan: 'NamedFn',
              arg: 'NamedFn',
              cos: 'NamedFn',
              cosh: 'NamedFn',
              cot: 'NamedFn',
              coth: 'NamedFn',
              csc: 'NamedFn',
              deg: 'NamedFn',
              det: 'NamedOp',
              dim: 'NamedFn',
              exp: 'NamedFn',
              gcd: 'NamedOp',
              hom: 'NamedFn',
              inf: 'NamedOp',
              ker: 'NamedFn',
              lg: 'NamedFn',
              lim: 'NamedOp',
              liminf: ['NamedOp', 'lim&thinsp;inf'],
              limsup: ['NamedOp', 'lim&thinsp;sup'],
              ln: 'NamedFn',
              log: 'NamedFn',
              max: 'NamedOp',
              min: 'NamedOp',
              Pr: 'NamedOp',
              sec: 'NamedFn',
              sin: 'NamedFn',
              sinh: 'NamedFn',
              sup: 'NamedOp',
              tan: 'NamedFn',
              tanh: 'NamedFn',
              limits: ['Limits', 1],
              nolimits: ['Limits', 0],
              overline: ['UnderOver', '2015'],
              underline: ['UnderOver', '2015'],
              overbrace: ['UnderOver', '23DE', 1],
              underbrace: ['UnderOver', '23DF', 1],
              overparen: ['UnderOver', '23DC'],
              underparen: ['UnderOver', '23DD'],
              overrightarrow: ['UnderOver', '2192'],
              underrightarrow: ['UnderOver', '2192'],
              overleftarrow: ['UnderOver', '2190'],
              underleftarrow: ['UnderOver', '2190'],
              overleftrightarrow: ['UnderOver', '2194'],
              underleftrightarrow: ['UnderOver', '2194'],
              overset: 'Overset',
              underset: 'Underset',
              overunderset: 'Overunderset',
              stackrel: ['Macro', '\\mathrel{\\mathop{#2}\\limits^{#1}}', 2],
              stackbin: ['Macro', '\\mathbin{\\mathop{#2}\\limits^{#1}}', 2],
              over: 'Over',
              overwithdelims: 'Over',
              atop: 'Over',
              atopwithdelims: 'Over',
              above: 'Over',
              abovewithdelims: 'Over',
              brace: ['Over', '{', '}'],
              brack: ['Over', '[', ']'],
              choose: ['Over', '(', ')'],
              frac: 'Frac',
              sqrt: 'Sqrt',
              root: 'Root',
              uproot: ['MoveRoot', 'upRoot'],
              leftroot: ['MoveRoot', 'leftRoot'],
              left: 'LeftRight',
              right: 'LeftRight',
              middle: 'LeftRight',
              llap: 'Lap',
              rlap: 'Lap',
              raise: 'RaiseLower',
              lower: 'RaiseLower',
              moveleft: 'MoveLeftRight',
              moveright: 'MoveLeftRight',
              ',': ['Spacer', f.MATHSPACE.thinmathspace],
              ':': ['Spacer', f.MATHSPACE.mediummathspace],
              '>': ['Spacer', f.MATHSPACE.mediummathspace],
              ';': ['Spacer', f.MATHSPACE.thickmathspace],
              '!': ['Spacer', f.MATHSPACE.negativethinmathspace],
              enspace: ['Spacer', 0.5],
              quad: ['Spacer', 1],
              qquad: ['Spacer', 2],
              thinspace: ['Spacer', f.MATHSPACE.thinmathspace],
              negthinspace: ['Spacer', f.MATHSPACE.negativethinmathspace],
              hskip: 'Hskip',
              hspace: 'Hskip',
              kern: 'Hskip',
              mskip: 'Hskip',
              mspace: 'Hskip',
              mkern: 'Hskip',
              rule: 'rule',
              Rule: ['Rule'],
              Space: ['Rule', 'blank'],
              nonscript: 'Nonscript',
              big: ['MakeBig', h.TEXCLASS.ORD, 0.85],
              Big: ['MakeBig', h.TEXCLASS.ORD, 1.15],
              bigg: ['MakeBig', h.TEXCLASS.ORD, 1.45],
              Bigg: ['MakeBig', h.TEXCLASS.ORD, 1.75],
              bigl: ['MakeBig', h.TEXCLASS.OPEN, 0.85],
              Bigl: ['MakeBig', h.TEXCLASS.OPEN, 1.15],
              biggl: ['MakeBig', h.TEXCLASS.OPEN, 1.45],
              Biggl: ['MakeBig', h.TEXCLASS.OPEN, 1.75],
              bigr: ['MakeBig', h.TEXCLASS.CLOSE, 0.85],
              Bigr: ['MakeBig', h.TEXCLASS.CLOSE, 1.15],
              biggr: ['MakeBig', h.TEXCLASS.CLOSE, 1.45],
              Biggr: ['MakeBig', h.TEXCLASS.CLOSE, 1.75],
              bigm: ['MakeBig', h.TEXCLASS.REL, 0.85],
              Bigm: ['MakeBig', h.TEXCLASS.REL, 1.15],
              biggm: ['MakeBig', h.TEXCLASS.REL, 1.45],
              Biggm: ['MakeBig', h.TEXCLASS.REL, 1.75],
              mathord: ['TeXAtom', h.TEXCLASS.ORD],
              mathop: ['TeXAtom', h.TEXCLASS.OP],
              mathopen: ['TeXAtom', h.TEXCLASS.OPEN],
              mathclose: ['TeXAtom', h.TEXCLASS.CLOSE],
              mathbin: ['TeXAtom', h.TEXCLASS.BIN],
              mathrel: ['TeXAtom', h.TEXCLASS.REL],
              mathpunct: ['TeXAtom', h.TEXCLASS.PUNCT],
              mathinner: ['TeXAtom', h.TEXCLASS.INNER],
              vcenter: ['TeXAtom', h.TEXCLASS.VCENTER],
              buildrel: 'BuildRel',
              hbox: ['HBox', 0],
              text: 'HBox',
              mbox: ['HBox', 0],
              fbox: 'FBox',
              boxed: ['Macro', '\\fbox{$\\displaystyle{#1}$}', 1],
              framebox: 'FrameBox',
              strut: 'Strut',
              mathstrut: ['Macro', '\\vphantom{(}'],
              phantom: 'Phantom',
              vphantom: ['Phantom', 1, 0],
              hphantom: ['Phantom', 0, 1],
              smash: 'Smash',
              acute: ['Accent', '00B4'],
              grave: ['Accent', '0060'],
              ddot: ['Accent', '00A8'],
              tilde: ['Accent', '007E'],
              bar: ['Accent', '00AF'],
              breve: ['Accent', '02D8'],
              check: ['Accent', '02C7'],
              hat: ['Accent', '005E'],
              vec: ['Accent', '2192'],
              dot: ['Accent', '02D9'],
              widetilde: ['Accent', '007E', 1],
              widehat: ['Accent', '005E', 1],
              matrix: 'Matrix',
              array: 'Matrix',
              pmatrix: ['Matrix', '(', ')'],
              cases: ['Matrix', '{', '', 'left left', null, '.1em', null, !0],
              eqalign: ['Matrix', null, null, 'right left', (0, f.em)(f.MATHSPACE.thickmathspace), '.5em', 'D'],
              displaylines: ['Matrix', null, null, 'center', null, '.5em', 'D'],
              cr: 'Cr',
              '\\': 'CrLaTeX',
              newline: ['CrLaTeX', !0],
              hline: ['HLine', 'solid'],
              hdashline: ['HLine', 'dashed'],
              eqalignno: ['Matrix', null, null, 'right left', (0, f.em)(f.MATHSPACE.thickmathspace), '.5em', 'D', null, 'right'],
              leqalignno: ['Matrix', null, null, 'right left', (0, f.em)(f.MATHSPACE.thickmathspace), '.5em', 'D', null, 'left'],
              hfill: 'HFill',
              hfil: 'HFill',
              hfilll: 'HFill',
              bmod: ['Macro', '\\mmlToken{mo}[lspace="thickmathspace" rspace="thickmathspace"]{mod}'],
              pmod: ['Macro', '\\pod{\\mmlToken{mi}{mod}\\kern 6mu #1}', 1],
              mod: ['Macro', '\\mathchoice{\\kern18mu}{\\kern12mu}{\\kern12mu}{\\kern12mu}\\mmlToken{mi}{mod}\\,\\,#1', 1],
              pod: ['Macro', '\\mathchoice{\\kern18mu}{\\kern8mu}{\\kern8mu}{\\kern8mu}(#1)', 1],
              iff: ['Macro', '\\;\\Longleftrightarrow\\;'],
              skew: ['Macro', '{{#2{#3\\mkern#1mu}\\mkern-#1mu}{}}', 3],
              pmb: ['Macro', '\\rlap{#1}\\kern1px{#1}', 1],
              TeX: ['Macro', 'T\\kern-.14em\\lower.5ex{E}\\kern-.115em X'],
              LaTeX: ['Macro', 'L\\kern-.325em\\raise.21em{\\scriptstyle{A}}\\kern-.17em\\TeX'],
              ' ': ['Macro', '\\text{ }'],
              not: 'Not',
              dots: 'Dots',
              space: 'Tilde',
              '\xa0': 'Tilde',
              begin: 'BeginEnd',
              end: 'BeginEnd',
              label: 'HandleLabel',
              ref: 'HandleRef',
              nonumber: 'HandleNoTag',
              mathchoice: 'MathChoice',
              mmlToken: 'MmlToken'
            },
            c.default
          ),
          new a.EnvironmentMap('environment', u.default.environment, { array: ['AlignedArray'], equation: ['Equation', null, !0], eqnarray: ['EqnArray', null, !0, !0, 'rcl', p.default.cols(0, f.MATHSPACE.thickmathspace), '.5em'] }, c.default),
          new a.CharacterMap('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'
          })
      },
      7693: function (t, e, r) {
        var n =
            (this && this.__assign) ||
            function () {
              return (
                (n =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                n.apply(this, arguments)
              )
            },
          o =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          i =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          s =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && o(e, t, r)
              return i(e, t), e
            },
          a =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          l =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var c = s(r(1181)),
          u = l(r(1256)),
          p = l(r(3971)),
          h = l(r(8417)),
          f = r(8317),
          d = l(r(1130)),
          m = r(9007),
          y = r(6521),
          g = r(6010),
          b = r(5368),
          v = r(7233),
          _ = {},
          S = { fontfamily: 1, fontsize: 1, fontweight: 1, fontstyle: 1, color: 1, background: 1, id: 1, class: 1, href: 1, style: 1 }
        function M(t, e) {
          var r = t.stack.env,
            n = r.inRoot
          r.inRoot = !0
          var o = new h.default(e, r, t.configuration),
            i = o.mml(),
            s = o.stack.global
          if (s.leftRoot || s.upRoot) {
            var a = {}
            s.leftRoot && (a.width = s.leftRoot), s.upRoot && ((a.voffset = s.upRoot), (a.height = s.upRoot)), (i = t.create('node', 'mpadded', [i], a))
          }
          return (r.inRoot = n), i
        }
        ;(_.Open = function (t, e) {
          t.Push(t.itemFactory.create('open'))
        }),
          (_.Close = function (t, e) {
            t.Push(t.itemFactory.create('close'))
          }),
          (_.Tilde = function (t, e) {
            t.Push(t.create('token', 'mtext', {}, b.entities.nbsp))
          }),
          (_.Space = function (t, e) {}),
          (_.Superscript = function (t, e) {
            var r, n, o
            t.GetNext().match(/\d/) && (t.string = t.string.substr(0, t.i + 1) + ' ' + t.string.substr(t.i + 1))
            var i = t.stack.Top()
            i.isKind('prime') ? ((o = (r = a(i.Peek(2), 2))[0]), (n = r[1]), t.stack.Pop()) : (o = t.stack.Prev()) || (o = t.create('token', 'mi', {}, ''))
            var s = u.default.getProperty(o, 'movesupsub'),
              l = u.default.isType(o, 'msubsup') ? o.sup : o.over
            if (
              (u.default.isType(o, 'msubsup') && !u.default.isType(o, 'msup') && u.default.getChildAt(o, o.sup)) ||
              (u.default.isType(o, 'munderover') && !u.default.isType(o, 'mover') && u.default.getChildAt(o, o.over) && !u.default.getProperty(o, 'subsupOK'))
            )
              throw new p.default('DoubleExponent', 'Double exponent: use braces to clarify')
            ;(u.default.isType(o, 'msubsup') && !u.default.isType(o, 'msup')) ||
              (s ? ((!u.default.isType(o, 'munderover') || u.default.isType(o, 'mover') || u.default.getChildAt(o, o.over)) && (o = t.create('node', 'munderover', [o], { movesupsub: !0 })), (l = o.over)) : (l = (o = t.create('node', 'msubsup', [o])).sup)),
              t.Push(t.itemFactory.create('subsup', o).setProperties({ position: l, primes: n, movesupsub: s }))
          }),
          (_.Subscript = function (t, e) {
            var r, n, o
            t.GetNext().match(/\d/) && (t.string = t.string.substr(0, t.i + 1) + ' ' + t.string.substr(t.i + 1))
            var i = t.stack.Top()
            i.isKind('prime') ? ((o = (r = a(i.Peek(2), 2))[0]), (n = r[1]), t.stack.Pop()) : (o = t.stack.Prev()) || (o = t.create('token', 'mi', {}, ''))
            var s = u.default.getProperty(o, 'movesupsub'),
              l = u.default.isType(o, 'msubsup') ? o.sub : o.under
            if (
              (u.default.isType(o, 'msubsup') && !u.default.isType(o, 'msup') && u.default.getChildAt(o, o.sub)) ||
              (u.default.isType(o, 'munderover') && !u.default.isType(o, 'mover') && u.default.getChildAt(o, o.under) && !u.default.getProperty(o, 'subsupOK'))
            )
              throw new p.default('DoubleSubscripts', 'Double subscripts: use braces to clarify')
            ;(u.default.isType(o, 'msubsup') && !u.default.isType(o, 'msup')) ||
              (s ? ((!u.default.isType(o, 'munderover') || u.default.isType(o, 'mover') || u.default.getChildAt(o, o.under)) && (o = t.create('node', 'munderover', [o], { movesupsub: !0 })), (l = o.under)) : (l = (o = t.create('node', 'msubsup', [o])).sub)),
              t.Push(t.itemFactory.create('subsup', o).setProperties({ position: l, primes: n, movesupsub: s }))
          }),
          (_.Prime = function (t, e) {
            var r = t.stack.Prev()
            if ((r || (r = t.create('node', 'mi')), u.default.isType(r, 'msubsup') && !u.default.isType(r, 'msup') && u.default.getChildAt(r, r.sup))) throw new p.default('DoubleExponentPrime', 'Prime causes double exponent: use braces to clarify')
            var n = ''
            t.i--
            do {
              ;(n += b.entities.prime), t.i++, (e = t.GetNext())
            } while ("'" === e || e === b.entities.rsquo)
            n = ['', '\u2032', '\u2033', '\u2034', '\u2057'][n.length] || n
            var o = t.create('token', 'mo', { variantForm: !0 }, n)
            t.Push(t.itemFactory.create('prime', r, o))
          }),
          (_.Comment = function (t, e) {
            for (; t.i < t.string.length && '\n' !== t.string.charAt(t.i); ) t.i++
          }),
          (_.Hash = function (t, e) {
            throw new p.default('CantUseHash1', "You can't use 'macro parameter character #' in math mode")
          }),
          (_.MathFont = function (t, e, r) {
            var o = t.GetArgument(e),
              i = new h.default(o, n(n({}, t.stack.env), { font: r, multiLetterIdentifiers: /^[a-zA-Z]+/, noAutoOP: !0 }), t.configuration).mml()
            t.Push(t.create('node', 'TeXAtom', [i]))
          }),
          (_.SetFont = function (t, e, r) {
            t.stack.env.font = r
          }),
          (_.SetStyle = function (t, e, r, n, o) {
            ;(t.stack.env.style = r), (t.stack.env.level = o), t.Push(t.itemFactory.create('style').setProperty('styles', { displaystyle: n, scriptlevel: o }))
          }),
          (_.SetSize = function (t, e, r) {
            ;(t.stack.env.size = r), t.Push(t.itemFactory.create('style').setProperty('styles', { mathsize: (0, g.em)(r) }))
          }),
          (_.Spacer = function (t, e, r) {
            var n = t.create('node', 'mspace', [], { width: (0, g.em)(r) }),
              o = t.create('node', 'mstyle', [n], { scriptlevel: 0 })
            t.Push(o)
          }),
          (_.LeftRight = function (t, e) {
            var r = e.substr(1)
            t.Push(t.itemFactory.create(r, t.GetDelimiter(e), t.stack.env.color))
          }),
          (_.NamedFn = function (t, e, r) {
            r || (r = e.substr(1))
            var n = t.create('token', 'mi', { texClass: m.TEXCLASS.OP }, r)
            t.Push(t.itemFactory.create('fn', n))
          }),
          (_.NamedOp = function (t, e, r) {
            r || (r = e.substr(1)), (r = r.replace(/&thinsp;/, '\u2006'))
            var n = t.create('token', 'mo', { movablelimits: !0, movesupsub: !0, form: f.TexConstant.Form.PREFIX, texClass: m.TEXCLASS.OP }, r)
            t.Push(n)
          }),
          (_.Limits = function (t, e, r) {
            var n = t.stack.Prev(!0)
            if (!n || (u.default.getTexClass(u.default.getCoreMO(n)) !== m.TEXCLASS.OP && null == u.default.getProperty(n, 'movesupsub'))) throw new p.default('MisplacedLimits', '%1 is allowed only on operators', t.currentCS)
            var o,
              i = t.stack.Top()
            u.default.isType(n, 'munderover') && !r
              ? ((o = t.create('node', 'msubsup')), u.default.copyChildren(n, o), (n = i.Last = o))
              : u.default.isType(n, 'msubsup') && r && ((o = t.create('node', 'munderover')), u.default.copyChildren(n, o), (n = i.Last = o)),
              u.default.setProperty(n, 'movesupsub', !!r),
              u.default.setProperties(u.default.getCoreMO(n), { movablelimits: !1 }),
              (u.default.getAttribute(n, 'movablelimits') || u.default.getProperty(n, 'movablelimits')) && u.default.setProperties(n, { movablelimits: !1 })
          }),
          (_.Over = function (t, e, r, n) {
            var o = t.itemFactory.create('over').setProperty('name', t.currentCS)
            r || n ? (o.setProperty('open', r), o.setProperty('close', n)) : e.match(/withdelims$/) && (o.setProperty('open', t.GetDelimiter(e)), o.setProperty('close', t.GetDelimiter(e))),
              e.match(/^\\above/) ? o.setProperty('thickness', t.GetDimen(e)) : (e.match(/^\\atop/) || r || n) && o.setProperty('thickness', 0),
              t.Push(o)
          }),
          (_.Frac = function (t, e) {
            var r = t.ParseArg(e),
              n = t.ParseArg(e),
              o = t.create('node', 'mfrac', [r, n])
            t.Push(o)
          }),
          (_.Sqrt = function (t, e) {
            var r = t.GetBrackets(e),
              n = t.GetArgument(e)
            '\\frac' === n && (n += '{' + t.GetArgument(n) + '}{' + t.GetArgument(n) + '}')
            var o = new h.default(n, t.stack.env, t.configuration).mml()
            ;(o = r ? t.create('node', 'mroot', [o, M(t, r)]) : t.create('node', 'msqrt', [o])), t.Push(o)
          }),
          (_.Root = function (t, e) {
            var r = t.GetUpTo(e, '\\of'),
              n = t.ParseArg(e),
              o = t.create('node', 'mroot', [n, M(t, r)])
            t.Push(o)
          }),
          (_.MoveRoot = function (t, e, r) {
            if (!t.stack.env.inRoot) throw new p.default('MisplacedMoveRoot', '%1 can appear only within a root', t.currentCS)
            if (t.stack.global[r]) throw new p.default('MultipleMoveRoot', 'Multiple use of %1', t.currentCS)
            var n = t.GetArgument(e)
            if (!n.match(/-?[0-9]+/)) throw new p.default('IntegerArg', 'The argument to %1 must be an integer', t.currentCS)
            '-' !== (n = parseInt(n, 10) / 15 + 'em').substr(0, 1) && (n = '+' + n), (t.stack.global[r] = n)
          }),
          (_.Accent = function (t, e, r, o) {
            var i = t.ParseArg(e),
              s = n(n({}, d.default.getFontDef(t)), { accent: !0, mathaccent: !0 }),
              a = u.default.createEntity(r),
              l = t.create('token', 'mo', s, a)
            u.default.setAttribute(l, 'stretchy', !!o)
            var c = u.default.isEmbellished(i) ? u.default.getCoreMO(i) : i
            ;(u.default.isType(c, 'mo') || u.default.getProperty(c, 'movablelimits')) && u.default.setProperties(c, { movablelimits: !1 })
            var p = t.create('node', 'munderover')
            u.default.setChild(p, 0, i), u.default.setChild(p, 1, null), u.default.setChild(p, 2, l)
            var h = t.create('node', 'TeXAtom', [p])
            t.Push(h)
          }),
          (_.UnderOver = function (t, e, r, n) {
            var o = u.default.createEntity(r),
              i = t.create('token', 'mo', { stretchy: !0, accent: !0 }, o),
              s = 'o' === e.charAt(1) ? 'over' : 'under',
              a = t.ParseArg(e)
            t.Push(d.default.underOver(t, a, i, s, n))
          }),
          (_.Overset = function (t, e) {
            var r = t.ParseArg(e),
              n = t.ParseArg(e)
            d.default.checkMovableLimits(n), r.isKind('mo') && u.default.setAttribute(r, 'accent', !1)
            var o = t.create('node', 'mover', [n, r])
            t.Push(o)
          }),
          (_.Underset = function (t, e) {
            var r = t.ParseArg(e),
              n = t.ParseArg(e)
            d.default.checkMovableLimits(n), r.isKind('mo') && u.default.setAttribute(r, 'accent', !1)
            var o = t.create('node', 'munder', [n, r], { accentunder: !1 })
            t.Push(o)
          }),
          (_.Overunderset = function (t, e) {
            var r = t.ParseArg(e),
              n = t.ParseArg(e),
              o = t.ParseArg(e)
            d.default.checkMovableLimits(o), r.isKind('mo') && u.default.setAttribute(r, 'accent', !1), n.isKind('mo') && u.default.setAttribute(n, 'accent', !1)
            var i = t.create('node', 'munderover', [o, n, r], { accent: !1, accentunder: !1 })
            t.Push(i)
          }),
          (_.TeXAtom = function (t, e, r) {
            var n,
              o,
              i,
              s = { texClass: r }
            if (r === m.TEXCLASS.OP) {
              s.movesupsub = s.movablelimits = !0
              var a = t.GetArgument(e),
                l = a.match(/^\s*\\rm\s+([a-zA-Z0-9 ]+)$/)
              l ? ((s.mathvariant = f.TexConstant.Variant.NORMAL), (o = t.create('token', 'mi', s, l[1]))) : ((i = new h.default(a, t.stack.env, t.configuration).mml()), (o = t.create('node', 'TeXAtom', [i], s))), (n = t.itemFactory.create('fn', o))
            } else (i = t.ParseArg(e)), (n = t.create('node', 'TeXAtom', [i], s))
            t.Push(n)
          }),
          (_.MmlToken = function (t, e) {
            var r,
              n = t.GetArgument(e),
              o = t.GetBrackets(e, '').replace(/^\s+/, ''),
              i = t.GetArgument(e),
              s = {},
              a = []
            try {
              r = t.create('node', n)
            } catch (t) {
              r = null
            }
            if (!r || !r.isToken) throw new p.default('NotMathMLToken', '%1 is not a token element', n)
            for (; '' !== o; ) {
              var l = o.match(/^([a-z]+)\s*=\s*('[^']*'|"[^"]*"|[^ ,]*)\s*,?\s*/i)
              if (!l) throw new p.default('InvalidMathMLAttr', 'Invalid MathML attribute: %1', o)
              if (!r.attributes.hasDefault(l[1]) && !S[l[1]]) throw new p.default('UnknownAttrForElement', '%1 is not a recognized attribute for %2', l[1], n)
              var c = d.default.MmlFilterAttribute(t, l[1], l[2].replace(/^(['"])(.*)\1$/, '$2'))
              c && ('true' === c.toLowerCase() ? (c = !0) : 'false' === c.toLowerCase() && (c = !1), (s[l[1]] = c), a.push(l[1])), (o = o.substr(l[0].length))
            }
            a.length && (s['mjx-keep-attrs'] = a.join(' '))
            var h = t.create('text', i)
            r.appendChild(h), u.default.setProperties(r, s), t.Push(r)
          }),
          (_.Strut = function (t, e) {
            var r = t.create('node', 'mrow'),
              n = t.create('node', 'mpadded', [r], { height: '8.6pt', depth: '3pt', width: 0 })
            t.Push(n)
          }),
          (_.Phantom = function (t, e, r, n) {
            var o = t.create('node', 'mphantom', [t.ParseArg(e)])
            ;(r || n) && ((o = t.create('node', 'mpadded', [o])), n && (u.default.setAttribute(o, 'height', 0), u.default.setAttribute(o, 'depth', 0)), r && u.default.setAttribute(o, 'width', 0))
            var i = t.create('node', 'TeXAtom', [o])
            t.Push(i)
          }),
          (_.Smash = function (t, e) {
            var r = d.default.trimSpaces(t.GetBrackets(e, '')),
              n = t.create('node', 'mpadded', [t.ParseArg(e)])
            switch (r) {
              case 'b':
                u.default.setAttribute(n, 'depth', 0)
                break
              case 't':
                u.default.setAttribute(n, 'height', 0)
                break
              default:
                u.default.setAttribute(n, 'height', 0), u.default.setAttribute(n, 'depth', 0)
            }
            var o = t.create('node', 'TeXAtom', [n])
            t.Push(o)
          }),
          (_.Lap = function (t, e) {
            var r = t.create('node', 'mpadded', [t.ParseArg(e)], { width: 0 })
            '\\llap' === e && u.default.setAttribute(r, 'lspace', '-1width')
            var n = t.create('node', 'TeXAtom', [r])
            t.Push(n)
          }),
          (_.RaiseLower = function (t, e) {
            var r = t.GetDimen(e),
              n = t.itemFactory.create('position').setProperties({ name: t.currentCS, move: 'vertical' })
            '-' === r.charAt(0) && ((r = r.slice(1)), (e = 'raise' === e.substr(1) ? '\\lower' : '\\raise')),
              '\\lower' === e ? (n.setProperty('dh', '-' + r), n.setProperty('dd', '+' + r)) : (n.setProperty('dh', '+' + r), n.setProperty('dd', '-' + r)),
              t.Push(n)
          }),
          (_.MoveLeftRight = function (t, e) {
            var r = t.GetDimen(e),
              n = '-' === r.charAt(0) ? r.slice(1) : '-' + r
            if ('\\moveleft' === e) {
              var o = r
              ;(r = n), (n = o)
            }
            t.Push(t.itemFactory.create('position').setProperties({ name: t.currentCS, move: 'horizontal', left: t.create('node', 'mspace', [], { width: r }), right: t.create('node', 'mspace', [], { width: n }) }))
          }),
          (_.Hskip = function (t, e) {
            var r = t.create('node', 'mspace', [], { width: t.GetDimen(e) })
            t.Push(r)
          }),
          (_.Nonscript = function (t, e) {
            t.Push(t.itemFactory.create('nonscript'))
          }),
          (_.Rule = function (t, e, r) {
            var n = { width: t.GetDimen(e), height: t.GetDimen(e), depth: t.GetDimen(e) }
            'blank' !== r && (n.mathbackground = t.stack.env.color || 'black')
            var o = t.create('node', 'mspace', [], n)
            t.Push(o)
          }),
          (_.rule = function (t, e) {
            var r = t.GetBrackets(e),
              n = t.GetDimen(e),
              o = t.GetDimen(e),
              i = t.create('node', 'mspace', [], { width: n, height: o, mathbackground: t.stack.env.color || 'black' })
            r && ((i = t.create('node', 'mpadded', [i], { voffset: r })), r.match(/^\-/) ? (u.default.setAttribute(i, 'height', r), u.default.setAttribute(i, 'depth', '+' + r.substr(1))) : u.default.setAttribute(i, 'height', '+' + r)), t.Push(i)
          }),
          (_.MakeBig = function (t, e, r, n) {
            var o = String((n *= 1.411764705882353)).replace(/(\.\d\d\d).+/, '$1') + 'em',
              i = t.GetDelimiter(e, !0),
              s = t.create('token', 'mo', { minsize: o, maxsize: o, fence: !0, stretchy: !0, symmetric: !0 }, i),
              a = t.create('node', 'TeXAtom', [s], { texClass: r })
            t.Push(a)
          }),
          (_.BuildRel = function (t, e) {
            var r = t.ParseUpTo(e, '\\over'),
              n = t.ParseArg(e),
              o = t.create('node', 'munderover')
            u.default.setChild(o, 0, n), u.default.setChild(o, 1, null), u.default.setChild(o, 2, r)
            var i = t.create('node', 'TeXAtom', [o], { texClass: m.TEXCLASS.REL })
            t.Push(i)
          }),
          (_.HBox = function (t, e, r, n) {
            t.PushAll(d.default.internalMath(t, t.GetArgument(e), r, n))
          }),
          (_.FBox = function (t, e) {
            var r = d.default.internalMath(t, t.GetArgument(e)),
              n = t.create('node', 'menclose', r, { notation: 'box' })
            t.Push(n)
          }),
          (_.FrameBox = function (t, e) {
            var r = t.GetBrackets(e),
              n = t.GetBrackets(e) || 'c',
              o = d.default.internalMath(t, t.GetArgument(e))
            r && (o = [t.create('node', 'mpadded', o, { width: r, 'data-align': (0, v.lookup)(n, { l: 'left', r: 'right' }, 'center') })])
            var i = t.create('node', 'TeXAtom', [t.create('node', 'menclose', o, { notation: 'box' })], { texClass: m.TEXCLASS.ORD })
            t.Push(i)
          }),
          (_.Not = function (t, e) {
            t.Push(t.itemFactory.create('not'))
          }),
          (_.Dots = function (t, e) {
            var r = u.default.createEntity('2026'),
              n = u.default.createEntity('22EF'),
              o = t.create('token', 'mo', { stretchy: !1 }, r),
              i = t.create('token', 'mo', { stretchy: !1 }, n)
            t.Push(t.itemFactory.create('dots').setProperties({ ldots: o, cdots: i }))
          }),
          (_.Matrix = function (t, e, r, n, o, i, s, a, l, c) {
            var u = t.GetNext()
            if ('' === u) throw new p.default('MissingArgFor', 'Missing argument for %1', t.currentCS)
            '{' === u ? t.i++ : ((t.string = u + '}' + t.string.slice(t.i + 1)), (t.i = 0))
            var h = t.itemFactory.create('array').setProperty('requireClose', !0)
            ;(h.arraydef = { rowspacing: s || '4pt', columnspacing: i || '1em' }),
              l && h.setProperty('isCases', !0),
              c && (h.setProperty('isNumbered', !0), (h.arraydef.side = c)),
              (r || n) && (h.setProperty('open', r), h.setProperty('close', n)),
              'D' === a && (h.arraydef.displaystyle = !0),
              null != o && (h.arraydef.columnalign = o),
              t.Push(h)
          }),
          (_.Entry = function (t, e) {
            t.Push(t.itemFactory.create('cell').setProperties({ isEntry: !0, name: e }))
            var r = t.stack.Top(),
              n = r.getProperty('casesEnv')
            if (r.getProperty('isCases') || n) {
              for (var o = t.string, i = 0, s = -1, a = t.i, l = o.length, c = n ? new RegExp('^\\\\end\\s*\\{'.concat(n.replace(/\*/, '\\*'), '\\}')) : null; a < l; ) {
                var u = o.charAt(a)
                if ('{' === u) i++, a++
                else if ('}' === u) 0 === i ? (l = 0) : (0 === --i && s < 0 && (s = a - t.i), a++)
                else {
                  if ('&' === u && 0 === i) throw new p.default('ExtraAlignTab', 'Extra alignment tab in \\cases text')
                  if ('\\' === u) {
                    var h = o.substr(a)
                    h.match(/^((\\cr)[^a-zA-Z]|\\\\)/) || (c && h.match(c)) ? (l = 0) : (a += 2)
                  } else a++
                }
              }
              var f = o.substr(t.i, a - t.i)
              if (!f.match(/^\s*\\text[^a-zA-Z]/) || s !== f.replace(/\s+$/, '').length - 1) {
                var m = d.default.internalMath(t, d.default.trimSpaces(f), 0)
                t.PushAll(m), (t.i = a)
              }
            }
          }),
          (_.Cr = function (t, e) {
            t.Push(t.itemFactory.create('cell').setProperties({ isCR: !0, name: e }))
          }),
          (_.CrLaTeX = function (t, e, r) {
            var n
            if ((void 0 === r && (r = !1), !r && ('*' === t.string.charAt(t.i) && t.i++, '[' === t.string.charAt(t.i)))) {
              var o = t.GetBrackets(e, ''),
                i = a(d.default.matchDimen(o), 2),
                s = i[0],
                l = i[1]
              if (o && !s) throw new p.default('BracketMustBeDimension', 'Bracket argument to %1 must be a dimension', t.currentCS)
              n = s + l
            }
            t.Push(t.itemFactory.create('cell').setProperties({ isCR: !0, name: e, linebreak: !0 }))
            var u,
              h = t.stack.Top()
            h instanceof c.ArrayItem ? n && h.addRowSpacing(n) : (n && ((u = t.create('node', 'mspace', [], { depth: n })), t.Push(u)), (u = t.create('node', 'mspace', [], { linebreak: f.TexConstant.LineBreak.NEWLINE })), t.Push(u))
          }),
          (_.HLine = function (t, e, r) {
            null == r && (r = 'solid')
            var n = t.stack.Top()
            if (!(n instanceof c.ArrayItem) || n.Size()) throw new p.default('Misplaced', 'Misplaced %1', t.currentCS)
            if (n.table.length) {
              for (var o = n.arraydef.rowlines ? n.arraydef.rowlines.split(/ /) : []; o.length < n.table.length; ) o.push('none')
              ;(o[n.table.length - 1] = r), (n.arraydef.rowlines = o.join(' '))
            } else n.frame.push('top')
          }),
          (_.HFill = function (t, e) {
            var r = t.stack.Top()
            if (!(r instanceof c.ArrayItem)) throw new p.default('UnsupportedHFill', 'Unsupported use of %1', t.currentCS)
            r.hfill.push(r.Size())
          }),
          (_.BeginEnd = function (t, e) {
            var r = t.GetArgument(e)
            if (r.match(/\\/i)) throw new p.default('InvalidEnv', "Invalid environment name '%1'", r)
            var n = t.configuration.handlers.get('environment').lookup(r)
            if (n && '\\end' === e) {
              if (!n.args[0]) {
                var o = t.itemFactory.create('end').setProperty('name', r)
                return void t.Push(o)
              }
              t.stack.env.closing = r
            }
            d.default.checkMaxMacros(t, !1), t.parse('environment', [t, r])
          }),
          (_.Array = function (t, e, r, n, o, i, s, a, l) {
            o || (o = t.GetArgument('\\begin{' + e.getName() + '}'))
            var c = ('c' + o).replace(/[^clr|:]/g, '').replace(/[^|:]([|:])+/g, '$1')
            o = (o = o
              .replace(/[^clr]/g, '')
              .split('')
              .join(' '))
              .replace(/l/g, 'left')
              .replace(/r/g, 'right')
              .replace(/c/g, 'center')
            var u = t.itemFactory.create('array')
            return (
              (u.arraydef = { columnalign: o, columnspacing: i || '1em', rowspacing: s || '4pt' }),
              c.match(/[|:]/) &&
                (c.charAt(0).match(/[|:]/) && (u.frame.push('left'), (u.dashed = ':' === c.charAt(0))),
                c.charAt(c.length - 1).match(/[|:]/) && u.frame.push('right'),
                (c = c.substr(1, c.length - 2)),
                (u.arraydef.columnlines = c
                  .split('')
                  .join(' ')
                  .replace(/[^|: ]/g, 'none')
                  .replace(/\|/g, 'solid')
                  .replace(/:/g, 'dashed'))),
              r && u.setProperty('open', t.convertDelimiter(r)),
              n && u.setProperty('close', t.convertDelimiter(n)),
              "'" === (a || '').charAt(1) && ((u.arraydef['data-cramped'] = !0), (a = a.charAt(0))),
              'D' === a ? (u.arraydef.displaystyle = !0) : a && (u.arraydef.displaystyle = !1),
              'S' === a && (u.arraydef.scriptlevel = 1),
              l && (u.arraydef.useHeight = !1),
              t.Push(e),
              u
            )
          }),
          (_.AlignedArray = function (t, e) {
            var r = t.GetBrackets('\\begin{' + e.getName() + '}'),
              n = _.Array(t, e)
            return d.default.setArrayAlign(n, r)
          }),
          (_.Equation = function (t, e, r) {
            return t.Push(e), d.default.checkEqnEnv(t), t.itemFactory.create('equation', r).setProperty('name', e.getName())
          }),
          (_.EqnArray = function (t, e, r, n, o, i) {
            t.Push(e),
              n && d.default.checkEqnEnv(t),
              (o = (o = o
                .replace(/[^clr]/g, '')
                .split('')
                .join(' '))
                .replace(/l/g, 'left')
                .replace(/r/g, 'right')
                .replace(/c/g, 'center'))
            var s = t.itemFactory.create('eqnarray', e.getName(), r, n, t.stack.global)
            return (s.arraydef = { displaystyle: !0, columnalign: o, columnspacing: i || '1em', rowspacing: '3pt', side: t.options.tagSide, minlabelspacing: t.options.tagIndent }), s
          }),
          (_.HandleNoTag = function (t, e) {
            t.tags.notag()
          }),
          (_.HandleLabel = function (t, e) {
            var r = t.GetArgument(e)
            if ('' !== r && !t.tags.refUpdate) {
              if (t.tags.label) throw new p.default('MultipleCommand', 'Multiple %1', t.currentCS)
              if (((t.tags.label = r), (t.tags.allLabels[r] || t.tags.labels[r]) && !t.options.ignoreDuplicateLabels)) throw new p.default('MultipleLabel', "Label '%1' multiply defined", r)
              t.tags.labels[r] = new y.Label()
            }
          }),
          (_.HandleRef = function (t, e, r) {
            var n = t.GetArgument(e),
              o = t.tags.allLabels[n] || t.tags.labels[n]
            o || (t.tags.refUpdate || (t.tags.redo = !0), (o = new y.Label()))
            var i = o.tag
            r && (i = t.tags.formatTag(i))
            var s = t.create('node', 'mrow', d.default.internalMath(t, i), { href: t.tags.formatUrl(o.id, t.options.baseURL), class: 'MathJax_ref' })
            t.Push(s)
          }),
          (_.Macro = function (t, e, r, n, o) {
            if (n) {
              var i = []
              if (null != o) {
                var s = t.GetBrackets(e)
                i.push(null == s ? o : s)
              }
              for (var a = i.length; a < n; a++) i.push(t.GetArgument(e))
              r = d.default.substituteArgs(t, i, r)
            }
            ;(t.string = d.default.addArgs(t, r, t.string.slice(t.i))), (t.i = 0), d.default.checkMaxMacros(t)
          }),
          (_.MathChoice = function (t, e) {
            var r = t.ParseArg(e),
              n = t.ParseArg(e),
              o = t.ParseArg(e),
              i = t.ParseArg(e)
            t.Push(t.create('node', 'MathChoice', [r, n, o, i]))
          }),
          (e.default = _)
      },
      8458: function (t, e, r) {
        var n,
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ConfigMacrosConfiguration = void 0)
        var s = r(9899),
          a = r(7233),
          l = r(9140),
          c = i(r(5450)),
          u = r(8803),
          p = i(r(1110)),
          h = r(6793),
          f = 'configmacros-map',
          d = 'configmacros-env-map'
        e.ConfigMacrosConfiguration = s.Configuration.create('configmacros', {
          init: function (t) {
            new l.CommandMap(f, {}, {}), new l.EnvironmentMap(d, c.default.environment, {}, {}), t.append(s.Configuration.local({ handler: { macro: [f], environment: [d] }, priority: 3 }))
          },
          config: function (t, e) {
            !(function (t) {
              var e,
                r,
                n = t.parseOptions.handlers.retrieve(f),
                i = t.parseOptions.options.macros
              try {
                for (var s = o(Object.keys(i)), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value,
                    c = 'string' == typeof i[l] ? [i[l]] : i[l],
                    h = Array.isArray(c[2]) ? new u.Macro(l, p.default.MacroWithTemplate, c.slice(0, 2).concat(c[2])) : new u.Macro(l, p.default.Macro, c)
                  n.add(l, h)
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  a && !a.done && (r = s.return) && r.call(s)
                } finally {
                  if (e) throw e.error
                }
              }
            })(e),
              (function (t) {
                var e,
                  r,
                  n = t.parseOptions.handlers.retrieve(d),
                  i = t.parseOptions.options.environments
                try {
                  for (var s = o(Object.keys(i)), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value
                    n.add(l, new u.Macro(l, p.default.BeginEnv, [!0].concat(i[l])))
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    a && !a.done && (r = s.return) && r.call(s)
                  } finally {
                    if (e) throw e.error
                  }
                }
              })(e)
          },
          items: ((n = {}), (n[h.BeginEnvItem.prototype.kind] = h.BeginEnvItem), n),
          options: { macros: (0, a.expandable)({}), environments: (0, a.expandable)({}) }
        })
      },
      1496: function (t, e, r) {
        var n,
          o =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          i =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          s =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && o(e, t, r)
              return i(e, t), e
            },
          a =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.NewcommandConfiguration = void 0)
        var l = r(9899),
          c = r(6793),
          u = a(r(5579))
        r(5117)
        var p = a(r(5450)),
          h = s(r(9140))
        e.NewcommandConfiguration = l.Configuration.create('newcommand', {
          handler: { macro: ['Newcommand-macros'] },
          items: ((n = {}), (n[c.BeginEnvItem.prototype.kind] = c.BeginEnvItem), n),
          options: { maxMacros: 1e3 },
          init: function (t) {
            new h.DelimiterMap(u.default.NEW_DELIMITER, p.default.delimiter, {}),
              new h.CommandMap(u.default.NEW_COMMAND, {}, {}),
              new h.EnvironmentMap(u.default.NEW_ENVIRONMENT, p.default.environment, {}, {}),
              t.append(l.Configuration.local({ handler: { character: [], delimiter: [u.default.NEW_DELIMITER], macro: [u.default.NEW_DELIMITER, u.default.NEW_COMMAND], environment: [u.default.NEW_ENVIRONMENT] }, priority: -1 }))
          }
        })
      },
      6793: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BeginEnvItem = void 0)
        var s = i(r(3971)),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'kind', {
                get: function () {
                  return 'beginEnv'
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'isOpen', {
                get: function () {
                  return !0
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.checkItem = function (e) {
                if (e.isKind('end')) {
                  if (e.getName() !== this.getName()) throw new s.default('EnvBadEnd', '\\begin{%1} ended with \\end{%2}', this.getName(), e.getName())
                  return [[this.factory.create('mml', this.toMml())], !0]
                }
                if (e.isKind('stop')) throw new s.default('EnvMissingEnd', 'Missing \\end{%1}', this.getName())
                return t.prototype.checkItem.call(this, e)
              }),
              e
            )
          })(r(8292).BaseItem)
        e.BeginEnvItem = a
      },
      5117: function (t, e, r) {
        var n =
          (this && this.__importDefault) ||
          function (t) {
            return t && t.__esModule ? t : { default: t }
          }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var o = n(r(1110))
        new (r(9140).CommandMap)('Newcommand-macros', { newcommand: 'NewCommand', renewcommand: 'NewCommand', newenvironment: 'NewEnvironment', renewenvironment: 'NewEnvironment', def: 'MacroDef', let: 'Let' }, o.default)
      },
      1110: function (t, e, r) {
        var n =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          o =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          i =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && n(e, t, r)
              return o(e, t), e
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var a = s(r(3971)),
          l = i(r(9140)),
          c = s(r(7693)),
          u = s(r(1130)),
          p = s(r(5579)),
          h = {
            NewCommand: function (t, e) {
              var r = p.default.GetCsNameArgument(t, e),
                n = p.default.GetArgCount(t, e),
                o = t.GetBrackets(e),
                i = t.GetArgument(e)
              p.default.addMacro(t, r, h.Macro, [i, n, o])
            },
            NewEnvironment: function (t, e) {
              var r = u.default.trimSpaces(t.GetArgument(e)),
                n = p.default.GetArgCount(t, e),
                o = t.GetBrackets(e),
                i = t.GetArgument(e),
                s = t.GetArgument(e)
              p.default.addEnvironment(t, r, h.BeginEnv, [!0, i, s, n, o])
            },
            MacroDef: function (t, e) {
              var r = p.default.GetCSname(t, e),
                n = p.default.GetTemplate(t, e, '\\' + r),
                o = t.GetArgument(e)
              n instanceof Array ? p.default.addMacro(t, r, h.MacroWithTemplate, [o].concat(n)) : p.default.addMacro(t, r, h.Macro, [o, n])
            },
            Let: function (t, e) {
              var r = p.default.GetCSname(t, e),
                n = t.GetNext()
              '=' === n && (t.i++, (n = t.GetNext()))
              var o = t.configuration.handlers
              if ('\\' !== n) {
                t.i++
                var i = o.get('delimiter').lookup(n)
                i ? p.default.addDelimiter(t, '\\' + r, i.char, i.attributes) : p.default.addMacro(t, r, h.Macro, [n])
              } else {
                e = p.default.GetCSname(t, e)
                var s = o.get('delimiter').lookup('\\' + e)
                if (s) return void p.default.addDelimiter(t, '\\' + r, s.char, s.attributes)
                var a = o.get('macro').applicable(e)
                if (!a) return
                if (a instanceof l.MacroMap) {
                  var c = a.lookup(e)
                  return void p.default.addMacro(t, r, c.func, c.args, c.symbol)
                }
                s = a.lookup(e)
                var u = p.default.disassembleSymbol(r, s)
                p.default.addMacro(
                  t,
                  r,
                  function (t, e) {
                    for (var r = [], n = 2; n < arguments.length; n++) r[n - 2] = arguments[n]
                    var o = p.default.assembleSymbol(r)
                    return a.parser(t, o)
                  },
                  u
                )
              }
            },
            MacroWithTemplate: function (t, e, r, n) {
              for (var o = [], i = 4; i < arguments.length; i++) o[i - 4] = arguments[i]
              var s = parseInt(n, 10)
              if (s) {
                var l = []
                if ((t.GetNext(), o[0] && !p.default.MatchParam(t, o[0]))) throw new a.default('MismatchUseDef', "Use of %1 doesn't match its definition", e)
                for (var c = 0; c < s; c++) l.push(p.default.GetParameter(t, e, o[c + 1]))
                r = u.default.substituteArgs(t, l, r)
              }
              ;(t.string = u.default.addArgs(t, r, t.string.slice(t.i))), (t.i = 0), u.default.checkMaxMacros(t)
            },
            BeginEnv: function (t, e, r, n, o, i) {
              if (e.getProperty('end') && t.stack.env.closing === e.getName()) {
                delete t.stack.env.closing
                var s = t.string.slice(t.i)
                return (t.string = n), (t.i = 0), t.Parse(), (t.string = s), (t.i = 0), t.itemFactory.create('end').setProperty('name', e.getName())
              }
              if (o) {
                var a = []
                if (null != i) {
                  var l = t.GetBrackets('\\begin{' + e.getName() + '}')
                  a.push(null == l ? i : l)
                }
                for (var c = a.length; c < o; c++) a.push(t.GetArgument('\\begin{' + e.getName() + '}'))
                ;(r = u.default.substituteArgs(t, a, r)), (n = u.default.substituteArgs(t, [], n))
              }
              return (t.string = u.default.addArgs(t, r, t.string.slice(t.i))), (t.i = 0), t.itemFactory.create('beginEnv').setProperty('name', e.getName())
            }
          }
        ;(h.Macro = c.default.Macro), (e.default = h)
      },
      5579: function (t, e, r) {
        var n =
          (this && this.__importDefault) ||
          function (t) {
            return t && t.__esModule ? t : { default: t }
          }
        Object.defineProperty(e, '__esModule', { value: !0 })
        var o,
          i = n(r(1130)),
          s = n(r(3971)),
          a = r(8803)
        !(function (t) {
          function e(t, e) {
            return t.string.substr(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)
          }
          ;(t.disassembleSymbol = function (t, e) {
            var r = [t, e.char]
            if (e.attributes) for (var n in e.attributes) r.push(n), r.push(e.attributes[n])
            return r
          }),
            (t.assembleSymbol = function (t) {
              for (var e = t[0], r = t[1], n = {}, o = 2; o < t.length; o += 2) n[t[o]] = t[o + 1]
              return new a.Symbol(e, r, n)
            }),
            (t.GetCSname = function (t, e) {
              if ('\\' !== t.GetNext()) throw new s.default('MissingCS', '%1 must be followed by a control sequence', e)
              return i.default.trimSpaces(t.GetArgument(e)).substr(1)
            }),
            (t.GetCsNameArgument = function (t, e) {
              var r = i.default.trimSpaces(t.GetArgument(e))
              if (('\\' === r.charAt(0) && (r = r.substr(1)), !r.match(/^(.|[a-z]+)$/i))) throw new s.default('IllegalControlSequenceName', 'Illegal control sequence name for %1', e)
              return r
            }),
            (t.GetArgCount = function (t, e) {
              var r = t.GetBrackets(e)
              if (r && !(r = i.default.trimSpaces(r)).match(/^[0-9]+$/)) throw new s.default('IllegalParamNumber', 'Illegal number of parameters specified in %1', e)
              return r
            }),
            (t.GetTemplate = function (t, e, r) {
              for (var n = t.GetNext(), o = [], i = 0, a = t.i; t.i < t.string.length; ) {
                if ('#' === (n = t.GetNext())) {
                  if ((a !== t.i && (o[i] = t.string.substr(a, t.i - a)), !(n = t.string.charAt(++t.i)).match(/^[1-9]$/))) throw new s.default('CantUseHash2', 'Illegal use of # in template for %1', r)
                  if (parseInt(n) !== ++i) throw new s.default('SequentialParam', 'Parameters for %1 must be numbered sequentially', r)
                  a = t.i + 1
                } else if ('{' === n) return a !== t.i && (o[i] = t.string.substr(a, t.i - a)), o.length > 0 ? [i.toString()].concat(o) : i
                t.i++
              }
              throw new s.default('MissingReplacementString', 'Missing replacement string for definition of %1', e)
            }),
            (t.GetParameter = function (t, r, n) {
              if (null == n) return t.GetArgument(r)
              for (var o = t.i, i = 0, a = 0; t.i < t.string.length; ) {
                var l = t.string.charAt(t.i)
                if ('{' === l) t.i === o && (a = 1), t.GetArgument(r), (i = t.i - o)
                else {
                  if (e(t, n)) return a && (o++, (i -= 2)), t.string.substr(o, i)
                  if ('\\' === l) {
                    t.i++, i++, (a = 0)
                    var c = t.string.substr(t.i).match(/[a-z]+|./i)
                    c && ((t.i += c[0].length), (i = t.i - o))
                  } else t.i++, i++, (a = 0)
                }
              }
              throw new s.default('RunawayArgument', 'Runaway argument for %1?', r)
            }),
            (t.MatchParam = e),
            (t.addDelimiter = function (e, r, n, o) {
              e.configuration.handlers.retrieve(t.NEW_DELIMITER).add(r, new a.Symbol(r, n, o))
            }),
            (t.addMacro = function (e, r, n, o, i) {
              void 0 === i && (i = ''), e.configuration.handlers.retrieve(t.NEW_COMMAND).add(r, new a.Macro(i || r, n, o))
            }),
            (t.addEnvironment = function (e, r, n, o) {
              e.configuration.handlers.retrieve(t.NEW_ENVIRONMENT).add(r, new a.Macro(r, n, o))
            }),
            (t.NEW_DELIMITER = 'new-Delimiter'),
            (t.NEW_COMMAND = 'new-Command'),
            (t.NEW_ENVIRONMENT = 'new-Environment')
        })(o || (o = {})),
          (e.default = o)
      },
      4898: function (t, e, r) {
        var n =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.NoUndefinedConfiguration = void 0)
        var o = r(9899)
        e.NoUndefinedConfiguration = o.Configuration.create('noundefined', {
          fallback: {
            macro: function (t, e) {
              var r,
                o,
                i = t.create('text', '\\' + e),
                s = t.options.noundefined || {},
                a = {}
              try {
                for (var l = n(['color', 'background', 'size']), c = l.next(); !c.done; c = l.next()) {
                  var u = c.value
                  s[u] && (a['math' + u] = s[u])
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  c && !c.done && (o = l.return) && o.call(l)
                } finally {
                  if (r) throw r.error
                }
              }
              t.Push(t.create('node', 'mtext', [], a, i))
            }
          },
          options: { noundefined: { color: 'red', background: '', size: '' } },
          priority: 3
        })
      },
      7741: function (t, e, r) {
        var n =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          s =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.RequireConfiguration = e.options = e.RequireMethods = e.RequireLoad = void 0)
        var a = r(9899),
          l = r(9140),
          c = s(r(3971)),
          u = r(9515),
          p = r(265),
          h = r(235),
          f = r(5713),
          d = r(7233),
          m = u.MathJax.config
        function y(t, e) {
          var r,
            o = t.parseOptions.options.require,
            i = t.parseOptions.packageData.get('require').required,
            s = e.substr(o.prefix.length)
          if (i.indexOf(s) < 0) {
            i.push(s),
              (function (t, e) {
                var r, o
                void 0 === e && (e = [])
                var i = t.parseOptions.options.require.prefix
                try {
                  for (var s = n(e), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value
                    l.substr(0, i.length) === i && y(t, l)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    a && !a.done && (o = s.return) && o.call(s)
                  } finally {
                    if (r) throw r.error
                  }
                }
              })(t, h.CONFIG.dependencies[e])
            var l = a.ConfigurationHandler.get(s)
            if (l) {
              var c = m[e] || {}
              l.options && 1 === Object.keys(l.options).length && l.options[s] && (((r = {})[s] = c), (c = r)), t.configuration.add(s, t, c)
              var u = t.parseOptions.packageData.get('require').configured
              l.preprocessors.length && !u.has(s) && (u.set(s, !0), f.mathjax.retryAfter(Promise.resolve()))
            }
          }
        }
        function g(t, e) {
          var r = t.options.require,
            n = r.allow,
            o = ('[' === e.substr(0, 1) ? '' : r.prefix) + e
          if (!(n.hasOwnProperty(o) ? n[o] : n.hasOwnProperty(e) ? n[e] : r.defaultAllow)) throw new c.default('BadRequire', 'Extension "%1" is not allowed to be loaded', o)
          p.Package.packages.has(o) ? y(t.configuration.packageData.get('require').jax, o) : f.mathjax.retryAfter(h.Loader.load(o))
        }
        ;(e.RequireLoad = g),
          (e.RequireMethods = {
            Require: function (t, e) {
              var r = t.GetArgument(e)
              if (r.match(/[^_a-zA-Z0-9]/) || '' === r) throw new c.default('BadPackageName', 'Argument for %1 is not a valid package name', e)
              g(t, r)
            }
          }),
          (e.options = { require: { allow: (0, d.expandable)({ base: !1, 'all-packages': !1, autoload: !1, configmacros: !1, tagformat: !1, setoptions: !1 }), defaultAllow: !0, prefix: 'tex' } }),
          new l.CommandMap('require', { require: 'Require' }, e.RequireMethods),
          (e.RequireConfiguration = a.Configuration.create('require', {
            handler: { macro: ['require'] },
            config: function (t, e) {
              e.parseOptions.packageData.set('require', { jax: e, required: i([], o(e.options.packages), !1), configured: new Map() })
              var r = e.parseOptions.options.require,
                n = r.prefix
              if (n.match(/[^_a-zA-Z0-9]/)) throw Error('Illegal characters used in \\require prefix')
              h.CONFIG.paths[n] || (h.CONFIG.paths[n] = '[mathjax]/input/tex/extensions'), (r.prefix = '[' + n + ']/')
            },
            options: e.options
          }))
      },
      5713: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.mathjax = void 0)
        var n = r(3282),
          o = r(805),
          i = r(4542)
        e.mathjax = {
          version: n.VERSION,
          handlers: new o.HandlerList(),
          document: function (t, r) {
            return e.mathjax.handlers.document(t, r)
          },
          handleRetriesFor: i.handleRetriesFor,
          retryAfter: i.retryAfter,
          asyncLoad: null
        }
      },
      50: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          a =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          l =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && s(e, t, r)
              return a(e, t), e
            },
          c =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTML = void 0)
        var u = r(3055),
          p = r(4139),
          h = r(9261),
          f = r(6797),
          d = r(2760),
          m = l(r(6010)),
          y = r(505),
          g = (function (t) {
            function e(e) {
              void 0 === e && (e = null)
              var r = t.call(this, e, h.CHTMLWrapperFactory, d.TeXFont) || this
              return (r.chtmlStyles = null), r.font.adaptiveCSS(r.options.adaptiveCSS), (r.wrapperUsage = new f.Usage()), r
            }
            return (
              o(e, t),
              (e.prototype.escaped = function (t, e) {
                return this.setDocument(e), this.html('span', {}, [this.text(t.math)])
              }),
              (e.prototype.styleSheet = function (r) {
                if (this.chtmlStyles) {
                  if (this.options.adaptiveCSS) {
                    var n = new p.CssStyles()
                    this.addWrapperStyles(n), this.updateFontStyles(n), this.adaptor.insertRules(this.chtmlStyles, n.getStyleRules())
                  }
                  return this.chtmlStyles
                }
                var o = (this.chtmlStyles = t.prototype.styleSheet.call(this, r))
                return this.adaptor.setAttribute(o, 'id', e.STYLESHEETID), this.wrapperUsage.update(), o
              }),
              (e.prototype.updateFontStyles = function (t) {
                t.addStyles(this.font.updateStyles({}))
              }),
              (e.prototype.addWrapperStyles = function (e) {
                var r, n
                if (this.options.adaptiveCSS)
                  try {
                    for (var o = c(this.wrapperUsage.update()), i = o.next(); !i.done; i = o.next()) {
                      var s = i.value,
                        a = this.factory.getNodeClass(s)
                      a && this.addClassStyles(a, e)
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      i && !i.done && (n = o.return) && n.call(o)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                else t.prototype.addWrapperStyles.call(this, e)
              }),
              (e.prototype.addClassStyles = function (e, r) {
                var n,
                  o = e
                o.autoStyle && 'unknown' !== o.kind && r.addStyles((((n = {})['mjx-' + o.kind] = { display: 'inline-block', 'text-align': 'left' }), n)), this.wrapperUsage.add(o.kind), t.prototype.addClassStyles.call(this, e, r)
              }),
              (e.prototype.processMath = function (t, e) {
                this.factory.wrap(t).toCHTML(e)
              }),
              (e.prototype.clearCache = function () {
                this.cssStyles.clear(), this.font.clearCache(), this.wrapperUsage.clear(), (this.chtmlStyles = null)
              }),
              (e.prototype.reset = function () {
                this.clearCache()
              }),
              (e.prototype.unknownText = function (t, e, r) {
                void 0 === r && (r = null)
                var n = {},
                  o = 100 / this.math.metrics.scale
                if ((100 !== o && ((n['font-size'] = this.fixed(o, 1) + '%'), (n.padding = m.em(75 / o) + ' 0 ' + m.em(20 / o) + ' 0')), '-explicitFont' !== e)) {
                  var i = (0, y.unicodeChars)(t)
                  ;(1 !== i.length || i[0] < 119808 || i[0] > 120831) && this.cssFontStyles(this.font.getCssFont(e), n)
                }
                if (null !== r) {
                  var s = this.math.metrics
                  n.width = Math.round(r * s.em * s.scale) + 'px'
                }
                return this.html('mjx-utext', { variant: e, style: n }, [this.text(t)])
              }),
              (e.prototype.measureTextNode = function (t) {
                var e = this.adaptor,
                  r = e.clone(t)
                e.setStyle(r, 'font-family', e.getStyle(r, 'font-family').replace(/MJXZERO, /g, ''))
                var n = this.html('mjx-measure-text', { style: { position: 'absolute', 'white-space': 'nowrap' } }, [r])
                e.append(e.parent(this.math.start.node), this.container), e.append(this.container, n)
                var o = e.nodeSize(r, this.math.metrics.em)[0] / this.math.metrics.scale
                return e.remove(this.container), e.remove(n), { w: o, h: 0.75, d: 0.2 }
              }),
              (e.NAME = 'CHTML'),
              (e.OPTIONS = i(i({}, u.CommonOutputJax.OPTIONS), { adaptiveCSS: !0, matchFontHeight: !0 })),
              (e.commonStyles = {
                'mjx-container[jax="CHTML"]': { 'line-height': 0 },
                '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' },
                'mjx-row > *': { display: 'table-cell' },
                'mjx-mtext': { display: 'inline-block' },
                'mjx-mstyle': { display: 'inline-block' },
                'mjx-merror': { display: 'inline-block', color: 'red', 'background-color': 'yellow' },
                'mjx-mphantom': { visibility: 'hidden' },
                '_::-webkit-full-page-media, _:future, :root mjx-container': { 'will-change': 'opacity' }
              }),
              (e.STYLESHEETID = 'MJX-CHTML-styles'),
              e
            )
          })(u.CommonOutputJax)
        e.CHTML = g
      },
      8042: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          a =
            (this && this.__exportStar) ||
            function (t, e) {
              for (var r in t) 'default' === r || Object.prototype.hasOwnProperty.call(e, r) || s(e, t, r)
            },
          l =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          c =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AddCSS = e.CHTMLFontData = void 0)
        var u = r(5884),
          p = r(6797),
          h = r(6010)
        a(r(5884), e)
        var f = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.charUsage = new p.Usage()), (e.delimUsage = new p.Usage()), e
          }
          return (
            o(e, t),
            (e.charOptions = function (e, r) {
              return t.charOptions.call(this, e, r)
            }),
            (e.prototype.adaptiveCSS = function (t) {
              this.options.adaptiveCSS = t
            }),
            (e.prototype.clearCache = function () {
              this.options.adaptiveCSS && (this.charUsage.clear(), this.delimUsage.clear())
            }),
            (e.prototype.createVariant = function (e, r, n) {
              void 0 === r && (r = null), void 0 === n && (n = null), t.prototype.createVariant.call(this, e, r, n)
              var o = this.constructor
              ;(this.variant[e].classes = o.defaultVariantClasses[e]), (this.variant[e].letter = o.defaultVariantLetters[e])
            }),
            (e.prototype.defineChars = function (r, n) {
              var o, i
              t.prototype.defineChars.call(this, r, n)
              var s = this.variant[r].letter
              try {
                for (var a = l(Object.keys(n)), c = a.next(); !c.done; c = a.next()) {
                  var u = c.value,
                    p = e.charOptions(n, parseInt(u))
                  void 0 === p.f && (p.f = s)
                }
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  c && !c.done && (i = a.return) && i.call(a)
                } finally {
                  if (o) throw o.error
                }
              }
            }),
            Object.defineProperty(e.prototype, 'styles', {
              get: function () {
                var t = this.constructor,
                  e = i({}, t.defaultStyles)
                return this.addFontURLs(e, t.defaultFonts, this.options.fontURL), this.options.adaptiveCSS ? this.updateStyles(e) : this.allStyles(e), e
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.updateStyles = function (t) {
              var e, r, n, o
              try {
                for (var i = l(this.delimUsage.update()), s = i.next(); !s.done; s = i.next()) {
                  var a = s.value
                  this.addDelimiterStyles(t, a, this.delimiters[a])
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  s && !s.done && (r = i.return) && r.call(i)
                } finally {
                  if (e) throw e.error
                }
              }
              try {
                for (var u = l(this.charUsage.update()), p = u.next(); !p.done; p = u.next()) {
                  var h = c(p.value, 2),
                    f = h[0],
                    d = ((a = h[1]), this.variant[f])
                  this.addCharStyles(t, d.letter, a, d.chars[a])
                }
              } catch (t) {
                n = { error: t }
              } finally {
                try {
                  p && !p.done && (o = u.return) && o.call(u)
                } finally {
                  if (n) throw n.error
                }
              }
              return t
            }),
            (e.prototype.allStyles = function (t) {
              var e, r, n, o, i, s
              try {
                for (var a = l(Object.keys(this.delimiters)), c = a.next(); !c.done; c = a.next()) {
                  var u = c.value,
                    p = parseInt(u)
                  this.addDelimiterStyles(t, p, this.delimiters[p])
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  c && !c.done && (r = a.return) && r.call(a)
                } finally {
                  if (e) throw e.error
                }
              }
              try {
                for (var h = l(Object.keys(this.variant)), f = h.next(); !f.done; f = h.next()) {
                  var d = f.value,
                    m = this.variant[d],
                    y = m.letter
                  try {
                    for (var g = ((i = void 0), l(Object.keys(m.chars))), b = g.next(); !b.done; b = g.next()) {
                      ;(u = b.value), (p = parseInt(u))
                      var v = m.chars[p]
                      ;(v[3] || {}).smp || (v.length < 4 && (v[3] = {}), this.addCharStyles(t, y, p, v))
                    }
                  } catch (t) {
                    i = { error: t }
                  } finally {
                    try {
                      b && !b.done && (s = g.return) && s.call(g)
                    } finally {
                      if (i) throw i.error
                    }
                  }
                }
              } catch (t) {
                n = { error: t }
              } finally {
                try {
                  f && !f.done && (o = h.return) && o.call(h)
                } finally {
                  if (n) throw n.error
                }
              }
            }),
            (e.prototype.addFontURLs = function (t, e, r) {
              var n, o
              try {
                for (var s = l(Object.keys(e)), a = s.next(); !a.done; a = s.next()) {
                  var c = a.value,
                    u = i({}, e[c])
                  ;(u.src = u.src.replace(/%%URL%%/, r)), (t[c] = u)
                }
              } catch (t) {
                n = { error: t }
              } finally {
                try {
                  a && !a.done && (o = s.return) && o.call(s)
                } finally {
                  if (n) throw n.error
                }
              }
            }),
            (e.prototype.addDelimiterStyles = function (t, e, r) {
              var n = this.charSelector(e)
              r.c && r.c !== e && (t['.mjx-stretched mjx-c' + (n = this.charSelector(r.c)) + '::before'] = { content: this.charContent(r.c) }), r.stretch && (1 === r.dir ? this.addDelimiterVStyles(t, n, r) : this.addDelimiterHStyles(t, n, r))
            }),
            (e.prototype.addDelimiterVStyles = function (t, e, r) {
              var n = r.HDW,
                o = c(r.stretch, 4),
                i = o[0],
                s = o[1],
                a = o[2],
                l = o[3],
                u = this.addDelimiterVPart(t, e, 'beg', i, n)
              this.addDelimiterVPart(t, e, 'ext', s, n)
              var p = this.addDelimiterVPart(t, e, 'end', a, n),
                h = {}
              if (l) {
                var f = this.addDelimiterVPart(t, e, 'mid', l, n)
                ;(h.height = '50%'), (t['mjx-stretchy-v' + e + ' > mjx-mid'] = { 'margin-top': this.em(-f / 2), 'margin-bottom': this.em(-f / 2) })
              }
              u && (h['border-top-width'] = this.em0(u - 0.03)),
                p && ((h['border-bottom-width'] = this.em0(p - 0.03)), (t['mjx-stretchy-v' + e + ' > mjx-end'] = { 'margin-top': this.em(-p) })),
                Object.keys(h).length && (t['mjx-stretchy-v' + e + ' > mjx-ext'] = h)
            }),
            (e.prototype.addDelimiterVPart = function (t, e, r, n, o) {
              if (!n) return 0
              var i = this.getDelimiterData(n),
                s = (o[2] - i[2]) / 2,
                a = { content: this.charContent(n) }
              return 'ext' !== r ? (a.padding = this.padding(i, s)) : ((a.width = this.em0(o[2])), s && (a['padding-left'] = this.em0(s))), (t['mjx-stretchy-v' + e + ' mjx-' + r + ' mjx-c::before'] = a), i[0] + i[1]
            }),
            (e.prototype.addDelimiterHStyles = function (t, e, r) {
              var n = c(r.stretch, 4),
                o = n[0],
                i = n[1],
                s = n[2],
                a = n[3],
                l = r.HDW
              this.addDelimiterHPart(t, e, 'beg', o, l), this.addDelimiterHPart(t, e, 'ext', i, l), this.addDelimiterHPart(t, e, 'end', s, l), a && (this.addDelimiterHPart(t, e, 'mid', a, l), (t['mjx-stretchy-h' + e + ' > mjx-ext'] = { width: '50%' }))
            }),
            (e.prototype.addDelimiterHPart = function (t, e, r, n, o) {
              if (n) {
                var i = this.getDelimiterData(n)[3],
                  s = { content: i && i.c ? '"' + i.c + '"' : this.charContent(n) }
                ;(s.padding = this.padding(o, 0, -o[2])), (t['mjx-stretchy-h' + e + ' mjx-' + r + ' mjx-c::before'] = s)
              }
            }),
            (e.prototype.addCharStyles = function (t, e, r, n) {
              var o = n[3],
                i = void 0 !== o.f ? o.f : e
              t['mjx-c' + this.charSelector(r) + (i ? '.TEX-' + i : '') + '::before'] = { padding: this.padding(n, 0, o.ic || 0), content: null != o.c ? '"' + o.c + '"' : this.charContent(r) }
            }),
            (e.prototype.getDelimiterData = function (t) {
              return this.getChar('-smallop', t)
            }),
            (e.prototype.em = function (t) {
              return (0, h.em)(t)
            }),
            (e.prototype.em0 = function (t) {
              return (0, h.em)(Math.max(0, t))
            }),
            (e.prototype.padding = function (t, e, r) {
              var n = c(t, 3),
                o = n[0],
                i = n[1]
              return void 0 === e && (e = 0), void 0 === r && (r = 0), [o, n[2] + r, i, e].map(this.em0).join(' ')
            }),
            (e.prototype.charContent = function (t) {
              return '"' + (t >= 32 && t <= 126 && 34 !== t && 39 !== t && 92 !== t ? String.fromCharCode(t) : '\\' + t.toString(16).toUpperCase()) + '"'
            }),
            (e.prototype.charSelector = function (t) {
              return '.mjx-c' + t.toString(16).toUpperCase()
            }),
            (e.OPTIONS = i(i({}, u.FontData.OPTIONS), { fontURL: '/mathJaxFont' })),
            (e.JAX = 'CHTML'),
            (e.defaultVariantClasses = {}),
            (e.defaultVariantLetters = {}),
            (e.defaultStyles = { 'mjx-c::before': { display: 'block', width: 0 } }),
            (e.defaultFonts = { '@font-face /* 0 */': { 'font-family': 'MJXZERO', src: 'url("%%URL%%/MathJax_Zero.woff") format("woff")' } }),
            e
          )
        })(u.FontData)
        ;(e.CHTMLFontData = f),
          (e.AddCSS = function (t, e) {
            var r, n
            try {
              for (var o = l(Object.keys(e)), i = o.next(); !i.done; i = o.next()) {
                var s = i.value,
                  a = parseInt(s)
                Object.assign(u.FontData.charOptions(t, a), e[a])
              }
            } catch (t) {
              r = { error: t }
            } finally {
              try {
                i && !i.done && (n = o.return) && n.call(o)
              } finally {
                if (r) throw r.error
              }
            }
            return t
          })
      },
      8270: function (t, e, r) {
        var n =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          o =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          i =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && n(e, t, r)
              return o(e, t), e
            },
          s =
            (this && this.__exportStar) ||
            function (t, e) {
              for (var r in t) 'default' === r || Object.prototype.hasOwnProperty.call(e, r) || n(e, t, r)
            },
          a =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Arrow = e.DiagonalArrow = e.DiagonalStrike = e.Border2 = e.Border = e.RenderElement = void 0)
        var l = i(r(5552))
        s(r(5552), e)
        e.RenderElement = function (t, e) {
          return (
            void 0 === e && (e = ''),
            function (r, n) {
              var o = r.adjustBorder(r.html('mjx-' + t))
              if (e) {
                var i = r.getOffset(e)
                if (r.thickness !== l.THICKNESS || i) {
                  var s = 'translate'.concat(e, '(').concat(r.em(r.thickness / 2 - i), ')')
                  r.adaptor.setStyle(o, 'transform', s)
                }
              }
              r.adaptor.append(r.chtml, o)
            }
          )
        }
        e.Border = function (t) {
          return l.CommonBorder(function (e, r) {
            e.adaptor.setStyle(r, 'border-' + t, e.em(e.thickness) + ' solid')
          })(t)
        }
        e.Border2 = function (t, e, r) {
          return l.CommonBorder2(function (t, n) {
            var o = t.em(t.thickness) + ' solid'
            t.adaptor.setStyle(n, 'border-' + e, o), t.adaptor.setStyle(n, 'border-' + r, o)
          })(t, e, r)
        }
        e.DiagonalStrike = function (t, e) {
          return l.CommonDiagonalStrike(function (t) {
            return function (r, n) {
              var o = r.getBBox(),
                i = o.w,
                s = o.h,
                l = o.d,
                c = a(r.getArgMod(i, s + l), 2),
                u = c[0],
                p = c[1],
                h = (e * r.thickness) / 2,
                f = r.adjustBorder(r.html(t, { style: { width: r.em(p), transform: 'rotate(' + r.fixed(-e * u) + 'rad) translateY(' + h + 'em)' } }))
              r.adaptor.append(r.chtml, f)
            }
          })(t)
        }
        e.DiagonalArrow = function (t) {
          return l.CommonDiagonalArrow(function (t, e) {
            t.adaptor.append(t.chtml, e)
          })(t)
        }
        e.Arrow = function (t) {
          return l.CommonArrow(function (t, e) {
            t.adaptor.append(t.chtml, e)
          })(t)
        }
      },
      6797: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Usage = void 0)
        var r = (function () {
          function t() {
            ;(this.used = new Set()), (this.needsUpdate = [])
          }
          return (
            (t.prototype.add = function (t) {
              var e = JSON.stringify(t)
              this.used.has(e) || this.needsUpdate.push(t), this.used.add(e)
            }),
            (t.prototype.has = function (t) {
              return this.used.has(JSON.stringify(t))
            }),
            (t.prototype.clear = function () {
              this.used.clear(), (this.needsUpdate = [])
            }),
            (t.prototype.update = function () {
              var t = this.needsUpdate
              return (this.needsUpdate = []), t
            }),
            t
          )
        })()
        e.Usage = r
      },
      5355: function (t, e, r) {
        var n,
          o,
          i =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          s =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          a =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          l =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && s(e, t, r)
              return a(e, t), e
            },
          c =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          u =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLWrapper = e.SPACE = e.FONTSIZE = void 0)
        var p = l(r(6010)),
          h = r(7519),
          f = r(6469)
        ;(e.FONTSIZE = { '70.7%': 's', '70%': 's', '50%': 'ss', '60%': 'Tn', '85%': 'sm', '120%': 'lg', '144%': 'Lg', '173%': 'LG', '207%': 'hg', '249%': 'HG' }),
          (e.SPACE = (((o = {})[p.em(2 / 18)] = '1'), (o[p.em(3 / 18)] = '2'), (o[p.em(4 / 18)] = '3'), (o[p.em(5 / 18)] = '4'), (o[p.em(6 / 18)] = '5'), o))
        var d = (function (t) {
          function r() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.chtml = null), e
          }
          return (
            i(r, t),
            (r.prototype.toCHTML = function (t) {
              var e,
                r,
                n = this.standardCHTMLnode(t)
              try {
                for (var o = c(this.childNodes), i = o.next(); !i.done; i = o.next()) {
                  i.value.toCHTML(n)
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  i && !i.done && (r = o.return) && r.call(o)
                } finally {
                  if (e) throw e.error
                }
              }
            }),
            (r.prototype.standardCHTMLnode = function (t) {
              this.markUsed()
              var e = this.createCHTMLnode(t)
              return this.handleStyles(), this.handleVariant(), this.handleScale(), this.handleColor(), this.handleSpace(), this.handleAttributes(), this.handlePWidth(), e
            }),
            (r.prototype.markUsed = function () {
              this.jax.wrapperUsage.add(this.kind)
            }),
            (r.prototype.createCHTMLnode = function (t) {
              var e = this.node.attributes.get('href')
              return e && (t = this.adaptor.append(t, this.html('a', { href: e }))), (this.chtml = this.adaptor.append(t, this.html('mjx-' + this.node.kind))), this.chtml
            }),
            (r.prototype.handleStyles = function () {
              if (this.styles) {
                var t = this.styles.cssText
                if (t) {
                  this.adaptor.setAttribute(this.chtml, 'style', t)
                  var e = this.styles.get('font-family')
                  e && this.adaptor.setStyle(this.chtml, 'font-family', 'MJXZERO, ' + e)
                }
              }
            }),
            (r.prototype.handleVariant = function () {
              this.node.isToken && '-explicitFont' !== this.variant && this.adaptor.setAttribute(this.chtml, 'class', (this.font.getVariant(this.variant) || this.font.getVariant('normal')).classes)
            }),
            (r.prototype.handleScale = function () {
              this.setScale(this.chtml, this.bbox.rscale)
            }),
            (r.prototype.setScale = function (t, r) {
              var n = Math.abs(r - 1) < 0.001 ? 1 : r
              if (t && 1 !== n) {
                var o = this.percent(n)
                e.FONTSIZE[o] ? this.adaptor.setAttribute(t, 'size', e.FONTSIZE[o]) : this.adaptor.setStyle(t, 'fontSize', o)
              }
              return t
            }),
            (r.prototype.handleSpace = function () {
              var t, r
              try {
                for (
                  var n = c([
                      [this.bbox.L, 'space', 'marginLeft'],
                      [this.bbox.R, 'rspace', 'marginRight']
                    ]),
                    o = n.next();
                  !o.done;
                  o = n.next()
                ) {
                  var i = o.value,
                    s = u(i, 3),
                    a = s[0],
                    l = s[1],
                    p = s[2]
                  if (a) {
                    var h = this.em(a)
                    e.SPACE[h] ? this.adaptor.setAttribute(this.chtml, l, e.SPACE[h]) : this.adaptor.setStyle(this.chtml, p, h)
                  }
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  o && !o.done && (r = n.return) && r.call(n)
                } finally {
                  if (t) throw t.error
                }
              }
            }),
            (r.prototype.handleColor = function () {
              var t = this.node.attributes,
                e = t.getExplicit('mathcolor'),
                r = t.getExplicit('color'),
                n = t.getExplicit('mathbackground'),
                o = t.getExplicit('background')
              ;(e || r) && this.adaptor.setStyle(this.chtml, 'color', e || r), (n || o) && this.adaptor.setStyle(this.chtml, 'backgroundColor', n || o)
            }),
            (r.prototype.handleAttributes = function () {
              var t,
                e,
                n,
                o,
                i = this.node.attributes,
                s = i.getAllDefaults(),
                a = r.skipAttributes
              try {
                for (var l = c(i.getExplicitNames()), u = l.next(); !u.done; u = l.next()) {
                  var p = u.value
                  ;(!1 !== a[p] && (p in s || a[p] || this.adaptor.hasAttribute(this.chtml, p))) || this.adaptor.setAttribute(this.chtml, p, i.getExplicit(p))
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  u && !u.done && (e = l.return) && e.call(l)
                } finally {
                  if (t) throw t.error
                }
              }
              if (i.get('class')) {
                var h = i.get('class').trim().split(/ +/)
                try {
                  for (var f = c(h), d = f.next(); !d.done; d = f.next()) {
                    var m = d.value
                    this.adaptor.addClass(this.chtml, m)
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    d && !d.done && (o = f.return) && o.call(f)
                  } finally {
                    if (n) throw n.error
                  }
                }
              }
            }),
            (r.prototype.handlePWidth = function () {
              this.bbox.pwidth && (this.bbox.pwidth === f.BBox.fullWidth ? this.adaptor.setAttribute(this.chtml, 'width', 'full') : this.adaptor.setStyle(this.chtml, 'width', this.bbox.pwidth))
            }),
            (r.prototype.setIndent = function (t, e, r) {
              var n = this.adaptor
              if ('center' === e || 'left' === e) {
                var o = this.getBBox().L
                n.setStyle(t, 'margin-left', this.em(r + o))
              }
              if ('center' === e || 'right' === e) {
                var i = this.getBBox().R
                n.setStyle(t, 'margin-right', this.em(-r + i))
              }
            }),
            (r.prototype.drawBBox = function () {
              var t = this.getBBox(),
                e = t.w,
                r = t.h,
                n = t.d,
                o = t.R,
                i = this.html('mjx-box', { style: { opacity: 0.25, 'margin-left': this.em(-e - o) } }, [
                  this.html('mjx-box', { style: { height: this.em(r), width: this.em(e), 'background-color': 'red' } }),
                  this.html('mjx-box', { style: { height: this.em(n), width: this.em(e), 'margin-left': this.em(-e), 'vertical-align': this.em(-n), 'background-color': 'green' } })
                ]),
                s = this.chtml || this.parent.chtml,
                a = this.adaptor.getAttribute(s, 'size')
              a && this.adaptor.setAttribute(i, 'size', a)
              var l = this.adaptor.getStyle(s, 'fontSize')
              l && this.adaptor.setStyle(i, 'fontSize', l), this.adaptor.append(this.adaptor.parent(s), i), this.adaptor.setStyle(s, 'backgroundColor', '#FFEE00')
            }),
            (r.prototype.html = function (t, e, r) {
              return void 0 === e && (e = {}), void 0 === r && (r = []), this.jax.html(t, e, r)
            }),
            (r.prototype.text = function (t) {
              return this.jax.text(t)
            }),
            (r.prototype.char = function (t) {
              return this.font.charSelector(t).substr(1)
            }),
            (r.kind = 'unknown'),
            (r.autoStyle = !0),
            r
          )
        })(h.CommonWrapper)
        e.CHTMLWrapper = d
      },
      9261: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLWrapperFactory = void 0)
        var i = r(4420),
          s = r(9086),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), (e.defaultNodes = s.CHTMLWrappers), e
          })(i.CommonWrapperFactory)
        e.CHTMLWrapperFactory = a
      },
      9086: function (t, e, r) {
        var n
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLWrappers = void 0)
        var o = r(5355),
          i = r(804),
          s = r(1653),
          a = r(6287),
          l = r(6460),
          c = r(4597),
          u = r(1259),
          p = r(2970),
          h = r(5964),
          f = r(8147),
          d = r(4798),
          m = r(2275),
          y = r(9063),
          g = r(5610),
          b = r(8776),
          v = r(4300),
          _ = r(6590),
          S = r(6781),
          M = r(8002),
          O = r(3571),
          x = r(7056),
          E = r(8102),
          A = r(6911),
          C = r(421),
          T = r(95),
          N = r(1148)
        e.CHTMLWrappers =
          (((n = {})[i.CHTMLmath.kind] = i.CHTMLmath),
          (n[d.CHTMLmrow.kind] = d.CHTMLmrow),
          (n[d.CHTMLinferredMrow.kind] = d.CHTMLinferredMrow),
          (n[s.CHTMLmi.kind] = s.CHTMLmi),
          (n[a.CHTMLmo.kind] = a.CHTMLmo),
          (n[l.CHTMLmn.kind] = l.CHTMLmn),
          (n[c.CHTMLms.kind] = c.CHTMLms),
          (n[u.CHTMLmtext.kind] = u.CHTMLmtext),
          (n[p.CHTMLmspace.kind] = p.CHTMLmspace),
          (n[h.CHTMLmpadded.kind] = h.CHTMLmpadded),
          (n[f.CHTMLmenclose.kind] = f.CHTMLmenclose),
          (n[y.CHTMLmfrac.kind] = y.CHTMLmfrac),
          (n[g.CHTMLmsqrt.kind] = g.CHTMLmsqrt),
          (n[b.CHTMLmroot.kind] = b.CHTMLmroot),
          (n[v.CHTMLmsub.kind] = v.CHTMLmsub),
          (n[v.CHTMLmsup.kind] = v.CHTMLmsup),
          (n[v.CHTMLmsubsup.kind] = v.CHTMLmsubsup),
          (n[_.CHTMLmunder.kind] = _.CHTMLmunder),
          (n[_.CHTMLmover.kind] = _.CHTMLmover),
          (n[_.CHTMLmunderover.kind] = _.CHTMLmunderover),
          (n[S.CHTMLmmultiscripts.kind] = S.CHTMLmmultiscripts),
          (n[m.CHTMLmfenced.kind] = m.CHTMLmfenced),
          (n[M.CHTMLmtable.kind] = M.CHTMLmtable),
          (n[O.CHTMLmtr.kind] = O.CHTMLmtr),
          (n[O.CHTMLmlabeledtr.kind] = O.CHTMLmlabeledtr),
          (n[x.CHTMLmtd.kind] = x.CHTMLmtd),
          (n[E.CHTMLmaction.kind] = E.CHTMLmaction),
          (n[A.CHTMLmglyph.kind] = A.CHTMLmglyph),
          (n[C.CHTMLsemantics.kind] = C.CHTMLsemantics),
          (n[C.CHTMLannotation.kind] = C.CHTMLannotation),
          (n[C.CHTMLannotationXML.kind] = C.CHTMLannotationXML),
          (n[C.CHTMLxml.kind] = C.CHTMLxml),
          (n[T.CHTMLTeXAtom.kind] = T.CHTMLTeXAtom),
          (n[N.CHTMLTextNode.kind] = N.CHTMLTextNode),
          (n[o.CHTMLWrapper.kind] = o.CHTMLWrapper),
          n)
      },
      95: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLTeXAtom = void 0)
        var i = r(5355),
          s = r(9800),
          a = r(3948),
          l = r(9007),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (e) {
                if ((t.prototype.toCHTML.call(this, e), this.adaptor.setAttribute(this.chtml, 'texclass', l.TEXCLASSNAMES[this.node.texClass]), this.node.texClass === l.TEXCLASS.VCENTER)) {
                  var r = this.childNodes[0].getBBox(),
                    n = r.h,
                    o = (n + r.d) / 2 + this.font.params.axis_height - n
                  this.adaptor.setStyle(this.chtml, 'verticalAlign', this.em(o))
                }
              }),
              (e.kind = a.TeXAtom.prototype.kind),
              e
            )
          })((0, s.CommonTeXAtomMixin)(i.CHTMLWrapper))
        e.CHTMLTeXAtom = c
      },
      1148: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLTextNode = void 0)
        var s = r(9007),
          a = r(5355),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e, r
                this.markUsed()
                var n = this.adaptor,
                  o = this.parent.variant,
                  s = this.node.getText()
                if (0 !== s.length)
                  if ('-explicitFont' === o) n.append(t, this.jax.unknownText(s, o, this.getBBox().w))
                  else {
                    var a = this.remappedText(s, o)
                    try {
                      for (var l = i(a), c = l.next(); !c.done; c = l.next()) {
                        var u = c.value,
                          p = this.getVariantChar(o, u)[3],
                          h = p.f ? ' TEX-' + p.f : '',
                          f = p.unknown ? this.jax.unknownText(String.fromCodePoint(u), o) : this.html('mjx-c', { class: this.char(u) + h })
                        n.append(t, f), !p.unknown && this.font.charUsage.add([o, u])
                      }
                    } catch (t) {
                      e = { error: t }
                    } finally {
                      try {
                        c && !c.done && (r = l.return) && r.call(l)
                      } finally {
                        if (e) throw e.error
                      }
                    }
                  }
              }),
              (e.kind = s.TextNode.prototype.kind),
              (e.autoStyle = !1),
              (e.styles = { 'mjx-c': { display: 'inline-block' }, 'mjx-utext': { display: 'inline-block', padding: '.75em 0 .2em 0' } }),
              e
            )
          })((0, r(1160).CommonTextNodeMixin)(a.CHTMLWrapper))
        e.CHTMLTextNode = l
      },
      8102: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmaction = void 0)
        var i = r(5355),
          s = r(1956),
          a = r(1956),
          l = r(9145),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e = this.standardCHTMLnode(t)
                this.selected.toCHTML(e), this.action(this, this.data)
              }),
              (e.prototype.setEventHandler = function (t, e) {
                this.chtml.addEventListener(t, e)
              }),
              (e.kind = l.MmlMaction.prototype.kind),
              (e.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', padding: '.2em', border: '1px solid #888', 'font-size': '70%', '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' }
              }),
              (e.actions = new Map([
                [
                  'toggle',
                  [
                    function (t, e) {
                      t.adaptor.setAttribute(t.chtml, 'toggle', t.node.attributes.get('selection'))
                      var r = t.factory.jax.math,
                        n = t.factory.jax.document,
                        o = t.node
                      t.setEventHandler('click', function (t) {
                        r.end.node || ((r.start.node = r.end.node = r.typesetRoot), (r.start.n = r.end.n = 0)), o.nextToggleSelection(), r.rerender(n), t.stopPropagation()
                      })
                    },
                    {}
                  ]
                ],
                [
                  'tooltip',
                  [
                    function (t, e) {
                      var r = t.childNodes[1]
                      if (r)
                        if (r.node.isKind('mtext')) {
                          var n = r.node.getText()
                          t.adaptor.setAttribute(t.chtml, 'title', n)
                        } else {
                          var o = t.adaptor,
                            i = o.append(t.chtml, t.html('mjx-tool', { style: { bottom: t.em(-t.dy), right: t.em(-t.dx) } }, [t.html('mjx-tip')]))
                          r.toCHTML(o.firstChild(i)),
                            t.setEventHandler('mouseover', function (r) {
                              e.stopTimers(t, e)
                              var n = setTimeout(function () {
                                return o.setStyle(i, 'display', 'block')
                              }, e.postDelay)
                              e.hoverTimer.set(t, n), r.stopPropagation()
                            }),
                            t.setEventHandler('mouseout', function (r) {
                              e.stopTimers(t, e)
                              var n = setTimeout(function () {
                                return o.setStyle(i, 'display', '')
                              }, e.clearDelay)
                              e.clearTimer.set(t, n), r.stopPropagation()
                            })
                        }
                    },
                    a.TooltipData
                  ]
                ],
                [
                  'statusline',
                  [
                    function (t, e) {
                      var r = t.childNodes[1]
                      if (r && r.node.isKind('mtext')) {
                        var n = t.adaptor,
                          o = r.node.getText()
                        n.setAttribute(t.chtml, 'statusline', o),
                          t.setEventHandler('mouseover', function (r) {
                            if (null === e.status) {
                              var i = n.body(n.document)
                              e.status = n.append(i, t.html('mjx-status', {}, [t.text(o)]))
                            }
                            r.stopPropagation()
                          }),
                          t.setEventHandler('mouseout', function (t) {
                            e.status && (n.remove(e.status), (e.status = null)), t.stopPropagation()
                          })
                      }
                    },
                    { status: null }
                  ]
                ]
              ])),
              e
            )
          })((0, s.CommonMactionMixin)(i.CHTMLWrapper))
        e.CHTMLmaction = c
      },
      804: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmath = void 0)
        var s = r(5355),
          a = r(7490),
          l = r(3233),
          c = r(6469),
          u = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (e) {
                t.prototype.toCHTML.call(this, e)
                var r = this.chtml,
                  n = this.adaptor
                'block' === this.node.attributes.get('display') ? (n.setAttribute(r, 'display', 'true'), n.setAttribute(e, 'display', 'true'), this.handleDisplay(e)) : this.handleInline(e), n.addClass(r, 'MJX-TEX')
              }),
              (e.prototype.handleDisplay = function (t) {
                var e = this.adaptor,
                  r = i(this.getAlignShift(), 2),
                  n = r[0],
                  o = r[1]
                if (('center' !== n && e.setAttribute(t, 'justify', n), this.bbox.pwidth === c.BBox.fullWidth)) {
                  if ((e.setAttribute(t, 'width', 'full'), this.jax.table)) {
                    var s = this.jax.table.getOuterBBox(),
                      a = s.L,
                      l = s.w,
                      u = s.R
                    'right' === n ? (u = Math.max(u || -o, -o)) : 'left' === n ? (a = Math.max(a || o, o)) : 'center' === n && (l += 2 * Math.abs(o))
                    var p = this.em(Math.max(0, a + l + u))
                    e.setStyle(t, 'min-width', p), e.setStyle(this.jax.table.chtml, 'min-width', p)
                  }
                } else this.setIndent(this.chtml, n, o)
              }),
              (e.prototype.handleInline = function (t) {
                var e = this.adaptor,
                  r = e.getStyle(this.chtml, 'margin-right')
                r && (e.setStyle(this.chtml, 'margin-right', ''), e.setStyle(t, 'margin-right', r), e.setStyle(t, 'width', '0'))
              }),
              (e.prototype.setChildPWidths = function (e, r, n) {
                return void 0 === r && (r = null), void 0 === n && (n = !0), !!this.parent && t.prototype.setChildPWidths.call(this, e, r, n)
              }),
              (e.kind = l.MmlMath.prototype.kind),
              (e.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',
                  'border-collapse': 'collapse',
                  'word-wrap': 'normal',
                  'word-spacing': 'normal',
                  'white-space': 'nowrap',
                  direction: 'ltr',
                  padding: '1px 0'
                },
                'mjx-container[jax="CHTML"][display="true"]': { display: 'block', 'text-align': 'center', margin: '1em 0' },
                'mjx-container[jax="CHTML"][display="true"][width="full"]': { display: 'flex' },
                'mjx-container[jax="CHTML"][display="true"] mjx-math': { padding: 0 },
                'mjx-container[jax="CHTML"][justify="left"]': { 'text-align': 'left' },
                'mjx-container[jax="CHTML"][justify="right"]': { 'text-align': 'right' }
              }),
              e
            )
          })((0, a.CommonMathMixin)(s.CHTMLWrapper))
        e.CHTMLmath = u
      },
      8147: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          s =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          a =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && i(e, t, r)
              return s(e, t), e
            },
          l =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          c =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmenclose = void 0)
        var u = r(5355),
          p = r(7313),
          h = a(r(8270)),
          f = r(6661),
          d = r(6010)
        function m(t, e) {
          return Math.atan2(t, e)
            .toFixed(3)
            .replace(/\.?0+$/, '')
        }
        var y = m(h.ARROWDX, h.ARROWY),
          g = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e,
                  r,
                  n,
                  o,
                  i = this.adaptor,
                  s = this.standardCHTMLnode(t),
                  a = i.append(s, this.html('mjx-box'))
                this.renderChild ? this.renderChild(this, a) : this.childNodes[0].toCHTML(a)
                try {
                  for (var c = l(Object.keys(this.notations)), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value,
                      f = this.notations[p]
                    !f.renderChild && f.renderer(this, a)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    u && !u.done && (r = c.return) && r.call(c)
                  } finally {
                    if (e) throw e.error
                  }
                }
                var d = this.getPadding()
                try {
                  for (var m = l(h.sideNames), y = m.next(); !y.done; y = m.next()) {
                    var g = y.value,
                      b = h.sideIndex[g]
                    d[b] > 0 && i.setStyle(a, 'padding-' + g, this.em(d[b]))
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    y && !y.done && (o = m.return) && o.call(m)
                  } finally {
                    if (n) throw n.error
                  }
                }
              }),
              (e.prototype.arrow = function (t, e, r, n, o) {
                void 0 === n && (n = ''), void 0 === o && (o = 0)
                var i = this.getBBox().w,
                  s = { width: this.em(t) }
                i !== t && (s.left = this.em((i - t) / 2)), e && (s.transform = 'rotate(' + this.fixed(e) + 'rad)')
                var a = this.html('mjx-arrow', { style: s }, [this.html('mjx-aline'), this.html('mjx-rthead'), this.html('mjx-rbhead')])
                return r && (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, r), this.moveArrow(a, n, o), a
              }),
              (e.prototype.adjustArrow = function (t, e) {
                var r = this,
                  n = this.thickness,
                  o = this.arrowhead
                if (o.x !== h.ARROWX || o.y !== h.ARROWY || o.dx !== h.ARROWDX || n !== h.THICKNESS) {
                  var i = c(
                      [n * o.x, n * o.y].map(function (t) {
                        return r.em(t)
                      }),
                      2
                    ),
                    s = i[0],
                    a = i[1],
                    l = m(o.dx, o.y),
                    u = c(this.adaptor.childNodes(t), 5),
                    p = u[0],
                    f = u[1],
                    d = u[2],
                    y = u[3],
                    g = u[4]
                  this.adjustHead(f, [a, '0', '1px', s], l), this.adjustHead(d, ['1px', '0', a, s], '-' + l), this.adjustHead(y, [a, s, '1px', '0'], '-' + l), this.adjustHead(g, ['1px', s, a, '0'], l), this.adjustLine(p, n, o.x, e)
                }
              }),
              (e.prototype.adjustHead = function (t, e, r) {
                t && (this.adaptor.setStyle(t, 'border-width', e.join(' ')), this.adaptor.setStyle(t, 'transform', 'skewX(' + r + 'rad)'))
              }),
              (e.prototype.adjustLine = function (t, e, r, n) {
                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 * (r - 1))), n && this.adaptor.setStyle(t, 'left', this.em(e * (r - 1)))
              }),
              (e.prototype.moveArrow = function (t, e, r) {
                if (r) {
                  var n = this.adaptor.getStyle(t, 'transform')
                  this.adaptor.setStyle(
                    t,
                    'transform',
                    'translate'
                      .concat(e, '(')
                      .concat(this.em(-r), ')')
                      .concat(n ? ' ' + n : '')
                  )
                }
              }),
              (e.prototype.adjustBorder = function (t) {
                return this.thickness !== h.THICKNESS && this.adaptor.setStyle(t, 'borderWidth', this.em(this.thickness)), t
              }),
              (e.prototype.adjustThickness = function (t) {
                return this.thickness !== h.THICKNESS && this.adaptor.setStyle(t, 'strokeWidth', this.fixed(this.thickness)), t
              }),
              (e.prototype.fixed = function (t, e) {
                return void 0 === e && (e = 3), Math.abs(t) < 6e-4 ? '0' : t.toFixed(e).replace(/\.?0+$/, '')
              }),
              (e.prototype.em = function (e) {
                return t.prototype.em.call(this, e)
              }),
              (e.kind = f.MmlMenclose.prototype.kind),
              (e.styles = {
                'mjx-menclose': { position: 'relative' },
                'mjx-menclose > mjx-dstrike': { display: 'inline-block', left: 0, top: 0, position: 'absolute', 'border-top': h.SOLID, 'transform-origin': 'top left' },
                'mjx-menclose > mjx-ustrike': { display: 'inline-block', left: 0, bottom: 0, position: 'absolute', 'border-top': h.SOLID, 'transform-origin': 'bottom left' },
                'mjx-menclose > mjx-hstrike': { 'border-top': h.SOLID, position: 'absolute', left: 0, right: 0, bottom: '50%', transform: 'translateY(' + (0, d.em)(h.THICKNESS / 2) + ')' },
                'mjx-menclose > mjx-vstrike': { 'border-left': h.SOLID, position: 'absolute', top: 0, bottom: 0, right: '50%', transform: 'translateX(' + (0, d.em)(h.THICKNESS / 2) + ')' },
                'mjx-menclose > mjx-rbox': { position: 'absolute', top: 0, bottom: 0, right: 0, left: 0, border: h.SOLID, 'border-radius': (0, d.em)(h.THICKNESS + h.PADDING) },
                'mjx-menclose > mjx-cbox': { position: 'absolute', top: 0, bottom: 0, right: 0, left: 0, border: h.SOLID, 'border-radius': '50%' },
                'mjx-menclose > mjx-arrow': { position: 'absolute', left: 0, bottom: '50%', height: 0, width: 0 },
                'mjx-menclose > mjx-arrow > *': { display: 'block', position: 'absolute', 'transform-origin': 'bottom', 'border-left': (0, d.em)(h.THICKNESS * h.ARROWX) + ' solid', 'border-right': 0, 'box-sizing': 'border-box' },
                'mjx-menclose > mjx-arrow > mjx-aline': { left: 0, top: (0, d.em)(-h.THICKNESS / 2), right: (0, d.em)(h.THICKNESS * (h.ARROWX - 1)), height: 0, 'border-top': (0, d.em)(h.THICKNESS) + ' solid', 'border-left': 0 },
                'mjx-menclose > mjx-arrow[double] > mjx-aline': { left: (0, d.em)(h.THICKNESS * (h.ARROWX - 1)), height: 0 },
                'mjx-menclose > mjx-arrow > mjx-rthead': { transform: 'skewX(' + y + 'rad)', right: 0, bottom: '-1px', 'border-bottom': '1px solid transparent', 'border-top': (0, d.em)(h.THICKNESS * h.ARROWY) + ' solid transparent' },
                'mjx-menclose > mjx-arrow > mjx-rbhead': { transform: 'skewX(-' + y + 'rad)', 'transform-origin': 'top', right: 0, top: '-1px', 'border-top': '1px solid transparent', 'border-bottom': (0, d.em)(h.THICKNESS * h.ARROWY) + ' solid transparent' },
                'mjx-menclose > mjx-arrow > mjx-lthead': {
                  transform: 'skewX(-' + y + 'rad)',
                  left: 0,
                  bottom: '-1px',
                  'border-left': 0,
                  'border-right': (0, d.em)(h.THICKNESS * h.ARROWX) + ' solid',
                  'border-bottom': '1px solid transparent',
                  'border-top': (0, d.em)(h.THICKNESS * h.ARROWY) + ' solid transparent'
                },
                'mjx-menclose > mjx-arrow > mjx-lbhead': {
                  transform: 'skewX(' + y + 'rad)',
                  'transform-origin': 'top',
                  left: 0,
                  top: '-1px',
                  'border-left': 0,
                  'border-right': (0, d.em)(h.THICKNESS * h.ARROWX) + ' solid',
                  'border-top': '1px solid transparent',
                  'border-bottom': (0, d.em)(h.THICKNESS * h.ARROWY) + ' solid transparent'
                },
                'mjx-menclose > dbox': {
                  position: 'absolute',
                  top: 0,
                  bottom: 0,
                  left: (0, d.em)(-1.5 * h.PADDING),
                  width: (0, d.em)(3 * h.PADDING),
                  border: (0, d.em)(h.THICKNESS) + ' solid',
                  'border-radius': '50%',
                  'clip-path': 'inset(0 0 0 ' + (0, d.em)(1.5 * h.PADDING) + ')',
                  'box-sizing': 'border-box'
                }
              }),
              (e.notations = new Map([
                h.Border('top'),
                h.Border('right'),
                h.Border('bottom'),
                h.Border('left'),
                h.Border2('actuarial', 'top', 'right'),
                h.Border2('madruwb', 'bottom', 'right'),
                h.DiagonalStrike('up', 1),
                h.DiagonalStrike('down', -1),
                [
                  'horizontalstrike',
                  {
                    renderer: h.RenderElement('hstrike', 'Y'),
                    bbox: function (t) {
                      return [0, t.padding, 0, t.padding]
                    }
                  }
                ],
                [
                  'verticalstrike',
                  {
                    renderer: h.RenderElement('vstrike', 'X'),
                    bbox: function (t) {
                      return [t.padding, 0, t.padding, 0]
                    }
                  }
                ],
                [
                  'box',
                  {
                    renderer: function (t, e) {
                      t.adaptor.setStyle(e, 'border', t.em(t.thickness) + ' solid')
                    },
                    bbox: h.fullBBox,
                    border: h.fullBorder,
                    remove: 'left right top bottom'
                  }
                ],
                ['roundedbox', { renderer: h.RenderElement('rbox'), bbox: h.fullBBox }],
                ['circle', { renderer: h.RenderElement('cbox'), bbox: h.fullBBox }],
                [
                  'phasorangle',
                  {
                    renderer: function (t, e) {
                      var r = t.getBBox(),
                        n = r.h,
                        o = r.d,
                        i = c(t.getArgMod(1.75 * t.padding, n + o), 2),
                        s = i[0],
                        a = i[1],
                        l = t.thickness * Math.sin(s) * 0.9
                      t.adaptor.setStyle(e, 'border-bottom', t.em(t.thickness) + ' solid')
                      var u = t.adjustBorder(t.html('mjx-ustrike', { style: { width: t.em(a), transform: 'translateX(' + t.em(l) + ') rotate(' + t.fixed(-s) + 'rad)' } }))
                      t.adaptor.append(t.chtml, u)
                    },
                    bbox: function (t) {
                      var e = t.padding / 2,
                        r = t.thickness
                      return [2 * e, e, e + r, 3 * e + r]
                    },
                    border: function (t) {
                      return [0, 0, t.thickness, 0]
                    },
                    remove: 'bottom'
                  }
                ],
                h.Arrow('up'),
                h.Arrow('down'),
                h.Arrow('left'),
                h.Arrow('right'),
                h.Arrow('updown'),
                h.Arrow('leftright'),
                h.DiagonalArrow('updiagonal'),
                h.DiagonalArrow('northeast'),
                h.DiagonalArrow('southeast'),
                h.DiagonalArrow('northwest'),
                h.DiagonalArrow('southwest'),
                h.DiagonalArrow('northeastsouthwest'),
                h.DiagonalArrow('northwestsoutheast'),
                [
                  'longdiv',
                  {
                    renderer: function (t, e) {
                      var r = t.adaptor
                      r.setStyle(e, 'border-top', t.em(t.thickness) + ' solid')
                      var n = r.append(t.chtml, t.html('dbox')),
                        o = t.thickness,
                        i = t.padding
                      o !== h.THICKNESS && r.setStyle(n, 'border-width', t.em(o)), i !== h.PADDING && (r.setStyle(n, 'left', t.em(-1.5 * i)), r.setStyle(n, 'width', t.em(3 * i)), r.setStyle(n, 'clip-path', 'inset(0 0 0 ' + t.em(1.5 * i) + ')'))
                    },
                    bbox: function (t) {
                      var e = t.padding,
                        r = t.thickness
                      return [e + r, e, e, 2 * e + r / 2]
                    }
                  }
                ],
                [
                  'radical',
                  {
                    renderer: function (t, e) {
                      t.msqrt.toCHTML(e)
                      var r = t.sqrtTRBL()
                      t.adaptor.setStyle(
                        t.msqrt.chtml,
                        'margin',
                        r
                          .map(function (e) {
                            return t.em(-e)
                          })
                          .join(' ')
                      )
                    },
                    init: function (t) {
                      t.msqrt = t.createMsqrt(t.childNodes[0])
                    },
                    bbox: function (t) {
                      return t.sqrtTRBL()
                    },
                    renderChild: !0
                  }
                ]
              ])),
              e
            )
          })((0, p.CommonMencloseMixin)(u.CHTMLWrapper))
        e.CHTMLmenclose = g
      },
      2275: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmfenced = void 0)
        var i = r(5355),
          s = r(7555),
          a = r(5410),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e = this.standardCHTMLnode(t)
                this.mrow.toCHTML(e)
              }),
              (e.kind = a.MmlMfenced.prototype.kind),
              e
            )
          })((0, s.CommonMfencedMixin)(i.CHTMLWrapper))
        e.CHTMLmfenced = l
      },
      9063: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmfrac = void 0)
        var s = r(5355),
          a = r(2688),
          l = r(6850),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                this.standardCHTMLnode(t)
                var e = this.node.attributes.getList('linethickness', 'bevelled'),
                  r = e.linethickness,
                  n = e.bevelled,
                  o = this.isDisplay()
                if (n) this.makeBevelled(o)
                else {
                  var i = this.length2em(String(r), 0.06)
                  0 === i ? this.makeAtop(o) : this.makeFraction(o, i)
                }
              }),
              (e.prototype.makeFraction = function (t, e) {
                var r,
                  n,
                  o = this.node.attributes.getList('numalign', 'denomalign'),
                  s = o.numalign,
                  a = o.denomalign,
                  l = t ? { type: 'd' } : {},
                  c = this.node.getProperty('withDelims') ? i(i({}, l), { delims: 'true' }) : i({}, l),
                  u = 'center' !== s ? { align: s } : {},
                  p = 'center' !== a ? { align: a } : {},
                  h = i({}, l),
                  f = i({}, l),
                  d = this.font.params
                if (0.06 !== e) {
                  var m = d.axis_height,
                    y = this.em(e),
                    g = this.getTUV(t, e),
                    b = g.T,
                    v = g.u,
                    _ = g.v,
                    S = (t ? this.em(3 * e) : y) + ' -.1em'
                  l.style = { height: y, 'border-top': y + ' solid', margin: S }
                  var M = this.em(Math.max(0, v))
                  ;(f.style = { height: M, 'vertical-align': '-' + M }), (h.style = { height: this.em(Math.max(0, _)) }), (c.style = { 'vertical-align': this.em(m - b) })
                }
                this.adaptor.append(
                  this.chtml,
                  this.html('mjx-frac', c, [
                    (r = this.html('mjx-num', u, [this.html('mjx-nstrut', f)])),
                    this.html('mjx-dbox', {}, [this.html('mjx-dtable', {}, [this.html('mjx-line', l), this.html('mjx-row', {}, [(n = this.html('mjx-den', p, [this.html('mjx-dstrut', h)]))])])])
                  ])
                ),
                  this.childNodes[0].toCHTML(r),
                  this.childNodes[1].toCHTML(n)
              }),
              (e.prototype.makeAtop = function (t) {
                var e,
                  r,
                  n = this.node.attributes.getList('numalign', 'denomalign'),
                  o = n.numalign,
                  s = n.denomalign,
                  a = t ? { type: 'd', atop: !0 } : { atop: !0 },
                  l = this.node.getProperty('withDelims') ? i(i({}, a), { delims: !0 }) : i({}, a),
                  c = 'center' !== o ? { align: o } : {},
                  u = 'center' !== s ? { align: s } : {},
                  p = this.getUVQ(t),
                  h = p.v,
                  f = p.q
                ;(c.style = { 'padding-bottom': this.em(f) }),
                  (l.style = { 'vertical-align': this.em(-h) }),
                  this.adaptor.append(this.chtml, this.html('mjx-frac', l, [(e = this.html('mjx-num', c)), (r = this.html('mjx-den', u))])),
                  this.childNodes[0].toCHTML(e),
                  this.childNodes[1].toCHTML(r)
              }),
              (e.prototype.makeBevelled = function (t) {
                var e = this.adaptor
                e.setAttribute(this.chtml, 'bevelled', 'ture')
                var r = e.append(this.chtml, this.html('mjx-num'))
                this.childNodes[0].toCHTML(r), this.bevel.toCHTML(this.chtml)
                var n = e.append(this.chtml, this.html('mjx-den'))
                this.childNodes[1].toCHTML(n)
                var o = this.getBevelData(t),
                  i = o.u,
                  s = o.v,
                  a = o.delta,
                  l = o.nbox,
                  c = o.dbox
                i && e.setStyle(r, 'verticalAlign', this.em(i / l.scale)), s && e.setStyle(n, 'verticalAlign', this.em(s / c.scale))
                var u = this.em(-a / 2)
                e.setStyle(this.bevel.chtml, 'marginLeft', u), e.setStyle(this.bevel.chtml, 'marginRight', u)
              }),
              (e.kind = l.MmlMfrac.prototype.kind),
              (e.styles = {
                'mjx-frac': { display: 'inline-block', 'vertical-align': '0.17em', padding: '0 .22em' },
                'mjx-frac[type="d"]': { 'vertical-align': '.04em' },
                'mjx-frac[delims]': { padding: '0 .1em' },
                'mjx-frac[atop]': { padding: '0 .12em' },
                'mjx-frac[atop][delims]': { padding: '0' },
                'mjx-dtable': { display: 'inline-table', width: '100%' },
                'mjx-dtable > *': { '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': '.06em solid', margin: '.06em -.1em', overflow: 'hidden' },
                'mjx-line[type="d"]': { margin: '.18em -.1em' }
              }),
              e
            )
          })((0, a.CommonMfracMixin)(s.CHTMLWrapper))
        e.CHTMLmfrac = c
      },
      6911: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmglyph = void 0)
        var i = r(5355),
          s = r(5636),
          a = r(3985),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e = this.standardCHTMLnode(t)
                if (this.charWrapper) this.charWrapper.toCHTML(e)
                else {
                  var r = this.node.attributes.getList('src', 'alt'),
                    n = r.src,
                    o = r.alt,
                    i = { width: this.em(this.width), height: this.em(this.height) }
                  this.valign && (i.verticalAlign = this.em(this.valign))
                  var s = this.html('img', { src: n, style: i, alt: o, title: o })
                  this.adaptor.append(e, s)
                }
              }),
              (e.kind = a.MmlMglyph.prototype.kind),
              (e.styles = { 'mjx-mglyph > img': { display: 'inline-block', border: 0, padding: 0 } }),
              e
            )
          })((0, s.CommonMglyphMixin)(i.CHTMLWrapper))
        e.CHTMLmglyph = l
      },
      1653: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmi = void 0)
        var i = r(5355),
          s = r(5723),
          a = r(450),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), (e.kind = a.MmlMi.prototype.kind), e
          })((0, s.CommonMiMixin)(i.CHTMLWrapper))
        e.CHTMLmi = l
      },
      6781: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmmultiscripts = void 0)
        var s = r(4300),
          a = r(8009),
          l = r(6405),
          c = r(505),
          u = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e = this.standardCHTMLnode(t),
                  r = this.scriptData,
                  n = this.node.getProperty('scriptalign') || 'right left',
                  o = i((0, c.split)(n + ' ' + n), 2),
                  s = o[0],
                  a = o[1],
                  l = this.combinePrePost(r.sub, r.psub),
                  u = this.combinePrePost(r.sup, r.psup),
                  p = i(this.getUVQ(l, u), 2),
                  h = p[0],
                  f = p[1]
                if (r.numPrescripts) {
                  var d = this.addScripts(h, -f, !0, r.psub, r.psup, this.firstPrescript, r.numPrescripts)
                  'right' !== s && this.adaptor.setAttribute(d, 'script-align', s)
                }
                if ((this.childNodes[0].toCHTML(e), r.numScripts)) {
                  d = this.addScripts(h, -f, !1, r.sub, r.sup, 1, r.numScripts)
                  'left' !== a && this.adaptor.setAttribute(d, 'script-align', a)
                }
              }),
              (e.prototype.addScripts = function (t, e, r, n, o, i, s) {
                for (
                  var a = this.adaptor,
                    l = t - o.d + (e - n.h),
                    c = t < 0 && 0 === e ? n.h + t : t,
                    u = l > 0 ? { style: { height: this.em(l) } } : {},
                    p = c ? { style: { 'vertical-align': this.em(c) } } : {},
                    h = this.html('mjx-row'),
                    f = this.html('mjx-row', u),
                    d = this.html('mjx-row'),
                    m = 'mjx-' + (r ? 'pre' : '') + 'scripts',
                    y = i + 2 * s;
                  i < y;

                )
                  this.childNodes[i++].toCHTML(a.append(d, this.html('mjx-cell'))), this.childNodes[i++].toCHTML(a.append(h, this.html('mjx-cell')))
                return a.append(this.chtml, this.html(m, p, [h, f, d]))
              }),
              (e.kind = l.MmlMmultiscripts.prototype.kind),
              (e.styles = {
                'mjx-prescripts': { display: 'inline-table', 'padding-left': '.05em' },
                'mjx-scripts': { display: 'inline-table', 'padding-right': '.05em' },
                'mjx-prescripts > 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' }
              }),
              e
            )
          })((0, a.CommonMmultiscriptsMixin)(s.CHTMLmsubsup))
        e.CHTMLmmultiscripts = u
      },
      6460: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmn = void 0)
        var i = r(5355),
          s = r(5023),
          a = r(3050),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), (e.kind = a.MmlMn.prototype.kind), e
          })((0, s.CommonMnMixin)(i.CHTMLWrapper))
        e.CHTMLmn = l
      },
      6287: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmo = void 0)
        var s = r(5355),
          a = r(7096),
          l = r(2756),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e,
                  r,
                  n = this.node.attributes,
                  o = n.get('symmetric') && 2 !== this.stretch.dir,
                  s = 0 !== this.stretch.dir
                s && null === this.size && this.getStretchedVariant([])
                var a = this.standardCHTMLnode(t)
                if (s && this.size < 0) this.stretchHTML(a)
                else {
                  if (o || n.get('largeop')) {
                    var l = this.em(this.getCenterOffset())
                    '0' !== l && this.adaptor.setStyle(a, 'verticalAlign', l)
                  }
                  this.node.getProperty('mathaccent') && (this.adaptor.setStyle(a, 'width', '0'), this.adaptor.setStyle(a, 'margin-left', this.em(this.getAccentOffset())))
                  try {
                    for (var c = i(this.childNodes), u = c.next(); !u.done; u = c.next()) {
                      u.value.toCHTML(a)
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      u && !u.done && (r = c.return) && r.call(c)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                }
              }),
              (e.prototype.stretchHTML = function (t) {
                var e = this.getText().codePointAt(0)
                this.font.delimUsage.add(e), this.childNodes[0].markUsed()
                var r = this.stretch,
                  n = r.stretch,
                  o = []
                n[0] && o.push(this.html('mjx-beg', {}, [this.html('mjx-c')])),
                  o.push(this.html('mjx-ext', {}, [this.html('mjx-c')])),
                  4 === n.length && o.push(this.html('mjx-mid', {}, [this.html('mjx-c')]), this.html('mjx-ext', {}, [this.html('mjx-c')])),
                  n[2] && o.push(this.html('mjx-end', {}, [this.html('mjx-c')]))
                var i = {},
                  s = this.bbox,
                  l = s.h,
                  c = s.d,
                  u = s.w
                1 === r.dir ? (o.push(this.html('mjx-mark')), (i.height = this.em(l + c)), (i.verticalAlign = this.em(-c))) : (i.width = this.em(u))
                var p = a.DirectionVH[r.dir],
                  h = { class: this.char(r.c || e), style: i },
                  f = this.html('mjx-stretchy-' + p, h, o)
                this.adaptor.append(t, f)
              }),
              (e.kind = l.MmlMo.prototype.kind),
              (e.styles = {
                'mjx-stretchy-h': { display: 'inline-table', width: '100%' },
                'mjx-stretchy-h > *': { display: 'table-cell', width: 0 },
                'mjx-stretchy-h > * > mjx-c': { display: 'inline-block', transform: 'scalex(1.0000001)' },
                'mjx-stretchy-h > * > mjx-c::before': { display: 'inline-block', width: 'initial' },
                'mjx-stretchy-h > mjx-ext': { '/* IE */ overflow': 'hidden', '/* others */ overflow': 'clip visible', width: '100%' },
                'mjx-stretchy-h > mjx-ext > mjx-c::before': { transform: 'scalex(500)' },
                'mjx-stretchy-h > mjx-ext > mjx-c': { width: 0 },
                'mjx-stretchy-h > mjx-beg > mjx-c': { 'margin-right': '-.1em' },
                'mjx-stretchy-h > mjx-end > mjx-c': { 'margin-left': '-.1em' },
                'mjx-stretchy-v': { display: 'inline-block' },
                'mjx-stretchy-v > *': { display: 'block' },
                'mjx-stretchy-v > mjx-beg': { height: 0 },
                'mjx-stretchy-v > mjx-end > mjx-c': { display: 'block' },
                'mjx-stretchy-v > * > mjx-c': { transform: 'scaley(1.0000001)', 'transform-origin': 'left center', overflow: 'hidden' },
                'mjx-stretchy-v > mjx-ext': { display: 'block', height: '100%', 'box-sizing': 'border-box', border: '0px solid transparent', '/* IE */ overflow': 'hidden', '/* others */ overflow': 'visible clip' },
                'mjx-stretchy-v > mjx-ext > mjx-c::before': { width: 'initial', 'box-sizing': 'border-box' },
                'mjx-stretchy-v > mjx-ext > mjx-c': { transform: 'scaleY(500) translateY(.075em)', overflow: 'visible' },
                'mjx-mark': { display: 'inline-block', height: '0px' }
              }),
              e
            )
          })((0, a.CommonMoMixin)(s.CHTMLWrapper))
        e.CHTMLmo = c
      },
      5964: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmpadded = void 0)
        var a = r(5355),
          l = r(6898),
          c = r(7238),
          u = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e,
                  r,
                  n = this.standardCHTMLnode(t),
                  o = [],
                  a = {},
                  l = i(this.getDimens(), 9),
                  c = l[2],
                  u = l[3],
                  p = l[4],
                  h = l[5],
                  f = l[6],
                  d = l[7],
                  m = l[8]
                if ((h && (a.width = this.em(c + h)), (u || p) && (a.margin = this.em(u) + ' 0 ' + this.em(p)), f + m || d)) {
                  a.position = 'relative'
                  var y = this.html('mjx-rbox', { style: { left: this.em(f + m), top: this.em(-d), 'max-width': a.width } })
                  f + m && this.childNodes[0].getBBox().pwidth && (this.adaptor.setAttribute(y, 'width', 'full'), this.adaptor.setStyle(y, 'left', this.em(f))), o.push(y)
                }
                n = this.adaptor.append(n, this.html('mjx-block', { style: a }, o))
                try {
                  for (var g = s(this.childNodes), b = g.next(); !b.done; b = g.next()) {
                    b.value.toCHTML(o[0] || n)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    b && !b.done && (r = g.return) && r.call(g)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }),
              (e.kind = c.MmlMpadded.prototype.kind),
              (e.styles = { 'mjx-mpadded': { display: 'inline-block' }, 'mjx-rbox': { display: 'inline-block', position: 'relative' } }),
              e
            )
          })((0, l.CommonMpaddedMixin)(a.CHTMLWrapper))
        e.CHTMLmpadded = u
      },
      8776: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmroot = void 0)
        var s = r(5610),
          a = r(6991),
          l = r(6145),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.addRoot = function (t, e, r, n) {
                e.toCHTML(t)
                var o = i(this.getRootDimens(r, n), 3),
                  s = o[0],
                  a = o[1],
                  l = o[2]
                this.adaptor.setStyle(t, 'verticalAlign', this.em(a)), this.adaptor.setStyle(t, 'width', this.em(s)), l && this.adaptor.setStyle(this.adaptor.firstChild(t), 'paddingLeft', this.em(l))
              }),
              (e.kind = l.MmlMroot.prototype.kind),
              e
            )
          })((0, a.CommonMrootMixin)(s.CHTMLmsqrt))
        e.CHTMLmroot = c
      },
      4798: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLinferredMrow = e.CHTMLmrow = void 0)
        var s = r(5355),
          a = r(8411),
          l = r(8411),
          c = r(9878),
          u = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e,
                  r,
                  n = this.node.isInferred ? (this.chtml = t) : this.standardCHTMLnode(t),
                  o = !1
                try {
                  for (var s = i(this.childNodes), a = s.next(); !a.done; a = s.next()) {
                    var l = a.value
                    l.toCHTML(n), l.bbox.w < 0 && (o = !0)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    a && !a.done && (r = s.return) && r.call(s)
                  } finally {
                    if (e) throw e.error
                  }
                }
                if (o) {
                  var c = this.getBBox().w
                  c && (this.adaptor.setStyle(n, 'width', this.em(Math.max(0, c))), c < 0 && this.adaptor.setStyle(n, 'marginRight', this.em(c)))
                }
              }),
              (e.kind = c.MmlMrow.prototype.kind),
              e
            )
          })((0, a.CommonMrowMixin)(s.CHTMLWrapper))
        e.CHTMLmrow = u
        var p = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return o(e, t), (e.kind = c.MmlInferredMrow.prototype.kind), e
        })((0, l.CommonInferredMrowMixin)(u))
        e.CHTMLinferredMrow = p
      },
      4597: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLms = void 0)
        var i = r(5355),
          s = r(4126),
          a = r(7265),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), (e.kind = a.MmlMs.prototype.kind), e
          })((0, s.CommonMsMixin)(i.CHTMLWrapper))
        e.CHTMLms = l
      },
      2970: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmspace = void 0)
        var i = r(5355),
          s = r(258),
          a = r(6030),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e = this.standardCHTMLnode(t),
                  r = this.getBBox(),
                  n = r.w,
                  o = r.h,
                  i = r.d
                n < 0 && (this.adaptor.setStyle(e, 'marginRight', this.em(n)), (n = 0)),
                  n && this.adaptor.setStyle(e, 'width', this.em(n)),
                  (o = Math.max(0, o + i)) && this.adaptor.setStyle(e, 'height', this.em(Math.max(0, o))),
                  i && this.adaptor.setStyle(e, 'verticalAlign', this.em(-i))
              }),
              (e.kind = a.MmlMspace.prototype.kind),
              e
            )
          })((0, s.CommonMspaceMixin)(i.CHTMLWrapper))
        e.CHTMLmspace = l
      },
      5610: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmsqrt = void 0)
        var s = r(5355),
          a = r(4093),
          l = r(7131),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e,
                  r,
                  n,
                  o,
                  s = this.childNodes[this.surd],
                  a = this.childNodes[this.base],
                  l = s.getBBox(),
                  c = a.getOuterBBox(),
                  u = i(this.getPQ(l), 2)[1],
                  p = this.font.params.rule_thickness,
                  h = c.h + u + p,
                  f = this.standardCHTMLnode(t)
                null != this.root && ((n = this.adaptor.append(f, this.html('mjx-root'))), (o = this.childNodes[this.root]))
                var d = this.adaptor.append(f, this.html('mjx-sqrt', {}, [(e = this.html('mjx-surd')), (r = this.html('mjx-box', { style: { paddingTop: this.em(u) } }))]))
                this.addRoot(n, o, l, h), s.toCHTML(e), a.toCHTML(r), s.size < 0 && this.adaptor.addClass(d, 'mjx-tall')
              }),
              (e.prototype.addRoot = function (t, e, r, n) {}),
              (e.kind = l.MmlMsqrt.prototype.kind),
              (e.styles = {
                'mjx-root': { display: 'inline-block', 'white-space': 'nowrap' },
                'mjx-surd': { display: 'inline-block', 'vertical-align': 'top' },
                'mjx-sqrt': { display: 'inline-block', 'padding-top': '.07em' },
                'mjx-sqrt > mjx-box': { 'border-top': '.07em solid' },
                'mjx-sqrt.mjx-tall > mjx-box': { 'padding-left': '.3em', 'margin-left': '-.3em' }
              }),
              e
            )
          })((0, a.CommonMsqrtMixin)(s.CHTMLWrapper))
        e.CHTMLmsqrt = c
      },
      4300: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmsubsup = e.CHTMLmsup = e.CHTMLmsub = void 0)
        var s = r(8650),
          a = r(905),
          l = r(905),
          c = r(905),
          u = r(4461),
          p = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), (e.kind = u.MmlMsub.prototype.kind), e
          })((0, a.CommonMsubMixin)(s.CHTMLscriptbase))
        e.CHTMLmsub = p
        var h = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return o(e, t), (e.kind = u.MmlMsup.prototype.kind), e
        })((0, l.CommonMsupMixin)(s.CHTMLscriptbase))
        e.CHTMLmsup = h
        var f = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.toCHTML = function (t) {
              var e = this.adaptor,
                r = this.standardCHTMLnode(t),
                n = i([this.baseChild, this.supChild, this.subChild], 3),
                o = n[0],
                s = n[1],
                a = n[2],
                l = i(this.getUVQ(), 3),
                c = l[1],
                u = l[2],
                p = { 'vertical-align': this.em(c) }
              o.toCHTML(r)
              var h = e.append(r, this.html('mjx-script', { style: p }))
              s.toCHTML(h), e.append(h, this.html('mjx-spacer', { style: { 'margin-top': this.em(u) } })), a.toCHTML(h)
              var f = this.getAdjustedIc()
              f && e.setStyle(s.chtml, 'marginLeft', this.em(f / s.bbox.rscale)), this.baseRemoveIc && e.setStyle(h, 'marginLeft', this.em(-this.baseIc))
            }),
            (e.kind = u.MmlMsubsup.prototype.kind),
            (e.styles = { 'mjx-script': { display: 'inline-block', 'padding-right': '.05em', 'padding-left': '.033em' }, 'mjx-script > mjx-spacer': { display: 'block' } }),
            e
          )
        })((0, c.CommonMsubsupMixin)(s.CHTMLscriptbase))
        e.CHTMLmsubsup = f
      },
      8002: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmtable = void 0)
        var a = r(5355),
          l = r(6237),
          c = r(1349),
          u = r(505),
          p = (function (t) {
            function e(e, r, n) {
              void 0 === n && (n = null)
              var o = t.call(this, e, r, n) || this
              return (o.itable = o.html('mjx-itable')), (o.labels = o.html('mjx-itable')), o
            }
            return (
              o(e, t),
              (e.prototype.getAlignShift = function () {
                var e = t.prototype.getAlignShift.call(this)
                return this.isTop || (e[1] = 0), e
              }),
              (e.prototype.toCHTML = function (t) {
                var e,
                  r,
                  n = this.standardCHTMLnode(t)
                this.adaptor.append(n, this.html('mjx-table', {}, [this.itable]))
                try {
                  for (var o = i(this.childNodes), s = o.next(); !s.done; s = o.next()) {
                    s.value.toCHTML(this.itable)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = o.return) && r.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
                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()
              }),
              (e.prototype.shiftColor = function () {
                var t = this.adaptor,
                  e = t.getStyle(this.chtml, 'backgroundColor')
                e && (t.setStyle(this.chtml, 'backgroundColor', ''), t.setStyle(this.itable, 'backgroundColor', e))
              }),
              (e.prototype.padRows = function () {
                var t,
                  e,
                  r = this.adaptor
                try {
                  for (var n = i(r.childNodes(this.itable)), o = n.next(); !o.done; o = n.next()) for (var s = o.value; r.childNodes(s).length < this.numCols; ) r.append(s, this.html('mjx-mtd', { extra: !0 }))
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.handleColumnSpacing = function () {
                var t,
                  e,
                  r,
                  n,
                  o = this.childNodes[0] ? 1 / this.childNodes[0].getBBox().rscale : 1,
                  s = this.getEmHalfSpacing(this.fSpace[0], this.cSpace, o),
                  a = this.frame
                try {
                  for (var l = i(this.tableRows), c = l.next(); !c.done; c = l.next()) {
                    var u = c.value,
                      p = 0
                    try {
                      for (var h = ((r = void 0), i(u.tableCells)), f = h.next(); !f.done; f = h.next()) {
                        var d = f.value,
                          m = s[p++],
                          y = s[p],
                          g = d ? d.chtml : this.adaptor.childNodes(u.chtml)[p]
                        ;((p > 1 && '0.4em' !== m) || (a && 1 === p)) && this.adaptor.setStyle(g, 'paddingLeft', m), ((p < this.numCols && '0.4em' !== y) || (a && p === this.numCols)) && this.adaptor.setStyle(g, 'paddingRight', y)
                      }
                    } catch (t) {
                      r = { error: t }
                    } finally {
                      try {
                        f && !f.done && (n = h.return) && n.call(h)
                      } finally {
                        if (r) throw r.error
                      }
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    c && !c.done && (e = l.return) && e.call(l)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.handleColumnLines = function () {
                var t, e, r, n
                if ('none' !== this.node.attributes.get('columnlines')) {
                  var o = this.getColumnAttributes('columnlines')
                  try {
                    for (var s = i(this.childNodes), a = s.next(); !a.done; a = s.next()) {
                      var l = a.value,
                        c = 0
                      try {
                        for (var u = ((r = void 0), i(this.adaptor.childNodes(l.chtml).slice(1))), p = u.next(); !p.done; p = u.next()) {
                          var h = p.value,
                            f = o[c++]
                          'none' !== f && this.adaptor.setStyle(h, 'borderLeft', '.07em ' + f)
                        }
                      } catch (t) {
                        r = { error: t }
                      } finally {
                        try {
                          p && !p.done && (n = u.return) && n.call(u)
                        } finally {
                          if (r) throw r.error
                        }
                      }
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      a && !a.done && (e = s.return) && e.call(s)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                }
              }),
              (e.prototype.handleColumnWidths = function () {
                var t, e, r, n
                try {
                  for (var o = i(this.childNodes), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value,
                      l = 0
                    try {
                      for (var c = ((r = void 0), i(this.adaptor.childNodes(a.chtml))), u = c.next(); !u.done; u = c.next()) {
                        var p = u.value,
                          h = this.cWidths[l++]
                        if (null !== h) {
                          var f = 'number' == typeof h ? this.em(h) : h
                          this.adaptor.setStyle(p, 'width', f), this.adaptor.setStyle(p, 'maxWidth', f), this.adaptor.setStyle(p, 'minWidth', f)
                        }
                      }
                    } catch (t) {
                      r = { error: t }
                    } finally {
                      try {
                        u && !u.done && (n = c.return) && n.call(c)
                      } finally {
                        if (r) throw r.error
                      }
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    s && !s.done && (e = o.return) && e.call(o)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.handleRowSpacing = function () {
                var t,
                  e,
                  r,
                  n,
                  o = this.childNodes[0] ? 1 / this.childNodes[0].getBBox().rscale : 1,
                  s = this.getEmHalfSpacing(this.fSpace[1], this.rSpace, o),
                  a = this.frame,
                  l = 0
                try {
                  for (var c = i(this.childNodes), u = c.next(); !u.done; u = c.next()) {
                    var p = u.value,
                      h = s[l++],
                      f = s[l]
                    try {
                      for (var d = ((r = void 0), i(p.childNodes)), m = d.next(); !m.done; m = d.next()) {
                        var y = m.value
                        ;((l > 1 && '0.215em' !== h) || (a && 1 === l)) && this.adaptor.setStyle(y.chtml, 'paddingTop', h), ((l < this.numRows && '0.215em' !== f) || (a && l === this.numRows)) && this.adaptor.setStyle(y.chtml, 'paddingBottom', f)
                      }
                    } catch (t) {
                      r = { error: t }
                    } finally {
                      try {
                        m && !m.done && (n = d.return) && n.call(d)
                      } finally {
                        if (r) throw r.error
                      }
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    u && !u.done && (e = c.return) && e.call(c)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.handleRowLines = function () {
                var t, e, r, n
                if ('none' !== this.node.attributes.get('rowlines')) {
                  var o = this.getRowAttributes('rowlines'),
                    s = 0
                  try {
                    for (var a = i(this.childNodes.slice(1)), l = a.next(); !l.done; l = a.next()) {
                      var c = l.value,
                        u = o[s++]
                      if ('none' !== u)
                        try {
                          for (var p = ((r = void 0), i(this.adaptor.childNodes(c.chtml))), h = p.next(); !h.done; h = p.next()) {
                            var f = h.value
                            this.adaptor.setStyle(f, 'borderTop', '.07em ' + u)
                          }
                        } catch (t) {
                          r = { error: t }
                        } finally {
                          try {
                            h && !h.done && (n = p.return) && n.call(p)
                          } finally {
                            if (r) throw r.error
                          }
                        }
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      l && !l.done && (e = a.return) && e.call(a)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                }
              }),
              (e.prototype.handleRowHeights = function () {
                this.node.attributes.get('equalrows') && this.handleEqualRows()
              }),
              (e.prototype.handleEqualRows = function () {
                for (var t = this.getRowHalfSpacing(), e = this.getTableData(), r = e.H, n = e.D, o = e.NH, i = e.ND, s = this.getEqualRowHeight(), a = 0; a < this.numRows; a++) {
                  var l = this.childNodes[a]
                  this.setRowHeight(l, s + t[a] + t[a + 1] + this.rLines[a]), s !== o[a] + i[a] && this.setRowBaseline(l, s, (s - r[a] + n[a]) / 2)
                }
              }),
              (e.prototype.setRowHeight = function (t, e) {
                this.adaptor.setStyle(t.chtml, 'height', this.em(e))
              }),
              (e.prototype.setRowBaseline = function (t, e, r) {
                var n,
                  o,
                  s = t.node.attributes.get('rowalign')
                try {
                  for (var a = i(t.childNodes), l = a.next(); !l.done; l = a.next()) {
                    var c = l.value
                    if (this.setCellBaseline(c, s, e, r)) break
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    l && !l.done && (o = a.return) && o.call(a)
                  } finally {
                    if (n) throw n.error
                  }
                }
              }),
              (e.prototype.setCellBaseline = function (t, e, r, n) {
                var o = t.node.attributes.get('rowalign')
                if ('baseline' === o || 'axis' === o) {
                  var i = this.adaptor,
                    s = i.lastChild(t.chtml)
                  i.setStyle(s, 'height', this.em(r)), i.setStyle(s, 'verticalAlign', this.em(-n))
                  var a = t.parent
                  if (!((a.node.isKind('mlabeledtr') && t === a.childNodes[0]) || ('baseline' !== e && 'axis' !== e))) return !0
                }
                return !1
              }),
              (e.prototype.handleFrame = function () {
                this.frame && this.fLine && this.adaptor.setStyle(this.itable, 'border', '.07em ' + this.node.attributes.get('frame'))
              }),
              (e.prototype.handleWidth = function () {
                var t = this.adaptor,
                  e = this.getBBox(),
                  r = e.w,
                  n = e.L,
                  o = e.R
                t.setStyle(this.chtml, 'minWidth', this.em(n + r + o))
                var i = this.node.attributes.get('width')
                if ((0, u.isPercent)(i)) t.setStyle(this.chtml, 'width', ''), t.setAttribute(this.chtml, 'width', 'full')
                else if (!this.hasLabels) {
                  if ('auto' === i) return
                  i = this.em(this.length2em(i) + 2 * this.fLine)
                }
                var s = t.firstChild(this.chtml)
                if ((t.setStyle(s, 'width', i), t.setStyle(s, 'minWidth', this.em(r)), n || o)) {
                  t.setStyle(this.chtml, 'margin', '')
                  var a = this.node.attributes.get('data-width-includes-label') ? 'padding' : 'margin'
                  n === o ? t.setStyle(s, a, '0 ' + this.em(o)) : t.setStyle(s, a, '0 ' + this.em(o) + ' 0 ' + this.em(n))
                }
                t.setAttribute(this.itable, 'width', 'full')
              }),
              (e.prototype.handleAlign = function () {
                var t = s(this.getAlignmentRow(), 2),
                  e = t[0],
                  r = t[1]
                if (null === r) 'axis' !== e && this.adaptor.setAttribute(this.chtml, 'align', e)
                else {
                  var n = this.getVerticalPosition(r, e)
                  this.adaptor.setAttribute(this.chtml, 'align', 'top'), this.adaptor.setStyle(this.chtml, 'verticalAlign', this.em(n))
                }
              }),
              (e.prototype.handleJustify = function () {
                var t = this.getAlignShift()[0]
                'center' !== t && this.adaptor.setAttribute(this.chtml, 'justify', t)
              }),
              (e.prototype.handleLabels = function () {
                if (this.hasLabels) {
                  var t = this.labels,
                    e = this.node.attributes,
                    r = this.adaptor,
                    n = e.get('side')
                  r.setAttribute(this.chtml, 'side', n), r.setAttribute(t, 'align', n), r.setStyle(t, n, '0')
                  var o = s(this.addLabelPadding(n), 2),
                    i = o[0],
                    a = o[1]
                  if (a) {
                    var l = r.firstChild(this.chtml)
                    this.setIndent(l, i, a)
                  }
                  this.updateRowHeights(), this.addLabelSpacing()
                }
              }),
              (e.prototype.addLabelPadding = function (t) {
                var e = s(this.getPadAlignShift(t), 3),
                  r = e[1],
                  n = e[2],
                  o = {}
                if ('right' === t && !this.node.attributes.get('data-width-includes-label')) {
                  var i = this.node.attributes.get('width'),
                    a = this.getBBox(),
                    l = a.w,
                    c = a.L,
                    p = a.R
                  o.style = { width: (0, u.isPercent)(i) ? 'calc(' + i + ' + ' + this.em(c + p) + ')' : this.em(c + l + p) }
                }
                return this.adaptor.append(this.chtml, this.html('mjx-labels', o, [this.labels])), [r, n]
              }),
              (e.prototype.updateRowHeights = function () {
                for (var t = this.getTableData(), e = t.H, r = t.D, n = t.NH, o = t.ND, i = this.getRowHalfSpacing(), s = 0; s < this.numRows; s++) {
                  var a = this.childNodes[s]
                  this.setRowHeight(a, e[s] + r[s] + i[s] + i[s + 1] + this.rLines[s]), e[s] !== n[s] || r[s] !== o[s] ? this.setRowBaseline(a, e[s] + r[s], r[s]) : a.node.isKind('mlabeledtr') && this.setCellBaseline(a.childNodes[0], '', e[s] + r[s], r[s])
                }
              }),
              (e.prototype.addLabelSpacing = function () {
                for (
                  var t = this.adaptor, e = this.node.attributes.get('equalrows'), r = this.getTableData(), n = r.H, o = r.D, i = e ? this.getEqualRowHeight() : 0, s = this.getRowHalfSpacing(), a = this.fLine, l = t.firstChild(this.labels), c = 0;
                  c < this.numRows;
                  c++
                ) {
                  this.childNodes[c].node.isKind('mlabeledtr')
                    ? (a && t.insert(this.html('mjx-mtr', { style: { height: this.em(a) } }), l), t.setStyle(l, 'height', this.em((e ? i : n[c] + o[c]) + s[c] + s[c + 1])), (l = t.next(l)), (a = this.rLines[c]))
                    : (a += s[c] + (e ? i : n[c] + o[c]) + s[c + 1] + this.rLines[c])
                }
              }),
              (e.kind = c.MmlMtable.prototype.kind),
              (e.styles = {
                'mjx-mtable': { 'vertical-align': '.25em', 'text-align': 'center', position: 'relative', 'box-sizing': 'border-box', 'border-spacing': 0, 'border-collapse': 'collapse' },
                'mjx-mstyle[size="s"] mjx-mtable': { 'vertical-align': '.354em' },
                'mjx-labels': { position: 'absolute', left: 0, top: 0 },
                'mjx-table': { display: 'inline-block', 'vertical-align': '-.5ex', 'box-sizing': 'border-box' },
                'mjx-table > 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%' }
              }),
              e
            )
          })((0, l.CommonMtableMixin)(a.CHTMLWrapper))
        e.CHTMLmtable = p
      },
      7056: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmtd = void 0)
        var i = r(5355),
          s = r(5164),
          a = r(4359),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (e) {
                t.prototype.toCHTML.call(this, e)
                var r = this.node.attributes.get('rowalign'),
                  n = this.node.attributes.get('columnalign')
                r !== this.parent.node.attributes.get('rowalign') && this.adaptor.setAttribute(this.chtml, 'rowalign', r),
                  'center' === n || ('mlabeledtr' === this.parent.kind && this === this.parent.childNodes[0] && n === this.parent.parent.node.attributes.get('side')) || this.adaptor.setStyle(this.chtml, 'textAlign', n),
                  this.parent.parent.node.getProperty('useHeight') && this.adaptor.append(this.chtml, this.html('mjx-tstrut'))
              }),
              (e.kind = a.MmlMtd.prototype.kind),
              (e.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' }
              }),
              e
            )
          })((0, s.CommonMtdMixin)(i.CHTMLWrapper))
        e.CHTMLmtd = l
      },
      1259: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmtext = void 0)
        var i = r(5355),
          s = r(6319),
          a = r(4770),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return o(e, t), (e.kind = a.MmlMtext.prototype.kind), e
          })((0, s.CommonMtextMixin)(i.CHTMLWrapper))
        e.CHTMLmtext = l
      },
      3571: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmlabeledtr = e.CHTMLmtr = void 0)
        var i = r(5355),
          s = r(5766),
          a = r(5766),
          l = r(5022),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (e) {
                t.prototype.toCHTML.call(this, e)
                var r = this.node.attributes.get('rowalign')
                'baseline' !== r && this.adaptor.setAttribute(this.chtml, 'rowalign', r)
              }),
              (e.kind = l.MmlMtr.prototype.kind),
              (e.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' }
              }),
              e
            )
          })((0, s.CommonMtrMixin)(i.CHTMLWrapper))
        e.CHTMLmtr = c
        var u = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.toCHTML = function (e) {
              t.prototype.toCHTML.call(this, e)
              var r = this.adaptor.firstChild(this.chtml)
              if (r) {
                this.adaptor.remove(r)
                var n = this.node.attributes.get('rowalign'),
                  o = 'baseline' !== n && 'axis' !== n ? { rowalign: n } : {},
                  i = this.html('mjx-mtr', o, [r])
                this.adaptor.append(this.parent.labels, i)
              }
            }),
            (e.prototype.markUsed = function () {
              t.prototype.markUsed.call(this), this.jax.wrapperUsage.add(c.kind)
            }),
            (e.kind = l.MmlMlabeledtr.prototype.kind),
            (e.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' }
            }),
            e
          )
        })((0, a.CommonMlabeledtrMixin)(c))
        e.CHTMLmlabeledtr = u
      },
      6590: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLmunderover = e.CHTMLmover = e.CHTMLmunder = void 0)
        var i = r(4300),
          s = r(1971),
          a = r(1971),
          l = r(1971),
          c = r(5184),
          u = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (e) {
                if (this.hasMovableLimits()) return t.prototype.toCHTML.call(this, e), void this.adaptor.setAttribute(this.chtml, 'limits', 'false')
                this.chtml = this.standardCHTMLnode(e)
                var r = this.adaptor.append(this.adaptor.append(this.chtml, this.html('mjx-row')), this.html('mjx-base')),
                  n = this.adaptor.append(this.adaptor.append(this.chtml, this.html('mjx-row')), this.html('mjx-under'))
                this.baseChild.toCHTML(r), this.scriptChild.toCHTML(n)
                var o = this.baseChild.getOuterBBox(),
                  i = this.scriptChild.getOuterBBox(),
                  s = this.getUnderKV(o, i)[0],
                  a = this.isLineBelow ? 0 : this.getDelta(!0)
                this.adaptor.setStyle(n, 'paddingTop', this.em(s)), this.setDeltaW([r, n], this.getDeltaW([o, i], [0, -a])), this.adjustUnderDepth(n, i)
              }),
              (e.kind = c.MmlMunder.prototype.kind),
              (e.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' } }),
              e
            )
          })((0, s.CommonMunderMixin)(i.CHTMLmsub))
        e.CHTMLmunder = u
        var p = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.toCHTML = function (e) {
              if (this.hasMovableLimits()) return t.prototype.toCHTML.call(this, e), void this.adaptor.setAttribute(this.chtml, 'limits', 'false')
              this.chtml = this.standardCHTMLnode(e)
              var r = this.adaptor.append(this.chtml, this.html('mjx-over')),
                n = this.adaptor.append(this.chtml, this.html('mjx-base'))
              this.scriptChild.toCHTML(r), this.baseChild.toCHTML(n)
              var o = this.scriptChild.getOuterBBox(),
                i = this.baseChild.getOuterBBox()
              this.adjustBaseHeight(n, i)
              var s = this.getOverKU(i, o)[0],
                a = this.isLineAbove ? 0 : this.getDelta()
              this.adaptor.setStyle(r, 'paddingBottom', this.em(s)), this.setDeltaW([n, r], this.getDeltaW([i, o], [0, a])), this.adjustOverDepth(r, o)
            }),
            (e.kind = c.MmlMover.prototype.kind),
            (e.styles = { 'mjx-mover:not([limits="false"])': { 'padding-top': '.1em' }, 'mjx-mover:not([limits="false"]) > *': { display: 'block', 'text-align': 'left' } }),
            e
          )
        })((0, a.CommonMoverMixin)(i.CHTMLmsup))
        e.CHTMLmover = p
        var h = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.toCHTML = function (e) {
              if (this.hasMovableLimits()) return t.prototype.toCHTML.call(this, e), void this.adaptor.setAttribute(this.chtml, 'limits', 'false')
              this.chtml = this.standardCHTMLnode(e)
              var r = this.adaptor.append(this.chtml, this.html('mjx-over')),
                n = this.adaptor.append(this.adaptor.append(this.chtml, this.html('mjx-box')), this.html('mjx-munder')),
                o = this.adaptor.append(this.adaptor.append(n, this.html('mjx-row')), this.html('mjx-base')),
                i = this.adaptor.append(this.adaptor.append(n, this.html('mjx-row')), this.html('mjx-under'))
              this.overChild.toCHTML(r), this.baseChild.toCHTML(o), this.underChild.toCHTML(i)
              var s = this.overChild.getOuterBBox(),
                a = this.baseChild.getOuterBBox(),
                l = this.underChild.getOuterBBox()
              this.adjustBaseHeight(o, a)
              var c = this.getOverKU(a, s)[0],
                u = this.getUnderKV(a, l)[0],
                p = this.getDelta()
              this.adaptor.setStyle(r, 'paddingBottom', this.em(c)),
                this.adaptor.setStyle(i, 'paddingTop', this.em(u)),
                this.setDeltaW([o, i, r], this.getDeltaW([a, l, s], [0, this.isLineBelow ? 0 : -p, this.isLineAbove ? 0 : p])),
                this.adjustOverDepth(r, s),
                this.adjustUnderDepth(i, l)
            }),
            (e.prototype.markUsed = function () {
              t.prototype.markUsed.call(this), this.jax.wrapperUsage.add(i.CHTMLmsubsup.kind)
            }),
            (e.kind = c.MmlMunderover.prototype.kind),
            (e.styles = { 'mjx-munderover:not([limits="false"])': { 'padding-top': '.1em' }, 'mjx-munderover:not([limits="false"]) > *': { display: 'block' } }),
            e
          )
        })((0, l.CommonMunderoverMixin)(i.CHTMLmsubsup))
        e.CHTMLmunderover = h
      },
      8650: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLscriptbase = void 0)
        var a = r(5355),
          l = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                this.chtml = this.standardCHTMLnode(t)
                var e = i(this.getOffset(), 2),
                  r = e[0],
                  n = e[1],
                  o = r - (this.baseRemoveIc ? this.baseIc : 0),
                  s = { 'vertical-align': this.em(n) }
                o && (s['margin-left'] = this.em(o)), this.baseChild.toCHTML(this.chtml), this.scriptChild.toCHTML(this.adaptor.append(this.chtml, this.html('mjx-script', { style: s })))
              }),
              (e.prototype.setDeltaW = function (t, e) {
                for (var r = 0; r < e.length; r++) e[r] && this.adaptor.setStyle(t[r], 'paddingLeft', this.em(e[r]))
              }),
              (e.prototype.adjustOverDepth = function (t, e) {
                e.d >= 0 || this.adaptor.setStyle(t, 'marginBottom', this.em(e.d * e.rscale))
              }),
              (e.prototype.adjustUnderDepth = function (t, e) {
                var r, n
                if (!(e.d >= 0)) {
                  var o = this.adaptor,
                    i = this.em(e.d),
                    a = this.html('mjx-box', { style: { 'margin-bottom': i, 'vertical-align': i } })
                  try {
                    for (var l = s(o.childNodes(o.firstChild(t))), c = l.next(); !c.done; c = l.next()) {
                      var u = c.value
                      o.append(a, u)
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      c && !c.done && (n = l.return) && n.call(l)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                  o.append(o.firstChild(t), a)
                }
              }),
              (e.prototype.adjustBaseHeight = function (t, e) {
                if (this.node.attributes.get('accent')) {
                  var r = this.font.params.x_height * e.scale
                  e.h < r && (this.adaptor.setStyle(t, 'paddingTop', this.em(r - e.h)), (e.h = r))
                }
              }),
              (e.kind = 'scriptbase'),
              e
            )
          })((0, r(167).CommonScriptbaseMixin)(a.CHTMLWrapper))
        e.CHTMLscriptbase = l
      },
      421: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CHTMLxml = e.CHTMLannotationXML = e.CHTMLannotation = e.CHTMLsemantics = void 0)
        var i = r(5355),
          s = r(5806),
          a = r(9102),
          l = r(9007),
          c = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.toCHTML = function (t) {
                var e = this.standardCHTMLnode(t)
                this.childNodes.length && this.childNodes[0].toCHTML(e)
              }),
              (e.kind = a.MmlSemantics.prototype.kind),
              e
            )
          })((0, s.CommonSemanticsMixin)(i.CHTMLWrapper))
        e.CHTMLsemantics = c
        var u = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.toCHTML = function (e) {
              t.prototype.toCHTML.call(this, e)
            }),
            (e.prototype.computeBBox = function () {
              return this.bbox
            }),
            (e.kind = a.MmlAnnotation.prototype.kind),
            e
          )
        })(i.CHTMLWrapper)
        e.CHTMLannotation = u
        var p = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return o(e, t), (e.kind = a.MmlAnnotationXML.prototype.kind), (e.styles = { 'mjx-annotation-xml': { 'font-family': 'initial', 'line-height': 'normal' } }), e
        })(i.CHTMLWrapper)
        e.CHTMLannotationXML = p
        var h = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.toCHTML = function (t) {
              this.chtml = this.adaptor.append(t, this.adaptor.clone(this.node.getXML()))
            }),
            (e.prototype.computeBBox = function (t, e) {
              void 0 === e && (e = !1)
              var r = this.jax.measureXMLnode(this.node.getXML()),
                n = r.w,
                o = r.h,
                i = r.d
              ;(t.w = n), (t.h = o), (t.d = i)
            }),
            (e.prototype.getStyles = function () {}),
            (e.prototype.getScale = function () {}),
            (e.prototype.getVariant = function () {}),
            (e.kind = l.XMLNode.prototype.kind),
            (e.autoStyle = !1),
            e
          )
        })(i.CHTMLWrapper)
        e.CHTMLxml = h
      },
      2760: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.TeXFont = void 0)
        var s = r(8042),
          a = r(5920),
          l = r(4005),
          c = r(1015),
          u = r(4515),
          p = r(6555),
          h = r(2183),
          f = r(3490),
          d = r(9056),
          m = r(3019),
          y = r(2713),
          g = r(7517),
          b = r(4182),
          v = r(2679),
          _ = r(5469),
          S = r(7563),
          M = r(9409),
          O = r(775),
          x = r(9551),
          E = r(7907),
          A = r(9659),
          C = r(98),
          T = r(6275),
          N = r(6530),
          w = r(4409),
          L = r(5292),
          I = r(9124),
          P = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.defaultCssFamilyPrefix = 'MJXZERO'),
              (e.defaultVariantClasses = {
                normal: 'mjx-n',
                bold: 'mjx-b',
                italic: 'mjx-i',
                'bold-italic': 'mjx-b mjx-i',
                'double-struck': 'mjx-ds mjx-b',
                fraktur: 'mjx-fr',
                'bold-fraktur': 'mjx-fr mjx-b',
                script: 'mjx-sc mjx-i',
                'bold-script': 'mjx-sc mjx-b mjx-i',
                'sans-serif': 'mjx-ss',
                'bold-sans-serif': 'mjx-ss mjx-b',
                'sans-serif-italic': 'mjx-ss mjx-i',
                'sans-serif-bold-italic': 'mjx-ss mjx-b mjx-i',
                monospace: 'mjx-ty',
                '-smallop': 'mjx-sop',
                '-largeop': 'mjx-lop',
                '-size3': 'mjx-s3',
                '-size4': 'mjx-s4',
                '-tex-calligraphic': 'mjx-cal mjx-i',
                '-tex-bold-calligraphic': 'mjx-cal mjx-b',
                '-tex-mathit': 'mjx-mit mjx-i',
                '-tex-oldstyle': 'mjx-os',
                '-tex-bold-oldstyle': 'mjx-os mjx-b',
                '-tex-variant': 'mjx-var'
              }),
              (e.defaultVariantLetters = {
                normal: '',
                bold: 'B',
                italic: 'MI',
                'bold-italic': 'BI',
                'double-struck': 'A',
                fraktur: 'FR',
                'bold-fraktur': 'FRB',
                script: 'SC',
                'bold-script': 'SCB',
                'sans-serif': 'SS',
                'bold-sans-serif': 'SSB',
                'sans-serif-italic': 'SSI',
                'sans-serif-bold-italic': 'SSBI',
                monospace: 'T',
                '-smallop': 'S1',
                '-largeop': 'S2',
                '-size3': 'S3',
                '-size4': 'S4',
                '-tex-calligraphic': 'C',
                '-tex-bold-calligraphic': 'CB',
                '-tex-mathit': 'MI',
                '-tex-oldstyle': 'C',
                '-tex-bold-oldstyle': 'CB',
                '-tex-variant': 'A'
              }),
              (e.defaultDelimiters = I.delimiters),
              (e.defaultChars = {
                normal: y.normal,
                bold: c.bold,
                italic: f.italic,
                'bold-italic': l.boldItalic,
                'double-struck': u.doubleStruck,
                fraktur: h.fraktur,
                'bold-fraktur': p.frakturBold,
                script: M.script,
                'bold-script': S.scriptBold,
                'sans-serif': _.sansSerif,
                'bold-sans-serif': b.sansSerifBold,
                'sans-serif-italic': v.sansSerifItalic,
                'sans-serif-bold-italic': g.sansSerifBoldItalic,
                monospace: m.monospace,
                '-smallop': O.smallop,
                '-largeop': d.largeop,
                '-size3': N.texSize3,
                '-size4': w.texSize4,
                '-tex-calligraphic': E.texCalligraphic,
                '-tex-bold-calligraphic': x.texCalligraphicBold,
                '-tex-mathit': A.texMathit,
                '-tex-oldstyle': T.texOldstyle,
                '-tex-bold-oldstyle': C.texOldstyleBold,
                '-tex-variant': L.texVariant
              }),
              (e.defaultStyles = i(i({}, s.CHTMLFontData.defaultStyles), {
                '.MJX-TEX': { 'font-family': 'MJXZERO, MJXTEX' },
                '.TEX-B': { 'font-family': 'MJXZERO, MJXTEX-B' },
                '.TEX-I': { 'font-family': 'MJXZERO, MJXTEX-I' },
                '.TEX-MI': { 'font-family': 'MJXZERO, MJXTEX-MI' },
                '.TEX-BI': { 'font-family': 'MJXZERO, MJXTEX-BI' },
                '.TEX-S1': { 'font-family': 'MJXZERO, MJXTEX-S1' },
                '.TEX-S2': { 'font-family': 'MJXZERO, MJXTEX-S2' },
                '.TEX-S3': { 'font-family': 'MJXZERO, MJXTEX-S3' },
                '.TEX-S4': { 'font-family': 'MJXZERO, MJXTEX-S4' },
                '.TEX-A': { 'font-family': 'MJXZERO, MJXTEX-A' },
                '.TEX-C': { 'font-family': 'MJXZERO, MJXTEX-C' },
                '.TEX-CB': { 'font-family': 'MJXZERO, MJXTEX-CB' },
                '.TEX-FR': { 'font-family': 'MJXZERO, MJXTEX-FR' },
                '.TEX-FRB': { 'font-family': 'MJXZERO, MJXTEX-FRB' },
                '.TEX-SS': { 'font-family': 'MJXZERO, MJXTEX-SS' },
                '.TEX-SSB': { 'font-family': 'MJXZERO, MJXTEX-SSB' },
                '.TEX-SSI': { 'font-family': 'MJXZERO, MJXTEX-SSI' },
                '.TEX-SC': { 'font-family': 'MJXZERO, MJXTEX-SC' },
                '.TEX-T': { 'font-family': 'MJXZERO, MJXTEX-T' },
                '.TEX-V': { 'font-family': 'MJXZERO, MJXTEX-V' },
                '.TEX-VB': { 'font-family': 'MJXZERO, MJXTEX-VB' },
                'mjx-stretchy-v mjx-c, mjx-stretchy-h mjx-c': { 'font-family': 'MJXZERO, MJXTEX-S1, MJXTEX-S4, MJXTEX, MJXTEX-A ! important' }
              })),
              (e.defaultFonts = i(i({}, s.CHTMLFontData.defaultFonts), {
                '@font-face /* 1 */': { 'font-family': 'MJXTEX', src: 'url("%%URL%%/MathJax_Main-Regular.woff") format("woff")' },
                '@font-face /* 2 */': { 'font-family': 'MJXTEX-B', src: 'url("%%URL%%/MathJax_Main-Bold.woff") format("woff")' },
                '@font-face /* 3 */': { 'font-family': 'MJXTEX-I', src: 'url("%%URL%%/MathJax_Math-Italic.woff") format("woff")' },
                '@font-face /* 4 */': { 'font-family': 'MJXTEX-MI', src: 'url("%%URL%%/MathJax_Main-Italic.woff") format("woff")' },
                '@font-face /* 5 */': { 'font-family': 'MJXTEX-BI', src: 'url("%%URL%%/MathJax_Math-BoldItalic.woff") format("woff")' },
                '@font-face /* 6 */': { 'font-family': 'MJXTEX-S1', src: 'url("%%URL%%/MathJax_Size1-Regular.woff") format("woff")' },
                '@font-face /* 7 */': { 'font-family': 'MJXTEX-S2', src: 'url("%%URL%%/MathJax_Size2-Regular.woff") format("woff")' },
                '@font-face /* 8 */': { 'font-family': 'MJXTEX-S3', src: 'url("%%URL%%/MathJax_Size3-Regular.woff") format("woff")' },
                '@font-face /* 9 */': { 'font-family': 'MJXTEX-S4', src: 'url("%%URL%%/MathJax_Size4-Regular.woff") format("woff")' },
                '@font-face /* 10 */': { 'font-family': 'MJXTEX-A', src: 'url("%%URL%%/MathJax_AMS-Regular.woff") format("woff")' },
                '@font-face /* 11 */': { 'font-family': 'MJXTEX-C', src: 'url("%%URL%%/MathJax_Calligraphic-Regular.woff") format("woff")' },
                '@font-face /* 12 */': { 'font-family': 'MJXTEX-CB', src: 'url("%%URL%%/MathJax_Calligraphic-Bold.woff") format("woff")' },
                '@font-face /* 13 */': { 'font-family': 'MJXTEX-FR', src: 'url("%%URL%%/MathJax_Fraktur-Regular.woff") format("woff")' },
                '@font-face /* 14 */': { 'font-family': 'MJXTEX-FRB', src: 'url("%%URL%%/MathJax_Fraktur-Bold.woff") format("woff")' },
                '@font-face /* 15 */': { 'font-family': 'MJXTEX-SS', src: 'url("%%URL%%/MathJax_SansSerif-Regular.woff") format("woff")' },
                '@font-face /* 16 */': { 'font-family': 'MJXTEX-SSB', src: 'url("%%URL%%/MathJax_SansSerif-Bold.woff") format("woff")' },
                '@font-face /* 17 */': { 'font-family': 'MJXTEX-SSI', src: 'url("%%URL%%/MathJax_SansSerif-Italic.woff") format("woff")' },
                '@font-face /* 18 */': { 'font-family': 'MJXTEX-SC', src: 'url("%%URL%%/MathJax_Script-Regular.woff") format("woff")' },
                '@font-face /* 19 */': { 'font-family': 'MJXTEX-T', src: 'url("%%URL%%/MathJax_Typewriter-Regular.woff") format("woff")' },
                '@font-face /* 20 */': { 'font-family': 'MJXTEX-V', src: 'url("%%URL%%/MathJax_Vector-Regular.woff") format("woff")' },
                '@font-face /* 21 */': { 'font-family': 'MJXTEX-VB', src: 'url("%%URL%%/MathJax_Vector-Bold.woff") format("woff")' }
              })),
              e
            )
          })((0, a.CommonTeXFontMixin)(s.CHTMLFontData))
        e.TeXFont = P
      },
      4005: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.boldItalic = void 0)
        var n = r(8042),
          o = r(3980)
        e.boldItalic = (0, n.AddCSS)(o.boldItalic, { 305: { f: 'B' }, 567: { f: 'B' }, 8260: { c: '/' }, 8710: { c: '\\394' }, 10744: { c: '/' } })
      },
      1015: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.bold = void 0)
        var n = r(8042),
          o = r(1103)
        e.bold = (0, n.AddCSS)(o.bold, {
          183: { c: '\\22C5' },
          305: { f: '' },
          567: { f: '' },
          697: { c: '\\2032' },
          8194: { c: '' },
          8195: { c: '' },
          8196: { c: '' },
          8197: { c: '' },
          8198: { c: '' },
          8201: { c: '' },
          8202: { c: '' },
          8213: { c: '\\2014' },
          8214: { c: '\\2225' },
          8215: { c: '_' },
          8226: { c: '\\2219' },
          8243: { c: '\\2032\\2032' },
          8244: { c: '\\2032\\2032\\2032' },
          8254: { c: '\\2C9' },
          8260: { c: '/' },
          8279: { c: '\\2032\\2032\\2032\\2032' },
          8407: { c: '\\2192', f: 'VB' },
          8602: { c: '\\2190\\338' },
          8603: { c: '\\2192\\338' },
          8622: { c: '\\2194\\338' },
          8653: { c: '\\21D0\\338' },
          8654: { c: '\\21D4\\338' },
          8655: { c: '\\21D2\\338' },
          8708: { c: '\\2203\\338' },
          8710: { c: '\\394' },
          8716: { c: '\\220B\\338' },
          8740: { c: '\\2223\\338' },
          8742: { c: '\\2225\\338' },
          8769: { c: '\\223C\\338' },
          8772: { c: '\\2243\\338' },
          8775: { c: '\\2245\\338' },
          8777: { c: '\\2248\\338' },
          8802: { c: '\\2261\\338' },
          8813: { c: '\\224D\\338' },
          8814: { c: '<\\338' },
          8815: { c: '>\\338' },
          8816: { c: '\\2264\\338' },
          8817: { c: '\\2265\\338' },
          8832: { c: '\\227A\\338' },
          8833: { c: '\\227B\\338' },
          8836: { c: '\\2282\\338' },
          8837: { c: '\\2283\\338' },
          8840: { c: '\\2286\\338' },
          8841: { c: '\\2287\\338' },
          8876: { c: '\\22A2\\338' },
          8877: { c: '\\22A8\\338' },
          8930: { c: '\\2291\\338' },
          8931: { c: '\\2292\\338' },
          9001: { c: '\\27E8' },
          9002: { c: '\\27E9' },
          9653: { c: '\\25B3' },
          9663: { c: '\\25BD' },
          10072: { c: '\\2223' },
          10744: { c: '/', f: 'BI' },
          10799: { c: '\\D7' },
          12296: { c: '\\27E8' },
          12297: { c: '\\27E9' }
        })
      },
      4515: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.doubleStruck = void 0)
        var n = r(6001)
        Object.defineProperty(e, 'doubleStruck', {
          enumerable: !0,
          get: function () {
            return n.doubleStruck
          }
        })
      },
      6555: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.frakturBold = void 0)
        var n = r(8042),
          o = r(3696)
        e.frakturBold = (0, n.AddCSS)(o.frakturBold, { 8260: { c: '/' } })
      },
      2183: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.fraktur = void 0)
        var n = r(8042),
          o = r(9587)
        e.fraktur = (0, n.AddCSS)(o.fraktur, { 8260: { c: '/' } })
      },
      3490: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.italic = void 0)
        var n = r(8042),
          o = r(8348)
        e.italic = (0, n.AddCSS)(o.italic, { 47: { f: 'I' }, 989: { c: '\\E008', f: 'A' }, 8213: { c: '\\2014' }, 8215: { c: '_' }, 8260: { c: '/', f: 'I' }, 8710: { c: '\\394', f: 'I' }, 10744: { c: '/', f: 'I' } })
      },
      9056: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.largeop = void 0)
        var n = r(8042),
          o = r(1376)
        e.largeop = (0, n.AddCSS)(o.largeop, {
          8214: { f: 'S1' },
          8260: { c: '/' },
          8593: { f: 'S1' },
          8595: { f: 'S1' },
          8657: { f: 'S1' },
          8659: { f: 'S1' },
          8739: { f: 'S1' },
          8741: { f: 'S1' },
          9001: { c: '\\27E8' },
          9002: { c: '\\27E9' },
          9168: { f: 'S1' },
          10072: { c: '\\2223', f: 'S1' },
          10764: { c: '\\222C\\222C' },
          12296: { c: '\\27E8' },
          12297: { c: '\\27E9' }
        })
      },
      3019: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.monospace = void 0)
        var n = r(8042),
          o = r(1439)
        e.monospace = (0, n.AddCSS)(o.monospace, {
          697: { c: '\\2032' },
          913: { c: 'A' },
          914: { c: 'B' },
          917: { c: 'E' },
          918: { c: 'Z' },
          919: { c: 'H' },
          921: { c: 'I' },
          922: { c: 'K' },
          924: { c: 'M' },
          925: { c: 'N' },
          927: { c: 'O' },
          929: { c: 'P' },
          932: { c: 'T' },
          935: { c: 'X' },
          8215: { c: '_' },
          8243: { c: '\\2032\\2032' },
          8244: { c: '\\2032\\2032\\2032' },
          8260: { c: '/' },
          8279: { c: '\\2032\\2032\\2032\\2032' },
          8710: { c: '\\394' }
        })
      },
      2713: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.normal = void 0)
        var n = r(8042),
          o = r(331)
        e.normal = (0, n.AddCSS)(o.normal, {
          163: { f: 'MI' },
          165: { f: 'A' },
          174: { f: 'A' },
          183: { c: '\\22C5' },
          240: { f: 'A' },
          697: { c: '\\2032' },
          913: { c: 'A' },
          914: { c: 'B' },
          917: { c: 'E' },
          918: { c: 'Z' },
          919: { c: 'H' },
          921: { c: 'I' },
          922: { c: 'K' },
          924: { c: 'M' },
          925: { c: 'N' },
          927: { c: 'O' },
          929: { c: 'P' },
          932: { c: 'T' },
          935: { c: 'X' },
          8192: { c: '' },
          8193: { c: '' },
          8194: { c: '' },
          8195: { c: '' },
          8196: { c: '' },
          8197: { c: '' },
          8198: { c: '' },
          8201: { c: '' },
          8202: { c: '' },
          8203: { c: '' },
          8204: { c: '' },
          8213: { c: '\\2014' },
          8214: { c: '\\2225' },
          8215: { c: '_' },
          8226: { c: '\\2219' },
          8243: { c: '\\2032\\2032' },
          8244: { c: '\\2032\\2032\\2032' },
          8245: { f: 'A' },
          8246: { c: '\\2035\\2035', f: 'A' },
          8247: { c: '\\2035\\2035\\2035', f: 'A' },
          8254: { c: '\\2C9' },
          8260: { c: '/' },
          8279: { c: '\\2032\\2032\\2032\\2032' },
          8288: { c: '' },
          8289: { c: '' },
          8290: { c: '' },
          8291: { c: '' },
          8292: { c: '' },
          8407: { c: '\\2192', f: 'V' },
          8450: { c: 'C', f: 'A' },
          8459: { c: 'H', f: 'SC' },
          8460: { c: 'H', f: 'FR' },
          8461: { c: 'H', f: 'A' },
          8462: { c: 'h', f: 'I' },
          8463: { f: 'A' },
          8464: { c: 'I', f: 'SC' },
          8465: { c: 'I', f: 'FR' },
          8466: { c: 'L', f: 'SC' },
          8469: { c: 'N', f: 'A' },
          8473: { c: 'P', f: 'A' },
          8474: { c: 'Q', f: 'A' },
          8475: { c: 'R', f: 'SC' },
          8476: { c: 'R', f: 'FR' },
          8477: { c: 'R', f: 'A' },
          8484: { c: 'Z', f: 'A' },
          8486: { c: '\\3A9' },
          8487: { f: 'A' },
          8488: { c: 'Z', f: 'FR' },
          8492: { c: 'B', f: 'SC' },
          8493: { c: 'C', f: 'FR' },
          8496: { c: 'E', f: 'SC' },
          8497: { c: 'F', f: 'SC' },
          8498: { f: 'A' },
          8499: { c: 'M', f: 'SC' },
          8502: { f: 'A' },
          8503: { f: 'A' },
          8504: { f: 'A' },
          8513: { f: 'A' },
          8602: { f: 'A' },
          8603: { f: 'A' },
          8606: { f: 'A' },
          8608: { f: 'A' },
          8610: { f: 'A' },
          8611: { f: 'A' },
          8619: { f: 'A' },
          8620: { f: 'A' },
          8621: { f: 'A' },
          8622: { f: 'A' },
          8624: { f: 'A' },
          8625: { f: 'A' },
          8630: { f: 'A' },
          8631: { f: 'A' },
          8634: { f: 'A' },
          8635: { f: 'A' },
          8638: { f: 'A' },
          8639: { f: 'A' },
          8642: { f: 'A' },
          8643: { f: 'A' },
          8644: { f: 'A' },
          8646: { f: 'A' },
          8647: { f: 'A' },
          8648: { f: 'A' },
          8649: { f: 'A' },
          8650: { f: 'A' },
          8651: { f: 'A' },
          8653: { f: 'A' },
          8654: { f: 'A' },
          8655: { f: 'A' },
          8666: { f: 'A' },
          8667: { f: 'A' },
          8669: { f: 'A' },
          8672: { f: 'A' },
          8674: { f: 'A' },
          8705: { f: 'A' },
          8708: { c: '\\2203\\338' },
          8710: { c: '\\394' },
          8716: { c: '\\220B\\338' },
          8717: { f: 'A' },
          8719: { f: 'S1' },
          8720: { f: 'S1' },
          8721: { f: 'S1' },
          8724: { f: 'A' },
          8737: { f: 'A' },
          8738: { f: 'A' },
          8740: { f: 'A' },
          8742: { f: 'A' },
          8748: { f: 'S1' },
          8749: { f: 'S1' },
          8750: { f: 'S1' },
          8756: { f: 'A' },
          8757: { f: 'A' },
          8765: { f: 'A' },
          8769: { f: 'A' },
          8770: { f: 'A' },
          8772: { c: '\\2243\\338' },
          8775: { c: '\\2246', f: 'A' },
          8777: { c: '\\2248\\338' },
          8778: { f: 'A' },
          8782: { f: 'A' },
          8783: { f: 'A' },
          8785: { f: 'A' },
          8786: { f: 'A' },
          8787: { f: 'A' },
          8790: { f: 'A' },
          8791: { f: 'A' },
          8796: { f: 'A' },
          8802: { c: '\\2261\\338' },
          8806: { f: 'A' },
          8807: { f: 'A' },
          8808: { f: 'A' },
          8809: { f: 'A' },
          8812: { f: 'A' },
          8813: { c: '\\224D\\338' },
          8814: { f: 'A' },
          8815: { f: 'A' },
          8816: { f: 'A' },
          8817: { f: 'A' },
          8818: { f: 'A' },
          8819: { f: 'A' },
          8820: { c: '\\2272\\338' },
          8821: { c: '\\2273\\338' },
          8822: { f: 'A' },
          8823: { f: 'A' },
          8824: { c: '\\2276\\338' },
          8825: { c: '\\2277\\338' },
          8828: { f: 'A' },
          8829: { f: 'A' },
          8830: { f: 'A' },
          8831: { f: 'A' },
          8832: { f: 'A' },
          8833: { f: 'A' },
          8836: { c: '\\2282\\338' },
          8837: { c: '\\2283\\338' },
          8840: { f: 'A' },
          8841: { f: 'A' },
          8842: { f: 'A' },
          8843: { f: 'A' },
          8847: { f: 'A' },
          8848: { f: 'A' },
          8858: { f: 'A' },
          8859: { f: 'A' },
          8861: { f: 'A' },
          8862: { f: 'A' },
          8863: { f: 'A' },
          8864: { f: 'A' },
          8865: { f: 'A' },
          8873: { f: 'A' },
          8874: { f: 'A' },
          8876: { f: 'A' },
          8877: { f: 'A' },
          8878: { f: 'A' },
          8879: { f: 'A' },
          8882: { f: 'A' },
          8883: { f: 'A' },
          8884: { f: 'A' },
          8885: { f: 'A' },
          8888: { f: 'A' },
          8890: { f: 'A' },
          8891: { f: 'A' },
          8892: { f: 'A' },
          8896: { f: 'S1' },
          8897: { f: 'S1' },
          8898: { f: 'S1' },
          8899: { f: 'S1' },
          8903: { f: 'A' },
          8905: { f: 'A' },
          8906: { f: 'A' },
          8907: { f: 'A' },
          8908: { f: 'A' },
          8909: { f: 'A' },
          8910: { f: 'A' },
          8911: { f: 'A' },
          8912: { f: 'A' },
          8913: { f: 'A' },
          8914: { f: 'A' },
          8915: { f: 'A' },
          8916: { f: 'A' },
          8918: { f: 'A' },
          8919: { f: 'A' },
          8920: { f: 'A' },
          8921: { f: 'A' },
          8922: { f: 'A' },
          8923: { f: 'A' },
          8926: { f: 'A' },
          8927: { f: 'A' },
          8928: { f: 'A' },
          8929: { f: 'A' },
          8930: { c: '\\2291\\338' },
          8931: { c: '\\2292\\338' },
          8934: { f: 'A' },
          8935: { f: 'A' },
          8936: { f: 'A' },
          8937: { f: 'A' },
          8938: { f: 'A' },
          8939: { f: 'A' },
          8940: { f: 'A' },
          8941: { f: 'A' },
          8965: { c: '\\22BC', f: 'A' },
          8966: { c: '\\2A5E', f: 'A' },
          8988: { c: '\\250C', f: 'A' },
          8989: { c: '\\2510', f: 'A' },
          8990: { c: '\\2514', f: 'A' },
          8991: { c: '\\2518', f: 'A' },
          9001: { c: '\\27E8' },
          9002: { c: '\\27E9' },
          9168: { f: 'S1' },
          9416: { f: 'A' },
          9484: { f: 'A' },
          9488: { f: 'A' },
          9492: { f: 'A' },
          9496: { f: 'A' },
          9585: { f: 'A' },
          9586: { f: 'A' },
          9632: { f: 'A' },
          9633: { f: 'A' },
          9642: { c: '\\25A0', f: 'A' },
          9650: { f: 'A' },
          9652: { c: '\\25B2', f: 'A' },
          9653: { c: '\\25B3' },
          9654: { f: 'A' },
          9656: { c: '\\25B6', f: 'A' },
          9660: { f: 'A' },
          9662: { c: '\\25BC', f: 'A' },
          9663: { c: '\\25BD' },
          9664: { f: 'A' },
          9666: { c: '\\25C0', f: 'A' },
          9674: { f: 'A' },
          9723: { c: '\\25A1', f: 'A' },
          9724: { c: '\\25A0', f: 'A' },
          9733: { f: 'A' },
          10003: { f: 'A' },
          10016: { f: 'A' },
          10072: { c: '\\2223' },
          10731: { f: 'A' },
          10744: { c: '/', f: 'I' },
          10752: { f: 'S1' },
          10753: { f: 'S1' },
          10754: { f: 'S1' },
          10756: { f: 'S1' },
          10758: { f: 'S1' },
          10764: { c: '\\222C\\222C', f: 'S1' },
          10799: { c: '\\D7' },
          10846: { f: 'A' },
          10877: { f: 'A' },
          10878: { f: 'A' },
          10885: { f: 'A' },
          10886: { f: 'A' },
          10887: { f: 'A' },
          10888: { f: 'A' },
          10889: { f: 'A' },
          10890: { f: 'A' },
          10891: { f: 'A' },
          10892: { f: 'A' },
          10901: { f: 'A' },
          10902: { f: 'A' },
          10933: { f: 'A' },
          10934: { f: 'A' },
          10935: { f: 'A' },
          10936: { f: 'A' },
          10937: { f: 'A' },
          10938: { f: 'A' },
          10949: { f: 'A' },
          10950: { f: 'A' },
          10955: { f: 'A' },
          10956: { f: 'A' },
          12296: { c: '\\27E8' },
          12297: { c: '\\27E9' },
          57350: { f: 'A' },
          57351: { f: 'A' },
          57352: { f: 'A' },
          57353: { f: 'A' },
          57356: { f: 'A' },
          57357: { f: 'A' },
          57358: { f: 'A' },
          57359: { f: 'A' },
          57360: { f: 'A' },
          57361: { f: 'A' },
          57366: { f: 'A' },
          57367: { f: 'A' },
          57368: { f: 'A' },
          57369: { f: 'A' },
          57370: { f: 'A' },
          57371: { f: 'A' },
          119808: { c: 'A', f: 'B' },
          119809: { c: 'B', f: 'B' },
          119810: { c: 'C', f: 'B' },
          119811: { c: 'D', f: 'B' },
          119812: { c: 'E', f: 'B' },
          119813: { c: 'F', f: 'B' },
          119814: { c: 'G', f: 'B' },
          119815: { c: 'H', f: 'B' },
          119816: { c: 'I', f: 'B' },
          119817: { c: 'J', f: 'B' },
          119818: { c: 'K', f: 'B' },
          119819: { c: 'L', f: 'B' },
          119820: { c: 'M', f: 'B' },
          119821: { c: 'N', f: 'B' },
          119822: { c: 'O', f: 'B' },
          119823: { c: 'P', f: 'B' },
          119824: { c: 'Q', f: 'B' },
          119825: { c: 'R', f: 'B' },
          119826: { c: 'S', f: 'B' },
          119827: { c: 'T', f: 'B' },
          119828: { c: 'U', f: 'B' },
          119829: { c: 'V', f: 'B' },
          119830: { c: 'W', f: 'B' },
          119831: { c: 'X', f: 'B' },
          119832: { c: 'Y', f: 'B' },
          119833: { c: 'Z', f: 'B' },
          119834: { c: 'a', f: 'B' },
          119835: { c: 'b', f: 'B' },
          119836: { c: 'c', f: 'B' },
          119837: { c: 'd', f: 'B' },
          119838: { c: 'e', f: 'B' },
          119839: { c: 'f', f: 'B' },
          119840: { c: 'g', f: 'B' },
          119841: { c: 'h', f: 'B' },
          119842: { c: 'i', f: 'B' },
          119843: { c: 'j', f: 'B' },
          119844: { c: 'k', f: 'B' },
          119845: { c: 'l', f: 'B' },
          119846: { c: 'm', f: 'B' },
          119847: { c: 'n', f: 'B' },
          119848: { c: 'o', f: 'B' },
          119849: { c: 'p', f: 'B' },
          119850: { c: 'q', f: 'B' },
          119851: { c: 'r', f: 'B' },
          119852: { c: 's', f: 'B' },
          119853: { c: 't', f: 'B' },
          119854: { c: 'u', f: 'B' },
          119855: { c: 'v', f: 'B' },
          119856: { c: 'w', f: 'B' },
          119857: { c: 'x', f: 'B' },
          119858: { c: 'y', f: 'B' },
          119859: { c: 'z', f: 'B' },
          119860: { c: 'A', f: 'I' },
          119861: { c: 'B', f: 'I' },
          119862: { c: 'C', f: 'I' },
          119863: { c: 'D', f: 'I' },
          119864: { c: 'E', f: 'I' },
          119865: { c: 'F', f: 'I' },
          119866: { c: 'G', f: 'I' },
          119867: { c: 'H', f: 'I' },
          119868: { c: 'I', f: 'I' },
          119869: { c: 'J', f: 'I' },
          119870: { c: 'K', f: 'I' },
          119871: { c: 'L', f: 'I' },
          119872: { c: 'M', f: 'I' },
          119873: { c: 'N', f: 'I' },
          119874: { c: 'O', f: 'I' },
          119875: { c: 'P', f: 'I' },
          119876: { c: 'Q', f: 'I' },
          119877: { c: 'R', f: 'I' },
          119878: { c: 'S', f: 'I' },
          119879: { c: 'T', f: 'I' },
          119880: { c: 'U', f: 'I' },
          119881: { c: 'V', f: 'I' },
          119882: { c: 'W', f: 'I' },
          119883: { c: 'X', f: 'I' },
          119884: { c: 'Y', f: 'I' },
          119885: { c: 'Z', f: 'I' },
          119886: { c: 'a', f: 'I' },
          119887: { c: 'b', f: 'I' },
          119888: { c: 'c', f: 'I' },
          119889: { c: 'd', f: 'I' },
          119890: { c: 'e', f: 'I' },
          119891: { c: 'f', f: 'I' },
          119892: { c: 'g', f: 'I' },
          119894: { c: 'i', f: 'I' },
          119895: { c: 'j', f: 'I' },
          119896: { c: 'k', f: 'I' },
          119897: { c: 'l', f: 'I' },
          119898: { c: 'm', f: 'I' },
          119899: { c: 'n', f: 'I' },
          119900: { c: 'o', f: 'I' },
          119901: { c: 'p', f: 'I' },
          119902: { c: 'q', f: 'I' },
          119903: { c: 'r', f: 'I' },
          119904: { c: 's', f: 'I' },
          119905: { c: 't', f: 'I' },
          119906: { c: 'u', f: 'I' },
          119907: { c: 'v', f: 'I' },
          119908: { c: 'w', f: 'I' },
          119909: { c: 'x', f: 'I' },
          119910: { c: 'y', f: 'I' },
          119911: { c: 'z', f: 'I' },
          119912: { c: 'A', f: 'BI' },
          119913: { c: 'B', f: 'BI' },
          119914: { c: 'C', f: 'BI' },
          119915: { c: 'D', f: 'BI' },
          119916: { c: 'E', f: 'BI' },
          119917: { c: 'F', f: 'BI' },
          119918: { c: 'G', f: 'BI' },
          119919: { c: 'H', f: 'BI' },
          119920: { c: 'I', f: 'BI' },
          119921: { c: 'J', f: 'BI' },
          119922: { c: 'K', f: 'BI' },
          119923: { c: 'L', f: 'BI' },
          119924: { c: 'M', f: 'BI' },
          119925: { c: 'N', f: 'BI' },
          119926: { c: 'O', f: 'BI' },
          119927: { c: 'P', f: 'BI' },
          119928: { c: 'Q', f: 'BI' },
          119929: { c: 'R', f: 'BI' },
          119930: { c: 'S', f: 'BI' },
          119931: { c: 'T', f: 'BI' },
          119932: { c: 'U', f: 'BI' },
          119933: { c: 'V', f: 'BI' },
          119934: { c: 'W', f: 'BI' },
          119935: { c: 'X', f: 'BI' },
          119936: { c: 'Y', f: 'BI' },
          119937: { c: 'Z', f: 'BI' },
          119938: { c: 'a', f: 'BI' },
          119939: { c: 'b', f: 'BI' },
          119940: { c: 'c', f: 'BI' },
          119941: { c: 'd', f: 'BI' },
          119942: { c: 'e', f: 'BI' },
          119943: { c: 'f', f: 'BI' },
          119944: { c: 'g', f: 'BI' },
          119945: { c: 'h', f: 'BI' },
          119946: { c: 'i', f: 'BI' },
          119947: { c: 'j', f: 'BI' },
          119948: { c: 'k', f: 'BI' },
          119949: { c: 'l', f: 'BI' },
          119950: { c: 'm', f: 'BI' },
          119951: { c: 'n', f: 'BI' },
          119952: { c: 'o', f: 'BI' },
          119953: { c: 'p', f: 'BI' },
          119954: { c: 'q', f: 'BI' },
          119955: { c: 'r', f: 'BI' },
          119956: { c: 's', f: 'BI' },
          119957: { c: 't', f: 'BI' },
          119958: { c: 'u', f: 'BI' },
          119959: { c: 'v', f: 'BI' },
          119960: { c: 'w', f: 'BI' },
          119961: { c: 'x', f: 'BI' },
          119962: { c: 'y', f: 'BI' },
          119963: { c: 'z', f: 'BI' },
          119964: { c: 'A', f: 'SC' },
          119966: { c: 'C', f: 'SC' },
          119967: { c: 'D', f: 'SC' },
          119970: { c: 'G', f: 'SC' },
          119973: { c: 'J', f: 'SC' },
          119974: { c: 'K', f: 'SC' },
          119977: { c: 'N', f: 'SC' },
          119978: { c: 'O', f: 'SC' },
          119979: { c: 'P', f: 'SC' },
          119980: { c: 'Q', f: 'SC' },
          119982: { c: 'S', f: 'SC' },
          119983: { c: 'T', f: 'SC' },
          119984: { c: 'U', f: 'SC' },
          119985: { c: 'V', f: 'SC' },
          119986: { c: 'W', f: 'SC' },
          119987: { c: 'X', f: 'SC' },
          119988: { c: 'Y', f: 'SC' },
          119989: { c: 'Z', f: 'SC' },
          120068: { c: 'A', f: 'FR' },
          120069: { c: 'B', f: 'FR' },
          120071: { c: 'D', f: 'FR' },
          120072: { c: 'E', f: 'FR' },
          120073: { c: 'F', f: 'FR' },
          120074: { c: 'G', f: 'FR' },
          120077: { c: 'J', f: 'FR' },
          120078: { c: 'K', f: 'FR' },
          120079: { c: 'L', f: 'FR' },
          120080: { c: 'M', f: 'FR' },
          120081: { c: 'N', f: 'FR' },
          120082: { c: 'O', f: 'FR' },
          120083: { c: 'P', f: 'FR' },
          120084: { c: 'Q', f: 'FR' },
          120086: { c: 'S', f: 'FR' },
          120087: { c: 'T', f: 'FR' },
          120088: { c: 'U', f: 'FR' },
          120089: { c: 'V', f: 'FR' },
          120090: { c: 'W', f: 'FR' },
          120091: { c: 'X', f: 'FR' },
          120092: { c: 'Y', f: 'FR' },
          120094: { c: 'a', f: 'FR' },
          120095: { c: 'b', f: 'FR' },
          120096: { c: 'c', f: 'FR' },
          120097: { c: 'd', f: 'FR' },
          120098: { c: 'e', f: 'FR' },
          120099: { c: 'f', f: 'FR' },
          120100: { c: 'g', f: 'FR' },
          120101: { c: 'h', f: 'FR' },
          120102: { c: 'i', f: 'FR' },
          120103: { c: 'j', f: 'FR' },
          120104: { c: 'k', f: 'FR' },
          120105: { c: 'l', f: 'FR' },
          120106: { c: 'm', f: 'FR' },
          120107: { c: 'n', f: 'FR' },
          120108: { c: 'o', f: 'FR' },
          120109: { c: 'p', f: 'FR' },
          120110: { c: 'q', f: 'FR' },
          120111: { c: 'r', f: 'FR' },
          120112: { c: 's', f: 'FR' },
          120113: { c: 't', f: 'FR' },
          120114: { c: 'u', f: 'FR' },
          120115: { c: 'v', f: 'FR' },
          120116: { c: 'w', f: 'FR' },
          120117: { c: 'x', f: 'FR' },
          120118: { c: 'y', f: 'FR' },
          120119: { c: 'z', f: 'FR' },
          120120: { c: 'A', f: 'A' },
          120121: { c: 'B', f: 'A' },
          120123: { c: 'D', f: 'A' },
          120124: { c: 'E', f: 'A' },
          120125: { c: 'F', f: 'A' },
          120126: { c: 'G', f: 'A' },
          120128: { c: 'I', f: 'A' },
          120129: { c: 'J', f: 'A' },
          120130: { c: 'K', f: 'A' },
          120131: { c: 'L', f: 'A' },
          120132: { c: 'M', f: 'A' },
          120134: { c: 'O', f: 'A' },
          120138: { c: 'S', f: 'A' },
          120139: { c: 'T', f: 'A' },
          120140: { c: 'U', f: 'A' },
          120141: { c: 'V', f: 'A' },
          120142: { c: 'W', f: 'A' },
          120143: { c: 'X', f: 'A' },
          120144: { c: 'Y', f: 'A' },
          120172: { c: 'A', f: 'FRB' },
          120173: { c: 'B', f: 'FRB' },
          120174: { c: 'C', f: 'FRB' },
          120175: { c: 'D', f: 'FRB' },
          120176: { c: 'E', f: 'FRB' },
          120177: { c: 'F', f: 'FRB' },
          120178: { c: 'G', f: 'FRB' },
          120179: { c: 'H', f: 'FRB' },
          120180: { c: 'I', f: 'FRB' },
          120181: { c: 'J', f: 'FRB' },
          120182: { c: 'K', f: 'FRB' },
          120183: { c: 'L', f: 'FRB' },
          120184: { c: 'M', f: 'FRB' },
          120185: { c: 'N', f: 'FRB' },
          120186: { c: 'O', f: 'FRB' },
          120187: { c: 'P', f: 'FRB' },
          120188: { c: 'Q', f: 'FRB' },
          120189: { c: 'R', f: 'FRB' },
          120190: { c: 'S', f: 'FRB' },
          120191: { c: 'T', f: 'FRB' },
          120192: { c: 'U', f: 'FRB' },
          120193: { c: 'V', f: 'FRB' },
          120194: { c: 'W', f: 'FRB' },
          120195: { c: 'X', f: 'FRB' },
          120196: { c: 'Y', f: 'FRB' },
          120197: { c: 'Z', f: 'FRB' },
          120198: { c: 'a', f: 'FRB' },
          120199: { c: 'b', f: 'FRB' },
          120200: { c: 'c', f: 'FRB' },
          120201: { c: 'd', f: 'FRB' },
          120202: { c: 'e', f: 'FRB' },
          120203: { c: 'f', f: 'FRB' },
          120204: { c: 'g', f: 'FRB' },
          120205: { c: 'h', f: 'FRB' },
          120206: { c: 'i', f: 'FRB' },
          120207: { c: 'j', f: 'FRB' },
          120208: { c: 'k', f: 'FRB' },
          120209: { c: 'l', f: 'FRB' },
          120210: { c: 'm', f: 'FRB' },
          120211: { c: 'n', f: 'FRB' },
          120212: { c: 'o', f: 'FRB' },
          120213: { c: 'p', f: 'FRB' },
          120214: { c: 'q', f: 'FRB' },
          120215: { c: 'r', f: 'FRB' },
          120216: { c: 's', f: 'FRB' },
          120217: { c: 't', f: 'FRB' },
          120218: { c: 'u', f: 'FRB' },
          120219: { c: 'v', f: 'FRB' },
          120220: { c: 'w', f: 'FRB' },
          120221: { c: 'x', f: 'FRB' },
          120222: { c: 'y', f: 'FRB' },
          120223: { c: 'z', f: 'FRB' },
          120224: { c: 'A', f: 'SS' },
          120225: { c: 'B', f: 'SS' },
          120226: { c: 'C', f: 'SS' },
          120227: { c: 'D', f: 'SS' },
          120228: { c: 'E', f: 'SS' },
          120229: { c: 'F', f: 'SS' },
          120230: { c: 'G', f: 'SS' },
          120231: { c: 'H', f: 'SS' },
          120232: { c: 'I', f: 'SS' },
          120233: { c: 'J', f: 'SS' },
          120234: { c: 'K', f: 'SS' },
          120235: { c: 'L', f: 'SS' },
          120236: { c: 'M', f: 'SS' },
          120237: { c: 'N', f: 'SS' },
          120238: { c: 'O', f: 'SS' },
          120239: { c: 'P', f: 'SS' },
          120240: { c: 'Q', f: 'SS' },
          120241: { c: 'R', f: 'SS' },
          120242: { c: 'S', f: 'SS' },
          120243: { c: 'T', f: 'SS' },
          120244: { c: 'U', f: 'SS' },
          120245: { c: 'V', f: 'SS' },
          120246: { c: 'W', f: 'SS' },
          120247: { c: 'X', f: 'SS' },
          120248: { c: 'Y', f: 'SS' },
          120249: { c: 'Z', f: 'SS' },
          120250: { c: 'a', f: 'SS' },
          120251: { c: 'b', f: 'SS' },
          120252: { c: 'c', f: 'SS' },
          120253: { c: 'd', f: 'SS' },
          120254: { c: 'e', f: 'SS' },
          120255: { c: 'f', f: 'SS' },
          120256: { c: 'g', f: 'SS' },
          120257: { c: 'h', f: 'SS' },
          120258: { c: 'i', f: 'SS' },
          120259: { c: 'j', f: 'SS' },
          120260: { c: 'k', f: 'SS' },
          120261: { c: 'l', f: 'SS' },
          120262: { c: 'm', f: 'SS' },
          120263: { c: 'n', f: 'SS' },
          120264: { c: 'o', f: 'SS' },
          120265: { c: 'p', f: 'SS' },
          120266: { c: 'q', f: 'SS' },
          120267: { c: 'r', f: 'SS' },
          120268: { c: 's', f: 'SS' },
          120269: { c: 't', f: 'SS' },
          120270: { c: 'u', f: 'SS' },
          120271: { c: 'v', f: 'SS' },
          120272: { c: 'w', f: 'SS' },
          120273: { c: 'x', f: 'SS' },
          120274: { c: 'y', f: 'SS' },
          120275: { c: 'z', f: 'SS' },
          120276: { c: 'A', f: 'SSB' },
          120277: { c: 'B', f: 'SSB' },
          120278: { c: 'C', f: 'SSB' },
          120279: { c: 'D', f: 'SSB' },
          120280: { c: 'E', f: 'SSB' },
          120281: { c: 'F', f: 'SSB' },
          120282: { c: 'G', f: 'SSB' },
          120283: { c: 'H', f: 'SSB' },
          120284: { c: 'I', f: 'SSB' },
          120285: { c: 'J', f: 'SSB' },
          120286: { c: 'K', f: 'SSB' },
          120287: { c: 'L', f: 'SSB' },
          120288: { c: 'M', f: 'SSB' },
          120289: { c: 'N', f: 'SSB' },
          120290: { c: 'O', f: 'SSB' },
          120291: { c: 'P', f: 'SSB' },
          120292: { c: 'Q', f: 'SSB' },
          120293: { c: 'R', f: 'SSB' },
          120294: { c: 'S', f: 'SSB' },
          120295: { c: 'T', f: 'SSB' },
          120296: { c: 'U', f: 'SSB' },
          120297: { c: 'V', f: 'SSB' },
          120298: { c: 'W', f: 'SSB' },
          120299: { c: 'X', f: 'SSB' },
          120300: { c: 'Y', f: 'SSB' },
          120301: { c: 'Z', f: 'SSB' },
          120302: { c: 'a', f: 'SSB' },
          120303: { c: 'b', f: 'SSB' },
          120304: { c: 'c', f: 'SSB' },
          120305: { c: 'd', f: 'SSB' },
          120306: { c: 'e', f: 'SSB' },
          120307: { c: 'f', f: 'SSB' },
          120308: { c: 'g', f: 'SSB' },
          120309: { c: 'h', f: 'SSB' },
          120310: { c: 'i', f: 'SSB' },
          120311: { c: 'j', f: 'SSB' },
          120312: { c: 'k', f: 'SSB' },
          120313: { c: 'l', f: 'SSB' },
          120314: { c: 'm', f: 'SSB' },
          120315: { c: 'n', f: 'SSB' },
          120316: { c: 'o', f: 'SSB' },
          120317: { c: 'p', f: 'SSB' },
          120318: { c: 'q', f: 'SSB' },
          120319: { c: 'r', f: 'SSB' },
          120320: { c: 's', f: 'SSB' },
          120321: { c: 't', f: 'SSB' },
          120322: { c: 'u', f: 'SSB' },
          120323: { c: 'v', f: 'SSB' },
          120324: { c: 'w', f: 'SSB' },
          120325: { c: 'x', f: 'SSB' },
          120326: { c: 'y', f: 'SSB' },
          120327: { c: 'z', f: 'SSB' },
          120328: { c: 'A', f: 'SSI' },
          120329: { c: 'B', f: 'SSI' },
          120330: { c: 'C', f: 'SSI' },
          120331: { c: 'D', f: 'SSI' },
          120332: { c: 'E', f: 'SSI' },
          120333: { c: 'F', f: 'SSI' },
          120334: { c: 'G', f: 'SSI' },
          120335: { c: 'H', f: 'SSI' },
          120336: { c: 'I', f: 'SSI' },
          120337: { c: 'J', f: 'SSI' },
          120338: { c: 'K', f: 'SSI' },
          120339: { c: 'L', f: 'SSI' },
          120340: { c: 'M', f: 'SSI' },
          120341: { c: 'N', f: 'SSI' },
          120342: { c: 'O', f: 'SSI' },
          120343: { c: 'P', f: 'SSI' },
          120344: { c: 'Q', f: 'SSI' },
          120345: { c: 'R', f: 'SSI' },
          120346: { c: 'S', f: 'SSI' },
          120347: { c: 'T', f: 'SSI' },
          120348: { c: 'U', f: 'SSI' },
          120349: { c: 'V', f: 'SSI' },
          120350: { c: 'W', f: 'SSI' },
          120351: { c: 'X', f: 'SSI' },
          120352: { c: 'Y', f: 'SSI' },
          120353: { c: 'Z', f: 'SSI' },
          120354: { c: 'a', f: 'SSI' },
          120355: { c: 'b', f: 'SSI' },
          120356: { c: 'c', f: 'SSI' },
          120357: { c: 'd', f: 'SSI' },
          120358: { c: 'e', f: 'SSI' },
          120359: { c: 'f', f: 'SSI' },
          120360: { c: 'g', f: 'SSI' },
          120361: { c: 'h', f: 'SSI' },
          120362: { c: 'i', f: 'SSI' },
          120363: { c: 'j', f: 'SSI' },
          120364: { c: 'k', f: 'SSI' },
          120365: { c: 'l', f: 'SSI' },
          120366: { c: 'm', f: 'SSI' },
          120367: { c: 'n', f: 'SSI' },
          120368: { c: 'o', f: 'SSI' },
          120369: { c: 'p', f: 'SSI' },
          120370: { c: 'q', f: 'SSI' },
          120371: { c: 'r', f: 'SSI' },
          120372: { c: 's', f: 'SSI' },
          120373: { c: 't', f: 'SSI' },
          120374: { c: 'u', f: 'SSI' },
          120375: { c: 'v', f: 'SSI' },
          120376: { c: 'w', f: 'SSI' },
          120377: { c: 'x', f: 'SSI' },
          120378: { c: 'y', f: 'SSI' },
          120379: { c: 'z', f: 'SSI' },
          120432: { c: 'A', f: 'T' },
          120433: { c: 'B', f: 'T' },
          120434: { c: 'C', f: 'T' },
          120435: { c: 'D', f: 'T' },
          120436: { c: 'E', f: 'T' },
          120437: { c: 'F', f: 'T' },
          120438: { c: 'G', f: 'T' },
          120439: { c: 'H', f: 'T' },
          120440: { c: 'I', f: 'T' },
          120441: { c: 'J', f: 'T' },
          120442: { c: 'K', f: 'T' },
          120443: { c: 'L', f: 'T' },
          120444: { c: 'M', f: 'T' },
          120445: { c: 'N', f: 'T' },
          120446: { c: 'O', f: 'T' },
          120447: { c: 'P', f: 'T' },
          120448: { c: 'Q', f: 'T' },
          120449: { c: 'R', f: 'T' },
          120450: { c: 'S', f: 'T' },
          120451: { c: 'T', f: 'T' },
          120452: { c: 'U', f: 'T' },
          120453: { c: 'V', f: 'T' },
          120454: { c: 'W', f: 'T' },
          120455: { c: 'X', f: 'T' },
          120456: { c: 'Y', f: 'T' },
          120457: { c: 'Z', f: 'T' },
          120458: { c: 'a', f: 'T' },
          120459: { c: 'b', f: 'T' },
          120460: { c: 'c', f: 'T' },
          120461: { c: 'd', f: 'T' },
          120462: { c: 'e', f: 'T' },
          120463: { c: 'f', f: 'T' },
          120464: { c: 'g', f: 'T' },
          120465: { c: 'h', f: 'T' },
          120466: { c: 'i', f: 'T' },
          120467: { c: 'j', f: 'T' },
          120468: { c: 'k', f: 'T' },
          120469: { c: 'l', f: 'T' },
          120470: { c: 'm', f: 'T' },
          120471: { c: 'n', f: 'T' },
          120472: { c: 'o', f: 'T' },
          120473: { c: 'p', f: 'T' },
          120474: { c: 'q', f: 'T' },
          120475: { c: 'r', f: 'T' },
          120476: { c: 's', f: 'T' },
          120477: { c: 't', f: 'T' },
          120478: { c: 'u', f: 'T' },
          120479: { c: 'v', f: 'T' },
          120480: { c: 'w', f: 'T' },
          120481: { c: 'x', f: 'T' },
          120482: { c: 'y', f: 'T' },
          120483: { c: 'z', f: 'T' },
          120488: { c: 'A', f: 'B' },
          120489: { c: 'B', f: 'B' },
          120490: { c: '\\393', f: 'B' },
          120491: { c: '\\394', f: 'B' },
          120492: { c: 'E', f: 'B' },
          120493: { c: 'Z', f: 'B' },
          120494: { c: 'H', f: 'B' },
          120495: { c: '\\398', f: 'B' },
          120496: { c: 'I', f: 'B' },
          120497: { c: 'K', f: 'B' },
          120498: { c: '\\39B', f: 'B' },
          120499: { c: 'M', f: 'B' },
          120500: { c: 'N', f: 'B' },
          120501: { c: '\\39E', f: 'B' },
          120502: { c: 'O', f: 'B' },
          120503: { c: '\\3A0', f: 'B' },
          120504: { c: 'P', f: 'B' },
          120506: { c: '\\3A3', f: 'B' },
          120507: { c: 'T', f: 'B' },
          120508: { c: '\\3A5', f: 'B' },
          120509: { c: '\\3A6', f: 'B' },
          120510: { c: 'X', f: 'B' },
          120511: { c: '\\3A8', f: 'B' },
          120512: { c: '\\3A9', f: 'B' },
          120513: { c: '\\2207', f: 'B' },
          120546: { c: 'A', f: 'I' },
          120547: { c: 'B', f: 'I' },
          120548: { c: '\\393', f: 'I' },
          120549: { c: '\\394', f: 'I' },
          120550: { c: 'E', f: 'I' },
          120551: { c: 'Z', f: 'I' },
          120552: { c: 'H', f: 'I' },
          120553: { c: '\\398', f: 'I' },
          120554: { c: 'I', f: 'I' },
          120555: { c: 'K', f: 'I' },
          120556: { c: '\\39B', f: 'I' },
          120557: { c: 'M', f: 'I' },
          120558: { c: 'N', f: 'I' },
          120559: { c: '\\39E', f: 'I' },
          120560: { c: 'O', f: 'I' },
          120561: { c: '\\3A0', f: 'I' },
          120562: { c: 'P', f: 'I' },
          120564: { c: '\\3A3', f: 'I' },
          120565: { c: 'T', f: 'I' },
          120566: { c: '\\3A5', f: 'I' },
          120567: { c: '\\3A6', f: 'I' },
          120568: { c: 'X', f: 'I' },
          120569: { c: '\\3A8', f: 'I' },
          120570: { c: '\\3A9', f: 'I' },
          120572: { c: '\\3B1', f: 'I' },
          120573: { c: '\\3B2', f: 'I' },
          120574: { c: '\\3B3', f: 'I' },
          120575: { c: '\\3B4', f: 'I' },
          120576: { c: '\\3B5', f: 'I' },
          120577: { c: '\\3B6', f: 'I' },
          120578: { c: '\\3B7', f: 'I' },
          120579: { c: '\\3B8', f: 'I' },
          120580: { c: '\\3B9', f: 'I' },
          120581: { c: '\\3BA', f: 'I' },
          120582: { c: '\\3BB', f: 'I' },
          120583: { c: '\\3BC', f: 'I' },
          120584: { c: '\\3BD', f: 'I' },
          120585: { c: '\\3BE', f: 'I' },
          120586: { c: '\\3BF', f: 'I' },
          120587: { c: '\\3C0', f: 'I' },
          120588: { c: '\\3C1', f: 'I' },
          120589: { c: '\\3C2', f: 'I' },
          120590: { c: '\\3C3', f: 'I' },
          120591: { c: '\\3C4', f: 'I' },
          120592: { c: '\\3C5', f: 'I' },
          120593: { c: '\\3C6', f: 'I' },
          120594: { c: '\\3C7', f: 'I' },
          120595: { c: '\\3C8', f: 'I' },
          120596: { c: '\\3C9', f: 'I' },
          120597: { c: '\\2202' },
          120598: { c: '\\3F5', f: 'I' },
          120599: { c: '\\3D1', f: 'I' },
          120600: { c: '\\E009', f: 'A' },
          120601: { c: '\\3D5', f: 'I' },
          120602: { c: '\\3F1', f: 'I' },
          120603: { c: '\\3D6', f: 'I' },
          120604: { c: 'A', f: 'BI' },
          120605: { c: 'B', f: 'BI' },
          120606: { c: '\\393', f: 'BI' },
          120607: { c: '\\394', f: 'BI' },
          120608: { c: 'E', f: 'BI' },
          120609: { c: 'Z', f: 'BI' },
          120610: { c: 'H', f: 'BI' },
          120611: { c: '\\398', f: 'BI' },
          120612: { c: 'I', f: 'BI' },
          120613: { c: 'K', f: 'BI' },
          120614: { c: '\\39B', f: 'BI' },
          120615: { c: 'M', f: 'BI' },
          120616: { c: 'N', f: 'BI' },
          120617: { c: '\\39E', f: 'BI' },
          120618: { c: 'O', f: 'BI' },
          120619: { c: '\\3A0', f: 'BI' },
          120620: { c: 'P', f: 'BI' },
          120622: { c: '\\3A3', f: 'BI' },
          120623: { c: 'T', f: 'BI' },
          120624: { c: '\\3A5', f: 'BI' },
          120625: { c: '\\3A6', f: 'BI' },
          120626: { c: 'X', f: 'BI' },
          120627: { c: '\\3A8', f: 'BI' },
          120628: { c: '\\3A9', f: 'BI' },
          120630: { c: '\\3B1', f: 'BI' },
          120631: { c: '\\3B2', f: 'BI' },
          120632: { c: '\\3B3', f: 'BI' },
          120633: { c: '\\3B4', f: 'BI' },
          120634: { c: '\\3B5', f: 'BI' },
          120635: { c: '\\3B6', f: 'BI' },
          120636: { c: '\\3B7', f: 'BI' },
          120637: { c: '\\3B8', f: 'BI' },
          120638: { c: '\\3B9', f: 'BI' },
          120639: { c: '\\3BA', f: 'BI' },
          120640: { c: '\\3BB', f: 'BI' },
          120641: { c: '\\3BC', f: 'BI' },
          120642: { c: '\\3BD', f: 'BI' },
          120643: { c: '\\3BE', f: 'BI' },
          120644: { c: '\\3BF', f: 'BI' },
          120645: { c: '\\3C0', f: 'BI' },
          120646: { c: '\\3C1', f: 'BI' },
          120647: { c: '\\3C2', f: 'BI' },
          120648: { c: '\\3C3', f: 'BI' },
          120649: { c: '\\3C4', f: 'BI' },
          120650: { c: '\\3C5', f: 'BI' },
          120651: { c: '\\3C6', f: 'BI' },
          120652: { c: '\\3C7', f: 'BI' },
          120653: { c: '\\3C8', f: 'BI' },
          120654: { c: '\\3C9', f: 'BI' },
          120655: { c: '\\2202', f: 'B' },
          120656: { c: '\\3F5', f: 'BI' },
          120657: { c: '\\3D1', f: 'BI' },
          120658: { c: '\\E009', f: 'A' },
          120659: { c: '\\3D5', f: 'BI' },
          120660: { c: '\\3F1', f: 'BI' },
          120661: { c: '\\3D6', f: 'BI' },
          120662: { c: 'A', f: 'SSB' },
          120663: { c: 'B', f: 'SSB' },
          120664: { c: '\\393', f: 'SSB' },
          120665: { c: '\\394', f: 'SSB' },
          120666: { c: 'E', f: 'SSB' },
          120667: { c: 'Z', f: 'SSB' },
          120668: { c: 'H', f: 'SSB' },
          120669: { c: '\\398', f: 'SSB' },
          120670: { c: 'I', f: 'SSB' },
          120671: { c: 'K', f: 'SSB' },
          120672: { c: '\\39B', f: 'SSB' },
          120673: { c: 'M', f: 'SSB' },
          120674: { c: 'N', f: 'SSB' },
          120675: { c: '\\39E', f: 'SSB' },
          120676: { c: 'O', f: 'SSB' },
          120677: { c: '\\3A0', f: 'SSB' },
          120678: { c: 'P', f: 'SSB' },
          120680: { c: '\\3A3', f: 'SSB' },
          120681: { c: 'T', f: 'SSB' },
          120682: { c: '\\3A5', f: 'SSB' },
          120683: { c: '\\3A6', f: 'SSB' },
          120684: { c: 'X', f: 'SSB' },
          120685: { c: '\\3A8', f: 'SSB' },
          120686: { c: '\\3A9', f: 'SSB' },
          120782: { c: '0', f: 'B' },
          120783: { c: '1', f: 'B' },
          120784: { c: '2', f: 'B' },
          120785: { c: '3', f: 'B' },
          120786: { c: '4', f: 'B' },
          120787: { c: '5', f: 'B' },
          120788: { c: '6', f: 'B' },
          120789: { c: '7', f: 'B' },
          120790: { c: '8', f: 'B' },
          120791: { c: '9', f: 'B' },
          120802: { c: '0', f: 'SS' },
          120803: { c: '1', f: 'SS' },
          120804: { c: '2', f: 'SS' },
          120805: { c: '3', f: 'SS' },
          120806: { c: '4', f: 'SS' },
          120807: { c: '5', f: 'SS' },
          120808: { c: '6', f: 'SS' },
          120809: { c: '7', f: 'SS' },
          120810: { c: '8', f: 'SS' },
          120811: { c: '9', f: 'SS' },
          120812: { c: '0', f: 'SSB' },
          120813: { c: '1', f: 'SSB' },
          120814: { c: '2', f: 'SSB' },
          120815: { c: '3', f: 'SSB' },
          120816: { c: '4', f: 'SSB' },
          120817: { c: '5', f: 'SSB' },
          120818: { c: '6', f: 'SSB' },
          120819: { c: '7', f: 'SSB' },
          120820: { c: '8', f: 'SSB' },
          120821: { c: '9', f: 'SSB' },
          120822: { c: '0', f: 'T' },
          120823: { c: '1', f: 'T' },
          120824: { c: '2', f: 'T' },
          120825: { c: '3', f: 'T' },
          120826: { c: '4', f: 'T' },
          120827: { c: '5', f: 'T' },
          120828: { c: '6', f: 'T' },
          120829: { c: '7', f: 'T' },
          120830: { c: '8', f: 'T' },
          120831: { c: '9', f: 'T' }
        })
      },
      7517: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sansSerifBoldItalic = void 0)
        var n = r(8042),
          o = r(4886)
        e.sansSerifBoldItalic = (0, n.AddCSS)(o.sansSerifBoldItalic, { 305: { f: 'SSB' }, 567: { f: 'SSB' } })
      },
      4182: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sansSerifBold = void 0)
        var n = r(8042),
          o = r(4471)
        e.sansSerifBold = (0, n.AddCSS)(o.sansSerifBold, { 8213: { c: '\\2014' }, 8215: { c: '_' }, 8260: { c: '/' }, 8710: { c: '\\394' } })
      },
      2679: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sansSerifItalic = void 0)
        var n = r(8042),
          o = r(5181)
        e.sansSerifItalic = (0, n.AddCSS)(o.sansSerifItalic, {
          913: { c: 'A' },
          914: { c: 'B' },
          917: { c: 'E' },
          918: { c: 'Z' },
          919: { c: 'H' },
          921: { c: 'I' },
          922: { c: 'K' },
          924: { c: 'M' },
          925: { c: 'N' },
          927: { c: 'O' },
          929: { c: 'P' },
          932: { c: 'T' },
          935: { c: 'X' },
          8213: { c: '\\2014' },
          8215: { c: '_' },
          8260: { c: '/' },
          8710: { c: '\\394' }
        })
      },
      5469: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sansSerif = void 0)
        var n = r(8042),
          o = r(3526)
        e.sansSerif = (0, n.AddCSS)(o.sansSerif, {
          913: { c: 'A' },
          914: { c: 'B' },
          917: { c: 'E' },
          918: { c: 'Z' },
          919: { c: 'H' },
          921: { c: 'I' },
          922: { c: 'K' },
          924: { c: 'M' },
          925: { c: 'N' },
          927: { c: 'O' },
          929: { c: 'P' },
          932: { c: 'T' },
          935: { c: 'X' },
          8213: { c: '\\2014' },
          8215: { c: '_' },
          8260: { c: '/' },
          8710: { c: '\\394' }
        })
      },
      7563: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.scriptBold = void 0)
        var n = r(5649)
        Object.defineProperty(e, 'scriptBold', {
          enumerable: !0,
          get: function () {
            return n.scriptBold
          }
        })
      },
      9409: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.script = void 0)
        var n = r(7153)
        Object.defineProperty(e, 'script', {
          enumerable: !0,
          get: function () {
            return n.script
          }
        })
      },
      775: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.smallop = void 0)
        var n = r(8042),
          o = r(5745)
        e.smallop = (0, n.AddCSS)(o.smallop, { 8260: { c: '/' }, 9001: { c: '\\27E8' }, 9002: { c: '\\27E9' }, 10072: { c: '\\2223' }, 10764: { c: '\\222C\\222C' }, 12296: { c: '\\27E8' }, 12297: { c: '\\27E9' } })
      },
      9551: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texCalligraphicBold = void 0)
        var n = r(8042),
          o = r(1411)
        e.texCalligraphicBold = (0, n.AddCSS)(o.texCalligraphicBold, { 305: { f: 'B' }, 567: { f: 'B' } })
      },
      7907: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texCalligraphic = void 0)
        var n = r(6384)
        Object.defineProperty(e, 'texCalligraphic', {
          enumerable: !0,
          get: function () {
            return n.texCalligraphic
          }
        })
      },
      9659: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texMathit = void 0)
        var n = r(6041)
        Object.defineProperty(e, 'texMathit', {
          enumerable: !0,
          get: function () {
            return n.texMathit
          }
        })
      },
      98: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texOldstyleBold = void 0)
        var n = r(8199)
        Object.defineProperty(e, 'texOldstyleBold', {
          enumerable: !0,
          get: function () {
            return n.texOldstyleBold
          }
        })
      },
      6275: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texOldstyle = void 0)
        var n = r(9848)
        Object.defineProperty(e, 'texOldstyle', {
          enumerable: !0,
          get: function () {
            return n.texOldstyle
          }
        })
      },
      6530: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texSize3 = void 0)
        var n = r(8042),
          o = r(7906)
        e.texSize3 = (0, n.AddCSS)(o.texSize3, { 8260: { c: '/' }, 9001: { c: '\\27E8' }, 9002: { c: '\\27E9' }, 12296: { c: '\\27E8' }, 12297: { c: '\\27E9' } })
      },
      4409: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texSize4 = void 0)
        var n = r(8042),
          o = r(2644)
        e.texSize4 = (0, n.AddCSS)(o.texSize4, { 8260: { c: '/' }, 9001: { c: '\\27E8' }, 9002: { c: '\\27E9' }, 12296: { c: '\\27E8' }, 12297: { c: '\\27E9' }, 57685: { c: '\\E153\\E152' }, 57686: { c: '\\E151\\E150' } })
      },
      5292: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.texVariant = void 0)
        var n = r(8042),
          o = r(4926)
        e.texVariant = (0, n.AddCSS)(o.texVariant, {
          1008: { c: '\\E009' },
          8463: { f: '' },
          8740: { c: '\\E006' },
          8742: { c: '\\E007' },
          8808: { c: '\\E00C' },
          8809: { c: '\\E00D' },
          8816: { c: '\\E011' },
          8817: { c: '\\E00E' },
          8840: { c: '\\E016' },
          8841: { c: '\\E018' },
          8842: { c: '\\E01A' },
          8843: { c: '\\E01B' },
          10887: { c: '\\E010' },
          10888: { c: '\\E00F' },
          10955: { c: '\\E017' },
          10956: { c: '\\E019' }
        })
      },
      5884: function (t, e, r) {
        var n =
            (this && this.__assign) ||
            function () {
              return (
                (n =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                n.apply(this, arguments)
              )
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.FontData = e.NOSTRETCH = e.H = e.V = void 0)
        var a = r(7233)
        ;(e.V = 1), (e.H = 2), (e.NOSTRETCH = { dir: 0 })
        var l = (function () {
          function t(t) {
            var e, r, l, c
            void 0 === t && (t = null), (this.variant = {}), (this.delimiters = {}), (this.cssFontMap = {}), (this.remapChars = {}), (this.skewIcFactor = 0.75)
            var u = this.constructor
            ;(this.options = (0, a.userOptions)((0, a.defaultOptions)({}, u.OPTIONS), t)),
              (this.params = n({}, u.defaultParams)),
              (this.sizeVariants = i([], o(u.defaultSizeVariants), !1)),
              (this.stretchVariants = i([], o(u.defaultStretchVariants), !1)),
              (this.cssFontMap = n({}, u.defaultCssFonts))
            try {
              for (var p = s(Object.keys(this.cssFontMap)), h = p.next(); !h.done; h = p.next()) {
                var f = h.value
                'unknown' === this.cssFontMap[f][0] && (this.cssFontMap[f][0] = this.options.unknownFamily)
              }
            } catch (t) {
              e = { error: t }
            } finally {
              try {
                h && !h.done && (r = p.return) && r.call(p)
              } finally {
                if (e) throw e.error
              }
            }
            ;(this.cssFamilyPrefix = u.defaultCssFamilyPrefix), this.createVariants(u.defaultVariants), this.defineDelimiters(u.defaultDelimiters)
            try {
              for (var d = s(Object.keys(u.defaultChars)), m = d.next(); !m.done; m = d.next()) {
                var y = m.value
                this.defineChars(y, u.defaultChars[y])
              }
            } catch (t) {
              l = { error: t }
            } finally {
              try {
                m && !m.done && (c = d.return) && c.call(d)
              } finally {
                if (l) throw l.error
              }
            }
            this.defineRemap('accent', u.defaultAccentMap), this.defineRemap('mo', u.defaultMoMap), this.defineRemap('mn', u.defaultMnMap)
          }
          return (
            (t.charOptions = function (t, e) {
              var r = t[e]
              return 3 === r.length && (r[3] = {}), r[3]
            }),
            Object.defineProperty(t.prototype, 'styles', {
              get: function () {
                return this._styles
              },
              set: function (t) {
                this._styles = t
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.createVariant = function (t, e, r) {
              void 0 === e && (e = null), void 0 === r && (r = null)
              var n = { linked: [], chars: e ? Object.create(this.variant[e].chars) : {} }
              r && this.variant[r] && (Object.assign(n.chars, this.variant[r].chars), this.variant[r].linked.push(n.chars), (n.chars = Object.create(n.chars))), this.remapSmpChars(n.chars, t), (this.variant[t] = n)
            }),
            (t.prototype.remapSmpChars = function (t, e) {
              var r,
                n,
                i,
                a,
                l = this.constructor
              if (l.VariantSmp[e]) {
                var c = l.SmpRemap,
                  u = [null, null, l.SmpRemapGreekU, l.SmpRemapGreekL]
                try {
                  for (var p = s(l.SmpRanges), h = p.next(); !h.done; h = p.next()) {
                    var f = o(h.value, 3),
                      d = f[0],
                      m = f[1],
                      y = f[2],
                      g = l.VariantSmp[e][d]
                    if (g) {
                      for (var b = m; b <= y; b++)
                        if (930 !== b) {
                          var v = g + b - m
                          t[b] = this.smpChar(c[v] || v)
                        }
                      if (u[d])
                        try {
                          for (
                            var _ =
                                ((i = void 0),
                                s(
                                  Object.keys(u[d]).map(function (t) {
                                    return parseInt(t)
                                  })
                                )),
                              S = _.next();
                            !S.done;
                            S = _.next()
                          ) {
                            t[(b = S.value)] = this.smpChar(g + u[d][b])
                          }
                        } catch (t) {
                          i = { error: t }
                        } finally {
                          try {
                            S && !S.done && (a = _.return) && a.call(_)
                          } finally {
                            if (i) throw i.error
                          }
                        }
                    }
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    h && !h.done && (n = p.return) && n.call(p)
                  } finally {
                    if (r) throw r.error
                  }
                }
              }
              'bold' === e && ((t[988] = this.smpChar(120778)), (t[989] = this.smpChar(120779)))
            }),
            (t.prototype.smpChar = function (t) {
              return [, , , { smp: t }]
            }),
            (t.prototype.createVariants = function (t) {
              var e, r
              try {
                for (var n = s(t), o = n.next(); !o.done; o = n.next()) {
                  var i = o.value
                  this.createVariant(i[0], i[1], i[2])
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  o && !o.done && (r = n.return) && r.call(n)
                } finally {
                  if (e) throw e.error
                }
              }
            }),
            (t.prototype.defineChars = function (t, e) {
              var r,
                n,
                o = this.variant[t]
              Object.assign(o.chars, e)
              try {
                for (var i = s(o.linked), a = i.next(); !a.done; a = i.next()) {
                  var l = a.value
                  Object.assign(l, e)
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  a && !a.done && (n = i.return) && n.call(i)
                } finally {
                  if (r) throw r.error
                }
              }
            }),
            (t.prototype.defineDelimiters = function (t) {
              Object.assign(this.delimiters, t)
            }),
            (t.prototype.defineRemap = function (t, e) {
              this.remapChars.hasOwnProperty(t) || (this.remapChars[t] = {}), Object.assign(this.remapChars[t], e)
            }),
            (t.prototype.getDelimiter = function (t) {
              return this.delimiters[t]
            }),
            (t.prototype.getSizeVariant = function (t, e) {
              return this.delimiters[t].variants && (e = this.delimiters[t].variants[e]), this.sizeVariants[e]
            }),
            (t.prototype.getStretchVariant = function (t, e) {
              return this.stretchVariants[this.delimiters[t].stretchv ? this.delimiters[t].stretchv[e] : 0]
            }),
            (t.prototype.getChar = function (t, e) {
              return this.variant[t].chars[e]
            }),
            (t.prototype.getVariant = function (t) {
              return this.variant[t]
            }),
            (t.prototype.getCssFont = function (t) {
              return this.cssFontMap[t] || ['serif', !1, !1]
            }),
            (t.prototype.getFamily = function (t) {
              return this.cssFamilyPrefix ? this.cssFamilyPrefix + ', ' + t : t
            }),
            (t.prototype.getRemappedChar = function (t, e) {
              return (this.remapChars[t] || {})[e]
            }),
            (t.OPTIONS = { unknownFamily: 'serif' }),
            (t.JAX = 'common'),
            (t.NAME = ''),
            (t.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']
            ]),
            (t.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]
            }),
            (t.defaultCssFamilyPrefix = ''),
            (t.VariantSmp = {
              bold: [119808, 119834, 120488, 120514, 120782],
              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]
            }),
            (t.SmpRanges = [
              [0, 65, 90],
              [1, 97, 122],
              [2, 913, 937],
              [3, 945, 969],
              [4, 48, 57]
            ]),
            (t.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
            }),
            (t.SmpRemapGreekU = { 8711: 25, 1012: 17 }),
            (t.SmpRemapGreekL = { 977: 27, 981: 29, 982: 31, 1008: 28, 1009: 30, 1013: 26, 8706: 25 }),
            (t.defaultAccentMap = {
              768: '\u02cb',
              769: '\u02ca',
              770: '\u02c6',
              771: '\u02dc',
              772: '\u02c9',
              774: '\u02d8',
              775: '\u02d9',
              776: '\xa8',
              778: '\u02da',
              780: '\u02c7',
              8594: '\u20d7',
              8242: "'",
              8243: "''",
              8244: "'''",
              8245: '`',
              8246: '``',
              8247: '```',
              8279: "''''",
              8400: '\u21bc',
              8401: '\u21c0',
              8406: '\u2190',
              8417: '\u2194',
              8432: '*',
              8411: '...',
              8412: '....',
              8428: '\u21c1',
              8429: '\u21bd',
              8430: '\u2190',
              8431: '\u2192'
            }),
            (t.defaultMoMap = { 45: '\u2212' }),
            (t.defaultMnMap = { 45: '\u2212' }),
            (t.defaultParams = {
              x_height: 0.442,
              quad: 1,
              num1: 0.676,
              num2: 0.394,
              num3: 0.444,
              denom1: 0.686,
              denom2: 0.345,
              sup1: 0.413,
              sup2: 0.363,
              sup3: 0.289,
              sub1: 0.15,
              sub2: 0.247,
              sup_drop: 0.386,
              sub_drop: 0.05,
              delim1: 2.39,
              delim2: 1,
              axis_height: 0.25,
              rule_thickness: 0.06,
              big_op_spacing1: 0.111,
              big_op_spacing2: 0.167,
              big_op_spacing3: 0.2,
              big_op_spacing4: 0.6,
              big_op_spacing5: 0.1,
              surd_height: 0.075,
              scriptspace: 0.05,
              nulldelimiterspace: 0.12,
              delimiterfactor: 901,
              delimitershortfall: 0.3,
              min_rule_thickness: 1.25,
              separation_factor: 1.75,
              extra_ic: 0.033
            }),
            (t.defaultDelimiters = {}),
            (t.defaultChars = {}),
            (t.defaultSizeVariants = []),
            (t.defaultStretchVariants = []),
            t
          )
        })()
        e.FontData = l
      },
      5552: function (t, e) {
        var r =
          (this && this.__read) ||
          function (t, e) {
            var r = 'function' == typeof Symbol && t[Symbol.iterator]
            if (!r) return t
            var n,
              o,
              i = r.call(t),
              s = []
            try {
              for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
            } catch (t) {
              o = { error: t }
            } finally {
              try {
                n && !n.done && (r = i.return) && r.call(i)
              } finally {
                if (o) throw o.error
              }
            }
            return s
          }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonArrow =
            e.CommonDiagonalArrow =
            e.CommonDiagonalStrike =
            e.CommonBorder2 =
            e.CommonBorder =
            e.arrowBBox =
            e.diagonalArrowDef =
            e.arrowDef =
            e.arrowBBoxW =
            e.arrowBBoxHD =
            e.arrowHead =
            e.fullBorder =
            e.fullPadding =
            e.fullBBox =
            e.sideNames =
            e.sideIndex =
            e.SOLID =
            e.PADDING =
            e.THICKNESS =
            e.ARROWY =
            e.ARROWDX =
            e.ARROWX =
              void 0),
          (e.ARROWX = 4),
          (e.ARROWDX = 1),
          (e.ARROWY = 2),
          (e.THICKNESS = 0.067),
          (e.PADDING = 0.2),
          (e.SOLID = e.THICKNESS + 'em solid'),
          (e.sideIndex = { top: 0, right: 1, bottom: 2, left: 3 }),
          (e.sideNames = Object.keys(e.sideIndex)),
          (e.fullBBox = function (t) {
            return new Array(4).fill(t.thickness + t.padding)
          }),
          (e.fullPadding = function (t) {
            return new Array(4).fill(t.padding)
          }),
          (e.fullBorder = function (t) {
            return new Array(4).fill(t.thickness)
          })
        e.arrowHead = function (t) {
          return Math.max(t.padding, t.thickness * (t.arrowhead.x + t.arrowhead.dx + 1))
        }
        e.arrowBBoxHD = function (t, e) {
          if (t.childNodes[0]) {
            var r = t.childNodes[0].getBBox(),
              n = r.h,
              o = r.d
            e[0] = e[2] = Math.max(0, t.thickness * t.arrowhead.y - (n + o) / 2)
          }
          return e
        }
        ;(e.arrowBBoxW = function (t, e) {
          if (t.childNodes[0]) {
            var r = t.childNodes[0].getBBox().w
            e[1] = e[3] = Math.max(0, t.thickness * t.arrowhead.y - r / 2)
          }
          return e
        }),
          (e.arrowDef = {
            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']
          }),
          (e.diagonalArrowDef = {
            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']
          }),
          (e.arrowBBox = {
            up: function (t) {
              return (0, e.arrowBBoxW)(t, [(0, e.arrowHead)(t), 0, t.padding, 0])
            },
            down: function (t) {
              return (0, e.arrowBBoxW)(t, [t.padding, 0, (0, e.arrowHead)(t), 0])
            },
            right: function (t) {
              return (0, e.arrowBBoxHD)(t, [0, (0, e.arrowHead)(t), 0, t.padding])
            },
            left: function (t) {
              return (0, e.arrowBBoxHD)(t, [0, t.padding, 0, (0, e.arrowHead)(t)])
            },
            updown: function (t) {
              return (0, e.arrowBBoxW)(t, [(0, e.arrowHead)(t), 0, (0, e.arrowHead)(t), 0])
            },
            leftright: function (t) {
              return (0, e.arrowBBoxHD)(t, [0, (0, e.arrowHead)(t), 0, (0, e.arrowHead)(t)])
            }
          })
        e.CommonBorder = function (t) {
          return function (r) {
            var n = e.sideIndex[r]
            return [
              r,
              {
                renderer: t,
                bbox: function (t) {
                  var e = [0, 0, 0, 0]
                  return (e[n] = t.thickness + t.padding), e
                },
                border: function (t) {
                  var e = [0, 0, 0, 0]
                  return (e[n] = t.thickness), e
                }
              }
            ]
          }
        }
        e.CommonBorder2 = function (t) {
          return function (r, n, o) {
            var i = e.sideIndex[n],
              s = e.sideIndex[o]
            return [
              r,
              {
                renderer: t,
                bbox: function (t) {
                  var e = t.thickness + t.padding,
                    r = [0, 0, 0, 0]
                  return (r[i] = r[s] = e), r
                },
                border: function (t) {
                  var e = [0, 0, 0, 0]
                  return (e[i] = e[s] = t.thickness), e
                },
                remove: n + ' ' + o
              }
            ]
          }
        }
        e.CommonDiagonalStrike = function (t) {
          return function (r) {
            var n = 'mjx-' + r.charAt(0) + 'strike'
            return [r + 'diagonalstrike', { renderer: t(n), bbox: e.fullBBox }]
          }
        }
        e.CommonDiagonalArrow = function (t) {
          return function (n) {
            var o = r(e.diagonalArrowDef[n], 4),
              i = o[0],
              s = o[1],
              a = o[2]
            return [
              n + 'arrow',
              {
                renderer: function (e, n) {
                  var o = r(e.arrowAW(), 2),
                    l = o[0],
                    c = o[1],
                    u = e.arrow(c, i * (l - s), a)
                  t(e, u)
                },
                bbox: function (t) {
                  var e = t.arrowData(),
                    n = e.a,
                    o = e.x,
                    i = e.y,
                    s = r([t.arrowhead.x, t.arrowhead.y, t.arrowhead.dx], 3),
                    a = s[0],
                    l = s[1],
                    c = s[2],
                    u = r(t.getArgMod(a + c, l), 2),
                    p = u[0],
                    h = u[1],
                    f = i + (p > n ? t.thickness * h * Math.sin(p - n) : 0),
                    d = o + (p > Math.PI / 2 - n ? t.thickness * h * Math.sin(p + n - Math.PI / 2) : 0)
                  return [f, d, f, d]
                },
                remove: o[3]
              }
            ]
          }
        }
        e.CommonArrow = function (t) {
          return function (n) {
            var o = r(e.arrowDef[n], 4),
              i = o[0],
              s = o[1],
              a = o[2],
              l = o[3]
            return [
              n + 'arrow',
              {
                renderer: function (e, n) {
                  var o = e.getBBox(),
                    l = o.w,
                    c = o.h,
                    u = o.d,
                    p = r(a ? [c + u, 'X'] : [l, 'Y'], 2),
                    h = p[0],
                    f = p[1],
                    d = e.getOffset(f),
                    m = e.arrow(h, i, s, f, d)
                  t(e, m)
                },
                bbox: e.arrowBBox[n],
                remove: l
              }
            ]
          }
        }
      },
      3055: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonOutputJax = void 0)
        var l = r(2975),
          c = r(4474),
          u = r(7233),
          p = r(6010),
          h = r(8054),
          f = r(4139),
          d = (function (t) {
            function e(e, r, n) {
              void 0 === e && (e = null), void 0 === r && (r = null), void 0 === n && (n = null)
              var o = this,
                i = s((0, u.separateOptions)(e, n.OPTIONS), 2),
                a = i[0],
                l = i[1]
              return ((o = t.call(this, a) || this).factory = o.options.wrapperFactory || new r()), (o.factory.jax = o), (o.cssStyles = o.options.cssStyles || new f.CssStyles()), (o.font = o.options.font || new n(l)), (o.unknownCache = new Map()), o
            }
            return (
              o(e, t),
              (e.prototype.typeset = function (t, e) {
                this.setDocument(e)
                var r = this.createNode()
                return this.toDOM(t, r, e), r
              }),
              (e.prototype.createNode = function () {
                var t = this.constructor.NAME
                return this.html('mjx-container', { class: 'MathJax', jax: t })
              }),
              (e.prototype.setScale = function (t) {
                var e = this.math.metrics.scale * this.options.scale
                1 !== e && this.adaptor.setStyle(t, 'fontSize', (0, p.percent)(e))
              }),
              (e.prototype.toDOM = function (t, e, r) {
                void 0 === r && (r = null),
                  this.setDocument(r),
                  (this.math = t),
                  (this.pxPerEm = t.metrics.ex / this.font.params.x_height),
                  t.root.setTeXclass(null),
                  this.setScale(e),
                  (this.nodeMap = new Map()),
                  (this.container = e),
                  this.processMath(t.root, e),
                  (this.nodeMap = null),
                  this.executeFilters(this.postFilters, t, r, e)
              }),
              (e.prototype.getBBox = function (t, e) {
                this.setDocument(e), (this.math = t), t.root.setTeXclass(null), (this.nodeMap = new Map())
                var r = this.factory.wrap(t.root).getOuterBBox()
                return (this.nodeMap = null), r
              }),
              (e.prototype.getMetrics = function (t) {
                var e, r
                this.setDocument(t)
                var n = this.adaptor,
                  o = this.getMetricMaps(t)
                try {
                  for (var i = a(t.math), s = i.next(); !s.done; s = i.next()) {
                    var l = s.value,
                      u = n.parent(l.start.node)
                    if (l.state() < c.STATE.METRICS && u) {
                      var p = o[l.display ? 1 : 0].get(u),
                        h = p.em,
                        f = p.ex,
                        d = p.containerWidth,
                        m = p.lineWidth,
                        y = p.scale,
                        g = p.family
                      l.setMetrics(h, f, d, m, y), this.options.mtextInheritFont && (l.outputData.mtextFamily = g), this.options.merrorInheritFont && (l.outputData.merrorFamily = g), l.state(c.STATE.METRICS)
                    }
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }),
              (e.prototype.getMetricsFor = function (t, e) {
                var r = this.options.mtextInheritFont || this.options.merrorInheritFont,
                  n = this.getTestElement(t, e),
                  o = this.measureMetrics(n, r)
                return this.adaptor.remove(n), o
              }),
              (e.prototype.getMetricMaps = function (t) {
                var e,
                  r,
                  n,
                  o,
                  i,
                  s,
                  l,
                  u,
                  p,
                  h,
                  f = this.adaptor,
                  d = [new Map(), new Map()]
                try {
                  for (var m = a(t.math), y = m.next(); !y.done; y = m.next()) {
                    var g = y.value
                    if ((A = f.parent(g.start.node)) && g.state() < c.STATE.METRICS) {
                      var b = d[g.display ? 1 : 0]
                      b.has(A) || b.set(A, this.getTestElement(A, g.display))
                    }
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    y && !y.done && (r = m.return) && r.call(m)
                  } finally {
                    if (e) throw e.error
                  }
                }
                var v = this.options.mtextInheritFont || this.options.merrorInheritFont,
                  _ = [new Map(), new Map()]
                try {
                  for (var S = a(_.keys()), M = S.next(); !M.done; M = S.next()) {
                    var O = M.value
                    try {
                      for (var x = ((i = void 0), a(d[O].keys())), E = x.next(); !E.done; E = x.next()) {
                        var A = E.value
                        _[O].set(A, this.measureMetrics(d[O].get(A), v))
                      }
                    } catch (t) {
                      i = { error: t }
                    } finally {
                      try {
                        E && !E.done && (s = x.return) && s.call(x)
                      } finally {
                        if (i) throw i.error
                      }
                    }
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    M && !M.done && (o = S.return) && o.call(S)
                  } finally {
                    if (n) throw n.error
                  }
                }
                try {
                  for (var C = a(_.keys()), T = C.next(); !T.done; T = C.next()) {
                    O = T.value
                    try {
                      for (var N = ((p = void 0), a(d[O].values())), w = N.next(); !w.done; w = N.next()) {
                        A = w.value
                        f.remove(A)
                      }
                    } catch (t) {
                      p = { error: t }
                    } finally {
                      try {
                        w && !w.done && (h = N.return) && h.call(N)
                      } finally {
                        if (p) throw p.error
                      }
                    }
                  }
                } catch (t) {
                  l = { error: t }
                } finally {
                  try {
                    T && !T.done && (u = C.return) && u.call(C)
                  } finally {
                    if (l) throw l.error
                  }
                }
                return _
              }),
              (e.prototype.getTestElement = function (t, e) {
                var r = this.adaptor
                if (!this.testInline) {
                  ;(this.testInline = this.html(
                    'mjx-test',
                    {
                      style: {
                        display: 'inline-block',
                        width: '100%',
                        'font-style': 'normal',
                        'font-weight': 'normal',
                        'font-size': '100%',
                        'font-size-adjust': 'none',
                        'text-indent': 0,
                        'text-transform': 'none',
                        'letter-spacing': 'normal',
                        'word-spacing': 'normal',
                        overflow: 'hidden',
                        height: '1px',
                        'margin-right': '-1px'
                      }
                    },
                    [
                      this.html('mjx-left-box', { style: { display: 'inline-block', width: 0, float: 'left' } }),
                      this.html('mjx-ex-box', { style: { position: 'absolute', overflow: 'hidden', width: '1px', height: '60ex' } }),
                      this.html('mjx-right-box', { style: { display: 'inline-block', width: 0, float: 'right' } })
                    ]
                  )),
                    (this.testDisplay = r.clone(this.testInline)),
                    r.setStyle(this.testDisplay, 'display', 'table'),
                    r.setStyle(this.testDisplay, 'margin-right', ''),
                    r.setStyle(r.firstChild(this.testDisplay), 'display', 'none')
                  var n = r.lastChild(this.testDisplay)
                  r.setStyle(n, 'display', 'table-cell'), r.setStyle(n, 'width', '10000em'), r.setStyle(n, 'float', '')
                }
                return r.append(t, r.clone(e ? this.testDisplay : this.testInline))
              }),
              (e.prototype.measureMetrics = function (t, e) {
                var r = this.adaptor,
                  n = e ? r.fontFamily(t) : '',
                  o = r.fontSize(t),
                  i = s(r.nodeSize(r.childNode(t, 1)), 2),
                  a = i[0],
                  l = i[1],
                  c = a ? l / 60 : o * this.options.exFactor
                return {
                  em: o,
                  ex: c,
                  containerWidth: a ? ('table' === r.getStyle(t, 'display') ? r.nodeSize(r.lastChild(t))[0] - 1 : r.nodeBBox(r.lastChild(t)).left - r.nodeBBox(r.firstChild(t)).left - 2) : 1e6,
                  lineWidth: 1e6,
                  scale: Math.max(this.options.minScale, this.options.matchFontHeight ? c / this.font.params.x_height / o : 1),
                  family: n
                }
              }),
              (e.prototype.styleSheet = function (t) {
                var e, r
                if ((this.setDocument(t), this.cssStyles.clear(), this.cssStyles.addStyles(this.constructor.commonStyles), 'getStyles' in t))
                  try {
                    for (var n = a(t.getStyles()), o = n.next(); !o.done; o = n.next()) {
                      var i = o.value
                      this.cssStyles.addStyles(i)
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      o && !o.done && (r = n.return) && r.call(n)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                return this.addWrapperStyles(this.cssStyles), this.addFontStyles(this.cssStyles), this.html('style', { id: 'MJX-styles' }, [this.text('\n' + this.cssStyles.cssText + '\n')])
              }),
              (e.prototype.addFontStyles = function (t) {
                t.addStyles(this.font.styles)
              }),
              (e.prototype.addWrapperStyles = function (t) {
                var e, r
                try {
                  for (var n = a(this.factory.getKinds()), o = n.next(); !o.done; o = n.next()) {
                    var i = o.value
                    this.addClassStyles(this.factory.getNodeClass(i), t)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }),
              (e.prototype.addClassStyles = function (t, e) {
                e.addStyles(t.styles)
              }),
              (e.prototype.setDocument = function (t) {
                t && ((this.document = t), (this.adaptor.document = t.document))
              }),
              (e.prototype.html = function (t, e, r, n) {
                return void 0 === e && (e = {}), void 0 === r && (r = []), this.adaptor.node(t, e, r, n)
              }),
              (e.prototype.text = function (t) {
                return this.adaptor.text(t)
              }),
              (e.prototype.fixed = function (t, e) {
                return void 0 === e && (e = 3), Math.abs(t) < 6e-4 ? '0' : t.toFixed(e).replace(/\.?0+$/, '')
              }),
              (e.prototype.measureText = function (t, e, r) {
                void 0 === r && (r = ['', !1, !1])
                var n = this.unknownText(t, e)
                if ('-explicitFont' === e) {
                  var o = this.cssFontStyles(r)
                  this.adaptor.setAttributes(n, { style: o })
                }
                return this.measureTextNodeWithCache(n, t, e, r)
              }),
              (e.prototype.measureTextNodeWithCache = function (t, e, r, n) {
                void 0 === n && (n = ['', !1, !1]), '-explicitFont' === r && (r = [n[0], n[1] ? 'T' : 'F', n[2] ? 'T' : 'F', ''].join('-')), this.unknownCache.has(r) || this.unknownCache.set(r, new Map())
                var o = this.unknownCache.get(r),
                  i = o.get(e)
                if (i) return i
                var s = this.measureTextNode(t)
                return o.set(e, s), s
              }),
              (e.prototype.measureXMLnode = function (t) {
                var e = this.adaptor,
                  r = this.html('mjx-xml-block', { style: { display: 'inline-block' } }, [e.clone(t)]),
                  n = this.html('mjx-baseline', { style: { display: 'inline-block', width: 0, height: 0 } }),
                  o = this.html('mjx-measure-xml', { style: { position: 'absolute', display: 'inline-block', 'font-family': 'initial', 'line-height': 'normal' } }, [n, r])
                e.append(e.parent(this.math.start.node), this.container), e.append(this.container, o)
                var i = this.math.metrics.em * this.math.metrics.scale,
                  s = e.nodeBBox(r),
                  a = s.left,
                  l = s.right,
                  c = s.bottom,
                  u = s.top,
                  p = (l - a) / i,
                  h = (e.nodeBBox(n).top - u) / i,
                  f = (c - u) / i - h
                return e.remove(this.container), e.remove(o), { w: p, h: h, d: f }
              }),
              (e.prototype.cssFontStyles = function (t, e) {
                void 0 === e && (e = {})
                var r = s(t, 3),
                  n = r[0],
                  o = r[1],
                  i = r[2]
                return (e['font-family'] = this.font.getFamily(n)), o && (e['font-style'] = 'italic'), i && (e['font-weight'] = 'bold'), e
              }),
              (e.prototype.getFontData = function (t) {
                return t || (t = new h.Styles()), [this.font.getFamily(t.get('font-family')), 'italic' === t.get('font-style'), 'bold' === t.get('font-weight')]
              }),
              (e.NAME = 'Common'),
              (e.OPTIONS = i(i({}, l.AbstractOutputJax.OPTIONS), {
                scale: 1,
                minScale: 0.5,
                mtextInheritFont: !1,
                merrorInheritFont: !1,
                mtextFont: '',
                merrorFont: 'serif',
                mathmlSpacing: !1,
                skipAttributes: {},
                exFactor: 0.5,
                displayAlign: 'center',
                displayIndent: '0',
                wrapperFactory: null,
                font: null,
                cssStyles: null
              })),
              (e.commonStyles = {}),
              e
            )
          })(l.AbstractOutputJax)
        e.CommonOutputJax = d
      },
      7519: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          s =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          a =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && i(e, t, r)
              return s(e, t), e
            },
          l =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          c =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          u =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonWrapper = void 0)
        var p = r(8912),
          h = r(9007),
          f = r(505),
          d = a(r(6010)),
          m = r(8054),
          y = r(6469),
          g = r(5884),
          b = 2 / 18
        function v(t, e) {
          return t ? (e < b ? 0 : b) : e
        }
        var _ = (function (t) {
          function e(e, r, n) {
            void 0 === n && (n = null)
            var o = t.call(this, e, r) || this
            return (
              (o.parent = null),
              (o.removedStyles = null),
              (o.styles = null),
              (o.variant = ''),
              (o.bboxComputed = !1),
              (o.stretch = g.NOSTRETCH),
              (o.font = null),
              (o.parent = n),
              (o.font = e.jax.font),
              (o.bbox = y.BBox.zero()),
              o.getStyles(),
              o.getVariant(),
              o.getScale(),
              o.getSpace(),
              (o.childNodes = r.childNodes.map(function (t) {
                var e = o.wrap(t)
                return e.bbox.pwidth && (r.notParent || r.isKind('math')) && (o.bbox.pwidth = y.BBox.fullWidth), e
              })),
              o
            )
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'jax', {
              get: function () {
                return this.factory.jax
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'adaptor', {
              get: function () {
                return this.factory.jax.adaptor
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'metrics', {
              get: function () {
                return this.factory.jax.math.metrics
              },
              enumerable: !1,
              configurable: !0
            }),
            Object.defineProperty(e.prototype, 'fixesPWidth', {
              get: function () {
                return !this.node.notParent && !this.node.isToken
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.wrap = function (t, e) {
              void 0 === e && (e = null)
              var r = this.factory.wrap(t, e || this)
              return e && e.childNodes.push(r), this.jax.nodeMap.set(t, r), r
            }),
            (e.prototype.getBBox = function (t) {
              if ((void 0 === t && (t = !0), this.bboxComputed)) return this.bbox
              var e = t ? this.bbox : y.BBox.zero()
              return this.computeBBox(e), (this.bboxComputed = t), e
            }),
            (e.prototype.getOuterBBox = function (t) {
              var e, r
              void 0 === t && (t = !0)
              var n = this.getBBox(t)
              if (!this.styles) return n
              var o = new y.BBox()
              Object.assign(o, n)
              try {
                for (var i = l(y.BBox.StyleAdjust), s = i.next(); !s.done; s = i.next()) {
                  var a = c(s.value, 2),
                    u = a[0],
                    p = a[1],
                    h = this.styles.get(u)
                  h && (o[p] += this.length2em(h, 1, o.rscale))
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  s && !s.done && (r = i.return) && r.call(i)
                } finally {
                  if (e) throw e.error
                }
              }
              return o
            }),
            (e.prototype.computeBBox = function (t, e) {
              var r, n
              void 0 === e && (e = !1), t.empty()
              try {
                for (var o = l(this.childNodes), i = o.next(); !i.done; i = o.next()) {
                  var s = i.value
                  t.append(s.getOuterBBox())
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  i && !i.done && (n = o.return) && n.call(o)
                } finally {
                  if (r) throw r.error
                }
              }
              t.clean(), this.fixesPWidth && this.setChildPWidths(e) && this.computeBBox(t, !0)
            }),
            (e.prototype.setChildPWidths = function (t, e, r) {
              var n, o
              if ((void 0 === e && (e = null), void 0 === r && (r = !0), t)) return !1
              r && (this.bbox.pwidth = '')
              var i = !1
              try {
                for (var s = l(this.childNodes), a = s.next(); !a.done; a = s.next()) {
                  var c = a.value,
                    u = c.getOuterBBox()
                  u.pwidth && c.setChildPWidths(t, null === e ? u.w : e, r) && (i = !0)
                }
              } catch (t) {
                n = { error: t }
              } finally {
                try {
                  a && !a.done && (o = s.return) && o.call(s)
                } finally {
                  if (n) throw n.error
                }
              }
              return i
            }),
            (e.prototype.invalidateBBox = function () {
              this.bboxComputed && ((this.bboxComputed = !1), this.parent && this.parent.invalidateBBox())
            }),
            (e.prototype.copySkewIC = function (t) {
              var e = this.childNodes[0]
              ;(null == e ? void 0 : e.bbox.sk) && (t.sk = e.bbox.sk), (null == e ? void 0 : e.bbox.dx) && (t.dx = e.bbox.dx)
              var r = this.childNodes[this.childNodes.length - 1]
              ;(null == r ? void 0 : r.bbox.ic) && ((t.ic = r.bbox.ic), (t.w += t.ic))
            }),
            (e.prototype.getStyles = function () {
              var t = this.node.attributes.getExplicit('style')
              if (t)
                for (var r = (this.styles = new m.Styles(t)), n = 0, o = e.removeStyles.length; n < o; n++) {
                  var i = e.removeStyles[n]
                  r.get(i) && (this.removedStyles || (this.removedStyles = {}), (this.removedStyles[i] = r.get(i)), r.set(i, ''))
                }
            }),
            (e.prototype.getVariant = function () {
              if (this.node.isToken) {
                var t = this.node.attributes,
                  r = t.get('mathvariant')
                if (!t.getExplicit('mathvariant')) {
                  var n = t.getList('fontfamily', 'fontweight', 'fontstyle')
                  if (this.removedStyles) {
                    var o = this.removedStyles
                    o.fontFamily && (n.family = o.fontFamily), o.fontWeight && (n.weight = o.fontWeight), o.fontStyle && (n.style = o.fontStyle)
                  }
                  n.fontfamily && (n.family = n.fontfamily),
                    n.fontweight && (n.weight = n.fontweight),
                    n.fontstyle && (n.style = n.fontstyle),
                    n.weight && n.weight.match(/^\d+$/) && (n.weight = parseInt(n.weight) > 600 ? 'bold' : 'normal'),
                    n.family ? (r = this.explicitVariant(n.family, n.weight, n.style)) : (this.node.getProperty('variantForm') && (r = '-tex-variant'), (r = (e.BOLDVARIANTS[n.weight] || {})[r] || r), (r = (e.ITALICVARIANTS[n.style] || {})[r] || r))
                }
                this.variant = r
              }
            }),
            (e.prototype.explicitVariant = function (t, e, r) {
              var n = this.styles
              return n || (n = this.styles = new m.Styles()), n.set('fontFamily', t), e && n.set('fontWeight', e), r && n.set('fontStyle', r), '-explicitFont'
            }),
            (e.prototype.getScale = function () {
              var t = 1,
                e = this.parent,
                r = e ? e.bbox.scale : 1,
                n = this.node.attributes,
                o = Math.min(n.get('scriptlevel'), 2),
                i = n.get('fontsize'),
                s = this.node.isToken || this.node.isKind('mstyle') ? n.get('mathsize') : n.getInherited('mathsize')
              if (0 !== o) {
                t = Math.pow(n.get('scriptsizemultiplier'), o)
                var a = this.length2em(n.get('scriptminsize'), 0.8, 1)
                t < a && (t = a)
              }
              this.removedStyles && this.removedStyles.fontSize && !i && (i = this.removedStyles.fontSize), i && !n.getExplicit('mathsize') && (s = i), '1' !== s && (t *= this.length2em(s, 1, 1)), (this.bbox.scale = t), (this.bbox.rscale = t / r)
            }),
            (e.prototype.getSpace = function () {
              var t = this.isTopEmbellished(),
                e = this.node.hasSpacingAttributes()
              this.jax.options.mathmlSpacing || e ? t && this.getMathMLSpacing() : this.getTeXSpacing(t, e)
            }),
            (e.prototype.getMathMLSpacing = function () {
              var t = this.node.coreMO(),
                e = t.coreParent(),
                r = e.parent
              if (r && r.isKind('mrow') && 1 !== r.childNodes.length) {
                var n = t.attributes,
                  o = n.get('scriptlevel') > 0
                ;(this.bbox.L = n.isSet('lspace') ? Math.max(0, this.length2em(n.get('lspace'))) : v(o, t.lspace)), (this.bbox.R = n.isSet('rspace') ? Math.max(0, this.length2em(n.get('rspace'))) : v(o, t.rspace))
                var i = r.childIndex(e)
                if (0 !== i) {
                  var s = r.childNodes[i - 1]
                  if (s.isEmbellished) {
                    var a = this.jax.nodeMap.get(s).getBBox()
                    a.R && (this.bbox.L = Math.max(0, this.bbox.L - a.R))
                  }
                }
              }
            }),
            (e.prototype.getTeXSpacing = function (t, e) {
              if (!e) {
                var r = this.node.texSpacing()
                r && (this.bbox.L = this.length2em(r))
              }
              if (t || e) {
                var n = this.node.coreMO().attributes
                n.isSet('lspace') && (this.bbox.L = Math.max(0, this.length2em(n.get('lspace')))), n.isSet('rspace') && (this.bbox.R = Math.max(0, this.length2em(n.get('rspace'))))
              }
            }),
            (e.prototype.isTopEmbellished = function () {
              return this.node.isEmbellished && !(this.node.parent && this.node.parent.isEmbellished)
            }),
            (e.prototype.core = function () {
              return this.jax.nodeMap.get(this.node.core())
            }),
            (e.prototype.coreMO = function () {
              return this.jax.nodeMap.get(this.node.coreMO())
            }),
            (e.prototype.getText = function () {
              var t,
                e,
                r = ''
              if (this.node.isToken)
                try {
                  for (var n = l(this.node.childNodes), o = n.next(); !o.done; o = n.next()) {
                    var i = o.value
                    i instanceof h.TextNode && (r += i.getText())
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              return r
            }),
            (e.prototype.canStretch = function (t) {
              if (((this.stretch = g.NOSTRETCH), this.node.isEmbellished)) {
                var e = this.core()
                e && e.node !== this.node && e.canStretch(t) && (this.stretch = e.stretch)
              }
              return 0 !== this.stretch.dir
            }),
            (e.prototype.getAlignShift = function () {
              var t,
                e = (t = this.node.attributes).getList.apply(t, u([], c(h.indentAttributes), !1)),
                r = e.indentalign,
                n = e.indentshift,
                o = e.indentalignfirst,
                i = e.indentshiftfirst
              return (
                'indentalign' !== o && (r = o),
                'auto' === r && (r = this.jax.options.displayAlign),
                'indentshift' !== i && (n = i),
                'auto' === n && ((n = this.jax.options.displayIndent), 'right' !== r || n.match(/^\s*0[a-z]*\s*$/) || (n = ('-' + n.trim()).replace(/^--/, ''))),
                [r, this.length2em(n, this.metrics.containerWidth)]
              )
            }),
            (e.prototype.getAlignX = function (t, e, r) {
              return 'right' === r ? t - (e.w + e.R) * e.rscale : 'left' === r ? e.L * e.rscale : (t - e.w * e.rscale) / 2
            }),
            (e.prototype.getAlignY = function (t, e, r, n, o) {
              return 'top' === o ? t - r : 'bottom' === o ? n - e : 'center' === o ? (t - r - (e - n)) / 2 : 0
            }),
            (e.prototype.getWrapWidth = function (t) {
              return this.childNodes[t].getBBox().w
            }),
            (e.prototype.getChildAlign = function (t) {
              return 'left'
            }),
            (e.prototype.percent = function (t) {
              return d.percent(t)
            }),
            (e.prototype.em = function (t) {
              return d.em(t)
            }),
            (e.prototype.px = function (t, e) {
              return void 0 === e && (e = -d.BIGDIMEN), d.px(t, e, this.metrics.em)
            }),
            (e.prototype.length2em = function (t, e, r) {
              return void 0 === e && (e = 1), void 0 === r && (r = null), null === r && (r = this.bbox.scale), d.length2em(t, e, r, this.jax.pxPerEm)
            }),
            (e.prototype.unicodeChars = function (t, e) {
              void 0 === e && (e = this.variant)
              var r = (0, f.unicodeChars)(t),
                n = this.font.getVariant(e)
              if (n && n.chars) {
                var o = n.chars
                r = r.map(function (t) {
                  return ((o[t] || [])[3] || {}).smp || t
                })
              }
              return r
            }),
            (e.prototype.remapChars = function (t) {
              return t
            }),
            (e.prototype.mmlText = function (t) {
              return this.node.factory.create('text').setText(t)
            }),
            (e.prototype.mmlNode = function (t, e, r) {
              return void 0 === e && (e = {}), void 0 === r && (r = []), this.node.factory.create(t, e, r)
            }),
            (e.prototype.createMo = function (t) {
              var e = this.node.factory,
                r = e.create('text').setText(t),
                n = e.create('mo', { stretchy: !0 }, [r])
              n.inheritAttributesFrom(this.node)
              var o = this.wrap(n)
              return (o.parent = this), o
            }),
            (e.prototype.getVariantChar = function (t, e) {
              var r = this.font.getChar(t, e) || [0, 0, 0, { unknown: !0 }]
              return 3 === r.length && (r[3] = {}), r
            }),
            (e.kind = 'unknown'),
            (e.styles = {}),
            (e.removeStyles = ['fontSize', 'fontFamily', 'fontWeight', 'fontStyle', 'fontVariant', 'font']),
            (e.skipAttributes = { fontfamily: !0, fontsize: !0, fontweight: !0, fontstyle: !0, color: !0, background: !0, class: !0, href: !0, style: !0, xmlns: !0 }),
            (e.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' }
            }),
            (e.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' }
            }),
            e
          )
        })(p.AbstractWrapper)
        e.CommonWrapper = _
      },
      4420: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonWrapperFactory = void 0)
        var i = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.jax = null), e
          }
          return (
            o(e, t),
            Object.defineProperty(e.prototype, 'Wrappers', {
              get: function () {
                return this.node
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.defaultNodes = {}),
            e
          )
        })(r(3811).AbstractWrapperFactory)
        e.CommonWrapperFactory = i
      },
      9800: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonTeXAtomMixin = void 0)
        var i = r(9007)
        e.CommonTeXAtomMixin = function (t) {
          return (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.computeBBox = function (e, r) {
                if ((void 0 === r && (r = !1), t.prototype.computeBBox.call(this, e, r), this.childNodes[0] && this.childNodes[0].bbox.ic && (e.ic = this.childNodes[0].bbox.ic), this.node.texClass === i.TEXCLASS.VCENTER)) {
                  var n = e.h,
                    o = (n + e.d) / 2 + this.font.params.axis_height - n
                  ;(e.h += o), (e.d -= o)
                }
              }),
              e
            )
          })(t)
        }
      },
      1160: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonTextNodeMixin = void 0),
          (e.CommonTextNodeMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.computeBBox = function (t, e) {
                  var r, n
                  void 0 === e && (e = !1)
                  var s = this.parent.variant,
                    a = this.node.getText()
                  if ('-explicitFont' === s) {
                    var l = this.jax.getFontData(this.parent.styles),
                      c = this.jax.measureText(a, s, l),
                      u = c.w,
                      p = c.h,
                      h = c.d
                    ;(t.h = p), (t.d = h), (t.w = u)
                  } else {
                    var f = this.remappedText(a, s)
                    t.empty()
                    try {
                      for (var d = o(f), m = d.next(); !m.done; m = d.next()) {
                        var y = m.value,
                          g = i(this.getVariantChar(s, y), 4),
                          b = ((p = g[0]), (h = g[1]), (u = g[2]), g[3])
                        if (b.unknown) {
                          var v = this.jax.measureText(String.fromCodePoint(y), s)
                          ;(u = v.w), (p = v.h), (h = v.d)
                        }
                        ;(t.w += u), p > t.h && (t.h = p), h > t.d && (t.d = h), (t.ic = b.ic || 0), (t.sk = b.sk || 0), (t.dx = b.dx || 0)
                      }
                    } catch (t) {
                      r = { error: t }
                    } finally {
                      try {
                        m && !m.done && (n = d.return) && n.call(d)
                      } finally {
                        if (r) throw r.error
                      }
                    }
                    f.length > 1 && (t.sk = 0), t.clean()
                  }
                }),
                (e.prototype.remappedText = function (t, e) {
                  var r = this.parent.stretch.c
                  return r ? [r] : this.parent.remapChars(this.unicodeChars(t, e))
                }),
                (e.prototype.getStyles = function () {}),
                (e.prototype.getVariant = function () {}),
                (e.prototype.getScale = function () {}),
                (e.prototype.getSpace = function () {}),
                e
              )
            })(t)
          })
      },
      1956: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonMactionMixin = e.TooltipData = void 0)
        var a = r(505)
        ;(e.TooltipData = {
          dx: '.2em',
          dy: '.1em',
          postDelay: 600,
          clearDelay: 100,
          hoverTimer: new Map(),
          clearTimer: new Map(),
          stopTimers: function (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))
          }
        }),
          (e.CommonMactionMixin = function (t) {
            return (function (t) {
              function r() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, s([], i(e), !1)) || this,
                  o = n.constructor.actions,
                  a = n.node.attributes.get('actiontype'),
                  l = i(o.get(a) || [function (t, e) {}, {}], 2),
                  c = l[0],
                  u = l[1]
                return (n.action = c), (n.data = u), n.getParameters(), n
              }
              return (
                o(r, t),
                Object.defineProperty(r.prototype, 'selected', {
                  get: function () {
                    var 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)
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (r.prototype.getParameters = function () {
                  var t = this.node.attributes.get('data-offsets'),
                    r = i((0, a.split)(t || ''), 2),
                    n = r[0],
                    o = r[1]
                  ;(this.dx = this.length2em(n || e.TooltipData.dx)), (this.dy = this.length2em(o || e.TooltipData.dy))
                }),
                (r.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1), t.updateFrom(this.selected.getOuterBBox()), this.selected.setChildPWidths(e)
                }),
                r
              )
            })(t)
          })
      },
      7490: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMathMixin = void 0),
          (e.CommonMathMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.getWrapWidth = function (t) {
                  return this.parent ? this.getBBox().w : this.metrics.containerWidth / this.jax.pxPerEm
                }),
                e
              )
            })(t)
          })
      },
      7313: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__createBinding) ||
            (Object.create
              ? function (t, e, r, n) {
                  void 0 === n && (n = r)
                  var o = Object.getOwnPropertyDescriptor(e, r)
                  ;(o && !('get' in o ? !e.__esModule : o.writable || o.configurable)) ||
                    (o = {
                      enumerable: !0,
                      get: function () {
                        return e[r]
                      }
                    }),
                    Object.defineProperty(t, n, o)
                }
              : function (t, e, r, n) {
                  void 0 === n && (n = r), (t[n] = e[r])
                }),
          s =
            (this && this.__setModuleDefault) ||
            (Object.create
              ? function (t, e) {
                  Object.defineProperty(t, 'default', { enumerable: !0, value: e })
                }
              : function (t, e) {
                  t.default = e
                }),
          a =
            (this && this.__importStar) ||
            function (t) {
              if (t && t.__esModule) return t
              var e = {}
              if (null != t) for (var r in t) 'default' !== r && Object.prototype.hasOwnProperty.call(t, r) && i(e, t, r)
              return s(e, t), e
            },
          l =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          c =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          u =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonMencloseMixin = void 0)
        var p = a(r(5552)),
          h = r(505)
        e.CommonMencloseMixin = function (t) {
          return (function (t) {
            function e() {
              for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
              var n = t.apply(this, c([], l(e), !1)) || this
              return (
                (n.notations = {}),
                (n.renderChild = null),
                (n.msqrt = null),
                (n.padding = p.PADDING),
                (n.thickness = p.THICKNESS),
                (n.arrowhead = { x: p.ARROWX, y: p.ARROWY, dx: p.ARROWDX }),
                (n.TRBL = [0, 0, 0, 0]),
                n.getParameters(),
                n.getNotations(),
                n.removeRedundantNotations(),
                n.initializeNotations(),
                (n.TRBL = n.getBBoxExtenders()),
                n
              )
            }
            return (
              o(e, t),
              (e.prototype.getParameters = function () {
                var t = this.node.attributes,
                  e = t.get('data-padding')
                void 0 !== e && (this.padding = this.length2em(e, p.PADDING))
                var r = t.get('data-thickness')
                void 0 !== r && (this.thickness = this.length2em(r, p.THICKNESS))
                var n = t.get('data-arrowhead')
                if (void 0 !== n) {
                  var o = l((0, h.split)(n), 3),
                    i = o[0],
                    s = o[1],
                    a = o[2]
                  this.arrowhead = { x: i ? parseFloat(i) : p.ARROWX, y: s ? parseFloat(s) : p.ARROWY, dx: a ? parseFloat(a) : p.ARROWDX }
                }
              }),
              (e.prototype.getNotations = function () {
                var t,
                  e,
                  r = this.constructor.notations
                try {
                  for (var n = u((0, h.split)(this.node.attributes.get('notation'))), o = n.next(); !o.done; o = n.next()) {
                    var i = o.value,
                      s = r.get(i)
                    s && ((this.notations[i] = s), s.renderChild && (this.renderChild = s.renderer))
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.removeRedundantNotations = function () {
                var t, e, r, n
                try {
                  for (var o = u(Object.keys(this.notations)), i = o.next(); !i.done; i = o.next()) {
                    var s = i.value
                    if (this.notations[s]) {
                      var a = this.notations[s].remove || ''
                      try {
                        for (var l = ((r = void 0), u(a.split(/ /))), c = l.next(); !c.done; c = l.next()) {
                          var p = c.value
                          delete this.notations[p]
                        }
                      } catch (t) {
                        r = { error: t }
                      } finally {
                        try {
                          c && !c.done && (n = l.return) && n.call(l)
                        } finally {
                          if (r) throw r.error
                        }
                      }
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    i && !i.done && (e = o.return) && e.call(o)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.initializeNotations = function () {
                var t, e
                try {
                  for (var r = u(Object.keys(this.notations)), n = r.next(); !n.done; n = r.next()) {
                    var o = n.value,
                      i = this.notations[o].init
                    i && i(this)
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    n && !n.done && (e = r.return) && e.call(r)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.computeBBox = function (t, e) {
                void 0 === e && (e = !1)
                var r = l(this.TRBL, 4),
                  n = r[0],
                  o = r[1],
                  i = r[2],
                  s = r[3],
                  a = this.childNodes[0].getBBox()
                t.combine(a, s, 0), (t.h += n), (t.d += i), (t.w += o), this.setChildPWidths(e)
              }),
              (e.prototype.getBBoxExtenders = function () {
                var t,
                  e,
                  r = [0, 0, 0, 0]
                try {
                  for (var n = u(Object.keys(this.notations)), o = n.next(); !o.done; o = n.next()) {
                    var i = o.value
                    this.maximizeEntries(r, this.notations[i].bbox(this))
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return r
              }),
              (e.prototype.getPadding = function () {
                var t,
                  e,
                  r = this,
                  n = [0, 0, 0, 0]
                try {
                  for (var o = u(Object.keys(this.notations)), i = o.next(); !i.done; i = o.next()) {
                    var s = i.value,
                      a = this.notations[s].border
                    a && this.maximizeEntries(n, a(this))
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    i && !i.done && (e = o.return) && e.call(o)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return [0, 1, 2, 3].map(function (t) {
                  return r.TRBL[t] - n[t]
                })
              }),
              (e.prototype.maximizeEntries = function (t, e) {
                for (var r = 0; r < t.length; r++) t[r] < e[r] && (t[r] = e[r])
              }),
              (e.prototype.getOffset = function (t) {
                var e = l(this.TRBL, 4),
                  r = e[0],
                  n = e[1],
                  o = e[2],
                  i = e[3],
                  s = ('X' === t ? n - i : o - r) / 2
                return Math.abs(s) > 0.001 ? s : 0
              }),
              (e.prototype.getArgMod = function (t, e) {
                return [Math.atan2(e, t), Math.sqrt(t * t + e * e)]
              }),
              (e.prototype.arrow = function (t, e, r, n, o) {
                return void 0 === n && (n = ''), void 0 === o && (o = 0), null
              }),
              (e.prototype.arrowData = function () {
                var t = l([this.padding, this.thickness], 2),
                  e = t[0],
                  r = t[1] * (this.arrowhead.x + Math.max(1, this.arrowhead.dx)),
                  n = this.childNodes[0].getBBox(),
                  o = n.h,
                  i = n.d,
                  s = n.w,
                  a = o + i,
                  c = Math.sqrt(a * a + s * s),
                  u = Math.max(e, (r * s) / c),
                  p = Math.max(e, (r * a) / c),
                  h = l(this.getArgMod(s + 2 * u, a + 2 * p), 2)
                return { a: h[0], W: h[1], x: u, y: p }
              }),
              (e.prototype.arrowAW = function () {
                var t = this.childNodes[0].getBBox(),
                  e = t.h,
                  r = t.d,
                  n = t.w,
                  o = l(this.TRBL, 4),
                  i = o[0],
                  s = o[1],
                  a = o[2],
                  c = o[3]
                return this.getArgMod(c + n + s, i + e + r + a)
              }),
              (e.prototype.createMsqrt = function (t) {
                var e = this.node.factory.create('msqrt')
                e.inheritAttributesFrom(this.node), (e.childNodes[0] = t.node)
                var r = this.wrap(e)
                return (r.parent = this), r
              }),
              (e.prototype.sqrtTRBL = function () {
                var t = this.msqrt.getBBox(),
                  e = this.msqrt.childNodes[0].getBBox()
                return [t.h - e.h, 0, t.d - e.d, t.w - e.w]
              }),
              e
            )
          })(t)
        }
      },
      7555: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          s =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMfencedMixin = void 0),
          (e.CommonMfencedMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this
                return (n.mrow = null), n.createMrow(), n.addMrowChildren(), n
              }
              return (
                n(e, t),
                (e.prototype.createMrow = function () {
                  var t = this.node.factory.create('inferredMrow')
                  t.inheritAttributesFrom(this.node), (this.mrow = this.wrap(t)), (this.mrow.parent = this)
                }),
                (e.prototype.addMrowChildren = function () {
                  var t,
                    e,
                    r = this.node,
                    n = this.mrow
                  this.addMo(r.open), this.childNodes.length && n.childNodes.push(this.childNodes[0])
                  var o = 0
                  try {
                    for (var i = s(this.childNodes.slice(1)), a = i.next(); !a.done; a = i.next()) {
                      var l = a.value
                      this.addMo(r.separators[o++]), n.childNodes.push(l)
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      a && !a.done && (e = i.return) && e.call(i)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  this.addMo(r.close), n.stretchChildren()
                }),
                (e.prototype.addMo = function (t) {
                  if (t) {
                    var e = this.wrap(t)
                    this.mrow.childNodes.push(e), (e.parent = this.mrow)
                  }
                }),
                (e.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1), t.updateFrom(this.mrow.getOuterBBox()), this.setChildPWidths(e)
                }),
                e
              )
            })(t)
          })
      },
      2688: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMfracMixin = void 0),
          (e.CommonMfracMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this
                if (((n.bevel = null), (n.pad = n.node.getProperty('withDelims') ? 0 : n.font.params.nulldelimiterspace), n.node.attributes.get('bevelled'))) {
                  var s = n.getBevelData(n.isDisplay()).H,
                    a = (n.bevel = n.createMo('/'))
                  a.node.attributes.set('symmetric', !0), a.canStretch(1), a.getStretchedVariant([s], !0)
                }
                return n
              }
              return (
                n(e, t),
                (e.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1), t.empty()
                  var r = this.node.attributes.getList('linethickness', 'bevelled'),
                    n = r.linethickness,
                    o = r.bevelled,
                    i = this.isDisplay(),
                    s = null
                  if (o) this.getBevelledBBox(t, i)
                  else {
                    var a = this.length2em(String(n), 0.06)
                    ;(s = -2 * this.pad), 0 === a ? this.getAtopBBox(t, i) : (this.getFractionBBox(t, i, a), (s -= 0.2)), (s += t.w)
                  }
                  t.clean(), this.setChildPWidths(e, s)
                }),
                (e.prototype.getFractionBBox = function (t, e, r) {
                  var n = this.childNodes[0].getOuterBBox(),
                    o = this.childNodes[1].getOuterBBox(),
                    i = this.font.params.axis_height,
                    s = this.getTUV(e, r),
                    a = s.T,
                    l = s.u,
                    c = s.v
                  t.combine(n, 0, i + a + Math.max(n.d * n.rscale, l)), t.combine(o, 0, i - a - Math.max(o.h * o.rscale, c)), (t.w += 2 * this.pad + 0.2)
                }),
                (e.prototype.getTUV = function (t, e) {
                  var r = this.font.params,
                    n = r.axis_height,
                    o = (t ? 3.5 : 1.5) * e
                  return { T: (t ? 3.5 : 1.5) * e, u: (t ? r.num1 : r.num2) - n - o, v: (t ? r.denom1 : r.denom2) + n - o }
                }),
                (e.prototype.getAtopBBox = function (t, e) {
                  var r = this.getUVQ(e),
                    n = r.u,
                    o = r.v,
                    i = r.nbox,
                    s = r.dbox
                  t.combine(i, 0, n), t.combine(s, 0, -o), (t.w += 2 * this.pad)
                }),
                (e.prototype.getUVQ = function (t) {
                  var e = this.childNodes[0].getOuterBBox(),
                    r = this.childNodes[1].getOuterBBox(),
                    n = this.font.params,
                    i = o(t ? [n.num1, n.denom1] : [n.num3, n.denom2], 2),
                    s = i[0],
                    a = i[1],
                    l = (t ? 7 : 3) * n.rule_thickness,
                    c = s - e.d * e.scale - (r.h * r.scale - a)
                  return c < l && ((s += (l - c) / 2), (a += (l - c) / 2), (c = l)), { u: s, v: a, q: c, nbox: e, dbox: r }
                }),
                (e.prototype.getBevelledBBox = function (t, e) {
                  var r = this.getBevelData(e),
                    n = r.u,
                    o = r.v,
                    i = r.delta,
                    s = r.nbox,
                    a = r.dbox,
                    l = this.bevel.getOuterBBox()
                  t.combine(s, 0, n), t.combine(l, t.w - i / 2, 0), t.combine(a, t.w - i / 2, o)
                }),
                (e.prototype.getBevelData = function (t) {
                  var e = this.childNodes[0].getOuterBBox(),
                    r = this.childNodes[1].getOuterBBox(),
                    n = t ? 0.4 : 0.15,
                    o = Math.max(e.scale * (e.h + e.d), r.scale * (r.h + r.d)) + 2 * n,
                    i = this.font.params.axis_height
                  return { H: o, delta: n, u: (e.scale * (e.d - e.h)) / 2 + i + n, v: (r.scale * (r.d - r.h)) / 2 + i - n, nbox: e, dbox: r }
                }),
                (e.prototype.canStretch = function (t) {
                  return !1
                }),
                (e.prototype.isDisplay = function () {
                  var t = this.node.attributes.getList('displaystyle', 'scriptlevel'),
                    e = t.displaystyle,
                    r = t.scriptlevel
                  return e && 0 === r
                }),
                (e.prototype.getWrapWidth = function (t) {
                  var e = this.node.attributes
                  return e.get('bevelled') ? this.childNodes[t].getOuterBBox().w : this.getBBox().w - (this.length2em(e.get('linethickness')) ? 0.2 : 0) - 2 * this.pad
                }),
                (e.prototype.getChildAlign = function (t) {
                  var e = this.node.attributes
                  return e.get('bevelled') ? 'left' : e.get(['numalign', 'denomalign'][t])
                }),
                e
              )
            })(t)
          })
      },
      5636: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMglyphMixin = void 0),
          (e.CommonMglyphMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this
                return n.getParameters(), n
              }
              return (
                n(e, t),
                (e.prototype.getParameters = function () {
                  var t = this.node.attributes.getList('width', 'height', 'valign', 'src', 'index'),
                    e = t.width,
                    r = t.height,
                    n = t.valign,
                    o = t.src,
                    i = t.index
                  if (o) (this.width = 'auto' === e ? 1 : this.length2em(e)), (this.height = 'auto' === r ? 1 : this.length2em(r)), (this.valign = this.length2em(n || '0'))
                  else {
                    var s = String.fromCodePoint(parseInt(i)),
                      a = this.node.factory
                    ;(this.charWrapper = this.wrap(a.create('text').setText(s))), (this.charWrapper.parent = this)
                  }
                }),
                (e.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1), this.charWrapper ? t.updateFrom(this.charWrapper.getBBox()) : ((t.w = this.width), (t.h = this.height + this.valign), (t.d = -this.valign))
                }),
                e
              )
            })(t)
          })
      },
      5723: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMiMixin = void 0),
          (e.CommonMiMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.computeBBox = function (e, r) {
                  void 0 === r && (r = !1), t.prototype.computeBBox.call(this, e), this.copySkewIC(e)
                }),
                e
              )
            })(t)
          })
      },
      8009: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonMmultiscriptsMixin = e.ScriptNames = e.NextScript = void 0)
        var l = r(6469)
        ;(e.NextScript = { base: 'subList', subList: 'supList', supList: 'subList', psubList: 'psupList', psupList: 'psubList' }),
          (e.ScriptNames = ['sup', 'sup', 'psup', 'psub']),
          (e.CommonMmultiscriptsMixin = function (t) {
            return (function (t) {
              function r() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, s([], i(e), !1)) || this
                return (n.scriptData = null), (n.firstPrescript = 0), n.getScriptData(), n
              }
              return (
                o(r, t),
                (r.prototype.combinePrePost = function (t, e) {
                  var r = new l.BBox(t)
                  return r.combine(e, 0, 0), r
                }),
                (r.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1)
                  var r = this.font.params.scriptspace,
                    n = this.scriptData,
                    o = this.combinePrePost(n.sub, n.psub),
                    s = this.combinePrePost(n.sup, n.psup),
                    a = i(this.getUVQ(o, s), 2),
                    l = a[0],
                    c = a[1]
                  if ((t.empty(), n.numPrescripts && (t.combine(n.psup, r, l), t.combine(n.psub, r, c)), t.append(n.base), n.numScripts)) {
                    var u = t.w
                    t.combine(n.sup, u, l), t.combine(n.sub, u, c), (t.w += r)
                  }
                  t.clean(), this.setChildPWidths(e)
                }),
                (r.prototype.getScriptData = function () {
                  var t = (this.scriptData = { base: null, sub: l.BBox.empty(), sup: l.BBox.empty(), psub: l.BBox.empty(), psup: l.BBox.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)
                }),
                (r.prototype.getScriptBBoxLists = function () {
                  var t,
                    r,
                    n = { base: [], subList: [], supList: [], psubList: [], psupList: [] },
                    o = 'base'
                  try {
                    for (var i = a(this.childNodes), s = i.next(); !s.done; s = i.next()) {
                      var l = s.value
                      l.node.isKind('mprescripts') ? (o = 'psubList') : (n[o].push(l.getOuterBBox()), (o = e.NextScript[o]))
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      s && !s.done && (r = i.return) && r.call(i)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  return (this.firstPrescript = n.subList.length + n.supList.length + 2), this.padLists(n.subList, n.supList), this.padLists(n.psubList, n.psupList), n
                }),
                (r.prototype.padLists = function (t, e) {
                  t.length > e.length && e.push(l.BBox.empty())
                }),
                (r.prototype.combineBBoxLists = function (t, e, r, n) {
                  for (var o = 0; o < r.length; o++) {
                    var s = i(this.getScaledWHD(r[o]), 3),
                      a = s[0],
                      l = s[1],
                      c = s[2],
                      u = i(this.getScaledWHD(n[o]), 3),
                      p = u[0],
                      h = u[1],
                      f = u[2],
                      d = Math.max(a, p)
                    ;(t.w += d), (e.w += d), l > t.h && (t.h = l), c > t.d && (t.d = c), h > e.h && (e.h = h), f > e.d && (e.d = f)
                  }
                }),
                (r.prototype.getScaledWHD = function (t) {
                  var e = t.w,
                    r = t.h,
                    n = t.d,
                    o = t.rscale
                  return [e * o, r * o, n * o]
                }),
                (r.prototype.getUVQ = function (e, r) {
                  var n
                  if (!this.UVQ) {
                    var o = i([0, 0, 0], 3),
                      s = o[0],
                      a = o[1],
                      l = o[2]
                    0 === e.h && 0 === e.d ? (s = this.getU()) : 0 === r.h && 0 === r.d ? (s = -this.getV()) : ((s = (n = i(t.prototype.getUVQ.call(this, e, r), 3))[0]), (a = n[1]), (l = n[2])), (this.UVQ = [s, a, l])
                  }
                  return this.UVQ
                }),
                r
              )
            })(t)
          })
      },
      5023: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMnMixin = void 0),
          (e.CommonMnMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.remapChars = function (t) {
                  if (t.length) {
                    var e = this.font.getRemappedChar('mn', t[0])
                    if (e) {
                      var r = this.unicodeChars(e, this.variant)
                      1 === r.length ? (t[0] = r[0]) : (t = r.concat(t.slice(1)))
                    }
                  }
                  return t
                }),
                e
              )
            })(t)
          })
      },
      7096: function (t, e, r) {
        var n,
          o,
          i =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          s =
            (this && this.__assign) ||
            function () {
              return (
                (s =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                s.apply(this, arguments)
              )
            },
          a =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          l =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          c =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonMoMixin = e.DirectionVH = void 0)
        var u = r(6469),
          p = r(505),
          h = r(5884)
        ;(e.DirectionVH = (((o = {})[1] = 'v'), (o[2] = 'h'), o)),
          (e.CommonMoMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, l([], a(e), !1)) || this
                return (n.size = null), (n.isAccent = n.node.isAccent), n
              }
              return (
                i(e, t),
                (e.prototype.computeBBox = function (t, e) {
                  if ((void 0 === e && (e = !1), this.protoBBox(t), this.node.attributes.get('symmetric') && 2 !== this.stretch.dir)) {
                    var r = this.getCenterOffset(t)
                    ;(t.h += r), (t.d -= r)
                  }
                  this.node.getProperty('mathaccent') && (0 === this.stretch.dir || this.size >= 0) && (t.w = 0)
                }),
                (e.prototype.protoBBox = function (e) {
                  var r = 0 !== this.stretch.dir
                  r && null === this.size && this.getStretchedVariant([0]), (r && this.size < 0) || (t.prototype.computeBBox.call(this, e), this.copySkewIC(e))
                }),
                (e.prototype.getAccentOffset = function () {
                  var t = u.BBox.empty()
                  return this.protoBBox(t), -t.w / 2
                }),
                (e.prototype.getCenterOffset = function (e) {
                  return void 0 === e && (e = null), e || ((e = u.BBox.empty()), t.prototype.computeBBox.call(this, e)), (e.h + e.d) / 2 + this.font.params.axis_height - e.h
                }),
                (e.prototype.getVariant = function () {
                  this.node.attributes.get('largeop')
                    ? (this.variant = this.node.attributes.get('displaystyle') ? '-largeop' : '-smallop')
                    : this.node.attributes.getExplicit('mathvariant') || !1 !== this.node.getProperty('pseudoscript')
                    ? t.prototype.getVariant.call(this)
                    : (this.variant = '-tex-variant')
                }),
                (e.prototype.canStretch = function (t) {
                  if (0 !== this.stretch.dir) return this.stretch.dir === t
                  if (!this.node.attributes.get('stretchy')) return !1
                  var e = this.getText()
                  if (1 !== Array.from(e).length) return !1
                  var r = this.font.getDelimiter(e.codePointAt(0))
                  return (this.stretch = r && r.dir === t ? r : h.NOSTRETCH), 0 !== this.stretch.dir
                }),
                (e.prototype.getStretchedVariant = function (t, e) {
                  var r, n
                  if ((void 0 === e && (e = !1), 0 !== this.stretch.dir)) {
                    var o = this.getWH(t),
                      i = this.getSize('minsize', 0),
                      a = this.getSize('maxsize', 1 / 0),
                      l = this.node.getProperty('mathaccent')
                    o = Math.max(i, Math.min(a, o))
                    var u = this.font.params.delimiterfactor / 1e3,
                      p = this.font.params.delimitershortfall,
                      h = i || e ? o : l ? Math.min(o / u, o + p) : Math.max(o * u, o - p),
                      f = this.stretch,
                      d = f.c || this.getText().codePointAt(0),
                      m = 0
                    if (f.sizes)
                      try {
                        for (var y = c(f.sizes), g = y.next(); !g.done; g = y.next()) {
                          if (g.value >= h) return l && m && m--, (this.variant = this.font.getSizeVariant(d, m)), (this.size = m), void (f.schar && f.schar[m] && (this.stretch = s(s({}, this.stretch), { c: f.schar[m] })))
                          m++
                        }
                      } catch (t) {
                        r = { error: t }
                      } finally {
                        try {
                          g && !g.done && (n = y.return) && n.call(y)
                        } finally {
                          if (r) throw r.error
                        }
                      }
                    f.stretch ? ((this.size = -1), this.invalidateBBox(), this.getStretchBBox(t, this.checkExtendedHeight(o, f), f)) : ((this.variant = this.font.getSizeVariant(d, m - 1)), (this.size = m - 1))
                  }
                }),
                (e.prototype.getSize = function (t, e) {
                  var r = this.node.attributes
                  return r.isSet(t) && (e = this.length2em(r.get(t), 1, 1)), e
                }),
                (e.prototype.getWH = function (t) {
                  if (0 === t.length) return 0
                  if (1 === t.length) return t[0]
                  var e = a(t, 2),
                    r = e[0],
                    n = e[1],
                    o = this.font.params.axis_height
                  return this.node.attributes.get('symmetric') ? 2 * Math.max(r - o, n + o) : r + n
                }),
                (e.prototype.getStretchBBox = function (t, e, r) {
                  var n
                  r.hasOwnProperty('min') && r.min > e && (e = r.min)
                  var o = a(r.HDW, 3),
                    i = o[0],
                    s = o[1],
                    l = o[2]
                  1 === this.stretch.dir ? ((i = (n = a(this.getBaseline(t, e, r), 2))[0]), (s = n[1])) : (l = e), (this.bbox.h = i), (this.bbox.d = s), (this.bbox.w = l)
                }),
                (e.prototype.getBaseline = function (t, e, r) {
                  var n = 2 === t.length && t[0] + t[1] === e,
                    o = this.node.attributes.get('symmetric'),
                    i = a(n ? t : [e, 0], 2),
                    s = i[0],
                    l = i[1],
                    c = a([s + l, 0], 2),
                    u = c[0],
                    p = c[1]
                  if (o) {
                    var h = this.font.params.axis_height
                    n && (u = 2 * Math.max(s - h, l + h)), (p = u / 2 - h)
                  } else if (n) p = l
                  else {
                    var f = a(r.HDW || [0.75, 0.25], 2),
                      d = f[0],
                      m = f[1]
                    p = m * (u / (d + m))
                  }
                  return [u - p, p]
                }),
                (e.prototype.checkExtendedHeight = function (t, e) {
                  if (e.fullExt) {
                    var r = a(e.fullExt, 2),
                      n = r[0],
                      o = r[1]
                    t = o + Math.ceil(Math.max(0, t - o) / n) * n
                  }
                  return t
                }),
                (e.prototype.remapChars = function (t) {
                  var e = this.node.getProperty('primes')
                  if (e) return (0, p.unicodeChars)(e)
                  if (1 === t.length) {
                    var r = this.node.coreParent().parent,
                      n = this.isAccent && !r.isKind('mrow') ? 'accent' : 'mo',
                      o = this.font.getRemappedChar(n, t[0])
                    o && (t = this.unicodeChars(o, this.variant))
                  }
                  return t
                }),
                e
              )
            })(t)
          })
      },
      6898: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMpaddedMixin = void 0),
          (e.CommonMpaddedMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.getDimens = function () {
                  var t = this.node.attributes.getList('width', 'height', 'depth', 'lspace', 'voffset'),
                    e = this.childNodes[0].getBBox(),
                    r = e.w,
                    n = e.h,
                    o = e.d,
                    i = r,
                    s = n,
                    a = o,
                    l = 0,
                    c = 0,
                    u = 0
                  '' !== t.width && (r = this.dimen(t.width, e, 'w', 0)),
                    '' !== t.height && (n = this.dimen(t.height, e, 'h', 0)),
                    '' !== t.depth && (o = this.dimen(t.depth, e, 'd', 0)),
                    '' !== t.voffset && (c = this.dimen(t.voffset, e)),
                    '' !== t.lspace && (l = this.dimen(t.lspace, e))
                  var p = this.node.attributes.get('data-align')
                  return p && (u = this.getAlignX(r, e, p)), [s, a, i, n - s, o - a, r - i, l, c, u]
                }),
                (e.prototype.dimen = function (t, e, r, n) {
                  void 0 === r && (r = ''), void 0 === n && (n = null)
                  var o = (t = String(t)).match(/width|height|depth/),
                    i = o ? e[o[0].charAt(0)] : r ? e[r] : 0,
                    s = this.length2em(t, i) || 0
                  return t.match(/^[-+]/) && r && (s += i), null != n && (s = Math.max(n, s)), s
                }),
                (e.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1)
                  var r = o(this.getDimens(), 6),
                    n = r[0],
                    i = r[1],
                    s = r[2],
                    a = r[3],
                    l = r[4],
                    c = r[5]
                  ;(t.w = s + c), (t.h = n + a), (t.d = i + l), this.setChildPWidths(e, t.w)
                }),
                (e.prototype.getWrapWidth = function (t) {
                  return this.getBBox().w
                }),
                (e.prototype.getChildAlign = function (t) {
                  return this.node.attributes.get('data-align') || 'left'
                }),
                e
              )
            })(t)
          })
      },
      6991: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMrootMixin = void 0),
          (e.CommonMrootMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'surd', {
                  get: function () {
                    return 2
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'root', {
                  get: function () {
                    return 1
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.combineRootBBox = function (t, e, r) {
                  var n = this.childNodes[this.root].getOuterBBox(),
                    o = this.getRootDimens(e, r)[1]
                  t.combine(n, 0, o)
                }),
                (e.prototype.getRootDimens = function (t, e) {
                  var r = this.childNodes[this.surd],
                    n = this.childNodes[this.root].getOuterBBox(),
                    o = (r.size < 0 ? 0.5 : 0.6) * t.w,
                    i = n.w,
                    s = n.rscale,
                    a = Math.max(i, o / s),
                    l = Math.max(0, a - i)
                  return [a * s - o, this.rootHeight(n, t, r.size, e), l]
                }),
                (e.prototype.rootHeight = function (t, e, r, n) {
                  var o = e.h + e.d
                  return (r < 0 ? 1.9 : 0.55 * o) - (o - n) + Math.max(0, t.d * t.rscale)
                }),
                e
              )
            })(t)
          })
      },
      8411: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonInferredMrowMixin = e.CommonMrowMixin = void 0)
        var l = r(6469)
        ;(e.CommonMrowMixin = function (t) {
          return (function (t) {
            function e() {
              for (var e, r, n = [], o = 0; o < arguments.length; o++) n[o] = arguments[o]
              var c = t.apply(this, s([], i(n), !1)) || this
              c.stretchChildren()
              try {
                for (var u = a(c.childNodes), p = u.next(); !p.done; p = u.next()) {
                  var h = p.value
                  if (h.bbox.pwidth) {
                    c.bbox.pwidth = l.BBox.fullWidth
                    break
                  }
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  p && !p.done && (r = u.return) && r.call(u)
                } finally {
                  if (e) throw e.error
                }
              }
              return c
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'fixesPWidth', {
                get: function () {
                  return !1
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.stretchChildren = function () {
                var t,
                  e,
                  r,
                  n,
                  o,
                  i,
                  s = []
                try {
                  for (var l = a(this.childNodes), c = l.next(); !c.done; c = l.next()) {
                    ;(x = c.value).canStretch(1) && s.push(x)
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    c && !c.done && (e = l.return) && e.call(l)
                  } finally {
                    if (t) throw t.error
                  }
                }
                var u = s.length,
                  p = this.childNodes.length
                if (u && p > 1) {
                  var h = 0,
                    f = 0,
                    d = u > 1 && u === p
                  try {
                    for (var m = a(this.childNodes), y = m.next(); !y.done; y = m.next()) {
                      var g = 0 === (x = y.value).stretch.dir
                      if (d || g) {
                        var b = x.getOuterBBox(g),
                          v = b.h,
                          _ = b.d,
                          S = b.rscale
                        ;(v *= S) > h && (h = v), (_ *= S) > f && (f = _)
                      }
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      y && !y.done && (n = m.return) && n.call(m)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                  try {
                    for (var M = a(s), O = M.next(); !O.done; O = M.next()) {
                      var x
                      ;(x = O.value).coreMO().getStretchedVariant([h, f])
                    }
                  } catch (t) {
                    o = { error: t }
                  } finally {
                    try {
                      O && !O.done && (i = M.return) && i.call(M)
                    } finally {
                      if (o) throw o.error
                    }
                  }
                }
              }),
              e
            )
          })(t)
        }),
          (e.CommonInferredMrowMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                o(e, t),
                (e.prototype.getScale = function () {
                  ;(this.bbox.scale = this.parent.bbox.scale), (this.bbox.rscale = 1)
                }),
                e
              )
            })(t)
          })
      },
      4126: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMsMixin = void 0),
          (e.CommonMsMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this,
                  s = n.node.attributes,
                  a = s.getList('lquote', 'rquote')
                return (
                  'monospace' !== n.variant && (s.isSet('lquote') || '"' !== a.lquote || (a.lquote = '\u201c'), s.isSet('rquote') || '"' !== a.rquote || (a.rquote = '\u201d')),
                  n.childNodes.unshift(n.createText(a.lquote)),
                  n.childNodes.push(n.createText(a.rquote)),
                  n
                )
              }
              return (
                n(e, t),
                (e.prototype.createText = function (t) {
                  var e = this.wrap(this.mmlText(t))
                  return (e.parent = this), e
                }),
                e
              )
            })(t)
          })
      },
      258: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMspaceMixin = void 0),
          (e.CommonMspaceMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1)
                  var r = this.node.attributes
                  ;(t.w = this.length2em(r.get('width'), 0)), (t.h = this.length2em(r.get('height'), 0)), (t.d = this.length2em(r.get('depth'), 0))
                }),
                (e.prototype.handleVariant = function () {}),
                e
              )
            })(t)
          })
      },
      4093: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonMsqrtMixin = void 0)
        var a = r(6469)
        e.CommonMsqrtMixin = function (t) {
          return (function (t) {
            function e() {
              for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
              var n = t.apply(this, s([], i(e), !1)) || this,
                o = n.createMo('\u221a')
              o.canStretch(1)
              var a = n.childNodes[n.base].getOuterBBox(),
                l = a.h,
                c = a.d,
                u = n.font.params.rule_thickness,
                p = n.node.attributes.get('displaystyle') ? n.font.params.x_height : u
              return (n.surdH = l + c + 2 * u + p / 4), o.getStretchedVariant([n.surdH - c, c], !0), n
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'base', {
                get: function () {
                  return 0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'surd', {
                get: function () {
                  return 1
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'root', {
                get: function () {
                  return null
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.createMo = function (e) {
                var r = t.prototype.createMo.call(this, e)
                return this.childNodes.push(r), r
              }),
              (e.prototype.computeBBox = function (t, e) {
                void 0 === e && (e = !1)
                var r = this.childNodes[this.surd].getBBox(),
                  n = new a.BBox(this.childNodes[this.base].getOuterBBox()),
                  o = this.getPQ(r)[1],
                  s = this.font.params.rule_thickness,
                  l = n.h + o + s,
                  c = i(this.getRootDimens(r, l), 1)[0]
                ;(t.h = l + s), this.combineRootBBox(t, r, l), t.combine(r, c, l - r.h), t.combine(n, c + r.w, 0), t.clean(), this.setChildPWidths(e)
              }),
              (e.prototype.combineRootBBox = function (t, e, r) {}),
              (e.prototype.getPQ = function (t) {
                var e = this.font.params.rule_thickness,
                  r = this.node.attributes.get('displaystyle') ? this.font.params.x_height : e
                return [r, t.h + t.d > this.surdH ? (t.h + t.d - (this.surdH - 2 * e - r / 2)) / 2 : e + r / 4]
              }),
              (e.prototype.getRootDimens = function (t, e) {
                return [0, 0, 0, 0]
              }),
              e
            )
          })(t)
        }
      },
      905: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMsubsupMixin = e.CommonMsupMixin = e.CommonMsubMixin = void 0),
          (e.CommonMsubMixin = function (t) {
            var e
            return (
              (e = (function (t) {
                function e() {
                  return (null !== t && t.apply(this, arguments)) || this
                }
                return (
                  n(e, t),
                  Object.defineProperty(e.prototype, 'scriptChild', {
                    get: function () {
                      return this.childNodes[this.node.sub]
                    },
                    enumerable: !1,
                    configurable: !0
                  }),
                  (e.prototype.getOffset = function () {
                    return [0, -this.getV()]
                  }),
                  e
                )
              })(t)),
              (e.useIC = !1),
              e
            )
          }),
          (e.CommonMsupMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'scriptChild', {
                  get: function () {
                    return this.childNodes[this.node.sup]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.getOffset = function () {
                  return [this.getAdjustedIc() - (this.baseRemoveIc ? 0 : this.baseIc), this.getU()]
                }),
                e
              )
            })(t)
          }),
          (e.CommonMsubsupMixin = function (t) {
            var e
            return (
              (e = (function (t) {
                function e() {
                  var e = (null !== t && t.apply(this, arguments)) || this
                  return (e.UVQ = null), e
                }
                return (
                  n(e, t),
                  Object.defineProperty(e.prototype, 'subChild', {
                    get: function () {
                      return this.childNodes[this.node.sub]
                    },
                    enumerable: !1,
                    configurable: !0
                  }),
                  Object.defineProperty(e.prototype, 'supChild', {
                    get: function () {
                      return this.childNodes[this.node.sup]
                    },
                    enumerable: !1,
                    configurable: !0
                  }),
                  (e.prototype.computeBBox = function (t, e) {
                    void 0 === e && (e = !1)
                    var r = this.baseChild.getOuterBBox(),
                      n = o([this.subChild.getOuterBBox(), this.supChild.getOuterBBox()], 2),
                      i = n[0],
                      s = n[1]
                    t.empty(), t.append(r)
                    var a = this.getBaseWidth(),
                      l = this.getAdjustedIc(),
                      c = o(this.getUVQ(), 2),
                      u = c[0],
                      p = c[1]
                    t.combine(i, a, p), t.combine(s, a + l, u), (t.w += this.font.params.scriptspace), t.clean(), this.setChildPWidths(e)
                  }),
                  (e.prototype.getUVQ = function (t, e) {
                    void 0 === t && (t = this.subChild.getOuterBBox()), void 0 === e && (e = this.supChild.getOuterBBox())
                    var r = this.baseCore.getOuterBBox()
                    if (this.UVQ) return this.UVQ
                    var n = this.font.params,
                      i = 3 * n.rule_thickness,
                      s = this.length2em(this.node.attributes.get('subscriptshift'), n.sub2),
                      a = this.baseCharZero(r.d * this.baseScale + n.sub_drop * t.rscale),
                      l = o([this.getU(), Math.max(a, s)], 2),
                      c = l[0],
                      u = l[1],
                      p = c - e.d * e.rscale - (t.h * t.rscale - u)
                    if (p < i) {
                      u += i - p
                      var h = 0.8 * n.x_height - (c - e.d * e.rscale)
                      h > 0 && ((c += h), (u -= h))
                    }
                    return (
                      (c = Math.max(this.length2em(this.node.attributes.get('superscriptshift'), c), c)),
                      (u = Math.max(this.length2em(this.node.attributes.get('subscriptshift'), u), u)),
                      (p = c - e.d * e.rscale - (t.h * t.rscale - u)),
                      (this.UVQ = [c, -u, p]),
                      this.UVQ
                    )
                  }),
                  e
                )
              })(t)),
              (e.useIC = !1),
              e
            )
          })
      },
      6237: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonMtableMixin = void 0)
        var l = r(6469),
          c = r(505),
          u = r(7875)
        e.CommonMtableMixin = function (t) {
          return (function (t) {
            function e() {
              for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
              var n = t.apply(this, s([], i(e), !1)) || this
              ;(n.numCols = 0),
                (n.numRows = 0),
                (n.data = null),
                (n.pwidthCells = []),
                (n.pWidth = 0),
                (n.numCols = (0, u.max)(
                  n.tableRows.map(function (t) {
                    return t.numCells
                  })
                )),
                (n.numRows = n.childNodes.length),
                (n.hasLabels = n.childNodes.reduce(function (t, e) {
                  return t || e.node.isKind('mlabeledtr')
                }, !1)),
                n.findContainer(),
                (n.isTop = !n.container || (n.container.node.isKind('math') && !n.container.parent)),
                n.isTop && (n.jax.table = n),
                n.getPercentageWidth()
              var o = n.node.attributes
              return (
                (n.frame = 'none' !== o.get('frame')),
                (n.fLine = n.frame && o.get('frame') ? 0.07 : 0),
                (n.fSpace = n.frame ? n.convertLengths(n.getAttributeArray('framespacing')) : [0, 0]),
                (n.cSpace = n.convertLengths(n.getColumnAttributes('columnspacing'))),
                (n.rSpace = n.convertLengths(n.getRowAttributes('rowspacing'))),
                (n.cLines = n.getColumnAttributes('columnlines').map(function (t) {
                  return 'none' === t ? 0 : 0.07
                })),
                (n.rLines = n.getRowAttributes('rowlines').map(function (t) {
                  return 'none' === t ? 0 : 0.07
                })),
                (n.cWidths = n.getColumnWidths()),
                n.stretchRows(),
                n.stretchColumns(),
                n
              )
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'tableRows', {
                get: function () {
                  return this.childNodes
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.findContainer = function () {
                for (var t = this, e = t.parent; e && (e.node.notParent || e.node.isKind('mrow')); ) (t = e), (e = e.parent)
                ;(this.container = e), (this.containerI = t.node.childPosition())
              }),
              (e.prototype.getPercentageWidth = function () {
                if (this.hasLabels) this.bbox.pwidth = l.BBox.fullWidth
                else {
                  var t = this.node.attributes.get('width')
                  ;(0, c.isPercent)(t) && (this.bbox.pwidth = t)
                }
              }),
              (e.prototype.stretchRows = function () {
                for (var t = this.node.attributes.get('equalrows'), e = t ? this.getEqualRowHeight() : 0, r = t ? this.getTableData() : { H: [0], D: [0] }, n = r.H, o = r.D, i = this.tableRows, s = 0; s < this.numRows; s++) {
                  var a = t ? [(e + n[s] - o[s]) / 2, (e - n[s] + o[s]) / 2] : null
                  i[s].stretchChildren(a)
                }
              }),
              (e.prototype.stretchColumns = function () {
                for (var t = 0; t < this.numCols; t++) {
                  var e = 'number' == typeof this.cWidths[t] ? this.cWidths[t] : null
                  this.stretchColumn(t, e)
                }
              }),
              (e.prototype.stretchColumn = function (t, e) {
                var r,
                  n,
                  o,
                  i,
                  s,
                  l,
                  c = []
                try {
                  for (var u = a(this.tableRows), p = u.next(); !p.done; p = u.next()) {
                    if ((g = p.value.getChild(t))) 0 === (M = g.childNodes[0]).stretch.dir && M.canStretch(2) && c.push(M)
                  }
                } catch (t) {
                  r = { error: t }
                } finally {
                  try {
                    p && !p.done && (n = u.return) && n.call(u)
                  } finally {
                    if (r) throw r.error
                  }
                }
                var h = c.length,
                  f = this.childNodes.length
                if (h && f > 1) {
                  if (null === e) {
                    e = 0
                    var d = h > 1 && h === f
                    try {
                      for (var m = a(this.tableRows), y = m.next(); !y.done; y = m.next()) {
                        var g
                        if ((g = y.value.getChild(t))) {
                          var b = 0 === (M = g.childNodes[0]).stretch.dir
                          if (d || b) {
                            var v = M.getBBox(b).w
                            v > e && (e = v)
                          }
                        }
                      }
                    } catch (t) {
                      o = { error: t }
                    } finally {
                      try {
                        y && !y.done && (i = m.return) && i.call(m)
                      } finally {
                        if (o) throw o.error
                      }
                    }
                  }
                  try {
                    for (var _ = a(c), S = _.next(); !S.done; S = _.next()) {
                      var M
                      ;(M = S.value).coreMO().getStretchedVariant([e])
                    }
                  } catch (t) {
                    s = { error: t }
                  } finally {
                    try {
                      S && !S.done && (l = _.return) && l.call(_)
                    } finally {
                      if (s) throw s.error
                    }
                  }
                }
              }),
              (e.prototype.getTableData = function () {
                if (this.data) return this.data
                for (var t = new Array(this.numRows).fill(0), e = new Array(this.numRows).fill(0), r = new Array(this.numCols).fill(0), n = new Array(this.numRows), o = new Array(this.numRows), i = [0], s = this.tableRows, a = 0; a < s.length; a++) {
                  for (var l = 0, c = s[a], u = c.node.attributes.get('rowalign'), p = 0; p < c.numCells; p++) {
                    var h = c.getChild(p)
                    ;(l = this.updateHDW(h, p, a, u, t, e, r, l)), this.recordPWidthCell(h, p)
                  }
                  ;(n[a] = t[a]), (o[a] = e[a]), c.labeled && (l = this.updateHDW(c.childNodes[0], 0, a, u, t, e, i, l)), this.extendHD(a, t, e, l), this.extendHD(a, n, o, l)
                }
                var f = i[0]
                return (this.data = { H: t, D: e, W: r, NH: n, ND: o, L: f }), this.data
              }),
              (e.prototype.updateHDW = function (t, e, r, n, o, i, s, a) {
                var l = t.getBBox(),
                  c = l.h,
                  u = l.d,
                  p = l.w,
                  h = t.parent.bbox.rscale
                1 !== t.parent.bbox.rscale && ((c *= h), (u *= h), (p *= h)), this.node.getProperty('useHeight') && (c < 0.75 && (c = 0.75), u < 0.25 && (u = 0.25))
                var f = 0
                return 'baseline' !== (n = t.node.attributes.get('rowalign') || n) && 'axis' !== n && ((f = c + u), (c = u = 0)), c > o[r] && (o[r] = c), u > i[r] && (i[r] = u), f > a && (a = f), s && p > s[e] && (s[e] = p), a
              }),
              (e.prototype.extendHD = function (t, e, r, n) {
                var o = (n - (e[t] + r[t])) / 2
                o < 1e-5 || ((e[t] += o), (r[t] += o))
              }),
              (e.prototype.recordPWidthCell = function (t, e) {
                t.childNodes[0] && t.childNodes[0].getBBox().pwidth && this.pwidthCells.push([t, e])
              }),
              (e.prototype.computeBBox = function (t, e) {
                void 0 === e && (e = !1)
                var r,
                  n,
                  o = this.getTableData(),
                  s = o.H,
                  a = o.D
                if (this.node.attributes.get('equalrows')) {
                  var l = this.getEqualRowHeight()
                  r = (0, u.sum)([].concat(this.rLines, this.rSpace)) + l * this.numRows
                } else r = (0, u.sum)(s.concat(a, this.rLines, this.rSpace))
                r += 2 * (this.fLine + this.fSpace[1])
                var p = this.getComputedWidths()
                n = (0, u.sum)(p.concat(this.cLines, this.cSpace)) + 2 * (this.fLine + this.fSpace[0])
                var h = this.node.attributes.get('width')
                'auto' !== h && (n = Math.max(this.length2em(h, 0) + 2 * this.fLine, n))
                var f = i(this.getBBoxHD(r), 2),
                  d = f[0],
                  m = f[1]
                ;(t.h = d), (t.d = m), (t.w = n)
                var y = i(this.getBBoxLR(), 2),
                  g = y[0],
                  b = y[1]
                ;(t.L = g), (t.R = b), (0, c.isPercent)(h) || this.setColumnPWidths()
              }),
              (e.prototype.setChildPWidths = function (t, e, r) {
                var n = this.node.attributes.get('width')
                if (!(0, c.isPercent)(n)) return !1
                this.hasLabels || ((this.bbox.pwidth = ''), (this.container.bbox.pwidth = ''))
                var o = this.bbox,
                  i = o.w,
                  s = o.L,
                  a = o.R,
                  l = this.node.attributes.get('data-width-includes-label'),
                  p = Math.max(i, this.length2em(n, Math.max(e, s + i + a))) - (l ? s + a : 0),
                  h = this.node.attributes.get('equalcolumns') ? Array(this.numCols).fill(this.percent(1 / Math.max(1, this.numCols))) : this.getColumnAttributes('columnwidth', 0)
                this.cWidths = this.getColumnWidthsFixed(h, p)
                var f = this.getComputedWidths()
                return (this.pWidth = (0, u.sum)(f.concat(this.cLines, this.cSpace)) + 2 * (this.fLine + this.fSpace[0])), this.isTop && (this.bbox.w = this.pWidth), this.setColumnPWidths(), this.pWidth !== i && this.parent.invalidateBBox(), this.pWidth !== i
              }),
              (e.prototype.setColumnPWidths = function () {
                var t,
                  e,
                  r = this.cWidths
                try {
                  for (var n = a(this.pwidthCells), o = n.next(); !o.done; o = n.next()) {
                    var s = i(o.value, 2),
                      l = s[0],
                      c = s[1]
                    l.setChildPWidths(!1, r[c]) && (l.invalidateBBox(), l.getBBox())
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.getBBoxHD = function (t) {
                var e = i(this.getAlignmentRow(), 2),
                  r = e[0],
                  n = e[1]
                if (null === n) {
                  var o = this.font.params.axis_height,
                    s = t / 2
                  return { top: [0, t], center: [s, s], bottom: [t, 0], baseline: [s, s], axis: [s + o, s - o] }[r] || [s, s]
                }
                var a = this.getVerticalPosition(n, r)
                return [a, t - a]
              }),
              (e.prototype.getBBoxLR = function () {
                if (this.hasLabels) {
                  var t = this.node.attributes,
                    e = t.get('side'),
                    r = i(this.getPadAlignShift(e), 2),
                    n = r[0],
                    o = r[1],
                    s = this.hasLabels && !!t.get('data-width-includes-label')
                  return s && this.frame && this.fSpace[0] && (n -= this.fSpace[0]), 'center' !== o || s ? ('left' === e ? [n, 0] : [0, n]) : [n, n]
                }
                return [0, 0]
              }),
              (e.prototype.getPadAlignShift = function (t) {
                var e = this.getTableData().L + this.length2em(this.node.attributes.get('minlabelspacing')),
                  r = i(null == this.styles ? ['', ''] : [this.styles.get('padding-left'), this.styles.get('padding-right')], 2),
                  n = r[0],
                  o = r[1]
                ;(n || o) && (e = Math.max(e, this.length2em(n || '0'), this.length2em(o || '0')))
                var s = i(this.getAlignShift(), 2),
                  a = s[0],
                  l = s[1]
                return a === t && (l = 'left' === t ? Math.max(e, l) - e : Math.min(-e, l) + e), [e, a, l]
              }),
              (e.prototype.getAlignShift = function () {
                return this.isTop ? t.prototype.getAlignShift.call(this) : [this.container.getChildAlign(this.containerI), 0]
              }),
              (e.prototype.getWidth = function () {
                return this.pWidth || this.getBBox().w
              }),
              (e.prototype.getEqualRowHeight = function () {
                var t = this.getTableData(),
                  e = t.H,
                  r = t.D,
                  n = Array.from(e.keys()).map(function (t) {
                    return e[t] + r[t]
                  })
                return Math.max.apply(Math, n)
              }),
              (e.prototype.getComputedWidths = function () {
                var t = this,
                  e = this.getTableData().W,
                  r = Array.from(e.keys()).map(function (r) {
                    return 'number' == typeof t.cWidths[r] ? t.cWidths[r] : e[r]
                  })
                return this.node.attributes.get('equalcolumns') && (r = Array(r.length).fill((0, u.max)(r))), r
              }),
              (e.prototype.getColumnWidths = function () {
                var t = this.node.attributes.get('width')
                if (this.node.attributes.get('equalcolumns')) return this.getEqualColumns(t)
                var e = this.getColumnAttributes('columnwidth', 0)
                return 'auto' === t ? this.getColumnWidthsAuto(e) : (0, c.isPercent)(t) ? this.getColumnWidthsPercent(e) : this.getColumnWidthsFixed(e, this.length2em(t))
              }),
              (e.prototype.getEqualColumns = function (t) {
                var e,
                  r = Math.max(1, this.numCols)
                if ('auto' === t) {
                  var n = this.getTableData().W
                  e = (0, u.max)(n)
                } else if ((0, c.isPercent)(t)) e = this.percent(1 / r)
                else {
                  var o = (0, u.sum)([].concat(this.cLines, this.cSpace)) + 2 * this.fSpace[0]
                  e = Math.max(0, this.length2em(t) - o) / r
                }
                return Array(this.numCols).fill(e)
              }),
              (e.prototype.getColumnWidthsAuto = function (t) {
                var e = this
                return t.map(function (t) {
                  return 'auto' === t || 'fit' === t ? null : (0, c.isPercent)(t) ? t : e.length2em(t)
                })
              }),
              (e.prototype.getColumnWidthsPercent = function (t) {
                var e = this,
                  r = t.indexOf('fit') >= 0,
                  n = (r ? this.getTableData() : { W: null }).W
                return Array.from(t.keys()).map(function (o) {
                  var i = t[o]
                  return 'fit' === i ? null : 'auto' === i ? (r ? n[o] : null) : (0, c.isPercent)(i) ? i : e.length2em(i)
                })
              }),
              (e.prototype.getColumnWidthsFixed = function (t, e) {
                var r = this,
                  n = Array.from(t.keys()),
                  o = n.filter(function (e) {
                    return 'fit' === t[e]
                  }),
                  i = n.filter(function (e) {
                    return 'auto' === t[e]
                  }),
                  s = o.length || i.length,
                  a = (s ? this.getTableData() : { W: null }).W,
                  l = e - (0, u.sum)([].concat(this.cLines, this.cSpace)) - 2 * this.fSpace[0],
                  c = l
                n.forEach(function (e) {
                  var n = t[e]
                  c -= 'fit' === n || 'auto' === n ? a[e] : r.length2em(n, l)
                })
                var p = s && c > 0 ? c / s : 0
                return n.map(function (e) {
                  var n = t[e]
                  return 'fit' === n ? a[e] + p : 'auto' === n ? a[e] + (0 === o.length ? p : 0) : r.length2em(n, l)
                })
              }),
              (e.prototype.getVerticalPosition = function (t, e) {
                for (var r = this.node.attributes.get('equalrows'), n = this.getTableData(), o = n.H, s = n.D, a = r ? this.getEqualRowHeight() : 0, l = this.getRowHalfSpacing(), c = this.fLine, u = 0; u < t; u++)
                  c += l[u] + (r ? a : o[u] + s[u]) + l[u + 1] + this.rLines[u]
                var p = i(r ? [(a + o[t] - s[t]) / 2, (a - o[t] + s[t]) / 2] : [o[t], s[t]], 2),
                  h = p[0],
                  f = p[1]
                return (c += { top: 0, center: l[t] + (h + f) / 2, bottom: l[t] + h + f + l[t + 1], baseline: l[t] + h, axis: l[t] + h - 0.25 }[e] || 0)
              }),
              (e.prototype.getEmHalfSpacing = function (t, e, r) {
                void 0 === r && (r = 1)
                var n = this.em(t * r),
                  o = this.addEm(e, 2 / r)
                return o.unshift(n), o.push(n), o
              }),
              (e.prototype.getRowHalfSpacing = function () {
                var t = this.rSpace.map(function (t) {
                  return t / 2
                })
                return t.unshift(this.fSpace[1]), t.push(this.fSpace[1]), t
              }),
              (e.prototype.getColumnHalfSpacing = function () {
                var t = this.cSpace.map(function (t) {
                  return t / 2
                })
                return t.unshift(this.fSpace[0]), t.push(this.fSpace[0]), t
              }),
              (e.prototype.getAlignmentRow = function () {
                var t = i((0, c.split)(this.node.attributes.get('align')), 2),
                  e = t[0],
                  r = t[1]
                if (null == r) return [e, null]
                var n = parseInt(r)
                return n < 0 && (n += this.numRows + 1), [e, n < 1 || n > this.numRows ? null : n - 1]
              }),
              (e.prototype.getColumnAttributes = function (t, e) {
                void 0 === e && (e = 1)
                var r = this.numCols - e,
                  n = this.getAttributeArray(t)
                if (0 === n.length) return null
                for (; n.length < r; ) n.push(n[n.length - 1])
                return n.length > r && n.splice(r), n
              }),
              (e.prototype.getRowAttributes = function (t, e) {
                void 0 === e && (e = 1)
                var r = this.numRows - e,
                  n = this.getAttributeArray(t)
                if (0 === n.length) return null
                for (; n.length < r; ) n.push(n[n.length - 1])
                return n.length > r && n.splice(r), n
              }),
              (e.prototype.getAttributeArray = function (t) {
                var e = this.node.attributes.get(t)
                return e ? (0, c.split)(e) : [this.node.attributes.getDefault(t)]
              }),
              (e.prototype.addEm = function (t, e) {
                var r = this
                return (
                  void 0 === e && (e = 1),
                  t
                    ? t.map(function (t) {
                        return r.em(t / e)
                      })
                    : null
                )
              }),
              (e.prototype.convertLengths = function (t) {
                var e = this
                return t
                  ? t.map(function (t) {
                      return e.length2em(t)
                    })
                  : null
              }),
              e
            )
          })(t)
        }
      },
      5164: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMtdMixin = void 0),
          (e.CommonMtdMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'fixesPWidth', {
                  get: function () {
                    return !1
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.invalidateBBox = function () {
                  this.bboxComputed = !1
                }),
                (e.prototype.getWrapWidth = function (t) {
                  var e = this.parent.parent,
                    r = this.parent,
                    n = this.node.childPosition() - (r.labeled ? 1 : 0)
                  return 'number' == typeof e.cWidths[n] ? e.cWidths[n] : e.getTableData().W[n]
                }),
                (e.prototype.getChildAlign = function (t) {
                  return this.node.attributes.get('columnalign')
                }),
                e
              )
            })(t)
          })
      },
      6319: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMtextMixin = void 0),
          (e.CommonMtextMixin = function (t) {
            var e
            return (
              (e = (function (t) {
                function e() {
                  return (null !== t && t.apply(this, arguments)) || this
                }
                return (
                  n(e, t),
                  (e.prototype.getVariant = function () {
                    var e = this.jax.options,
                      r = this.jax.math.outputData,
                      n = (!!r.merrorFamily || !!e.merrorFont) && this.node.Parent.isKind('merror')
                    if (r.mtextFamily || e.mtextFont || n) {
                      var o = this.node.attributes.get('mathvariant'),
                        i = this.constructor.INHERITFONTS[o] || this.jax.font.getCssFont(o),
                        s = i[0] || (n ? r.merrorFamily || e.merrorFont : r.mtextFamily || e.mtextFont)
                      this.variant = this.explicitVariant(s, i[2] ? 'bold' : '', i[1] ? 'italic' : '')
                    } else t.prototype.getVariant.call(this)
                  }),
                  e
                )
              })(t)),
              (e.INHERITFONTS = { normal: ['', !1, !1], bold: ['', !1, !0], italic: ['', !0, !1], 'bold-italic': ['', !0, !0] }),
              e
            )
          })
      },
      5766: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMlabeledtrMixin = e.CommonMtrMixin = void 0),
          (e.CommonMtrMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'fixesPWidth', {
                  get: function () {
                    return !1
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'numCells', {
                  get: function () {
                    return this.childNodes.length
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'labeled', {
                  get: function () {
                    return !1
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'tableCells', {
                  get: function () {
                    return this.childNodes
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.getChild = function (t) {
                  return this.childNodes[t]
                }),
                (e.prototype.getChildBBoxes = function () {
                  return this.childNodes.map(function (t) {
                    return t.getBBox()
                  })
                }),
                (e.prototype.stretchChildren = function (t) {
                  var e, r, n, i, s, a
                  void 0 === t && (t = null)
                  var l = [],
                    c = this.labeled ? this.childNodes.slice(1) : this.childNodes
                  try {
                    for (var u = o(c), p = u.next(); !p.done; p = u.next()) {
                      ;(E = p.value.childNodes[0]).canStretch(1) && l.push(E)
                    }
                  } catch (t) {
                    e = { error: t }
                  } finally {
                    try {
                      p && !p.done && (r = u.return) && r.call(u)
                    } finally {
                      if (e) throw e.error
                    }
                  }
                  var h = l.length,
                    f = this.childNodes.length
                  if (h && f > 1) {
                    if (null === t) {
                      var d = 0,
                        m = 0,
                        y = h > 1 && h === f
                      try {
                        for (var g = o(c), b = g.next(); !b.done; b = g.next()) {
                          var v = 0 === (E = b.value.childNodes[0]).stretch.dir
                          if (y || v) {
                            var _ = E.getBBox(v),
                              S = _.h,
                              M = _.d
                            S > d && (d = S), M > m && (m = M)
                          }
                        }
                      } catch (t) {
                        n = { error: t }
                      } finally {
                        try {
                          b && !b.done && (i = g.return) && i.call(g)
                        } finally {
                          if (n) throw n.error
                        }
                      }
                      t = [d, m]
                    }
                    try {
                      for (var O = o(l), x = O.next(); !x.done; x = O.next()) {
                        var E
                        ;(E = x.value).coreMO().getStretchedVariant(t)
                      }
                    } catch (t) {
                      s = { error: t }
                    } finally {
                      try {
                        x && !x.done && (a = O.return) && a.call(O)
                      } finally {
                        if (s) throw s.error
                      }
                    }
                  }
                }),
                e
              )
            })(t)
          }),
          (e.CommonMlabeledtrMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'numCells', {
                  get: function () {
                    return Math.max(0, this.childNodes.length - 1)
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'labeled', {
                  get: function () {
                    return !0
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'tableCells', {
                  get: function () {
                    return this.childNodes.slice(1)
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.getChild = function (t) {
                  return this.childNodes[t + 1]
                }),
                (e.prototype.getChildBBoxes = function () {
                  return this.childNodes.slice(1).map(function (t) {
                    return t.getBBox()
                  })
                }),
                e
              )
            })(t)
          })
      },
      1971: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonMunderoverMixin = e.CommonMoverMixin = e.CommonMunderMixin = void 0),
          (e.CommonMunderMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this
                return n.stretchChildren(), n
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'scriptChild', {
                  get: function () {
                    return this.childNodes[this.node.under]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.computeBBox = function (e, r) {
                  if ((void 0 === r && (r = !1), this.hasMovableLimits())) t.prototype.computeBBox.call(this, e, r)
                  else {
                    e.empty()
                    var n = this.baseChild.getOuterBBox(),
                      i = this.scriptChild.getOuterBBox(),
                      s = this.getUnderKV(n, i)[1],
                      a = this.isLineBelow ? 0 : this.getDelta(!0),
                      l = o(this.getDeltaW([n, i], [0, -a]), 2),
                      c = l[0],
                      u = l[1]
                    e.combine(n, c, 0), e.combine(i, u, s), (e.d += this.font.params.big_op_spacing5), e.clean(), this.setChildPWidths(r)
                  }
                }),
                e
              )
            })(t)
          }),
          (e.CommonMoverMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this
                return n.stretchChildren(), n
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'scriptChild', {
                  get: function () {
                    return this.childNodes[this.node.over]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.computeBBox = function (e) {
                  if (this.hasMovableLimits()) t.prototype.computeBBox.call(this, e)
                  else {
                    e.empty()
                    var r = this.baseChild.getOuterBBox(),
                      n = this.scriptChild.getOuterBBox()
                    this.node.attributes.get('accent') && (r.h = Math.max(r.h, this.font.params.x_height * r.scale))
                    var i = this.getOverKU(r, n)[1],
                      s = this.isLineAbove ? 0 : this.getDelta(),
                      a = o(this.getDeltaW([r, n], [0, s]), 2),
                      l = a[0],
                      c = a[1]
                    e.combine(r, l, 0), e.combine(n, c, i), (e.h += this.font.params.big_op_spacing5), e.clean()
                  }
                }),
                e
              )
            })(t)
          }),
          (e.CommonMunderoverMixin = function (t) {
            return (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, i([], o(e), !1)) || this
                return n.stretchChildren(), n
              }
              return (
                n(e, t),
                Object.defineProperty(e.prototype, 'underChild', {
                  get: function () {
                    return this.childNodes[this.node.under]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'overChild', {
                  get: function () {
                    return this.childNodes[this.node.over]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'subChild', {
                  get: function () {
                    return this.underChild
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'supChild', {
                  get: function () {
                    return this.overChild
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.computeBBox = function (e) {
                  if (this.hasMovableLimits()) t.prototype.computeBBox.call(this, e)
                  else {
                    e.empty()
                    var r = this.overChild.getOuterBBox(),
                      n = this.baseChild.getOuterBBox(),
                      i = this.underChild.getOuterBBox()
                    this.node.attributes.get('accent') && (n.h = Math.max(n.h, this.font.params.x_height * n.scale))
                    var s = this.getOverKU(n, r)[1],
                      a = this.getUnderKV(n, i)[1],
                      l = this.getDelta(),
                      c = o(this.getDeltaW([n, i, r], [0, this.isLineBelow ? 0 : -l, this.isLineAbove ? 0 : l]), 3),
                      u = c[0],
                      p = c[1],
                      h = c[2]
                    e.combine(n, u, 0), e.combine(r, h, s), e.combine(i, p, a)
                    var f = this.font.params.big_op_spacing5
                    ;(e.h += f), (e.d += f), e.clean()
                  }
                }),
                e
              )
            })(t)
          })
      },
      167: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          a =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CommonScriptbaseMixin = void 0)
        var l = r(9007)
        e.CommonScriptbaseMixin = function (t) {
          var e
          return (
            (e = (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, s([], i(e), !1)) || this
                ;(n.baseScale = 1), (n.baseIc = 0), (n.baseRemoveIc = !1), (n.baseIsChar = !1), (n.baseHasAccentOver = null), (n.baseHasAccentUnder = null), (n.isLineAbove = !1), (n.isLineBelow = !1), (n.isMathAccent = !1)
                var o = (n.baseCore = n.getBaseCore())
                return o
                  ? (n.setBaseAccentsFor(o),
                    (n.baseScale = n.getBaseScale()),
                    (n.baseIc = n.getBaseIc()),
                    (n.baseIsChar = n.isCharBase()),
                    (n.isMathAccent = n.baseIsChar && n.scriptChild && !!n.scriptChild.coreMO().node.getProperty('mathaccent')),
                    n.checkLineAccents(),
                    (n.baseRemoveIc = !n.isLineAbove && !n.isLineBelow && (!n.constructor.useIC || n.isMathAccent)),
                    n)
                  : n
              }
              return (
                o(e, t),
                Object.defineProperty(e.prototype, 'baseChild', {
                  get: function () {
                    return this.childNodes[this.node.base]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                Object.defineProperty(e.prototype, 'scriptChild', {
                  get: function () {
                    return this.childNodes[1]
                  },
                  enumerable: !1,
                  configurable: !0
                }),
                (e.prototype.getBaseCore = function () {
                  for (
                    var t = this.getSemanticBase() || this.childNodes[0];
                    t &&
                    ((1 === t.childNodes.length &&
                      (t.node.isKind('mrow') || (t.node.isKind('TeXAtom') && t.node.texClass !== l.TEXCLASS.VCENTER) || t.node.isKind('mstyle') || t.node.isKind('mpadded') || t.node.isKind('mphantom') || t.node.isKind('semantics'))) ||
                      (t.node.isKind('munderover') && t.isMathAccent));

                  )
                    this.setBaseAccentsFor(t), (t = t.childNodes[0])
                  return t || (this.baseHasAccentOver = this.baseHasAccentUnder = !1), t || this.childNodes[0]
                }),
                (e.prototype.setBaseAccentsFor = function (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')))
                }),
                (e.prototype.getSemanticBase = function () {
                  var t = this.node.attributes.getExplicit('data-semantic-fencepointer')
                  return this.getBaseFence(this.baseChild, t)
                }),
                (e.prototype.getBaseFence = function (t, e) {
                  var r, n
                  if (!t || !t.node.attributes || !e) return null
                  if (t.node.attributes.getExplicit('data-semantic-id') === e) return t
                  try {
                    for (var o = a(t.childNodes), i = o.next(); !i.done; i = o.next()) {
                      var s = i.value,
                        l = this.getBaseFence(s, e)
                      if (l) return l
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      i && !i.done && (n = o.return) && n.call(o)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                  return null
                }),
                (e.prototype.getBaseScale = function () {
                  for (var t = this.baseCore, e = 1; t && t !== this; ) {
                    ;(e *= t.getOuterBBox().rscale), (t = t.parent)
                  }
                  return e
                }),
                (e.prototype.getBaseIc = function () {
                  return this.baseCore.getOuterBBox().ic * this.baseScale
                }),
                (e.prototype.getAdjustedIc = function () {
                  var t = this.baseCore.getOuterBBox()
                  return (t.ic ? 1.05 * t.ic + 0.05 : 0) * this.baseScale
                }),
                (e.prototype.isCharBase = function () {
                  var 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
                }),
                (e.prototype.checkLineAccents = function () {
                  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 {
                      ;(this.isLineAbove = this.isLineAccent(this.overChild)), (this.isLineBelow = this.isLineAccent(this.underChild))
                    }
                }),
                (e.prototype.isLineAccent = function (t) {
                  var e = t.coreMO().node
                  return e.isToken && '\u2015' === e.getText()
                }),
                (e.prototype.getBaseWidth = function () {
                  var t = this.baseChild.getOuterBBox()
                  return t.w * t.rscale - (this.baseRemoveIc ? this.baseIc : 0) + this.font.params.extra_ic
                }),
                (e.prototype.computeBBox = function (t, e) {
                  void 0 === e && (e = !1)
                  var r = this.getBaseWidth(),
                    n = i(this.getOffset(), 2),
                    o = n[0],
                    s = n[1]
                  t.append(this.baseChild.getOuterBBox()), t.combine(this.scriptChild.getOuterBBox(), r + o, s), (t.w += this.font.params.scriptspace), t.clean(), this.setChildPWidths(e)
                }),
                (e.prototype.getOffset = function () {
                  return [0, 0]
                }),
                (e.prototype.baseCharZero = function (t) {
                  var e = !!this.baseCore.node.attributes.get('largeop'),
                    r = this.baseScale
                  return this.baseIsChar && !e && 1 === r ? 0 : t
                }),
                (e.prototype.getV = function () {
                  var t = this.baseCore.getOuterBBox(),
                    e = this.scriptChild.getOuterBBox(),
                    r = this.font.params,
                    n = this.length2em(this.node.attributes.get('subscriptshift'), r.sub1)
                  return Math.max(this.baseCharZero(t.d * this.baseScale + r.sub_drop * e.rscale), n, e.h * e.rscale - 0.8 * r.x_height)
                }),
                (e.prototype.getU = function () {
                  var t = this.baseCore.getOuterBBox(),
                    e = this.scriptChild.getOuterBBox(),
                    r = this.font.params,
                    n = this.node.attributes.getList('displaystyle', 'superscriptshift'),
                    o = this.node.getProperty('texprimestyle') ? r.sup3 : n.displaystyle ? r.sup1 : r.sup2,
                    i = this.length2em(n.superscriptshift, o)
                  return Math.max(this.baseCharZero(t.h * this.baseScale - r.sup_drop * e.rscale), i, e.d * e.rscale + (1 / 4) * r.x_height)
                }),
                (e.prototype.hasMovableLimits = function () {
                  var t = this.node.attributes.get('displaystyle'),
                    e = this.baseChild.coreMO().node
                  return !t && !!e.attributes.get('movablelimits')
                }),
                (e.prototype.getOverKU = function (t, e) {
                  var r = this.node.attributes.get('accent'),
                    n = this.font.params,
                    o = e.d * e.rscale,
                    i = n.rule_thickness * n.separation_factor,
                    s = this.baseHasAccentOver ? i : 0,
                    a = this.isLineAbove ? 3 * n.rule_thickness : i,
                    l = (r ? a : Math.max(n.big_op_spacing1, n.big_op_spacing3 - Math.max(0, o))) - s
                  return [l, t.h * t.rscale + l + o]
                }),
                (e.prototype.getUnderKV = function (t, e) {
                  var r = this.node.attributes.get('accentunder'),
                    n = this.font.params,
                    o = e.h * e.rscale,
                    i = n.rule_thickness * n.separation_factor,
                    s = this.baseHasAccentUnder ? i : 0,
                    a = this.isLineBelow ? 3 * n.rule_thickness : i,
                    l = (r ? a : Math.max(n.big_op_spacing2, n.big_op_spacing4 - o)) - s
                  return [l, -(t.d * t.rscale + l + o)]
                }),
                (e.prototype.getDeltaW = function (t, e) {
                  var r, n, o, l
                  void 0 === e && (e = [0, 0, 0])
                  var c = this.node.attributes.get('align'),
                    u = t.map(function (t) {
                      return t.w * t.rscale
                    })
                  u[0] -= this.baseRemoveIc && !this.baseCore.node.attributes.get('largeop') ? this.baseIc : 0
                  var p = Math.max.apply(Math, s([], i(u), !1)),
                    h = [],
                    f = 0
                  try {
                    for (var d = a(u.keys()), m = d.next(); !m.done; m = d.next()) {
                      var y = m.value
                      ;(h[y] = ('center' === c ? (p - u[y]) / 2 : 'right' === c ? p - u[y] : 0) + e[y]), h[y] < f && (f = -h[y])
                    }
                  } catch (t) {
                    r = { error: t }
                  } finally {
                    try {
                      m && !m.done && (n = d.return) && n.call(d)
                    } finally {
                      if (r) throw r.error
                    }
                  }
                  if (f)
                    try {
                      for (var g = a(h.keys()), b = g.next(); !b.done; b = g.next()) {
                        y = b.value
                        h[y] += f
                      }
                    } catch (t) {
                      o = { error: t }
                    } finally {
                      try {
                        b && !b.done && (l = g.return) && l.call(g)
                      } finally {
                        if (o) throw o.error
                      }
                    }
                  return (
                    [1, 2].map(function (e) {
                      return (h[e] += t[e] ? t[e].dx * t[0].scale : 0)
                    }),
                    h
                  )
                }),
                (e.prototype.getDelta = function (t) {
                  void 0 === t && (t = !1)
                  var e = this.node.attributes.get('accent'),
                    r = this.baseCore.getOuterBBox(),
                    n = r.sk,
                    o = r.ic
                  return ((e && !t ? n : 0) + this.font.skewIcFactor * o) * this.baseScale
                }),
                (e.prototype.stretchChildren = function () {
                  var t,
                    e,
                    r,
                    n,
                    o,
                    i,
                    s = []
                  try {
                    for (var l = a(this.childNodes), c = l.next(); !c.done; c = l.next()) {
                      ;(M = c.value).canStretch(2) && s.push(M)
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      c && !c.done && (e = l.return) && e.call(l)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  var u = s.length,
                    p = this.childNodes.length
                  if (u && p > 1) {
                    var h = 0,
                      f = u > 1 && u === p
                    try {
                      for (var d = a(this.childNodes), m = d.next(); !m.done; m = d.next()) {
                        var y = 0 === (M = m.value).stretch.dir
                        if (f || y) {
                          var g = M.getOuterBBox(y),
                            b = g.w,
                            v = g.rscale
                          b * v > h && (h = b * v)
                        }
                      }
                    } catch (t) {
                      r = { error: t }
                    } finally {
                      try {
                        m && !m.done && (n = d.return) && n.call(d)
                      } finally {
                        if (r) throw r.error
                      }
                    }
                    try {
                      for (var _ = a(s), S = _.next(); !S.done; S = _.next()) {
                        var M
                        ;(M = S.value).coreMO().getStretchedVariant([h / M.bbox.rscale])
                      }
                    } catch (t) {
                      o = { error: t }
                    } finally {
                      try {
                        S && !S.done && (i = _.return) && i.call(_)
                      } finally {
                        if (o) throw o.error
                      }
                    }
                  }
                }),
                e
              )
            })(t)),
            (e.useIC = !0),
            e
          )
        }
      },
      5806: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonSemanticsMixin = void 0),
          (e.CommonSemanticsMixin = function (t) {
            return (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return (
                n(e, t),
                (e.prototype.computeBBox = function (t, e) {
                  if ((void 0 === e && (e = !1), this.childNodes.length)) {
                    var r = this.childNodes[0].getBBox(),
                      n = r.w,
                      o = r.h,
                      i = r.d
                    ;(t.w = n), (t.h = o), (t.d = i)
                  }
                }),
                e
              )
            })(t)
          })
      },
      5920: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__assign) ||
            function () {
              return (
                (o =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                o.apply(this, arguments)
              )
            },
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.CommonTeXFontMixin = void 0),
          (e.CommonTeXFontMixin = function (t) {
            var e
            return (
              (e = (function (t) {
                function e() {
                  return (null !== t && t.apply(this, arguments)) || this
                }
                return (
                  n(e, t),
                  (e.prototype.getDelimiterData = function (t) {
                    return this.getChar('-smallop', t) || this.getChar('-size4', t)
                  }),
                  e
                )
              })(t)),
              (e.NAME = 'TeX'),
              (e.defaultVariants = s(
                s([], i(t.defaultVariants), !1),
                [
                  ['-smallop', 'normal'],
                  ['-largeop', 'normal'],
                  ['-size3', 'normal'],
                  ['-size4', 'normal'],
                  ['-tex-calligraphic', 'italic'],
                  ['-tex-bold-calligraphic', 'bold-italic'],
                  ['-tex-oldstyle', 'normal'],
                  ['-tex-bold-oldstyle', 'bold'],
                  ['-tex-mathit', 'italic'],
                  ['-tex-variant', 'normal']
                ],
                !1
              )),
              (e.defaultCssFonts = o(o({}, t.defaultCssFonts), {
                '-smallop': ['serif', !1, !1],
                '-largeop': ['serif', !1, !1],
                '-size3': ['serif', !1, !1],
                '-size4': ['serif', !1, !1],
                '-tex-calligraphic': ['cursive', !0, !1],
                '-tex-bold-calligraphic': ['cursive', !0, !0],
                '-tex-oldstyle': ['serif', !1, !1],
                '-tex-bold-oldstyle': ['serif', !1, !0],
                '-tex-mathit': ['serif', !0, !1]
              })),
              (e.defaultSizeVariants = ['normal', '-smallop', '-largeop', '-size3', '-size4', '-tex-variant']),
              (e.defaultStretchVariants = ['-size4']),
              e
            )
          })
      },
      3980: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.boldItalic = void 0),
          (e.boldItalic = { 47: [0.711, 0.21, 0.894], 305: [0.452, 0.008, 0.394, { sk: 0.0319 }], 567: [0.451, 0.201, 0.439, { sk: 0.0958 }], 8260: [0.711, 0.21, 0.894], 8710: [0.711, 0, 0.958, { sk: 0.192 }], 10744: [0.711, 0.21, 0.894] })
      },
      1103: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.bold = void 0),
          (e.bold = {
            33: [0.705, 0, 0.35],
            34: [0.694, -0.329, 0.603],
            35: [0.694, 0.193, 0.958],
            36: [0.75, 0.056, 0.575],
            37: [0.75, 0.056, 0.958],
            38: [0.705, 0.011, 0.894],
            39: [0.694, -0.329, 0.319],
            40: [0.75, 0.249, 0.447],
            41: [0.75, 0.249, 0.447],
            42: [0.75, -0.306, 0.575],
            43: [0.633, 0.131, 0.894],
            44: [0.171, 0.194, 0.319],
            45: [0.278, -0.166, 0.383],
            46: [0.171, 0, 0.319],
            47: [0.75, 0.25, 0.575],
            58: [0.444, 0, 0.319],
            59: [0.444, 0.194, 0.319],
            60: [0.587, 0.085, 0.894],
            61: [0.393, -0.109, 0.894],
            62: [0.587, 0.085, 0.894],
            63: [0.7, 0, 0.543],
            64: [0.699, 0.006, 0.894],
            91: [0.75, 0.25, 0.319],
            92: [0.75, 0.25, 0.575],
            93: [0.75, 0.25, 0.319],
            94: [0.694, -0.52, 0.575],
            95: [-0.01, 0.061, 0.575],
            96: [0.706, -0.503, 0.575],
            123: [0.75, 0.25, 0.575],
            124: [0.75, 0.249, 0.319],
            125: [0.75, 0.25, 0.575],
            126: [0.344, -0.202, 0.575],
            168: [0.695, -0.535, 0.575],
            172: [0.371, -0.061, 0.767],
            175: [0.607, -0.54, 0.575],
            176: [0.702, -0.536, 0.575],
            177: [0.728, 0.035, 0.894],
            180: [0.706, -0.503, 0.575],
            183: [0.336, -0.166, 0.319],
            215: [0.53, 0.028, 0.894],
            247: [0.597, 0.096, 0.894],
            305: [0.442, 0, 0.278, { sk: 0.0278 }],
            567: [0.442, 0.205, 0.306, { sk: 0.0833 }],
            697: [0.563, -0.033, 0.344],
            710: [0.694, -0.52, 0.575],
            711: [0.66, -0.515, 0.575],
            713: [0.607, -0.54, 0.575],
            714: [0.706, -0.503, 0.575],
            715: [0.706, -0.503, 0.575],
            728: [0.694, -0.5, 0.575],
            729: [0.695, -0.525, 0.575],
            730: [0.702, -0.536, 0.575],
            732: [0.694, -0.552, 0.575],
            768: [0.706, -0.503, 0],
            769: [0.706, -0.503, 0],
            770: [0.694, -0.52, 0],
            771: [0.694, -0.552, 0],
            772: [0.607, -0.54, 0],
            774: [0.694, -0.5, 0],
            775: [0.695, -0.525, 0],
            776: [0.695, -0.535, 0],
            778: [0.702, -0.536, 0],
            779: [0.714, -0.511, 0],
            780: [0.66, -0.515, 0],
            824: [0.711, 0.21, 0],
            8194: [0, 0, 0.5],
            8195: [0, 0, 0.999],
            8196: [0, 0, 0.333],
            8197: [0, 0, 0.25],
            8198: [0, 0, 0.167],
            8201: [0, 0, 0.167],
            8202: [0, 0, 0.083],
            8211: [0.3, -0.249, 0.575],
            8212: [0.3, -0.249, 1.15],
            8213: [0.3, -0.249, 1.15],
            8214: [0.75, 0.248, 0.575],
            8215: [-0.01, 0.061, 0.575],
            8216: [0.694, -0.329, 0.319],
            8217: [0.694, -0.329, 0.319],
            8220: [0.694, -0.329, 0.603],
            8221: [0.694, -0.329, 0.603],
            8224: [0.702, 0.211, 0.511],
            8225: [0.702, 0.202, 0.511],
            8226: [0.474, -0.028, 0.575],
            8230: [0.171, 0, 1.295],
            8242: [0.563, -0.033, 0.344],
            8243: [0.563, 0, 0.688],
            8244: [0.563, 0, 1.032],
            8254: [0.607, -0.54, 0.575],
            8260: [0.75, 0.25, 0.575],
            8279: [0.563, 0, 1.376],
            8407: [0.723, -0.513, 0.575],
            8463: [0.694, 0.008, 0.668, { sk: -0.0319 }],
            8467: [0.702, 0.019, 0.474, { sk: 0.128 }],
            8472: [0.461, 0.21, 0.74],
            8501: [0.694, 0, 0.703],
            8592: [0.518, 0.017, 1.15],
            8593: [0.694, 0.193, 0.575],
            8594: [0.518, 0.017, 1.15],
            8595: [0.694, 0.194, 0.575],
            8596: [0.518, 0.017, 1.15],
            8597: [0.767, 0.267, 0.575],
            8598: [0.724, 0.194, 1.15],
            8599: [0.724, 0.193, 1.15],
            8600: [0.694, 0.224, 1.15],
            8601: [0.694, 0.224, 1.15],
            8602: [0.711, 0.21, 1.15],
            8603: [0.711, 0.21, 1.15],
            8614: [0.518, 0.017, 1.15],
            8617: [0.518, 0.017, 1.282],
            8618: [0.518, 0.017, 1.282],
            8622: [0.711, 0.21, 1.15],
            8636: [0.518, -0.22, 1.15],
            8637: [0.281, 0.017, 1.15],
            8640: [0.518, -0.22, 1.15],
            8641: [0.281, 0.017, 1.15],
            8652: [0.718, 0.017, 1.15],
            8653: [0.711, 0.21, 1.15],
            8654: [0.711, 0.21, 1.15],
            8655: [0.711, 0.21, 1.15],
            8656: [0.547, 0.046, 1.15],
            8657: [0.694, 0.193, 0.703],
            8658: [0.547, 0.046, 1.15],
            8659: [0.694, 0.194, 0.703],
            8660: [0.547, 0.046, 1.15],
            8661: [0.767, 0.267, 0.703],
            8704: [0.694, 0.016, 0.639],
            8707: [0.694, 0, 0.639],
            8708: [0.711, 0.21, 0.639],
            8709: [0.767, 0.073, 0.575],
            8710: [0.698, 0, 0.958],
            8712: [0.587, 0.086, 0.767],
            8713: [0.711, 0.21, 0.767],
            8715: [0.587, 0.086, 0.767],
            8716: [0.711, 0.21, 0.767],
            8722: [0.281, -0.221, 0.894],
            8723: [0.537, 0.227, 0.894],
            8725: [0.75, 0.25, 0.575],
            8726: [0.75, 0.25, 0.575],
            8727: [0.472, -0.028, 0.575],
            8728: [0.474, -0.028, 0.575],
            8729: [0.474, -0.028, 0.575],
            8730: [0.82, 0.18, 0.958, { ic: 0.03 }],
            8733: [0.451, 0.008, 0.894],
            8734: [0.452, 0.008, 1.15],
            8736: [0.714, 0, 0.722],
            8739: [0.75, 0.249, 0.319],
            8740: [0.75, 0.249, 0.319],
            8741: [0.75, 0.248, 0.575],
            8742: [0.75, 0.248, 0.575],
            8743: [0.604, 0.017, 0.767],
            8744: [0.604, 0.016, 0.767],
            8745: [0.603, 0.016, 0.767],
            8746: [0.604, 0.016, 0.767],
            8747: [0.711, 0.211, 0.569, { ic: 0.063 }],
            8764: [0.391, -0.109, 0.894],
            8768: [0.583, 0.082, 0.319],
            8769: [0.711, 0.21, 0.894],
            8771: [0.502, 0, 0.894],
            8772: [0.711, 0.21, 0.894],
            8773: [0.638, 0.027, 0.894],
            8775: [0.711, 0.21, 0.894],
            8776: [0.524, -0.032, 0.894],
            8777: [0.711, 0.21, 0.894],
            8781: [0.533, 0.032, 0.894],
            8784: [0.721, -0.109, 0.894],
            8800: [0.711, 0.21, 0.894],
            8801: [0.505, 0, 0.894],
            8802: [0.711, 0.21, 0.894],
            8804: [0.697, 0.199, 0.894],
            8805: [0.697, 0.199, 0.894],
            8810: [0.617, 0.116, 1.15],
            8811: [0.618, 0.116, 1.15],
            8813: [0.711, 0.21, 0.894],
            8814: [0.711, 0.21, 0.894],
            8815: [0.711, 0.21, 0.894],
            8816: [0.711, 0.21, 0.894],
            8817: [0.711, 0.21, 0.894],
            8826: [0.585, 0.086, 0.894],
            8827: [0.586, 0.086, 0.894],
            8832: [0.711, 0.21, 0.894],
            8833: [0.711, 0.21, 0.894],
            8834: [0.587, 0.085, 0.894],
            8835: [0.587, 0.086, 0.894],
            8836: [0.711, 0.21, 0.894],
            8837: [0.711, 0.21, 0.894],
            8838: [0.697, 0.199, 0.894],
            8839: [0.697, 0.199, 0.894],
            8840: [0.711, 0.21, 0.894],
            8841: [0.711, 0.21, 0.894],
            8846: [0.604, 0.016, 0.767],
            8849: [0.697, 0.199, 0.894],
            8850: [0.697, 0.199, 0.894],
            8851: [0.604, 0, 0.767],
            8852: [0.604, 0, 0.767],
            8853: [0.632, 0.132, 0.894],
            8854: [0.632, 0.132, 0.894],
            8855: [0.632, 0.132, 0.894],
            8856: [0.632, 0.132, 0.894],
            8857: [0.632, 0.132, 0.894],
            8866: [0.693, 0, 0.703],
            8867: [0.693, 0, 0.703],
            8868: [0.694, 0, 0.894],
            8869: [0.693, 0, 0.894],
            8872: [0.75, 0.249, 0.974],
            8876: [0.711, 0.21, 0.703],
            8877: [0.75, 0.249, 0.974],
            8900: [0.523, 0.021, 0.575],
            8901: [0.336, -0.166, 0.319],
            8902: [0.502, 0, 0.575],
            8904: [0.54, 0.039, 1],
            8930: [0.711, 0.21, 0.894],
            8931: [0.711, 0.21, 0.894],
            8942: [0.951, 0.029, 0.319],
            8943: [0.336, -0.166, 1.295],
            8945: [0.871, -0.101, 1.323],
            8968: [0.75, 0.248, 0.511],
            8969: [0.75, 0.248, 0.511],
            8970: [0.749, 0.248, 0.511],
            8971: [0.749, 0.248, 0.511],
            8994: [0.405, -0.108, 1.15],
            8995: [0.392, -0.126, 1.15],
            9001: [0.75, 0.249, 0.447],
            9002: [0.75, 0.249, 0.447],
            9651: [0.711, 0, 1.022],
            9653: [0.711, 0, 1.022],
            9657: [0.54, 0.039, 0.575],
            9661: [0.5, 0.21, 1.022],
            9663: [0.5, 0.21, 1.022],
            9667: [0.539, 0.038, 0.575],
            9711: [0.711, 0.211, 1.15],
            9824: [0.719, 0.129, 0.894],
            9825: [0.711, 0.024, 0.894],
            9826: [0.719, 0.154, 0.894],
            9827: [0.719, 0.129, 0.894],
            9837: [0.75, 0.017, 0.447],
            9838: [0.741, 0.223, 0.447],
            9839: [0.724, 0.224, 0.447],
            10072: [0.75, 0.249, 0.319],
            10216: [0.75, 0.249, 0.447],
            10217: [0.75, 0.249, 0.447],
            10229: [0.518, 0.017, 1.805],
            10230: [0.518, 0.017, 1.833],
            10231: [0.518, 0.017, 2.126],
            10232: [0.547, 0.046, 1.868],
            10233: [0.547, 0.046, 1.87],
            10234: [0.547, 0.046, 2.126],
            10236: [0.518, 0.017, 1.833],
            10744: [0.711, 0.21, 0.894],
            10799: [0.53, 0.028, 0.894],
            10815: [0.686, 0, 0.9],
            10927: [0.696, 0.199, 0.894],
            10928: [0.697, 0.199, 0.894],
            12296: [0.75, 0.249, 0.447],
            12297: [0.75, 0.249, 0.447]
          })
      },
      9124: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.delimiters = e.VSIZES = e.HDW3 = e.HDW2 = e.HDW1 = void 0)
        var n = r(5884)
        ;(e.HDW1 = [0.75, 0.25, 0.875]), (e.HDW2 = [0.85, 0.349, 0.667]), (e.HDW3 = [0.583, 0.082, 0.5]), (e.VSIZES = [1, 1.2, 1.8, 2.4, 3])
        var o = { c: 47, dir: n.V, sizes: e.VSIZES },
          i = { c: 175, dir: n.H, sizes: [0.5], stretch: [0, 175], HDW: [0.59, -0.544, 0.5] },
          s = { c: 710, dir: n.H, sizes: [0.5, 0.556, 1, 1.444, 1.889] },
          a = { c: 732, dir: n.H, sizes: [0.5, 0.556, 1, 1.444, 1.889] },
          l = { c: 8211, dir: n.H, sizes: [0.5], stretch: [0, 8211], HDW: [0.285, -0.248, 0.5] },
          c = { c: 8592, dir: n.H, sizes: [1], stretch: [8592, 8722], HDW: e.HDW3 },
          u = { c: 8594, dir: n.H, sizes: [1], stretch: [0, 8722, 8594], HDW: e.HDW3 },
          p = { c: 8596, dir: n.H, sizes: [1], stretch: [8592, 8722, 8594], HDW: e.HDW3 },
          h = { c: 8612, dir: n.H, stretch: [8592, 8722, 8739], HDW: e.HDW3, min: 1.278 },
          f = { c: 8614, dir: n.H, sizes: [1], stretch: [8739, 8722, 8594], HDW: e.HDW3 },
          d = { c: 8656, dir: n.H, sizes: [1], stretch: [8656, 61], HDW: e.HDW3 },
          m = { c: 8658, dir: n.H, sizes: [1], stretch: [0, 61, 8658], HDW: e.HDW3 },
          y = { c: 8660, dir: n.H, sizes: [1], stretch: [8656, 61, 8658], HDW: e.HDW3 },
          g = { c: 8722, dir: n.H, sizes: [0.778], stretch: [0, 8722], HDW: e.HDW3 },
          b = { c: 8739, dir: n.V, sizes: [1], stretch: [0, 8739], HDW: [0.627, 0.015, 0.333] },
          v = { c: 9180, dir: n.H, sizes: [0.778, 1], schar: [8994, 8994], variants: [5, 0], stretch: [57680, 57684, 57681], HDW: [0.32, 0.2, 0.5] },
          _ = { c: 9181, dir: n.H, sizes: [0.778, 1], schar: [8995, 8995], variants: [5, 0], stretch: [57682, 57684, 57683], HDW: [0.32, 0.2, 0.5] },
          S = { c: 9182, dir: n.H, stretch: [57680, 57684, 57681, 57685], HDW: [0.32, 0.2, 0.5], min: 1.8 },
          M = { c: 9183, dir: n.H, stretch: [57682, 57684, 57683, 57686], HDW: [0.32, 0.2, 0.5], min: 1.8 },
          O = { c: 10216, dir: n.V, sizes: e.VSIZES },
          x = { c: 10217, dir: n.V, sizes: e.VSIZES },
          E = { c: 10502, dir: n.H, stretch: [8656, 61, 8739], HDW: e.HDW3, min: 1.278 },
          A = { c: 10503, dir: n.H, stretch: [8872, 61, 8658], HDW: e.HDW3, min: 1.278 }
        e.delimiters = {
          40: { dir: n.V, sizes: e.VSIZES, stretch: [9115, 9116, 9117], HDW: [0.85, 0.349, 0.875] },
          41: { dir: n.V, sizes: e.VSIZES, stretch: [9118, 9119, 9120], HDW: [0.85, 0.349, 0.875] },
          45: g,
          47: o,
          61: { dir: n.H, sizes: [0.778], stretch: [0, 61], HDW: e.HDW3 },
          91: { dir: n.V, sizes: e.VSIZES, stretch: [9121, 9122, 9123], HDW: e.HDW2 },
          92: { dir: n.V, sizes: e.VSIZES },
          93: { dir: n.V, sizes: e.VSIZES, stretch: [9124, 9125, 9126], HDW: e.HDW2 },
          94: s,
          95: l,
          123: { dir: n.V, sizes: e.VSIZES, stretch: [9127, 9130, 9129, 9128], HDW: [0.85, 0.349, 0.889] },
          124: { dir: n.V, sizes: [1], stretch: [0, 8739], HDW: [0.75, 0.25, 0.333] },
          125: { dir: n.V, sizes: e.VSIZES, stretch: [9131, 9130, 9133, 9132], HDW: [0.85, 0.349, 0.889] },
          126: a,
          175: i,
          710: s,
          713: i,
          732: a,
          770: s,
          771: a,
          818: l,
          8211: l,
          8212: l,
          8213: l,
          8214: { dir: n.V, sizes: [0.602, 1], schar: [0, 8741], variants: [1, 0], stretch: [0, 8741], HDW: [0.602, 0, 0.556] },
          8215: l,
          8254: i,
          8407: u,
          8592: c,
          8593: { dir: n.V, sizes: [0.888], stretch: [8593, 9168], HDW: [0.6, 0, 0.667] },
          8594: u,
          8595: { dir: n.V, sizes: [0.888], stretch: [0, 9168, 8595], HDW: [0.6, 0, 0.667] },
          8596: p,
          8597: { dir: n.V, sizes: [1.044], stretch: [8593, 9168, 8595], HDW: e.HDW1 },
          8606: { dir: n.H, sizes: [1], stretch: [8606, 8722], HDW: e.HDW3 },
          8608: { dir: n.H, sizes: [1], stretch: [0, 8722, 8608], HDW: e.HDW3 },
          8612: h,
          8613: { dir: n.V, stretch: [8593, 9168, 8869], HDW: e.HDW1, min: 1.555 },
          8614: f,
          8615: { dir: n.V, stretch: [8868, 9168, 8595], HDW: e.HDW1, min: 1.555 },
          8624: { dir: n.V, sizes: [0.722], stretch: [8624, 9168], HDW: e.HDW1 },
          8625: { dir: n.V, sizes: [0.722], stretch: [8625, 9168], HDW: e.HDW1 },
          8636: { dir: n.H, sizes: [1], stretch: [8636, 8722], HDW: e.HDW3 },
          8637: { dir: n.H, sizes: [1], stretch: [8637, 8722], HDW: e.HDW3 },
          8638: { dir: n.V, sizes: [0.888], stretch: [8638, 9168], HDW: e.HDW1 },
          8639: { dir: n.V, sizes: [0.888], stretch: [8639, 9168], HDW: e.HDW1 },
          8640: { dir: n.H, sizes: [1], stretch: [0, 8722, 8640], HDW: e.HDW3 },
          8641: { dir: n.H, sizes: [1], stretch: [0, 8722, 8641], HDW: e.HDW3 },
          8642: { dir: n.V, sizes: [0.888], stretch: [0, 9168, 8642], HDW: e.HDW1 },
          8643: { dir: n.V, sizes: [0.888], stretch: [0, 9168, 8643], HDW: e.HDW1 },
          8656: d,
          8657: { dir: n.V, sizes: [0.888], stretch: [8657, 8214], HDW: [0.599, 0, 0.778] },
          8658: m,
          8659: { dir: n.V, sizes: [0.888], stretch: [0, 8214, 8659], HDW: [0.6, 0, 0.778] },
          8660: y,
          8661: { dir: n.V, sizes: [1.044], stretch: [8657, 8214, 8659], HDW: [0.75, 0.25, 0.778] },
          8666: { dir: n.H, sizes: [1], stretch: [8666, 8801], HDW: [0.464, -0.036, 0.5] },
          8667: { dir: n.H, sizes: [1], stretch: [0, 8801, 8667], HDW: [0.464, -0.036, 0.5] },
          8722: g,
          8725: o,
          8730: { dir: n.V, sizes: e.VSIZES, stretch: [57345, 57344, 9143], fullExt: [0.65, 2.3], HDW: [0.85, 0.35, 1.056] },
          8739: b,
          8741: { dir: n.V, sizes: [1], stretch: [0, 8741], HDW: [0.627, 0.015, 0.556] },
          8968: { dir: n.V, sizes: e.VSIZES, stretch: [9121, 9122], HDW: e.HDW2 },
          8969: { dir: n.V, sizes: e.VSIZES, stretch: [9124, 9125], HDW: e.HDW2 },
          8970: { dir: n.V, sizes: e.VSIZES, stretch: [0, 9122, 9123], HDW: e.HDW2 },
          8971: { dir: n.V, sizes: e.VSIZES, stretch: [0, 9125, 9126], HDW: e.HDW2 },
          8978: v,
          8994: v,
          8995: _,
          9001: O,
          9002: x,
          9130: { dir: n.V, sizes: [0.32], stretch: [9130, 9130, 9130], HDW: [0.29, 0.015, 0.889] },
          9135: l,
          9136: { dir: n.V, sizes: [0.989], stretch: [9127, 9130, 9133], HDW: [0.75, 0.25, 0.889] },
          9137: { dir: n.V, sizes: [0.989], stretch: [9131, 9130, 9129], HDW: [0.75, 0.25, 0.889] },
          9140: { dir: n.H, stretch: [9484, 8722, 9488], HDW: e.HDW3, min: 1 },
          9141: { dir: n.H, stretch: [9492, 8722, 9496], HDW: e.HDW3, min: 1 },
          9168: { dir: n.V, sizes: [0.602, 1], schar: [0, 8739], variants: [1, 0], stretch: [0, 8739], HDW: [0.602, 0, 0.333] },
          9180: v,
          9181: _,
          9182: S,
          9183: M,
          9184: { dir: n.H, stretch: [714, 713, 715], HDW: [0.59, -0.544, 0.5], min: 1 },
          9185: { dir: n.H, stretch: [715, 713, 714], HDW: [0.59, -0.544, 0.5], min: 1 },
          9472: l,
          10072: b,
          10216: O,
          10217: x,
          10222: { dir: n.V, sizes: [0.989], stretch: [9127, 9130, 9129], HDW: [0.75, 0.25, 0.889] },
          10223: { dir: n.V, sizes: [0.989], stretch: [9131, 9130, 9133], HDW: [0.75, 0.25, 0.889] },
          10229: c,
          10230: u,
          10231: p,
          10232: d,
          10233: m,
          10234: y,
          10235: h,
          10236: f,
          10237: E,
          10238: A,
          10502: E,
          10503: A,
          10574: { dir: n.H, stretch: [8636, 8722, 8640], HDW: e.HDW3, min: 2 },
          10575: { dir: n.V, stretch: [8638, 9168, 8642], HDW: e.HDW1, min: 1.776 },
          10576: { dir: n.H, stretch: [8637, 8722, 8641], HDW: e.HDW3, min: 2 },
          10577: { dir: n.V, stretch: [8639, 9168, 8643], HDW: e.HDW1, min: 0.5 },
          10586: { dir: n.H, stretch: [8636, 8722, 8739], HDW: e.HDW3, min: 1.278 },
          10587: { dir: n.H, stretch: [8739, 8722, 8640], HDW: e.HDW3, min: 1.278 },
          10588: { dir: n.V, stretch: [8638, 9168, 8869], HDW: e.HDW1, min: 1.556 },
          10589: { dir: n.V, stretch: [8868, 9168, 8642], HDW: e.HDW1, min: 1.556 },
          10590: { dir: n.H, stretch: [8637, 8722, 8739], HDW: e.HDW3, min: 1.278 },
          10591: { dir: n.H, stretch: [8739, 8722, 8641], HDW: e.HDW3, min: 1.278 },
          10592: { dir: n.V, stretch: [8639, 9168, 8869], HDW: e.HDW1, min: 1.776 },
          10593: { dir: n.V, stretch: [8868, 9168, 8643], HDW: e.HDW1, min: 1.776 },
          12296: O,
          12297: x,
          65079: S,
          65080: M
        }
      },
      6001: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.doubleStruck = void 0), (e.doubleStruck = {})
      },
      3696: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.frakturBold = void 0),
          (e.frakturBold = {
            33: [0.689, 0.012, 0.349],
            34: [0.695, -0.432, 0.254],
            38: [0.696, 0.016, 0.871],
            39: [0.695, -0.436, 0.25],
            40: [0.737, 0.186, 0.459],
            41: [0.735, 0.187, 0.459],
            42: [0.692, -0.449, 0.328],
            43: [0.598, 0.082, 0.893],
            44: [0.107, 0.191, 0.328],
            45: [0.275, -0.236, 0.893],
            46: [0.102, 0.015, 0.328],
            47: [0.721, 0.182, 0.593],
            48: [0.501, 0.012, 0.593],
            49: [0.489, 0, 0.593],
            50: [0.491, 0, 0.593],
            51: [0.487, 0.193, 0.593],
            52: [0.495, 0.196, 0.593],
            53: [0.481, 0.19, 0.593],
            54: [0.704, 0.012, 0.593],
            55: [0.479, 0.197, 0.593],
            56: [0.714, 0.005, 0.593],
            57: [0.487, 0.195, 0.593],
            58: [0.457, 0.012, 0.255],
            59: [0.458, 0.19, 0.255],
            61: [0.343, -0.168, 0.582],
            63: [0.697, 0.014, 0.428],
            91: [0.74, 0.13, 0.257],
            93: [0.738, 0.132, 0.257],
            94: [0.734, -0.452, 0.59],
            8216: [0.708, -0.411, 0.254],
            8217: [0.692, -0.394, 0.254],
            8260: [0.721, 0.182, 0.593],
            58113: [0.63, 0.027, 0.587],
            58114: [0.693, 0.212, 0.394, { ic: 0.014 }],
            58115: [0.681, 0.219, 0.387],
            58116: [0.473, 0.212, 0.593],
            58117: [0.684, 0.027, 0.393],
            58120: [0.679, 0.22, 0.981],
            58121: [0.717, 0.137, 0.727]
          })
      },
      9587: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.fraktur = void 0),
          (e.fraktur = {
            33: [0.689, 0.012, 0.296],
            34: [0.695, -0.432, 0.215],
            38: [0.698, 0.011, 0.738],
            39: [0.695, -0.436, 0.212],
            40: [0.737, 0.186, 0.389],
            41: [0.735, 0.187, 0.389],
            42: [0.692, -0.449, 0.278],
            43: [0.598, 0.082, 0.756],
            44: [0.107, 0.191, 0.278],
            45: [0.275, -0.236, 0.756],
            46: [0.102, 0.015, 0.278],
            47: [0.721, 0.182, 0.502],
            48: [0.492, 0.013, 0.502],
            49: [0.468, 0, 0.502],
            50: [0.474, 0, 0.502],
            51: [0.473, 0.182, 0.502],
            52: [0.476, 0.191, 0.502],
            53: [0.458, 0.184, 0.502],
            54: [0.7, 0.013, 0.502],
            55: [0.468, 0.181, 0.502],
            56: [0.705, 0.01, 0.502],
            57: [0.469, 0.182, 0.502],
            58: [0.457, 0.012, 0.216],
            59: [0.458, 0.189, 0.216],
            61: [0.368, -0.132, 0.756],
            63: [0.693, 0.011, 0.362],
            91: [0.74, 0.13, 0.278],
            93: [0.738, 0.131, 0.278],
            94: [0.734, -0.452, 0.5],
            8216: [0.708, -0.41, 0.215],
            8217: [0.692, -0.395, 0.215],
            8260: [0.721, 0.182, 0.502],
            58112: [0.683, 0.032, 0.497],
            58113: [0.616, 0.03, 0.498],
            58114: [0.68, 0.215, 0.333],
            58115: [0.679, 0.224, 0.329],
            58116: [0.471, 0.214, 0.503],
            58117: [0.686, 0.02, 0.333],
            58118: [0.577, 0.021, 0.334, { ic: 0.013 }],
            58119: [0.475, 0.022, 0.501, { ic: 0.013 }]
          })
      },
      8348: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.italic = void 0),
          (e.italic = {
            33: [0.716, 0, 0.307, { ic: 0.073 }],
            34: [0.694, -0.379, 0.514, { ic: 0.024 }],
            35: [0.694, 0.194, 0.818, { ic: 0.01 }],
            37: [0.75, 0.056, 0.818, { ic: 0.029 }],
            38: [0.716, 0.022, 0.767, { ic: 0.035 }],
            39: [0.694, -0.379, 0.307, { ic: 0.07 }],
            40: [0.75, 0.25, 0.409, { ic: 0.108 }],
            41: [0.75, 0.25, 0.409],
            42: [0.75, -0.32, 0.511, { ic: 0.073 }],
            43: [0.557, 0.057, 0.767],
            44: [0.121, 0.194, 0.307],
            45: [0.251, -0.18, 0.358],
            46: [0.121, 0, 0.307],
            47: [0.716, 0.215, 0.778],
            48: [0.665, 0.021, 0.511, { ic: 0.051 }],
            49: [0.666, 0, 0.511],
            50: [0.666, 0.022, 0.511, { ic: 0.04 }],
            51: [0.666, 0.022, 0.511, { ic: 0.051 }],
            52: [0.666, 0.194, 0.511],
            53: [0.666, 0.022, 0.511, { ic: 0.056 }],
            54: [0.665, 0.022, 0.511, { ic: 0.054 }],
            55: [0.666, 0.022, 0.511, { ic: 0.123 }],
            56: [0.666, 0.021, 0.511, { ic: 0.042 }],
            57: [0.666, 0.022, 0.511, { ic: 0.042 }],
            58: [0.431, 0, 0.307],
            59: [0.431, 0.194, 0.307],
            61: [0.367, -0.133, 0.767],
            63: [0.716, 0, 0.511, { ic: 0.04 }],
            64: [0.705, 0.011, 0.767, { ic: 0.022 }],
            91: [0.75, 0.25, 0.307, { ic: 0.139 }],
            93: [0.75, 0.25, 0.307, { ic: 0.052 }],
            94: [0.694, -0.527, 0.511, { ic: 0.017 }],
            95: [-0.025, 0.062, 0.511, { ic: 0.043 }],
            126: [0.318, -0.208, 0.511, { ic: 0.06 }],
            305: [0.441, 0.01, 0.307, { ic: 0.033 }],
            567: [0.442, 0.204, 0.332],
            768: [0.697, -0.5, 0],
            769: [0.697, -0.5, 0, { ic: 0.039 }],
            770: [0.694, -0.527, 0, { ic: 0.017 }],
            771: [0.668, -0.558, 0, { ic: 0.06 }],
            772: [0.589, -0.544, 0, { ic: 0.054 }],
            774: [0.694, -0.515, 0, { ic: 0.062 }],
            775: [0.669, -0.548, 0],
            776: [0.669, -0.554, 0, { ic: 0.045 }],
            778: [0.716, -0.542, 0],
            779: [0.697, -0.503, 0, { ic: 0.065 }],
            780: [0.638, -0.502, 0, { ic: 0.029 }],
            989: [0.605, 0.085, 0.778],
            8211: [0.285, -0.248, 0.511, { ic: 0.043 }],
            8212: [0.285, -0.248, 1.022, { ic: 0.016 }],
            8213: [0.285, -0.248, 1.022, { ic: 0.016 }],
            8215: [-0.025, 0.062, 0.511, { ic: 0.043 }],
            8216: [0.694, -0.379, 0.307, { ic: 0.055 }],
            8217: [0.694, -0.379, 0.307, { ic: 0.07 }],
            8220: [0.694, -0.379, 0.514, { ic: 0.092 }],
            8221: [0.694, -0.379, 0.514, { ic: 0.024 }],
            8260: [0.716, 0.215, 0.778],
            8463: [0.695, 0.013, 0.54, { ic: 0.022 }],
            8710: [0.716, 0, 0.833, { sk: 0.167 }],
            10744: [0.716, 0.215, 0.778]
          })
      },
      1376: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.largeop = void 0),
          (e.largeop = {
            40: [1.15, 0.649, 0.597],
            41: [1.15, 0.649, 0.597],
            47: [1.15, 0.649, 0.811],
            91: [1.15, 0.649, 0.472],
            92: [1.15, 0.649, 0.811],
            93: [1.15, 0.649, 0.472],
            123: [1.15, 0.649, 0.667],
            125: [1.15, 0.649, 0.667],
            710: [0.772, -0.565, 1],
            732: [0.75, -0.611, 1],
            770: [0.772, -0.565, 0],
            771: [0.75, -0.611, 0],
            8214: [0.602, 0, 0.778],
            8260: [1.15, 0.649, 0.811],
            8593: [0.6, 0, 0.667],
            8595: [0.6, 0, 0.667],
            8657: [0.599, 0, 0.778],
            8659: [0.6, 0, 0.778],
            8719: [0.95, 0.45, 1.278],
            8720: [0.95, 0.45, 1.278],
            8721: [0.95, 0.45, 1.444],
            8730: [1.15, 0.65, 1, { ic: 0.02 }],
            8739: [0.627, 0.015, 0.333],
            8741: [0.627, 0.015, 0.556],
            8747: [1.36, 0.862, 0.556, { ic: 0.388 }],
            8748: [1.36, 0.862, 1.084, { ic: 0.388 }],
            8749: [1.36, 0.862, 1.592, { ic: 0.388 }],
            8750: [1.36, 0.862, 0.556, { ic: 0.388 }],
            8896: [0.95, 0.45, 1.111],
            8897: [0.95, 0.45, 1.111],
            8898: [0.949, 0.45, 1.111],
            8899: [0.95, 0.449, 1.111],
            8968: [1.15, 0.649, 0.528],
            8969: [1.15, 0.649, 0.528],
            8970: [1.15, 0.649, 0.528],
            8971: [1.15, 0.649, 0.528],
            9001: [1.15, 0.649, 0.611],
            9002: [1.15, 0.649, 0.611],
            9168: [0.602, 0, 0.667],
            10072: [0.627, 0.015, 0.333],
            10216: [1.15, 0.649, 0.611],
            10217: [1.15, 0.649, 0.611],
            10752: [0.949, 0.449, 1.511],
            10753: [0.949, 0.449, 1.511],
            10754: [0.949, 0.449, 1.511],
            10756: [0.95, 0.449, 1.111],
            10758: [0.95, 0.45, 1.111],
            10764: [1.36, 0.862, 2.168, { ic: 0.388 }],
            12296: [1.15, 0.649, 0.611],
            12297: [1.15, 0.649, 0.611]
          })
      },
      1439: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.monospace = void 0),
          (e.monospace = {
            32: [0, 0, 0.525],
            33: [0.622, 0, 0.525],
            34: [0.623, -0.333, 0.525],
            35: [0.611, 0, 0.525],
            36: [0.694, 0.082, 0.525],
            37: [0.694, 0.083, 0.525],
            38: [0.622, 0.011, 0.525],
            39: [0.611, -0.287, 0.525],
            40: [0.694, 0.082, 0.525],
            41: [0.694, 0.082, 0.525],
            42: [0.52, -0.09, 0.525],
            43: [0.531, -0.081, 0.525],
            44: [0.14, 0.139, 0.525],
            45: [0.341, -0.271, 0.525],
            46: [0.14, 0, 0.525],
            47: [0.694, 0.083, 0.525],
            58: [0.431, 0, 0.525],
            59: [0.431, 0.139, 0.525],
            60: [0.557, -0.055, 0.525],
            61: [0.417, -0.195, 0.525],
            62: [0.557, -0.055, 0.525],
            63: [0.617, 0, 0.525],
            64: [0.617, 0.006, 0.525],
            91: [0.694, 0.082, 0.525],
            92: [0.694, 0.083, 0.525],
            93: [0.694, 0.082, 0.525],
            94: [0.611, -0.46, 0.525],
            95: [-0.025, 0.095, 0.525],
            96: [0.681, -0.357, 0.525],
            123: [0.694, 0.083, 0.525],
            124: [0.694, 0.082, 0.525],
            125: [0.694, 0.083, 0.525],
            126: [0.611, -0.466, 0.525],
            127: [0.612, -0.519, 0.525],
            160: [0, 0, 0.525],
            305: [0.431, 0, 0.525],
            567: [0.431, 0.228, 0.525],
            697: [0.623, -0.334, 0.525],
            768: [0.611, -0.485, 0],
            769: [0.611, -0.485, 0],
            770: [0.611, -0.46, 0],
            771: [0.611, -0.466, 0],
            772: [0.577, -0.5, 0],
            774: [0.611, -0.504, 0],
            776: [0.612, -0.519, 0],
            778: [0.619, -0.499, 0],
            780: [0.577, -0.449, 0],
            913: [0.623, 0, 0.525],
            914: [0.611, 0, 0.525],
            915: [0.611, 0, 0.525],
            916: [0.623, 0, 0.525],
            917: [0.611, 0, 0.525],
            918: [0.611, 0, 0.525],
            919: [0.611, 0, 0.525],
            920: [0.621, 0.01, 0.525],
            921: [0.611, 0, 0.525],
            922: [0.611, 0, 0.525],
            923: [0.623, 0, 0.525],
            924: [0.611, 0, 0.525],
            925: [0.611, 0, 0.525],
            926: [0.611, 0, 0.525],
            927: [0.621, 0.01, 0.525],
            928: [0.611, 0, 0.525],
            929: [0.611, 0, 0.525],
            931: [0.611, 0, 0.525],
            932: [0.611, 0, 0.525],
            933: [0.622, 0, 0.525],
            934: [0.611, 0, 0.525],
            935: [0.611, 0, 0.525],
            936: [0.611, 0, 0.525],
            937: [0.622, 0, 0.525],
            8215: [-0.025, 0.095, 0.525],
            8242: [0.623, -0.334, 0.525],
            8243: [0.623, 0, 1.05],
            8244: [0.623, 0, 1.575],
            8260: [0.694, 0.083, 0.525],
            8279: [0.623, 0, 2.1],
            8710: [0.623, 0, 0.525]
          })
      },
      331: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.normal = void 0),
          (e.normal = {
            32: [0, 0, 0.25],
            33: [0.716, 0, 0.278],
            34: [0.694, -0.379, 0.5],
            35: [0.694, 0.194, 0.833],
            36: [0.75, 0.056, 0.5],
            37: [0.75, 0.056, 0.833],
            38: [0.716, 0.022, 0.778],
            39: [0.694, -0.379, 0.278],
            40: [0.75, 0.25, 0.389],
            41: [0.75, 0.25, 0.389],
            42: [0.75, -0.32, 0.5],
            43: [0.583, 0.082, 0.778],
            44: [0.121, 0.194, 0.278],
            45: [0.252, -0.179, 0.333],
            46: [0.12, 0, 0.278],
            47: [0.75, 0.25, 0.5],
            48: [0.666, 0.022, 0.5],
            49: [0.666, 0, 0.5],
            50: [0.666, 0, 0.5],
            51: [0.665, 0.022, 0.5],
            52: [0.677, 0, 0.5],
            53: [0.666, 0.022, 0.5],
            54: [0.666, 0.022, 0.5],
            55: [0.676, 0.022, 0.5],
            56: [0.666, 0.022, 0.5],
            57: [0.666, 0.022, 0.5],
            58: [0.43, 0, 0.278],
            59: [0.43, 0.194, 0.278],
            60: [0.54, 0.04, 0.778],
            61: [0.583, 0.082, 0.778],
            62: [0.54, 0.04, 0.778],
            63: [0.705, 0, 0.472],
            64: [0.705, 0.011, 0.778],
            65: [0.716, 0, 0.75],
            66: [0.683, 0, 0.708],
            67: [0.705, 0.021, 0.722],
            68: [0.683, 0, 0.764],
            69: [0.68, 0, 0.681],
            70: [0.68, 0, 0.653],
            71: [0.705, 0.022, 0.785],
            72: [0.683, 0, 0.75],
            73: [0.683, 0, 0.361],
            74: [0.683, 0.022, 0.514],
            75: [0.683, 0, 0.778],
            76: [0.683, 0, 0.625],
            77: [0.683, 0, 0.917],
            78: [0.683, 0, 0.75],
            79: [0.705, 0.022, 0.778],
            80: [0.683, 0, 0.681],
            81: [0.705, 0.193, 0.778],
            82: [0.683, 0.022, 0.736],
            83: [0.705, 0.022, 0.556],
            84: [0.677, 0, 0.722],
            85: [0.683, 0.022, 0.75],
            86: [0.683, 0.022, 0.75],
            87: [0.683, 0.022, 1.028],
            88: [0.683, 0, 0.75],
            89: [0.683, 0, 0.75],
            90: [0.683, 0, 0.611],
            91: [0.75, 0.25, 0.278],
            92: [0.75, 0.25, 0.5],
            93: [0.75, 0.25, 0.278],
            94: [0.694, -0.531, 0.5],
            95: [-0.025, 0.062, 0.5],
            96: [0.699, -0.505, 0.5],
            97: [0.448, 0.011, 0.5],
            98: [0.694, 0.011, 0.556],
            99: [0.448, 0.011, 0.444],
            100: [0.694, 0.011, 0.556],
            101: [0.448, 0.011, 0.444],
            102: [0.705, 0, 0.306, { ic: 0.066 }],
            103: [0.453, 0.206, 0.5],
            104: [0.694, 0, 0.556],
            105: [0.669, 0, 0.278],
            106: [0.669, 0.205, 0.306],
            107: [0.694, 0, 0.528],
            108: [0.694, 0, 0.278],
            109: [0.442, 0, 0.833],
            110: [0.442, 0, 0.556],
            111: [0.448, 0.01, 0.5],
            112: [0.442, 0.194, 0.556],
            113: [0.442, 0.194, 0.528],
            114: [0.442, 0, 0.392],
            115: [0.448, 0.011, 0.394],
            116: [0.615, 0.01, 0.389],
            117: [0.442, 0.011, 0.556],
            118: [0.431, 0.011, 0.528],
            119: [0.431, 0.011, 0.722],
            120: [0.431, 0, 0.528],
            121: [0.431, 0.204, 0.528],
            122: [0.431, 0, 0.444],
            123: [0.75, 0.25, 0.5],
            124: [0.75, 0.249, 0.278],
            125: [0.75, 0.25, 0.5],
            126: [0.318, -0.215, 0.5],
            160: [0, 0, 0.25],
            163: [0.714, 0.011, 0.769],
            165: [0.683, 0, 0.75],
            168: [0.669, -0.554, 0.5],
            172: [0.356, -0.089, 0.667],
            174: [0.709, 0.175, 0.947],
            175: [0.59, -0.544, 0.5],
            176: [0.715, -0.542, 0.5],
            177: [0.666, 0, 0.778],
            180: [0.699, -0.505, 0.5],
            183: [0.31, -0.19, 0.278],
            215: [0.491, -0.009, 0.778],
            240: [0.749, 0.021, 0.556],
            247: [0.537, 0.036, 0.778],
            305: [0.442, 0, 0.278, { sk: 0.0278 }],
            567: [0.442, 0.205, 0.306, { sk: 0.0833 }],
            697: [0.56, -0.043, 0.275],
            710: [0.694, -0.531, 0.5],
            711: [0.644, -0.513, 0.5],
            713: [0.59, -0.544, 0.5],
            714: [0.699, -0.505, 0.5],
            715: [0.699, -0.505, 0.5],
            728: [0.694, -0.515, 0.5],
            729: [0.669, -0.549, 0.5],
            730: [0.715, -0.542, 0.5],
            732: [0.668, -0.565, 0.5],
            768: [0.699, -0.505, 0],
            769: [0.699, -0.505, 0],
            770: [0.694, -0.531, 0],
            771: [0.668, -0.565, 0],
            772: [0.59, -0.544, 0],
            774: [0.694, -0.515, 0],
            775: [0.669, -0.549, 0],
            776: [0.669, -0.554, 0],
            778: [0.715, -0.542, 0],
            779: [0.701, -0.51, 0],
            780: [0.644, -0.513, 0],
            824: [0.716, 0.215, 0],
            913: [0.716, 0, 0.75],
            914: [0.683, 0, 0.708],
            915: [0.68, 0, 0.625],
            916: [0.716, 0, 0.833],
            917: [0.68, 0, 0.681],
            918: [0.683, 0, 0.611],
            919: [0.683, 0, 0.75],
            920: [0.705, 0.022, 0.778],
            921: [0.683, 0, 0.361],
            922: [0.683, 0, 0.778],
            923: [0.716, 0, 0.694],
            924: [0.683, 0, 0.917],
            925: [0.683, 0, 0.75],
            926: [0.677, 0, 0.667],
            927: [0.705, 0.022, 0.778],
            928: [0.68, 0, 0.75],
            929: [0.683, 0, 0.681],
            931: [0.683, 0, 0.722],
            932: [0.677, 0, 0.722],
            933: [0.705, 0, 0.778],
            934: [0.683, 0, 0.722],
            935: [0.683, 0, 0.75],
            936: [0.683, 0, 0.778],
            937: [0.704, 0, 0.722],
            8192: [0, 0, 0.5],
            8193: [0, 0, 1],
            8194: [0, 0, 0.5],
            8195: [0, 0, 1],
            8196: [0, 0, 0.333],
            8197: [0, 0, 0.25],
            8198: [0, 0, 0.167],
            8201: [0, 0, 0.167],
            8202: [0, 0, 0.1],
            8203: [0, 0, 0],
            8204: [0, 0, 0],
            8211: [0.285, -0.248, 0.5],
            8212: [0.285, -0.248, 1],
            8213: [0.285, -0.248, 1],
            8214: [0.75, 0.25, 0.5],
            8215: [-0.025, 0.062, 0.5],
            8216: [0.694, -0.379, 0.278],
            8217: [0.694, -0.379, 0.278],
            8220: [0.694, -0.379, 0.5],
            8221: [0.694, -0.379, 0.5],
            8224: [0.705, 0.216, 0.444],
            8225: [0.705, 0.205, 0.444],
            8226: [0.444, -0.055, 0.5],
            8230: [0.12, 0, 1.172],
            8242: [0.56, -0.043, 0.275],
            8243: [0.56, 0, 0.55],
            8244: [0.56, 0, 0.825],
            8245: [0.56, -0.043, 0.275],
            8246: [0.56, 0, 0.55],
            8247: [0.56, 0, 0.825],
            8254: [0.59, -0.544, 0.5],
            8260: [0.75, 0.25, 0.5],
            8279: [0.56, 0, 1.1],
            8288: [0, 0, 0],
            8289: [0, 0, 0],
            8290: [0, 0, 0],
            8291: [0, 0, 0],
            8292: [0, 0, 0],
            8407: [0.714, -0.516, 0.5],
            8450: [0.702, 0.019, 0.722],
            8459: [0.717, 0.036, 0.969, { ic: 0.272, sk: 0.333 }],
            8460: [0.666, 0.133, 0.72],
            8461: [0.683, 0, 0.778],
            8462: [0.694, 0.011, 0.576, { sk: -0.0278 }],
            8463: [0.695, 0.013, 0.54, { ic: 0.022 }],
            8464: [0.717, 0.017, 0.809, { ic: 0.137, sk: 0.333 }],
            8465: [0.686, 0.026, 0.554],
            8466: [0.717, 0.017, 0.874, { ic: 0.161, sk: 0.306 }],
            8467: [0.705, 0.02, 0.417, { sk: 0.111 }],
            8469: [0.683, 0.02, 0.722],
            8472: [0.453, 0.216, 0.636, { sk: 0.111 }],
            8473: [0.683, 0, 0.611],
            8474: [0.701, 0.181, 0.778],
            8475: [0.717, 0.017, 0.85, { ic: 0.037, sk: 0.194 }],
            8476: [0.686, 0.026, 0.828],
            8477: [0.683, 0, 0.722],
            8484: [0.683, 0, 0.667],
            8486: [0.704, 0, 0.722],
            8487: [0.684, 0.022, 0.722],
            8488: [0.729, 0.139, 0.602],
            8492: [0.708, 0.028, 0.908, { ic: 0.02, sk: 0.194 }],
            8493: [0.685, 0.024, 0.613],
            8496: [0.707, 0.008, 0.562, { ic: 0.156, sk: 0.139 }],
            8497: [0.735, 0.036, 0.895, { ic: 0.095, sk: 0.222 }],
            8498: [0.695, 0, 0.556],
            8499: [0.721, 0.05, 1.08, { ic: 0.136, sk: 0.444 }],
            8501: [0.694, 0, 0.611],
            8502: [0.763, 0.021, 0.667, { ic: 0.02 }],
            8503: [0.764, 0.043, 0.444],
            8504: [0.764, 0.043, 0.667],
            8513: [0.705, 0.023, 0.639],
            8592: [0.511, 0.011, 1],
            8593: [0.694, 0.193, 0.5],
            8594: [0.511, 0.011, 1],
            8595: [0.694, 0.194, 0.5],
            8596: [0.511, 0.011, 1],
            8597: [0.772, 0.272, 0.5],
            8598: [0.72, 0.195, 1],
            8599: [0.72, 0.195, 1],
            8600: [0.695, 0.22, 1],
            8601: [0.695, 0.22, 1],
            8602: [0.437, -0.06, 1],
            8603: [0.437, -0.06, 1],
            8606: [0.417, -0.083, 1],
            8608: [0.417, -0.083, 1],
            8610: [0.417, -0.083, 1.111],
            8611: [0.417, -0.083, 1.111],
            8614: [0.511, 0.011, 1],
            8617: [0.511, 0.011, 1.126],
            8618: [0.511, 0.011, 1.126],
            8619: [0.575, 0.041, 1],
            8620: [0.575, 0.041, 1],
            8621: [0.417, -0.083, 1.389],
            8622: [0.437, -0.06, 1],
            8624: [0.722, 0, 0.5],
            8625: [0.722, 0, 0.5],
            8630: [0.461, 0, 1],
            8631: [0.46, 0, 1],
            8634: [0.65, 0.083, 0.778],
            8635: [0.65, 0.083, 0.778],
            8636: [0.511, -0.23, 1],
            8637: [0.27, 0.011, 1],
            8638: [0.694, 0.194, 0.417],
            8639: [0.694, 0.194, 0.417],
            8640: [0.511, -0.23, 1],
            8641: [0.27, 0.011, 1],
            8642: [0.694, 0.194, 0.417],
            8643: [0.694, 0.194, 0.417],
            8644: [0.667, 0, 1],
            8646: [0.667, 0, 1],
            8647: [0.583, 0.083, 1],
            8648: [0.694, 0.193, 0.833],
            8649: [0.583, 0.083, 1],
            8650: [0.694, 0.194, 0.833],
            8651: [0.514, 0.014, 1],
            8652: [0.671, 0.011, 1],
            8653: [0.534, 0.035, 1],
            8654: [0.534, 0.037, 1],
            8655: [0.534, 0.035, 1],
            8656: [0.525, 0.024, 1],
            8657: [0.694, 0.194, 0.611],
            8658: [0.525, 0.024, 1],
            8659: [0.694, 0.194, 0.611],
            8660: [0.526, 0.025, 1],
            8661: [0.772, 0.272, 0.611],
            8666: [0.611, 0.111, 1],
            8667: [0.611, 0.111, 1],
            8669: [0.417, -0.083, 1],
            8672: [0.437, -0.064, 1.334],
            8674: [0.437, -0.064, 1.334],
            8704: [0.694, 0.022, 0.556],
            8705: [0.846, 0.021, 0.5],
            8706: [0.715, 0.022, 0.531, { ic: 0.035, sk: 0.0833 }],
            8707: [0.694, 0, 0.556],
            8708: [0.716, 0.215, 0.556],
            8709: [0.772, 0.078, 0.5],
            8710: [0.716, 0, 0.833],
            8711: [0.683, 0.033, 0.833],
            8712: [0.54, 0.04, 0.667],
            8713: [0.716, 0.215, 0.667],
            8715: [0.54, 0.04, 0.667],
            8716: [0.716, 0.215, 0.667],
            8717: [0.44, 0, 0.429, { ic: 0.027 }],
            8719: [0.75, 0.25, 0.944],
            8720: [0.75, 0.25, 0.944],
            8721: [0.75, 0.25, 1.056],
            8722: [0.583, 0.082, 0.778],
            8723: [0.5, 0.166, 0.778],
            8724: [0.766, 0.093, 0.778],
            8725: [0.75, 0.25, 0.5],
            8726: [0.75, 0.25, 0.5],
            8727: [0.465, -0.035, 0.5],
            8728: [0.444, -0.055, 0.5],
            8729: [0.444, -0.055, 0.5],
            8730: [0.8, 0.2, 0.833, { ic: 0.02 }],
            8733: [0.442, 0.011, 0.778],
            8734: [0.442, 0.011, 1],
            8736: [0.694, 0, 0.722],
            8737: [0.714, 0.02, 0.722],
            8738: [0.551, 0.051, 0.722],
            8739: [0.75, 0.249, 0.278],
            8740: [0.75, 0.252, 0.278, { ic: 0.019 }],
            8741: [0.75, 0.25, 0.5],
            8742: [0.75, 0.25, 0.5, { ic: 0.018 }],
            8743: [0.598, 0.022, 0.667],
            8744: [0.598, 0.022, 0.667],
            8745: [0.598, 0.022, 0.667],
            8746: [0.598, 0.022, 0.667],
            8747: [0.716, 0.216, 0.417, { ic: 0.055 }],
            8748: [0.805, 0.306, 0.819, { ic: 0.138 }],
            8749: [0.805, 0.306, 1.166, { ic: 0.138 }],
            8750: [0.805, 0.306, 0.472, { ic: 0.138 }],
            8756: [0.471, 0.082, 0.667],
            8757: [0.471, 0.082, 0.667],
            8764: [0.367, -0.133, 0.778],
            8765: [0.367, -0.133, 0.778],
            8768: [0.583, 0.083, 0.278],
            8769: [0.467, -0.032, 0.778],
            8770: [0.463, -0.034, 0.778],
            8771: [0.464, -0.036, 0.778],
            8772: [0.716, 0.215, 0.778],
            8773: [0.589, -0.022, 0.778],
            8775: [0.652, 0.155, 0.778],
            8776: [0.483, -0.055, 0.778],
            8777: [0.716, 0.215, 0.778],
            8778: [0.579, 0.039, 0.778],
            8781: [0.484, -0.016, 0.778],
            8782: [0.492, -0.008, 0.778],
            8783: [0.492, -0.133, 0.778],
            8784: [0.67, -0.133, 0.778],
            8785: [0.609, 0.108, 0.778],
            8786: [0.601, 0.101, 0.778],
            8787: [0.601, 0.102, 0.778],
            8790: [0.367, -0.133, 0.778],
            8791: [0.721, -0.133, 0.778],
            8796: [0.859, -0.133, 0.778],
            8800: [0.716, 0.215, 0.778],
            8801: [0.464, -0.036, 0.778],
            8802: [0.716, 0.215, 0.778],
            8804: [0.636, 0.138, 0.778],
            8805: [0.636, 0.138, 0.778],
            8806: [0.753, 0.175, 0.778],
            8807: [0.753, 0.175, 0.778],
            8808: [0.752, 0.286, 0.778],
            8809: [0.752, 0.286, 0.778],
            8810: [0.568, 0.067, 1],
            8811: [0.567, 0.067, 1],
            8812: [0.75, 0.25, 0.5],
            8813: [0.716, 0.215, 0.778],
            8814: [0.708, 0.209, 0.778],
            8815: [0.708, 0.209, 0.778],
            8816: [0.801, 0.303, 0.778],
            8817: [0.801, 0.303, 0.778],
            8818: [0.732, 0.228, 0.778],
            8819: [0.732, 0.228, 0.778],
            8820: [0.732, 0.228, 0.778],
            8821: [0.732, 0.228, 0.778],
            8822: [0.681, 0.253, 0.778],
            8823: [0.681, 0.253, 0.778],
            8824: [0.716, 0.253, 0.778],
            8825: [0.716, 0.253, 0.778],
            8826: [0.539, 0.041, 0.778],
            8827: [0.539, 0.041, 0.778],
            8828: [0.58, 0.153, 0.778],
            8829: [0.58, 0.154, 0.778],
            8830: [0.732, 0.228, 0.778],
            8831: [0.732, 0.228, 0.778],
            8832: [0.705, 0.208, 0.778],
            8833: [0.705, 0.208, 0.778],
            8834: [0.54, 0.04, 0.778],
            8835: [0.54, 0.04, 0.778],
            8836: [0.716, 0.215, 0.778],
            8837: [0.716, 0.215, 0.778],
            8838: [0.636, 0.138, 0.778],
            8839: [0.636, 0.138, 0.778],
            8840: [0.801, 0.303, 0.778],
            8841: [0.801, 0.303, 0.778],
            8842: [0.635, 0.241, 0.778],
            8843: [0.635, 0.241, 0.778],
            8846: [0.598, 0.022, 0.667],
            8847: [0.539, 0.041, 0.778],
            8848: [0.539, 0.041, 0.778],
            8849: [0.636, 0.138, 0.778],
            8850: [0.636, 0.138, 0.778],
            8851: [0.598, 0, 0.667],
            8852: [0.598, 0, 0.667],
            8853: [0.583, 0.083, 0.778],
            8854: [0.583, 0.083, 0.778],
            8855: [0.583, 0.083, 0.778],
            8856: [0.583, 0.083, 0.778],
            8857: [0.583, 0.083, 0.778],
            8858: [0.582, 0.082, 0.778],
            8859: [0.582, 0.082, 0.778],
            8861: [0.582, 0.082, 0.778],
            8862: [0.689, 0, 0.778],
            8863: [0.689, 0, 0.778],
            8864: [0.689, 0, 0.778],
            8865: [0.689, 0, 0.778],
            8866: [0.694, 0, 0.611],
            8867: [0.694, 0, 0.611],
            8868: [0.668, 0, 0.778],
            8869: [0.668, 0, 0.778],
            8872: [0.75, 0.249, 0.867],
            8873: [0.694, 0, 0.722],
            8874: [0.694, 0, 0.889],
            8876: [0.695, 0, 0.611],
            8877: [0.695, 0, 0.611],
            8878: [0.695, 0, 0.722],
            8879: [0.695, 0, 0.722],
            8882: [0.539, 0.041, 0.778],
            8883: [0.539, 0.041, 0.778],
            8884: [0.636, 0.138, 0.778],
            8885: [0.636, 0.138, 0.778],
            8888: [0.408, -0.092, 1.111],
            8890: [0.431, 0.212, 0.556],
            8891: [0.716, 0, 0.611],
            8892: [0.716, 0, 0.611],
            8896: [0.75, 0.249, 0.833],
            8897: [0.75, 0.249, 0.833],
            8898: [0.75, 0.249, 0.833],
            8899: [0.75, 0.249, 0.833],
            8900: [0.488, -0.012, 0.5],
            8901: [0.31, -0.19, 0.278],
            8902: [0.486, -0.016, 0.5],
            8903: [0.545, 0.044, 0.778],
            8904: [0.505, 0.005, 0.9],
            8905: [0.492, -0.008, 0.778],
            8906: [0.492, -0.008, 0.778],
            8907: [0.694, 0.022, 0.778],
            8908: [0.694, 0.022, 0.778],
            8909: [0.464, -0.036, 0.778],
            8910: [0.578, 0.021, 0.76],
            8911: [0.578, 0.022, 0.76],
            8912: [0.54, 0.04, 0.778],
            8913: [0.54, 0.04, 0.778],
            8914: [0.598, 0.022, 0.667],
            8915: [0.598, 0.022, 0.667],
            8916: [0.736, 0.022, 0.667],
            8918: [0.541, 0.041, 0.778],
            8919: [0.541, 0.041, 0.778],
            8920: [0.568, 0.067, 1.333],
            8921: [0.568, 0.067, 1.333],
            8922: [0.886, 0.386, 0.778],
            8923: [0.886, 0.386, 0.778],
            8926: [0.734, 0, 0.778],
            8927: [0.734, 0, 0.778],
            8928: [0.801, 0.303, 0.778],
            8929: [0.801, 0.303, 0.778],
            8930: [0.716, 0.215, 0.778],
            8931: [0.716, 0.215, 0.778],
            8934: [0.73, 0.359, 0.778],
            8935: [0.73, 0.359, 0.778],
            8936: [0.73, 0.359, 0.778],
            8937: [0.73, 0.359, 0.778],
            8938: [0.706, 0.208, 0.778],
            8939: [0.706, 0.208, 0.778],
            8940: [0.802, 0.303, 0.778],
            8941: [0.801, 0.303, 0.778],
            8942: [1.3, 0.03, 0.278],
            8943: [0.31, -0.19, 1.172],
            8945: [1.52, -0.1, 1.282],
            8965: [0.716, 0, 0.611],
            8966: [0.813, 0.097, 0.611],
            8968: [0.75, 0.25, 0.444],
            8969: [0.75, 0.25, 0.444],
            8970: [0.75, 0.25, 0.444],
            8971: [0.75, 0.25, 0.444],
            8988: [0.694, -0.306, 0.5],
            8989: [0.694, -0.306, 0.5],
            8990: [0.366, 0.022, 0.5],
            8991: [0.366, 0.022, 0.5],
            8994: [0.388, -0.122, 1],
            8995: [0.378, -0.134, 1],
            9001: [0.75, 0.25, 0.389],
            9002: [0.75, 0.25, 0.389],
            9136: [0.744, 0.244, 0.412],
            9137: [0.744, 0.244, 0.412],
            9168: [0.602, 0, 0.667],
            9416: [0.709, 0.175, 0.902],
            9484: [0.694, -0.306, 0.5],
            9488: [0.694, -0.306, 0.5],
            9492: [0.366, 0.022, 0.5],
            9496: [0.366, 0.022, 0.5],
            9585: [0.694, 0.195, 0.889],
            9586: [0.694, 0.195, 0.889],
            9632: [0.689, 0, 0.778],
            9633: [0.689, 0, 0.778],
            9642: [0.689, 0, 0.778],
            9650: [0.575, 0.02, 0.722],
            9651: [0.716, 0, 0.889],
            9652: [0.575, 0.02, 0.722],
            9653: [0.716, 0, 0.889],
            9654: [0.539, 0.041, 0.778],
            9656: [0.539, 0.041, 0.778],
            9657: [0.505, 0.005, 0.5],
            9660: [0.576, 0.019, 0.722],
            9661: [0.5, 0.215, 0.889],
            9662: [0.576, 0.019, 0.722],
            9663: [0.5, 0.215, 0.889],
            9664: [0.539, 0.041, 0.778],
            9666: [0.539, 0.041, 0.778],
            9667: [0.505, 0.005, 0.5],
            9674: [0.716, 0.132, 0.667],
            9711: [0.715, 0.215, 1],
            9723: [0.689, 0, 0.778],
            9724: [0.689, 0, 0.778],
            9733: [0.694, 0.111, 0.944],
            9824: [0.727, 0.13, 0.778],
            9825: [0.716, 0.033, 0.778],
            9826: [0.727, 0.162, 0.778],
            9827: [0.726, 0.13, 0.778],
            9837: [0.75, 0.022, 0.389],
            9838: [0.734, 0.223, 0.389],
            9839: [0.723, 0.223, 0.389],
            10003: [0.706, 0.034, 0.833],
            10016: [0.716, 0.022, 0.833],
            10072: [0.75, 0.249, 0.278],
            10216: [0.75, 0.25, 0.389],
            10217: [0.75, 0.25, 0.389],
            10222: [0.744, 0.244, 0.412],
            10223: [0.744, 0.244, 0.412],
            10229: [0.511, 0.011, 1.609],
            10230: [0.511, 0.011, 1.638],
            10231: [0.511, 0.011, 1.859],
            10232: [0.525, 0.024, 1.609],
            10233: [0.525, 0.024, 1.638],
            10234: [0.525, 0.024, 1.858],
            10236: [0.511, 0.011, 1.638],
            10731: [0.716, 0.132, 0.667],
            10744: [0.716, 0.215, 0.778],
            10752: [0.75, 0.25, 1.111],
            10753: [0.75, 0.25, 1.111],
            10754: [0.75, 0.25, 1.111],
            10756: [0.75, 0.249, 0.833],
            10758: [0.75, 0.249, 0.833],
            10764: [0.805, 0.306, 1.638, { ic: 0.138 }],
            10799: [0.491, -0.009, 0.778],
            10815: [0.683, 0, 0.75],
            10846: [0.813, 0.097, 0.611],
            10877: [0.636, 0.138, 0.778],
            10878: [0.636, 0.138, 0.778],
            10885: [0.762, 0.29, 0.778],
            10886: [0.762, 0.29, 0.778],
            10887: [0.635, 0.241, 0.778],
            10888: [0.635, 0.241, 0.778],
            10889: [0.761, 0.387, 0.778],
            10890: [0.761, 0.387, 0.778],
            10891: [1.003, 0.463, 0.778],
            10892: [1.003, 0.463, 0.778],
            10901: [0.636, 0.138, 0.778],
            10902: [0.636, 0.138, 0.778],
            10927: [0.636, 0.138, 0.778],
            10928: [0.636, 0.138, 0.778],
            10933: [0.752, 0.286, 0.778],
            10934: [0.752, 0.286, 0.778],
            10935: [0.761, 0.294, 0.778],
            10936: [0.761, 0.294, 0.778],
            10937: [0.761, 0.337, 0.778],
            10938: [0.761, 0.337, 0.778],
            10949: [0.753, 0.215, 0.778],
            10950: [0.753, 0.215, 0.778],
            10955: [0.783, 0.385, 0.778],
            10956: [0.783, 0.385, 0.778],
            12296: [0.75, 0.25, 0.389],
            12297: [0.75, 0.25, 0.389],
            57350: [0.43, 0.023, 0.222, { ic: 0.018 }],
            57351: [0.431, 0.024, 0.389, { ic: 0.018 }],
            57352: [0.605, 0.085, 0.778],
            57353: [0.434, 0.006, 0.667, { ic: 0.067 }],
            57356: [0.752, 0.284, 0.778],
            57357: [0.752, 0.284, 0.778],
            57358: [0.919, 0.421, 0.778],
            57359: [0.801, 0.303, 0.778],
            57360: [0.801, 0.303, 0.778],
            57361: [0.919, 0.421, 0.778],
            57366: [0.828, 0.33, 0.778],
            57367: [0.752, 0.332, 0.778],
            57368: [0.828, 0.33, 0.778],
            57369: [0.752, 0.333, 0.778],
            57370: [0.634, 0.255, 0.778],
            57371: [0.634, 0.254, 0.778],
            119808: [0.698, 0, 0.869],
            119809: [0.686, 0, 0.818],
            119810: [0.697, 0.011, 0.831],
            119811: [0.686, 0, 0.882],
            119812: [0.68, 0, 0.756],
            119813: [0.68, 0, 0.724],
            119814: [0.697, 0.01, 0.904],
            119815: [0.686, 0, 0.9],
            119816: [0.686, 0, 0.436],
            119817: [0.686, 0.011, 0.594],
            119818: [0.686, 0, 0.901],
            119819: [0.686, 0, 0.692],
            119820: [0.686, 0, 1.092],
            119821: [0.686, 0, 0.9],
            119822: [0.696, 0.01, 0.864],
            119823: [0.686, 0, 0.786],
            119824: [0.696, 0.193, 0.864],
            119825: [0.686, 0.011, 0.862],
            119826: [0.697, 0.011, 0.639],
            119827: [0.675, 0, 0.8],
            119828: [0.686, 0.011, 0.885],
            119829: [0.686, 0.007, 0.869],
            119830: [0.686, 0.007, 1.189],
            119831: [0.686, 0, 0.869],
            119832: [0.686, 0, 0.869],
            119833: [0.686, 0, 0.703],
            119834: [0.453, 0.006, 0.559],
            119835: [0.694, 0.006, 0.639],
            119836: [0.453, 0.006, 0.511],
            119837: [0.694, 0.006, 0.639],
            119838: [0.452, 0.006, 0.527],
            119839: [0.7, 0, 0.351, { ic: 0.101 }],
            119840: [0.455, 0.201, 0.575],
            119841: [0.694, 0, 0.639],
            119842: [0.695, 0, 0.319],
            119843: [0.695, 0.2, 0.351],
            119844: [0.694, 0, 0.607],
            119845: [0.694, 0, 0.319],
            119846: [0.45, 0, 0.958],
            119847: [0.45, 0, 0.639],
            119848: [0.452, 0.005, 0.575],
            119849: [0.45, 0.194, 0.639],
            119850: [0.45, 0.194, 0.607],
            119851: [0.45, 0, 0.474],
            119852: [0.453, 0.006, 0.454],
            119853: [0.635, 0.005, 0.447],
            119854: [0.45, 0.006, 0.639],
            119855: [0.444, 0, 0.607],
            119856: [0.444, 0, 0.831],
            119857: [0.444, 0, 0.607],
            119858: [0.444, 0.2, 0.607],
            119859: [0.444, 0, 0.511],
            119860: [0.716, 0, 0.75, { sk: 0.139 }],
            119861: [0.683, 0, 0.759, { sk: 0.0833 }],
            119862: [0.705, 0.022, 0.715, { ic: 0.045, sk: 0.0833 }],
            119863: [0.683, 0, 0.828, { sk: 0.0556 }],
            119864: [0.68, 0, 0.738, { ic: 0.026, sk: 0.0833 }],
            119865: [0.68, 0, 0.643, { ic: 0.106, sk: 0.0833 }],
            119866: [0.705, 0.022, 0.786, { sk: 0.0833 }],
            119867: [0.683, 0, 0.831, { ic: 0.057, sk: 0.0556 }],
            119868: [0.683, 0, 0.44, { ic: 0.064, sk: 0.111 }],
            119869: [0.683, 0.022, 0.555, { ic: 0.078, sk: 0.167 }],
            119870: [0.683, 0, 0.849, { ic: 0.04, sk: 0.0556 }],
            119871: [0.683, 0, 0.681, { sk: 0.0278 }],
            119872: [0.683, 0, 0.97, { ic: 0.081, sk: 0.0833 }],
            119873: [0.683, 0, 0.803, { ic: 0.085, sk: 0.0833 }],
            119874: [0.704, 0.022, 0.763, { sk: 0.0833 }],
            119875: [0.683, 0, 0.642, { ic: 0.109, sk: 0.0833 }],
            119876: [0.704, 0.194, 0.791, { sk: 0.0833 }],
            119877: [0.683, 0.021, 0.759, { sk: 0.0833 }],
            119878: [0.705, 0.022, 0.613, { ic: 0.032, sk: 0.0833 }],
            119879: [0.677, 0, 0.584, { ic: 0.12, sk: 0.0833 }],
            119880: [0.683, 0.022, 0.683, { ic: 0.084, sk: 0.0278 }],
            119881: [0.683, 0.022, 0.583, { ic: 0.186 }],
            119882: [0.683, 0.022, 0.944, { ic: 0.104 }],
            119883: [0.683, 0, 0.828, { ic: 0.024, sk: 0.0833 }],
            119884: [0.683, 0, 0.581, { ic: 0.182 }],
            119885: [0.683, 0, 0.683, { ic: 0.04, sk: 0.0833 }],
            119886: [0.441, 0.01, 0.529],
            119887: [0.694, 0.011, 0.429],
            119888: [0.442, 0.011, 0.433, { sk: 0.0556 }],
            119889: [0.694, 0.01, 0.52, { sk: 0.167 }],
            119890: [0.442, 0.011, 0.466, { sk: 0.0556 }],
            119891: [0.705, 0.205, 0.49, { ic: 0.06, sk: 0.167 }],
            119892: [0.442, 0.205, 0.477, { sk: 0.0278 }],
            119894: [0.661, 0.011, 0.345],
            119895: [0.661, 0.204, 0.412],
            119896: [0.694, 0.011, 0.521],
            119897: [0.694, 0.011, 0.298, { sk: 0.0833 }],
            119898: [0.442, 0.011, 0.878],
            119899: [0.442, 0.011, 0.6],
            119900: [0.441, 0.011, 0.485, { sk: 0.0556 }],
            119901: [0.442, 0.194, 0.503, { sk: 0.0833 }],
            119902: [0.442, 0.194, 0.446, { ic: 0.014, sk: 0.0833 }],
            119903: [0.442, 0.011, 0.451, { sk: 0.0556 }],
            119904: [0.442, 0.01, 0.469, { sk: 0.0556 }],
            119905: [0.626, 0.011, 0.361, { sk: 0.0833 }],
            119906: [0.442, 0.011, 0.572, { sk: 0.0278 }],
            119907: [0.443, 0.011, 0.485, { sk: 0.0278 }],
            119908: [0.443, 0.011, 0.716, { sk: 0.0833 }],
            119909: [0.442, 0.011, 0.572, { sk: 0.0278 }],
            119910: [0.442, 0.205, 0.49, { sk: 0.0556 }],
            119911: [0.442, 0.011, 0.465, { sk: 0.0556 }],
            119912: [0.711, 0, 0.869, { sk: 0.16 }],
            119913: [0.686, 0, 0.866, { sk: 0.0958 }],
            119914: [0.703, 0.017, 0.817, { ic: 0.038, sk: 0.0958 }],
            119915: [0.686, 0, 0.938, { sk: 0.0639 }],
            119916: [0.68, 0, 0.81, { ic: 0.015, sk: 0.0958 }],
            119917: [0.68, 0, 0.689, { ic: 0.12, sk: 0.0958 }],
            119918: [0.703, 0.016, 0.887, { sk: 0.0958 }],
            119919: [0.686, 0, 0.982, { ic: 0.045, sk: 0.0639 }],
            119920: [0.686, 0, 0.511, { ic: 0.062, sk: 0.128 }],
            119921: [0.686, 0.017, 0.631, { ic: 0.063, sk: 0.192 }],
            119922: [0.686, 0, 0.971, { ic: 0.032, sk: 0.0639 }],
            119923: [0.686, 0, 0.756, { sk: 0.0319 }],
            119924: [0.686, 0, 1.142, { ic: 0.077, sk: 0.0958 }],
            119925: [0.686, 0, 0.95, { ic: 0.077, sk: 0.0958 }],
            119926: [0.703, 0.017, 0.837, { sk: 0.0958 }],
            119927: [0.686, 0, 0.723, { ic: 0.124, sk: 0.0958 }],
            119928: [0.703, 0.194, 0.869, { sk: 0.0958 }],
            119929: [0.686, 0.017, 0.872, { sk: 0.0958 }],
            119930: [0.703, 0.017, 0.693, { ic: 0.021, sk: 0.0958 }],
            119931: [0.675, 0, 0.637, { ic: 0.135, sk: 0.0958 }],
            119932: [0.686, 0.016, 0.8, { ic: 0.077, sk: 0.0319 }],
            119933: [0.686, 0.016, 0.678, { ic: 0.208 }],
            119934: [0.686, 0.017, 1.093, { ic: 0.114 }],
            119935: [0.686, 0, 0.947, { sk: 0.0958 }],
            119936: [0.686, 0, 0.675, { ic: 0.201 }],
            119937: [0.686, 0, 0.773, { ic: 0.032, sk: 0.0958 }],
            119938: [0.452, 0.008, 0.633],
            119939: [0.694, 0.008, 0.521],
            119940: [0.451, 0.008, 0.513, { sk: 0.0639 }],
            119941: [0.694, 0.008, 0.61, { sk: 0.192 }],
            119942: [0.452, 0.008, 0.554, { sk: 0.0639 }],
            119943: [0.701, 0.201, 0.568, { ic: 0.056, sk: 0.192 }],
            119944: [0.452, 0.202, 0.545, { sk: 0.0319 }],
            119945: [0.694, 0.008, 0.668, { sk: -0.0319 }],
            119946: [0.694, 0.008, 0.405],
            119947: [0.694, 0.202, 0.471],
            119948: [0.694, 0.008, 0.604],
            119949: [0.694, 0.008, 0.348, { sk: 0.0958 }],
            119950: [0.452, 0.008, 1.032],
            119951: [0.452, 0.008, 0.713],
            119952: [0.452, 0.008, 0.585, { sk: 0.0639 }],
            119953: [0.452, 0.194, 0.601, { sk: 0.0958 }],
            119954: [0.452, 0.194, 0.542, { sk: 0.0958 }],
            119955: [0.452, 0.008, 0.529, { sk: 0.0639 }],
            119956: [0.451, 0.008, 0.531, { sk: 0.0639 }],
            119957: [0.643, 0.007, 0.415, { sk: 0.0958 }],
            119958: [0.452, 0.008, 0.681, { sk: 0.0319 }],
            119959: [0.453, 0.008, 0.567, { sk: 0.0319 }],
            119960: [0.453, 0.008, 0.831, { sk: 0.0958 }],
            119961: [0.452, 0.008, 0.659, { sk: 0.0319 }],
            119962: [0.452, 0.202, 0.59, { sk: 0.0639 }],
            119963: [0.452, 0.008, 0.555, { sk: 0.0639 }],
            119964: [0.717, 0.008, 0.803, { ic: 0.213, sk: 0.389 }],
            119966: [0.728, 0.026, 0.666, { ic: 0.153, sk: 0.278 }],
            119967: [0.708, 0.031, 0.774, { ic: 0.081, sk: 0.111 }],
            119970: [0.717, 0.037, 0.61, { ic: 0.128, sk: 0.25 }],
            119973: [0.717, 0.314, 1.052, { ic: 0.081, sk: 0.417 }],
            119974: [0.717, 0.037, 0.914, { ic: 0.29, sk: 0.361 }],
            119977: [0.726, 0.036, 0.902, { ic: 0.306, sk: 0.389 }],
            119978: [0.707, 0.008, 0.738, { ic: 0.067, sk: 0.167 }],
            119979: [0.716, 0.037, 1.013, { ic: 0.018, sk: 0.222 }],
            119980: [0.717, 0.017, 0.883, { sk: 0.278 }],
            119982: [0.708, 0.036, 0.868, { ic: 0.148, sk: 0.333 }],
            119983: [0.735, 0.037, 0.747, { ic: 0.249, sk: 0.222 }],
            119984: [0.717, 0.017, 0.8, { ic: 0.16, sk: 0.25 }],
            119985: [0.717, 0.017, 0.622, { ic: 0.228, sk: 0.222 }],
            119986: [0.717, 0.017, 0.805, { ic: 0.221, sk: 0.25 }],
            119987: [0.717, 0.017, 0.944, { ic: 0.187, sk: 0.278 }],
            119988: [0.716, 0.017, 0.71, { ic: 0.249, sk: 0.194 }],
            119989: [0.717, 0.016, 0.821, { ic: 0.211, sk: 0.306 }],
            120068: [0.696, 0.026, 0.718],
            120069: [0.691, 0.027, 0.884],
            120071: [0.685, 0.027, 0.832],
            120072: [0.685, 0.024, 0.663],
            120073: [0.686, 0.153, 0.611],
            120074: [0.69, 0.026, 0.785],
            120077: [0.686, 0.139, 0.552],
            120078: [0.68, 0.027, 0.668, { ic: 0.014 }],
            120079: [0.686, 0.026, 0.666],
            120080: [0.692, 0.027, 1.05],
            120081: [0.686, 0.025, 0.832],
            120082: [0.729, 0.027, 0.827],
            120083: [0.692, 0.218, 0.828],
            120084: [0.729, 0.069, 0.827],
            120086: [0.692, 0.027, 0.829],
            120087: [0.701, 0.027, 0.669],
            120088: [0.697, 0.027, 0.646, { ic: 0.019 }],
            120089: [0.686, 0.026, 0.831],
            120090: [0.686, 0.027, 1.046],
            120091: [0.688, 0.027, 0.719],
            120092: [0.686, 0.218, 0.833],
            120094: [0.47, 0.035, 0.5],
            120095: [0.685, 0.031, 0.513],
            120096: [0.466, 0.029, 0.389],
            120097: [0.609, 0.033, 0.499],
            120098: [0.467, 0.03, 0.401],
            120099: [0.681, 0.221, 0.326],
            120100: [0.47, 0.209, 0.504],
            120101: [0.688, 0.205, 0.521],
            120102: [0.673, 0.02, 0.279],
            120103: [0.672, 0.208, 0.281],
            120104: [0.689, 0.025, 0.389],
            120105: [0.685, 0.02, 0.28],
            120106: [0.475, 0.026, 0.767],
            120107: [0.475, 0.022, 0.527],
            120108: [0.48, 0.028, 0.489],
            120109: [0.541, 0.212, 0.5],
            120110: [0.479, 0.219, 0.489],
            120111: [0.474, 0.021, 0.389],
            120112: [0.478, 0.029, 0.443],
            120113: [0.64, 0.02, 0.333, { ic: 0.015 }],
            120114: [0.474, 0.023, 0.517],
            120115: [0.53, 0.028, 0.512],
            120116: [0.532, 0.028, 0.774],
            120117: [0.472, 0.188, 0.389],
            120118: [0.528, 0.218, 0.499],
            120119: [0.471, 0.214, 0.391],
            120120: [0.701, 0, 0.722],
            120121: [0.683, 0, 0.667],
            120123: [0.683, 0, 0.722],
            120124: [0.683, 0, 0.667],
            120125: [0.683, 0, 0.611],
            120126: [0.702, 0.019, 0.778],
            120128: [0.683, 0, 0.389],
            120129: [0.683, 0.077, 0.5],
            120130: [0.683, 0, 0.778],
            120131: [0.683, 0, 0.667],
            120132: [0.683, 0, 0.944],
            120134: [0.701, 0.019, 0.778],
            120138: [0.702, 0.012, 0.556],
            120139: [0.683, 0, 0.667],
            120140: [0.683, 0.019, 0.722],
            120141: [0.683, 0.02, 0.722],
            120142: [0.683, 0.019, 1],
            120143: [0.683, 0, 0.722],
            120144: [0.683, 0, 0.722],
            120172: [0.686, 0.031, 0.847],
            120173: [0.684, 0.031, 1.044],
            120174: [0.676, 0.032, 0.723],
            120175: [0.683, 0.029, 0.982],
            120176: [0.686, 0.029, 0.783],
            120177: [0.684, 0.146, 0.722],
            120178: [0.687, 0.029, 0.927],
            120179: [0.683, 0.126, 0.851],
            120180: [0.681, 0.025, 0.655],
            120181: [0.68, 0.141, 0.652],
            120182: [0.681, 0.026, 0.789, { ic: 0.017 }],
            120183: [0.683, 0.028, 0.786],
            120184: [0.683, 0.032, 1.239],
            120185: [0.679, 0.03, 0.983],
            120186: [0.726, 0.03, 0.976],
            120187: [0.688, 0.223, 0.977],
            120188: [0.726, 0.083, 0.976],
            120189: [0.688, 0.028, 0.978],
            120190: [0.685, 0.031, 0.978],
            120191: [0.686, 0.03, 0.79, { ic: 0.012 }],
            120192: [0.688, 0.039, 0.851, { ic: 0.02 }],
            120193: [0.685, 0.029, 0.982],
            120194: [0.683, 0.03, 1.235],
            120195: [0.681, 0.035, 0.849],
            120196: [0.688, 0.214, 0.984],
            120197: [0.677, 0.148, 0.711],
            120198: [0.472, 0.032, 0.603],
            120199: [0.69, 0.032, 0.59],
            120200: [0.473, 0.026, 0.464],
            120201: [0.632, 0.028, 0.589],
            120202: [0.471, 0.027, 0.472],
            120203: [0.687, 0.222, 0.388],
            120204: [0.472, 0.208, 0.595],
            120205: [0.687, 0.207, 0.615],
            120206: [0.686, 0.025, 0.331],
            120207: [0.682, 0.203, 0.332],
            120208: [0.682, 0.025, 0.464],
            120209: [0.681, 0.024, 0.337],
            120210: [0.476, 0.031, 0.921],
            120211: [0.473, 0.028, 0.654],
            120212: [0.482, 0.034, 0.609],
            120213: [0.557, 0.207, 0.604],
            120214: [0.485, 0.211, 0.596],
            120215: [0.472, 0.026, 0.46],
            120216: [0.479, 0.034, 0.523],
            120217: [0.648, 0.027, 0.393, { ic: 0.014 }],
            120218: [0.472, 0.032, 0.589, { ic: 0.014 }],
            120219: [0.546, 0.027, 0.604],
            120220: [0.549, 0.032, 0.918],
            120221: [0.471, 0.188, 0.459],
            120222: [0.557, 0.221, 0.589],
            120223: [0.471, 0.214, 0.461],
            120224: [0.694, 0, 0.667],
            120225: [0.694, 0, 0.667],
            120226: [0.705, 0.011, 0.639],
            120227: [0.694, 0, 0.722],
            120228: [0.691, 0, 0.597],
            120229: [0.691, 0, 0.569],
            120230: [0.704, 0.011, 0.667],
            120231: [0.694, 0, 0.708],
            120232: [0.694, 0, 0.278],
            120233: [0.694, 0.022, 0.472],
            120234: [0.694, 0, 0.694],
            120235: [0.694, 0, 0.542],
            120236: [0.694, 0, 0.875],
            120237: [0.694, 0, 0.708],
            120238: [0.715, 0.022, 0.736],
            120239: [0.694, 0, 0.639],
            120240: [0.715, 0.125, 0.736],
            120241: [0.694, 0, 0.646],
            120242: [0.716, 0.022, 0.556],
            120243: [0.688, 0, 0.681],
            120244: [0.694, 0.022, 0.688],
            120245: [0.694, 0, 0.667],
            120246: [0.694, 0, 0.944],
            120247: [0.694, 0, 0.667],
            120248: [0.694, 0, 0.667],
            120249: [0.694, 0, 0.611],
            120250: [0.46, 0.01, 0.481],
            120251: [0.694, 0.011, 0.517],
            120252: [0.46, 0.01, 0.444],
            120253: [0.694, 0.01, 0.517],
            120254: [0.461, 0.01, 0.444],
            120255: [0.705, 0, 0.306, { ic: 0.041 }],
            120256: [0.455, 0.206, 0.5],
            120257: [0.694, 0, 0.517],
            120258: [0.68, 0, 0.239],
            120259: [0.68, 0.205, 0.267],
            120260: [0.694, 0, 0.489],
            120261: [0.694, 0, 0.239],
            120262: [0.455, 0, 0.794],
            120263: [0.455, 0, 0.517],
            120264: [0.46, 0.01, 0.5],
            120265: [0.455, 0.194, 0.517],
            120266: [0.455, 0.194, 0.517],
            120267: [0.455, 0, 0.342],
            120268: [0.46, 0.01, 0.383],
            120269: [0.571, 0.01, 0.361],
            120270: [0.444, 0.01, 0.517],
            120271: [0.444, 0, 0.461],
            120272: [0.444, 0, 0.683],
            120273: [0.444, 0, 0.461],
            120274: [0.444, 0.204, 0.461],
            120275: [0.444, 0, 0.435],
            120276: [0.694, 0, 0.733],
            120277: [0.694, 0, 0.733],
            120278: [0.704, 0.011, 0.703],
            120279: [0.694, 0, 0.794],
            120280: [0.691, 0, 0.642],
            120281: [0.691, 0, 0.611],
            120282: [0.705, 0.011, 0.733],
            120283: [0.694, 0, 0.794],
            120284: [0.694, 0, 0.331],
            120285: [0.694, 0.022, 0.519],
            120286: [0.694, 0, 0.764],
            120287: [0.694, 0, 0.581],
            120288: [0.694, 0, 0.978],
            120289: [0.694, 0, 0.794],
            120290: [0.716, 0.022, 0.794],
            120291: [0.694, 0, 0.703],
            120292: [0.716, 0.106, 0.794],
            120293: [0.694, 0, 0.703],
            120294: [0.716, 0.022, 0.611],
            120295: [0.688, 0, 0.733],
            120296: [0.694, 0.022, 0.764],
            120297: [0.694, 0, 0.733],
            120298: [0.694, 0, 1.039],
            120299: [0.694, 0, 0.733],
            120300: [0.694, 0, 0.733],
            120301: [0.694, 0, 0.672],
            120302: [0.475, 0.011, 0.525],
            120303: [0.694, 0.01, 0.561],
            120304: [0.475, 0.011, 0.489],
            120305: [0.694, 0.011, 0.561],
            120306: [0.474, 0.01, 0.511],
            120307: [0.705, 0, 0.336, { ic: 0.045 }],
            120308: [0.469, 0.206, 0.55],
            120309: [0.694, 0, 0.561],
            120310: [0.695, 0, 0.256],
            120311: [0.695, 0.205, 0.286],
            120312: [0.694, 0, 0.531],
            120313: [0.694, 0, 0.256],
            120314: [0.469, 0, 0.867],
            120315: [0.468, 0, 0.561],
            120316: [0.474, 0.011, 0.55],
            120317: [0.469, 0.194, 0.561],
            120318: [0.469, 0.194, 0.561],
            120319: [0.469, 0, 0.372],
            120320: [0.474, 0.01, 0.422],
            120321: [0.589, 0.01, 0.404],
            120322: [0.458, 0.011, 0.561],
            120323: [0.458, 0, 0.5],
            120324: [0.458, 0, 0.744],
            120325: [0.458, 0, 0.5],
            120326: [0.458, 0.205, 0.5],
            120327: [0.458, 0, 0.476],
            120328: [0.694, 0, 0.667],
            120329: [0.694, 0, 0.667, { ic: 0.029 }],
            120330: [0.705, 0.01, 0.639, { ic: 0.08 }],
            120331: [0.694, 0, 0.722, { ic: 0.025 }],
            120332: [0.691, 0, 0.597, { ic: 0.091 }],
            120333: [0.691, 0, 0.569, { ic: 0.104 }],
            120334: [0.705, 0.011, 0.667, { ic: 0.063 }],
            120335: [0.694, 0, 0.708, { ic: 0.06 }],
            120336: [0.694, 0, 0.278, { ic: 0.06 }],
            120337: [0.694, 0.022, 0.472, { ic: 0.063 }],
            120338: [0.694, 0, 0.694, { ic: 0.091 }],
            120339: [0.694, 0, 0.542],
            120340: [0.694, 0, 0.875, { ic: 0.054 }],
            120341: [0.694, 0, 0.708, { ic: 0.058 }],
            120342: [0.716, 0.022, 0.736, { ic: 0.027 }],
            120343: [0.694, 0, 0.639, { ic: 0.051 }],
            120344: [0.716, 0.125, 0.736, { ic: 0.027 }],
            120345: [0.694, 0, 0.646, { ic: 0.052 }],
            120346: [0.716, 0.022, 0.556, { ic: 0.053 }],
            120347: [0.688, 0, 0.681, { ic: 0.109 }],
            120348: [0.694, 0.022, 0.688, { ic: 0.059 }],
            120349: [0.694, 0, 0.667, { ic: 0.132 }],
            120350: [0.694, 0, 0.944, { ic: 0.132 }],
            120351: [0.694, 0, 0.667, { ic: 0.091 }],
            120352: [0.694, 0, 0.667, { ic: 0.143 }],
            120353: [0.694, 0, 0.611, { ic: 0.091 }],
            120354: [0.461, 0.01, 0.481],
            120355: [0.694, 0.011, 0.517, { ic: 0.022 }],
            120356: [0.46, 0.011, 0.444, { ic: 0.055 }],
            120357: [0.694, 0.01, 0.517, { ic: 0.071 }],
            120358: [0.46, 0.011, 0.444, { ic: 0.028 }],
            120359: [0.705, 0, 0.306, { ic: 0.188 }],
            120360: [0.455, 0.206, 0.5, { ic: 0.068 }],
            120361: [0.694, 0, 0.517],
            120362: [0.68, 0, 0.239, { ic: 0.076 }],
            120363: [0.68, 0.204, 0.267, { ic: 0.069 }],
            120364: [0.694, 0, 0.489, { ic: 0.054 }],
            120365: [0.694, 0, 0.239, { ic: 0.072 }],
            120366: [0.455, 0, 0.794],
            120367: [0.454, 0, 0.517],
            120368: [0.461, 0.011, 0.5, { ic: 0.023 }],
            120369: [0.455, 0.194, 0.517, { ic: 0.021 }],
            120370: [0.455, 0.194, 0.517, { ic: 0.021 }],
            120371: [0.455, 0, 0.342, { ic: 0.082 }],
            120372: [0.461, 0.011, 0.383, { ic: 0.053 }],
            120373: [0.571, 0.011, 0.361, { ic: 0.049 }],
            120374: [0.444, 0.01, 0.517, { ic: 0.02 }],
            120375: [0.444, 0, 0.461, { ic: 0.079 }],
            120376: [0.444, 0, 0.683, { ic: 0.079 }],
            120377: [0.444, 0, 0.461, { ic: 0.076 }],
            120378: [0.444, 0.205, 0.461, { ic: 0.079 }],
            120379: [0.444, 0, 0.435, { ic: 0.059 }],
            120432: [0.623, 0, 0.525],
            120433: [0.611, 0, 0.525],
            120434: [0.622, 0.011, 0.525],
            120435: [0.611, 0, 0.525],
            120436: [0.611, 0, 0.525],
            120437: [0.611, 0, 0.525],
            120438: [0.622, 0.011, 0.525],
            120439: [0.611, 0, 0.525],
            120440: [0.611, 0, 0.525],
            120441: [0.611, 0.011, 0.525],
            120442: [0.611, 0, 0.525],
            120443: [0.611, 0, 0.525],
            120444: [0.611, 0, 0.525],
            120445: [0.611, 0, 0.525],
            120446: [0.621, 0.01, 0.525],
            120447: [0.611, 0, 0.525],
            120448: [0.621, 0.138, 0.525],
            120449: [0.611, 0.011, 0.525],
            120450: [0.622, 0.011, 0.525],
            120451: [0.611, 0, 0.525],
            120452: [0.611, 0.011, 0.525],
            120453: [0.611, 0.007, 0.525],
            120454: [0.611, 0.007, 0.525],
            120455: [0.611, 0, 0.525],
            120456: [0.611, 0, 0.525],
            120457: [0.611, 0, 0.525],
            120458: [0.439, 0.006, 0.525],
            120459: [0.611, 0.006, 0.525],
            120460: [0.44, 0.006, 0.525],
            120461: [0.611, 0.006, 0.525],
            120462: [0.44, 0.006, 0.525],
            120463: [0.617, 0, 0.525],
            120464: [0.442, 0.229, 0.525],
            120465: [0.611, 0, 0.525],
            120466: [0.612, 0, 0.525],
            120467: [0.612, 0.228, 0.525],
            120468: [0.611, 0, 0.525],
            120469: [0.611, 0, 0.525],
            120470: [0.436, 0, 0.525, { ic: 0.011 }],
            120471: [0.436, 0, 0.525],
            120472: [0.44, 0.006, 0.525],
            120473: [0.437, 0.221, 0.525],
            120474: [0.437, 0.221, 0.525, { ic: 0.02 }],
            120475: [0.437, 0, 0.525],
            120476: [0.44, 0.006, 0.525],
            120477: [0.554, 0.006, 0.525],
            120478: [0.431, 0.005, 0.525],
            120479: [0.431, 0, 0.525],
            120480: [0.431, 0, 0.525],
            120481: [0.431, 0, 0.525],
            120482: [0.431, 0.228, 0.525],
            120483: [0.431, 0, 0.525],
            120488: [0.698, 0, 0.869],
            120489: [0.686, 0, 0.818],
            120490: [0.68, 0, 0.692],
            120491: [0.698, 0, 0.958],
            120492: [0.68, 0, 0.756],
            120493: [0.686, 0, 0.703],
            120494: [0.686, 0, 0.9],
            120495: [0.696, 0.01, 0.894],
            120496: [0.686, 0, 0.436],
            120497: [0.686, 0, 0.901],
            120498: [0.698, 0, 0.806],
            120499: [0.686, 0, 1.092],
            120500: [0.686, 0, 0.9],
            120501: [0.675, 0, 0.767],
            120502: [0.696, 0.01, 0.864],
            120503: [0.68, 0, 0.9],
            120504: [0.686, 0, 0.786],
            120506: [0.686, 0, 0.831],
            120507: [0.675, 0, 0.8],
            120508: [0.697, 0, 0.894],
            120509: [0.686, 0, 0.831],
            120510: [0.686, 0, 0.869],
            120511: [0.686, 0, 0.894],
            120512: [0.696, 0, 0.831],
            120513: [0.686, 0.024, 0.958],
            120546: [0.716, 0, 0.75, { sk: 0.139 }],
            120547: [0.683, 0, 0.759, { sk: 0.0833 }],
            120548: [0.68, 0, 0.615, { ic: 0.106, sk: 0.0833 }],
            120549: [0.716, 0, 0.833, { sk: 0.167 }],
            120550: [0.68, 0, 0.738, { ic: 0.026, sk: 0.0833 }],
            120551: [0.683, 0, 0.683, { ic: 0.04, sk: 0.0833 }],
            120552: [0.683, 0, 0.831, { ic: 0.057, sk: 0.0556 }],
            120553: [0.704, 0.022, 0.763, { sk: 0.0833 }],
            120554: [0.683, 0, 0.44, { ic: 0.064, sk: 0.111 }],
            120555: [0.683, 0, 0.849, { ic: 0.04, sk: 0.0556 }],
            120556: [0.716, 0, 0.694, { sk: 0.167 }],
            120557: [0.683, 0, 0.97, { ic: 0.081, sk: 0.0833 }],
            120558: [0.683, 0, 0.803, { ic: 0.085, sk: 0.0833 }],
            120559: [0.677, 0, 0.742, { ic: 0.035, sk: 0.0833 }],
            120560: [0.704, 0.022, 0.763, { sk: 0.0833 }],
            120561: [0.68, 0, 0.831, { ic: 0.056, sk: 0.0556 }],
            120562: [0.683, 0, 0.642, { ic: 0.109, sk: 0.0833 }],
            120564: [0.683, 0, 0.78, { ic: 0.026, sk: 0.0833 }],
            120565: [0.677, 0, 0.584, { ic: 0.12, sk: 0.0833 }],
            120566: [0.705, 0, 0.583, { ic: 0.117, sk: 0.0556 }],
            120567: [0.683, 0, 0.667, { sk: 0.0833 }],
            120568: [0.683, 0, 0.828, { ic: 0.024, sk: 0.0833 }],
            120569: [0.683, 0, 0.612, { ic: 0.08, sk: 0.0556 }],
            120570: [0.704, 0, 0.772, { ic: 0.014, sk: 0.0833 }],
            120572: [0.442, 0.011, 0.64, { sk: 0.0278 }],
            120573: [0.705, 0.194, 0.566, { sk: 0.0833 }],
            120574: [0.441, 0.216, 0.518, { ic: 0.025 }],
            120575: [0.717, 0.01, 0.444, { sk: 0.0556 }],
            120576: [0.452, 0.022, 0.466, { sk: 0.0833 }],
            120577: [0.704, 0.204, 0.438, { ic: 0.033, sk: 0.0833 }],
            120578: [0.442, 0.216, 0.497, { sk: 0.0556 }],
            120579: [0.705, 0.01, 0.469, { sk: 0.0833 }],
            120580: [0.442, 0.01, 0.354, { sk: 0.0556 }],
            120581: [0.442, 0.011, 0.576],
            120582: [0.694, 0.012, 0.583],
            120583: [0.442, 0.216, 0.603, { sk: 0.0278 }],
            120584: [0.442, 0, 0.494, { ic: 0.036, sk: 0.0278 }],
            120585: [0.704, 0.205, 0.438, { sk: 0.111 }],
            120586: [0.441, 0.011, 0.485, { sk: 0.0556 }],
            120587: [0.431, 0.011, 0.57],
            120588: [0.442, 0.216, 0.517, { sk: 0.0833 }],
            120589: [0.442, 0.107, 0.363, { ic: 0.042, sk: 0.0833 }],
            120590: [0.431, 0.011, 0.571],
            120591: [0.431, 0.013, 0.437, { ic: 0.08, sk: 0.0278 }],
            120592: [0.443, 0.01, 0.54, { sk: 0.0278 }],
            120593: [0.442, 0.218, 0.654, { sk: 0.0833 }],
            120594: [0.442, 0.204, 0.626, { sk: 0.0556 }],
            120595: [0.694, 0.205, 0.651, { sk: 0.111 }],
            120596: [0.443, 0.011, 0.622],
            120597: [0.715, 0.022, 0.531, { ic: 0.035, sk: 0.0833 }],
            120598: [0.431, 0.011, 0.406, { sk: 0.0556 }],
            120599: [0.705, 0.011, 0.591, { sk: 0.0833 }],
            120600: [0.434, 0.006, 0.667, { ic: 0.067 }],
            120601: [0.694, 0.205, 0.596, { sk: 0.0833 }],
            120602: [0.442, 0.194, 0.517, { sk: 0.0833 }],
            120603: [0.431, 0.01, 0.828],
            120604: [0.711, 0, 0.869, { sk: 0.16 }],
            120605: [0.686, 0, 0.866, { sk: 0.0958 }],
            120606: [0.68, 0, 0.657, { ic: 0.12, sk: 0.0958 }],
            120607: [0.711, 0, 0.958, { sk: 0.192 }],
            120608: [0.68, 0, 0.81, { ic: 0.015, sk: 0.0958 }],
            120609: [0.686, 0, 0.773, { ic: 0.032, sk: 0.0958 }],
            120610: [0.686, 0, 0.982, { ic: 0.045, sk: 0.0639 }],
            120611: [0.702, 0.017, 0.867, { sk: 0.0958 }],
            120612: [0.686, 0, 0.511, { ic: 0.062, sk: 0.128 }],
            120613: [0.686, 0, 0.971, { ic: 0.032, sk: 0.0639 }],
            120614: [0.711, 0, 0.806, { sk: 0.192 }],
            120615: [0.686, 0, 1.142, { ic: 0.077, sk: 0.0958 }],
            120616: [0.686, 0, 0.95, { ic: 0.077, sk: 0.0958 }],
            120617: [0.675, 0, 0.841, { ic: 0.026, sk: 0.0958 }],
            120618: [0.703, 0.017, 0.837, { sk: 0.0958 }],
            120619: [0.68, 0, 0.982, { ic: 0.044, sk: 0.0639 }],
            120620: [0.686, 0, 0.723, { ic: 0.124, sk: 0.0958 }],
            120622: [0.686, 0, 0.885, { ic: 0.017, sk: 0.0958 }],
            120623: [0.675, 0, 0.637, { ic: 0.135, sk: 0.0958 }],
            120624: [0.703, 0, 0.671, { ic: 0.131, sk: 0.0639 }],
            120625: [0.686, 0, 0.767, { sk: 0.0958 }],
            120626: [0.686, 0, 0.947, { sk: 0.0958 }],
            120627: [0.686, 0, 0.714, { ic: 0.076, sk: 0.0639 }],
            120628: [0.703, 0, 0.879, { sk: 0.0958 }],
            120630: [0.452, 0.008, 0.761, { sk: 0.0319 }],
            120631: [0.701, 0.194, 0.66, { sk: 0.0958 }],
            120632: [0.451, 0.211, 0.59, { ic: 0.027 }],
            120633: [0.725, 0.008, 0.522, { sk: 0.0639 }],
            120634: [0.461, 0.017, 0.529, { sk: 0.0958 }],
            120635: [0.711, 0.202, 0.508, { ic: 0.013, sk: 0.0958 }],
            120636: [0.452, 0.211, 0.6, { sk: 0.0639 }],
            120637: [0.702, 0.008, 0.562, { sk: 0.0958 }],
            120638: [0.452, 0.008, 0.412, { sk: 0.0639 }],
            120639: [0.452, 0.008, 0.668],
            120640: [0.694, 0.013, 0.671],
            120641: [0.452, 0.211, 0.708, { sk: 0.0319 }],
            120642: [0.452, 0, 0.577, { ic: 0.031, sk: 0.0319 }],
            120643: [0.711, 0.201, 0.508, { sk: 0.128 }],
            120644: [0.452, 0.008, 0.585, { sk: 0.0639 }],
            120645: [0.444, 0.008, 0.682],
            120646: [0.451, 0.211, 0.612, { sk: 0.0958 }],
            120647: [0.451, 0.105, 0.424, { ic: 0.033, sk: 0.0958 }],
            120648: [0.444, 0.008, 0.686],
            120649: [0.444, 0.013, 0.521, { ic: 0.089, sk: 0.0319 }],
            120650: [0.453, 0.008, 0.631, { sk: 0.0319 }],
            120651: [0.452, 0.216, 0.747, { sk: 0.0958 }],
            120652: [0.452, 0.201, 0.718, { sk: 0.0639 }],
            120653: [0.694, 0.202, 0.758, { sk: 0.128 }],
            120654: [0.453, 0.008, 0.718],
            120655: [0.71, 0.017, 0.628, { ic: 0.029, sk: 0.0958 }],
            120656: [0.444, 0.007, 0.483, { sk: 0.0639 }],
            120657: [0.701, 0.008, 0.692, { sk: 0.0958 }],
            120658: [0.434, 0.006, 0.667, { ic: 0.067 }],
            120659: [0.694, 0.202, 0.712, { sk: 0.0958 }],
            120660: [0.451, 0.194, 0.612, { sk: 0.0958 }],
            120661: [0.444, 0.008, 0.975],
            120662: [0.694, 0, 0.733],
            120663: [0.694, 0, 0.733],
            120664: [0.691, 0, 0.581],
            120665: [0.694, 0, 0.917],
            120666: [0.691, 0, 0.642],
            120667: [0.694, 0, 0.672],
            120668: [0.694, 0, 0.794],
            120669: [0.716, 0.022, 0.856],
            120670: [0.694, 0, 0.331],
            120671: [0.694, 0, 0.764],
            120672: [0.694, 0, 0.672],
            120673: [0.694, 0, 0.978],
            120674: [0.694, 0, 0.794],
            120675: [0.688, 0, 0.733],
            120676: [0.716, 0.022, 0.794],
            120677: [0.691, 0, 0.794],
            120678: [0.694, 0, 0.703],
            120680: [0.694, 0, 0.794],
            120681: [0.688, 0, 0.733],
            120682: [0.715, 0, 0.856],
            120683: [0.694, 0, 0.794],
            120684: [0.694, 0, 0.733],
            120685: [0.694, 0, 0.856],
            120686: [0.716, 0, 0.794],
            120782: [0.654, 0.01, 0.575],
            120783: [0.655, 0, 0.575],
            120784: [0.654, 0, 0.575],
            120785: [0.655, 0.011, 0.575],
            120786: [0.656, 0, 0.575],
            120787: [0.655, 0.011, 0.575],
            120788: [0.655, 0.011, 0.575],
            120789: [0.676, 0.011, 0.575],
            120790: [0.654, 0.011, 0.575],
            120791: [0.654, 0.011, 0.575],
            120802: [0.678, 0.022, 0.5],
            120803: [0.678, 0, 0.5],
            120804: [0.677, 0, 0.5],
            120805: [0.678, 0.022, 0.5],
            120806: [0.656, 0, 0.5],
            120807: [0.656, 0.021, 0.5],
            120808: [0.677, 0.022, 0.5],
            120809: [0.656, 0.011, 0.5],
            120810: [0.678, 0.022, 0.5],
            120811: [0.677, 0.022, 0.5],
            120812: [0.715, 0.022, 0.55],
            120813: [0.716, 0, 0.55],
            120814: [0.716, 0, 0.55],
            120815: [0.716, 0.022, 0.55],
            120816: [0.694, 0, 0.55],
            120817: [0.694, 0.022, 0.55],
            120818: [0.716, 0.022, 0.55],
            120819: [0.695, 0.011, 0.55],
            120820: [0.715, 0.022, 0.55],
            120821: [0.716, 0.022, 0.55],
            120822: [0.621, 0.01, 0.525],
            120823: [0.622, 0, 0.525],
            120824: [0.622, 0, 0.525],
            120825: [0.622, 0.011, 0.525],
            120826: [0.624, 0, 0.525],
            120827: [0.611, 0.01, 0.525],
            120828: [0.622, 0.011, 0.525],
            120829: [0.627, 0.01, 0.525],
            120830: [0.621, 0.01, 0.525],
            120831: [0.622, 0.011, 0.525]
          })
      },
      4886: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sansSerifBoldItalic = void 0), (e.sansSerifBoldItalic = { 305: [0.458, 0, 0.256], 567: [0.458, 0.205, 0.286] })
      },
      4471: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.sansSerifBold = void 0),
          (e.sansSerifBold = {
            33: [0.694, 0, 0.367],
            34: [0.694, -0.442, 0.558],
            35: [0.694, 0.193, 0.917],
            36: [0.75, 0.056, 0.55],
            37: [0.75, 0.056, 1.029],
            38: [0.716, 0.022, 0.831],
            39: [0.694, -0.442, 0.306],
            40: [0.75, 0.249, 0.428],
            41: [0.75, 0.25, 0.428],
            42: [0.75, -0.293, 0.55],
            43: [0.617, 0.116, 0.856],
            44: [0.146, 0.106, 0.306],
            45: [0.273, -0.186, 0.367],
            46: [0.146, 0, 0.306],
            47: [0.75, 0.249, 0.55],
            58: [0.458, 0, 0.306],
            59: [0.458, 0.106, 0.306],
            61: [0.407, -0.094, 0.856],
            63: [0.705, 0, 0.519],
            64: [0.704, 0.011, 0.733],
            91: [0.75, 0.25, 0.343],
            93: [0.75, 0.25, 0.343],
            94: [0.694, -0.537, 0.55],
            95: [-0.023, 0.11, 0.55],
            126: [0.344, -0.198, 0.55],
            305: [0.458, 0, 0.256],
            567: [0.458, 0.205, 0.286],
            768: [0.694, -0.537, 0],
            769: [0.694, -0.537, 0],
            770: [0.694, -0.537, 0],
            771: [0.694, -0.548, 0],
            772: [0.66, -0.56, 0],
            774: [0.694, -0.552, 0],
            775: [0.695, -0.596, 0],
            776: [0.695, -0.595, 0],
            778: [0.694, -0.538, 0],
            779: [0.694, -0.537, 0],
            780: [0.657, -0.5, 0],
            8211: [0.327, -0.24, 0.55],
            8212: [0.327, -0.24, 1.1],
            8213: [0.327, -0.24, 1.1],
            8215: [-0.023, 0.11, 0.55],
            8216: [0.694, -0.443, 0.306],
            8217: [0.694, -0.442, 0.306],
            8220: [0.694, -0.443, 0.558],
            8221: [0.694, -0.442, 0.558],
            8260: [0.75, 0.249, 0.55],
            8710: [0.694, 0, 0.917]
          })
      },
      5181: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.sansSerifItalic = void 0),
          (e.sansSerifItalic = {
            33: [0.694, 0, 0.319, { ic: 0.036 }],
            34: [0.694, -0.471, 0.5],
            35: [0.694, 0.194, 0.833, { ic: 0.018 }],
            36: [0.75, 0.056, 0.5, { ic: 0.065 }],
            37: [0.75, 0.056, 0.833],
            38: [0.716, 0.022, 0.758],
            39: [0.694, -0.471, 0.278, { ic: 0.057 }],
            40: [0.75, 0.25, 0.389, { ic: 0.102 }],
            41: [0.75, 0.25, 0.389],
            42: [0.75, -0.306, 0.5, { ic: 0.068 }],
            43: [0.583, 0.083, 0.778],
            44: [0.098, 0.125, 0.278],
            45: [0.259, -0.186, 0.333],
            46: [0.098, 0, 0.278],
            47: [0.75, 0.25, 0.5, { ic: 0.1 }],
            48: [0.678, 0.022, 0.5, { ic: 0.049 }],
            49: [0.678, 0, 0.5],
            50: [0.678, 0, 0.5, { ic: 0.051 }],
            51: [0.678, 0.022, 0.5, { ic: 0.044 }],
            52: [0.656, 0, 0.5, { ic: 0.021 }],
            53: [0.656, 0.022, 0.5, { ic: 0.055 }],
            54: [0.678, 0.022, 0.5, { ic: 0.048 }],
            55: [0.656, 0.011, 0.5, { ic: 0.096 }],
            56: [0.678, 0.022, 0.5, { ic: 0.054 }],
            57: [0.677, 0.022, 0.5, { ic: 0.045 }],
            58: [0.444, 0, 0.278],
            59: [0.444, 0.125, 0.278],
            61: [0.37, -0.13, 0.778, { ic: 0.018 }],
            63: [0.704, 0, 0.472, { ic: 0.064 }],
            64: [0.705, 0.01, 0.667, { ic: 0.04 }],
            91: [0.75, 0.25, 0.289, { ic: 0.136 }],
            93: [0.75, 0.25, 0.289, { ic: 0.064 }],
            94: [0.694, -0.527, 0.5, { ic: 0.033 }],
            95: [-0.038, 0.114, 0.5, { ic: 0.065 }],
            126: [0.327, -0.193, 0.5, { ic: 0.06 }],
            305: [0.444, 0, 0.239, { ic: 0.019 }],
            567: [0.444, 0.204, 0.267, { ic: 0.019 }],
            768: [0.694, -0.527, 0],
            769: [0.694, -0.527, 0, { ic: 0.063 }],
            770: [0.694, -0.527, 0, { ic: 0.033 }],
            771: [0.677, -0.543, 0, { ic: 0.06 }],
            772: [0.631, -0.552, 0, { ic: 0.064 }],
            774: [0.694, -0.508, 0, { ic: 0.073 }],
            775: [0.68, -0.576, 0],
            776: [0.68, -0.582, 0, { ic: 0.04 }],
            778: [0.693, -0.527, 0],
            779: [0.694, -0.527, 0, { ic: 0.063 }],
            780: [0.654, -0.487, 0, { ic: 0.06 }],
            913: [0.694, 0, 0.667],
            914: [0.694, 0, 0.667, { ic: 0.029 }],
            915: [0.691, 0, 0.542, { ic: 0.104 }],
            916: [0.694, 0, 0.833],
            917: [0.691, 0, 0.597, { ic: 0.091 }],
            918: [0.694, 0, 0.611, { ic: 0.091 }],
            919: [0.694, 0, 0.708, { ic: 0.06 }],
            920: [0.715, 0.022, 0.778, { ic: 0.026 }],
            921: [0.694, 0, 0.278, { ic: 0.06 }],
            922: [0.694, 0, 0.694, { ic: 0.091 }],
            923: [0.694, 0, 0.611],
            924: [0.694, 0, 0.875, { ic: 0.054 }],
            925: [0.694, 0, 0.708, { ic: 0.058 }],
            926: [0.688, 0, 0.667, { ic: 0.098 }],
            927: [0.716, 0.022, 0.736, { ic: 0.027 }],
            928: [0.691, 0, 0.708, { ic: 0.06 }],
            929: [0.694, 0, 0.639, { ic: 0.051 }],
            931: [0.694, 0, 0.722, { ic: 0.091 }],
            932: [0.688, 0, 0.681, { ic: 0.109 }],
            933: [0.716, 0, 0.778, { ic: 0.065 }],
            934: [0.694, 0, 0.722, { ic: 0.021 }],
            935: [0.694, 0, 0.667, { ic: 0.091 }],
            936: [0.694, 0, 0.778, { ic: 0.076 }],
            937: [0.716, 0, 0.722, { ic: 0.047 }],
            8211: [0.312, -0.236, 0.5, { ic: 0.065 }],
            8212: [0.312, -0.236, 1, { ic: 0.065 }],
            8213: [0.312, -0.236, 1, { ic: 0.065 }],
            8215: [-0.038, 0.114, 0.5, { ic: 0.065 }],
            8216: [0.694, -0.471, 0.278, { ic: 0.058 }],
            8217: [0.694, -0.471, 0.278, { ic: 0.057 }],
            8220: [0.694, -0.471, 0.5, { ic: 0.114 }],
            8221: [0.694, -0.471, 0.5],
            8260: [0.75, 0.25, 0.5, { ic: 0.1 }],
            8710: [0.694, 0, 0.833]
          })
      },
      3526: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.sansSerif = void 0),
          (e.sansSerif = {
            33: [0.694, 0, 0.319],
            34: [0.694, -0.471, 0.5],
            35: [0.694, 0.194, 0.833],
            36: [0.75, 0.056, 0.5],
            37: [0.75, 0.056, 0.833],
            38: [0.716, 0.022, 0.758],
            39: [0.694, -0.471, 0.278],
            40: [0.75, 0.25, 0.389],
            41: [0.75, 0.25, 0.389],
            42: [0.75, -0.306, 0.5],
            43: [0.583, 0.082, 0.778],
            44: [0.098, 0.125, 0.278],
            45: [0.259, -0.186, 0.333],
            46: [0.098, 0, 0.278],
            47: [0.75, 0.25, 0.5],
            58: [0.444, 0, 0.278],
            59: [0.444, 0.125, 0.278],
            61: [0.37, -0.13, 0.778],
            63: [0.704, 0, 0.472],
            64: [0.704, 0.011, 0.667],
            91: [0.75, 0.25, 0.289],
            93: [0.75, 0.25, 0.289],
            94: [0.694, -0.527, 0.5],
            95: [-0.038, 0.114, 0.5],
            126: [0.327, -0.193, 0.5],
            305: [0.444, 0, 0.239],
            567: [0.444, 0.205, 0.267],
            768: [0.694, -0.527, 0],
            769: [0.694, -0.527, 0],
            770: [0.694, -0.527, 0],
            771: [0.677, -0.543, 0],
            772: [0.631, -0.552, 0],
            774: [0.694, -0.508, 0],
            775: [0.68, -0.576, 0],
            776: [0.68, -0.582, 0],
            778: [0.694, -0.527, 0],
            779: [0.694, -0.527, 0],
            780: [0.654, -0.487, 0],
            913: [0.694, 0, 0.667],
            914: [0.694, 0, 0.667],
            915: [0.691, 0, 0.542],
            916: [0.694, 0, 0.833],
            917: [0.691, 0, 0.597],
            918: [0.694, 0, 0.611],
            919: [0.694, 0, 0.708],
            920: [0.716, 0.021, 0.778],
            921: [0.694, 0, 0.278],
            922: [0.694, 0, 0.694],
            923: [0.694, 0, 0.611],
            924: [0.694, 0, 0.875],
            925: [0.694, 0, 0.708],
            926: [0.688, 0, 0.667],
            927: [0.715, 0.022, 0.736],
            928: [0.691, 0, 0.708],
            929: [0.694, 0, 0.639],
            931: [0.694, 0, 0.722],
            932: [0.688, 0, 0.681],
            933: [0.716, 0, 0.778],
            934: [0.694, 0, 0.722],
            935: [0.694, 0, 0.667],
            936: [0.694, 0, 0.778],
            937: [0.716, 0, 0.722],
            8211: [0.312, -0.236, 0.5],
            8212: [0.312, -0.236, 1],
            8213: [0.312, -0.236, 1],
            8215: [-0.038, 0.114, 0.5],
            8216: [0.694, -0.471, 0.278],
            8217: [0.694, -0.471, 0.278],
            8220: [0.694, -0.471, 0.5],
            8221: [0.694, -0.471, 0.5],
            8260: [0.75, 0.25, 0.5],
            8710: [0.694, 0, 0.833]
          })
      },
      5649: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.scriptBold = void 0), (e.scriptBold = {})
      },
      7153: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.script = void 0), (e.script = {})
      },
      5745: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.smallop = void 0),
          (e.smallop = {
            40: [0.85, 0.349, 0.458],
            41: [0.85, 0.349, 0.458],
            47: [0.85, 0.349, 0.578],
            91: [0.85, 0.349, 0.417],
            92: [0.85, 0.349, 0.578],
            93: [0.85, 0.349, 0.417],
            123: [0.85, 0.349, 0.583],
            125: [0.85, 0.349, 0.583],
            710: [0.744, -0.551, 0.556],
            732: [0.722, -0.597, 0.556],
            770: [0.744, -0.551, 0],
            771: [0.722, -0.597, 0],
            8214: [0.602, 0, 0.778],
            8260: [0.85, 0.349, 0.578],
            8593: [0.6, 0, 0.667],
            8595: [0.6, 0, 0.667],
            8657: [0.599, 0, 0.778],
            8659: [0.6, 0, 0.778],
            8719: [0.75, 0.25, 0.944],
            8720: [0.75, 0.25, 0.944],
            8721: [0.75, 0.25, 1.056],
            8730: [0.85, 0.35, 1, { ic: 0.02 }],
            8739: [0.627, 0.015, 0.333],
            8741: [0.627, 0.015, 0.556],
            8747: [0.805, 0.306, 0.472, { ic: 0.138 }],
            8748: [0.805, 0.306, 0.819, { ic: 0.138 }],
            8749: [0.805, 0.306, 1.166, { ic: 0.138 }],
            8750: [0.805, 0.306, 0.472, { ic: 0.138 }],
            8896: [0.75, 0.249, 0.833],
            8897: [0.75, 0.249, 0.833],
            8898: [0.75, 0.249, 0.833],
            8899: [0.75, 0.249, 0.833],
            8968: [0.85, 0.349, 0.472],
            8969: [0.85, 0.349, 0.472],
            8970: [0.85, 0.349, 0.472],
            8971: [0.85, 0.349, 0.472],
            9001: [0.85, 0.35, 0.472],
            9002: [0.85, 0.35, 0.472],
            9168: [0.602, 0, 0.667],
            10072: [0.627, 0.015, 0.333],
            10216: [0.85, 0.35, 0.472],
            10217: [0.85, 0.35, 0.472],
            10752: [0.75, 0.25, 1.111],
            10753: [0.75, 0.25, 1.111],
            10754: [0.75, 0.25, 1.111],
            10756: [0.75, 0.249, 0.833],
            10758: [0.75, 0.249, 0.833],
            10764: [0.805, 0.306, 1.638, { ic: 0.138 }],
            12296: [0.85, 0.35, 0.472],
            12297: [0.85, 0.35, 0.472]
          })
      },
      1411: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texCalligraphicBold = void 0),
          (e.texCalligraphicBold = {
            65: [0.751, 0.049, 0.921, { ic: 0.068, sk: 0.224 }],
            66: [0.705, 0.017, 0.748, { sk: 0.16 }],
            67: [0.703, 0.02, 0.613, { sk: 0.16 }],
            68: [0.686, 0, 0.892, { sk: 0.0958 }],
            69: [0.703, 0.016, 0.607, { ic: 0.02, sk: 0.128 }],
            70: [0.686, 0.03, 0.814, { ic: 0.116, sk: 0.128 }],
            71: [0.703, 0.113, 0.682, { sk: 0.128 }],
            72: [0.686, 0.048, 0.987, { sk: 0.128 }],
            73: [0.686, 0, 0.642, { ic: 0.104, sk: 0.0319 }],
            74: [0.686, 0.114, 0.779, { ic: 0.158, sk: 0.192 }],
            75: [0.703, 0.017, 0.871, { sk: 0.0639 }],
            76: [0.703, 0.017, 0.788, { sk: 0.16 }],
            77: [0.703, 0.049, 1.378, { sk: 0.16 }],
            78: [0.84, 0.049, 0.937, { ic: 0.168, sk: 0.0958 }],
            79: [0.703, 0.017, 0.906, { sk: 0.128 }],
            80: [0.686, 0.067, 0.81, { ic: 0.036, sk: 0.0958 }],
            81: [0.703, 0.146, 0.939, { sk: 0.128 }],
            82: [0.686, 0.017, 0.99, { sk: 0.0958 }],
            83: [0.703, 0.016, 0.696, { ic: 0.025, sk: 0.16 }],
            84: [0.72, 0.069, 0.644, { ic: 0.303, sk: 0.0319 }],
            85: [0.686, 0.024, 0.715, { ic: 0.056, sk: 0.0958 }],
            86: [0.686, 0.077, 0.737, { ic: 0.037, sk: 0.0319 }],
            87: [0.686, 0.077, 1.169, { ic: 0.037, sk: 0.0958 }],
            88: [0.686, 0, 0.817, { ic: 0.089, sk: 0.16 }],
            89: [0.686, 0.164, 0.759, { ic: 0.038, sk: 0.0958 }],
            90: [0.686, 0, 0.818, { ic: 0.035, sk: 0.16 }],
            305: [0.452, 0.008, 0.394, { sk: 0.0319 }],
            567: [0.451, 0.201, 0.439, { sk: 0.0958 }]
          })
      },
      6384: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texCalligraphic = void 0),
          (e.texCalligraphic = {
            65: [0.728, 0.05, 0.798, { ic: 0.021, sk: 0.194 }],
            66: [0.705, 0.022, 0.657, { sk: 0.139 }],
            67: [0.705, 0.025, 0.527, { sk: 0.139 }],
            68: [0.683, 0, 0.771, { sk: 0.0833 }],
            69: [0.705, 0.022, 0.528, { ic: 0.036, sk: 0.111 }],
            70: [0.683, 0.032, 0.719, { ic: 0.11, sk: 0.111 }],
            71: [0.704, 0.119, 0.595, { sk: 0.111 }],
            72: [0.683, 0.048, 0.845, { sk: 0.111 }],
            73: [0.683, 0, 0.545, { ic: 0.097, sk: 0.0278 }],
            74: [0.683, 0.119, 0.678, { ic: 0.161, sk: 0.167 }],
            75: [0.705, 0.022, 0.762, { sk: 0.0556 }],
            76: [0.705, 0.022, 0.69, { sk: 0.139 }],
            77: [0.705, 0.05, 1.201, { sk: 0.139 }],
            78: [0.789, 0.05, 0.82, { ic: 0.159, sk: 0.0833 }],
            79: [0.705, 0.022, 0.796, { sk: 0.111 }],
            80: [0.683, 0.057, 0.696, { ic: 0.037, sk: 0.0833 }],
            81: [0.705, 0.131, 0.817, { sk: 0.111 }],
            82: [0.682, 0.022, 0.848, { sk: 0.0833 }],
            83: [0.705, 0.022, 0.606, { ic: 0.036, sk: 0.139 }],
            84: [0.717, 0.068, 0.545, { ic: 0.288, sk: 0.0278 }],
            85: [0.683, 0.028, 0.626, { ic: 0.061, sk: 0.0833 }],
            86: [0.683, 0.052, 0.613, { ic: 0.045, sk: 0.0278 }],
            87: [0.683, 0.053, 0.988, { ic: 0.046, sk: 0.0833 }],
            88: [0.683, 0, 0.713, { ic: 0.094, sk: 0.139 }],
            89: [0.683, 0.143, 0.668, { ic: 0.046, sk: 0.0833 }],
            90: [0.683, 0, 0.725, { ic: 0.042, sk: 0.139 }]
          })
      },
      6041: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texMathit = void 0),
          (e.texMathit = {
            65: [0.716, 0, 0.743],
            66: [0.683, 0, 0.704],
            67: [0.705, 0.021, 0.716],
            68: [0.683, 0, 0.755],
            69: [0.68, 0, 0.678],
            70: [0.68, 0, 0.653],
            71: [0.705, 0.022, 0.774],
            72: [0.683, 0, 0.743],
            73: [0.683, 0, 0.386],
            74: [0.683, 0.021, 0.525],
            75: [0.683, 0, 0.769],
            76: [0.683, 0, 0.627],
            77: [0.683, 0, 0.897],
            78: [0.683, 0, 0.743],
            79: [0.704, 0.022, 0.767],
            80: [0.683, 0, 0.678],
            81: [0.704, 0.194, 0.767],
            82: [0.683, 0.022, 0.729],
            83: [0.705, 0.022, 0.562],
            84: [0.677, 0, 0.716],
            85: [0.683, 0.022, 0.743],
            86: [0.683, 0.022, 0.743],
            87: [0.683, 0.022, 0.999],
            88: [0.683, 0, 0.743],
            89: [0.683, 0, 0.743],
            90: [0.683, 0, 0.613],
            97: [0.442, 0.011, 0.511],
            98: [0.694, 0.011, 0.46],
            99: [0.441, 0.01, 0.46],
            100: [0.694, 0.011, 0.511],
            101: [0.442, 0.01, 0.46],
            102: [0.705, 0.204, 0.307],
            103: [0.442, 0.205, 0.46],
            104: [0.694, 0.011, 0.511],
            105: [0.656, 0.01, 0.307],
            106: [0.656, 0.204, 0.307],
            107: [0.694, 0.011, 0.46],
            108: [0.694, 0.011, 0.256],
            109: [0.442, 0.011, 0.818],
            110: [0.442, 0.011, 0.562],
            111: [0.442, 0.011, 0.511],
            112: [0.442, 0.194, 0.511],
            113: [0.442, 0.194, 0.46],
            114: [0.442, 0.011, 0.422],
            115: [0.442, 0.011, 0.409],
            116: [0.626, 0.011, 0.332],
            117: [0.441, 0.011, 0.537],
            118: [0.443, 0.01, 0.46],
            119: [0.443, 0.011, 0.664],
            120: [0.442, 0.011, 0.464],
            121: [0.441, 0.205, 0.486],
            122: [0.442, 0.011, 0.409]
          })
      },
      8199: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texOldstyleBold = void 0),
          (e.texOldstyleBold = {
            48: [0.46, 0.017, 0.575],
            49: [0.461, 0, 0.575],
            50: [0.46, 0, 0.575],
            51: [0.461, 0.211, 0.575],
            52: [0.469, 0.194, 0.575],
            53: [0.461, 0.211, 0.575],
            54: [0.66, 0.017, 0.575],
            55: [0.476, 0.211, 0.575],
            56: [0.661, 0.017, 0.575],
            57: [0.461, 0.21, 0.575],
            65: [0.751, 0.049, 0.921, { ic: 0.068, sk: 0.224 }],
            66: [0.705, 0.017, 0.748, { sk: 0.16 }],
            67: [0.703, 0.02, 0.613, { sk: 0.16 }],
            68: [0.686, 0, 0.892, { sk: 0.0958 }],
            69: [0.703, 0.016, 0.607, { ic: 0.02, sk: 0.128 }],
            70: [0.686, 0.03, 0.814, { ic: 0.116, sk: 0.128 }],
            71: [0.703, 0.113, 0.682, { sk: 0.128 }],
            72: [0.686, 0.048, 0.987, { sk: 0.128 }],
            73: [0.686, 0, 0.642, { ic: 0.104, sk: 0.0319 }],
            74: [0.686, 0.114, 0.779, { ic: 0.158, sk: 0.192 }],
            75: [0.703, 0.017, 0.871, { sk: 0.0639 }],
            76: [0.703, 0.017, 0.788, { sk: 0.16 }],
            77: [0.703, 0.049, 1.378, { sk: 0.16 }],
            78: [0.84, 0.049, 0.937, { ic: 0.168, sk: 0.0958 }],
            79: [0.703, 0.017, 0.906, { sk: 0.128 }],
            80: [0.686, 0.067, 0.81, { ic: 0.036, sk: 0.0958 }],
            81: [0.703, 0.146, 0.939, { sk: 0.128 }],
            82: [0.686, 0.017, 0.99, { sk: 0.0958 }],
            83: [0.703, 0.016, 0.696, { ic: 0.025, sk: 0.16 }],
            84: [0.72, 0.069, 0.644, { ic: 0.303, sk: 0.0319 }],
            85: [0.686, 0.024, 0.715, { ic: 0.056, sk: 0.0958 }],
            86: [0.686, 0.077, 0.737, { ic: 0.037, sk: 0.0319 }],
            87: [0.686, 0.077, 1.169, { ic: 0.037, sk: 0.0958 }],
            88: [0.686, 0, 0.817, { ic: 0.089, sk: 0.16 }],
            89: [0.686, 0.164, 0.759, { ic: 0.038, sk: 0.0958 }],
            90: [0.686, 0, 0.818, { ic: 0.035, sk: 0.16 }]
          })
      },
      9848: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texOldstyle = void 0),
          (e.texOldstyle = {
            48: [0.452, 0.022, 0.5],
            49: [0.453, 0, 0.5],
            50: [0.453, 0, 0.5],
            51: [0.452, 0.216, 0.5],
            52: [0.464, 0.194, 0.5],
            53: [0.453, 0.216, 0.5],
            54: [0.665, 0.022, 0.5],
            55: [0.463, 0.216, 0.5],
            56: [0.666, 0.021, 0.5],
            57: [0.453, 0.216, 0.5],
            65: [0.728, 0.05, 0.798, { ic: 0.021, sk: 0.194 }],
            66: [0.705, 0.022, 0.657, { sk: 0.139 }],
            67: [0.705, 0.025, 0.527, { sk: 0.139 }],
            68: [0.683, 0, 0.771, { sk: 0.0833 }],
            69: [0.705, 0.022, 0.528, { ic: 0.036, sk: 0.111 }],
            70: [0.683, 0.032, 0.719, { ic: 0.11, sk: 0.111 }],
            71: [0.704, 0.119, 0.595, { sk: 0.111 }],
            72: [0.683, 0.048, 0.845, { sk: 0.111 }],
            73: [0.683, 0, 0.545, { ic: 0.097, sk: 0.0278 }],
            74: [0.683, 0.119, 0.678, { ic: 0.161, sk: 0.167 }],
            75: [0.705, 0.022, 0.762, { sk: 0.0556 }],
            76: [0.705, 0.022, 0.69, { sk: 0.139 }],
            77: [0.705, 0.05, 1.201, { sk: 0.139 }],
            78: [0.789, 0.05, 0.82, { ic: 0.159, sk: 0.0833 }],
            79: [0.705, 0.022, 0.796, { sk: 0.111 }],
            80: [0.683, 0.057, 0.696, { ic: 0.037, sk: 0.0833 }],
            81: [0.705, 0.131, 0.817, { sk: 0.111 }],
            82: [0.682, 0.022, 0.848, { sk: 0.0833 }],
            83: [0.705, 0.022, 0.606, { ic: 0.036, sk: 0.139 }],
            84: [0.717, 0.068, 0.545, { ic: 0.288, sk: 0.0278 }],
            85: [0.683, 0.028, 0.626, { ic: 0.061, sk: 0.0833 }],
            86: [0.683, 0.052, 0.613, { ic: 0.045, sk: 0.0278 }],
            87: [0.683, 0.053, 0.988, { ic: 0.046, sk: 0.0833 }],
            88: [0.683, 0, 0.713, { ic: 0.094, sk: 0.139 }],
            89: [0.683, 0.143, 0.668, { ic: 0.046, sk: 0.0833 }],
            90: [0.683, 0, 0.725, { ic: 0.042, sk: 0.139 }]
          })
      },
      7906: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texSize3 = void 0),
          (e.texSize3 = {
            40: [1.45, 0.949, 0.736],
            41: [1.45, 0.949, 0.736],
            47: [1.45, 0.949, 1.044],
            91: [1.45, 0.949, 0.528],
            92: [1.45, 0.949, 1.044],
            93: [1.45, 0.949, 0.528],
            123: [1.45, 0.949, 0.75],
            125: [1.45, 0.949, 0.75],
            710: [0.772, -0.564, 1.444],
            732: [0.749, -0.61, 1.444],
            770: [0.772, -0.564, 0],
            771: [0.749, -0.61, 0],
            8260: [1.45, 0.949, 1.044],
            8730: [1.45, 0.95, 1, { ic: 0.02 }],
            8968: [1.45, 0.949, 0.583],
            8969: [1.45, 0.949, 0.583],
            8970: [1.45, 0.949, 0.583],
            8971: [1.45, 0.949, 0.583],
            9001: [1.45, 0.95, 0.75],
            9002: [1.45, 0.949, 0.75],
            10216: [1.45, 0.95, 0.75],
            10217: [1.45, 0.949, 0.75],
            12296: [1.45, 0.95, 0.75],
            12297: [1.45, 0.949, 0.75]
          })
      },
      2644: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texSize4 = void 0),
          (e.texSize4 = {
            40: [1.75, 1.249, 0.792],
            41: [1.75, 1.249, 0.792],
            47: [1.75, 1.249, 1.278],
            91: [1.75, 1.249, 0.583],
            92: [1.75, 1.249, 1.278],
            93: [1.75, 1.249, 0.583],
            123: [1.75, 1.249, 0.806],
            125: [1.75, 1.249, 0.806],
            710: [0.845, -0.561, 1.889, { ic: 0.013 }],
            732: [0.823, -0.583, 1.889],
            770: [0.845, -0.561, 0, { ic: 0.013 }],
            771: [0.823, -0.583, 0],
            8260: [1.75, 1.249, 1.278],
            8730: [1.75, 1.25, 1, { ic: 0.02 }],
            8968: [1.75, 1.249, 0.639],
            8969: [1.75, 1.249, 0.639],
            8970: [1.75, 1.249, 0.639],
            8971: [1.75, 1.249, 0.639],
            9001: [1.75, 1.248, 0.806],
            9002: [1.75, 1.248, 0.806],
            9115: [1.154, 0.655, 0.875],
            9116: [0.61, 0.01, 0.875],
            9117: [1.165, 0.644, 0.875],
            9118: [1.154, 0.655, 0.875],
            9119: [0.61, 0.01, 0.875],
            9120: [1.165, 0.644, 0.875],
            9121: [1.154, 0.645, 0.667],
            9122: [0.602, 0, 0.667],
            9123: [1.155, 0.644, 0.667],
            9124: [1.154, 0.645, 0.667],
            9125: [0.602, 0, 0.667],
            9126: [1.155, 0.644, 0.667],
            9127: [0.899, 0.01, 0.889],
            9128: [1.16, 0.66, 0.889],
            9129: [0.01, 0.899, 0.889],
            9130: [0.29, 0.015, 0.889],
            9131: [0.899, 0.01, 0.889],
            9132: [1.16, 0.66, 0.889],
            9133: [0.01, 0.899, 0.889],
            9143: [0.935, 0.885, 1.056],
            10216: [1.75, 1.248, 0.806],
            10217: [1.75, 1.248, 0.806],
            12296: [1.75, 1.248, 0.806],
            12297: [1.75, 1.248, 0.806],
            57344: [0.625, 0.014, 1.056],
            57345: [0.605, 0.014, 1.056, { ic: 0.02 }],
            57680: [0.12, 0.213, 0.45, { ic: 0.01 }],
            57681: [0.12, 0.213, 0.45, { ic: 0.024 }],
            57682: [0.333, 0, 0.45, { ic: 0.01 }],
            57683: [0.333, 0, 0.45, { ic: 0.024 }],
            57684: [0.32, 0.2, 0.4, { ic: 0.01 }],
            57685: [0.333, 0, 0.9, { ic: 0.01 }],
            57686: [0.12, 0.213, 0.9, { ic: 0.01 }]
          })
      },
      4926: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.texVariant = void 0),
          (e.texVariant = {
            710: [0.845, -0.561, 2.333, { ic: 0.013 }],
            732: [0.899, -0.628, 2.333],
            770: [0.845, -0.561, 0, { ic: 0.013 }],
            771: [0.899, -0.628, 0],
            1008: [0.434, 0.006, 0.667, { ic: 0.067 }],
            8463: [0.695, 0.013, 0.54, { ic: 0.022 }],
            8592: [0.437, -0.064, 0.5],
            8594: [0.437, -0.064, 0.5],
            8652: [0.514, 0.014, 1],
            8708: [0.86, 0.166, 0.556],
            8709: [0.587, 0, 0.778],
            8722: [0.27, -0.23, 0.5],
            8726: [0.43, 0.023, 0.778],
            8733: [0.472, -0.028, 0.778],
            8739: [0.43, 0.023, 0.222],
            8740: [0.43, 0.023, 0.222, { ic: 0.018 }],
            8741: [0.431, 0.023, 0.389],
            8742: [0.431, 0.024, 0.389, { ic: 0.018 }],
            8764: [0.365, -0.132, 0.778],
            8776: [0.481, -0.05, 0.778],
            8808: [0.752, 0.284, 0.778],
            8809: [0.752, 0.284, 0.778],
            8816: [0.919, 0.421, 0.778],
            8817: [0.919, 0.421, 0.778],
            8840: [0.828, 0.33, 0.778],
            8841: [0.828, 0.33, 0.778],
            8842: [0.634, 0.255, 0.778],
            8843: [0.634, 0.254, 0.778],
            8872: [0.694, 0, 0.611],
            8901: [0.189, 0, 0.278],
            8994: [0.378, -0.122, 0.778],
            8995: [0.378, -0.143, 0.778],
            9651: [0.575, 0.02, 0.722],
            9661: [0.576, 0.019, 0.722],
            10887: [0.801, 0.303, 0.778],
            10888: [0.801, 0.303, 0.778],
            10955: [0.752, 0.332, 0.778],
            10956: [0.752, 0.333, 0.778]
          })
      },
      5865: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MJContextMenu = void 0)
        var a = r(5073),
          l = r(6186),
          c = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.mathItem = null), (e.annotation = ''), (e.annotationTypes = {}), e
            }
            return (
              o(e, t),
              (e.prototype.post = function (e, r) {
                if (this.mathItem) {
                  if (void 0 !== r) {
                    var n = this.mathItem.inputJax.name,
                      o = this.findID('Show', 'Original')
                    ;(o.content = 'MathML' === n ? 'Original MathML' : n + ' Commands'), (this.findID('Copy', 'Original').content = o.content)
                    var i = this.findID('Settings', 'semantics')
                    'MathML' === n ? i.disable() : i.enable(), this.getAnnotationMenu(), this.dynamicSubmenus()
                  }
                  t.prototype.post.call(this, e, r)
                }
              }),
              (e.prototype.unpost = function () {
                t.prototype.unpost.call(this), (this.mathItem = null)
              }),
              (e.prototype.findID = function () {
                for (var t, e, r = [], n = 0; n < arguments.length; n++) r[n] = arguments[n]
                var o = this,
                  s = null
                try {
                  for (var a = i(r), c = a.next(); !c.done; c = a.next()) {
                    var u = c.value
                    o ? ((s = o.find(u)), (o = s instanceof l.Submenu ? s.submenu : null)) : (s = null)
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    c && !c.done && (e = a.return) && e.call(a)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return s
              }),
              (e.prototype.getAnnotationMenu = function () {
                var t = this,
                  e = this.getAnnotations(this.getSemanticNode())
                this.createAnnotationMenu('Show', e, function () {
                  return t.showAnnotation.post()
                }),
                  this.createAnnotationMenu('Copy', e, function () {
                    return t.copyAnnotation()
                  })
              }),
              (e.prototype.getSemanticNode = function () {
                for (var t = this.mathItem.root; t && !t.isKind('semantics'); ) {
                  if (t.isToken || 1 !== t.childNodes.length) return null
                  t = t.childNodes[0]
                }
                return t
              }),
              (e.prototype.getAnnotations = function (t) {
                var e,
                  r,
                  n = []
                if (!t) return n
                try {
                  for (var o = i(t.childNodes), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value
                    if (a.isKind('annotation')) {
                      var l = this.annotationMatch(a)
                      if (l) {
                        var c = a.childNodes.reduce(function (t, e) {
                          return t + e.toString()
                        }, '')
                        n.push([l, c])
                      }
                    }
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = o.return) && r.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return n
              }),
              (e.prototype.annotationMatch = function (t) {
                var e,
                  r,
                  n = t.attributes.get('encoding')
                try {
                  for (var o = i(Object.keys(this.annotationTypes)), s = o.next(); !s.done; s = o.next()) {
                    var a = s.value
                    if (this.annotationTypes[a].indexOf(n) >= 0) return a
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = o.return) && r.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return null
              }),
              (e.prototype.createAnnotationMenu = function (t, e, r) {
                var n = this,
                  o = this.findID(t, 'Annotation')
                ;(o.submenu = this.factory.get('subMenu')(
                  this.factory,
                  {
                    items: e.map(function (t) {
                      var e = s(t, 2),
                        o = e[0],
                        i = e[1]
                      return {
                        type: 'command',
                        id: o,
                        content: o,
                        action: function () {
                          ;(n.annotation = i), r()
                        }
                      }
                    }),
                    id: 'annotations'
                  },
                  o
                )),
                  e.length ? o.enable() : o.disable()
              }),
              (e.prototype.dynamicSubmenus = function () {
                var t, r
                try {
                  for (var n = i(e.DynamicSubmenus), o = n.next(); !o.done; o = n.next()) {
                    var a = s(o.value, 2),
                      l = a[0],
                      c = a[1],
                      u = this.find(l)
                    if (u) {
                      var p = c(this, u)
                      ;(u.submenu = p), p.items.length ? u.enable() : u.disable()
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.DynamicSubmenus = new Map()),
              e
            )
          })(a.ContextMenu)
        e.MJContextMenu = c
      },
      8310: function (t, e, r) {
        var n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          i =
            (this && this.__importDefault) ||
            function (t) {
              return t && t.__esModule ? t : { default: t }
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Menu = void 0)
        var s = r(5713),
          a = r(4474),
          l = r(9515),
          c = r(7233),
          u = r(5865),
          p = r(473),
          h = r(4414),
          f = r(4922),
          d = r(6914),
          m = r(3463),
          y = r(7309),
          g = i(r(5445)),
          b = l.MathJax,
          v = 'undefined' != typeof window && window.navigator && 'Mac' === window.navigator.platform.substr(0, 3),
          _ = (function () {
            function t(t, e) {
              void 0 === e && (e = {})
              var r = this
              ;(this.settings = null),
                (this.defaultSettings = null),
                (this.menu = null),
                (this.MmlVisitor = new p.MmlVisitor()),
                (this.jax = { CHTML: null, SVG: null }),
                (this.rerenderStart = a.STATE.LAST),
                (this.about = new f.Info(
                  '<b style="font-size:120%;">MathJax</b> v' + s.mathjax.version,
                  function () {
                    var t = []
                    return (
                      t.push(
                        'Input Jax: ' +
                          r.document.inputJax
                            .map(function (t) {
                              return t.name
                            })
                            .join(', ')
                      ),
                      t.push('Output Jax: ' + r.document.outputJax.name),
                      t.push('Document Type: ' + r.document.kind),
                      t.join('<br/>')
                    )
                  },
                  '<a href="https://www.mathjax.org">www.mathjax.org</a>'
                )),
                (this.help = new f.Info(
                  '<b>MathJax Help</b>',
                  function () {
                    return [
                      '<p><b>MathJax</b> 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.</p>",
                      '<p><b>Browsers</b>: MathJax works with all modern browsers including',
                      ' Edge, Firefox, Chrome, Safari, Opera, and most mobile browsers.</p>',
                      '<p><b>Math Menu</b>: MathJax adds a contextual menu to equations.',
                      ' Right-click or CTRL-click on any mathematics to access the menu.</p>',
                      '<div style="margin-left: 1em;">',
                      "<p><b>Show Math As:</b> These options allow you to view the formula's",
                      ' source markup (as MathML or in its original format).</p>',
                      "<p><b>Copy to Clipboard:</b> These options copy the formula's source markup,",
                      ' as MathML or in its original format, to the clipboard',
                      ' (in browsers that support that).</p>',
                      '<p><b>Math Settings:</b> These give you control over features of MathJax,',
                      ' such the size of the mathematics, and the mechanism used',
                      ' to display equations.</p>',
                      '<p><b>Accessibility</b>: MathJax can work with screen',
                      ' readers to make mathematics accessible to the visually impaired.',
                      ' Turn on the explorer to enable generation of speech strings',
                      ' and the ability to investigate expressions interactively.</p>',
                      '<p><b>Language</b>: This menu lets you select the language used by MathJax',
                      ' for its menus and warning messages. (Not yet implemented in version 3.)</p>',
                      '</div>',
                      '<p><b>Math Zoom</b>: If you are having difficulty reading an',
                      ' equation, MathJax can enlarge it to help you see it better, or',
                      ' you can scall all the math on the page to make it larger.',
                      ' Turn these features on in the <b>Math Settings</b> menu.</p>',
                      "<p><b>Preferences</b>: 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.</p>'
                    ].join('\n')
                  },
                  '<a href="https://www.mathjax.org">www.mathjax.org</a>'
                )),
                (this.mathmlCode = new h.SelectableInfo(
                  'MathJax MathML Expression',
                  function () {
                    if (!r.menu.mathItem) return ''
                    var t = r.toMML(r.menu.mathItem)
                    return '<pre>' + r.formatSource(t) + '</pre>'
                  },
                  ''
                )),
                (this.originalText = new h.SelectableInfo(
                  'MathJax Original Source',
                  function () {
                    if (!r.menu.mathItem) return ''
                    var t = r.menu.mathItem.math
                    return '<pre style="font-size:125%; margin:0">' + r.formatSource(t) + '</pre>'
                  },
                  ''
                )),
                (this.annotationText = new h.SelectableInfo(
                  'MathJax Annotation Text',
                  function () {
                    if (!r.menu.mathItem) return ''
                    var t = r.menu.annotation
                    return '<pre style="font-size:125%; margin:0">' + r.formatSource(t) + '</pre>'
                  },
                  ''
                )),
                (this.zoomBox = new f.Info(
                  'MathJax Zoomed Expression',
                  function () {
                    if (!r.menu.mathItem) return ''
                    var t = r.menu.mathItem.typesetRoot.cloneNode(!0)
                    return (t.style.margin = '0'), '<div style="font-size: ' + 1.25 * parseFloat(r.settings.zscale) + '%">' + t.outerHTML + '</div>'
                  },
                  ''
                )),
                (this.document = t),
                (this.options = (0, c.userOptions)((0, c.defaultOptions)({}, this.constructor.OPTIONS), e)),
                this.initSettings(),
                this.mergeUserSettings(),
                this.initMenu(),
                this.applySettings()
            }
            return (
              Object.defineProperty(t.prototype, 'isLoading', {
                get: function () {
                  return t.loading > 0
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(t.prototype, 'loadingPromise', {
                get: function () {
                  return this.isLoading
                    ? (t._loadingPromise ||
                        (t._loadingPromise = new Promise(function (e, r) {
                          ;(t._loadingOK = e), (t._loadingFailed = r)
                        })),
                      t._loadingPromise)
                    : Promise.resolve()
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.initSettings = function () {
                ;(this.settings = this.options.settings), (this.jax = this.options.jax)
                var t = this.document.outputJax
                ;(this.jax[t.name] = t),
                  (this.settings.renderer = t.name),
                  b._.a11y && b._.a11y.explorer && Object.assign(this.settings, this.document.options.a11y),
                  (this.settings.scale = t.options.scale),
                  (this.defaultSettings = Object.assign({}, this.settings))
              }),
              (t.prototype.initMenu = function () {
                var t = this,
                  e = new d.Parser([['contextMenu', u.MJContextMenu.fromJson.bind(u.MJContextMenu)]])
                this.menu = e.parse({
                  type: 'contextMenu',
                  id: 'MathJax_Menu',
                  pool: [
                    this.variable('texHints'),
                    this.variable('semantics'),
                    this.variable('zoom'),
                    this.variable('zscale'),
                    this.variable('renderer', function (e) {
                      return t.setRenderer(e)
                    }),
                    this.variable('alt'),
                    this.variable('cmd'),
                    this.variable('ctrl'),
                    this.variable('shift'),
                    this.variable('scale', function (e) {
                      return t.setScale(e)
                    }),
                    this.variable('explorer', function (e) {
                      return t.setExplorer(e)
                    }),
                    this.a11yVar('highlight'),
                    this.a11yVar('backgroundColor'),
                    this.a11yVar('backgroundOpacity'),
                    this.a11yVar('foregroundColor'),
                    this.a11yVar('foregroundOpacity'),
                    this.a11yVar('speech'),
                    this.a11yVar('subtitles'),
                    this.a11yVar('braille'),
                    this.a11yVar('viewBraille'),
                    this.a11yVar('locale', function (t) {
                      return g.default.setupEngine({ locale: t })
                    }),
                    this.a11yVar('speechRules', function (e) {
                      var r = n(e.split('-'), 2),
                        o = r[0],
                        i = r[1]
                      ;(t.document.options.sre.domain = o), (t.document.options.sre.style = i)
                    }),
                    this.a11yVar('magnification'),
                    this.a11yVar('magnify'),
                    this.a11yVar('treeColoring'),
                    this.a11yVar('infoType'),
                    this.a11yVar('infoRole'),
                    this.a11yVar('infoPrefix'),
                    this.variable('autocollapse'),
                    this.variable('collapsible', function (e) {
                      return t.setCollapsible(e)
                    }),
                    this.variable('inTabOrder', function (e) {
                      return t.setTabOrder(e)
                    }),
                    this.variable('assistiveMml', function (e) {
                      return t.setAssistiveMml(e)
                    })
                  ],
                  items: [
                    this.submenu('Show', 'Show Math As', [
                      this.command('MathMLcode', 'MathML Code', function () {
                        return t.mathmlCode.post()
                      }),
                      this.command('Original', 'Original Form', function () {
                        return t.originalText.post()
                      }),
                      this.submenu('Annotation', 'Annotation')
                    ]),
                    this.submenu('Copy', 'Copy to Clipboard', [
                      this.command('MathMLcode', 'MathML Code', function () {
                        return t.copyMathML()
                      }),
                      this.command('Original', 'Original Form', function () {
                        return t.copyOriginal()
                      }),
                      this.submenu('Annotation', 'Annotation')
                    ]),
                    this.rule(),
                    this.submenu('Settings', 'Math Settings', [
                      this.submenu('Renderer', 'Math Renderer', this.radioGroup('renderer', [['CHTML'], ['SVG']])),
                      this.rule(),
                      this.submenu('ZoomTrigger', 'Zoom Trigger', [
                        this.command('ZoomNow', 'Zoom Once Now', function () {
                          return t.zoom(null, '', t.menu.mathItem)
                        }),
                        this.rule(),
                        this.radioGroup('zoom', [['Click'], ['DoubleClick', 'Double-Click'], ['NoZoom', 'No Zoom']]),
                        this.rule(),
                        this.label('TriggerRequires', 'Trigger Requires:'),
                        this.checkbox(v ? 'Option' : 'Alt', v ? 'Option' : 'Alt', 'alt'),
                        this.checkbox('Command', 'Command', 'cmd', { hidden: !v }),
                        this.checkbox('Control', 'Control', 'ctrl', { hiddne: v }),
                        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...', function () {
                        return t.scaleAllMath()
                      }),
                      this.rule(),
                      this.checkbox('texHints', 'Add TeX hints to MathML', 'texHints'),
                      this.checkbox('semantics', 'Add original as annotation', 'semantics'),
                      this.rule(),
                      this.command('Reset', 'Reset to defaults', function () {
                        return t.resetDefaults()
                      })
                    ]),
                    this.submenu('Accessibility', 'Accessibility', [
                      this.checkbox('Activate', 'Activate', 'explorer'),
                      this.submenu('Speech', 'Speech', [
                        this.checkbox('Speech', 'Speech Output', 'speech'),
                        this.checkbox('Subtitles', 'Speech Subtitles', 'subtitles'),
                        this.checkbox('Braille', 'Braille Output', 'braille'),
                        this.checkbox('View Braille', 'Braille Subtitles', 'viewBraille'),
                        this.rule(),
                        this.submenu('A11yLanguage', 'Language'),
                        this.rule(),
                        this.submenu(
                          'Mathspeak',
                          'Mathspeak Rules',
                          this.radioGroup('speechRules', [
                            ['mathspeak-default', 'Verbose'],
                            ['mathspeak-brief', 'Brief'],
                            ['mathspeak-sbrief', 'Superbrief']
                          ])
                        ),
                        this.submenu('Clearspeak', 'Clearspeak Rules', this.radioGroup('speechRules', [['clearspeak-default', 'Auto']])),
                        this.submenu(
                          'ChromeVox',
                          'ChromeVox Rules',
                          this.radioGroup('speechRules', [
                            ['chromevox-default', 'Standard'],
                            ['chromevox-alternative', 'Alternative']
                          ])
                        )
                      ]),
                      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')], !0),
                      this.rule(),
                      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.checkbox('AssistiveMml', 'Include Hidden MathML', 'assistiveMml')
                    ]),
                    this.submenu('Language', 'Language'),
                    this.rule(),
                    this.command('About', 'About MathJax', function () {
                      return t.about.post()
                    }),
                    this.command('Help', 'MathJax Help', function () {
                      return t.help.post()
                    })
                  ]
                })
                var r = this.menu
                this.about.attachMenu(r),
                  this.help.attachMenu(r),
                  this.originalText.attachMenu(r),
                  this.annotationText.attachMenu(r),
                  this.mathmlCode.attachMenu(r),
                  this.zoomBox.attachMenu(r),
                  this.checkLoadableItems(),
                  this.enableExplorerItems(this.settings.explorer),
                  (r.showAnnotation = this.annotationText),
                  (r.copyAnnotation = this.copyAnnotation.bind(this)),
                  (r.annotationTypes = this.options.annotationTypes),
                  y.CssStyles.addInfoStyles(this.document.document),
                  y.CssStyles.addMenuStyles(this.document.document)
              }),
              (t.prototype.checkLoadableItems = function () {
                var t, e
                if (b && b._ && b.loader && b.startup)
                  !this.settings.collapsible || (b._.a11y && b._.a11y.complexity) || this.loadA11y('complexity'),
                    !this.settings.explorer || (b._.a11y && b._.a11y.explorer) || this.loadA11y('explorer'),
                    !this.settings.assistiveMml || (b._.a11y && b._.a11y['assistive-mml']) || this.loadA11y('assistive-mml')
                else {
                  var r = this.menu
                  try {
                    for (var n = o(Object.keys(this.jax)), i = n.next(); !i.done; i = n.next()) {
                      var s = i.value
                      this.jax[s] || r.findID('Settings', 'Renderer', s).disable()
                    }
                  } catch (e) {
                    t = { error: e }
                  } finally {
                    try {
                      i && !i.done && (e = n.return) && e.call(n)
                    } finally {
                      if (t) throw t.error
                    }
                  }
                  r.findID('Accessibility', 'Activate').disable(), r.findID('Accessibility', 'AutoCollapse').disable(), r.findID('Accessibility', 'Collapsible').disable()
                }
              }),
              (t.prototype.enableExplorerItems = function (t) {
                var e,
                  r,
                  n = this.menu.findID('Accessibility', 'Activate').menu
                try {
                  for (var i = o(n.items.slice(1)), s = i.next(); !s.done; s = i.next()) {
                    var a = s.value
                    if (a instanceof m.Rule) break
                    t ? a.enable() : a.disable()
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }),
              (t.prototype.mergeUserSettings = function () {
                try {
                  var e = localStorage.getItem(t.MENU_STORAGE)
                  if (!e) return
                  Object.assign(this.settings, JSON.parse(e)), this.setA11y(this.settings)
                } catch (t) {
                  console.log('MathJax localStorage error: ' + t.message)
                }
              }),
              (t.prototype.saveUserSettings = function () {
                var e,
                  r,
                  n = {}
                try {
                  for (var i = o(Object.keys(this.settings)), s = i.next(); !s.done; s = i.next()) {
                    var a = s.value
                    this.settings[a] !== this.defaultSettings[a] && (n[a] = this.settings[a])
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
                try {
                  Object.keys(n).length ? localStorage.setItem(t.MENU_STORAGE, JSON.stringify(n)) : localStorage.removeItem(t.MENU_STORAGE)
                } catch (t) {
                  console.log('MathJax localStorage error: ' + t.message)
                }
              }),
              (t.prototype.setA11y = function (t) {
                b._.a11y && b._.a11y.explorer && b._.a11y.explorer_ts.setA11yOptions(this.document, t)
              }),
              (t.prototype.getA11y = function (t) {
                if (b._.a11y && b._.a11y.explorer) return void 0 !== this.document.options.a11y[t] ? this.document.options.a11y[t] : this.document.options.sre[t]
              }),
              (t.prototype.applySettings = function () {
                this.setTabOrder(this.settings.inTabOrder),
                  (this.document.options.enableAssistiveMml = this.settings.assistiveMml),
                  (this.document.outputJax.options.scale = parseFloat(this.settings.scale)),
                  this.settings.renderer !== this.defaultSettings.renderer && this.setRenderer(this.settings.renderer)
              }),
              (t.prototype.setScale = function (t) {
                ;(this.document.outputJax.options.scale = parseFloat(t)), this.document.rerender()
              }),
              (t.prototype.setRenderer = function (t) {
                var e = this
                if (this.jax[t]) this.setOutputJax(t)
                else {
                  var r = t.toLowerCase()
                  this.loadComponent('output/' + r, function () {
                    var n = b.startup
                    r in n.constructors && (n.useOutput(r, !0), (n.output = n.getOutputJax()), (e.jax[t] = n.output), e.setOutputJax(t))
                  })
                }
              }),
              (t.prototype.setOutputJax = function (t) {
                this.jax[t].setAdaptor(this.document.adaptor), (this.document.outputJax = this.jax[t]), this.rerender()
              }),
              (t.prototype.setTabOrder = function (t) {
                this.menu.store.inTaborder(t)
              }),
              (t.prototype.setAssistiveMml = function (t) {
                ;(this.document.options.enableAssistiveMml = t), !t || (b._.a11y && b._.a11y['assistive-mml']) ? this.rerender() : this.loadA11y('assistive-mml')
              }),
              (t.prototype.setExplorer = function (t) {
                this.enableExplorerItems(t), (this.document.options.enableExplorer = t), !t || (b._.a11y && b._.a11y.explorer) ? this.rerender(this.settings.collapsible ? a.STATE.RERENDER : a.STATE.COMPILED) : this.loadA11y('explorer')
              }),
              (t.prototype.setCollapsible = function (t) {
                ;(this.document.options.enableComplexity = t), !t || (b._.a11y && b._.a11y.complexity) ? this.rerender(a.STATE.COMPILED) : this.loadA11y('complexity')
              }),
              (t.prototype.scaleAllMath = function () {
                var t = (100 * parseFloat(this.settings.scale)).toFixed(1).replace(/.0$/, ''),
                  e = prompt('Scale all mathematics (compared to surrounding text) by', t + '%')
                if (e)
                  if (e.match(/^\s*\d+(\.\d*)?\s*%?\s*$/)) {
                    var r = parseFloat(e) / 100
                    r ? this.menu.pool.lookup('scale').setValue(String(r)) : alert('The scale should not be zero')
                  } else alert('The scale should be a percentage (e.g., 120%)')
              }),
              (t.prototype.resetDefaults = function () {
                var e, r
                t.loading++
                var n = this.menu.pool,
                  i = this.defaultSettings
                try {
                  for (var s = o(Object.keys(this.settings)), l = s.next(); !l.done; l = s.next()) {
                    var c = l.value,
                      u = n.lookup(c)
                    if (u) {
                      u.setValue(i[c])
                      var p = u.items[0]
                      p && p.executeCallbacks_()
                    } else this.settings[c] = i[c]
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    l && !l.done && (r = s.return) && r.call(s)
                  } finally {
                    if (e) throw e.error
                  }
                }
                t.loading--, this.rerender(a.STATE.COMPILED)
              }),
              (t.prototype.checkComponent = function (e) {
                var r = t.loadingPromises.get(e)
                r && s.mathjax.retryAfter(r)
              }),
              (t.prototype.loadComponent = function (e, r) {
                if (!t.loadingPromises.has(e)) {
                  var n = b.loader
                  if (n) {
                    t.loading++
                    var o = n
                      .load(e)
                      .then(function () {
                        t.loading--, t.loadingPromises.delete(e), r(), 0 === t.loading && t._loadingPromise && ((t._loadingPromise = null), t._loadingOK())
                      })
                      .catch(function (e) {
                        t._loadingPromise ? ((t._loadingPromise = null), t._loadingFailed(e)) : console.log(e)
                      })
                    t.loadingPromises.set(e, o)
                  }
                }
              }),
              (t.prototype.loadA11y = function (e) {
                var r = this,
                  n = !a.STATE.ENRICHED
                this.loadComponent('a11y/' + e, function () {
                  var o = b.startup
                  s.mathjax.handlers.unregister(o.handler), (o.handler = o.getHandler()), s.mathjax.handlers.register(o.handler)
                  var i = r.document
                  ;(r.document = o.document = o.getDocument()),
                    (r.document.menu = r),
                    r.document.outputJax.reset(),
                    r.transferMathList(i),
                    (r.document.processed = i.processed),
                    t._loadingPromise || (r.document.outputJax.reset(), r.rerender('complexity' === e || n ? a.STATE.COMPILED : a.STATE.TYPESET))
                })
              }),
              (t.prototype.transferMathList = function (t) {
                var e,
                  r,
                  n = this.document.options.MathItem
                try {
                  for (var i = o(t.math), s = i.next(); !s.done; s = i.next()) {
                    var a = s.value,
                      l = new n()
                    Object.assign(l, a), this.document.math.push(l)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
              }),
              (t.prototype.formatSource = function (t) {
                return t.trim().replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;')
              }),
              (t.prototype.toMML = function (t) {
                return this.MmlVisitor.visitTree(t.root, t, { texHints: this.settings.texHints, semantics: this.settings.semantics && 'MathML' !== t.inputJax.name })
              }),
              (t.prototype.zoom = function (t, e, r) {
                ;(t && !this.isZoomEvent(t, e)) || ((this.menu.mathItem = r), t && this.menu.post(t), this.zoomBox.post())
              }),
              (t.prototype.isZoomEvent = function (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)
              }),
              (t.prototype.rerender = function (e) {
                void 0 === e && (e = a.STATE.TYPESET),
                  (this.rerenderStart = Math.min(e, this.rerenderStart)),
                  t.loading || (this.rerenderStart <= a.STATE.COMPILED && this.document.reset({ inputJax: [] }), this.document.rerender(this.rerenderStart), (this.rerenderStart = a.STATE.LAST))
              }),
              (t.prototype.copyMathML = function () {
                this.copyToClipboard(this.toMML(this.menu.mathItem))
              }),
              (t.prototype.copyOriginal = function () {
                this.copyToClipboard(this.menu.mathItem.math.trim())
              }),
              (t.prototype.copyAnnotation = function () {
                this.copyToClipboard(this.menu.annotation.trim())
              }),
              (t.prototype.copyToClipboard = function (t) {
                var e = document.createElement('textarea')
                ;(e.value = t), e.setAttribute('readonly', ''), (e.style.cssText = 'height: 1px; width: 1px; padding: 1px; position: absolute; left: -10px'), document.body.appendChild(e), e.select()
                try {
                  document.execCommand('copy')
                } catch (t) {
                  alert("Can't copy to clipboard: " + t.message)
                }
                document.body.removeChild(e)
              }),
              (t.prototype.addMenu = function (t) {
                var e = this,
                  r = t.typesetRoot
                r.addEventListener(
                  'contextmenu',
                  function () {
                    return (e.menu.mathItem = t)
                  },
                  !0
                ),
                  r.addEventListener(
                    'keydown',
                    function () {
                      return (e.menu.mathItem = t)
                    },
                    !0
                  ),
                  r.addEventListener(
                    'click',
                    function (r) {
                      return e.zoom(r, 'Click', t)
                    },
                    !0
                  ),
                  r.addEventListener(
                    'dblclick',
                    function (r) {
                      return e.zoom(r, 'DoubleClick', t)
                    },
                    !0
                  ),
                  this.menu.store.insert(r)
              }),
              (t.prototype.clear = function () {
                this.menu.store.clear()
              }),
              (t.prototype.variable = function (t, e) {
                var r = this
                return {
                  name: t,
                  getter: function () {
                    return r.settings[t]
                  },
                  setter: function (n) {
                    ;(r.settings[t] = n), e && e(n), r.saveUserSettings()
                  }
                }
              }),
              (t.prototype.a11yVar = function (t, e) {
                var r = this
                return {
                  name: t,
                  getter: function () {
                    return r.getA11y(t)
                  },
                  setter: function (n) {
                    r.settings[t] = n
                    var o = {}
                    ;(o[t] = n), r.setA11y(o), e && e(n), r.saveUserSettings()
                  }
                }
              }),
              (t.prototype.submenu = function (t, e, r, n) {
                var i, s
                void 0 === r && (r = []), void 0 === n && (n = !1)
                var a = []
                try {
                  for (var l = o(r), c = l.next(); !c.done; c = l.next()) {
                    var u = c.value
                    Array.isArray(u) ? (a = a.concat(u)) : a.push(u)
                  }
                } catch (t) {
                  i = { error: t }
                } finally {
                  try {
                    c && !c.done && (s = l.return) && s.call(l)
                  } finally {
                    if (i) throw i.error
                  }
                }
                return { type: 'submenu', id: t, content: e, menu: { items: a }, disabled: 0 === a.length || n }
              }),
              (t.prototype.command = function (t, e, r, n) {
                return void 0 === n && (n = {}), Object.assign({ type: 'command', id: t, content: e, action: r }, n)
              }),
              (t.prototype.checkbox = function (t, e, r, n) {
                return void 0 === n && (n = {}), Object.assign({ type: 'checkbox', id: t, content: e, variable: r }, n)
              }),
              (t.prototype.radioGroup = function (t, e) {
                var r = this
                return e.map(function (e) {
                  return r.radio(e[0], e[1] || e[0], t)
                })
              }),
              (t.prototype.radio = function (t, e, r, n) {
                return void 0 === n && (n = {}), Object.assign({ type: 'radio', id: t, content: e, variable: r }, n)
              }),
              (t.prototype.label = function (t, e) {
                return { type: 'label', id: t, content: e }
              }),
              (t.prototype.rule = function () {
                return { type: 'rule' }
              }),
              (t.MENU_STORAGE = 'MathJax-Menu-Settings'),
              (t.OPTIONS = {
                settings: { texHints: !0, semantics: !1, zoom: 'NoZoom', zscale: '200%', renderer: 'CHTML', alt: !1, cmd: !1, ctrl: !1, shift: !1, scale: 1, autocollapse: !1, collapsible: !1, inTabOrder: !0, assistiveMml: !0, explorer: !1 },
                jax: { CHTML: null, SVG: null },
                annotationTypes: (0, c.expandable)({ TeX: ['TeX', 'LaTeX', 'application/x-tex'], StarMath: ['StarMath 5.0'], Maple: ['Maple'], ContentMathML: ['MathML-Content', 'application/mathml-content+xml'], OpenMath: ['OpenMath'] })
              }),
              (t.loading = 0),
              (t.loadingPromises = new Map()),
              (t._loadingPromise = null),
              (t._loadingOK = null),
              (t._loadingFailed = null),
              t
            )
          })()
        e.Menu = _
      },
      4001: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__assign) ||
            function () {
              return (
                (i =
                  Object.assign ||
                  function (t) {
                    for (var e, r = 1, n = arguments.length; r < n; r++) for (var o in (e = arguments[r])) Object.prototype.hasOwnProperty.call(e, o) && (t[o] = e[o])
                    return t
                  }),
                i.apply(this, arguments)
              )
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          l =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MenuHandler = e.MenuMathDocumentMixin = e.MenuMathItemMixin = void 0)
        var c = r(5713),
          u = r(4474),
          p = r(7233),
          h = r(8310)
        function f(t) {
          return (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.addMenu = function (t, e) {
                void 0 === e && (e = !1), this.state() >= u.STATE.CONTEXT_MENU || (this.isEscaped || (!t.options.enableMenu && !e) || t.menu.addMenu(this), this.state(u.STATE.CONTEXT_MENU))
              }),
              (e.prototype.checkLoading = function (t) {
                t.checkLoading()
              }),
              e
            )
          })(t)
        }
        function d(t) {
          var e
          return (
            (e = (function (t) {
              function e() {
                for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]
                var n = t.apply(this, a([], s(e), !1)) || this
                n.menu = new n.options.MenuClass(n, n.options.menuOptions)
                var o = n.constructor.ProcessBits
                return o.has('context-menu') || o.allocate('context-menu'), (n.options.MathItem = f(n.options.MathItem)), n
              }
              return (
                o(e, t),
                (e.prototype.addMenu = function () {
                  var t, e
                  if (!this.processed.isSet('context-menu')) {
                    try {
                      for (var r = l(this.math), n = r.next(); !n.done; n = r.next()) {
                        n.value.addMenu(this)
                      }
                    } catch (e) {
                      t = { error: e }
                    } finally {
                      try {
                        n && !n.done && (e = r.return) && e.call(r)
                      } finally {
                        if (t) throw t.error
                      }
                    }
                    this.processed.set('context-menu')
                  }
                  return this
                }),
                (e.prototype.checkLoading = function () {
                  this.menu.isLoading &&
                    c.mathjax.retryAfter(
                      this.menu.loadingPromise.catch(function (t) {
                        return console.log(t)
                      })
                    )
                  var t = this.menu.settings
                  return (
                    t.collapsible && ((this.options.enableComplexity = !0), this.menu.checkComponent('a11y/complexity')), t.explorer && ((this.options.enableEnrichment = !0), (this.options.enableExplorer = !0), this.menu.checkComponent('a11y/explorer')), this
                  )
                }),
                (e.prototype.state = function (e, r) {
                  return void 0 === r && (r = !1), t.prototype.state.call(this, e, r), e < u.STATE.CONTEXT_MENU && this.processed.clear('context-menu'), this
                }),
                (e.prototype.updateDocument = function () {
                  return t.prototype.updateDocument.call(this), this.menu.menu.store.sort(), this
                }),
                e
              )
            })(t)),
            (e.OPTIONS = i(
              i(
                {
                  enableEnrichment: !0,
                  enableComplexity: !0,
                  enableExplorer: !0,
                  enrichSpeech: 'none',
                  enrichError: function (t, e, r) {
                    return console.warn('Enrichment Error:', r)
                  }
                },
                t.OPTIONS
              ),
              {
                MenuClass: h.Menu,
                menuOptions: h.Menu.OPTIONS,
                enableMenu: !0,
                sre: t.OPTIONS.sre || (0, p.expandable)({}),
                a11y: t.OPTIONS.a11y || (0, p.expandable)({}),
                renderActions: (0, p.expandable)(i(i({}, t.OPTIONS.renderActions), { addMenu: [u.STATE.CONTEXT_MENU], checkLoading: [u.STATE.UNPROCESSED + 1] }))
              }
            )),
            e
          )
        }
        ;(0, u.newState)('CONTEXT_MENU', 170),
          (e.MenuMathItemMixin = f),
          (e.MenuMathDocumentMixin = d),
          (e.MenuHandler = function (t) {
            return (t.documentClass = d(t.documentClass)), t
          })
      },
      473: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlVisitor = void 0)
        var i = r(9259),
          s = r(7233),
          a = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.options = { texHints: !0, semantics: !1 }), (e.mathItem = null), e
            }
            return (
              o(e, t),
              (e.prototype.visitTree = function (t, e, r) {
                return void 0 === e && (e = null), void 0 === r && (r = {}), (this.mathItem = e), (0, s.userOptions)(this.options, r), this.visitNode(t, '')
              }),
              (e.prototype.visitTeXAtomNode = function (e, r) {
                return this.options.texHints
                  ? t.prototype.visitTeXAtomNode.call(this, e, r)
                  : e.childNodes[0] && 1 === e.childNodes[0].childNodes.length
                  ? this.visitNode(e.childNodes[0], r)
                  : r + '<mrow' + this.getAttributes(e) + '>\n' + this.childNodeMml(e, r + '  ', '\n') + r + '</mrow>'
              }),
              (e.prototype.visitMathNode = function (e, r) {
                if (!this.options.semantics || 'TeX' !== this.mathItem.inputJax.name) return t.prototype.visitDefault.call(this, e, r)
                var n = e.childNodes.length && e.childNodes[0].childNodes.length > 1
                return (
                  r +
                  '<math' +
                  this.getAttributes(e) +
                  '>\n' +
                  r +
                  '  <semantics>\n' +
                  (n ? r + '    <mrow>\n' : '') +
                  this.childNodeMml(e, r + (n ? '      ' : '    '), '\n') +
                  (n ? r + '    </mrow>\n' : '') +
                  r +
                  '    <annotation encoding="application/x-tex">' +
                  this.mathItem.math +
                  '</annotation>\n' +
                  r +
                  '  </semantics>\n' +
                  r +
                  '</math>'
                )
              }),
              e
            )
          })(i.SerializedMmlVisitor)
        e.MmlVisitor = a
      },
      4414: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SelectableInfo = void 0)
        var i = r(4922),
          s = r(2165),
          a = (function (t) {
            function e() {
              return (null !== t && t.apply(this, arguments)) || this
            }
            return (
              o(e, t),
              (e.prototype.addEvents = function (t) {
                var e = this
                t.addEventListener('keypress', function (t) {
                  'a' === t.key && (t.ctrlKey || t.metaKey) && (e.selectAll(), e.stop(t))
                })
              }),
              (e.prototype.selectAll = function () {
                document.getSelection().selectAllChildren(this.html.querySelector('pre'))
              }),
              (e.prototype.copyToClipboard = function () {
                this.selectAll()
                try {
                  document.execCommand('copy')
                } catch (t) {
                  alert("Can't copy to clipboard: " + t.message)
                }
                document.getSelection().removeAllRanges()
              }),
              (e.prototype.generateHtml = function () {
                var e = this
                t.prototype.generateHtml.call(this)
                var r = this.html.querySelector('span.' + s.HtmlClasses.INFOSIGNATURE).appendChild(document.createElement('input'))
                ;(r.type = 'button'),
                  (r.value = 'Copy to Clipboard'),
                  r.addEventListener('click', function (t) {
                    return e.copyToClipboard()
                  })
              }),
              e
            )
          })(i.Info)
        e.SelectableInfo = a
      },
      9923: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.asyncLoad = void 0)
        var n = r(5713)
        e.asyncLoad = function (t) {
          return n.mathjax.asyncLoad
            ? new Promise(function (e, r) {
                var o = n.mathjax.asyncLoad(t)
                o instanceof Promise
                  ? o
                      .then(function (t) {
                        return e(t)
                      })
                      .catch(function (t) {
                        return r(t)
                      })
                  : e(o)
              })
            : Promise.reject("Can't load '".concat(t, "': No asyncLoad method specified"))
        }
      },
      6469: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BBox = void 0)
        var n = r(6010),
          o = (function () {
            function t(t) {
              void 0 === t && (t = { w: 0, h: -n.BIGDIMEN, d: -n.BIGDIMEN }),
                (this.w = t.w || 0),
                (this.h = 'h' in t ? t.h : -n.BIGDIMEN),
                (this.d = 'd' in t ? t.d : -n.BIGDIMEN),
                (this.L = this.R = this.ic = this.sk = this.dx = 0),
                (this.scale = this.rscale = 1),
                (this.pwidth = '')
            }
            return (
              (t.zero = function () {
                return new t({ h: 0, d: 0, w: 0 })
              }),
              (t.empty = function () {
                return new t()
              }),
              (t.prototype.empty = function () {
                return (this.w = 0), (this.h = this.d = -n.BIGDIMEN), this
              }),
              (t.prototype.clean = function () {
                this.w === -n.BIGDIMEN && (this.w = 0), this.h === -n.BIGDIMEN && (this.h = 0), this.d === -n.BIGDIMEN && (this.d = 0)
              }),
              (t.prototype.rescale = function (t) {
                ;(this.w *= t), (this.h *= t), (this.d *= t)
              }),
              (t.prototype.combine = function (t, e, r) {
                void 0 === e && (e = 0), void 0 === r && (r = 0)
                var n = t.rscale,
                  o = e + n * (t.w + t.L + t.R),
                  i = r + n * t.h,
                  s = n * t.d - r
                o > this.w && (this.w = o), i > this.h && (this.h = i), s > this.d && (this.d = s)
              }),
              (t.prototype.append = function (t) {
                var 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)
              }),
              (t.prototype.updateFrom = function (t) {
                ;(this.h = t.h), (this.d = t.d), (this.w = t.w), t.pwidth && (this.pwidth = t.pwidth)
              }),
              (t.fullWidth = '100%'),
              (t.StyleAdjust = [
                ['borderTopWidth', 'h'],
                ['borderRightWidth', 'w'],
                ['borderBottomWidth', 'd'],
                ['borderLeftWidth', 'w', 0],
                ['paddingTop', 'h'],
                ['paddingRight', 'w'],
                ['paddingBottom', 'd'],
                ['paddingLeft', 'w', 0]
              ]),
              t
            )
          })()
        e.BBox = o
      },
      6751: function (t, e) {
        var r,
          n =
            (this && this.__extends) ||
            ((r = function (t, e) {
              return (
                (r =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                r(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function n() {
                this.constructor = t
              }
              r(t, e), (t.prototype = null === e ? Object.create(e) : ((n.prototype = e.prototype), new n()))
            }),
          o =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          s =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BitFieldClass = e.BitField = void 0)
        var a = (function () {
          function t() {
            this.bits = 0
          }
          return (
            (t.allocate = function () {
              for (var e, r, n = [], i = 0; i < arguments.length; i++) n[i] = arguments[i]
              try {
                for (var s = o(n), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  if (this.has(l)) throw new Error('Bit already allocated for ' + l)
                  if (this.next === t.MAXBIT) throw new Error('Maximum number of bits already allocated')
                  this.names.set(l, this.next), (this.next <<= 1)
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  a && !a.done && (r = s.return) && r.call(s)
                } finally {
                  if (e) throw e.error
                }
              }
            }),
            (t.has = function (t) {
              return this.names.has(t)
            }),
            (t.prototype.set = function (t) {
              this.bits |= this.getBit(t)
            }),
            (t.prototype.clear = function (t) {
              this.bits &= ~this.getBit(t)
            }),
            (t.prototype.isSet = function (t) {
              return !!(this.bits & this.getBit(t))
            }),
            (t.prototype.reset = function () {
              this.bits = 0
            }),
            (t.prototype.getBit = function (t) {
              var e = this.constructor.names.get(t)
              if (!e) throw new Error('Unknown bit-field name: ' + t)
              return e
            }),
            (t.MAXBIT = 1 << 31),
            (t.next = 1),
            (t.names = new Map()),
            t
          )
        })()
        ;(e.BitField = a),
          (e.BitFieldClass = function () {
            for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
            var r = (function (t) {
              function e() {
                return (null !== t && t.apply(this, arguments)) || this
              }
              return n(e, t), e
            })(a)
            return r.allocate.apply(r, s([], i(t), !1)), r
          })
      },
      5368: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.numeric = e.translate = e.remove = e.add = e.entities = e.options = void 0)
        var n = r(4542),
          o = r(9923)
        ;(e.options = { loadMissingEntities: !0 }),
          (e.entities = {
            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'
          })
        var i = {}
        function s(t, r) {
          if ('#' === r.charAt(0)) return a(r.slice(1))
          if (e.entities[r]) return e.entities[r]
          if (e.options.loadMissingEntities) {
            var s = r.match(/^[a-zA-Z](fr|scr|opf)$/) ? RegExp.$1 : r.charAt(0).toLowerCase()
            i[s] || ((i[s] = !0), (0, n.retryAfter)((0, o.asyncLoad)('./util/entities/' + s + '.js')))
          }
          return t
        }
        function a(t) {
          var e = 'x' === t.charAt(0) ? parseInt(t.slice(1), 16) : parseInt(t)
          return String.fromCodePoint(e)
        }
        ;(e.add = function (t, r) {
          Object.assign(e.entities, t), (i[r] = !0)
        }),
          (e.remove = function (t) {
            delete e.entities[t]
          }),
          (e.translate = function (t) {
            return t.replace(/&([a-z][a-z0-9]*|#(?:[0-9]+|x[0-9a-f]+));/gi, s)
          }),
          (e.numeric = a)
      },
      7525: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              if ('function' != typeof e && null !== e) throw new TypeError('Class extends value ' + String(e) + ' is not a constructor or null')
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          a =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.FunctionList = void 0)
        var l = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.execute = function () {
              for (var t, e, r = [], n = 0; n < arguments.length; n++) r[n] = arguments[n]
              try {
                for (var o = i(this), l = o.next(); !l.done; l = o.next()) {
                  var c = l.value,
                    u = c.item.apply(c, a([], s(r), !1))
                  if (!1 === u) return !1
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  l && !l.done && (e = o.return) && e.call(o)
                } finally {
                  if (t) throw t.error
                }
              }
              return !0
            }),
            (e.prototype.asyncExecute = function () {
              for (var t = [], e = 0; e < arguments.length; e++) t[e] = arguments[e]
              var r = -1,
                n = this.items
              return new Promise(function (e, o) {
                !(function i() {
                  for (var l; ++r < n.length; ) {
                    var c = (l = n[r]).item.apply(l, a([], s(t), !1))
                    if (c instanceof Promise)
                      return void c.then(i).catch(function (t) {
                        return o(t)
                      })
                    if (!1 === c) return void e(!1)
                  }
                  e(!0)
                })()
              })
            }),
            e
          )
        })(r(8666).PrioritizedList)
        e.FunctionList = l
      },
      103: function (t, e) {
        var r =
            (this && this.__generator) ||
            function (t, e) {
              var r,
                n,
                o,
                i,
                s = {
                  label: 0,
                  sent: function () {
                    if (1 & o[0]) throw o[1]
                    return o[1]
                  },
                  trys: [],
                  ops: []
                }
              return (
                (i = { next: a(0), throw: a(1), return: a(2) }),
                'function' == typeof Symbol &&
                  (i[Symbol.iterator] = function () {
                    return this
                  }),
                i
              )
              function a(i) {
                return function (a) {
                  return (function (i) {
                    if (r) throw new TypeError('Generator is already executing.')
                    for (; s; )
                      try {
                        if (((r = 1), n && (o = 2 & i[0] ? n.return : i[0] ? n.throw || ((o = n.return) && o.call(n), 0) : n.next) && !(o = o.call(n, i[1])).done)) return o
                        switch (((n = 0), o && (i = [2 & i[0], o.value]), i[0])) {
                          case 0:
                          case 1:
                            o = i
                            break
                          case 4:
                            return s.label++, { value: i[1], done: !1 }
                          case 5:
                            s.label++, (n = i[1]), (i = [0])
                            continue
                          case 7:
                            ;(i = s.ops.pop()), s.trys.pop()
                            continue
                          default:
                            if (!((o = s.trys), (o = o.length > 0 && o[o.length - 1]) || (6 !== i[0] && 2 !== i[0]))) {
                              s = 0
                              continue
                            }
                            if (3 === i[0] && (!o || (i[1] > o[0] && i[1] < o[3]))) {
                              s.label = i[1]
                              break
                            }
                            if (6 === i[0] && s.label < o[1]) {
                              ;(s.label = o[1]), (o = i)
                              break
                            }
                            if (o && s.label < o[2]) {
                              ;(s.label = o[2]), s.ops.push(i)
                              break
                            }
                            o[2] && s.ops.pop(), s.trys.pop()
                            continue
                        }
                        i = e.call(t, s)
                      } catch (t) {
                        ;(i = [6, t]), (n = 0)
                      } finally {
                        r = o = 0
                      }
                    if (5 & i[0]) throw i[1]
                    return { value: i[0] ? i[1] : void 0, done: !0 }
                  })([i, a])
                }
              }
            },
          n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            },
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.LinkedList = e.ListItem = e.END = void 0), (e.END = Symbol())
        var s = function (t) {
          void 0 === t && (t = null), (this.next = null), (this.prev = null), (this.data = t)
        }
        e.ListItem = s
        var a = (function () {
          function t() {
            for (var t = [], r = 0; r < arguments.length; r++) t[r] = arguments[r]
            ;(this.list = new s(e.END)), (this.list.next = this.list.prev = this.list), this.push.apply(this, o([], n(t), !1))
          }
          return (
            (t.prototype.isBefore = function (t, e) {
              return t < e
            }),
            (t.prototype.push = function () {
              for (var t, e, r = [], n = 0; n < arguments.length; n++) r[n] = arguments[n]
              try {
                for (var o = i(r), a = o.next(); !a.done; a = o.next()) {
                  var l = a.value,
                    c = new s(l)
                  ;(c.next = this.list), (c.prev = this.list.prev), (this.list.prev = c), (c.prev.next = c)
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  a && !a.done && (e = o.return) && e.call(o)
                } finally {
                  if (t) throw t.error
                }
              }
              return this
            }),
            (t.prototype.pop = function () {
              var t = this.list.prev
              return t.data === e.END ? null : ((this.list.prev = t.prev), (t.prev.next = this.list), (t.next = t.prev = null), t.data)
            }),
            (t.prototype.unshift = function () {
              for (var t, e, r = [], n = 0; n < arguments.length; n++) r[n] = arguments[n]
              try {
                for (var o = i(r.slice(0).reverse()), a = o.next(); !a.done; a = o.next()) {
                  var l = a.value,
                    c = new s(l)
                  ;(c.next = this.list.next), (c.prev = this.list), (this.list.next = c), (c.next.prev = c)
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  a && !a.done && (e = o.return) && e.call(o)
                } finally {
                  if (t) throw t.error
                }
              }
              return this
            }),
            (t.prototype.shift = function () {
              var t = this.list.next
              return t.data === e.END ? null : ((this.list.next = t.next), (t.next.prev = this.list), (t.next = t.prev = null), t.data)
            }),
            (t.prototype.remove = function () {
              for (var t, r, n = [], o = 0; o < arguments.length; o++) n[o] = arguments[o]
              var s = new Map()
              try {
                for (var a = i(n), l = a.next(); !l.done; l = a.next()) {
                  var c = l.value
                  s.set(c, !0)
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  l && !l.done && (r = a.return) && r.call(a)
                } finally {
                  if (t) throw t.error
                }
              }
              for (var u = this.list.next; u.data !== e.END; ) {
                var p = u.next
                s.has(u.data) && ((u.prev.next = u.next), (u.next.prev = u.prev), (u.next = u.prev = null)), (u = p)
              }
            }),
            (t.prototype.clear = function () {
              return (this.list.next.prev = this.list.prev.next = null), (this.list.next = this.list.prev = this.list), this
            }),
            (t.prototype[Symbol.iterator] = function () {
              var t
              return r(this, function (r) {
                switch (r.label) {
                  case 0:
                    ;(t = this.list.next), (r.label = 1)
                  case 1:
                    return t.data === e.END ? [3, 3] : [4, t.data]
                  case 2:
                    return r.sent(), (t = t.next), [3, 1]
                  case 3:
                    return [2]
                }
              })
            }),
            (t.prototype.reversed = function () {
              var t
              return r(this, function (r) {
                switch (r.label) {
                  case 0:
                    ;(t = this.list.prev), (r.label = 1)
                  case 1:
                    return t.data === e.END ? [3, 3] : [4, t.data]
                  case 2:
                    return r.sent(), (t = t.prev), [3, 1]
                  case 3:
                    return [2]
                }
              })
            }),
            (t.prototype.insert = function (t, r) {
              void 0 === r && (r = null), null === r && (r = this.isBefore.bind(this))
              for (var n = new s(t), o = this.list.next; o.data !== e.END && r(o.data, n.data); ) o = o.next
              return (n.prev = o.prev), (n.next = o), (o.prev.next = o.prev = n), this
            }),
            (t.prototype.sort = function (e) {
              var r, n
              void 0 === e && (e = null), null === e && (e = this.isBefore.bind(this))
              var o = []
              try {
                for (var s = i(this), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  o.push(new t(l))
                }
              } catch (t) {
                r = { error: t }
              } finally {
                try {
                  a && !a.done && (n = s.return) && n.call(s)
                } finally {
                  if (r) throw r.error
                }
              }
              for (this.list.next = this.list.prev = this.list; o.length > 1; ) {
                var c = o.shift(),
                  u = o.shift()
                c.merge(u, e), o.push(c)
              }
              return o.length && (this.list = o[0].list), this
            }),
            (t.prototype.merge = function (t, r) {
              var o, i, s, a, l
              void 0 === r && (r = null), null === r && (r = this.isBefore.bind(this))
              for (var c = this.list.next, u = t.list.next; c.data !== e.END && u.data !== e.END; )
                r(u.data, c.data)
                  ? ((o = n([c, u], 2)),
                    (u.prev.next = o[0]),
                    (c.prev.next = o[1]),
                    (i = n([c.prev, u.prev], 2)),
                    (u.prev = i[0]),
                    (c.prev = i[1]),
                    (s = n([t.list, this.list], 2)),
                    (this.list.prev.next = s[0]),
                    (t.list.prev.next = s[1]),
                    (a = n([t.list.prev, this.list.prev], 2)),
                    (this.list.prev = a[0]),
                    (t.list.prev = a[1]),
                    (c = (l = n([u.next, c], 2))[0]),
                    (u = l[1]))
                  : (c = c.next)
              return u.data !== e.END && ((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
            }),
            t
          )
        })()
        e.LinkedList = a
      },
      7233: function (t, e) {
        var r =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.lookup = e.separateOptions = e.selectOptionsFromKeys = e.selectOptions = e.userOptions = e.defaultOptions = e.insert = e.copy = e.keys = e.makeArray = e.expandable = e.Expandable = e.OPTIONS = e.REMOVE = e.APPEND = e.isObject = void 0)
        var i = {}.constructor
        function s(t) {
          return 'object' == typeof t && null !== t && (t.constructor === i || t.constructor === a)
        }
        ;(e.isObject = s),
          (e.APPEND = '[+]'),
          (e.REMOVE = '[-]'),
          (e.OPTIONS = {
            invalidOption: 'warn',
            optionError: function (t, r) {
              if ('fatal' === e.OPTIONS.invalidOption) throw new Error(t)
              console.warn('MathJax: ' + t)
            }
          })
        var a = function () {}
        function l(t) {
          return Object.assign(Object.create(a.prototype), t)
        }
        function c(t) {
          return t ? Object.keys(t).concat(Object.getOwnPropertySymbols(t)) : []
        }
        function u(t) {
          var e,
            n,
            o = {}
          try {
            for (var i = r(c(t)), h = i.next(); !h.done; h = i.next()) {
              var f = h.value,
                d = Object.getOwnPropertyDescriptor(t, f),
                m = d.value
              Array.isArray(m) ? (d.value = p([], m, !1)) : s(m) && (d.value = u(m)), d.enumerable && (o[f] = d)
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              h && !h.done && (n = i.return) && n.call(i)
            } finally {
              if (e) throw e.error
            }
          }
          return Object.defineProperties(t.constructor === a ? l({}) : {}, o)
        }
        function p(t, i, l) {
          var h, f
          void 0 === l && (l = !0)
          var d = function (r) {
            if (l && void 0 === t[r] && t.constructor !== a) return 'symbol' == typeof r && (r = r.toString()), e.OPTIONS.optionError('Invalid option "'.concat(r, '" (no default value).'), r), 'continue'
            var h = i[r],
              f = t[r]
            if (!s(h) || null === f || ('object' != typeof f && 'function' != typeof f)) Array.isArray(h) ? ((t[r] = []), p(t[r], h, !1)) : s(h) ? (t[r] = u(h)) : (t[r] = h)
            else {
              var d = c(h)
              Array.isArray(f) && ((1 === d.length && (d[0] === e.APPEND || d[0] === e.REMOVE) && Array.isArray(h[d[0]])) || (2 === d.length && d.sort().join(',') === e.APPEND + ',' + e.REMOVE && Array.isArray(h[e.APPEND]) && Array.isArray(h[e.REMOVE])))
                ? (h[e.REMOVE] &&
                    (f = t[r] =
                      f.filter(function (t) {
                        return h[e.REMOVE].indexOf(t) < 0
                      })),
                  h[e.APPEND] && (t[r] = o(o([], n(f), !1), n(h[e.APPEND]), !1)))
                : p(f, h, l)
            }
          }
          try {
            for (var m = r(c(i)), y = m.next(); !y.done; y = m.next()) {
              d(y.value)
            }
          } catch (t) {
            h = { error: t }
          } finally {
            try {
              y && !y.done && (f = m.return) && f.call(m)
            } finally {
              if (h) throw h.error
            }
          }
          return t
        }
        function h(t) {
          for (var e, n, o = [], i = 1; i < arguments.length; i++) o[i - 1] = arguments[i]
          var s = {}
          try {
            for (var a = r(o), l = a.next(); !l.done; l = a.next()) {
              var c = l.value
              t.hasOwnProperty(c) && (s[c] = t[c])
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              l && !l.done && (n = a.return) && n.call(a)
            } finally {
              if (e) throw e.error
            }
          }
          return s
        }
        ;(e.Expandable = a),
          (e.expandable = l),
          (e.makeArray = function (t) {
            return Array.isArray(t) ? t : [t]
          }),
          (e.keys = c),
          (e.copy = u),
          (e.insert = p),
          (e.defaultOptions = function (t) {
            for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
            return (
              e.forEach(function (e) {
                return p(t, e, !1)
              }),
              t
            )
          }),
          (e.userOptions = function (t) {
            for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
            return (
              e.forEach(function (e) {
                return p(t, e, !0)
              }),
              t
            )
          }),
          (e.selectOptions = h),
          (e.selectOptionsFromKeys = function (t, e) {
            return h.apply(void 0, o([t], n(Object.keys(e)), !1))
          }),
          (e.separateOptions = function (t) {
            for (var e, n, o, i, s = [], a = 1; a < arguments.length; a++) s[a - 1] = arguments[a]
            var l = []
            try {
              for (var c = r(s), u = c.next(); !u.done; u = c.next()) {
                var p = u.value,
                  h = {},
                  f = {}
                try {
                  for (var d = ((o = void 0), r(Object.keys(t || {}))), m = d.next(); !m.done; m = d.next()) {
                    var y = m.value
                    ;(void 0 === p[y] ? f : h)[y] = t[y]
                  }
                } catch (t) {
                  o = { error: t }
                } finally {
                  try {
                    m && !m.done && (i = d.return) && i.call(d)
                  } finally {
                    if (o) throw o.error
                  }
                }
                l.push(h), (t = f)
              }
            } catch (t) {
              e = { error: t }
            } finally {
              try {
                u && !u.done && (n = c.return) && n.call(c)
              } finally {
                if (e) throw e.error
              }
            }
            return l.unshift(t), l
          }),
          (e.lookup = function (t, e, r) {
            return void 0 === r && (r = null), e.hasOwnProperty(t) ? e[t] : r
          })
      },
      8666: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.PrioritizedList = void 0)
        var r = (function () {
          function t() {
            ;(this.items = []), (this.items = [])
          }
          return (
            (t.prototype[Symbol.iterator] = function () {
              var t = 0,
                e = this.items
              return {
                next: function () {
                  return { value: e[t++], done: t > e.length }
                }
              }
            }),
            (t.prototype.add = function (e, r) {
              void 0 === r && (r = t.DEFAULTPRIORITY)
              var n = this.items.length
              do {
                n--
              } while (n >= 0 && r < this.items[n].priority)
              return this.items.splice(n + 1, 0, { item: e, priority: r }), e
            }),
            (t.prototype.remove = function (t) {
              var e = this.items.length
              do {
                e--
              } while (e >= 0 && this.items[e].item !== t)
              e >= 0 && this.items.splice(e, 1)
            }),
            (t.DEFAULTPRIORITY = 5),
            t
          )
        })()
        e.PrioritizedList = r
      },
      4542: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.retryAfter = e.handleRetriesFor = void 0),
          (e.handleRetriesFor = function (t) {
            return new Promise(function e(r, n) {
              try {
                r(t())
              } catch (t) {
                t.retry && t.retry instanceof Promise
                  ? t.retry
                      .then(function () {
                        return e(r, n)
                      })
                      .catch(function (t) {
                        return n(t)
                      })
                  : t.restart && t.restart.isCallback
                  ? MathJax.Callback.After(function () {
                      return e(r, n)
                    }, t.restart)
                  : n(t)
              }
            })
          }),
          (e.retryAfter = function (t) {
            var e = new Error('MathJax retry')
            throw ((e.retry = t), e)
          })
      },
      4139: function (t, e) {
        var r =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CssStyles = void 0)
        var n = (function () {
          function t(t) {
            void 0 === t && (t = null), (this.styles = {}), this.addStyles(t)
          }
          return (
            Object.defineProperty(t.prototype, 'cssText', {
              get: function () {
                return this.getStyleString()
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.addStyles = function (t) {
              var e, n
              if (t)
                try {
                  for (var o = r(Object.keys(t)), i = o.next(); !i.done; i = o.next()) {
                    var s = i.value
                    this.styles[s] || (this.styles[s] = {}), Object.assign(this.styles[s], t[s])
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    i && !i.done && (n = o.return) && n.call(o)
                  } finally {
                    if (e) throw e.error
                  }
                }
            }),
            (t.prototype.removeStyles = function () {
              for (var t, e, n = [], o = 0; o < arguments.length; o++) n[o] = arguments[o]
              try {
                for (var i = r(n), s = i.next(); !s.done; s = i.next()) {
                  var a = s.value
                  delete this.styles[a]
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  s && !s.done && (e = i.return) && e.call(i)
                } finally {
                  if (t) throw t.error
                }
              }
            }),
            (t.prototype.clear = function () {
              this.styles = {}
            }),
            (t.prototype.getStyleString = function () {
              return this.getStyleRules().join('\n\n')
            }),
            (t.prototype.getStyleRules = function () {
              var t,
                e,
                n = Object.keys(this.styles),
                o = new Array(n.length),
                i = 0
              try {
                for (var s = r(n), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value
                  o[i++] = l + ' {\n' + this.getStyleDefString(this.styles[l]) + '\n}'
                }
              } catch (e) {
                t = { error: e }
              } finally {
                try {
                  a && !a.done && (e = s.return) && e.call(s)
                } finally {
                  if (t) throw t.error
                }
              }
              return o
            }),
            (t.prototype.getStyleDefString = function (t) {
              var e,
                n,
                o = Object.keys(t),
                i = new Array(o.length),
                s = 0
              try {
                for (var a = r(o), l = a.next(); !l.done; l = a.next()) {
                  var c = l.value
                  i[s++] = '  ' + c + ': ' + t[c] + ';'
                }
              } catch (t) {
                e = { error: t }
              } finally {
                try {
                  l && !l.done && (n = a.return) && n.call(a)
                } finally {
                  if (e) throw e.error
                }
              }
              return i.join('\n')
            }),
            t
          )
        })()
        e.CssStyles = n
      },
      8054: function (t, e) {
        var r =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          n =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          o =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Styles = void 0)
        var i = ['top', 'right', 'bottom', 'left'],
          s = ['width', 'style', 'color']
        function a(t) {
          for (var e = t.split(/((?:'[^']*'|"[^"]*"|,[\s\n]|[^\s\n])*)/g), r = []; e.length > 1; ) e.shift(), r.push(e.shift())
          return r
        }
        function l(t) {
          var e,
            n,
            o = a(this.styles[t])
          0 === o.length && o.push(''), 1 === o.length && o.push(o[0]), 2 === o.length && o.push(o[0]), 3 === o.length && o.push(o[1])
          try {
            for (var i = r(v.connect[t].children), s = i.next(); !s.done; s = i.next()) {
              var l = s.value
              this.setStyle(this.childName(t, l), o.shift())
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              s && !s.done && (n = i.return) && n.call(i)
            } finally {
              if (e) throw e.error
            }
          }
        }
        function c(t) {
          var e,
            n,
            o = v.connect[t].children,
            i = []
          try {
            for (var s = r(o), a = s.next(); !a.done; a = s.next()) {
              var l = a.value,
                c = this.styles[t + '-' + l]
              if (!c) return void delete this.styles[t]
              i.push(c)
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              a && !a.done && (n = s.return) && n.call(s)
            } finally {
              if (e) throw e.error
            }
          }
          i[3] === i[1] && (i.pop(), i[2] === i[0] && (i.pop(), i[1] === i[0] && i.pop())), (this.styles[t] = i.join(' '))
        }
        function u(t) {
          var e, n
          try {
            for (var o = r(v.connect[t].children), i = o.next(); !i.done; i = o.next()) {
              var s = i.value
              this.setStyle(this.childName(t, s), this.styles[t])
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              i && !i.done && (n = o.return) && n.call(o)
            } finally {
              if (e) throw e.error
            }
          }
        }
        function p(t) {
          var e,
            i,
            s = o([], n(v.connect[t].children), !1),
            a = this.styles[this.childName(t, s.shift())]
          try {
            for (var l = r(s), c = l.next(); !c.done; c = l.next()) {
              var u = c.value
              if (this.styles[this.childName(t, u)] !== a) return void delete this.styles[t]
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              c && !c.done && (i = l.return) && i.call(l)
            } finally {
              if (e) throw e.error
            }
          }
          this.styles[t] = a
        }
        var h = /^(?:[\d.]+(?:[a-z]+)|thin|medium|thick|inherit|initial|unset)$/,
          f = /^(?:none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset|inherit|initial|unset)$/
        function d(t) {
          var e,
            n,
            o,
            i,
            s = { width: '', style: '', color: '' }
          try {
            for (var l = r(a(this.styles[t])), c = l.next(); !c.done; c = l.next()) {
              var u = c.value
              u.match(h) && '' === s.width ? (s.width = u) : u.match(f) && '' === s.style ? (s.style = u) : (s.color = u)
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              c && !c.done && (n = l.return) && n.call(l)
            } finally {
              if (e) throw e.error
            }
          }
          try {
            for (var p = r(v.connect[t].children), d = p.next(); !d.done; d = p.next()) {
              var m = d.value
              this.setStyle(this.childName(t, m), s[m])
            }
          } catch (t) {
            o = { error: t }
          } finally {
            try {
              d && !d.done && (i = p.return) && i.call(p)
            } finally {
              if (o) throw o.error
            }
          }
        }
        function m(t) {
          var e,
            n,
            o = []
          try {
            for (var i = r(v.connect[t].children), s = i.next(); !s.done; s = i.next()) {
              var a = s.value,
                l = this.styles[this.childName(t, a)]
              l && o.push(l)
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              s && !s.done && (n = i.return) && n.call(i)
            } finally {
              if (e) throw e.error
            }
          }
          o.length ? (this.styles[t] = o.join(' ')) : delete this.styles[t]
        }
        var y = {
          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', '(?:(?:semi|extra|ulta)-)?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 g(t) {
          var e,
            o,
            i,
            s,
            l = a(this.styles[t]),
            c = { style: '', variant: [], weight: '', stretch: '', size: '', family: '', 'line-height': '' }
          try {
            for (var u = r(l), p = u.next(); !p.done; p = u.next()) {
              var h = p.value
              c.family = h
              try {
                for (var f = ((i = void 0), r(Object.keys(y))), d = f.next(); !d.done; d = f.next()) {
                  var m = d.value
                  if ((Array.isArray(c[m]) || '' === c[m]) && h.match(y[m]))
                    if ('size' === m) {
                      var g = n(h.split(/\//), 2),
                        b = g[0],
                        _ = g[1]
                      ;(c[m] = b), _ && (c['line-height'] = _)
                    } else '' === c.size && (Array.isArray(c[m]) ? c[m].push(h) : (c[m] = h))
                }
              } catch (t) {
                i = { error: t }
              } finally {
                try {
                  d && !d.done && (s = f.return) && s.call(f)
                } finally {
                  if (i) throw i.error
                }
              }
            }
          } catch (t) {
            e = { error: t }
          } finally {
            try {
              p && !p.done && (o = u.return) && o.call(u)
            } finally {
              if (e) throw e.error
            }
          }
          !(function (t, e) {
            var n, o
            try {
              for (var i = r(v.connect[t].children), s = i.next(); !s.done; s = i.next()) {
                var a = s.value,
                  l = this.childName(t, a)
                if (Array.isArray(e[a])) {
                  var c = e[a]
                  c.length && (this.styles[l] = c.join(' '))
                } else '' !== e[a] && (this.styles[l] = e[a])
              }
            } catch (t) {
              n = { error: t }
            } finally {
              try {
                s && !s.done && (o = i.return) && o.call(i)
              } finally {
                if (n) throw n.error
              }
            }
          })(t, c),
            delete this.styles[t]
        }
        function b(t) {}
        var v = (function () {
          function t(t) {
            void 0 === t && (t = ''), this.parse(t)
          }
          return (
            Object.defineProperty(t.prototype, 'cssText', {
              get: function () {
                var t,
                  e,
                  n = []
                try {
                  for (var o = r(Object.keys(this.styles)), i = o.next(); !i.done; i = o.next()) {
                    var s = i.value,
                      a = this.parentName(s)
                    this.styles[a] || n.push(s + ': ' + this.styles[s] + ';')
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    i && !i.done && (e = o.return) && e.call(o)
                  } finally {
                    if (t) throw t.error
                  }
                }
                return n.join(' ')
              },
              enumerable: !1,
              configurable: !0
            }),
            (t.prototype.set = function (e, r) {
              for (e = this.normalizeName(e), this.setStyle(e, r), t.connect[e] && !t.connect[e].combine && (this.combineChildren(e), delete this.styles[e]); e.match(/-/) && ((e = this.parentName(e)), t.connect[e]); ) t.connect[e].combine.call(this, e)
            }),
            (t.prototype.get = function (t) {
              return (t = this.normalizeName(t)), this.styles.hasOwnProperty(t) ? this.styles[t] : ''
            }),
            (t.prototype.setStyle = function (e, r) {
              ;(this.styles[e] = r), t.connect[e] && t.connect[e].children && t.connect[e].split.call(this, e), '' === r && delete this.styles[e]
            }),
            (t.prototype.combineChildren = function (e) {
              var n,
                o,
                i = this.parentName(e)
              try {
                for (var s = r(t.connect[e].children), a = s.next(); !a.done; a = s.next()) {
                  var l = a.value,
                    c = this.childName(i, l)
                  t.connect[c].combine.call(this, c)
                }
              } catch (t) {
                n = { error: t }
              } finally {
                try {
                  a && !a.done && (o = s.return) && o.call(s)
                } finally {
                  if (n) throw n.error
                }
              }
            }),
            (t.prototype.parentName = function (t) {
              var e = t.replace(/-[^-]*$/, '')
              return t === e ? '' : e
            }),
            (t.prototype.childName = function (e, r) {
              return r.match(/-/) ? r : (t.connect[e] && !t.connect[e].combine && ((r += e.replace(/.*-/, '-')), (e = this.parentName(e))), e + '-' + r)
            }),
            (t.prototype.normalizeName = function (t) {
              return t.replace(/[A-Z]/g, function (t) {
                return '-' + t.toLowerCase()
              })
            }),
            (t.prototype.parse = function (t) {
              void 0 === t && (t = '')
              var e = this.constructor.pattern
              this.styles = {}
              for (var r = t.replace(e.comment, '').split(e.style); r.length > 1; ) {
                var o = n(r.splice(0, 3), 3),
                  i = o[0],
                  s = o[1],
                  a = o[2]
                if (i.match(/[^\s\n]/)) return
                this.set(s, a)
              }
            }),
            (t.pattern = { style: /([-a-z]+)[\s\n]*:[\s\n]*((?:'[^']*'|"[^"]*"|\n|.)*?)[\s\n]*(?:;|$)/g, comment: /\/\*[^]*?\*\//g }),
            (t.connect = {
              padding: { children: i, split: l, combine: c },
              border: { children: i, split: u, combine: p },
              'border-top': { children: s, split: d, combine: m },
              'border-right': { children: s, split: d, combine: m },
              'border-bottom': { children: s, split: d, combine: m },
              'border-left': { children: s, split: d, combine: m },
              'border-width': { children: i, split: l, combine: null },
              'border-style': { children: i, split: l, combine: null },
              'border-color': { children: i, split: l, combine: null },
              font: { children: ['style', 'variant', 'weight', 'stretch', 'line-height', 'size', 'family'], split: g, combine: b }
            }),
            t
          )
        })()
        e.Styles = v
      },
      6010: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.px = e.emRounded = e.em = e.percent = e.length2em = e.MATHSPACE = e.RELUNITS = e.UNITS = e.BIGDIMEN = void 0),
          (e.BIGDIMEN = 1e6),
          (e.UNITS = { px: 1, in: 96, cm: 96 / 2.54, mm: 96 / 25.4 }),
          (e.RELUNITS = { em: 1, ex: 0.431, pt: 0.1, pc: 1.2, mu: 1 / 18 }),
          (e.MATHSPACE = {
            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: 0.04,
            medium: 0.06,
            thick: 0.1,
            normal: 1,
            big: 2,
            small: 1 / Math.sqrt(2),
            infinity: e.BIGDIMEN
          }),
          (e.length2em = function (t, r, n, o) {
            if ((void 0 === r && (r = 0), void 0 === n && (n = 1), void 0 === o && (o = 16), 'string' != typeof t && (t = String(t)), '' === t || null == t)) return r
            if (e.MATHSPACE[t]) return e.MATHSPACE[t]
            var i = t.match(/^\s*([-+]?(?:\.\d+|\d+(?:\.\d*)?))?(pt|em|ex|mu|px|pc|in|mm|cm|%)?/)
            if (!i) return r
            var s = parseFloat(i[1] || '1'),
              a = i[2]
            return e.UNITS.hasOwnProperty(a) ? (s * e.UNITS[a]) / o / n : e.RELUNITS.hasOwnProperty(a) ? s * e.RELUNITS[a] : '%' === a ? (s / 100) * r : s * r
          }),
          (e.percent = function (t) {
            return (100 * t).toFixed(1).replace(/\.?0+$/, '') + '%'
          }),
          (e.em = function (t) {
            return Math.abs(t) < 0.001 ? '0' : t.toFixed(3).replace(/\.?0+$/, '') + 'em'
          }),
          (e.emRounded = function (t, e) {
            return void 0 === e && (e = 16), (t = (Math.round(t * e) + 0.05) / e), Math.abs(t) < 0.001 ? '0em' : t.toFixed(3).replace(/\.?0+$/, '') + 'em'
          }),
          (e.px = function (t, r, n) {
            return void 0 === r && (r = -e.BIGDIMEN), void 0 === n && (n = 16), (t *= n), r && t < r && (t = r), Math.abs(t) < 0.1 ? '0' : t.toFixed(1).replace(/\.0$/, '') + 'px'
          })
      },
      7875: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.max = e.sum = void 0),
          (e.sum = function (t) {
            return t.reduce(function (t, e) {
              return t + e
            }, 0)
          }),
          (e.max = function (t) {
            return t.reduce(function (t, e) {
              return Math.max(t, e)
            }, 0)
          })
      },
      505: function (t, e) {
        var r =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          n =
            (this && this.__spreadArray) ||
            function (t, e, r) {
              if (r || 2 === arguments.length) for (var n, o = 0, i = e.length; o < i; o++) (!n && o in e) || (n || (n = Array.prototype.slice.call(e, 0, o)), (n[o] = e[o]))
              return t.concat(n || Array.prototype.slice.call(e))
            }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.split = e.isPercent = e.unicodeString = e.unicodeChars = e.quotePattern = e.sortLength = void 0),
          (e.sortLength = function (t, e) {
            return t.length !== e.length ? e.length - t.length : t === e ? 0 : t < e ? -1 : 1
          }),
          (e.quotePattern = function (t) {
            return t.replace(/([\^$(){}+*?\-|\[\]\:\\])/g, '\\$1')
          }),
          (e.unicodeChars = function (t) {
            return Array.from(t).map(function (t) {
              return t.codePointAt(0)
            })
          }),
          (e.unicodeString = function (t) {
            return String.fromCodePoint.apply(String, n([], r(t), !1))
          }),
          (e.isPercent = function (t) {
            return !!t.match(/%\s*$/)
          }),
          (e.split = function (t) {
            return t.trim().split(/\s+/)
          })
      },
      9329: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractEntry = void 0)
        var i = r(9328),
          s = r(2165),
          a = (function (t) {
            function e(e, r) {
              var n = t.call(this) || this
              return (n._menu = e), (n._type = r), (n.className = s.HtmlClasses.MENUITEM), (n.role = 'menuitem'), (n.hidden = !1), n
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'menu', {
                get: function () {
                  return this._menu
                },
                set: function (t) {
                  this._menu = t
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'type', {
                get: function () {
                  return this._type
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.hide = function () {
                ;(this.hidden = !0), this.menu.generateMenu()
              }),
              (e.prototype.show = function () {
                ;(this.hidden = !1), this.menu.generateMenu()
              }),
              (e.prototype.isHidden = function () {
                return this.hidden
              }),
              e
            )
          })(i.MenuElement)
        e.AbstractEntry = a
      },
      1340: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractItem = void 0)
        var s = r(9329),
          a = r(2556),
          l = r(2165),
          c = (function (t) {
            function e(e, r, n, o) {
              var i = t.call(this, e, r) || this
              return (i._content = n), (i.disabled = !1), (i.callbacks = []), (i._id = o || n), i
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'content', {
                get: function () {
                  return this._content
                },
                set: function (t) {
                  ;(this._content = t), this.generateHtml(), this.menu && this.menu.generateHtml()
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'id', {
                get: function () {
                  return this._id
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.press = function () {
                this.disabled || (this.executeAction(), this.executeCallbacks_())
              }),
              (e.prototype.executeAction = function () {}),
              (e.prototype.registerCallback = function (t) {
                ;-1 === this.callbacks.indexOf(t) && this.callbacks.push(t)
              }),
              (e.prototype.unregisterCallback = function (t) {
                var e = this.callbacks.indexOf(t)
                ;-1 !== e && this.callbacks.splice(e, 1)
              }),
              (e.prototype.mousedown = function (t) {
                this.press(), this.stop(t)
              }),
              (e.prototype.mouseover = function (t) {
                this.focus(), this.stop(t)
              }),
              (e.prototype.mouseout = function (t) {
                this.deactivate(), this.stop(t)
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this)
                var e = this.html
                e.setAttribute('aria-disabled', 'false'), (e.textContent = this.content)
              }),
              (e.prototype.activate = function () {
                this.disabled || this.html.classList.add(l.HtmlClasses.MENUACTIVE)
              }),
              (e.prototype.deactivate = function () {
                this.html.classList.remove(l.HtmlClasses.MENUACTIVE)
              }),
              (e.prototype.focus = function () {
                ;(this.menu.focused = this), t.prototype.focus.call(this), this.activate()
              }),
              (e.prototype.unfocus = function () {
                this.deactivate(), t.prototype.unfocus.call(this)
              }),
              (e.prototype.escape = function (t) {
                a.MenuUtil.close(this)
              }),
              (e.prototype.up = function (t) {
                this.menu.up(t)
              }),
              (e.prototype.down = function (t) {
                this.menu.down(t)
              }),
              (e.prototype.left = function (t) {
                this.menu.left(t)
              }),
              (e.prototype.right = function (t) {
                this.menu.right(t)
              }),
              (e.prototype.space = function (t) {
                this.press()
              }),
              (e.prototype.disable = function () {
                this.disabled = !0
                var t = this.html
                t.classList.add(l.HtmlClasses.MENUDISABLED), t.setAttribute('aria-disabled', 'true')
              }),
              (e.prototype.enable = function () {
                this.disabled = !1
                var t = this.html
                t.classList.remove(l.HtmlClasses.MENUDISABLED), t.removeAttribute('aria-disabled')
              }),
              (e.prototype.executeCallbacks_ = function () {
                var t, e
                try {
                  for (var r = i(this.callbacks), n = r.next(); !n.done; n = r.next()) {
                    var o = n.value
                    try {
                      o(this)
                    } catch (t) {
                      a.MenuUtil.error(t, 'Callback for menu entry ' + this.id + ' failed.')
                    }
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    n && !n.done && (e = r.return) && e.call(r)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              e
            )
          })(s.AbstractEntry)
        e.AbstractItem = c
      },
      1484: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractMenu = void 0)
        var s = r(8372),
          a = r(1340),
          l = r(2165),
          c = r(6186),
          u = (function (t) {
            function e() {
              var e = (null !== t && t.apply(this, arguments)) || this
              return (e.className = l.HtmlClasses.CONTEXTMENU), (e.role = 'menu'), (e._items = []), (e._baseMenu = null), e
            }
            return (
              o(e, t),
              Object.defineProperty(e.prototype, 'baseMenu', {
                get: function () {
                  return this._baseMenu
                },
                set: function (t) {
                  this._baseMenu = t
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'items', {
                get: function () {
                  return this._items
                },
                set: function (t) {
                  this._items = t
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'pool', {
                get: function () {
                  return this.variablePool
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'focused', {
                get: function () {
                  return this._focused
                },
                set: function (t) {
                  if (this._focused !== t) {
                    this._focused || this.unfocus()
                    var e = this._focused
                    ;(this._focused = t), e && e.unfocus()
                  }
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.up = function (t) {
                var e = this.items.filter(function (t) {
                  return t instanceof a.AbstractItem && !t.isHidden()
                })
                if (0 !== e.length)
                  if (this.focused) {
                    var r = e.indexOf(this.focused)
                    ;-1 !== r && e[(r = r ? --r : e.length - 1)].focus()
                  } else e[e.length - 1].focus()
              }),
              (e.prototype.down = function (t) {
                var e = this.items.filter(function (t) {
                  return t instanceof a.AbstractItem && !t.isHidden()
                })
                if (0 !== e.length)
                  if (this.focused) {
                    var r = e.indexOf(this.focused)
                    ;-1 !== r && e[(r = ++r === e.length ? 0 : r)].focus()
                  } else e[0].focus()
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this), this.generateMenu()
              }),
              (e.prototype.generateMenu = function () {
                var t,
                  e,
                  r = this.html
                r.classList.add(l.HtmlClasses.MENU)
                try {
                  for (var n = i(this.items), o = n.next(); !o.done; o = n.next()) {
                    var s = o.value
                    if (s.isHidden()) {
                      var a = s.html
                      a.parentNode && a.parentNode.removeChild(a)
                    } else r.appendChild(s.html)
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.post = function (e, r) {
                this.variablePool.update(), t.prototype.post.call(this, e, r)
              }),
              (e.prototype.unpostSubmenus = function () {
                var t,
                  e,
                  r = this.items.filter(function (t) {
                    return t instanceof c.Submenu
                  })
                try {
                  for (var n = i(r), o = n.next(); !o.done; o = n.next()) {
                    var s = o.value
                    s.submenu.unpost(), s !== this.focused && s.unfocus()
                  }
                } catch (e) {
                  t = { error: e }
                } finally {
                  try {
                    o && !o.done && (e = n.return) && e.call(n)
                  } finally {
                    if (t) throw t.error
                  }
                }
              }),
              (e.prototype.unpost = function () {
                t.prototype.unpost.call(this), this.unpostSubmenus(), (this.focused = null)
              }),
              (e.prototype.find = function (t) {
                var e, r
                try {
                  for (var n = i(this.items), o = n.next(); !o.done; o = n.next()) {
                    var s = o.value
                    if ('rule' !== s.type) {
                      if (s.id === t) return s
                      if ('submenu' === s.type) {
                        var a = s.submenu.find(t)
                        if (a) return a
                      }
                    }
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    o && !o.done && (r = n.return) && r.call(n)
                  } finally {
                    if (e) throw e.error
                  }
                }
                return null
              }),
              e
            )
          })(s.AbstractPostable)
        e.AbstractMenu = u
      },
      2868: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractNavigatable = void 0)
        var n = r(3205),
          o = r(8853),
          i = (function () {
            function t() {
              this.bubble = !1
            }
            return (
              (t.prototype.bubbleKey = function () {
                this.bubble = !0
              }),
              (t.prototype.keydown = function (t) {
                switch (t.keyCode) {
                  case n.KEY.ESCAPE:
                    this.escape(t)
                    break
                  case n.KEY.RIGHT:
                    this.right(t)
                    break
                  case n.KEY.LEFT:
                    this.left(t)
                    break
                  case n.KEY.UP:
                    this.up(t)
                    break
                  case n.KEY.DOWN:
                    this.down(t)
                    break
                  case n.KEY.RETURN:
                  case n.KEY.SPACE:
                    this.space(t)
                    break
                  default:
                    return
                }
                this.bubble ? (this.bubble = !1) : this.stop(t)
              }),
              (t.prototype.escape = function (t) {}),
              (t.prototype.space = function (t) {}),
              (t.prototype.left = function (t) {}),
              (t.prototype.right = function (t) {}),
              (t.prototype.up = function (t) {}),
              (t.prototype.down = function (t) {}),
              (t.prototype.stop = function (t) {
                t && (t.stopPropagation(), t.preventDefault(), (t.cancelBubble = !0))
              }),
              (t.prototype.mousedown = function (t) {
                return this.stop(t)
              }),
              (t.prototype.mouseup = function (t) {
                return this.stop(t)
              }),
              (t.prototype.mouseover = function (t) {
                return this.stop(t)
              }),
              (t.prototype.mouseout = function (t) {
                return this.stop(t)
              }),
              (t.prototype.click = function (t) {
                return this.stop(t)
              }),
              (t.prototype.addEvents = function (t) {
                t.addEventListener(o.MOUSE.DOWN, this.mousedown.bind(this)),
                  t.addEventListener(o.MOUSE.UP, this.mouseup.bind(this)),
                  t.addEventListener(o.MOUSE.OVER, this.mouseover.bind(this)),
                  t.addEventListener(o.MOUSE.OUT, this.mouseout.bind(this)),
                  t.addEventListener(o.MOUSE.CLICK, this.click.bind(this)),
                  t.addEventListener('keydown', this.keydown.bind(this)),
                  t.addEventListener('dragstart', this.stop.bind(this)),
                  t.addEventListener(o.MOUSE.SELECTSTART, this.stop.bind(this)),
                  t.addEventListener('contextmenu', this.stop.bind(this)),
                  t.addEventListener(o.MOUSE.DBLCLICK, this.stop.bind(this))
              }),
              t
            )
          })()
        e.AbstractNavigatable = i
      },
      8372: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractPostable = void 0)
        var i = (function (t) {
          function e() {
            var e = (null !== t && t.apply(this, arguments)) || this
            return (e.posted = !1), e
          }
          return (
            o(e, t),
            (e.prototype.isPosted = function () {
              return this.posted
            }),
            (e.prototype.post = function (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))
            }),
            (e.prototype.unpost = function () {
              if (this.posted) {
                var t = this.html
                t.parentNode && t.parentNode.removeChild(t), (this.posted = !1)
              }
            }),
            e
          )
        })(r(9328).MenuElement)
        e.AbstractPostable = i
      },
      6765: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractVariableItem = void 0)
        var i = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.generateHtml = function () {
              t.prototype.generateHtml.call(this)
              var e = this.html
              this.span || this.generateSpan(), e.appendChild(this.span), this.update()
            }),
            (e.prototype.register = function () {
              this.variable.register(this)
            }),
            (e.prototype.unregister = function () {
              this.variable.unregister(this)
            }),
            (e.prototype.update = function () {
              this.updateAria(), this.span && this.updateSpan()
            }),
            e
          )
        })(r(1340).AbstractItem)
        e.AbstractVariableItem = i
      },
      5179: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CloseButton = void 0)
        var i = r(8372),
          s = r(2165),
          a = (function (t) {
            function e(e) {
              var r = t.call(this) || this
              return (r.element = e), (r.className = s.HtmlClasses.MENUCLOSE), (r.role = 'button'), r
            }
            return (
              o(e, t),
              (e.prototype.generateHtml = function () {
                var t = document.createElement('span')
                t.classList.add(this.className), t.setAttribute('role', this.role), t.setAttribute('tabindex', '0')
                var e = document.createElement('span')
                ;(e.textContent = '\xd7'), t.appendChild(e), (this.html = t)
              }),
              (e.prototype.display = function () {}),
              (e.prototype.unpost = function () {
                t.prototype.unpost.call(this), this.element.unpost()
              }),
              (e.prototype.keydown = function (e) {
                this.bubbleKey(), t.prototype.keydown.call(this, e)
              }),
              (e.prototype.space = function (t) {
                this.unpost(), this.stop(t)
              }),
              (e.prototype.mousedown = function (t) {
                this.unpost(), this.stop(t)
              }),
              e
            )
          })(i.AbstractPostable)
        e.CloseButton = a
      },
      5073: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ContextMenu = void 0)
        var i = r(1484),
          s = r(2165),
          a = r(1932),
          l = r(2358),
          c = (function (t) {
            function e(e) {
              var r = t.call(this) || this
              return (r.factory = e), (r.id = ''), (r.moving = !1), (r._store = new a.MenuStore(r)), (r.widgets = []), (r.variablePool = new l.VariablePool()), r
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e) {
                var r = e.pool,
                  n = e.items,
                  o = e.id,
                  i = void 0 === o ? '' : o,
                  s = new this(t)
                s.id = i
                var a = t.get('variable')
                r.forEach(function (e) {
                  return a(t, e, s.pool)
                })
                var l = t.get('items')(t, n, s)
                return (s.items = l), s
              }),
              (e.prototype.generateHtml = function () {
                this.isPosted() && this.unpost(), t.prototype.generateHtml.call(this), (this._frame = document.createElement('div')), this._frame.classList.add(s.HtmlClasses.MENUFRAME)
                var e = 'left: 0px; top: 0px; z-index: 200; width: 100%; height: 100%; border: 0px; padding: 0px; margin: 0px;'
                this._frame.setAttribute('style', 'position: absolute; ' + e)
                var r = document.createElement('div')
                r.setAttribute('style', 'position: fixed; ' + e),
                  this._frame.appendChild(r),
                  r.addEventListener(
                    'mousedown',
                    function (t) {
                      this.unpost(), this.unpostWidgets(), this.stop(t)
                    }.bind(this)
                  )
              }),
              (e.prototype.display = function () {
                document.body.appendChild(this.frame), this.frame.appendChild(this.html), this.focus()
              }),
              (e.prototype.escape = function (t) {
                this.unpost(), this.unpostWidgets()
              }),
              (e.prototype.unpost = function () {
                if ((t.prototype.unpost.call(this), !(this.widgets.length > 0))) {
                  this.frame.parentNode.removeChild(this.frame)
                  var e = this.store
                  this.moving || e.insertTaborder(), e.active.focus()
                }
              }),
              (e.prototype.left = function (t) {
                this.move_(this.store.previous())
              }),
              (e.prototype.right = function (t) {
                this.move_(this.store.next())
              }),
              Object.defineProperty(e.prototype, 'frame', {
                get: function () {
                  return this._frame
                },
                enumerable: !1,
                configurable: !0
              }),
              Object.defineProperty(e.prototype, 'store', {
                get: function () {
                  return this._store
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.post = function (e, r) {
                if (void 0 !== r) return this.moving || this.store.removeTaborder(), void t.prototype.post.call(this, e, r)
                var n,
                  o,
                  i,
                  s = e
                if (
                  (s instanceof Event ? ((n = s.target), this.stop(s)) : (n = s),
                  s instanceof MouseEvent &&
                    ((o = s.pageX), (i = s.pageY), o || i || !s.clientX || ((o = s.clientX + document.body.scrollLeft + document.documentElement.scrollLeft), (i = s.clientY + document.body.scrollTop + document.documentElement.scrollTop))),
                  !o && !i && n)
                ) {
                  var a = window.pageXOffset || document.documentElement.scrollLeft,
                    l = window.pageYOffset || document.documentElement.scrollTop,
                    c = n.getBoundingClientRect()
                  ;(o = (c.right + c.left) / 2 + a), (i = (c.bottom + c.top) / 2 + l)
                }
                ;(this.store.active = n), (this.anchor = this.store.active)
                var u = this.html
                o + u.offsetWidth > document.body.offsetWidth - 5 && (o = document.body.offsetWidth - u.offsetWidth - 5), this.post(o, i)
              }),
              (e.prototype.registerWidget = function (t) {
                this.widgets.push(t)
              }),
              (e.prototype.unregisterWidget = function (t) {
                var e = this.widgets.indexOf(t)
                e > -1 && this.widgets.splice(e, 1), 0 === this.widgets.length && this.unpost()
              }),
              (e.prototype.unpostWidgets = function () {
                this.widgets.forEach(function (t) {
                  return t.unpost()
                })
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              (e.prototype.move_ = function (t) {
                this.anchor && t !== this.anchor && ((this.moving = !0), this.unpost(), this.post(t), (this.moving = !1))
              }),
              e
            )
          })(i.AbstractMenu)
        e.ContextMenu = c
      },
      7309: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CssStyles = void 0)
        var n = r(2165)
        !(function (t) {
          function e(t) {
            return '.' + (n.HtmlClasses[t] || t)
          }
          var r = {}
          ;(r[e('INFOCLOSE')] = '{  top:.2em; right:.2em;}'),
            (r[e('INFOCONTENT')] = '{  overflow:auto; text-align:left; font-size:80%;  padding:.4em .6em; border:1px inset; margin:1em 0px;  max-height:20em; max-width:30em; background-color:#EEEEEE;  white-space:normal;}'),
            (r[e('INFO') + e('MOUSEPOST')] = '{outline:none;}'),
            (r[e('INFO')] =
              '{  position:fixed; left:50%; width:auto; text-align:center;  border:3px outset; padding:1em 2em; background-color:#DDDDDD;  color:black;  cursor:default; font-family:message-box; font-size:120%;  font-style:normal; 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:201;  border-radius: 15px;                     /* Opera 10.5 and IE9 */  -webkit-border-radius:15px;               /* Safari and Chrome */  -moz-border-radius:15px;                  /* Firefox */  -khtml-border-radius:15px;                /* Konqueror */  box-shadow:0px 10px 20px #808080;         /* Opera 10.5 and IE9 */  -webkit-box-shadow:0px 10px 20px #808080; /* Safari 3 & Chrome */  -moz-box-shadow:0px 10px 20px #808080;    /* Forefox 3.5 */  -khtml-box-shadow:0px 10px 20px #808080;  /* Konqueror */  filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color="gray", Positive="true"); /* IE */}')
          var o = {}
          ;(o[e('MENU')] =
            '{  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:201;  border-radius: 5px;                     /* Opera 10.5 and IE9 */  -webkit-border-radius: 5px;             /* Safari and Chrome */  -moz-border-radius: 5px;                /* Firefox */  -khtml-border-radius: 5px;              /* Konqueror */  box-shadow:0px 10px 20px #808080;         /* Opera 10.5 and IE9 */  -webkit-box-shadow:0px 10px 20px #808080; /* Safari 3 & Chrome */  -moz-box-shadow:0px 10px 20px #808080;    /* Forefox 3.5 */  -khtml-box-shadow:0px 10px 20px #808080;  /* Konqueror */}'),
            (o[e('MENUITEM')] = '{  padding: 1px 2em;  background:transparent;}'),
            (o[e('MENUARROW')] = '{  position:absolute; right:.5em; padding-top:.25em; color:#666666;  font-family: null; font-size: .75em}'),
            (o[e('MENUACTIVE') + ' ' + e('MENUARROW')] = '{color:white}'),
            (o[e('MENUARROW') + e('RTL')] = '{left:.5em; right:auto}'),
            (o[e('MENUCHECK')] = '{  position:absolute; left:.7em;  font-family: null}'),
            (o[e('MENUCHECK') + e('RTL')] = '{ right:.7em; left:auto }'),
            (o[e('MENURADIOCHECK')] = '{  position:absolute; left: .7em;}'),
            (o[e('MENURADIOCHECK') + e('RTL')] = '{  right: .7em; left:auto}'),
            (o[e('MENUINPUTBOX')] = '{  padding-left: 1em; right:.5em; color:#666666;  font-family: null;}'),
            (o[e('MENUINPUTBOX') + e('RTL')] = '{  left: .1em;}'),
            (o[e('MENUCOMBOBOX')] = '{  left:.1em; padding-bottom:.5em;}'),
            (o[e('MENUSLIDER')] = '{  left: .1em;}'),
            (o[e('SLIDERVALUE')] = '{  position:absolute; right:.1em; padding-top:.25em; color:#333333;  font-size: .75em}'),
            (o[e('SLIDERBAR')] = '{  outline: none; background: #d3d3d3}'),
            (o[e('MENULABEL')] = '{  padding: 1px 2em 3px 1.33em;  font-style:italic}'),
            (o[e('MENURULE')] = '{  border-top: 1px solid #DDDDDD;  margin: 4px 3px;}'),
            (o[e('MENUDISABLED')] = '{  color:GrayText}'),
            (o[e('MENUACTIVE')] = '{  background-color: #606872;  color: white;}'),
            (o[e('MENUDISABLED') + ':focus'] = '{  background-color: #E8E8E8}'),
            (o[e('MENULABEL') + ':focus'] = '{  background-color: #E8E8E8}'),
            (o[e('CONTEXTMENU') + ':focus'] = '{  outline:none}'),
            (o[e('CONTEXTMENU') + ' ' + e('MENUITEM') + ':focus'] = '{  outline:none}'),
            (o[e('SELECTIONMENU')] = '{  position:relative; float:left;  border-bottom: none; -webkit-box-shadow:none; -webkit-border-radius:0px; }'),
            (o[e('SELECTIONITEM')] = '{  padding-right: 1em;}'),
            (o[e('SELECTION')] = '{  right: 40%; width:50%; }'),
            (o[e('SELECTIONBOX')] = '{  padding: 0em; max-height:20em; max-width: none;  background-color:#FFFFFF;}'),
            (o[e('SELECTIONDIVIDER')] = '{  clear: both; border-top: 2px solid #000000;}'),
            (o[e('MENU') + ' ' + e('MENUCLOSE')] = '{  top:-10px; left:-10px}')
          var i = {}
          ;(i[e('MENUCLOSE')] =
            '{  position:absolute;  cursor:pointer;  display:inline-block;  border:2px solid #AAA;  border-radius:18px;  -webkit-border-radius: 18px;             /* Safari and Chrome */  -moz-border-radius: 18px;                /* Firefox */  -khtml-border-radius: 18px;              /* Konqueror */  font-family: "Courier New", Courier;  font-size:24px;  color:#F0F0F0}'),
            (i[e('MENUCLOSE') + ' span'] =
              '{  display:block; background-color:#AAA; border:1.5px solid;  border-radius:18px;  -webkit-border-radius: 18px;             /* Safari and Chrome */  -moz-border-radius: 18px;                /* Firefox */  -khtml-border-radius: 18px;              /* Konqueror */  line-height:0;  padding:8px 0 6px     /* may need to be browser-specific */}'),
            (i[e('MENUCLOSE') + ':hover'] = '{  color:white!important;  border:2px solid #CCC!important}'),
            (i[e('MENUCLOSE') + ':hover span'] = '{  background-color:#CCC!important}'),
            (i[e('MENUCLOSE') + ':hover:focus'] = '{  outline:none}')
          var s = !1,
            a = !1,
            l = !1
          function c(t) {
            l || (u(i, t), (l = !0))
          }
          function u(t, e) {
            var r = e || document,
              n = r.createElement('style')
            n.type = 'text/css'
            var o = ''
            for (var i in t) (o += i), (o += ' '), (o += t[i]), (o += '\n')
            ;(n.innerHTML = o), r.head.appendChild(n)
          }
          ;(t.addMenuStyles = function (t) {
            a || (u(o, t), (a = !0), c(t))
          }),
            (t.addInfoStyles = function (t) {
              s || (u(r, t), (s = !0), c(t))
            })
        })(e.CssStyles || (e.CssStyles = {}))
      },
      2165: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HtmlAttrs = e.HtmlClasses = void 0)
        function r(t) {
          return 'CtxtMenu_' + t
        }
        function n(t) {
          return r(t)
        }
        function o(t) {
          return r(t)
        }
        ;(e.HtmlClasses = {
          ATTACHED: n('Attached'),
          CONTEXTMENU: n('ContextMenu'),
          MENU: n('Menu'),
          MENUARROW: n('MenuArrow'),
          MENUACTIVE: n('MenuActive'),
          MENUCHECK: n('MenuCheck'),
          MENUCLOSE: n('MenuClose'),
          MENUCOMBOBOX: n('MenuComboBox'),
          MENUDISABLED: n('MenuDisabled'),
          MENUFRAME: n('MenuFrame'),
          MENUITEM: n('MenuItem'),
          MENULABEL: n('MenuLabel'),
          MENURADIOCHECK: n('MenuRadioCheck'),
          MENUINPUTBOX: n('MenuInputBox'),
          MENURULE: n('MenuRule'),
          MENUSLIDER: n('MenuSlider'),
          MOUSEPOST: n('MousePost'),
          RTL: n('RTL'),
          INFO: n('Info'),
          INFOCLOSE: n('InfoClose'),
          INFOCONTENT: n('InfoContent'),
          INFOSIGNATURE: n('InfoSignature'),
          INFOTITLE: n('InfoTitle'),
          SLIDERVALUE: n('SliderValue'),
          SLIDERBAR: n('SliderBar'),
          SELECTION: n('Selection'),
          SELECTIONBOX: n('SelectionBox'),
          SELECTIONMENU: n('SelectionMenu'),
          SELECTIONDIVIDER: n('SelectionDivider'),
          SELECTIONITEM: n('SelectionItem')
        }),
          (e.HtmlAttrs = { COUNTER: o('Counter'), KEYDOWNFUNC: o('keydownFunc'), CONTEXTMENUFUNC: o('contextmenuFunc'), OLDTAB: o('Oldtabindex'), TOUCHFUNC: o('TouchFunc') })
      },
      4922: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Info = void 0)
        var i = r(5179),
          s = r(2165),
          a = (function (t) {
            function e(e, r, n) {
              var o = t.call(this) || this
              return (
                (o.title = e),
                (o.signature = n),
                (o.className = s.HtmlClasses.INFO),
                (o.role = 'dialog'),
                (o.contentDiv = o.generateContent()),
                (o.close = o.generateClose()),
                (o.content =
                  r ||
                  function () {
                    return ''
                  }),
                o
              )
            }
            return (
              o(e, t),
              (e.prototype.attachMenu = function (t) {
                this.menu = t
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this)
                var e = this.html
                e.appendChild(this.generateTitle()), e.appendChild(this.contentDiv), e.appendChild(this.generateSignature()), e.appendChild(this.close.html), e.setAttribute('tabindex', '0')
              }),
              (e.prototype.post = function () {
                t.prototype.post.call(this)
                var e = document.documentElement,
                  r = this.html,
                  n = window.innerHeight || e.clientHeight || e.scrollHeight || 0,
                  o = Math.floor(-r.offsetWidth / 2),
                  i = Math.floor((n - r.offsetHeight) / 3)
                r.setAttribute('style', 'margin-left: ' + o + 'px; top: ' + i + 'px;'), window.event instanceof MouseEvent && r.classList.add(s.HtmlClasses.MOUSEPOST), r.focus()
              }),
              (e.prototype.display = function () {
                this.menu.registerWidget(this), (this.contentDiv.innerHTML = this.content())
                var t = this.menu.html
                t.parentNode && t.parentNode.removeChild(t), this.menu.frame.appendChild(this.html)
              }),
              (e.prototype.click = function (t) {}),
              (e.prototype.keydown = function (e) {
                this.bubbleKey(), t.prototype.keydown.call(this, e)
              }),
              (e.prototype.escape = function (t) {
                this.unpost()
              }),
              (e.prototype.unpost = function () {
                t.prototype.unpost.call(this), this.html.classList.remove(s.HtmlClasses.MOUSEPOST), this.menu.unregisterWidget(this)
              }),
              (e.prototype.generateClose = function () {
                var t = new i.CloseButton(this),
                  e = t.html
                return e.classList.add(s.HtmlClasses.INFOCLOSE), e.setAttribute('aria-label', 'Close Dialog Box'), t
              }),
              (e.prototype.generateTitle = function () {
                var t = document.createElement('span')
                return (t.innerHTML = this.title), t.classList.add(s.HtmlClasses.INFOTITLE), t
              }),
              (e.prototype.generateContent = function () {
                var t = document.createElement('div')
                return t.classList.add(s.HtmlClasses.INFOCONTENT), t.setAttribute('tabindex', '0'), t
              }),
              (e.prototype.generateSignature = function () {
                var t = document.createElement('span')
                return (t.innerHTML = this.signature), t.classList.add(s.HtmlClasses.INFOSIGNATURE), t
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(r(8372).AbstractPostable)
        e.Info = a
      },
      1409: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Checkbox = void 0)
        var i = r(6765),
          s = r(2556),
          a = r(2165),
          l = (function (t) {
            function e(e, r, n, o) {
              var i = t.call(this, e, 'checkbox', r, o) || this
              return (i.role = 'menuitemcheckbox'), (i.variable = e.pool.lookup(n)), i.register(), i
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r, e.content, e.variable, e.id)
              }),
              (e.prototype.executeAction = function () {
                this.variable.setValue(!this.variable.getValue()), s.MenuUtil.close(this)
              }),
              (e.prototype.generateSpan = function () {
                ;(this.span = document.createElement('span')), (this.span.textContent = '\u2713'), this.span.classList.add(a.HtmlClasses.MENUCHECK)
              }),
              (e.prototype.updateAria = function () {
                this.html.setAttribute('aria-checked', this.variable.getValue() ? 'true' : 'false')
              }),
              (e.prototype.updateSpan = function () {
                this.span.style.display = this.variable.getValue() ? '' : 'none'
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractVariableItem)
        e.Checkbox = l
      },
      9886: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Combo = void 0)
        var i = r(6765),
          s = r(2556),
          a = r(2165),
          l = r(3205),
          c = (function (t) {
            function e(e, r, n, o) {
              var i = t.call(this, e, 'combobox', r, o) || this
              return (i.role = 'combobox'), (i.inputEvent = !1), (i.variable = e.pool.lookup(n)), i.register(), i
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r, e.content, e.variable, e.id)
              }),
              (e.prototype.executeAction = function () {
                this.variable.setValue(this.input.value, s.MenuUtil.getActiveElement(this))
              }),
              (e.prototype.space = function (e) {
                t.prototype.space.call(this, e), s.MenuUtil.close(this)
              }),
              (e.prototype.focus = function () {
                t.prototype.focus.call(this), this.input.focus()
              }),
              (e.prototype.unfocus = function () {
                t.prototype.unfocus.call(this), this.updateSpan()
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this), this.html.classList.add(a.HtmlClasses.MENUCOMBOBOX)
              }),
              (e.prototype.generateSpan = function () {
                ;(this.span = document.createElement('span')),
                  this.span.classList.add(a.HtmlClasses.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)
              }),
              (e.prototype.inputKey = function (t) {
                this.bubbleKey(), (this.inputEvent = !0)
              }),
              (e.prototype.keydown = function (e) {
                if (this.inputEvent && e.keyCode !== l.KEY.ESCAPE && e.keyCode !== l.KEY.RETURN) return (this.inputEvent = !1), void e.stopPropagation()
                t.prototype.keydown.call(this, e), e.stopPropagation()
              }),
              (e.prototype.updateAria = function () {}),
              (e.prototype.updateSpan = function () {
                var t
                try {
                  t = this.variable.getValue(s.MenuUtil.getActiveElement(this))
                } catch (e) {
                  t = ''
                }
                this.input.value = t
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractVariableItem)
        e.Combo = c
      },
      3467: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Command = void 0)
        var i = r(1340),
          s = r(2556),
          a = (function (t) {
            function e(e, r, n, o) {
              var i = t.call(this, e, 'command', r, o) || this
              return (i.command = n), i
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r, e.content, e.action, e.id)
              }),
              (e.prototype.executeAction = function () {
                try {
                  this.command(s.MenuUtil.getActiveElement(this))
                } catch (t) {
                  s.MenuUtil.error(t, 'Illegal command callback.')
                }
                s.MenuUtil.close(this)
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractItem)
        e.Command = a
      },
      2965: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Label = void 0)
        var i = r(1340),
          s = r(2165),
          a = (function (t) {
            function e(e, r, n) {
              return t.call(this, e, 'label', r, n) || this
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r, e.content, e.id)
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this), this.html.classList.add(s.HtmlClasses.MENULABEL)
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractItem)
        e.Label = a
      },
      385: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Radio = void 0)
        var i = r(6765),
          s = r(2556),
          a = r(2165),
          l = (function (t) {
            function e(e, r, n, o) {
              var i = t.call(this, e, 'radio', r, o) || this
              return (i.role = 'menuitemradio'), (i.variable = e.pool.lookup(n)), i.register(), i
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r, e.content, e.variable, e.id)
              }),
              (e.prototype.executeAction = function () {
                this.variable.setValue(this.id), s.MenuUtil.close(this)
              }),
              (e.prototype.generateSpan = function () {
                ;(this.span = document.createElement('span')), (this.span.textContent = '\u2713'), this.span.classList.add(a.HtmlClasses.MENURADIOCHECK)
              }),
              (e.prototype.updateAria = function () {
                this.html.setAttribute('aria-checked', this.variable.getValue() === this.id ? 'true' : 'false')
              }),
              (e.prototype.updateSpan = function () {
                this.span.style.display = this.variable.getValue() === this.id ? '' : 'none'
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractVariableItem)
        e.Radio = l
      },
      3463: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Rule = void 0)
        var i = r(9329),
          s = r(2165),
          a = (function (t) {
            function e(e) {
              var r = t.call(this, e, 'rule') || this
              return (r.className = s.HtmlClasses.MENUITEM), (r.role = 'separator'), r
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r)
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this)
                var e = this.html
                e.classList.add(s.HtmlClasses.MENURULE), e.setAttribute('aria-orientation', 'vertical')
              }),
              (e.prototype.addEvents = function (t) {}),
              (e.prototype.toJson = function () {
                return { type: 'rule' }
              }),
              e
            )
          })(i.AbstractEntry)
        e.Rule = a
      },
      7625: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Slider = void 0)
        var i = r(6765),
          s = r(2556),
          a = r(2165),
          l = r(3205),
          c = (function (t) {
            function e(e, r, n, o) {
              var i = t.call(this, e, 'slider', r, o) || this
              return (i.role = 'slider'), (i.labelId = 'ctx_slideLabel' + s.MenuUtil.counter()), (i.valueId = 'ctx_slideValue' + s.MenuUtil.counter()), (i.inputEvent = !1), (i.variable = e.pool.lookup(n)), i.register(), i
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                return new this(r, e.content, e.variable, e.id)
              }),
              (e.prototype.executeAction = function () {
                this.variable.setValue(this.input.value, s.MenuUtil.getActiveElement(this)), this.update()
              }),
              (e.prototype.space = function (e) {
                t.prototype.space.call(this, e), s.MenuUtil.close(this)
              }),
              (e.prototype.focus = function () {
                t.prototype.focus.call(this), this.input.focus()
              }),
              (e.prototype.unfocus = function () {
                t.prototype.unfocus.call(this), this.updateSpan()
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this),
                  this.html.classList.add(a.HtmlClasses.MENUSLIDER),
                  (this.valueSpan = document.createElement('span')),
                  this.valueSpan.setAttribute('id', this.valueId),
                  this.valueSpan.classList.add(a.HtmlClasses.SLIDERVALUE),
                  this.html.appendChild(this.valueSpan)
              }),
              (e.prototype.generateSpan = function () {
                ;(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(a.HtmlClasses.SLIDERBAR),
                  this.span.appendChild(this.input)
              }),
              (e.prototype.inputKey = function (t) {
                this.inputEvent = !0
              }),
              (e.prototype.mousedown = function (t) {
                t.stopPropagation()
              }),
              (e.prototype.mouseup = function (t) {
                event.stopPropagation()
              }),
              (e.prototype.keydown = function (e) {
                var r = e.keyCode
                return r === l.KEY.UP || r === l.KEY.DOWN
                  ? (e.preventDefault(), void t.prototype.keydown.call(this, e))
                  : this.inputEvent && r !== l.KEY.ESCAPE && r !== l.KEY.RETURN
                  ? ((this.inputEvent = !1), void e.stopPropagation())
                  : (t.prototype.keydown.call(this, e), void e.stopPropagation())
              }),
              (e.prototype.updateAria = function () {
                var t = this.variable.getValue()
                t && this.input && (this.input.setAttribute('aria-valuenow', t), this.input.setAttribute('aria-valuetext', t + '%'))
              }),
              (e.prototype.updateSpan = function () {
                var t
                try {
                  ;(t = this.variable.getValue(s.MenuUtil.getActiveElement(this))), (this.valueSpan.innerHTML = t + '%')
                } catch (e) {
                  t = ''
                }
                this.input.value = t
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractVariableItem)
        e.Slider = c
      },
      6186: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Submenu = void 0)
        var i = r(1340),
          s = r(2165),
          a = (function (t) {
            function e(e, r, n) {
              var o = t.call(this, e, 'submenu', r, n) || this
              return (o._submenu = null), o
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                var n = e.content,
                  o = e.menu,
                  i = new this(r, n, e.id),
                  s = t.get('subMenu')(t, o, i)
                return (i.submenu = s), i
              }),
              Object.defineProperty(e.prototype, 'submenu', {
                get: function () {
                  return this._submenu
                },
                set: function (t) {
                  this._submenu = t
                },
                enumerable: !1,
                configurable: !0
              }),
              (e.prototype.mouseover = function (t) {
                this.focus(), this.stop(t)
              }),
              (e.prototype.mouseout = function (t) {
                this.stop(t)
              }),
              (e.prototype.unfocus = function () {
                if (this.submenu.isPosted()) {
                  if (this.menu.focused !== this) return t.prototype.unfocus.call(this), void this.menu.unpostSubmenus()
                  this.html.setAttribute('tabindex', '-1'), this.html.blur()
                } else t.prototype.unfocus.call(this)
              }),
              (e.prototype.focus = function () {
                t.prototype.focus.call(this), this.submenu.isPosted() || this.disabled || this.submenu.post()
              }),
              (e.prototype.executeAction = function () {
                this.submenu.isPosted() ? this.submenu.unpost() : this.submenu.post()
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this)
                var e = this.html
                ;(this.span = document.createElement('span')), (this.span.textContent = '\u25ba'), this.span.classList.add(s.HtmlClasses.MENUARROW), e.appendChild(this.span), e.setAttribute('aria-haspopup', 'true')
              }),
              (e.prototype.left = function (e) {
                this.submenu.isPosted() ? this.submenu.unpost() : t.prototype.left.call(this, e)
              }),
              (e.prototype.right = function (t) {
                this.submenu.isPosted() ? this.submenu.down(t) : this.submenu.post()
              }),
              (e.prototype.toJson = function () {
                return { type: '' }
              }),
              e
            )
          })(i.AbstractItem)
        e.Submenu = a
      },
      3205: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.KEY = void 0),
          (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')
          })(e.KEY || (e.KEY = {}))
      },
      9328: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MenuElement = void 0)
        var i = (function (t) {
          function e() {
            return (null !== t && t.apply(this, arguments)) || this
          }
          return (
            o(e, t),
            (e.prototype.addAttributes = function (t) {
              for (var e in t) this.html.setAttribute(e, t[e])
            }),
            Object.defineProperty(e.prototype, 'html', {
              get: function () {
                return this._html || this.generateHtml(), this._html
              },
              set: function (t) {
                ;(this._html = t), this.addEvents(t)
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.generateHtml = function () {
              var t = document.createElement('div')
              t.classList.add(this.className), t.setAttribute('role', this.role), (this.html = t)
            }),
            (e.prototype.focus = function () {
              var t = this.html
              t.setAttribute('tabindex', '0'), t.focus()
            }),
            (e.prototype.unfocus = function () {
              var t = this.html
              t.hasAttribute('tabindex') && t.setAttribute('tabindex', '-1')
              try {
                t.blur()
              } catch (t) {}
              t.blur()
            }),
            e
          )
        })(r(2868).AbstractNavigatable)
        e.MenuElement = i
      },
      1932: function (t, e, r) {
        var n =
          (this && this.__values) ||
          function (t) {
            var e = 'function' == typeof Symbol && Symbol.iterator,
              r = e && t[e],
              n = 0
            if (r) return r.call(t)
            if (t && 'number' == typeof t.length)
              return {
                next: function () {
                  return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                }
              }
            throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MenuStore = void 0)
        var o = r(2556),
          i = r(2165),
          s = r(3205),
          a = (function () {
            function t(t) {
              ;(this.menu = t), (this.store = []), (this._active = null), (this.counter = 0), (this.attachedClass = i.HtmlClasses.ATTACHED + '_' + o.MenuUtil.counter()), (this.taborder = !0), (this.attrMap = {})
            }
            return (
              Object.defineProperty(t.prototype, 'active', {
                get: function () {
                  return this._active
                },
                set: function (t) {
                  do {
                    if (-1 !== this.store.indexOf(t)) {
                      this._active = t
                      break
                    }
                    t = t.parentNode
                  } while (t)
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.next = function () {
                var t = this.store.length
                if (0 === t) return (this.active = null), null
                var e = this.store.indexOf(this.active)
                return (e = -1 === e ? 0 : e < t - 1 ? e + 1 : 0), (this.active = this.store[e]), this.active
              }),
              (t.prototype.previous = function () {
                var t = this.store.length
                if (0 === t) return (this.active = null), null
                var e = t - 1,
                  r = this.store.indexOf(this.active)
                return (r = -1 === r || 0 === r ? e : r - 1), (this.active = this.store[r]), this.active
              }),
              (t.prototype.clear = function () {
                this.remove(this.store)
              }),
              (t.prototype.insert = function (t) {
                var e,
                  r,
                  o = t instanceof HTMLElement ? [t] : t
                try {
                  for (var i = n(o), s = i.next(); !s.done; s = i.next()) {
                    var a = s.value
                    this.insertElement(a)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
                this.sort()
              }),
              (t.prototype.remove = function (t) {
                var e,
                  r,
                  o = t instanceof HTMLElement ? [t] : t
                try {
                  for (var i = n(o), s = i.next(); !s.done; s = i.next()) {
                    var a = s.value
                    this.removeElement(a)
                  }
                } catch (t) {
                  e = { error: t }
                } finally {
                  try {
                    s && !s.done && (r = i.return) && r.call(i)
                  } finally {
                    if (e) throw e.error
                  }
                }
                this.sort()
              }),
              (t.prototype.inTaborder = function (t) {
                this.taborder && !t && this.removeTaborder(), !this.taborder && t && this.insertTaborder(), (this.taborder = t)
              }),
              (t.prototype.insertTaborder = function () {
                this.taborder && this.insertTaborder_()
              }),
              (t.prototype.removeTaborder = function () {
                this.taborder && this.removeTaborder_()
              }),
              (t.prototype.insertElement = function (t) {
                t.classList.contains(this.attachedClass) || (t.classList.add(this.attachedClass), this.taborder && this.addTabindex(t), this.addEvents(t))
              }),
              (t.prototype.removeElement = function (t) {
                t.classList.contains(this.attachedClass) && (t.classList.remove(this.attachedClass), this.taborder && this.removeTabindex(t), this.removeEvents(t))
              }),
              (t.prototype.sort = function () {
                var t = document.getElementsByClassName(this.attachedClass)
                this.store = [].slice.call(t)
              }),
              (t.prototype.insertTaborder_ = function () {
                this.store.forEach(function (t) {
                  return t.setAttribute('tabindex', '0')
                })
              }),
              (t.prototype.removeTaborder_ = function () {
                this.store.forEach(function (t) {
                  return t.setAttribute('tabindex', '-1')
                })
              }),
              (t.prototype.addTabindex = function (t) {
                t.hasAttribute('tabindex') && t.setAttribute(i.HtmlAttrs.OLDTAB, t.getAttribute('tabindex')), t.setAttribute('tabindex', '0')
              }),
              (t.prototype.removeTabindex = function (t) {
                t.hasAttribute(i.HtmlAttrs.OLDTAB) ? (t.setAttribute('tabindex', t.getAttribute(i.HtmlAttrs.OLDTAB)), t.removeAttribute(i.HtmlAttrs.OLDTAB)) : t.removeAttribute('tabindex')
              }),
              (t.prototype.addEvents = function (t) {
                t.hasAttribute(i.HtmlAttrs.COUNTER) || (this.addEvent(t, 'contextmenu', this.menu.post.bind(this.menu)), this.addEvent(t, 'keydown', this.keydown.bind(this)), t.setAttribute(i.HtmlAttrs.COUNTER, this.counter.toString()), this.counter++)
              }),
              (t.prototype.addEvent = function (t, e, r) {
                var n = i.HtmlAttrs[e.toUpperCase() + 'FUNC']
                ;(this.attrMap[n + this.counter] = r), t.addEventListener(e, r)
              }),
              (t.prototype.removeEvents = function (t) {
                if (t.hasAttribute(i.HtmlAttrs.COUNTER)) {
                  var e = t.getAttribute(i.HtmlAttrs.COUNTER)
                  this.removeEvent(t, 'contextmenu', e), this.removeEvent(t, 'keydown', e), t.removeAttribute(i.HtmlAttrs.COUNTER)
                }
              }),
              (t.prototype.removeEvent = function (t, e, r) {
                var n = i.HtmlAttrs[e.toUpperCase() + 'FUNC'],
                  o = this.attrMap[n + r]
                t.removeEventListener(e, o)
              }),
              (t.prototype.keydown = function (t) {
                t.keyCode === s.KEY.SPACE && (this.menu.post(t), t.preventDefault(), t.stopImmediatePropagation())
              }),
              t
            )
          })()
        e.MenuStore = a
      },
      2556: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.MenuUtil = void 0),
          (function (t) {
            ;(t.close = function (t) {
              var e = t.menu
              e.baseMenu ? e.baseMenu.unpost() : e.unpost()
            }),
              (t.getActiveElement = function (t) {
                var e = t.menu
                return (e.baseMenu ? e.baseMenu : e).store.active
              }),
              (t.error = function (t, e) {
                console.error('ContextMenu Error: ' + e)
              }),
              (t.counter = function () {
                return e++
              })
            var e = 0
          })(e.MenuUtil || (e.MenuUtil = {}))
      },
      8853: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.MOUSE = void 0),
          (e.MOUSE = { CLICK: 'click', DBLCLICK: 'dblclick', DOWN: 'mousedown', UP: 'mouseup', OVER: 'mouseover', OUT: 'mouseout', MOVE: 'mousemove', SELECTEND: 'selectend', SELECTSTART: 'selectstart' })
      },
      6914: function (t, e, r) {
        var n =
            (this && this.__rest) ||
            function (t, e) {
              var r = {}
              for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && e.indexOf(n) < 0 && (r[n] = t[n])
              if (null != t && 'function' == typeof Object.getOwnPropertySymbols) {
                var o = 0
                for (n = Object.getOwnPropertySymbols(t); o < n.length; o++) e.indexOf(n[o]) < 0 && Object.prototype.propertyIsEnumerable.call(t, n[o]) && (r[n[o]] = t[n[o]])
              }
              return r
            },
          o =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            },
          i =
            (this && this.__values) ||
            function (t) {
              var e = 'function' == typeof Symbol && Symbol.iterator,
                r = e && t[e],
                n = 0
              if (r) return r.call(t)
              if (t && 'number' == typeof t.length)
                return {
                  next: function () {
                    return t && n >= t.length && (t = void 0), { value: t && t[n++], done: !t }
                  }
                }
              throw new TypeError(e ? 'Object is not iterable.' : 'Symbol.iterator is not defined.')
            },
          s =
            (this && this.__spread) ||
            function () {
              for (var t = [], e = 0; e < arguments.length; e++) t = t.concat(o(arguments[e]))
              return t
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Parser = void 0)
        var a = r(3467),
          l = r(5073),
          c = r(3737),
          u = r(1409),
          p = r(9886),
          h = r(2965),
          f = r(385),
          d = r(6186),
          m = r(3463),
          y = r(7625),
          g = r(4834),
          b = r(2100),
          v = r(2308),
          _ = (function () {
            function t(t) {
              var e = this
              void 0 === t && (t = []),
                (this._initList = [
                  ['command', a.Command.fromJson.bind(a.Command)],
                  ['checkbox', u.Checkbox.fromJson.bind(u.Checkbox)],
                  ['combo', p.Combo.fromJson.bind(p.Combo)],
                  ['slider', y.Slider.fromJson.bind(y.Slider)],
                  ['label', h.Label.fromJson.bind(h.Label)],
                  ['radio', f.Radio.fromJson.bind(f.Radio)],
                  ['rule', m.Rule.fromJson.bind(m.Rule)],
                  ['submenu', d.Submenu.fromJson.bind(d.Submenu)],
                  ['contextMenu', l.ContextMenu.fromJson.bind(l.ContextMenu)],
                  ['subMenu', g.SubMenu.fromJson.bind(g.SubMenu)],
                  ['variable', c.Variable.fromJson.bind(c.Variable)],
                  ['items', this.items.bind(this)],
                  ['selectionMenu', b.SelectionMenu.fromJson.bind(b.SelectionMenu)],
                  ['selectionBox', b.SelectionBox.fromJson.bind(b.SelectionBox)]
                ]),
                (this._factory = new v.ParserFactory(this._initList)),
                t.forEach(function (t) {
                  var r = o(t, 2),
                    n = r[0],
                    i = r[1]
                  return e.factory.add(n, i)
                })
            }
            return (
              Object.defineProperty(t.prototype, 'factory', {
                get: function () {
                  return this._factory
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.items = function (t, e, r) {
                var n,
                  o,
                  s = []
                try {
                  for (var a = i(e), l = a.next(); !l.done; l = a.next()) {
                    var c = l.value,
                      u = this.parse(c, r)
                    u && (r.items.push(u), c.disabled && u.disable(), c.hidden && s.push(u))
                  }
                } catch (t) {
                  n = { error: t }
                } finally {
                  try {
                    l && !l.done && (o = a.return) && o.call(a)
                  } finally {
                    if (n) throw n.error
                  }
                }
                return (
                  s.forEach(function (t) {
                    return t.hide()
                  }),
                  r.items
                )
              }),
              (t.prototype.parse = function (t) {
                for (var e = [], r = 1; r < arguments.length; r++) e[r - 1] = arguments[r]
                var o = t.type,
                  i = n(t, ['type']),
                  a = this.factory.get(o)
                return a ? a.apply(void 0, s([this.factory, i], e)) : null
              }),
              t
            )
          })()
        e.Parser = _
      },
      2308: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ParserFactory = void 0)
        var r = (function () {
          function t(t) {
            this._parser = new Map(t)
          }
          return (
            (t.prototype.get = function (t) {
              return this._parser.get(t)
            }),
            (t.prototype.add = function (t, e) {
              this._parser.set(t, e)
            }),
            t
          )
        })()
        e.ParserFactory = r
      },
      2100: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            }),
          i =
            (this && this.__read) ||
            function (t, e) {
              var r = 'function' == typeof Symbol && t[Symbol.iterator]
              if (!r) return t
              var n,
                o,
                i = r.call(t),
                s = []
              try {
                for (; (void 0 === e || e-- > 0) && !(n = i.next()).done; ) s.push(n.value)
              } catch (t) {
                o = { error: t }
              } finally {
                try {
                  n && !n.done && (r = i.return) && r.call(i)
                } finally {
                  if (o) throw o.error
                }
              }
              return s
            }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SelectionBox = e.SelectionMenu = void 0)
        var s = r(2556),
          a = r(2165),
          l = r(1484),
          c = r(4922),
          u = (function (t) {
            function e(e) {
              var r = t.call(this) || this
              return (r.anchor = e), (r.className = a.HtmlClasses.SELECTIONMENU), (r.variablePool = r.anchor.menu.pool), (r.baseMenu = r.anchor.menu), r
            }
            return (
              o(e, t),
              (e.fromJson = function (t, e, r) {
                var n = e.title,
                  o = e.values,
                  i = e.variable,
                  s = new this(r),
                  a = t.get('label')(t, { content: n || '', id: n || 'id' }, s),
                  l = t.get('rule')(t, {}, s),
                  c = o.map(function (e) {
                    return t.get('radio')(t, { content: e, variable: i, id: e }, s)
                  }),
                  u = [a, l].concat(c)
                return (s.items = u), s
              }),
              (e.prototype.generateHtml = function () {
                t.prototype.generateHtml.call(this),
                  this.items.forEach(function (t) {
                    return t.html.classList.add(a.HtmlClasses.SELECTIONITEM)
                  })
              }),
              (e.prototype.display = function () {}),
              (e.prototype.right = function (t) {
                this.anchor.right(t)
              }),
              (e.prototype.left = function (t) {
                this.anchor.left(t)
              }),
              e
            )
          })(l.AbstractMenu)
        e.SelectionMenu = u
        var p = (function (t) {
          function e(e, r, n, o) {
            void 0 === n && (n = 'none'), void 0 === o && (o = 'vertical')
            var i = t.call(this, e, null, r) || this
            return (i.style = n), (i.grid = o), (i._selections = []), (i.prefix = 'ctxt-selection'), (i._balanced = !0), i
          }
          return (
            o(e, t),
            (e.fromJson = function (t, e, r) {
              var n = e.title,
                o = e.signature,
                i = e.selections,
                s = new this(n, o, e.order, e.grid)
              s.attachMenu(r)
              var a = i.map(function (e) {
                return t.get('selectionMenu')(t, e, s)
              })
              return (s.selections = a), s
            }),
            (e.prototype.attachMenu = function (t) {
              this.menu = t
            }),
            Object.defineProperty(e.prototype, 'selections', {
              get: function () {
                return this._selections
              },
              set: function (t) {
                var e = this
                ;(this._selections = []),
                  t.forEach(function (t) {
                    return e.addSelection(t)
                  })
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.addSelection = function (t) {
              ;(t.anchor = this), this._selections.push(t)
            }),
            (e.prototype.rowDiv = function (t) {
              var e = this,
                r = document.createElement('div')
              this.contentDiv.appendChild(r)
              var n = t.map(function (t) {
                  return r.appendChild(t.html), t.html.id || (t.html.id = e.prefix + s.MenuUtil.counter()), t.html.getBoundingClientRect()
                }),
                o = n.map(function (t) {
                  return t.width
                }),
                i = o.reduce(function (t, e) {
                  return t + e
                }, 0),
                l = n.reduce(function (t, e) {
                  return Math.max(t, e.height)
                }, 0)
              return r.classList.add(a.HtmlClasses.SELECTIONDIVIDER), r.setAttribute('style', 'height: ' + l + 'px;'), [r, i, l, o]
            }),
            (e.prototype.display = function () {
              if ((t.prototype.display.call(this), this.order(), this.selections.length)) {
                for (
                  var e = [],
                    r = 0,
                    n = [],
                    o = this.getChunkSize(this.selections.length),
                    s = function (t) {
                      var s = a.selections.slice(t, t + o),
                        l = i(a.rowDiv(s), 4),
                        c = l[0],
                        u = l[1],
                        p = l[2],
                        h = l[3]
                      e.push(c),
                        (r = Math.max(r, u)),
                        s.forEach(function (t) {
                          return (t.html.style.height = p + 'px')
                        }),
                        (n = a.combineColumn(n, h))
                    },
                    a = this,
                    l = 0;
                  l < this.selections.length;
                  l += o
                )
                  s(l)
                this._balanced &&
                  (this.balanceColumn(e, n),
                  (r = n.reduce(function (t, e) {
                    return t + e
                  }, 20))),
                  e.forEach(function (t) {
                    return (t.style.width = r + 'px')
                  })
              }
            }),
            (e.prototype.getChunkSize = function (t) {
              switch (this.grid) {
                case 'square':
                  return Math.floor(Math.sqrt(t))
                case 'horizontal':
                  return Math.floor(t / e.chunkSize)
                default:
                  return e.chunkSize
              }
            }),
            (e.prototype.balanceColumn = function (t, e) {
              t.forEach(function (t) {
                for (var r = Array.from(t.children), n = 0, o = void 0; (o = r[n]); n++) o.style.width = e[n] + 'px'
              })
            }),
            (e.prototype.combineColumn = function (t, e) {
              for (var r = [], n = 0; t[n] || e[n]; ) {
                if (!t[n]) {
                  r = r.concat(e.slice(n))
                  break
                }
                if (!e[n]) {
                  r = r.concat(t.slice(n))
                  break
                }
                r.push(Math.max(t[n], e[n])), n++
              }
              return r
            }),
            (e.prototype.left = function (t) {
              var e = this
              this.move(t, function (t) {
                return (0 === t ? e.selections.length : t) - 1
              })
            }),
            (e.prototype.right = function (t) {
              var e = this
              this.move(t, function (t) {
                return t === e.selections.length - 1 ? 0 : t + 1
              })
            }),
            (e.prototype.generateHtml = function () {
              t.prototype.generateHtml.call(this), this.html.classList.add(a.HtmlClasses.SELECTION)
            }),
            (e.prototype.generateContent = function () {
              var e = t.prototype.generateContent.call(this)
              return e.classList.add(a.HtmlClasses.SELECTIONBOX), e.removeAttribute('tabindex'), e
            }),
            (e.prototype.findSelection = function (t) {
              var e = t.target,
                r = null
              if (
                (e.id &&
                  (r = this.selections.find(function (t) {
                    return t.html.id === e.id
                  })),
                !r)
              ) {
                var n = e.parentElement.id
                r = this.selections.find(function (t) {
                  return t.html.id === n
                })
              }
              return r
            }),
            (e.prototype.move = function (t, e) {
              var r = this.findSelection(t)
              r.focused && r.focused.unfocus()
              var n = e(this.selections.indexOf(r))
              this.selections[n].focus()
            }),
            (e.prototype.order = function () {
              this.selections.sort(e.orderMethod.get(this.style))
            }),
            (e.prototype.toJson = function () {
              return { type: '' }
            }),
            (e.chunkSize = 4),
            (e.orderMethod = new Map([
              [
                'alphabetical',
                function (t, e) {
                  return t.items[0].content.localeCompare(e.items[0].content)
                }
              ],
              [
                'none',
                function (t, e) {
                  return 1
                }
              ],
              [
                'decreasing',
                function (t, e) {
                  var r = t.items.length,
                    n = e.items.length
                  return r < n ? 1 : n < r ? -1 : 0
                }
              ],
              [
                'increasing',
                function (t, e) {
                  var r = t.items.length,
                    n = e.items.length
                  return r < n ? -1 : n < r ? 1 : 0
                }
              ]
            ])),
            e
          )
        })(c.Info)
        e.SelectionBox = p
      },
      4834: function (t, e, r) {
        var n,
          o =
            (this && this.__extends) ||
            ((n = function (t, e) {
              return (
                (n =
                  Object.setPrototypeOf ||
                  ({ __proto__: [] } instanceof Array &&
                    function (t, e) {
                      t.__proto__ = e
                    }) ||
                  function (t, e) {
                    for (var r in e) e.hasOwnProperty(r) && (t[r] = e[r])
                  }),
                n(t, e)
              )
            }),
            function (t, e) {
              function r() {
                this.constructor = t
              }
              n(t, e), (t.prototype = null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))
            })
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SubMenu = void 0)
        var i = (function (t) {
          function e(e) {
            var r = t.call(this) || this
            return (r._anchor = e), (r.variablePool = r.anchor.menu.pool), r.setBaseMenu(), r
          }
          return (
            o(e, t),
            (e.fromJson = function (t, e, r) {
              var n = e.items,
                o = new this(r),
                i = t.get('items')(t, n, o)
              return (o.items = i), o
            }),
            Object.defineProperty(e.prototype, 'anchor', {
              get: function () {
                return this._anchor
              },
              enumerable: !1,
              configurable: !0
            }),
            (e.prototype.post = function () {
              if (this.anchor.menu.isPosted()) {
                for (var e = this.anchor.html, r = this.html, n = this.baseMenu.frame, o = e.offsetWidth, i = o - 2, s = 0; e && e !== n; ) (i += e.offsetLeft), (s += e.offsetTop), (e = e.parentNode)
                i + r.offsetWidth > document.body.offsetWidth - 5 && (i = Math.max(5, i - o - r.offsetWidth + 6)), t.prototype.post.call(this, i, s)
              }
            }),
            (e.prototype.display = function () {
              this.baseMenu.frame.appendChild(this.html)
            }),
            (e.prototype.setBaseMenu = function () {
              var t = this
              do {
                t = t.anchor.menu
              } while (t instanceof e)
              this.baseMenu = t
            }),
            (e.prototype.left = function (t) {
              ;(this.focused = null), this.anchor.focus()
            }),
            (e.prototype.toJson = function () {
              return { type: '' }
            }),
            e
          )
        })(r(1484).AbstractMenu)
        e.SubMenu = i
      },
      3737: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Variable = void 0)
        var n = r(2556),
          o = (function () {
            function t(t, e, r) {
              ;(this._name = t), (this.getter = e), (this.setter = r), (this.items = [])
            }
            return (
              (t.fromJson = function (t, e, r) {
                var n = new this(e.name, e.getter, e.setter)
                r.insert(n)
              }),
              Object.defineProperty(t.prototype, 'name', {
                get: function () {
                  return this._name
                },
                enumerable: !1,
                configurable: !0
              }),
              (t.prototype.getValue = function (t) {
                try {
                  return this.getter(t)
                } catch (t) {
                  return n.MenuUtil.error(t, 'Command of variable ' + this.name + ' failed.'), null
                }
              }),
              (t.prototype.setValue = function (t, e) {
                try {
                  this.setter(t, e)
                } catch (t) {
                  n.MenuUtil.error(t, 'Command of variable ' + this.name + ' failed.')
                }
                this.update()
              }),
              (t.prototype.register = function (t) {
                ;-1 === this.items.indexOf(t) && this.items.push(t)
              }),
              (t.prototype.unregister = function (t) {
                var e = this.items.indexOf(t)
                ;-1 !== e && this.items.splice(e, 1)
              }),
              (t.prototype.update = function () {
                this.items.forEach(function (t) {
                  return t.update()
                })
              }),
              (t.prototype.registerCallback = function (t) {
                this.items.forEach(function (e) {
                  return e.registerCallback(t)
                })
              }),
              (t.prototype.unregisterCallback = function (t) {
                this.items.forEach(function (e) {
                  return e.unregisterCallback(t)
                })
              }),
              (t.prototype.toJson = function () {
                return { type: 'variable', name: this.name, getter: this.getter.toString(), setter: this.setter.toString() }
              }),
              t
            )
          })()
        e.Variable = o
      },
      2358: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.VariablePool = void 0)
        var r = (function () {
          function t() {
            this.pool = {}
          }
          return (
            (t.prototype.insert = function (t) {
              this.pool[t.name] = t
            }),
            (t.prototype.lookup = function (t) {
              return this.pool[t]
            }),
            (t.prototype.remove = function (t) {
              delete this.pool[t]
            }),
            (t.prototype.update = function () {
              for (var t in this.pool) this.pool[t].update()
            }),
            t
          )
        })()
        e.VariablePool = r
      },
      3921: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractAudioRenderer = void 0)
        const n = r(5897)
        e.AbstractAudioRenderer = class {
          constructor() {
            this.separator_ = ' '
          }
          setSeparator(t) {
            this.separator_ = t
          }
          getSeparator() {
            return 'braille' === n.default.getInstance().modality ? '' : this.separator_
          }
          error(t) {
            return null
          }
          merge(t) {
            let e = ''
            const r = t.length - 1
            for (let n, o = 0; (n = t[o]); o++)
              if (((e += n.speech), o < r)) {
                const t = n.attributes.separator
                e += void 0 !== t ? t : this.getSeparator()
              }
            return e
          }
          finalize(t) {
            return t
          }
          pauseValue(t) {
            let e
            switch (t) {
              case 'long':
                e = 750
                break
              case 'medium':
                e = 500
                break
              case 'short':
                e = 250
                break
              default:
                e = parseInt(t, 10)
            }
            return Math.floor((e * n.default.getInstance().getRate()) / 100)
          }
        }
      },
      4196: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AcssRenderer = void 0)
        const n = r(4440),
          o = r(8496),
          i = r(3706),
          s = r(182)
        class a extends s.MarkupRenderer {
          markup(t) {
            this.setScaleFunction(-2, 2, 0, 10, 0)
            const e = i.personalityMarkup(t),
              r = [],
              n = { open: [] }
            let o = null,
              s = !1
            for (let t, a = 0; (t = e[a]); a++) {
              if (i.isMarkupElement(t)) {
                i.mergeMarkup(n, t)
                continue
              }
              if (i.isPauseElement(t)) {
                s && (o = i.mergePause(o, t, Math.max))
                continue
              }
              const e = '"' + this.merge(t.span) + '"'
              ;(s = !0), o && (r.push(this.pause(o)), (o = null))
              const a = this.prosody_(n)
              r.push(a ? '(text (' + a + ') ' + e + ')' : e)
            }
            return '(exp ' + r.join(' ') + ')'
          }
          error(t) {
            return '(error "' + o.Move.get(t) + '")'
          }
          prosodyElement(t, e) {
            switch (((e = this.applyScaleFunction(e)), t)) {
              case n.personalityProps.RATE:
                return '(richness . ' + e + ')'
              case n.personalityProps.PITCH:
                return '(average-pitch . ' + e + ')'
              case n.personalityProps.VOLUME:
                return '(stress . ' + e + ')'
            }
            return '(value . ' + e + ')'
          }
          pause(t) {
            return '(pause . ' + this.pauseValue(t[n.personalityProps.PAUSE]) + ')'
          }
          prosody_(t) {
            const e = t.open,
              r = []
            for (let n, o = 0; (n = e[o]); o++) r.push(this.prosodyElement(n, t[n]))
            return r.join(' ')
          }
        }
        e.AcssRenderer = a
      },
      3706: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.isSpanElement = e.isPauseElement = e.isMarkupElement = e.personalityMarkup = e.sortClose = e.mergeMarkup = e.mergePause = void 0)
        const n = r(707),
          o = r(4440),
          i = r(9536)
        function s(t, e, r) {
          return (
            r ||
            function (r, n) {
              return 'number' == typeof r && 'number' == typeof n ? r + n : 'number' == typeof r ? n : 'number' == typeof n ? r : [t, e].sort()[0]
            }
          ).call(null, t, e)
        }
        ;(e.mergePause = function (t, e, r) {
          return t ? { pause: s(t.pause, e.pause, r) } : e
        }),
          (e.mergeMarkup = function (t, e) {
            delete t.open, e.close.forEach((e) => delete t[e]), e.open.forEach((r) => (t[r] = e[r]))
            const r = Object.keys(t)
            t.open = r
          }),
          (e.sortClose = function (t, e) {
            if (t.length <= 1) return t
            const r = []
            for (let n, o = 0; (n = e[o]), t.length; o++)
              n.close &&
                n.close.length &&
                n.close.forEach(function (e) {
                  const n = t.indexOf(e)
                  ;-1 !== n && (r.unshift(e), t.splice(n, 1))
                })
            return r
          })
        let a = {},
          l = []
        function c(t, e) {
          const r = t[t.length - 1]
          if (r) {
            if (f(e) && f(r)) {
              if (void 0 === r.join) return void (r.span = r.span.concat(e.span))
              const t = r.span.pop(),
                n = e.span.shift()
              return r.span.push(t + r.join + n), (r.span = r.span.concat(e.span)), void (r.join = e.join)
            }
            h(e) && h(r) ? (r.pause = s(r.pause, e.pause)) : t.push(e)
          } else t.push(e)
        }
        function u(t, e) {
          t.rate && (e.rate = t.rate), t.pitch && (e.pitch = t.pitch), t.volume && (e.volume = t.volume)
        }
        function p(t) {
          return 'object' == typeof t && t.open
        }
        function h(t) {
          return 'object' == typeof t && 1 === Object.keys(t).length && Object.keys(t)[0] === o.personalityProps.PAUSE
        }
        function f(t) {
          const e = Object.keys(t)
          return 'object' == typeof t && ((1 === e.length && 'span' === e[0]) || (2 === e.length && (('span' === e[0] && 'join' === e[1]) || ('span' === e[1] && 'join' === e[0]))))
        }
        function d(t, e, r, n, a, l = !1) {
          if (l) {
            const l = t[t.length - 1]
            let c
            if ((l && (c = l[o.personalityProps.JOIN]), l && !e.speech && a && h(l))) {
              const t = o.personalityProps.PAUSE
              ;(l[t] = s(l[t], a[t])), (a = null)
            }
            if (l && e.speech && 0 === Object.keys(r).length && f(l)) {
              if (void 0 !== c) {
                const t = l.span.pop()
                e = new i.Span(t.speech + c + e.speech, t.attributes)
              }
              l.span.push(e), (e = new i.Span('', {})), (l[o.personalityProps.JOIN] = n)
            }
          }
          0 !== Object.keys(r).length && t.push(r), e.speech && t.push({ span: [e], join: n }), a && t.push(a)
        }
        function m(t, e) {
          if (!e) return t
          const r = {}
          for (const n of o.personalityPropList) {
            const o = t[n],
              i = e[n]
            if ((!o && !i) || (o && i && o === i)) continue
            const s = o || 0
            p(r) || ((r.open = []), (r.close = [])), o || r.close.push(n), i || r.open.push(n), i && o && (r.close.push(n), r.open.push(n)), (e[n] = s), (r[n] = s), a[n] ? a[n].push(s) : (a[n] = [s])
          }
          if (p(r)) {
            let t = r.close.slice()
            for (; t.length > 0; ) {
              let o = l.pop()
              const i = (0, n.setdifference)(o, t)
              if (((t = (0, n.setdifference)(t, o)), (o = i), 0 !== t.length)) {
                if (0 !== o.length) {
                  ;(r.close = r.close.concat(o)), (r.open = r.open.concat(o))
                  for (let t, n = 0; (t = o[n]); n++) r[t] = e[t]
                }
              } else 0 !== o.length && l.push(o)
            }
            l.push(r.open)
          }
          return r
        }
        ;(e.personalityMarkup = function (t) {
          ;(a = {}), (l = [])
          let e = []
          const r = {}
          for (let n, i = 0; (n = t[i]); i++) {
            let t = null
            const i = n.descriptionSpan(),
              s = n.personality,
              a = s[o.personalityProps.JOIN]
            delete s[o.personalityProps.JOIN], void 0 !== s[o.personalityProps.PAUSE] && ((t = { [o.personalityProps.PAUSE]: s[o.personalityProps.PAUSE] }), delete s[o.personalityProps.PAUSE])
            d(e, i, m(s, r), a, t, !0)
          }
          return (
            (e = e.concat(
              (function () {
                const t = []
                for (let e = l.length - 1; e >= 0; e--) {
                  const r = l[e]
                  if (r.length) {
                    const e = { open: [], close: [] }
                    for (let t = 0; t < r.length; t++) {
                      const n = r[t]
                      e.close.push(n), (e[n] = 0)
                    }
                    t.push(e)
                  }
                }
                return t
              })()
            )),
            (e = (function (t) {
              const e = {},
                r = []
              for (let n, o = 0; (n = t[o]); o++) {
                if (!p(n)) {
                  c(r, n)
                  continue
                }
                if (!n.close || 1 !== n.close.length || n.open.length) {
                  u(n, e), r.push(n)
                  continue
                }
                let i = t[o + 1]
                if (!i || f(i)) {
                  u(n, e), r.push(n)
                  continue
                }
                const s = h(i) ? i : null
                s && (i = t[o + 2]), i && p(i) && i.open[0] === n.close[0] && !i.close.length && i[i.open[0]] === e[i.open[0]] ? (s ? (c(r, s), (o += 2)) : (o += 1)) : (u(n, e), r.push(n))
              }
              return r
            })(e)),
            e
          )
        }),
          (e.isMarkupElement = p),
          (e.isPauseElement = h),
          (e.isSpanElement = f)
      },
      7052: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AuditoryDescription = void 0)
        const n = r(2105),
          o = r(9536)
        class i {
          constructor({ context: t, text: e, userValue: r, annotation: n, attributes: o, personality: i, layout: s }) {
            ;(this.context = t || ''), (this.text = e || ''), (this.userValue = r || ''), (this.annotation = n || ''), (this.attributes = o || {}), (this.personality = i || {}), (this.layout = s || '')
          }
          static create(t, e = {}) {
            return (t.text = n.Grammar.getInstance().apply(t.text, e)), new i(t)
          }
          isEmpty() {
            return 0 === this.context.length && 0 === this.text.length && 0 === this.userValue.length && 0 === this.annotation.length
          }
          clone() {
            let t, e
            if (this.personality) {
              t = {}
              for (const e in this.personality) t[e] = this.personality[e]
            }
            if (this.attributes) {
              e = {}
              for (const t in this.attributes) e[t] = this.attributes[t]
            }
            return new i({ context: this.context, text: this.text, userValue: this.userValue, annotation: this.annotation, personality: t, attributes: e, layout: this.layout })
          }
          toString() {
            return 'AuditoryDescription(context="' + this.context + '"  text="' + this.text + '"  userValue="' + this.userValue + '"  annotation="' + this.annotation + '")'
          }
          descriptionString() {
            return this.context && this.text ? this.context + ' ' + this.text : this.context || this.text
          }
          descriptionSpan() {
            return new o.Span(this.descriptionString(), this.attributes)
          }
          equals(t) {
            return this.context === t.context && this.text === t.text && this.userValue === t.userValue && this.annotation === t.annotation
          }
        }
        e.AuditoryDescription = i
      },
      8290: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.isXml = e.registerRenderer = e.error = e.finalize = e.merge = e.markup = e.getSeparator = e.setSeparator = void 0)
        const n = r(5897),
          o = r(4440),
          i = r(4196),
          s = r(8639),
          a = r(8990),
          l = r(6660),
          c = r(9536),
          u = r(7504),
          p = r(3757),
          h = r(4032),
          f = r(2456),
          d = new u.SsmlRenderer(),
          m = new Map([
            [o.Markup.NONE, new h.StringRenderer()],
            [o.Markup.PUNCTUATION, new a.PunctuationRenderer()],
            [o.Markup.LAYOUT, new s.LayoutRenderer()],
            [o.Markup.ACSS, new i.AcssRenderer()],
            [o.Markup.SABLE, new l.SableRenderer()],
            [o.Markup.VOICEXML, d],
            [o.Markup.SSML, d],
            [o.Markup.SSML_STEP, new p.SsmlStepRenderer()]
          ])
        ;(e.setSeparator = function (t) {
          const e = m.get(n.default.getInstance().markup)
          e && e.setSeparator(t)
        }),
          (e.getSeparator = function () {
            const t = m.get(n.default.getInstance().markup)
            return t ? t.getSeparator() : ''
          }),
          (e.markup = function (t) {
            const e = m.get(n.default.getInstance().markup)
            return e ? e.markup(t) : ''
          }),
          (e.merge = function (t) {
            const e = t.map((t) => ('string' == typeof t ? new c.Span(t, {}) : t)),
              r = m.get(n.default.getInstance().markup)
            return r ? r.merge(e) : t.join()
          }),
          (e.finalize = function (t) {
            const e = m.get(n.default.getInstance().markup)
            return e ? e.finalize(t) : t
          }),
          (e.error = function (t) {
            const e = m.get(n.default.getInstance().markup)
            return e ? e.error(t) : ''
          }),
          (e.registerRenderer = function (t, e) {
            m.set(t, e)
          }),
          (e.isXml = function () {
            return m.get(n.default.getInstance().markup) instanceof f.XmlRenderer
          })
      },
      8639: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.LayoutRenderer = void 0)
        const n = r(2057),
          o = r(5740),
          i = r(4440),
          s = r(3706),
          a = r(2456)
        class l extends a.XmlRenderer {
          finalize(t) {
            return (function (t) {
              c = ''
              const e = o.parseInput(`<all>${t}</all>`)
              return n.Debugger.getInstance().output(o.formatXml(e.toString())), (c = f(e)), c
            })(t)
          }
          pause(t) {
            return ''
          }
          prosodyElement(t, e) {
            return t === i.personalityProps.LAYOUT ? `<${e}>` : ''
          }
          closeTag(t) {
            return `</${t}>`
          }
          markup(t) {
            const e = []
            let r = []
            for (const n of t) {
              if (!n.layout) {
                r.push(n)
                continue
              }
              e.push(this.processContent(r)), (r = [])
              const t = n.layout
              t.match(/^begin/) ? e.push('<' + t.replace(/^begin/, '') + '>') : t.match(/^end/) ? e.push('</' + t.replace(/^end/, '') + '>') : console.warn('Something went wrong with layout markup: ' + t)
            }
            return e.push(this.processContent(r)), e.join('')
          }
          processContent(t) {
            const e = [],
              r = s.personalityMarkup(t)
            for (let t, n = 0; (t = r[n]); n++) t.span ? e.push(this.merge(t.span)) : s.isPauseElement(t)
            return e.join('')
          }
        }
        e.LayoutRenderer = l
        let c = ''
        const u = {
          TABLE: function (t) {
            let e = g(t)
            e.forEach((t) => {
              ;(t.cells = t.cells.slice(1).slice(0, -1)), (t.width = t.width.slice(1).slice(0, -1))
            })
            const [r, n] = b(e)
            return (e = v(e, n)), _(e, r)
          },
          CASES: function (t) {
            let e = g(t)
            e.forEach((t) => {
              ;(t.cells = t.cells.slice(0, -1)), (t.width = t.width.slice(0, -1))
            })
            const [r, n] = b(e)
            return (e = v(e, n)), _(e, r)
          },
          CAYLEY: function (t) {
            let e = g(t)
            e.forEach((t) => {
              ;(t.cells = t.cells.slice(1).slice(0, -1)), (t.width = t.width.slice(1).slice(0, -1)), (t.sep = t.sep + t.sep)
            })
            const [r, n] = b(e),
              o = { lfence: '', rfence: '', cells: n.map((t) => '\u2810' + new Array(t).join('\u2812')), width: n, height: 1, sep: e[0].sep }
            return e.splice(1, 0, o), (e = v(e, n)), _(e, r)
          },
          MATRIX: function (t) {
            let e = g(t)
            const [r, n] = b(e)
            return (e = v(e, n)), _(e, r)
          },
          CELL: f,
          FENCE: f,
          ROW: f,
          FRACTION: function (t) {
            const [e, r, , n, o] = Array.from(t.childNodes),
              i = p(r),
              s = p(n),
              a = m(i),
              l = m(s)
            let c = Math.max(a, l)
            const u = e + new Array(c + 1).join('\u2812') + o
            return (c = u.length), `${x(i, c)}\n${u}\n${x(s, c)}`
          },
          NUMERATOR: E,
          DENOMINATOR: E
        }
        function p(t) {
          const e = o.tagName(t),
            r = u[e]
          return r ? r(t) : t.textContent
        }
        function h(t, e) {
          if (!t || !e) return t + e
          const r = d(t),
            n = d(e),
            o = r - n
          ;(t = o < 0 ? y(t, n, m(t)) : t), (e = o > 0 ? y(e, r, m(e)) : e)
          const i = t.split(/\r\n|\r|\n/),
            s = e.split(/\r\n|\r|\n/),
            a = []
          for (let t = 0; t < i.length; t++) a.push(i[t] + s[t])
          return a.join('\n')
        }
        function f(t) {
          let e = ''
          for (const r of Array.from(t.childNodes)) e = r.nodeType !== o.NodeType.TEXT_NODE ? h(e, p(r)) : h(e, r.textContent)
          return e
        }
        function d(t) {
          return t.split(/\r\n|\r|\n/).length
        }
        function m(t) {
          return t.split(/\r\n|\r|\n/).reduce((t, e) => Math.max(e.length, t), 0)
        }
        function y(t, e, r) {
          return (
            (t = (function (t, e) {
              const r = e - d(t)
              return t + (r > 0 ? new Array(r + 1).join('\n') : '')
            })(t, e)),
            (function (t, e) {
              const r = t.split(/\r\n|\r|\n/),
                n = []
              for (const t of r) {
                const r = e - t.length
                n.push(t + (r > 0 ? new Array(r + 1).join('\u2800') : ''))
              }
              return n.join('\n')
            })(t, r)
          )
        }
        function g(t) {
          const e = Array.from(t.childNodes),
            r = []
          for (const t of e) t.nodeType === o.NodeType.ELEMENT_NODE && r.push(O(t))
          return r
        }
        function b(t) {
          const e = t.reduce((t, e) => Math.max(e.height, t), 0),
            r = []
          for (let e = 0; e < t[0].width.length; e++) r.push(t.map((t) => t.width[e]).reduce((t, e) => Math.max(t, e), 0))
          return [e, r]
        }
        function v(t, e) {
          const r = []
          for (const n of t) {
            if (0 === n.height) continue
            const t = []
            for (let r = 0; r < n.cells.length; r++) t.push(y(n.cells[r], n.height, e[r]))
            ;(n.cells = t), r.push(n)
          }
          return r
        }
        function _(t, e) {
          if (1 === e) return t.map((t) => t.lfence + t.cells.join(t.sep) + t.rfence).join('\n')
          const r = []
          for (const e of t) {
            const t = S(e.sep, e.height)
            let n = e.cells.shift()
            for (; e.cells.length; ) (n = h(n, t)), (n = h(n, e.cells.shift()))
            ;(n = h(S(e.lfence, e.height), n)), (n = h(n, S(e.rfence, e.height))), r.push(n), r.push(e.lfence + new Array(m(n) - 3).join(e.sep) + e.rfence)
          }
          return r.slice(0, -1).join('\n')
        }
        function S(t, e) {
          let r = ''
          for (; e; ) (r += t + '\n'), e--
          return r.slice(0, -1)
        }
        function M(t) {
          return t.nodeType === o.NodeType.ELEMENT_NODE && 'FENCE' === o.tagName(t) ? p(t) : ''
        }
        function O(t) {
          const e = Array.from(t.childNodes),
            r = M(e[0]),
            n = M(e[e.length - 1])
          r && e.shift(), n && e.pop()
          let i = ''
          const s = []
          for (const t of e) {
            if (t.nodeType === o.NodeType.TEXT_NODE) {
              i = t.textContent
              continue
            }
            const e = p(t)
            s.push(e)
          }
          return { lfence: r, rfence: n, sep: i, cells: s, height: s.reduce((t, e) => Math.max(d(e), t), 0), width: s.map(m) }
        }
        function x(t, e) {
          const r = (e - m(t)) / 2,
            [n, o] = Math.floor(r) === r ? [r, r] : [Math.floor(r), Math.ceil(r)],
            i = t.split(/\r\n|\r|\n/),
            s = [],
            [a, l] = [new Array(n + 1).join('\u2800'), new Array(o + 1).join('\u2800')]
          for (const t of i) s.push(a + t + l)
          return s.join('\n')
        }
        function E(t) {
          const e = t.firstChild,
            r = f(t)
          if (e && e.nodeType === o.NodeType.ELEMENT_NODE) {
            if ('ENGLISH' === o.tagName(e)) return '\u2830' + r
            if ('NUMBER' === o.tagName(e)) return '\u283c' + r
          }
          return r
        }
      },
      182: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MarkupRenderer = void 0)
        const n = r(4440),
          o = r(3921)
        class i extends o.AbstractAudioRenderer {
          constructor() {
            super(...arguments), (this.ignoreElements = [n.personalityProps.LAYOUT]), (this.scaleFunction = null)
          }
          setScaleFunction(t, e, r, n, o = 0) {
            this.scaleFunction = (i) => {
              const s = (i - t) / (e - t),
                a = r * (1 - s) + n * s
              return +(Math.round(a + 'e+' + o) + 'e-' + o)
            }
          }
          applyScaleFunction(t) {
            return this.scaleFunction ? this.scaleFunction(t) : t
          }
          ignoreElement(t) {
            return -1 !== this.ignoreElements.indexOf(t)
          }
        }
        e.MarkupRenderer = i
      },
      8990: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.PunctuationRenderer = void 0)
        const n = r(4440),
          o = r(3921),
          i = r(3706)
        class s extends o.AbstractAudioRenderer {
          markup(t) {
            const e = i.personalityMarkup(t)
            let r = '',
              o = null,
              s = !1
            for (let t, a = 0; (t = e[a]); a++)
              i.isMarkupElement(t) || (i.isPauseElement(t) ? s && (o = i.mergePause(o, t, Math.max)) : (o && ((r += this.pause(o[n.personalityProps.PAUSE])), (o = null)), (r += (s ? this.getSeparator() : '') + this.merge(t.span)), (s = !0)))
            return r
          }
          pause(t) {
            let e
            return (e = 'number' == typeof t ? (t <= 250 ? 'short' : t <= 500 ? 'medium' : 'long') : t), s.PAUSE_PUNCTUATION.get(e) || ''
          }
        }
        ;(e.PunctuationRenderer = s),
          (s.PAUSE_PUNCTUATION = new Map([
            ['short', ','],
            ['medium', ';'],
            ['long', '.']
          ]))
      },
      6660: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SableRenderer = void 0)
        const n = r(4440),
          o = r(2456)
        class i extends o.XmlRenderer {
          finalize(t) {
            return '<?xml version="1.0"?><!DOCTYPE SABLE PUBLIC "-//SABLE//DTD SABLE speech mark up//EN" "Sable.v0_2.dtd" []><SABLE>' + this.getSeparator() + t + this.getSeparator() + '</SABLE>'
          }
          pause(t) {
            return '<BREAK MSEC="' + this.pauseValue(t[n.personalityProps.PAUSE]) + '"/>'
          }
          prosodyElement(t, e) {
            switch (((e = this.applyScaleFunction(e)), t)) {
              case n.personalityProps.PITCH:
                return '<PITCH RANGE="' + e + '%">'
              case n.personalityProps.RATE:
                return '<RATE SPEED="' + e + '%">'
              case n.personalityProps.VOLUME:
                return '<VOLUME LEVEL="' + e + '%">'
              default:
                return '<' + t.toUpperCase() + ' VALUE="' + e + '">'
            }
          }
          closeTag(t) {
            return '</' + t.toUpperCase() + '>'
          }
        }
        e.SableRenderer = i
      },
      9536: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Span = void 0)
        e.Span = class {
          constructor(t, e) {
            ;(this.speech = t), (this.attributes = e)
          }
        }
      },
      7504: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SsmlRenderer = void 0)
        const n = r(5897),
          o = r(4440),
          i = r(2456)
        class s extends i.XmlRenderer {
          finalize(t) {
            return '<?xml version="1.0"?><speak version="1.1" xmlns="http://www.w3.org/2001/10/synthesis"><prosody rate="' + n.default.getInstance().getRate() + '%">' + this.getSeparator() + t + this.getSeparator() + '</prosody></speak>'
          }
          pause(t) {
            return '<break time="' + this.pauseValue(t[o.personalityProps.PAUSE]) + 'ms"/>'
          }
          prosodyElement(t, e) {
            const r = (e = Math.floor(this.applyScaleFunction(e))) < 0 ? e.toString() : '+' + e.toString()
            return '<prosody ' + t.toLowerCase() + '="' + r + (t === o.personalityProps.VOLUME ? '>' : '%">')
          }
          closeTag(t) {
            return '</prosody>'
          }
        }
        e.SsmlRenderer = s
      },
      3757: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SsmlStepRenderer = void 0)
        const n = r(7504)
        class o extends n.SsmlRenderer {
          markup(t) {
            return (o.MARKS = {}), super.markup(t)
          }
          merge(t) {
            const e = []
            for (let r = 0; r < t.length; r++) {
              const n = t[r],
                i = n.attributes.extid
              i && !o.MARKS[i] && (e.push('<mark name="' + i + '"/>'), (o.MARKS[i] = !0)), 1 === n.speech.length && n.speech.match(/[a-zA-Z]/) ? e.push('<say-as interpret-as="' + o.CHARACTER_ATTR + '">' + n.speech + '</say-as>') : e.push(n.speech)
            }
            return e.join(this.getSeparator())
          }
        }
        ;(e.SsmlStepRenderer = o), (o.CHARACTER_ATTR = 'character'), (o.MARKS = {})
      },
      4032: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.StringRenderer = void 0)
        const n = r(3921),
          o = r(3706)
        class i extends n.AbstractAudioRenderer {
          markup(t) {
            let e = ''
            const r = (0, o.personalityMarkup)(t).filter((t) => t.span)
            if (!r.length) return e
            const n = r.length - 1
            for (let t, o = 0; (t = r[o]); o++) {
              if ((t.span && (e += this.merge(t.span)), o >= n)) continue
              const r = t.join
              e += void 0 === r ? this.getSeparator() : r
            }
            return e
          }
        }
        e.StringRenderer = i
      },
      2456: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.XmlRenderer = void 0)
        const n = r(5897),
          o = r(3706),
          i = r(182)
        class s extends i.MarkupRenderer {
          markup(t) {
            this.setScaleFunction(-2, 2, -100, 100, 2)
            const e = o.personalityMarkup(t),
              r = [],
              i = []
            for (let t, s = 0; (t = e[s]); s++)
              if (t.span) r.push(this.merge(t.span))
              else if (o.isPauseElement(t)) r.push(this.pause(t))
              else {
                if (t.close.length)
                  for (let e = 0; e < t.close.length; e++) {
                    const e = i.pop()
                    if (-1 === t.close.indexOf(e)) throw new n.SREError('Unknown closing markup element: ' + e)
                    r.push(this.closeTag(e))
                  }
                if (t.open.length) {
                  o.sortClose(t.open.slice(), e.slice(s + 1)).forEach((e) => {
                    r.push(this.prosodyElement(e, t[e])), i.push(e)
                  })
                }
              }
            return r.join(' ')
          }
        }
        e.XmlRenderer = s
      },
      707: function (t, e) {
        function r(t, e) {
          return t ? (e ? t.filter((t) => e.indexOf(t) < 0) : t) : []
        }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.union = e.setdifference = e.interleaveLists = e.removeEmpty = void 0),
          (e.removeEmpty = function (t) {
            return t.filter((t) => t)
          }),
          (e.interleaveLists = function (t, e) {
            const r = []
            for (; t.length || e.length; ) t.length && r.push(t.shift()), e.length && r.push(e.shift())
            return r
          }),
          (e.setdifference = r),
          (e.union = function (t, e) {
            return t && e ? t.concat(r(e, t)) : t || e || []
          })
      },
      2139: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.loadScript = e.loadMapsForIE_ = e.installWGXpath_ = e.loadWGXpath_ = e.mapsForIE = e.detectEdge = e.detectIE = void 0)
        const n = r(2315),
          o = r(5274)
        function i(t) {
          l(n.default.WGXpath), s(t)
        }
        function s(t, e) {
          let r = e || 1
          'undefined' == typeof wgxpath && r < 10
            ? setTimeout(function () {
                s(t, r++)
              }, 200)
            : r >= 10 ||
              ((n.default.wgxpath = wgxpath), t ? n.default.wgxpath.install({ document: document }) : n.default.wgxpath.install(), (o.xpath.evaluate = document.evaluate), (o.xpath.result = XPathResult), (o.xpath.createNSResolver = document.createNSResolver))
        }
        function a() {
          l(n.default.mathmapsIePath)
        }
        function l(t) {
          const e = n.default.document.createElement('script')
          ;(e.type = 'text/javascript'), (e.src = t), n.default.document.head ? n.default.document.head.appendChild(e) : n.default.document.body.appendChild(e)
        }
        ;(e.detectIE = function () {
          return 'undefined' != typeof window && 'ActiveXObject' in window && 'clipboardData' in window && (a(), i(), !0)
        }),
          (e.detectEdge = function () {
            var t
            return 'undefined' != typeof window && 'MSGestureEvent' in window && null === (null === (t = window.chrome) || void 0 === t ? void 0 : t.loadTimes) && ((document.evaluate = null), i(!0), !0)
          }),
          (e.mapsForIE = null),
          (e.loadWGXpath_ = i),
          (e.installWGXpath_ = s),
          (e.loadMapsForIE_ = a),
          (e.loadScript = l)
      },
      2057: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Debugger = void 0)
        const n = r(2315)
        class o {
          constructor() {
            ;(this.isActive_ = !1), (this.outputFunction_ = console.info), (this.stream_ = null)
          }
          static getInstance() {
            return (o.instance = o.instance || new o()), o.instance
          }
          init(t) {
            t && this.startDebugFile_(t), (this.isActive_ = !0)
          }
          output(...t) {
            this.isActive_ && this.output_(t)
          }
          generateOutput(t) {
            this.isActive_ && this.output_(t.apply(t, []))
          }
          exit(t = () => {}) {
            this.isActive_ && this.stream_ && this.stream_.end('', '', t)
          }
          startDebugFile_(t) {
            ;(this.stream_ = n.default.fs.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.outputFunction_.apply(console.info === this.outputFunction_ ? console : this.outputFunction_, ['Speech Rule Engine Debugger:'].concat(t))
          }
        }
        e.Debugger = o
      },
      5740: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.serializeXml =
            e.cloneNode =
            e.tagName =
            e.querySelectorAll =
            e.querySelectorAllByAttrValue =
            e.querySelectorAllByAttr =
            e.formatXml =
            e.createTextNode =
            e.createElementNS =
            e.createElement =
            e.replaceNode =
            e.NodeType =
            e.parseInput =
            e.XML_ENTITIES =
            e.trimInput_ =
            e.toArray =
              void 0)
        const n = r(5897),
          o = r(4440),
          i = r(2315),
          s = r(5274)
        function a(t) {
          const e = []
          for (let r = 0, n = t.length; r < n; r++) e.push(t[r])
          return e
        }
        function l(t) {
          return (t = t.replace(/&nbsp;/g, '\xa0')).replace(/>[ \f\n\r\t\v\u200b]+</g, '><').trim()
        }
        function c(t, e) {
          if (!e) return [!1, '']
          const r = t.match(/^<([^> ]+).*>/),
            n = e.match(/^<\/([^>]+)>(.*)/)
          return r && n && r[1] === n[1] ? [!0, n[2]] : [!1, '']
        }
        ;(e.toArray = a),
          (e.trimInput_ = l),
          (e.XML_ENTITIES = { '&lt;': !0, '&gt;': !0, '&amp;': !0, '&quot;': !0, '&apos;': !0 }),
          (e.parseInput = function (t) {
            const e = new i.default.xmldom.DOMParser(),
              r = l(t),
              a = !!r.match(/&(?!lt|gt|amp|quot|apos)\w+;/g)
            if (!r) throw new Error('Empty input!')
            try {
              const t = e.parseFromString(r, a ? 'text/html' : 'text/xml')
              return n.default.getInstance().mode === o.Mode.HTTP ? ((s.xpath.currentDocument = t), a ? t.body.childNodes[0] : t.documentElement) : t.documentElement
            } catch (t) {
              throw new n.SREError('Illegal input: ' + t.message)
            }
          }),
          (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')
          })(e.NodeType || (e.NodeType = {})),
          (e.replaceNode = function (t, e) {
            t.parentNode && (t.parentNode.insertBefore(e, t), t.parentNode.removeChild(t))
          }),
          (e.createElement = function (t) {
            return i.default.document.createElement(t)
          }),
          (e.createElementNS = function (t, e) {
            return i.default.document.createElementNS(t, e)
          }),
          (e.createTextNode = function (t) {
            return i.default.document.createTextNode(t)
          }),
          (e.formatXml = function (t) {
            let e = '',
              r = /(>)(<)(\/*)/g,
              n = 0,
              o = (t = t.replace(r, '$1\r\n$2$3')).split('\r\n')
            for (r = /(\.)*(<)(\/*)/g, o = o.map((t) => t.replace(r, '$1\r\n$2$3').split('\r\n')).reduce((t, e) => t.concat(e), []); o.length; ) {
              let t = o.shift()
              if (!t) continue
              let r = 0
              if (t.match(/^<\w[^>/]*>[^>]+$/)) {
                const e = c(t, o[0])
                e[0] ? (e[1] ? ((t += o.shift().slice(0, -e[1].length)), e[1].trim() && o.unshift(e[1])) : (t += o.shift())) : (r = 1)
              } else if (t.match(/^<\/\w/)) 0 !== n && (n -= 1)
              else if (t.match(/^<\w[^>]*[^/]>.*$/)) r = 1
              else if (t.match(/^<\w[^>]*\/>.+$/)) {
                const e = t.indexOf('>') + 1
                t.slice(e).trim() && o.unshift(), (t = t.slice(0, e))
              } else r = 0
              ;(e += new Array(n + 1).join('  ') + t + '\r\n'), (n += r)
            }
            return e
          }),
          (e.querySelectorAllByAttr = function (t, e) {
            return t.querySelectorAll ? a(t.querySelectorAll(`[${e}]`)) : s.evalXPath(`.//*[@${e}]`, t)
          }),
          (e.querySelectorAllByAttrValue = function (t, e, r) {
            return t.querySelectorAll ? a(t.querySelectorAll(`[${e}="${r}"]`)) : s.evalXPath(`.//*[@${e}="${r}"]`, t)
          }),
          (e.querySelectorAll = function (t, e) {
            return t.querySelectorAll ? a(t.querySelectorAll(e)) : s.evalXPath(`.//${e}`, t)
          }),
          (e.tagName = function (t) {
            return t.tagName.toUpperCase()
          }),
          (e.cloneNode = function (t) {
            return t.cloneNode(!0)
          }),
          (e.serializeXml = function (t) {
            return new i.default.xmldom.XMLSerializer().serializeToString(t)
          })
      },
      5897: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.EnginePromise = e.SREError = void 0)
        const n = r(1676),
          o = r(4440),
          i = r(2057),
          s = r(1377)
        class a extends Error {
          constructor(t = '') {
            super(), (this.message = t), (this.name = 'SRE Error')
          }
        }
        e.SREError = a
        class l {
          constructor() {
            ;(this.customLoader = null),
              (this.parsers = {}),
              (this.comparator = null),
              (this.mode = o.Mode.SYNC),
              (this.init = !0),
              (this.delay = !1),
              (this.comparators = {}),
              (this.domain = 'mathspeak'),
              (this.style = n.DynamicCstr.DEFAULT_VALUES[n.Axis.STYLE]),
              (this._defaultLocale = n.DynamicCstr.DEFAULT_VALUES[n.Axis.LOCALE]),
              (this.locale = this.defaultLocale),
              (this.subiso = ''),
              (this.modality = n.DynamicCstr.DEFAULT_VALUES[n.Axis.MODALITY]),
              (this.speech = o.Speech.NONE),
              (this.markup = o.Markup.NONE),
              (this.walker = 'Table'),
              (this.structure = !1),
              (this.ruleSets = []),
              (this.strict = !1),
              (this.isIE = !1),
              (this.isEdge = !1),
              (this.rate = '100'),
              (this.pprint = !1),
              (this.config = !1),
              (this.rules = ''),
              (this.prune = ''),
              (this.evaluator = l.defaultEvaluator),
              (this.defaultParser = new n.DynamicCstrParser(n.DynamicCstr.DEFAULT_ORDER)),
              (this.parser = this.defaultParser),
              (this.dynamicCstr = n.DynamicCstr.defaultCstr())
          }
          set defaultLocale(t) {
            this._defaultLocale = s.Variables.ensureLocale(t, this._defaultLocale)
          }
          get defaultLocale() {
            return this._defaultLocale
          }
          static getInstance() {
            return (l.instance = l.instance || new l()), l.instance
          }
          static defaultEvaluator(t, e) {
            return t
          }
          static evaluateNode(t) {
            return l.nodeEvaluator(t)
          }
          getRate() {
            const t = parseInt(this.rate, 10)
            return isNaN(t) ? 100 : t
          }
          setDynamicCstr(t) {
            if ((this.defaultLocale && (n.DynamicCstr.DEFAULT_VALUES[n.Axis.LOCALE] = this.defaultLocale), t)) {
              const e = Object.keys(t)
              for (let r = 0; r < e.length; r++) {
                const o = e[r]
                if (-1 !== n.DynamicCstr.DEFAULT_ORDER.indexOf(o)) {
                  const e = t[o]
                  this[o] = e
                }
              }
            }
            o.DOMAIN_TO_STYLES[this.domain] = this.style
            const e = [this.locale, this.modality, this.domain, this.style].join('.'),
              r = n.DynamicProperties.createProp([n.DynamicCstr.DEFAULT_VALUES[n.Axis.LOCALE]], [n.DynamicCstr.DEFAULT_VALUES[n.Axis.MODALITY]], [n.DynamicCstr.DEFAULT_VALUES[n.Axis.DOMAIN]], [n.DynamicCstr.DEFAULT_VALUES[n.Axis.STYLE]]),
              i = this.comparators[this.domain],
              s = this.parsers[this.domain]
            ;(this.parser = s || this.defaultParser), (this.dynamicCstr = this.parser.parse(e)), this.dynamicCstr.updateProperties(r.getProperties()), (this.comparator = i ? i() : new n.DefaultComparator(this.dynamicCstr))
          }
          configurate(t) {
            this.mode !== o.Mode.HTTP ||
              this.config ||
              (!(function (t) {
                const e = document.documentElement.querySelectorAll('script[type="text/x-sre-config"]')
                for (let r = 0, n = e.length; r < n; r++) {
                  let n
                  try {
                    n = e[r].innerHTML
                    const o = JSON.parse(n)
                    for (const e in o) t[e] = o[e]
                  } catch (t) {
                    i.Debugger.getInstance().output('Illegal configuration ', n)
                  }
                }
              })(t),
              (this.config = !0)),
              (function (t) {
                if ('undefined' != typeof SREfeature) for (const [e, r] of Object.entries(SREfeature)) t[e] = r
              })(t)
          }
          setCustomLoader(t) {
            t && (this.customLoader = t)
          }
        }
        ;(e.default = l),
          (l.BINARY_FEATURES = ['strict', 'structure', 'pprint']),
          (l.STRING_FEATURES = ['markup', 'style', 'domain', 'speech', 'walker', 'defaultLocale', 'locale', 'delay', 'modality', 'rate', 'rules', 'subiso', 'prune']),
          (l.nodeEvaluator = function (t) {
            return []
          })
        class c {
          static get(t = l.getInstance().locale) {
            return c.promises[t] || Promise.resolve('')
          }
          static getall() {
            return Promise.all(Object.values(c.promises))
          }
        }
        ;(e.EnginePromise = c), (c.loaded = {}), (c.promises = {})
      },
      4440: function (t, e) {
        var r
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.DOMAIN_TO_STYLES = e.Markup = e.Speech = e.personalityPropList = e.personalityProps = e.Mode = void 0),
          (function (t) {
            ;(t.SYNC = 'sync'), (t.ASYNC = 'async'), (t.HTTP = 'http')
          })(e.Mode || (e.Mode = {})),
          (function (t) {
            ;(t.PITCH = 'pitch'), (t.RATE = 'rate'), (t.VOLUME = 'volume'), (t.PAUSE = 'pause'), (t.JOIN = 'join'), (t.LAYOUT = 'layout')
          })((r = e.personalityProps || (e.personalityProps = {}))),
          (e.personalityPropList = [r.PITCH, r.RATE, r.VOLUME, r.PAUSE, r.JOIN]),
          (function (t) {
            ;(t.NONE = 'none'), (t.SHALLOW = 'shallow'), (t.DEEP = 'deep')
          })(e.Speech || (e.Speech = {})),
          (function (t) {
            ;(t.NONE = 'none'), (t.LAYOUT = 'layout'), (t.PUNCTUATION = 'punctuation'), (t.SSML = 'ssml'), (t.SSML_STEP = 'ssml_step'), (t.ACSS = 'acss'), (t.SABLE = 'sable'), (t.VOICEXML = 'voicexml')
          })(e.Markup || (e.Markup = {})),
          (e.DOMAIN_TO_STYLES = { mathspeak: 'default', clearspeak: 'default' })
      },
      6828: function (t, e, r) {
        var n =
          (this && this.__awaiter) ||
          function (t, e, r, n) {
            return new (r || (r = Promise))(function (o, i) {
              function s(t) {
                try {
                  l(n.next(t))
                } catch (t) {
                  i(t)
                }
              }
              function a(t) {
                try {
                  l(n.throw(t))
                } catch (t) {
                  i(t)
                }
              }
              function l(t) {
                var e
                t.done
                  ? o(t.value)
                  : ((e = t.value),
                    e instanceof r
                      ? e
                      : new r(function (t) {
                          t(e)
                        })).then(s, a)
              }
              l((n = n.apply(t, e || [])).next())
            })
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.setup = void 0)
        const o = r(7491),
          i = r(6141),
          s = r(2139),
          a = r(5897),
          l = r(7248),
          c = r(2315)
        e.setup = function (t) {
          return n(this, void 0, void 0, function* () {
            const e = a.default.getInstance()
            'default' !== t.domain || ('speech' !== t.modality && t.modality && 'speech' !== e.modality) || (t.domain = 'mathspeak')
            const r = (r) => {
              void 0 !== t[r] && (e[r] = t[r])
            }
            return (
              r('mode'),
              e.configurate(t),
              a.default.BINARY_FEATURES.forEach((r) => {
                void 0 !== t[r] && (e[r] = !!t[r])
              }),
              a.default.STRING_FEATURES.forEach(r),
              t.json && (c.default.jsonPath = l.makePath(t.json)),
              t.xpath && (c.default.WGXpath = t.xpath),
              e.setCustomLoader(t.custom),
              (function (t) {
                ;(t.isIE = s.detectIE()), (t.isEdge = s.detectEdge())
              })(e),
              o.setLocale(),
              e.setDynamicCstr(),
              e.init
                ? ((a.EnginePromise.promises.init = new Promise((t, e) => {
                    setTimeout(() => {
                      t('init')
                    }, 10)
                  })),
                  (e.init = !1),
                  a.EnginePromise.get())
                : e.delay
                ? ((e.delay = !1), a.EnginePromise.get())
                : i.loadLocale()
            )
          })
        }
      },
      8496: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.Event = e.EventType = e.Move = e.KeyCode = void 0),
          (function (t) {
            ;(t[(t.ENTER = 13)] = 'ENTER'),
              (t[(t.ESC = 27)] = 'ESC'),
              (t[(t.SPACE = 32)] = 'SPACE'),
              (t[(t.PAGE_UP = 33)] = 'PAGE_UP'),
              (t[(t.PAGE_DOWN = 34)] = 'PAGE_DOWN'),
              (t[(t.END = 35)] = 'END'),
              (t[(t.HOME = 36)] = 'HOME'),
              (t[(t.LEFT = 37)] = 'LEFT'),
              (t[(t.UP = 38)] = 'UP'),
              (t[(t.RIGHT = 39)] = 'RIGHT'),
              (t[(t.DOWN = 40)] = 'DOWN'),
              (t[(t.TAB = 9)] = 'TAB'),
              (t[(t.LESS = 188)] = 'LESS'),
              (t[(t.GREATER = 190)] = 'GREATER'),
              (t[(t.DASH = 189)] = 'DASH'),
              (t[(t.ZERO = 48)] = 'ZERO'),
              (t[(t.ONE = 49)] = 'ONE'),
              (t[(t.TWO = 50)] = 'TWO'),
              (t[(t.THREE = 51)] = 'THREE'),
              (t[(t.FOUR = 52)] = 'FOUR'),
              (t[(t.FIVE = 53)] = 'FIVE'),
              (t[(t.SIX = 54)] = 'SIX'),
              (t[(t.SEVEN = 55)] = 'SEVEN'),
              (t[(t.EIGHT = 56)] = 'EIGHT'),
              (t[(t.NINE = 57)] = 'NINE'),
              (t[(t.A = 65)] = 'A'),
              (t[(t.B = 66)] = 'B'),
              (t[(t.C = 67)] = 'C'),
              (t[(t.D = 68)] = 'D'),
              (t[(t.E = 69)] = 'E'),
              (t[(t.F = 70)] = 'F'),
              (t[(t.G = 71)] = 'G'),
              (t[(t.H = 72)] = 'H'),
              (t[(t.I = 73)] = 'I'),
              (t[(t.J = 74)] = 'J'),
              (t[(t.K = 75)] = 'K'),
              (t[(t.L = 76)] = 'L'),
              (t[(t.M = 77)] = 'M'),
              (t[(t.N = 78)] = 'N'),
              (t[(t.O = 79)] = 'O'),
              (t[(t.P = 80)] = 'P'),
              (t[(t.Q = 81)] = 'Q'),
              (t[(t.R = 82)] = 'R'),
              (t[(t.S = 83)] = 'S'),
              (t[(t.T = 84)] = 'T'),
              (t[(t.U = 85)] = 'U'),
              (t[(t.V = 86)] = 'V'),
              (t[(t.W = 87)] = 'W'),
              (t[(t.X = 88)] = 'X'),
              (t[(t.Y = 89)] = 'Y'),
              (t[(t.Z = 90)] = 'Z')
          })(e.KeyCode || (e.KeyCode = {})),
          (e.Move = new Map([
            [13, 'ENTER'],
            [27, 'ESC'],
            [32, 'SPACE'],
            [33, 'PAGE_UP'],
            [34, 'PAGE_DOWN'],
            [35, 'END'],
            [36, 'HOME'],
            [37, 'LEFT'],
            [38, 'UP'],
            [39, 'RIGHT'],
            [40, 'DOWN'],
            [9, 'TAB'],
            [188, 'LESS'],
            [190, 'GREATER'],
            [189, 'DASH'],
            [48, 'ZERO'],
            [49, 'ONE'],
            [50, 'TWO'],
            [51, 'THREE'],
            [52, 'FOUR'],
            [53, 'FIVE'],
            [54, 'SIX'],
            [55, 'SEVEN'],
            [56, 'EIGHT'],
            [57, 'NINE'],
            [65, 'A'],
            [66, 'B'],
            [67, 'C'],
            [68, 'D'],
            [69, 'E'],
            [70, 'F'],
            [71, 'G'],
            [72, 'H'],
            [73, 'I'],
            [74, 'J'],
            [75, 'K'],
            [76, 'L'],
            [77, 'M'],
            [78, 'N'],
            [79, 'O'],
            [80, 'P'],
            [81, 'Q'],
            [82, 'R'],
            [83, 'S'],
            [84, 'T'],
            [85, 'U'],
            [86, 'V'],
            [87, 'W'],
            [88, 'X'],
            [89, 'Y'],
            [90, 'Z']
          ])),
          (function (t) {
            ;(t.CLICK = 'click'),
              (t.DBLCLICK = 'dblclick'),
              (t.MOUSEDOWN = 'mousedown'),
              (t.MOUSEUP = 'mouseup'),
              (t.MOUSEOVER = 'mouseover'),
              (t.MOUSEOUT = 'mouseout'),
              (t.MOUSEMOVE = 'mousemove'),
              (t.SELECTSTART = 'selectstart'),
              (t.KEYPRESS = 'keypress'),
              (t.KEYDOWN = 'keydown'),
              (t.KEYUP = 'keyup'),
              (t.TOUCHSTART = 'touchstart'),
              (t.TOUCHMOVE = 'touchmove'),
              (t.TOUCHEND = 'touchend'),
              (t.TOUCHCANCEL = 'touchcancel')
          })(e.EventType || (e.EventType = {}))
        e.Event = class {
          constructor(t, e, r) {
            ;(this.src = t), (this.type = e), (this.callback = r)
          }
          add() {
            this.src.addEventListener(this.type, this.callback)
          }
          remove() {
            this.src.removeEventListener(this.type, this.callback)
          }
        }
      },
      7248: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.localePath = e.makePath = void 0)
        const n = r(2315)
        function o(t) {
          return t.match('/$') ? t : t + '/'
        }
        ;(e.makePath = o),
          (e.localePath = function (t, e = 'json') {
            return o(n.default.jsonPath) + t + (e.match(/^\./) ? e : '.' + e)
          })
      },
      3769: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.KeyProcessor = e.Processor = void 0)
        const n = r(8496)
        class o {
          constructor(t, e) {
            ;(this.name = t),
              (this.process = e.processor),
              (this.postprocess = e.postprocessor || ((t, e) => t)),
              (this.processor = this.postprocess
                ? function (t) {
                    return this.postprocess(this.process(t), t)
                  }
                : this.process),
              (this.print = e.print || o.stringify_),
              (this.pprint = e.pprint || this.print)
          }
          static stringify_(t) {
            return t ? t.toString() : t
          }
        }
        ;(e.Processor = o), (o.LocalState = { walker: null, speechGenerator: null, highlighter: null })
        class i extends o {
          constructor(t, e) {
            super(t, e), (this.key = e.key || i.getKey_)
          }
          static getKey_(t) {
            return 'string' == typeof t ? n.KeyCode[t.toUpperCase()] : t
          }
        }
        e.KeyProcessor = i
      },
      6499: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.keypress = e.output = e.print = e.process = e.set = void 0)
        const n = r(8290),
          o = r(5714),
          i = r(3090),
          s = r(4356),
          a = r(1414),
          l = r(9552),
          c = r(9543),
          u = r(3362),
          p = r(1204),
          h = r(5740),
          f = r(5897),
          d = r(4440),
          m = r(3769),
          y = r(5274),
          g = new Map()
        function b(t) {
          g.set(t.name, t)
        }
        function v(t) {
          const e = g.get(t)
          if (!e) throw new f.SREError('Unknown processor ' + t)
          return e
        }
        function _(t, e) {
          const r = v(t)
          try {
            return r.processor(e)
          } catch (t) {
            throw new f.SREError('Processing error for expression ' + e)
          }
        }
        function S(t, e) {
          const r = v(t)
          return f.default.getInstance().pprint ? r.pprint(e) : r.print(e)
        }
        ;(e.set = b),
          (e.process = _),
          (e.print = S),
          (e.output = function (t, e) {
            const r = v(t)
            try {
              const t = r.processor(e)
              return f.default.getInstance().pprint ? r.pprint(t) : r.print(t)
            } catch (t) {
              throw new f.SREError('Processing error for expression ' + e)
            }
          }),
          (e.keypress = function (t, e) {
            const r = v(t),
              n = r instanceof m.KeyProcessor ? r.key(e) : e,
              o = r.processor(n)
            return f.default.getInstance().pprint ? r.pprint(o) : r.print(o)
          }),
          b(
            new m.Processor('semantic', {
              processor: function (t) {
                const e = h.parseInput(t)
                return a.xmlTree(e)
              },
              postprocessor: function (t, e) {
                const r = f.default.getInstance().speech
                if (r === d.Speech.NONE) return t
                const o = h.cloneNode(t)
                let i = c.computeMarkup(o)
                if (r === d.Speech.SHALLOW) return t.setAttribute('speech', n.finalize(i)), t
                const s = y.evalXPath('.//*[@id]', t),
                  a = y.evalXPath('.//*[@id]', o)
                for (let t, e, r = 0; (t = s[r]), (e = a[r]); r++) (i = c.computeMarkup(e)), t.setAttribute('speech', n.finalize(i))
                return t
              },
              pprint: function (t) {
                return h.formatXml(t.toString())
              }
            })
          ),
          b(
            new m.Processor('speech', {
              processor: function (t) {
                const e = h.parseInput(t),
                  r = a.xmlTree(e),
                  o = c.computeSpeech(r)
                return n.finalize(n.markup(o))
              },
              pprint: function (t) {
                const e = t.toString()
                return n.isXml() ? h.formatXml(e) : e
              }
            })
          ),
          b(
            new m.Processor('json', {
              processor: function (t) {
                const e = h.parseInput(t)
                return a.getTree(e).toJson()
              },
              postprocessor: function (t, e) {
                const r = f.default.getInstance().speech
                if (r === d.Speech.NONE) return t
                const o = h.parseInput(e),
                  i = a.xmlTree(o),
                  s = c.computeMarkup(i)
                if (r === d.Speech.SHALLOW) return (t.stree.speech = n.finalize(s)), t
                const l = (t) => {
                  const e = y.evalXPath(`.//*[@id=${t.id}]`, i)[0],
                    r = c.computeMarkup(e)
                  ;(t.speech = n.finalize(r)), t.children && t.children.forEach(l)
                }
                return l(t.stree), t
              },
              print: function (t) {
                return JSON.stringify(t)
              },
              pprint: function (t) {
                return JSON.stringify(t, null, 2)
              }
            })
          ),
          b(
            new m.Processor('description', {
              processor: function (t) {
                const e = h.parseInput(t),
                  r = a.xmlTree(e)
                return c.computeSpeech(r)
              },
              print: function (t) {
                return JSON.stringify(t)
              },
              pprint: function (t) {
                return JSON.stringify(t, null, 2)
              }
            })
          ),
          b(
            new m.Processor('enriched', {
              processor: function (t) {
                return o.semanticMathmlSync(t)
              },
              postprocessor: function (t, e) {
                const r = p.getSemanticRoot(t)
                let n
                switch (f.default.getInstance().speech) {
                  case d.Speech.NONE:
                    break
                  case d.Speech.SHALLOW:
                    ;(n = l.generator('Adhoc')), n.getSpeech(r, t)
                    break
                  case d.Speech.DEEP:
                    ;(n = l.generator('Tree')), n.getSpeech(t, t)
                }
                return t
              },
              pprint: function (t) {
                return h.formatXml(t.toString())
              }
            })
          ),
          b(
            new m.Processor('walker', {
              processor: function (t) {
                const e = l.generator('Node')
                ;(m.Processor.LocalState.speechGenerator = e),
                  e.setOptions({ modality: f.default.getInstance().modality, locale: f.default.getInstance().locale, domain: f.default.getInstance().domain, style: f.default.getInstance().style }),
                  (m.Processor.LocalState.highlighter = i.highlighter({ color: 'black' }, { color: 'white' }, { renderer: 'NativeMML' }))
                const r = _('enriched', t),
                  n = S('enriched', r)
                return (m.Processor.LocalState.walker = u.walker(f.default.getInstance().walker, r, e, m.Processor.LocalState.highlighter, n)), m.Processor.LocalState.walker
              },
              print: function (t) {
                return m.Processor.LocalState.walker.speech()
              }
            })
          ),
          b(
            new m.KeyProcessor('move', {
              processor: function (t) {
                if (!m.Processor.LocalState.walker) return null
                return !1 === m.Processor.LocalState.walker.move(t) ? n.error(t) : m.Processor.LocalState.walker.speech()
              }
            })
          ),
          b(
            new m.Processor('number', {
              processor: function (t) {
                const e = parseInt(t, 10)
                return isNaN(e) ? '' : s.LOCALE.NUMBERS.numberToWords(e)
              }
            })
          ),
          b(
            new m.Processor('ordinal', {
              processor: function (t) {
                const e = parseInt(t, 10)
                return isNaN(e) ? '' : s.LOCALE.NUMBERS.wordOrdinal(e)
              }
            })
          ),
          b(
            new m.Processor('numericOrdinal', {
              processor: function (t) {
                const e = parseInt(t, 10)
                return isNaN(e) ? '' : s.LOCALE.NUMBERS.numericOrdinal(e)
              }
            })
          ),
          b(
            new m.Processor('vulgar', {
              processor: function (t) {
                const [e, r] = t.split('/').map((t) => parseInt(t, 10))
                return isNaN(e) || isNaN(r) ? '' : _('speech', `<mfrac><mn>${e}</mn><mn>${r}</mn></mfrac>`)
              }
            })
          )
      },
      2998: function (t, e, r) {
        var n =
          (this && this.__awaiter) ||
          function (t, e, r, n) {
            return new (r || (r = Promise))(function (o, i) {
              function s(t) {
                try {
                  l(n.next(t))
                } catch (t) {
                  i(t)
                }
              }
              function a(t) {
                try {
                  l(n.throw(t))
                } catch (t) {
                  i(t)
                }
              }
              function l(t) {
                var e
                t.done
                  ? o(t.value)
                  : ((e = t.value),
                    e instanceof r
                      ? e
                      : new r(function (t) {
                          t(e)
                        })).then(s, a)
              }
              l((n = n.apply(t, e || [])).next())
            })
          }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.localePath =
            e.exit =
            e.move =
            e.walk =
            e.processFile =
            e.file =
            e.vulgar =
            e.numericOrdinal =
            e.ordinal =
            e.number =
            e.toEnriched =
            e.toDescription =
            e.toJson =
            e.toSemantic =
            e.toSpeech =
            e.localeLoader =
            e.engineReady =
            e.engineSetup =
            e.setupEngine =
            e.version =
              void 0)
        const o = r(5897),
          i = r(6828),
          s = r(4440),
          a = r(7248),
          l = r(6499),
          c = r(2315),
          u = r(1377),
          p = r(6141)
        function h(t) {
          return n(this, void 0, void 0, function* () {
            return (0, i.setup)(t)
          })
        }
        function f(t, e) {
          return l.process(t, e)
        }
        function d(t, e, r) {
          switch (o.default.getInstance().mode) {
            case s.Mode.ASYNC:
              return (function (t, e, r) {
                return n(this, void 0, void 0, function* () {
                  const n = yield c.default.fs.promises.readFile(e, { encoding: 'utf8' }),
                    i = l.output(t, n)
                  if (r)
                    try {
                      c.default.fs.promises.writeFile(r, i)
                    } catch (t) {
                      throw new o.SREError('Can not write to file: ' + r)
                    }
                  return i
                })
              })(t, e, r)
            case s.Mode.SYNC:
              return (function (t, e, r) {
                const n = (function (t) {
                    let e
                    try {
                      e = c.default.fs.readFileSync(t, { encoding: 'utf8' })
                    } catch (e) {
                      throw new o.SREError('Can not open file: ' + t)
                    }
                    return e
                  })(e),
                  i = l.output(t, n)
                if (r)
                  try {
                    c.default.fs.writeFileSync(r, i)
                  } catch (t) {
                    throw new o.SREError('Can not write to file: ' + r)
                  }
                return i
              })(t, e, r)
            default:
              throw new o.SREError(`Can process files in ${o.default.getInstance().mode} mode`)
          }
        }
        ;(e.version = u.Variables.VERSION),
          (e.setupEngine = h),
          (e.engineSetup = function () {
            const t = ['mode'].concat(o.default.STRING_FEATURES, o.default.BINARY_FEATURES),
              e = o.default.getInstance(),
              r = {}
            return (
              t.forEach(function (t) {
                r[t] = e[t]
              }),
              (r.json = c.default.jsonPath),
              (r.xpath = c.default.WGXpath),
              (r.rules = e.ruleSets.slice()),
              r
            )
          }),
          (e.engineReady = function () {
            return n(this, void 0, void 0, function* () {
              return h({}).then(() => o.EnginePromise.getall())
            })
          }),
          (e.localeLoader = p.standardLoader),
          (e.toSpeech = function (t) {
            return f('speech', t)
          }),
          (e.toSemantic = function (t) {
            return f('semantic', t)
          }),
          (e.toJson = function (t) {
            return f('json', t)
          }),
          (e.toDescription = function (t) {
            return f('description', t)
          }),
          (e.toEnriched = function (t) {
            return f('enriched', t)
          }),
          (e.number = function (t) {
            return f('number', t)
          }),
          (e.ordinal = function (t) {
            return f('ordinal', t)
          }),
          (e.numericOrdinal = function (t) {
            return f('numericOrdinal', t)
          }),
          (e.vulgar = function (t) {
            return f('vulgar', t)
          }),
          (e.file = {}),
          (e.file.toSpeech = function (t, e) {
            return d('speech', t, e)
          }),
          (e.file.toSemantic = function (t, e) {
            return d('semantic', t, e)
          }),
          (e.file.toJson = function (t, e) {
            return d('json', t, e)
          }),
          (e.file.toDescription = function (t, e) {
            return d('description', t, e)
          }),
          (e.file.toEnriched = function (t, e) {
            return d('enriched', t, e)
          }),
          (e.processFile = d),
          (e.walk = function (t) {
            return l.output('walker', t)
          }),
          (e.move = function (t) {
            return l.keypress('move', t)
          }),
          (e.exit = function (t) {
            const e = t || 0
            o.EnginePromise.getall().then(() => process.exit(e))
          }),
          (e.localePath = a.localePath),
          c.default.documentSupported ? h({ mode: s.Mode.HTTP }).then(() => h({})) : h({ mode: s.Mode.SYNC }).then(() => h({ mode: s.Mode.ASYNC }))
      },
      2315: function (__unused_webpack_module, exports, __webpack_require__) {
        var __dirname = '/'
        Object.defineProperty(exports, '__esModule', { value: !0 })
        const variables_1 = __webpack_require__(1377)
        class SystemExternal {
          static extRequire(library) {
            if ('undefined' != typeof process) {
              const nodeRequire = eval('require')
              return nodeRequire(library)
            }
            return null
          }
        }
        ;(exports.default = SystemExternal),
          (SystemExternal.windowSupported = !('undefined' == typeof window)),
          (SystemExternal.documentSupported = SystemExternal.windowSupported && !(void 0 === window.document)),
          (SystemExternal.xmldom = SystemExternal.documentSupported ? window : SystemExternal.extRequire('xmldom-sre')),
          (SystemExternal.document = SystemExternal.documentSupported ? window.document : new SystemExternal.xmldom.DOMImplementation().createDocument('', '', 0)),
          (SystemExternal.xpath = SystemExternal.documentSupported
            ? document
            : (function () {
                const t = { document: {}, XPathResult: {} }
                return SystemExternal.extRequire('wicked-good-xpath').install(t), (t.document.XPathResult = t.XPathResult), t.document
              })()),
          (SystemExternal.mathmapsIePath = 'https://cdn.jsdelivr.net/npm/sre-mathmaps-ie@' + variables_1.Variables.VERSION + 'mathmaps_ie.js'),
          (SystemExternal.commander = SystemExternal.documentSupported ? null : SystemExternal.extRequire('commander')),
          (SystemExternal.fs = SystemExternal.documentSupported ? null : SystemExternal.extRequire('fs')),
          (SystemExternal.url = variables_1.Variables.url),
          (SystemExternal.jsonPath = (SystemExternal.documentSupported ? SystemExternal.url : process.env.SRE_JSON_PATH || __webpack_require__.g.SRE_JSON_PATH || __dirname + '/mathmaps') + '/'),
          (SystemExternal.WGXpath = variables_1.Variables.WGXpath),
          (SystemExternal.wgxpath = null)
      },
      1377: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Variables = void 0)
        class r {
          static ensureLocale(t, e) {
            return r.LOCALES.get(t) ? t : (console.error(`Locale ${t} does not exist! Using ${r.LOCALES.get(e)} instead.`), e)
          }
        }
        ;(e.Variables = r),
          (r.VERSION = '4.0.6'),
          (r.LOCALES = new Map([
            ['ca', 'Catalan'],
            ['da', 'Danish'],
            ['de', 'German'],
            ['en', 'English'],
            ['es', 'Spanish'],
            ['fr', 'French'],
            ['hi', 'Hindi'],
            ['it', 'Italian'],
            ['nb', 'Bokm\xe5l'],
            ['nn', 'Nynorsk'],
            ['sv', 'Swedish'],
            ['nemeth', 'Nemeth']
          ])),
          (r.mathjaxVersion = '3.2.1'),
          (r.url = 'https://cdn.jsdelivr.net/npm/speech-rule-engine@' + r.VERSION + '/lib/mathmaps'),
          (r.WGXpath = 'https://cdn.jsdelivr.net/npm/wicked-good-xpath@1.3.0/dist/wgxpath.install.js')
      },
      5274: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.updateEvaluator = e.evaluateString = e.evaluateBoolean = e.getLeafNodes = e.evalXPath = e.resolveNameSpace = e.xpath = void 0)
        const n = r(5897),
          o = r(4440),
          i = r(2315)
        function s() {
          return 'undefined' != typeof XPathResult
        }
        e.xpath = { currentDocument: null, evaluate: s() ? document.evaluate : i.default.xpath.evaluate, result: s() ? XPathResult : i.default.xpath.XPathResult, createNSResolver: s() ? document.createNSResolver : i.default.xpath.createNSResolver }
        const a = { xhtml: 'http://www.w3.org/1999/xhtml', mathml: 'http://www.w3.org/1998/Math/MathML', mml: 'http://www.w3.org/1998/Math/MathML', svg: 'http://www.w3.org/2000/svg' }
        function l(t) {
          return a[t] || null
        }
        e.resolveNameSpace = l
        class c {
          constructor() {
            this.lookupNamespaceURI = l
          }
        }
        function u(t, r, i) {
          return n.default.getInstance().mode !== o.Mode.HTTP || n.default.getInstance().isIE || n.default.getInstance().isEdge ? e.xpath.evaluate(t, r, new c(), i, null) : e.xpath.currentDocument.evaluate(t, r, l, i, null)
        }
        function p(t, r) {
          let n
          try {
            n = u(t, r, e.xpath.result.ORDERED_NODE_ITERATOR_TYPE)
          } catch (t) {
            return []
          }
          const o = []
          for (let t = n.iterateNext(); t; t = n.iterateNext()) o.push(t)
          return o
        }
        ;(e.evalXPath = p),
          (e.getLeafNodes = function (t) {
            return p('.//*[count(*)=0]', t)
          }),
          (e.evaluateBoolean = function (t, r) {
            let n
            try {
              n = u(t, r, e.xpath.result.BOOLEAN_TYPE)
            } catch (t) {
              return !1
            }
            return n.booleanValue
          }),
          (e.evaluateString = function (t, r) {
            let n
            try {
              n = u(t, r, e.xpath.result.STRING_TYPE)
            } catch (t) {
              return ''
            }
            return n.stringValue
          }),
          (e.updateEvaluator = function (t) {
            if (n.default.getInstance().mode !== o.Mode.HTTP) return
            let r = t
            for (; r && !r.evaluate; ) r = r.parentNode
            r && r.evaluate ? (e.xpath.currentDocument = r) : t.ownerDocument && (e.xpath.currentDocument = t.ownerDocument)
          })
      },
      9268: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractEnrichCase = void 0)
        e.AbstractEnrichCase = class {
          constructor(t) {
            this.semantic = t
          }
        }
      },
      6061: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseBinomial = void 0)
        const n = r(5740),
          o = r(9268),
          i = r(5452),
          s = r(2298)
        class a extends o.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static test(t) {
            return !t.mathmlTree && 'line' === t.type && 'binomial' === t.role
          }
          getMathml() {
            if (!this.semantic.childNodes.length) return this.mml
            const t = this.semantic.childNodes[0]
            if (((this.mml = (0, i.walkTree)(t)), this.mml.hasAttribute(s.Attribute.TYPE))) {
              const t = n.createElement('mrow')
              t.setAttribute(s.Attribute.ADDED, 'true'), n.replaceNode(this.mml, t), t.appendChild(this.mml), (this.mml = t)
            }
            return (0, s.setAttributes)(this.mml, this.semantic), this.mml
          }
        }
        e.CaseBinomial = a
      },
      5765: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseDoubleScript = void 0)
        const n = r(5740),
          o = r(9268),
          i = r(5452),
          s = r(2298)
        class a extends o.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static test(t) {
            if (!t.mathmlTree || !t.childNodes.length) return !1
            const e = n.tagName(t.mathmlTree),
              r = t.childNodes[0].role
            return ('MSUBSUP' === e && 'subsup' === r) || ('MUNDEROVER' === e && 'underover' === r)
          }
          getMathml() {
            const t = this.semantic.childNodes[0],
              e = t.childNodes[0],
              r = this.semantic.childNodes[1],
              n = t.childNodes[1],
              o = i.walkTree(r),
              a = i.walkTree(e),
              l = i.walkTree(n)
            return (
              (0, s.setAttributes)(this.mml, this.semantic),
              this.mml.setAttribute(s.Attribute.CHILDREN, (0, s.makeIdList)([e, n, r])),
              [a, l, o].forEach((t) => i.getInnerNode(t).setAttribute(s.Attribute.PARENT, this.mml.getAttribute(s.Attribute.ID))),
              this.mml.setAttribute(s.Attribute.TYPE, t.role),
              i.addCollapsedAttribute(this.mml, [this.semantic.id, [t.id, e.id, n.id], r.id]),
              this.mml
            )
          }
        }
        e.CaseDoubleScript = a
      },
      7251: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseEmbellished = void 0)
        const n = r(5740),
          o = r(5952),
          i = r(9268),
          s = r(5765),
          a = r(7014),
          l = r(6887),
          c = r(5452),
          u = r(2298)
        class p extends i.AbstractEnrichCase {
          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 = [])
          }
          static test(t) {
            return !(!t.mathmlTree || !t.fencePointer || t.mathmlTree.getAttribute('data-semantic-type'))
          }
          static makeEmptyNode_(t) {
            const e = n.createElement('mrow'),
              r = new o.SemanticNode(t)
            return (r.type = 'empty'), (r.mathmlTree = e), r
          }
          static fencedMap_(t, e) {
            ;(e[t.id] = t.mathmlTree), t.embellished && p.fencedMap_(t.childNodes[0], e)
          }
          getMathml() {
            this.getFenced_(),
              (this.fencedMml = c.walkTree(this.fenced)),
              this.getFencesMml_(),
              'empty' !== this.fenced.type || this.fencedMml.parentNode || (this.fencedMml.setAttribute(u.Attribute.ADDED, 'true'), this.cfenceMml.parentNode.insertBefore(this.fencedMml, this.cfenceMml)),
              this.getFencedMml_()
            return this.rewrite_()
          }
          fencedElement(t) {
            return 'fenced' === t.type || 'matrix' === t.type || 'vector' === t.type
          }
          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]), p.fencedMap_(this.ofence, this.ofenceMap), p.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), (t = t.nextSibling)
          }
          getFencesMml_() {
            let t = this.semantic
            const e = Object.keys(this.ofenceMap),
              r = Object.keys(this.cfenceMap)
            for (; !((this.ofenceMml && this.cfenceMml) || t === this.fenced); )
              -1 === e.indexOf(t.fencePointer) || this.ofenceMml || (this.ofenceMml = t.mathmlTree), -1 === r.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 = c.ascendNewNode(this.ofenceMml)),
              this.cfenceMml && (this.cfenceMml = c.ascendNewNode(this.cfenceMml))
          }
          rewrite_() {
            let t = this.semantic,
              e = null
            const r = this.introduceNewLayer_()
            for ((0, u.setAttributes)(r, this.fenced.parent); !this.fencedElement(t); ) {
              const o = t.mathmlTree,
                i = this.specialCase_(t, o)
              if (i) t = i
              else {
                ;(0, u.setAttributes)(o, t)
                const e = []
                for (let r, n = 1; (r = t.childNodes[n]); n++) e.push(c.walkTree(r))
                t = t.childNodes[0]
              }
              const s = n.createElement('dummy'),
                a = o.childNodes[0]
              n.replaceNode(o, s), n.replaceNode(r, o), n.replaceNode(o.childNodes[0], r), n.replaceNode(s, a), e || (e = o)
            }
            return c.walkTree(this.ofence), c.walkTree(this.cfence), this.cleanupParents_(), e || r
          }
          specialCase_(t, e) {
            const r = n.tagName(e)
            let o,
              i = null
            if (
              ('MSUBSUP' === r
                ? ((i = t.childNodes[0]), (o = s.CaseDoubleScript))
                : 'MMULTISCRIPTS' === r && ('superscript' === t.type || 'subscript' === t.type ? (o = a.CaseMultiscripts) : 'tensor' === t.type && (o = l.CaseTensor), (i = o && t.childNodes[0] && 'subsup' === t.childNodes[0].role ? t.childNodes[0] : t)),
              !i)
            )
              return null
            const c = i.childNodes[0],
              u = p.makeEmptyNode_(c.id)
            return (i.childNodes[0] = u), (e = new o(t).getMathml()), (i.childNodes[0] = c), this.parentCleanup.push(e), i.childNodes[0]
          }
          introduceNewLayer_() {
            const t = this.fullFence(this.ofenceMml),
              e = this.fullFence(this.cfenceMml)
            let r = n.createElement('mrow')
            if ((n.replaceNode(this.fencedMml, r), this.fencedMmlNodes.forEach((t) => r.appendChild(t)), r.insertBefore(t, this.fencedMml), r.appendChild(e), !r.parentNode)) {
              const t = n.createElement('mrow')
              for (; r.childNodes.length > 0; ) t.appendChild(r.childNodes[0])
              r.appendChild(t), (r = t)
            }
            return r
          }
          fullFence(t) {
            const e = this.fencedMml.parentNode
            let r = t
            for (; r.parentNode && r.parentNode !== e; ) r = r.parentNode
            return r
          }
          cleanupParents_() {
            this.parentCleanup.forEach(function (t) {
              const e = t.childNodes[1].getAttribute(u.Attribute.PARENT)
              t.childNodes[0].setAttribute(u.Attribute.PARENT, e)
            })
          }
        }
        e.CaseEmbellished = p
      },
      6265: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseLimit = void 0)
        const n = r(5740),
          o = r(9268),
          i = r(5452),
          s = r(2298)
        class a extends o.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static test(t) {
            if (!t.mathmlTree || !t.childNodes.length) return !1
            const e = n.tagName(t.mathmlTree),
              r = t.type
            return (('limupper' === r || 'limlower' === r) && ('MSUBSUP' === e || 'MUNDEROVER' === e)) || ('limboth' === r && ('MSUB' === e || 'MUNDER' === e || 'MSUP' === e || 'MOVER' === e))
          }
          static walkTree_(t) {
            t && i.walkTree(t)
          }
          getMathml() {
            const t = this.semantic.childNodes
            return (
              'limboth' !== this.semantic.type && this.mml.childNodes.length >= 3 && (this.mml = i.introduceNewLayer([this.mml], this.semantic)),
              (0, s.setAttributes)(this.mml, this.semantic),
              t[0].mathmlTree || (t[0].mathmlTree = this.semantic.mathmlTree),
              t.forEach(a.walkTree_),
              this.mml
            )
          }
        }
        e.CaseLimit = a
      },
      6514: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseLine = void 0)
        const n = r(9268),
          o = r(5452),
          i = r(2298)
        class s extends n.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static test(t) {
            return !!t.mathmlTree && 'line' === t.type
          }
          getMathml() {
            return this.semantic.contentNodes.length && o.walkTree(this.semantic.contentNodes[0]), this.semantic.childNodes.length && o.walkTree(this.semantic.childNodes[0]), (0, i.setAttributes)(this.mml, this.semantic), this.mml
          }
        }
        e.CaseLine = s
      },
      6839: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseMultiindex = void 0)
        const n = r(5740),
          o = r(9268),
          i = r(5452),
          s = r(2298)
        class a extends o.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static multiscriptIndex(t) {
            return 'punctuated' === t.type && 'dummy' === t.contentNodes[0].role ? i.collapsePunctuated(t) : (i.walkTree(t), t.id)
          }
          static createNone_(t) {
            const e = n.createElement('none')
            return t && (0, s.setAttributes)(e, t), e.setAttribute(s.Attribute.ADDED, 'true'), e
          }
          completeMultiscript(t, e) {
            const r = n.toArray(this.mml.childNodes).slice(1)
            let o = 0
            const l = (t) => {
              for (let e, n = 0; (e = t[n]); n++) {
                const t = r[o]
                if (t && e === parseInt(i.getInnerNode(t).getAttribute(s.Attribute.ID))) i.getInnerNode(t).setAttribute(s.Attribute.PARENT, this.semantic.id.toString()), o++
                else {
                  const r = this.semantic.querySelectorAll((t) => t.id === e)
                  this.mml.insertBefore(a.createNone_(r[0]), t || null)
                }
              }
            }
            l(t), r[o] && 'MPRESCRIPTS' !== n.tagName(r[o]) ? this.mml.insertBefore(r[o], n.createElement('mprescripts')) : o++, l(e)
          }
        }
        e.CaseMultiindex = a
      },
      7014: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseMultiscripts = void 0)
        const n = r(5740),
          o = r(5656),
          i = r(6839),
          s = r(5452),
          a = r(2298)
        class l extends i.CaseMultiindex {
          static test(t) {
            if (!t.mathmlTree) return !1
            return 'MMULTISCRIPTS' === n.tagName(t.mathmlTree) && ('superscript' === t.type || 'subscript' === t.type)
          }
          constructor(t) {
            super(t)
          }
          getMathml() {
            let t, e, r
            if (((0, a.setAttributes)(this.mml, this.semantic), this.semantic.childNodes[0] && 'subsup' === this.semantic.childNodes[0].role)) {
              const n = this.semantic.childNodes[0]
              ;(t = n.childNodes[0]), (e = i.CaseMultiindex.multiscriptIndex(this.semantic.childNodes[1])), (r = i.CaseMultiindex.multiscriptIndex(n.childNodes[1]))
              const l = [this.semantic.id, [n.id, t.id, r], e]
              s.addCollapsedAttribute(this.mml, l), this.mml.setAttribute(a.Attribute.TYPE, n.role), this.completeMultiscript(o.SemanticSkeleton.interleaveIds(r, e), [])
            } else {
              ;(t = this.semantic.childNodes[0]), (e = i.CaseMultiindex.multiscriptIndex(this.semantic.childNodes[1]))
              const r = [this.semantic.id, t.id, e]
              s.addCollapsedAttribute(this.mml, r)
            }
            const n = o.SemanticSkeleton.collapsedLeafs(r || [], e),
              l = s.walkTree(t)
            return s.getInnerNode(l).setAttribute(a.Attribute.PARENT, this.semantic.id.toString()), n.unshift(t.id), this.mml.setAttribute(a.Attribute.CHILDREN, n.join(',')), this.mml
          }
        }
        e.CaseMultiscripts = l
      },
      3416: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseProof = void 0)
        const n = r(9268),
          o = r(5452),
          i = r(2298)
        class s extends n.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static test(t) {
            return !!t.mathmlTree && ('inference' === t.type || 'premises' === t.type)
          }
          getMathml() {
            return this.semantic.childNodes.length
              ? (this.semantic.contentNodes.forEach(function (t) {
                  o.walkTree(t), (0, i.setAttributes)(t.mathmlTree, t)
                }),
                this.semantic.childNodes.forEach(function (t) {
                  o.walkTree(t)
                }),
                (0, i.setAttributes)(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
          }
        }
        e.CaseProof = s
      },
      5699: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseTable = void 0)
        const n = r(5740),
          o = r(9268),
          i = r(5452),
          s = r(2298)
        class a extends o.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.inner = []), (this.mml = t.mathmlTree)
          }
          static test(t) {
            return 'matrix' === t.type || 'vector' === t.type || 'cases' === t.type
          }
          getMathml() {
            const t = i.cloneContentNode(this.semantic.contentNodes[0]),
              e = this.semantic.contentNodes[1] ? i.cloneContentNode(this.semantic.contentNodes[1]) : null
            if (((this.inner = this.semantic.childNodes.map(i.walkTree)), this.mml))
              if ('MFENCED' === n.tagName(this.mml)) {
                const r = this.mml.childNodes
                this.mml.insertBefore(t, r[0] || null), e && this.mml.appendChild(e), (this.mml = i.rewriteMfenced(this.mml))
              } else {
                const r = [t, this.mml]
                e && r.push(e), (this.mml = i.introduceNewLayer(r, this.semantic))
              }
            else this.mml = i.introduceNewLayer([t].concat(this.inner, [e]), this.semantic)
            return (0, s.setAttributes)(this.mml, this.semantic), this.mml
          }
        }
        e.CaseTable = a
      },
      6887: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseTensor = void 0)
        const n = r(5656),
          o = r(6839),
          i = r(5452),
          s = r(2298)
        class a extends o.CaseMultiindex {
          static test(t) {
            return !!t.mathmlTree && 'tensor' === t.type
          }
          constructor(t) {
            super(t)
          }
          getMathml() {
            i.walkTree(this.semantic.childNodes[0])
            const t = o.CaseMultiindex.multiscriptIndex(this.semantic.childNodes[1]),
              e = o.CaseMultiindex.multiscriptIndex(this.semantic.childNodes[2]),
              r = o.CaseMultiindex.multiscriptIndex(this.semantic.childNodes[3]),
              a = o.CaseMultiindex.multiscriptIndex(this.semantic.childNodes[4])
            ;(0, s.setAttributes)(this.mml, this.semantic)
            const l = [this.semantic.id, this.semantic.childNodes[0].id, t, e, r, a]
            i.addCollapsedAttribute(this.mml, l)
            const c = n.SemanticSkeleton.collapsedLeafs(t, e, r, a)
            return c.unshift(this.semantic.childNodes[0].id), this.mml.setAttribute(s.Attribute.CHILDREN, c.join(',')), this.completeMultiscript(n.SemanticSkeleton.interleaveIds(r, a), n.SemanticSkeleton.interleaveIds(t, e)), this.mml
          }
        }
        e.CaseTensor = a
      },
      9236: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CaseText = void 0)
        const n = r(9268),
          o = r(5452),
          i = r(2298)
        class s extends n.AbstractEnrichCase {
          constructor(t) {
            super(t), (this.mml = t.mathmlTree)
          }
          static test(t) {
            return 'punctuated' === t.type && ('text' === t.role || t.contentNodes.every((t) => 'dummy' === t.role))
          }
          getMathml() {
            const t = [],
              e = o.collapsePunctuated(this.semantic, t)
            return (this.mml = o.introduceNewLayer(t, this.semantic)), (0, i.setAttributes)(this.mml, this.semantic), this.mml.removeAttribute(i.Attribute.CONTENT), o.addCollapsedAttribute(this.mml, e), this.mml
          }
        }
        e.CaseText = s
      },
      5714: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.prepareMmlString = e.testTranslation__ = e.semanticMathml = e.semanticMathmlSync = e.semanticMathmlNode = void 0)
        const n = r(2057),
          o = r(5740),
          i = r(5897),
          s = r(1414),
          a = r(5452),
          l = r(2298)
        function c(t) {
          const e = o.cloneNode(t),
            r = s.getTree(e)
          return a.enrich(e, r)
        }
        function u(t) {
          return c(o.parseInput(t))
        }
        function p(t) {
          return t.match(/^<math/) || (t = '<math>' + t), t.match(/\/math>$/) || (t += '</math>'), t
        }
        r(1513),
          (e.semanticMathmlNode = c),
          (e.semanticMathmlSync = u),
          (e.semanticMathml = function (t, e) {
            i.EnginePromise.getall().then(() => {
              const r = o.parseInput(t)
              e(c(r))
            })
          }),
          (e.testTranslation__ = function (t) {
            n.Debugger.getInstance().init()
            const e = u(p(t)).toString()
            return (0, l.removeAttributePrefix)(e), n.Debugger.getInstance().exit(), e
          }),
          (e.prepareMmlString = p)
      },
      2298: function (t, e) {
        var r
        function n(t) {
          return t
            .map(function (t) {
              return t.id
            })
            .join(',')
        }
        function o(t, e) {
          const n = []
          'mglyph' === e.role && n.push('image'), e.attributes.href && n.push('link'), n.length && t.setAttribute(r.POSTFIX, n.join(' '))
        }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.addPrefix = e.removeAttributePrefix = e.setPostfix = e.setAttributes = e.makeIdList = e.EnrichAttributes = e.Attribute = e.Prefix = void 0),
          (e.Prefix = 'data-semantic-'),
          (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.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.TYPE = 'data-semantic-type')
          })((r = e.Attribute || (e.Attribute = {}))),
          (e.EnrichAttributes = [r.ADDED, r.ALTERNATIVE, r.CHILDREN, r.COLLAPSED, r.CONTENT, r.EMBELLISHED, r.FENCEPOINTER, r.FONT, r.ID, r.ANNOTATION, r.OPERATOR, r.OWNS, r.PARENT, r.POSTFIX, r.PREFIX, r.ROLE, r.SPEECH, r.STRUCTURE, r.TYPE]),
          (e.makeIdList = n),
          (e.setAttributes = function (t, i) {
            t.setAttribute(r.TYPE, i.type)
            const s = i.allAttributes()
            for (let r, n = 0; (r = s[n]); n++) t.setAttribute(e.Prefix + r[0].toLowerCase(), r[1])
            i.childNodes.length && t.setAttribute(r.CHILDREN, n(i.childNodes)), i.contentNodes.length && t.setAttribute(r.CONTENT, n(i.contentNodes)), i.parent && t.setAttribute(r.PARENT, i.parent.id.toString()), o(t, i)
          }),
          (e.setPostfix = o),
          (e.removeAttributePrefix = function (t) {
            return t.toString().replace(new RegExp(e.Prefix, 'g'), '')
          }),
          (e.addPrefix = function (t) {
            return e.Prefix + t
          })
      },
      3532: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.factory = e.getCase = void 0),
          (e.getCase = function (t) {
            for (let r, n = 0; (r = e.factory[n]); n++) if (r.test(t)) return r.constr(t)
            return null
          }),
          (e.factory = [])
      },
      1513: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(6061),
          o = r(5765),
          i = r(7251),
          s = r(6265),
          a = r(6514),
          l = r(7014),
          c = r(3416),
          u = r(5699),
          p = r(6887),
          h = r(9236)
        r(3532).factory.push(
          { test: s.CaseLimit.test, constr: (t) => new s.CaseLimit(t) },
          { test: i.CaseEmbellished.test, constr: (t) => new i.CaseEmbellished(t) },
          { test: o.CaseDoubleScript.test, constr: (t) => new o.CaseDoubleScript(t) },
          { test: p.CaseTensor.test, constr: (t) => new p.CaseTensor(t) },
          { test: l.CaseMultiscripts.test, constr: (t) => new l.CaseMultiscripts(t) },
          { test: a.CaseLine.test, constr: (t) => new a.CaseLine(t) },
          { test: n.CaseBinomial.test, constr: (t) => new n.CaseBinomial(t) },
          { test: c.CaseProof.test, constr: (t) => new c.CaseProof(t) },
          { test: u.CaseTable.test, constr: (t) => new u.CaseTable(t) },
          { test: h.CaseText.test, constr: (t) => new h.CaseText(t) }
        )
      },
      5452: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.printNodeList__ =
            e.collapsePunctuated =
            e.formattedOutput_ =
            e.formattedOutput =
            e.getInnerNode =
            e.setOperatorAttribute_ =
            e.createInvisibleOperator_ =
            e.rewriteMfenced =
            e.cloneContentNode =
            e.addCollapsedAttribute =
            e.parentNode_ =
            e.isIgnorable_ =
            e.unitChild_ =
            e.descendNode_ =
            e.ascendNewNode =
            e.validLca_ =
            e.pathToRoot_ =
            e.attachedElement_ =
            e.prunePath_ =
            e.mathmlLca_ =
            e.lcaType =
            e.functionApplication_ =
            e.isDescendant_ =
            e.insertNewChild_ =
            e.mergeChildren_ =
            e.collectChildNodes_ =
            e.collateChildNodes_ =
            e.childrenSubset_ =
            e.moveSemanticAttributes_ =
            e.introduceLayerAboveLca =
            e.introduceNewLayer =
            e.walkTree =
            e.enrich =
            e.SETTINGS =
              void 0)
        const n = r(2057),
          o = r(5740),
          i = r(5897),
          s = r(3588),
          a = r(7516),
          l = r(5656),
          c = r(4795),
          u = r(2298),
          p = r(3532)
        function h(t) {
          const e = (0, p.getCase)(t)
          let r
          if (e) return (r = e.getMathml()), N(r)
          if (1 === t.mathml.length)
            return (
              n.Debugger.getInstance().output('Walktree Case 0'),
              (r = t.mathml[0]),
              u.setAttributes(r, t),
              t.childNodes.length &&
                (n.Debugger.getInstance().output('Walktree Case 0.1'),
                t.childNodes.forEach(function (t) {
                  'empty' === t.type && r.appendChild(h(t))
                })),
              N(r)
            )
          const o = t.contentNodes.map(R)
          B(t, o)
          const i = t.childNodes.map(h),
            s = l.SemanticSkeleton.combineContentChildren(t, o, i)
          if (((r = t.mathmlTree), null === r)) n.Debugger.getInstance().output('Walktree Case 1'), (r = f(s, t))
          else {
            const t = A(s)
            n.Debugger.getInstance().output('Walktree Case 2'), t ? (n.Debugger.getInstance().output('Walktree Case 2.1'), (r = t.parentNode)) : (n.Debugger.getInstance().output('Walktree Case 2.2'), (r = D(r)))
          }
          return (r = k(r)), v(r, s, t), u.setAttributes(r, t), N(r)
        }
        function f(t, e) {
          const r = x(t)
          let i = r.node
          const s = r.type
          if (s !== O.VALID || !c.hasEmptyTag(i))
            if ((n.Debugger.getInstance().output('Walktree Case 1.1'), (i = o.createElement('mrow')), s === O.PRUNED)) n.Debugger.getInstance().output('Walktree Case 1.1.0'), (i = d(i, r.node, t))
            else if (t[0]) {
              n.Debugger.getInstance().output('Walktree Case 1.1.1')
              const e = A(t),
                r = y(e.parentNode, t)
              o.replaceNode(e, i),
                r.forEach(function (t) {
                  i.appendChild(t)
                })
            }
          return e.mathmlTree || (e.mathmlTree = i), i
        }
        function d(t, e, r) {
          let i = w(e)
          if (c.hasMathTag(i)) {
            n.Debugger.getInstance().output('Walktree Case 1.1.0.0'),
              m(i, t),
              o.toArray(i.childNodes).forEach(function (e) {
                t.appendChild(e)
              })
            const e = t
            ;(t = i), (i = e)
          }
          const s = r.indexOf(e)
          return (
            (r[s] = i),
            o.replaceNode(i, t),
            t.appendChild(i),
            r.forEach(function (e) {
              t.appendChild(e)
            }),
            t
          )
        }
        function m(t, e) {
          for (const r of u.EnrichAttributes) t.hasAttribute(r) && (e.setAttribute(r, t.getAttribute(r)), t.removeAttribute(r))
        }
        function y(t, e) {
          const r = o.toArray(t.childNodes)
          let n = 1 / 0,
            i = -1 / 0
          return (
            e.forEach(function (t) {
              const e = r.indexOf(t)
              ;-1 !== e && ((n = Math.min(n, e)), (i = Math.max(i, e)))
            }),
            r.slice(n, i + 1)
          )
        }
        function g(t, e, r) {
          const n = []
          let i = o.toArray(t.childNodes),
            s = !1
          for (; i.length; ) {
            const t = i.shift()
            if (t.hasAttribute(u.Attribute.TYPE)) {
              n.push(t)
              continue
            }
            const e = b(t)
            0 !== e.length && (1 !== e.length ? (s ? t.setAttribute('AuxiliaryImplicit', !0) : (s = !0), (i = e.concat(i))) : n.push(t))
          }
          const a = [],
            l = r.childNodes.map(function (t) {
              return t.mathmlTree
            })
          for (; l.length; ) {
            const t = l.pop()
            if (t) {
              if (-1 !== n.indexOf(t)) break
              ;-1 !== e.indexOf(t) && a.unshift(t)
            }
          }
          return n.concat(a)
        }
        function b(t) {
          const e = []
          let r = o.toArray(t.childNodes)
          for (; r.length; ) {
            const t = r.shift()
            t.nodeType === o.NodeType.ELEMENT_NODE && (t.hasAttribute(u.Attribute.TYPE) ? e.push(t) : (r = o.toArray(t.childNodes).concat(r)))
          }
          return e
        }
        function v(t, e, r) {
          const n = 'implicit' === r.role && a.flags.combine_juxtaposition ? g(t, e, r) : o.toArray(t.childNodes)
          if (!n.length)
            return void e.forEach(function (e) {
              t.appendChild(e)
            })
          let i = 0
          for (; e.length; ) {
            const r = e[0]
            n[i] === r || M(n[i], r) ? (e.shift(), i++) : n[i] && -1 === e.indexOf(n[i]) ? i++ : (S(r, t) || _(t, n[i], r), e.shift())
          }
        }
        function _(t, e, r) {
          if (!e) return void t.insertBefore(r, null)
          let n = e,
            o = P(n)
          for (; o && o.firstChild === n && !n.hasAttribute('AuxiliaryImplicit') && o !== t; ) (n = o), (o = P(n))
          o && (o.insertBefore(r, n), n.removeAttribute('AuxiliaryImplicit'))
        }
        function S(t, e) {
          if (!t) return !1
          do {
            if ((t = t.parentNode) === e) return !0
          } while (t)
          return !1
        }
        function M(t, e) {
          const r = s.functionApplication()
          if (t && e && t.textContent && e.textContent && t.textContent === r && e.textContent === r && 'true' === e.getAttribute(u.Attribute.ADDED)) {
            for (let r, n = 0; (r = t.attributes[n]); n++) e.hasAttribute(r.nodeName) || e.setAttribute(r.nodeName, r.nodeValue)
            return o.replaceNode(t, e), !0
          }
          return !1
        }
        var O
        function x(t) {
          const e = A(t)
          if (!e) return { type: O.INVALID, node: null }
          const r = A(t.slice().reverse())
          if (e === r) return { type: O.VALID, node: e }
          const n = C(e),
            o = E(n, t),
            i = C(r, function (t) {
              return -1 !== o.indexOf(t)
            }),
            s = i[0],
            a = o.indexOf(s)
          return -1 === a ? { type: O.INVALID, node: null } : { type: o.length !== n.length ? O.PRUNED : T(o[a + 1], i[1]) ? O.VALID : O.INVALID, node: s }
        }
        function E(t, e) {
          let r = 0
          for (; t[r] && -1 === e.indexOf(t[r]); ) r++
          return t.slice(0, r + 1)
        }
        function A(t) {
          let e = 0,
            r = null
          for (; !r && e < t.length; ) t[e].parentNode && (r = t[e]), e++
          return r
        }
        function C(t, e) {
          const r = e || ((t) => !1),
            n = [t]
          for (; !r(t) && !c.hasMathTag(t) && t.parentNode; ) (t = P(t)), n.unshift(t)
          return n
        }
        function T(t, e) {
          return !(!t || !e || t.previousSibling || e.nextSibling)
        }
        function N(t) {
          for (; !c.hasMathTag(t) && L(t); ) t = P(t)
          return t
        }
        function w(t) {
          const e = o.toArray(t.childNodes)
          if (!e) return t
          const r = e.filter(function (t) {
            return t.nodeType === o.NodeType.ELEMENT_NODE && !c.hasIgnoreTag(t)
          })
          return 1 === r.length && c.hasEmptyTag(r[0]) && !r[0].hasAttribute(u.Attribute.TYPE) ? w(r[0]) : t
        }
        function L(t) {
          const e = P(t)
          return (
            !(!e || !c.hasEmptyTag(e)) &&
            o.toArray(e.childNodes).every(function (e) {
              return e === t || I(e)
            })
          )
        }
        function I(t) {
          if (t.nodeType !== o.NodeType.ELEMENT_NODE) return !0
          if (!t || c.hasIgnoreTag(t)) return !0
          const e = o.toArray(t.childNodes)
          return !((!c.hasEmptyTag(t) && e.length) || c.hasDisplayTag(t) || t.hasAttribute(u.Attribute.TYPE) || c.isOrphanedGlyph(t)) && o.toArray(t.childNodes).every(I)
        }
        function P(t) {
          return t.parentNode
        }
        function R(t) {
          if (t.mathml.length) return h(t)
          const r = e.SETTINGS.implicit ? j(t) : o.createElement('mrow')
          return (t.mathml = [r]), r
        }
        function k(t) {
          if ('MFENCED' !== o.tagName(t)) return t
          const e = o.createElement('mrow')
          for (let r, n = 0; (r = t.attributes[n]); n++) -1 === ['open', 'close', 'separators'].indexOf(r.name) && e.setAttribute(r.name, r.value)
          return (
            o.toArray(t.childNodes).forEach(function (t) {
              e.appendChild(t)
            }),
            o.replaceNode(t, e),
            e
          )
        }
        function j(t) {
          const e = o.createElement('mo'),
            r = o.createTextNode(t.textContent)
          return e.appendChild(r), u.setAttributes(e, t), e.setAttribute(u.Attribute.ADDED, 'true'), e
        }
        function B(t, e) {
          const r = t.type + (t.textContent ? ',' + t.textContent : '')
          e.forEach(function (t) {
            D(t).setAttribute(u.Attribute.OPERATOR, r)
          })
        }
        function D(t) {
          const e = o.toArray(t.childNodes)
          if (!e) return t
          const r = e.filter(function (t) {
              return !I(t)
            }),
            n = []
          for (let t, e = 0; (t = r[e]); e++)
            if (c.hasEmptyTag(t)) {
              const e = D(t)
              e && e !== t && n.push(e)
            } else n.push(t)
          return 1 === n.length ? n[0] : t
        }
        function F(t, e, r, n) {
          const o = n || !1
          H(t, 'Original MathML', o), H(r, 'Semantic Tree', o), H(e, 'Semantically enriched MathML', o)
        }
        function H(t, e, r) {
          const n = o.formatXml(t.toString())
          r ? console.info(e + ':\n```html\n' + u.removeAttributePrefix(n) + '\n```\n') : console.info(n)
        }
        ;(e.SETTINGS = { collapsed: !0, implicit: !0 }),
          (e.enrich = function (t, e) {
            const r = o.cloneNode(t)
            return (
              h(e.root),
              i.default.getInstance().structure && t.setAttribute(u.Attribute.STRUCTURE, l.SemanticSkeleton.fromStructure(t, e).toString()),
              n.Debugger.getInstance().generateOutput(function () {
                return F(r, t, e, !0), []
              }),
              t
            )
          }),
          (e.walkTree = h),
          (e.introduceNewLayer = f),
          (e.introduceLayerAboveLca = d),
          (e.moveSemanticAttributes_ = m),
          (e.childrenSubset_ = y),
          (e.collateChildNodes_ = g),
          (e.collectChildNodes_ = b),
          (e.mergeChildren_ = v),
          (e.insertNewChild_ = _),
          (e.isDescendant_ = S),
          (e.functionApplication_ = M),
          (function (t) {
            ;(t.VALID = 'valid'), (t.INVALID = 'invalid'), (t.PRUNED = 'pruned')
          })((O = e.lcaType || (e.lcaType = {}))),
          (e.mathmlLca_ = x),
          (e.prunePath_ = E),
          (e.attachedElement_ = A),
          (e.pathToRoot_ = C),
          (e.validLca_ = T),
          (e.ascendNewNode = N),
          (e.descendNode_ = w),
          (e.unitChild_ = L),
          (e.isIgnorable_ = I),
          (e.parentNode_ = P),
          (e.addCollapsedAttribute = function (t, e) {
            const r = new l.SemanticSkeleton(e)
            t.setAttribute(u.Attribute.COLLAPSED, r.toString())
          }),
          (e.cloneContentNode = R),
          (e.rewriteMfenced = k),
          (e.createInvisibleOperator_ = j),
          (e.setOperatorAttribute_ = B),
          (e.getInnerNode = D),
          (e.formattedOutput = F),
          (e.formattedOutput_ = H),
          (e.collapsePunctuated = function (t, e) {
            const r = !!e,
              n = e || [],
              o = t.parent,
              i = t.contentNodes.map(function (t) {
                return t.id
              })
            i.unshift('c')
            const s = [t.id, i]
            for (let e, i = 0; (e = t.childNodes[i]); i++) {
              const t = h(e)
              n.push(t)
              const i = D(t)
              o && !r && i.setAttribute(u.Attribute.PARENT, o.id.toString()), s.push(e.id)
            }
            return s
          }),
          (e.printNodeList__ = function (t, e) {
            console.info(t),
              o.toArray(e).forEach(function (t) {
                console.info(t.toString())
              }),
              console.info('<<<<<<<<<<<<<<<<<')
          })
      },
      5105: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractHighlighter = void 0)
        const n = r(5274),
          o = r(2298)
        class i {
          constructor() {
            ;(this.color = null), (this.mactionName = ''), (this.currentHighlights = [])
          }
          highlight(t) {
            this.currentHighlights.push(
              t.map((t) => {
                const e = this.highlightNode(t)
                return this.setHighlighted(t), e
              })
            )
          }
          highlightAll(t) {
            const e = this.getMactionNodes(t)
            for (let t, r = 0; (t = e[r]); r++) this.highlight([t])
          }
          unhighlight() {
            const t = this.currentHighlights.pop()
            t &&
              t.forEach((t) => {
                this.isHighlighted(t.node) && (this.unhighlightNode(t), this.unsetHighlighted(t.node))
              })
          }
          unhighlightAll() {
            for (; this.currentHighlights.length > 0; ) this.unhighlight()
          }
          setColor(t) {
            this.color = t
          }
          colorString() {
            return this.color.rgba()
          }
          addEvents(t, e) {
            const r = this.getMactionNodes(t)
            for (let t, n = 0; (t = r[n]); n++) for (const r in e) t.addEventListener(r, e[r])
          }
          getMactionNodes(t) {
            return Array.from(t.getElementsByClassName(this.mactionName))
          }
          isMactionNode(t) {
            const e = t.className || t.getAttribute('class')
            return !!e && !!e.match(new RegExp(this.mactionName))
          }
          isHighlighted(t) {
            return t.hasAttribute(i.ATTR)
          }
          setHighlighted(t) {
            t.setAttribute(i.ATTR, 'true')
          }
          unsetHighlighted(t) {
            t.removeAttribute(i.ATTR)
          }
          colorizeAll(t) {
            n.evalXPath(`.//*[@${o.Attribute.ID}]`, t).forEach((t) => this.colorize(t))
          }
          uncolorizeAll(t) {
            n.evalXPath(`.//*[@${o.Attribute.ID}]`, t).forEach((t) => this.uncolorize(t))
          }
          colorize(t) {
            const e = (0, o.addPrefix)('foreground')
            t.hasAttribute(e) && (t.setAttribute(e + '-old', t.style.color), (t.style.color = t.getAttribute(e)))
          }
          uncolorize(t) {
            const e = (0, o.addPrefix)('foreground') + '-old'
            t.hasAttribute(e) && (t.style.color = t.getAttribute(e))
          }
        }
        ;(e.AbstractHighlighter = i), (i.ATTR = 'sre-highlight')
      },
      6937: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ChtmlHighlighter = void 0)
        const n = r(933)
        class o extends n.CssHighlighter {
          constructor() {
            super()
          }
          isMactionNode(t) {
            return t.tagName.toUpperCase() === this.mactionName.toUpperCase()
          }
          getMactionNodes(t) {
            return Array.from(t.getElementsByTagName(this.mactionName))
          }
        }
        e.ChtmlHighlighter = o
      },
      8396: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ContrastPicker = e.ColorPicker = void 0)
        const r = {
          red: { red: 255, green: 0, blue: 0 },
          green: { red: 0, green: 255, blue: 0 },
          blue: { red: 0, green: 0, blue: 255 },
          yellow: { red: 255, green: 255, blue: 0 },
          cyan: { red: 0, green: 255, blue: 255 },
          magenta: { red: 255, green: 0, blue: 255 },
          white: { red: 255, green: 255, blue: 255 },
          black: { red: 0, green: 0, blue: 0 }
        }
        function n(t, e) {
          const n = t || { color: e }
          let o = Object.prototype.hasOwnProperty.call(n, 'color') ? r[n.color] : n
          return (
            o || (o = r[e]),
            (o.alpha = Object.prototype.hasOwnProperty.call(n, 'alpha') ? n.alpha : 1),
            (function (t) {
              const e = (t) => ((t = Math.max(t, 0)), (t = Math.min(255, t)), Math.round(t))
              return (t.red = e(t.red)), (t.green = e(t.green)), (t.blue = e(t.blue)), (t.alpha = Math.max(t.alpha, 0)), (t.alpha = Math.min(1, t.alpha)), t
            })(o)
          )
        }
        class o {
          constructor(t, e) {
            ;(this.foreground = n(e, o.DEFAULT_FOREGROUND_)), (this.background = n(t, o.DEFAULT_BACKGROUND_))
          }
          static toHex(t) {
            const e = t.toString(16)
            return 1 === e.length ? '0' + e : e
          }
          rgba() {
            const t = function (t) {
              return 'rgba(' + t.red + ',' + t.green + ',' + t.blue + ',' + t.alpha + ')'
            }
            return { background: t(this.background), foreground: t(this.foreground) }
          }
          rgb() {
            const t = function (t) {
              return 'rgb(' + t.red + ',' + t.green + ',' + t.blue + ')'
            }
            return { background: t(this.background), alphaback: this.background.alpha.toString(), foreground: t(this.foreground), alphafore: this.foreground.alpha.toString() }
          }
          hex() {
            const t = function (t) {
              return '#' + o.toHex(t.red) + o.toHex(t.green) + o.toHex(t.blue)
            }
            return { background: t(this.background), alphaback: this.background.alpha.toString(), foreground: t(this.foreground), alphafore: this.foreground.alpha.toString() }
          }
        }
        ;(e.ColorPicker = o), (o.DEFAULT_BACKGROUND_ = 'blue'), (o.DEFAULT_FOREGROUND_ = 'black')
        e.ContrastPicker = class {
          constructor() {
            ;(this.hue = 10), (this.sat = 100), (this.light = 50), (this.incr = 50)
          }
          generate() {
            return (
              (e = (function (t, e, r) {
                ;(e = e > 1 ? e / 100 : e), (r = r > 1 ? r / 100 : r)
                const n = (1 - Math.abs(2 * r - 1)) * e,
                  o = n * (1 - Math.abs(((t / 60) % 2) - 1)),
                  i = r - n / 2
                let s = 0,
                  a = 0,
                  l = 0
                return (
                  0 <= t && t < 60
                    ? ([s, a, l] = [n, o, 0])
                    : 60 <= t && t < 120
                    ? ([s, a, l] = [o, n, 0])
                    : 120 <= t && t < 180
                    ? ([s, a, l] = [0, n, o])
                    : 180 <= t && t < 240
                    ? ([s, a, l] = [0, o, n])
                    : 240 <= t && t < 300
                    ? ([s, a, l] = [o, 0, n])
                    : 300 <= t && t < 360 && ([s, a, l] = [n, 0, o]),
                  { red: s + i, green: a + i, blue: l + i }
                )
              })(this.hue, this.sat, this.light)),
              'rgb(' + (t = { red: Math.round(255 * e.red), green: Math.round(255 * e.green), blue: Math.round(255 * e.blue) }).red + ',' + t.green + ',' + t.blue + ')'
            )
            var t, e
          }
          increment() {
            this.hue = (this.hue + this.incr) % 360
          }
        }
      },
      933: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CssHighlighter = void 0)
        const n = r(5105)
        class o extends n.AbstractHighlighter {
          constructor() {
            super(), (this.mactionName = 'mjx-maction')
          }
          highlightNode(t) {
            const e = { node: t, background: t.style.backgroundColor, foreground: t.style.color },
              r = this.colorString()
            return (t.style.backgroundColor = r.background), (t.style.color = r.foreground), e
          }
          unhighlightNode(t) {
            ;(t.node.style.backgroundColor = t.background), (t.node.style.color = t.foreground)
          }
        }
        e.CssHighlighter = o
      },
      3090: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.highlighterMapping_ = e.addEvents = e.highlighter = void 0)
        const n = r(6937),
          o = r(8396),
          i = r(933),
          s = r(2598),
          a = r(4500),
          l = r(7071),
          c = r(4346),
          u = r(2222)
        ;(e.highlighter = function (t, r, n) {
          const i = new o.ColorPicker(t, r),
            s = 'NativeMML' === n.renderer && 'Safari' === n.browser ? 'MML-CSS' : 'SVG' === n.renderer && 'v3' === n.browser ? 'SVG-V3' : n.renderer,
            a = new (e.highlighterMapping_[s] || e.highlighterMapping_.NativeMML)()
          return a.setColor(i), a
        }),
          (e.addEvents = function (t, r, n) {
            const o = e.highlighterMapping_[n.renderer]
            o && new o().addEvents(t, r)
          }),
          (e.highlighterMapping_ = { SVG: c.SvgHighlighter, 'SVG-V3': u.SvgV3Highlighter, NativeMML: l.MmlHighlighter, 'HTML-CSS': s.HtmlHighlighter, 'MML-CSS': a.MmlCssHighlighter, CommonHTML: i.CssHighlighter, CHTML: n.ChtmlHighlighter })
      },
      2598: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.HtmlHighlighter = void 0)
        const n = r(5740),
          o = r(5105)
        class i extends o.AbstractHighlighter {
          constructor() {
            super(), (this.mactionName = 'maction')
          }
          highlightNode(t) {
            const e = { node: t, foreground: t.style.color, position: t.style.position },
              r = this.color.rgb()
            ;(t.style.color = r.foreground), (t.style.position = 'relative')
            const o = t.bbox
            if (o && o.w) {
              const i = 0.05,
                s = 0,
                a = n.createElement('span'),
                l = parseFloat(t.style.paddingLeft || '0')
              ;(a.style.backgroundColor = r.background),
                (a.style.opacity = r.alphaback.toString()),
                (a.style.display = 'inline-block'),
                (a.style.height = o.h + o.d + 2 * i + 'em'),
                (a.style.verticalAlign = -o.d + 'em'),
                (a.style.marginTop = a.style.marginBottom = -i + 'em'),
                (a.style.width = o.w + 2 * s + 'em'),
                (a.style.marginLeft = l - s + 'em'),
                (a.style.marginRight = -o.w - s - l + 'em'),
                t.parentNode.insertBefore(a, t),
                (e.box = a)
            }
            return e
          }
          unhighlightNode(t) {
            const e = t.node
            ;(e.style.color = t.foreground), (e.style.position = t.position), t.box && t.box.parentNode.removeChild(t.box)
          }
        }
        e.HtmlHighlighter = i
      },
      4500: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlCssHighlighter = void 0)
        const n = r(933)
        class o extends n.CssHighlighter {
          constructor() {
            super(), (this.mactionName = 'maction')
          }
          getMactionNodes(t) {
            return Array.from(t.getElementsByTagName(this.mactionName))
          }
          isMactionNode(t) {
            return t.tagName === this.mactionName
          }
        }
        e.MmlCssHighlighter = o
      },
      7071: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MmlHighlighter = void 0)
        const n = r(5105)
        class o extends n.AbstractHighlighter {
          constructor() {
            super(), (this.mactionName = 'maction')
          }
          highlightNode(t) {
            let e = t.getAttribute('style')
            return (e += ';background-color: ' + this.colorString().background), (e += ';color: ' + this.colorString().foreground), t.setAttribute('style', e), { node: t }
          }
          unhighlightNode(t) {
            let e = t.node.getAttribute('style')
            ;(e = e.replace(';background-color: ' + this.colorString().background, '')), (e = e.replace(';color: ' + this.colorString().foreground, '')), t.node.setAttribute('style', e)
          }
          colorString() {
            return this.color.rgba()
          }
          getMactionNodes(t) {
            return Array.from(t.getElementsByTagName(this.mactionName))
          }
          isMactionNode(t) {
            return t.tagName === this.mactionName
          }
        }
        e.MmlHighlighter = o
      },
      4346: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SvgHighlighter = void 0)
        const n = r(5740),
          o = r(5105)
        class i extends o.AbstractHighlighter {
          constructor() {
            super(), (this.mactionName = 'mjx-svg-maction')
          }
          highlightNode(t) {
            let e
            if (this.isHighlighted(t)) return (e = { node: t.previousSibling || t, background: t.style.backgroundColor, foreground: t.style.color }), e
            if ('svg' === t.tagName) {
              const e = { node: t, background: t.style.backgroundColor, foreground: t.style.color }
              return (t.style.backgroundColor = this.colorString().background), (t.style.color = this.colorString().foreground), e
            }
            const r = n.createElementNS('http://www.w3.org/2000/svg', 'rect')
            let i
            if ('use' === t.nodeName) {
              const e = n.createElementNS('http://www.w3.org/2000/svg', 'g')
              t.parentNode.insertBefore(e, t), e.appendChild(t), (i = e.getBBox()), e.parentNode.replaceChild(t, e)
            } else i = t.getBBox()
            r.setAttribute('x', (i.x - 40).toString()), r.setAttribute('y', (i.y - 40).toString()), r.setAttribute('width', (i.width + 80).toString()), r.setAttribute('height', (i.height + 80).toString())
            const s = t.getAttribute('transform')
            return (
              s && r.setAttribute('transform', s),
              r.setAttribute('fill', this.colorString().background),
              r.setAttribute(o.AbstractHighlighter.ATTR, 'true'),
              t.parentNode.insertBefore(r, t),
              (e = { node: r, foreground: t.getAttribute('fill') }),
              t.setAttribute('fill', this.colorString().foreground),
              e
            )
          }
          setHighlighted(t) {
            'svg' === t.tagName && super.setHighlighted(t)
          }
          unhighlightNode(t) {
            if ('background' in t) return (t.node.style.backgroundColor = t.background), void (t.node.style.color = t.foreground)
            t.foreground ? t.node.nextSibling.setAttribute('fill', t.foreground) : t.node.nextSibling.removeAttribute('fill'), t.node.parentNode.removeChild(t.node)
          }
          isMactionNode(t) {
            let e = t.className || t.getAttribute('class')
            return (e = void 0 !== e.baseVal ? e.baseVal : e), !!e && !!e.match(new RegExp(this.mactionName))
          }
        }
        e.SvgHighlighter = i
      },
      2222: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SvgV3Highlighter = void 0)
        const n = r(5740),
          o = r(5274),
          i = r(5105),
          s = r(8396),
          a = r(4346)
        class l extends a.SvgHighlighter {
          constructor() {
            super(), (this.mactionName = 'maction')
          }
          highlightNode(t) {
            let e
            if (this.isHighlighted(t)) return (e = { node: t, background: this.colorString().background, foreground: this.colorString().foreground }), e
            if ('svg' === t.tagName || 'MJX-CONTAINER' === t.tagName)
              return (e = { node: t, background: t.style.backgroundColor, foreground: t.style.color }), (t.style.backgroundColor = this.colorString().background), (t.style.color = this.colorString().foreground), e
            const r = n.createElementNS('http://www.w3.org/2000/svg', 'rect')
            r.setAttribute('sre-highlighter-added', 'true')
            const o = t.getBBox()
            r.setAttribute('x', (o.x - 40).toString()), r.setAttribute('y', (o.y - 40).toString()), r.setAttribute('width', (o.width + 80).toString()), r.setAttribute('height', (o.height + 80).toString())
            const a = t.getAttribute('transform')
            if (
              (a && r.setAttribute('transform', a),
              r.setAttribute('fill', this.colorString().background),
              t.setAttribute(i.AbstractHighlighter.ATTR, 'true'),
              t.parentNode.insertBefore(r, t),
              (e = { node: t, foreground: t.getAttribute('fill') }),
              'rect' === t.nodeName)
            ) {
              const e = new s.ColorPicker({ alpha: 0, color: 'black' })
              t.setAttribute('fill', e.rgba().foreground)
            } else t.setAttribute('fill', this.colorString().foreground)
            return e
          }
          unhighlightNode(t) {
            const e = t.node.previousSibling
            if (e && e.hasAttribute('sre-highlighter-added')) return t.foreground ? t.node.setAttribute('fill', t.foreground) : t.node.removeAttribute('fill'), void t.node.parentNode.removeChild(e)
            ;(t.node.style.backgroundColor = t.background), (t.node.style.color = t.foreground)
          }
          isMactionNode(t) {
            return t.getAttribute('data-mml-node') === this.mactionName
          }
          getMactionNodes(t) {
            return Array.from(o.evalXPath(`.//*[@data-mml-node="${this.mactionName}"]`, t))
          }
        }
        e.SvgV3Highlighter = l
      },
      7222: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.StaticTrieNode = e.AbstractTrieNode = void 0)
        const n = r(2057),
          o = r(4391)
        class i {
          constructor(t, e) {
            ;(this.constraint = t), (this.test = e), (this.children_ = {}), (this.kind = o.TrieNodeKind.ROOT)
          }
          getConstraint() {
            return this.constraint
          }
          getKind() {
            return this.kind
          }
          applyTest(t) {
            return this.test(t)
          }
          addChild(t) {
            const e = t.getConstraint(),
              r = this.children_[e]
            return (this.children_[e] = t), r
          }
          getChild(t) {
            return this.children_[t]
          }
          getChildren() {
            const t = []
            for (const e in this.children_) t.push(this.children_[e])
            return t
          }
          findChildren(t) {
            const e = []
            for (const r in this.children_) {
              const n = this.children_[r]
              n.applyTest(t) && e.push(n)
            }
            return e
          }
          removeChild(t) {
            delete this.children_[t]
          }
          toString() {
            return this.constraint
          }
        }
        e.AbstractTrieNode = i
        e.StaticTrieNode = class extends i {
          constructor(t, e) {
            super(t, e), (this.rule_ = null), (this.kind = o.TrieNodeKind.STATIC)
          }
          getRule() {
            return this.rule_
          }
          setRule(t) {
            this.rule_ && n.Debugger.getInstance().output('Replacing rule ' + this.rule_ + ' with ' + t), (this.rule_ = t)
          }
          toString() {
            return this.getRule() ? this.constraint + '\n==> ' + this.getRule().action : this.constraint
          }
        }
      },
      4508: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Trie = void 0)
        const n = r(4391),
          o = r(9701)
        class i {
          constructor() {
            this.root = (0, o.getNode)(n.TrieNodeKind.ROOT, '', null)
          }
          static collectRules_(t) {
            const e = []
            let r = [t]
            for (; r.length; ) {
              const t = r.shift()
              if (t.getKind() === n.TrieNodeKind.QUERY || t.getKind() === n.TrieNodeKind.BOOLEAN) {
                const r = t.getRule()
                r && e.unshift(r)
              }
              r = r.concat(t.getChildren())
            }
            return e
          }
          static printWithDepth_(t, e, r) {
            r += new Array(e + 2).join(e.toString()) + ': ' + t.toString() + '\n'
            const n = t.getChildren()
            for (let t, o = 0; (t = n[o]); o++) r = i.printWithDepth_(t, e + 1, r)
            return r
          }
          static order_(t) {
            const e = t.getChildren()
            if (!e.length) return 0
            const r = Math.max.apply(null, e.map(i.order_))
            return Math.max(e.length, r)
          }
          addRule(t) {
            let e = this.root
            const r = t.context,
              o = t.dynamicCstr.getValues()
            for (let t = 0, i = o.length; t < i; t++) e = this.addNode_(e, o[t], n.TrieNodeKind.DYNAMIC, r)
            e = this.addNode_(e, t.precondition.query, n.TrieNodeKind.QUERY, r)
            const i = t.precondition.constraints
            for (let t = 0, o = i.length; t < o; t++) e = this.addNode_(e, i[t], n.TrieNodeKind.BOOLEAN, r)
            e.setRule(t)
          }
          lookupRules(t, e) {
            let r = [this.root]
            const o = []
            for (; e.length; ) {
              const t = e.shift(),
                o = []
              for (; r.length; ) {
                r.shift()
                  .getChildren()
                  .forEach((e) => {
                    ;(e.getKind() === n.TrieNodeKind.DYNAMIC && -1 === t.indexOf(e.getConstraint())) || o.push(e)
                  })
              }
              r = o.slice()
            }
            for (; r.length; ) {
              const e = r.shift()
              if (e.getRule) {
                const t = e.getRule()
                t && o.push(t)
              }
              const n = e.findChildren(t)
              r = r.concat(n)
            }
            return o
          }
          hasSubtrie(t) {
            let e = this.root
            for (let r = 0, n = t.length; r < n; r++) {
              const n = t[r]
              if (((e = e.getChild(n)), !e)) return !1
            }
            return !0
          }
          toString() {
            return i.printWithDepth_(this.root, 0, '')
          }
          collectRules() {
            return i.collectRules_(this.root)
          }
          order() {
            return i.order_(this.root)
          }
          enumerate(t) {
            return this.enumerate_(this.root, t)
          }
          byConstraint(t) {
            let e = this.root
            for (; t.length && e; ) {
              const r = t.shift()
              e = e.getChild(r)
            }
            return e || null
          }
          enumerate_(t, e) {
            e = e || {}
            const r = t.getChildren()
            for (let t, o = 0; (t = r[o]); o++) t.kind === n.TrieNodeKind.DYNAMIC && (e[t.getConstraint()] = this.enumerate_(t, e[t.getConstraint()]))
            return e
          }
          addNode_(t, e, r, n) {
            let i = t.getChild(e)
            return i || ((i = (0, o.getNode)(r, e, n)), t.addChild(i)), i
          }
        }
        e.Trie = i
      },
      4391: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.TrieNodeKind = void 0),
          (function (t) {
            ;(t.ROOT = 'root'), (t.DYNAMIC = 'dynamic'), (t.QUERY = 'query'), (t.BOOLEAN = 'boolean'), (t.STATIC = 'static')
          })(e.TrieNodeKind || (e.TrieNodeKind = {}))
      },
      9701: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BooleanTrieNode = e.QueryTrieNode = e.constraintTest_ = e.DynamicTrieNode = e.RootTrieNode = e.getNode = void 0)
        const n = r(5740),
          o = r(5274),
          i = r(2105),
          s = r(2780),
          a = r(7222),
          l = r(7222),
          c = r(4391)
        e.getNode = function (t, e, r) {
          switch (t) {
            case c.TrieNodeKind.ROOT:
              return new u()
            case c.TrieNodeKind.DYNAMIC:
              return new p(e)
            case c.TrieNodeKind.QUERY:
              return new d(e, r)
            case c.TrieNodeKind.BOOLEAN:
              return new m(e, r)
            default:
              return null
          }
        }
        class u extends a.AbstractTrieNode {
          constructor() {
            super('', () => !0), (this.kind = c.TrieNodeKind.ROOT)
          }
        }
        e.RootTrieNode = u
        class p extends a.AbstractTrieNode {
          constructor(t) {
            super(t, (e) => e === t), (this.kind = c.TrieNodeKind.DYNAMIC)
          }
        }
        e.DynamicTrieNode = p
        const h = { '=': (t, e) => t === e, '!=': (t, e) => t !== e, '<': (t, e) => t < e, '>': (t, e) => t > e, '<=': (t, e) => t <= e, '>=': (t, e) => t >= e }
        function f(t) {
          if (t.match(/^self::\*$/)) return (t) => !0
          if (t.match(/^self::\w+$/)) {
            const e = t.slice(6).toUpperCase()
            return (t) => t.tagName && n.tagName(t) === e
          }
          if (t.match(/^self::\w+:\w+$/)) {
            const e = t.split(':'),
              r = o.resolveNameSpace(e[2])
            if (!r) return null
            const n = e[3].toUpperCase()
            return (t) => t.localName && t.localName.toUpperCase() === n && t.namespaceURI === r
          }
          if (t.match(/^@\w+$/)) {
            const e = t.slice(1)
            return (t) => t.hasAttribute && t.hasAttribute(e)
          }
          if (t.match(/^@\w+="[\w\d ]+"$/)) {
            const e = t.split('='),
              r = e[0].slice(1),
              n = e[1].slice(1, -1)
            return (t) => t.hasAttribute && t.hasAttribute(r) && t.getAttribute(r) === n
          }
          if (t.match(/^@\w+!="[\w\d ]+"$/)) {
            const e = t.split('!='),
              r = e[0].slice(1),
              n = e[1].slice(1, -1)
            return (t) => !t.hasAttribute || !t.hasAttribute(r) || t.getAttribute(r) !== n
          }
          if (t.match(/^contains\(\s*@grammar\s*,\s*"[\w\d ]+"\s*\)$/)) {
            const e = t.split('"')[1]
            return (t) => !!i.Grammar.getInstance().getParameter(e)
          }
          if (t.match(/^not\(\s*contains\(\s*@grammar\s*,\s*"[\w\d ]+"\s*\)\s*\)$/)) {
            const e = t.split('"')[1]
            return (t) => !i.Grammar.getInstance().getParameter(e)
          }
          if (t.match(/^name\(\.\.\/\.\.\)="\w+"$/)) {
            const e = t.split('"')[1].toUpperCase()
            return (t) => {
              var r, o
              return (null === (o = null === (r = t.parentNode) || void 0 === r ? void 0 : r.parentNode) || void 0 === o ? void 0 : o.tagName) && n.tagName(t.parentNode.parentNode) === e
            }
          }
          if (t.match(/^count\(preceding-sibling::\*\)=\d+$/)) {
            const e = t.split('='),
              r = parseInt(e[1], 10)
            return (t) => {
              var e
              return (null === (e = t.parentNode) || void 0 === e ? void 0 : e.childNodes[r]) === t
            }
          }
          if (t.match(/^.+\[@category!?=".+"\]$/)) {
            let [, e, r, n] = t.match(/^(.+)\[@category(!?=)"(.+)"\]$/)
            const i = n.match(/^unit:(.+)$/)
            let a = ''
            return (
              i && ((n = i[1]), (a = ':unit')),
              (t) => {
                const i = o.evalXPath(e, t)[0]
                if (i) {
                  const t = s.lookupCategory(i.textContent + a)
                  return '=' === r ? t === n : t !== n
                }
                return !1
              }
            )
          }
          if (t.match(/^string-length\(.+\)\W+\d+/)) {
            const [, e, r, n] = t.match(/^string-length\((.+)\)(\W+)(\d+)/),
              i = h[r] || h['='],
              s = parseInt(n, 10)
            return (t) => {
              const r = o.evalXPath(e, t)[0]
              return !!r && i(Array.from(r.textContent).length, s)
            }
          }
          return null
        }
        e.constraintTest_ = f
        class d extends l.StaticTrieNode {
          constructor(t, e) {
            super(t, f(t)), (this.context = e), (this.kind = c.TrieNodeKind.QUERY)
          }
          applyTest(t) {
            return this.test ? this.test(t) : this.context.applyQuery(t, this.constraint) === t
          }
        }
        e.QueryTrieNode = d
        class m extends l.StaticTrieNode {
          constructor(t, e) {
            super(t, f(t)), (this.context = e), (this.kind = c.TrieNodeKind.BOOLEAN)
          }
          applyTest(t) {
            return this.test ? this.test(t) : this.context.applyConstraint(t, this.constraint)
          }
        }
        e.BooleanTrieNode = m
      },
      7491: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.completeLocale = e.getLocale = e.setLocale = e.locales = void 0)
        const n = r(5897),
          o = r(1377),
          i = r(2105),
          s = r(4249),
          a = r(8657),
          l = r(173),
          c = r(9393),
          u = r(7978),
          p = r(5540),
          h = r(5218),
          f = r(3887),
          d = r(8384),
          m = r(7206),
          y = r(7734),
          g = r(7264),
          b = r(4356)
        function v() {
          const t = o.Variables.ensureLocale(n.default.getInstance().locale, n.default.getInstance().defaultLocale)
          return (n.default.getInstance().locale = t), e.locales[t]()
        }
        ;(e.locales = { ca: s.ca, da: a.da, de: l.de, en: c.en, es: u.es, fr: p.fr, hi: h.hi, it: f.it, nb: d.nb, nn: y.nn, sv: g.sv, nemeth: m.nemeth }),
          (e.setLocale = function () {
            const t = v()
            if (
              ((function (t) {
                const e = n.default.getInstance().subiso
                ;-1 === t.SUBISO.all.indexOf(e) && (n.default.getInstance().subiso = t.SUBISO.default)
                t.SUBISO.current = n.default.getInstance().subiso
              })(t),
              t)
            ) {
              for (const e of Object.getOwnPropertyNames(t)) b.LOCALE[e] = t[e]
              for (const [e, r] of Object.entries(t.CORRECTIONS)) i.Grammar.getInstance().setCorrection(e, r)
            }
          }),
          (e.getLocale = v),
          (e.completeLocale = function (t) {
            const r = e.locales[t.locale]
            if (!r) return void console.error('Locale ' + t.locale + ' does not exist!')
            const n = t.kind.toUpperCase(),
              o = t.messages
            if (!o) return
            const i = r()
            for (const [t, e] of Object.entries(o)) i[n][t] = e
          })
      },
      4356: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.createLocale = e.LOCALE = void 0)
        const n = r(7549)
        function o() {
          return { FUNCTIONS: (0, n.FUNCTIONS)(), MESSAGES: (0, n.MESSAGES)(), ALPHABETS: (0, n.ALPHABETS)(), NUMBERS: (0, n.NUMBERS)(), COMBINERS: {}, CORRECTIONS: {}, SUBISO: (0, n.SUBISO)() }
        }
        ;(e.LOCALE = o()), (e.createLocale = o)
      },
      2536: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.localeFontCombiner = e.extractString = e.localEnclose = e.localRole = e.localFont = e.combinePostfixIndex = e.nestingToString = void 0)
        const n = r(4356),
          o = r(4977)
        function i(t, e) {
          return void 0 === t ? e : 'string' == typeof t ? t : t[0]
        }
        ;(e.nestingToString = function (t) {
          switch (t) {
            case 1:
              return n.LOCALE.MESSAGES.MS.ONCE || ''
            case 2:
              return n.LOCALE.MESSAGES.MS.TWICE
            default:
              return t.toString()
          }
        }),
          (e.combinePostfixIndex = function (t, e) {
            return t === n.LOCALE.MESSAGES.MS.ROOTINDEX || t === n.LOCALE.MESSAGES.MS.INDEX ? t : t + ' ' + e
          }),
          (e.localFont = function (t) {
            return i(n.LOCALE.MESSAGES.font[t], t)
          }),
          (e.localRole = function (t) {
            return i(n.LOCALE.MESSAGES.role[t], t)
          }),
          (e.localEnclose = function (t) {
            return i(n.LOCALE.MESSAGES.enclose[t], t)
          }),
          (e.extractString = i),
          (e.localeFontCombiner = function (t) {
            return 'string' == typeof t ? { font: t, combiner: n.LOCALE.ALPHABETS.combiner } : { font: t[0], combiner: n.LOCALE.COMBINERS[t[1]] || o.Combiners[t[1]] || n.LOCALE.ALPHABETS.combiner }
          })
      },
      4249: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ca = void 0)
        const n = r(4356),
          o = r(2536),
          i = r(614),
          s = r(4977),
          a = function (t, e, r) {
            return (t = 'sans serif ' + (r ? r + ' ' + t : t)), e ? t + ' ' + e : t
          }
        let l = null
        e.ca = function () {
          return (
            l ||
              (l = (function () {
                const t = (0, n.createLocale)()
                return (
                  (t.NUMBERS = i.default),
                  (t.COMBINERS.sansserif = a),
                  (t.FUNCTIONS.fracNestDepth = (t) => !1),
                  (t.FUNCTIONS.combineRootIndex = o.combinePostfixIndex),
                  (t.FUNCTIONS.combineNestedRadical = (t, e, r) => t + r),
                  (t.FUNCTIONS.fontRegexp = (t) => RegExp('^' + t + ' ')),
                  (t.FUNCTIONS.plural = (t) =>
                    /.*os$/.test(t)
                      ? t + 'sos'
                      : /.*s$/.test(t)
                      ? t + 'os'
                      : /.*ga$/.test(t)
                      ? t.slice(0, -2) + 'gues'
                      : /.*\xe7a$/.test(t)
                      ? t.slice(0, -2) + 'ces'
                      : /.*ca$/.test(t)
                      ? t.slice(0, -2) + 'ques'
                      : /.*ja$/.test(t)
                      ? t.slice(0, -2) + 'ges'
                      : /.*qua$/.test(t)
                      ? t.slice(0, -3) + 'q\xfces'
                      : /.*a$/.test(t)
                      ? t.slice(0, -1) + 'es'
                      : /.*(e|i)$/.test(t)
                      ? t + 'ns'
                      : /.*\xed$/.test(t)
                      ? t.slice(0, -1) + 'ins'
                      : t + 's'),
                  (t.FUNCTIONS.si = (t, e) => (e.match(/^metre/) && (t = t.replace(/a$/, '\xe0').replace(/o$/, '\xf2').replace(/i$/, '\xed')), t + e)),
                  (t.ALPHABETS.combiner = s.Combiners.prefixCombiner),
                  t
                )
              })()),
            l
          )
        }
      },
      8657: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.da = void 0)
        const n = r(4356),
          o = r(2536),
          i = r(3866),
          s = r(4977)
        let a = null
        e.da = function () {
          return (
            a ||
              (a = (function () {
                const t = (0, n.createLocale)()
                return (
                  (t.NUMBERS = i.default),
                  (t.FUNCTIONS.radicalNestDepth = o.nestingToString),
                  (t.FUNCTIONS.fontRegexp = (e) => (e === t.ALPHABETS.capPrefix.default ? RegExp('^' + e + ' ') : RegExp(' ' + e + '$'))),
                  (t.ALPHABETS.combiner = s.Combiners.postfixCombiner),
                  (t.ALPHABETS.digitTrans.default = i.default.numberToWords),
                  t
                )
              })()),
            a
          )
        }
      },
      173: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.de = void 0)
        const n = r(2105),
          o = r(2536),
          i = r(4356),
          s = r(1435),
          a = function (t, e, r) {
            return (
              's' === r &&
                ((e = e
                  .split(' ')
                  .map(function (t) {
                    return t.replace(/s$/, '')
                  })
                  .join(' ')),
                (r = '')),
              (t = r ? r + ' ' + t : t),
              e ? e + ' ' + t : t
            )
          },
          l = function (t, e, r) {
            return (t = r && 's' !== r ? r + ' ' + t : t), e ? t + ' ' + e : t
          }
        let c = null
        e.de = function () {
          return (
            c ||
              (c = (function () {
                const t = (0, i.createLocale)()
                return (
                  (t.NUMBERS = s.default),
                  (t.COMBINERS.germanPostfix = l),
                  (t.ALPHABETS.combiner = a),
                  (t.FUNCTIONS.radicalNestDepth = (e) => (e > 1 ? t.NUMBERS.numberToWords(e) + 'fach' : '')),
                  (t.FUNCTIONS.combineRootIndex = (t, e) => {
                    const r = e ? e + 'wurzel' : ''
                    return t.replace('Wurzel', r)
                  }),
                  (t.FUNCTIONS.combineNestedRadical = (t, e, r) => {
                    const n = (e ? e + ' ' : '') + (t = r.match(/exponent$/) ? t + 'r' : t)
                    return r.match(/ /) ? r.replace(/ /, ' ' + n + ' ') : n + ' ' + r
                  }),
                  (t.FUNCTIONS.fontRegexp = function (t) {
                    return (
                      (t = t
                        .split(' ')
                        .map(function (t) {
                          return t.replace(/s$/, '(|s)')
                        })
                        .join(' ')),
                      new RegExp('((^' + t + ' )|( ' + t + '$))')
                    )
                  }),
                  (t.CORRECTIONS.correctOne = (t) => t.replace(/^eins$/, 'ein')),
                  (t.CORRECTIONS.localFontNumber = (t) =>
                    (0, o.localFont)(t)
                      .split(' ')
                      .map(function (t) {
                        return t.replace(/s$/, '')
                      })
                      .join(' ')),
                  (t.CORRECTIONS.lowercase = (t) => t.toLowerCase()),
                  (t.CORRECTIONS.article = (t) => {
                    const e = n.Grammar.getInstance().getParameter('case'),
                      r = n.Grammar.getInstance().getParameter('plural')
                    return 'dative' === e ? { der: 'dem', die: r ? 'den' : 'der', das: 'dem' }[t] : t
                  }),
                  (t.CORRECTIONS.masculine = (t) => ('dative' === n.Grammar.getInstance().getParameter('case') ? t + 'n' : t)),
                  t
                )
              })()),
            c
          )
        }
      },
      9393: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.en = void 0)
        const n = r(2105),
          o = r(4356),
          i = r(2536),
          s = r(310),
          a = r(4977)
        let l = null
        e.en = function () {
          return (
            l ||
              (l = (function () {
                const t = (0, o.createLocale)()
                return (
                  (t.NUMBERS = s.default),
                  (t.FUNCTIONS.radicalNestDepth = i.nestingToString),
                  (t.FUNCTIONS.plural = (t) => (/.*s$/.test(t) ? t : t + 's')),
                  (t.ALPHABETS.combiner = a.Combiners.prefixCombiner),
                  (t.ALPHABETS.digitTrans.default = s.default.numberToWords),
                  (t.CORRECTIONS.article = (t) => (n.Grammar.getInstance().getParameter('noArticle') ? '' : t)),
                  t
                )
              })()),
            l
          )
        }
      },
      7978: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.es = void 0)
        const n = r(4356),
          o = r(2536),
          i = r(4634),
          s = r(4977),
          a = function (t, e, r) {
            return (t = 'sans serif ' + (r ? r + ' ' + t : t)), e ? t + ' ' + e : t
          }
        let l = null
        e.es = function () {
          return (
            l ||
              (l = (function () {
                const t = (0, n.createLocale)()
                return (
                  (t.NUMBERS = i.default),
                  (t.COMBINERS.sansserif = a),
                  (t.FUNCTIONS.fracNestDepth = (t) => !1),
                  (t.FUNCTIONS.combineRootIndex = o.combinePostfixIndex),
                  (t.FUNCTIONS.combineNestedRadical = (t, e, r) => t + r),
                  (t.FUNCTIONS.fontRegexp = (t) => RegExp('^' + t + ' ')),
                  (t.FUNCTIONS.plural = (t) => (/.*(a|e|i|o|u)$/.test(t) ? t + 's' : /.*z$/.test(t) ? t.slice(0, -1) + 'ces' : /.*c$/.test(t) ? t.slice(0, -1) + 'ques' : /.*g$/.test(t) ? t + 'ues' : /.*\u00f3n$/.test(t) ? t.slice(0, -2) + 'ones' : t + 'es')),
                  (t.FUNCTIONS.si = (t, e) => (e.match(/^metro/) && (t = t.replace(/a$/, '\xe1').replace(/o$/, '\xf3').replace(/i$/, '\xed')), t + e)),
                  (t.ALPHABETS.combiner = s.Combiners.prefixCombiner),
                  t
                )
              })()),
            l
          )
        }
      },
      5540: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.fr = void 0)
        const n = r(2105),
          o = r(4356),
          i = r(2536),
          s = r(2350),
          a = r(4977)
        let l = null
        e.fr = function () {
          return (
            l ||
              (l = (function () {
                const t = (0, o.createLocale)()
                return (
                  (t.NUMBERS = s.default),
                  (t.FUNCTIONS.radicalNestDepth = i.nestingToString),
                  (t.FUNCTIONS.combineRootIndex = i.combinePostfixIndex),
                  (t.FUNCTIONS.combineNestedFraction = (t, e, r) => r.replace(/ $/g, '') + e + t),
                  (t.FUNCTIONS.combineNestedRadical = (t, e, r) => r + ' ' + t),
                  (t.FUNCTIONS.fontRegexp = (t) => RegExp(' (en |)' + t + '$')),
                  (t.FUNCTIONS.plural = (t) => (/.*s$/.test(t) ? t : t + 's')),
                  (t.CORRECTIONS.article = (t) => (n.Grammar.getInstance().getParameter('noArticle') ? '' : t)),
                  (t.ALPHABETS.combiner = a.Combiners.romanceCombiner),
                  (t.SUBISO = { default: 'fr', current: 'fr', all: ['fr', 'be', 'ch'] }),
                  t
                )
              })()),
            l
          )
        }
      },
      5218: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.hi = void 0)
        const n = r(4356),
          o = r(4438),
          i = r(4977),
          s = r(2536)
        let a = null
        e.hi = function () {
          return (
            a ||
              (a = (function () {
                const t = (0, n.createLocale)()
                return (t.NUMBERS = o.default), (t.ALPHABETS.combiner = i.Combiners.prefixCombiner), (t.FUNCTIONS.radicalNestDepth = s.nestingToString), t
              })()),
            a
          )
        }
      },
      3887: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.it = void 0)
        const n = r(2536),
          o = r(4356),
          i = r(8825),
          s = r(4977),
          a = function (t, e, r) {
            return t.match(/^[a-zA-Z]$/) && (e = e.replace('cerchiato', 'cerchiata')), (t = r ? t + ' ' + r : t), e ? t + ' ' + e : t
          }
        let l = null
        e.it = function () {
          return (
            l ||
              (l = (function () {
                const t = (0, o.createLocale)()
                return (
                  (t.NUMBERS = i.default),
                  (t.COMBINERS.italianPostfix = a),
                  (t.FUNCTIONS.radicalNestDepth = n.nestingToString),
                  (t.FUNCTIONS.combineRootIndex = n.combinePostfixIndex),
                  (t.FUNCTIONS.combineNestedFraction = (t, e, r) => r.replace(/ $/g, '') + e + t),
                  (t.FUNCTIONS.combineNestedRadical = (t, e, r) => r + ' ' + t),
                  (t.FUNCTIONS.fontRegexp = (t) => RegExp(' (en |)' + t + '$')),
                  (t.ALPHABETS.combiner = s.Combiners.romanceCombiner),
                  t
                )
              })()),
            l
          )
        }
      },
      8384: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.nb = void 0)
        const n = r(4356),
          o = r(2536),
          i = r(8274),
          s = r(4977)
        let a = null
        e.nb = function () {
          return (
            a ||
              (a = (function () {
                const t = (0, n.createLocale)()
                return (t.NUMBERS = i.default), (t.ALPHABETS.combiner = s.Combiners.prefixCombiner), (t.ALPHABETS.digitTrans.default = i.default.numberToWords), (t.FUNCTIONS.radicalNestDepth = o.nestingToString), t
              })()),
            a
          )
        }
      },
      7206: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.nemeth = void 0)
        const n = r(4356),
          o = r(3720),
          i = r(4977),
          s = function (t) {
            return t.match(RegExp('^' + h.ALPHABETS.languagePrefix.english)) ? t.slice(1) : t
          },
          a = function (t, e, r) {
            return (t = s(t)), e ? t + e : t
          },
          l = function (t, e, r) {
            return e + s(t)
          },
          c = function (t, e, r) {
            return e + (r || '') + (t = s(t)) + '\u283b'
          },
          u = function (t, e, r) {
            return e + (r || '') + (t = s(t)) + '\u283b\u283b'
          },
          p = function (t, e, r) {
            return e + (t = s(t)) + '\u283e'
          }
        let h = null
        e.nemeth = function () {
          return (
            h ||
              (h = (function () {
                const t = (0, n.createLocale)()
                return (
                  (t.NUMBERS = o.default),
                  (t.COMBINERS = { postfixCombiner: a, germanCombiner: l, embellishCombiner: c, doubleEmbellishCombiner: u, parensCombiner: p }),
                  (t.FUNCTIONS.fracNestDepth = (t) => !1),
                  (t.FUNCTIONS.fontRegexp = (t) => RegExp('^' + t)),
                  (t.FUNCTIONS.si = i.identityTransformer),
                  (t.ALPHABETS.combiner = (t, e, r) => (e ? e + r + t : s(t))),
                  (t.ALPHABETS.digitTrans = { default: o.default.numberToWords }),
                  t
                )
              })()),
            h
          )
        }
      },
      7734: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.nn = void 0)
        const n = r(4356),
          o = r(2536),
          i = r(8274),
          s = r(4977)
        let a = null
        e.nn = function () {
          return (
            a ||
              (a = (function () {
                const t = (0, n.createLocale)()
                return (
                  (t.NUMBERS = i.default),
                  (t.ALPHABETS.combiner = s.Combiners.prefixCombiner),
                  (t.ALPHABETS.digitTrans.default = i.default.numberToWords),
                  (t.FUNCTIONS.radicalNestDepth = o.nestingToString),
                  (t.SUBISO = { default: '', current: '', all: ['', 'alt'] }),
                  t
                )
              })()),
            a
          )
        }
      },
      7264: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.sv = void 0)
        const n = r(4356),
          o = r(2536),
          i = r(3898),
          s = r(4977)
        let a = null
        e.sv = function () {
          return (
            a ||
              (a = (function () {
                const t = (0, n.createLocale)()
                return (
                  (t.NUMBERS = i.default),
                  (t.FUNCTIONS.radicalNestDepth = o.nestingToString),
                  (t.FUNCTIONS.fontRegexp = function (t) {
                    return new RegExp('((^' + t + ' )|( ' + t + '$))')
                  }),
                  (t.ALPHABETS.combiner = s.Combiners.prefixCombiner),
                  (t.ALPHABETS.digitTrans.default = i.default.numberToWords),
                  (t.CORRECTIONS.correctOne = (t) => t.replace(/^ett$/, 'en')),
                  t
                )
              })()),
            a
          )
        }
      },
      7549: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SUBISO = e.FUNCTIONS = e.ALPHABETS = e.NUMBERS = e.MESSAGES = void 0)
        const n = r(4977)
        ;(e.MESSAGES = function () {
          return { MS: {}, MSroots: {}, font: {}, embellish: {}, role: {}, enclose: {}, navigate: {}, regexp: {}, unitTimes: '' }
        }),
          (e.NUMBERS = function () {
            return { zero: 'zero', ones: [], tens: [], large: [], special: {}, wordOrdinal: n.identityTransformer, numericOrdinal: n.identityTransformer, numberToWords: n.identityTransformer, numberToOrdinal: n.pluralCase, vulgarSep: ' ', numSep: ' ' }
          }),
          (e.ALPHABETS = function () {
            return {
              latinSmall: [],
              latinCap: [],
              greekSmall: [],
              greekCap: [],
              capPrefix: { default: '' },
              smallPrefix: { default: '' },
              digitPrefix: { default: '' },
              languagePrefix: {},
              digitTrans: { default: n.identityTransformer, mathspeak: n.identityTransformer, clearspeak: n.identityTransformer },
              letterTrans: { default: n.identityTransformer },
              combiner: (t, e, r) => t
            }
          }),
          (e.FUNCTIONS = function () {
            return {
              fracNestDepth: (t) => n.vulgarFractionSmall(t, 10, 100),
              radicalNestDepth: (t) => '',
              combineRootIndex: function (t, e) {
                return t
              },
              combineNestedFraction: n.Combiners.identityCombiner,
              combineNestedRadical: n.Combiners.identityCombiner,
              fontRegexp: function (t) {
                return new RegExp('^' + t.split(/ |-/).join('( |-)') + '( |-)')
              },
              si: n.siCombiner,
              plural: n.identityTransformer
            }
          }),
          (e.SUBISO = function () {
            return { default: '', current: '', all: [] }
          })
      },
      614: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(2105)
        function o(t) {
          const e = t % 1e3,
            r = Math.floor(e / 100),
            n = r ? (1 === r ? 'cent' : a.ones[r] + '-cents') : '',
            o = (function (t) {
              const e = t % 100
              if (e < 20) return a.ones[e]
              const r = Math.floor(e / 10),
                n = a.tens[r],
                o = a.ones[e % 10]
              return n && o ? n + (2 === r ? '-i-' : '-') + o : n || o
            })(e % 100)
          return n && o ? n + a.numSep + o : n || o
        }
        function i(t) {
          if (0 === t) return a.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          let e = 0,
            r = ''
          for (; t > 0; ) {
            const n = t % (e > 1 ? 1e6 : 1e3)
            if (n) {
              let t = a.large[e]
              if (e)
                if (1 === e) r = (1 === n ? '' : o(n) + a.numSep) + t + (r ? a.numSep + r : '')
                else {
                  const e = i(n)
                  ;(t = 1 === n ? t : t.replace(/\u00f3$/, 'ons')), (r = e + a.numSep + t + (r ? a.numSep + r : ''))
                }
              else r = o(n)
            }
            ;(t = Math.floor(t / (e > 1 ? 1e6 : 1e3))), e++
          }
          return r
        }
        function s(t) {
          const e = n.Grammar.getInstance().getParameter('gender')
          return t.toString() + ('f' === e ? 'a' : 'n')
        }
        const a = (0, r(7549).NUMBERS)()
        ;(a.numericOrdinal = s),
          (a.numberToWords = i),
          (a.numberToOrdinal = function (t, e) {
            if (t > 1999) return s(t)
            if (t <= 10) return a.special.onesOrdinals[t - 1]
            const r = i(t)
            return r.match(/mil$/) ? r.replace(/mil$/, 'mil\xb7l\xe8sima') : r.match(/u$/) ? r.replace(/u$/, 'vena') : r.match(/a$/) ? r.replace(/a$/, 'ena') : r + (r.match(/e$/) ? 'na' : 'ena')
          }),
          (e.default = a)
      },
      3866: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        function n(t, e = !1) {
          return t === a.ones[1] ? (e ? 'et' : 'en') : t
        }
        function o(t, e = !1) {
          let r = t % 1e3,
            o = '',
            i = a.ones[Math.floor(r / 100)]
          if (((o += i ? n(i, !0) + ' hundrede' : ''), (r %= 100), r))
            if (((o += o ? ' og ' : ''), (i = e ? a.special.smallOrdinals[r] : a.ones[r]), i)) o += i
            else {
              const t = e ? a.special.tensOrdinals[Math.floor(r / 10)] : a.tens[Math.floor(r / 10)]
              ;(i = a.ones[r % 10]), (o += i ? n(i) + 'og' + t : t)
            }
          return o
        }
        function i(t, e = !1) {
          if (0 === t) return a.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          let r = 0,
            i = ''
          for (; t > 0; ) {
            const s = t % 1e3
            if (s) {
              const t = o(s, e && !r)
              if (r) {
                const e = a.large[r],
                  o = s > 1 ? 'er' : ''
                i = n(t, r <= 1) + ' ' + e + o + (i ? ' og ' : '') + i
              } else i = n(t) + i
            }
            ;(t = Math.floor(t / 1e3)), r++
          }
          return i
        }
        function s(t) {
          if (t % 100) return i(t, !0)
          const e = i(t)
          return e.match(/e$/) ? e : e + 'e'
        }
        const a = (0, r(7549).NUMBERS)()
        ;(a.wordOrdinal = s),
          (a.numericOrdinal = function (t) {
            return t.toString() + '.'
          }),
          (a.numberToWords = i),
          (a.numberToOrdinal = function (t, e) {
            return 1 === t ? (e ? 'hel' : 'hele') : 2 === t ? (e ? 'halv' : 'halve') : s(t) + (e ? 'dele' : 'del')
          }),
          (e.default = a)
      },
      1435: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        function n(t, e = !1) {
          return t === a.ones[1] ? (e ? 'eine' : 'ein') : t
        }
        function o(t) {
          let e = t % 1e3,
            r = '',
            o = a.ones[Math.floor(e / 100)]
          if (((r += o ? n(o) + 'hundert' : ''), (e %= 100), e))
            if (((r += r ? a.numSep : ''), (o = a.ones[e]), o)) r += o
            else {
              const t = a.tens[Math.floor(e / 10)]
              ;(o = a.ones[e % 10]), (r += o ? n(o) + 'und' + t : t)
            }
          return r
        }
        function i(t) {
          if (0 === t) return a.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          let e = 0,
            r = ''
          for (; t > 0; ) {
            const i = t % 1e3
            if (i) {
              const s = o(t % 1e3)
              if (e) {
                const t = a.large[e],
                  o = e > 1 && i > 1 ? (t.match(/e$/) ? 'n' : 'en') : ''
                r = n(s, e > 1) + t + o + r
              } else r = n(s, e > 1) + r
            }
            ;(t = Math.floor(t / 1e3)), e++
          }
          return r.replace(/ein$/, 'eins')
        }
        function s(t) {
          if (1 === t) return 'erste'
          if (3 === t) return 'dritte'
          if (7 === t) return 'siebte'
          if (8 === t) return 'achte'
          return i(t) + (t < 19 ? 'te' : 'ste')
        }
        const a = (0, r(7549).NUMBERS)()
        ;(a.wordOrdinal = s),
          (a.numericOrdinal = function (t) {
            return t.toString() + '.'
          }),
          (a.numberToWords = i),
          (a.numberToOrdinal = function (t, e) {
            return 1 === t ? 'eintel' : 2 === t ? (e ? 'halbe' : 'halb') : s(t) + 'l'
          }),
          (e.default = a)
      },
      310: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        function n(t) {
          let e = t % 1e3,
            r = ''
          return (r += s.ones[Math.floor(e / 100)] ? s.ones[Math.floor(e / 100)] + s.numSep + 'hundred' : ''), (e %= 100), e && ((r += r ? s.numSep : ''), (r += s.ones[e] || s.tens[Math.floor(e / 10)] + (e % 10 ? s.numSep + s.ones[e % 10] : ''))), r
        }
        function o(t) {
          if (0 === t) return s.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          let e = 0,
            r = ''
          for (; t > 0; ) {
            t % 1e3 && (r = n(t % 1e3) + (e ? '-' + s.large[e] + '-' : '') + r), (t = Math.floor(t / 1e3)), e++
          }
          return r.replace(/-$/, '')
        }
        function i(t) {
          let e = o(t)
          return (
            e.match(/one$/)
              ? (e = e.slice(0, -3) + 'first')
              : e.match(/two$/)
              ? (e = e.slice(0, -3) + 'second')
              : e.match(/three$/)
              ? (e = e.slice(0, -5) + 'third')
              : e.match(/five$/)
              ? (e = e.slice(0, -4) + 'fifth')
              : e.match(/eight$/)
              ? (e = e.slice(0, -5) + 'eighth')
              : e.match(/nine$/)
              ? (e = e.slice(0, -4) + 'ninth')
              : e.match(/twelve$/)
              ? (e = e.slice(0, -6) + 'twelfth')
              : e.match(/ty$/)
              ? (e = e.slice(0, -2) + 'tieth')
              : (e += 'th'),
            e
          )
        }
        const s = (0, r(7549).NUMBERS)()
        ;(s.wordOrdinal = i),
          (s.numericOrdinal = function (t) {
            const e = t % 100,
              r = t.toString()
            if (e > 10 && e < 20) return r + 'th'
            switch (t % 10) {
              case 1:
                return r + 'st'
              case 2:
                return r + 'nd'
              case 3:
                return r + 'rd'
              default:
                return r + 'th'
            }
          }),
          (s.numberToWords = o),
          (s.numberToOrdinal = function (t, e) {
            if (1 === t) return e ? 'oneths' : 'oneth'
            if (2 === t) return e ? 'halves' : 'half'
            const r = i(t)
            return e ? r + 's' : r
          }),
          (e.default = s)
      },
      4634: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(2105)
        function o(t) {
          const e = t % 1e3,
            r = Math.floor(e / 100),
            n = i.special.hundreds[r],
            o = (function (t) {
              const e = t % 100
              if (e < 30) return i.ones[e]
              const r = i.tens[Math.floor(e / 10)],
                n = i.ones[e % 10]
              return r && n ? r + ' y ' + n : r || n
            })(e % 100)
          return 1 === r ? (o ? n + 'to ' + o : n) : n && o ? n + ' ' + o : n || o
        }
        const i = (0, r(7549).NUMBERS)()
        ;(i.numericOrdinal = function (t) {
          const e = n.Grammar.getInstance().getParameter('gender')
          return t.toString() + ('f' === e ? 'a' : 'o')
        }),
          (i.numberToWords = function (t) {
            if (0 === t) return i.zero
            if (t >= Math.pow(10, 36)) return t.toString()
            let e = 0,
              r = ''
            for (; t > 0; ) {
              const n = t % 1e3
              if (n) {
                let t = i.large[e]
                const s = o(n)
                e ? (1 === n ? ((t = t.match('/^mil( |$)/') ? t : 'un ' + t), (r = t + (r ? ' ' + r : ''))) : ((t = t.replace(/\u00f3n$/, 'ones')), (r = o(n) + ' ' + t + (r ? ' ' + r : '')))) : (r = s)
              }
              ;(t = Math.floor(t / 1e3)), e++
            }
            return r
          }),
          (i.numberToOrdinal = function (t, e) {
            if (t > 1999) return t.toString() + 'a'
            if (t <= 12) return i.special.onesOrdinals[t - 1]
            const r = []
            if ((t >= 1e3 && ((t -= 1e3), r.push('mil\xe9sima')), !t)) return r.join(' ')
            let n = 0
            return (
              (n = Math.floor(t / 100)),
              n > 0 && (r.push(i.special.hundredsOrdinals[n - 1]), (t %= 100)),
              t <= 12 ? r.push(i.special.onesOrdinals[t - 1]) : ((n = Math.floor(t / 10)), n > 0 && (r.push(i.special.tensOrdinals[n - 1]), (t %= 10)), t > 0 && r.push(i.special.onesOrdinals[t - 1])),
              r.join(' ')
            )
          }),
          (e.default = i)
      },
      2350: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(5897),
          o = r(2105),
          i = r(7549)
        function s(t) {
          let e = t % 1e3,
            r = ''
          if (((r += u.ones[Math.floor(e / 100)] ? u.ones[Math.floor(e / 100)] + '-cent' : ''), (e %= 100), e)) {
            r += r ? '-' : ''
            let t = u.ones[e]
            if (t) r += t
            else {
              const n = u.tens[Math.floor(e / 10)]
              n.match(/-dix$/) ? ((t = u.ones[(e % 10) + 10]), (r += n.replace(/-dix$/, '') + '-' + t)) : (r += n + (e % 10 ? '-' + u.ones[e % 10] : ''))
            }
          }
          const n = r.match(/s-\w+$/)
          return n ? r.replace(/s-\w+$/, n[0].slice(1)) : r.replace(/-un$/, '-et-un')
        }
        function a(t) {
          if (0 === t) return u.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          u.special['tens-' + n.default.getInstance().subiso] && (u.tens = u.special['tens-' + n.default.getInstance().subiso])
          let e = 0,
            r = ''
          for (; t > 0; ) {
            const n = t % 1e3
            if (n) {
              let t = u.large[e]
              const o = s(n)
              if (t && t.match(/^mille /)) {
                const n = t.replace(/^mille /, '')
                r = r.match(RegExp(n)) ? o + (e ? '-mille-' : '') + r : r.match(RegExp(n.replace(/s$/, ''))) ? o + (e ? '-mille-' : '') + r.replace(n.replace(/s$/, ''), n) : o + (e ? '-' + t + '-' : '') + r
              } else (t = 1 === n && t ? t.replace(/s$/, '') : t), (r = o + (e ? '-' + t + '-' : '') + r)
            }
            ;(t = Math.floor(t / 1e3)), e++
          }
          return r.replace(/-$/, '')
        }
        const l = { 1: 'uni\xe8me', 2: 'demi', 3: 'tiers', 4: 'quart' }
        function c(t) {
          if (1 === t) return 'premi\xe8re'
          let e = a(t)
          return e.match(/^neuf$/) ? (e = e.slice(0, -1) + 'v') : e.match(/cinq$/) ? (e += 'u') : e.match(/trois$/) ? (e += '') : (e.match(/e$/) || e.match(/s$/)) && (e = e.slice(0, -1)), (e += 'i\xe8me'), e
        }
        const u = (0, i.NUMBERS)()
        ;(u.wordOrdinal = c),
          (u.numericOrdinal = function (t) {
            const e = o.Grammar.getInstance().getParameter('gender')
            return 1 === t ? t.toString() + ('m' === e ? 'er' : 're') : t.toString() + 'e'
          }),
          (u.numberToWords = a),
          (u.numberToOrdinal = function (t, e) {
            const r = l[t] || c(t)
            return 3 === t ? r : e ? r + 's' : r
          }),
          (e.default = u)
      },
      4438: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(2105)
        function o(t) {
          if (0 === t) return s.zero
          if (t >= Math.pow(10, 32)) return t.toString()
          let e = 0,
            r = ''
          const n = (function (t) {
            let e = t % 1e3,
              r = ''
            return (r += s.ones[Math.floor(e / 100)] ? s.ones[Math.floor(e / 100)] + s.numSep + s.special.hundred : ''), (e %= 100), e && ((r += r ? s.numSep : ''), (r += s.ones[e])), r
          })(t % 1e3)
          if (!(t = Math.floor(t / 1e3))) return n
          for (; t > 0; ) {
            const n = t % 100
            n && (r = s.ones[n] + s.numSep + s.large[e] + (r ? s.numSep + r : '')), (t = Math.floor(t / 100)), e++
          }
          return n ? r + s.numSep + n : r
        }
        function i(t) {
          const e = n.Grammar.getInstance().getParameter('gender')
          if (t <= 0) return t.toString()
          if (t < 10) return 'f' === e ? s.special.ordinalsFeminine[t] : s.special.ordinalsMasculine[t]
          return o(t) + ('f' === e ? '\u0935\u0940\u0902' : '\u0935\u093e\u0901')
        }
        const s = (0, r(7549).NUMBERS)()
        ;(s.wordOrdinal = i),
          (s.numericOrdinal = function (t) {
            const e = n.Grammar.getInstance().getParameter('gender')
            return t > 0 && t < 10
              ? 'f' === e
                ? s.special.simpleSmallOrdinalsFeminine[t]
                : s.special.simpleSmallOrdinalsMasculine[t]
              : t
                  .toString()
                  .split('')
                  .map(function (t) {
                    const e = parseInt(t, 10)
                    return isNaN(e) ? '' : s.special.simpleNumbers[e]
                  })
                  .join('') + ('f' === e ? '\u0935\u0940\u0902' : '\u0935\u093e\u0901')
          }),
          (s.numberToWords = o),
          (s.numberToOrdinal = function (t, e) {
            return t <= 10 ? s.special.smallDenominators[t] : i(t) + ' \u0905\u0902\u0936'
          }),
          (e.default = s)
      },
      8825: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(2105)
        function o(t) {
          let e = t % 1e3,
            r = ''
          if (((r += a.ones[Math.floor(e / 100)] ? a.ones[Math.floor(e / 100)] + a.numSep + 'cento' : ''), (e %= 100), e)) {
            r += r ? a.numSep : ''
            const t = a.ones[e]
            if (t) r += t
            else {
              let t = a.tens[Math.floor(e / 10)]
              const n = e % 10
              ;(1 !== n && 8 !== n) || (t = t.slice(0, -1)), (r += t), (r += n ? a.numSep + a.ones[e % 10] : '')
            }
          }
          return r
        }
        function i(t) {
          if (0 === t) return a.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          if (1 === t && n.Grammar.getInstance().getParameter('fraction')) return 'un'
          let e = 0,
            r = ''
          for (; t > 0; ) {
            t % 1e3 && (r = o(t % 1e3) + (e ? '-' + a.large[e] + '-' : '') + r), (t = Math.floor(t / 1e3)), e++
          }
          return r.replace(/-$/, '')
        }
        function s(t) {
          const e = 'm' === n.Grammar.getInstance().getParameter('gender') ? 'o' : 'a'
          let r = a.special.onesOrdinals[t]
          return r ? r.slice(0, -1) + e : ((r = i(t)), r.slice(0, -1) + 'esim' + e)
        }
        const a = (0, r(7549).NUMBERS)()
        ;(a.wordOrdinal = s),
          (a.numericOrdinal = function (t) {
            const e = n.Grammar.getInstance().getParameter('gender')
            return t.toString() + ('m' === e ? 'o' : 'a')
          }),
          (a.numberToWords = i),
          (a.numberToOrdinal = function (t, e) {
            if (2 === t) return e ? 'mezzi' : 'mezzo'
            const r = s(t)
            if (!e) return r
            const n = r.match(/o$/) ? 'i' : 'e'
            return r.slice(0, -1) + n
          }),
          (e.default = a)
      },
      3720: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        function n(t) {
          return t
            .toString()
            .split('')
            .map(function (t) {
              return o.ones[parseInt(t, 10)]
            })
            .join('')
        }
        const o = (0, r(7549).NUMBERS)()
        ;(o.numberToWords = n), (o.numberToOrdinal = n), (e.default = o)
      },
      8274: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(5897)
        function o(t, e = !1) {
          let r = t % 1e3,
            n = ''
          const o = Math.floor(r / 100),
            s = a.ones[o]
          if (((n += s ? (1 === o ? '' : s) + 'hundre' : ''), (r %= 100), r)) {
            if (((n += n ? 'og' : ''), e)) {
              const t = a.special.smallOrdinals[r]
              if (t) return n + t
              if (r % 10) return n + a.tens[Math.floor(r / 10)] + a.special.smallOrdinals[r % 10]
            }
            n += a.ones[r] || a.tens[Math.floor(r / 10)] + (r % 10 ? a.ones[r % 10] : '')
          }
          return e ? i(n) : n
        }
        function i(t) {
          const e = a.special.endOrdinal[0]
          return 'a' === e && t.match(/en$/)
            ? t.slice(0, -2) + a.special.endOrdinal
            : t.match(/(d|n)$/) || t.match(/hundre$/)
            ? t + 'de'
            : t.match(/i$/)
            ? t + a.special.endOrdinal
            : 'a' === e && t.match(/e$/)
            ? t.slice(0, -1) + a.special.endOrdinal
            : (t.match(/e$/), t + 'nde')
        }
        function s(t) {
          return u(t, !0)
        }
        const a = (0, r(7549).NUMBERS)()
        function l(t, e = !1) {
          return t === a.ones[1] ? ('ein' === t ? 'eitt ' : e ? 'et' : 'ett') : t
        }
        function c(t, e = !1) {
          let r = t % 1e3,
            n = '',
            o = a.ones[Math.floor(r / 100)]
          if (((n += o ? l(o) + 'hundre' : ''), (r %= 100), r)) {
            if (((n += n ? 'og' : ''), e)) {
              const t = a.special.smallOrdinals[r]
              if (t) return n + t
            }
            if (((o = a.ones[r]), o)) n += o
            else {
              const t = a.tens[Math.floor(r / 10)]
              ;(o = a.ones[r % 10]), (n += o ? o + 'og' + t : t)
            }
          }
          return e ? i(n) : n
        }
        function u(t, e = !1) {
          const r =
            'alt' === n.default.getInstance().subiso
              ? (function (t, e = !1) {
                  if (0 === t) return e ? a.special.smallOrdinals[0] : a.zero
                  if (t >= Math.pow(10, 36)) return t.toString()
                  let r = 0,
                    n = ''
                  for (; t > 0; ) {
                    const o = t % 1e3
                    if (o) {
                      const i = c(t % 1e3, !r && e)
                      !r && e && (e = !e), (n = (1 === r ? l(i, !0) : i) + (r > 1 ? a.numSep : '') + (r ? a.large[r] + (r > 1 && o > 1 ? 'er' : '') : '') + (r > 1 && n ? a.numSep : '') + n)
                    }
                    ;(t = Math.floor(t / 1e3)), r++
                  }
                  return e ? n + (n.match(/tusen$/) ? 'de' : 'te') : n
                })(t, e)
              : (function (t, e = !1) {
                  if (0 === t) return e ? a.special.smallOrdinals[0] : a.zero
                  if (t >= Math.pow(10, 36)) return t.toString()
                  let r = 0,
                    n = ''
                  for (; t > 0; ) {
                    const i = t % 1e3
                    if (i) {
                      const s = o(t % 1e3, !r && e)
                      !r && e && (e = !e), (n = s + (r ? ' ' + a.large[r] + (r > 1 && i > 1 ? 'er' : '') + (n ? ' ' : '') : '') + n)
                    }
                    ;(t = Math.floor(t / 1e3)), r++
                  }
                  return e ? n + (n.match(/tusen$/) ? 'de' : 'te') : n
                })(t, e)
          return r
        }
        ;(a.wordOrdinal = s),
          (a.numericOrdinal = function (t) {
            return t.toString() + '.'
          }),
          (a.numberToWords = u),
          (a.numberToOrdinal = function (t, e) {
            return s(t)
          }),
          (e.default = a)
      },
      3898: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        function n(t) {
          let e = t % 1e3,
            r = ''
          const n = Math.floor(e / 100)
          return (r += s.ones[n] ? (1 === n ? '' : s.ones[n] + s.numSep) + 'hundra' : ''), (e %= 100), e && ((r += r ? s.numSep : ''), (r += s.ones[e] || s.tens[Math.floor(e / 10)] + (e % 10 ? s.numSep + s.ones[e % 10] : ''))), r
        }
        function o(t, e = !1) {
          if (0 === t) return s.zero
          if (t >= Math.pow(10, 36)) return t.toString()
          let r = 0,
            o = ''
          for (; t > 0; ) {
            const i = t % 1e3
            if (i) {
              const a = s.large[r],
                l = i > 1 && r > 1 && !e ? 'er' : ''
              o = (1 === r && 1 === i ? '' : (r > 1 && 1 === i ? 'en' : n(t % 1e3)) + (r > 1 ? ' ' : '')) + (r ? a + l + (r > 1 ? ' ' : '') : '') + o
            }
            ;(t = Math.floor(t / 1e3)), r++
          }
          return o.replace(/ $/, '')
        }
        function i(t) {
          let e = o(t, !0)
          return (
            e.match(/^noll$/)
              ? (e = 'nollte')
              : e.match(/ett$/)
              ? (e = e.replace(/ett$/, 'f\xf6rsta'))
              : e.match(/tv\xe5$/)
              ? (e = e.replace(/tv\xe5$/, 'andra'))
              : e.match(/tre$/)
              ? (e = e.replace(/tre$/, 'tredje'))
              : e.match(/fyra$/)
              ? (e = e.replace(/fyra$/, 'fj\xe4rde'))
              : e.match(/fem$/)
              ? (e = e.replace(/fem$/, 'femte'))
              : e.match(/sex$/)
              ? (e = e.replace(/sex$/, 'sj\xe4tte'))
              : e.match(/sju$/)
              ? (e = e.replace(/sju$/, 'sjunde'))
              : e.match(/\xe5tta$/)
              ? (e = e.replace(/\xe5tta$/, '\xe5ttonde'))
              : e.match(/nio$/)
              ? (e = e.replace(/nio$/, 'nionde'))
              : e.match(/tio$/)
              ? (e = e.replace(/tio$/, 'tionde'))
              : e.match(/elva$/)
              ? (e = e.replace(/elva$/, 'elfte'))
              : e.match(/tolv$/)
              ? (e = e.replace(/tolv$/, 'tolfte'))
              : e.match(/tusen$/)
              ? (e = e.replace(/tusen$/, 'tusonde'))
              : e.match(/jard$/) || e.match(/jon$/)
              ? (e += 'te')
              : (e += 'de'),
            e
          )
        }
        const s = (0, r(7549).NUMBERS)()
        ;(s.wordOrdinal = i),
          (s.numericOrdinal = function (t) {
            const e = t.toString()
            return e.match(/11$|12$/) ? e + ':e' : e + (e.match(/1$|2$/) ? ':a' : ':e')
          }),
          (s.numberToWords = o),
          (s.numberToOrdinal = function (t, e) {
            if (1 === t) return 'hel'
            if (2 === t) return e ? 'halva' : 'halv'
            let r = i(t)
            return (r = r.match(/de$/) ? r.replace(/de$/, '') : r), r + (e ? 'delar' : 'del')
          }),
          (e.default = s)
      },
      4977: function (t, e) {
        function r(t, e = '') {
          if (
            !t.childNodes ||
            !t.childNodes[0] ||
            !t.childNodes[0].childNodes ||
            t.childNodes[0].childNodes.length < 2 ||
            'number' !== t.childNodes[0].childNodes[0].tagName ||
            'integer' !== t.childNodes[0].childNodes[0].getAttribute('role') ||
            'number' !== t.childNodes[0].childNodes[1].tagName ||
            'integer' !== t.childNodes[0].childNodes[1].getAttribute('role')
          )
            return { convertible: !1, content: t.textContent }
          const r = t.childNodes[0].childNodes[1].textContent,
            n = t.childNodes[0].childNodes[0].textContent,
            o = Number(r),
            i = Number(n)
          return isNaN(o) || isNaN(i) ? { convertible: !1, content: `${n} ${e} ${r}` } : { convertible: !0, enumerator: i, denominator: o }
        }
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.vulgarFractionSmall = e.convertVulgarFraction = e.Combiners = e.siCombiner = e.identityTransformer = e.pluralCase = void 0),
          (e.pluralCase = function (t, e) {
            return t.toString()
          }),
          (e.identityTransformer = function (t) {
            return t.toString()
          }),
          (e.siCombiner = function (t, e) {
            return t + e.toLowerCase()
          }),
          (e.Combiners = {}),
          (e.Combiners.identityCombiner = function (t, e, r) {
            return t + e + r
          }),
          (e.Combiners.prefixCombiner = function (t, e, r) {
            return (t = r ? r + ' ' + t : t), e ? e + ' ' + t : t
          }),
          (e.Combiners.postfixCombiner = function (t, e, r) {
            return (t = r ? r + ' ' + t : t), e ? t + ' ' + e : t
          }),
          (e.Combiners.romanceCombiner = function (t, e, r) {
            return (t = r ? t + ' ' + r : t), e ? t + ' ' + e : t
          }),
          (e.convertVulgarFraction = r),
          (e.vulgarFractionSmall = function (t, e, n) {
            const o = r(t)
            if (o.convertible) {
              const t = o.enumerator,
                r = o.denominator
              return t > 0 && t < e && r > 0 && r < n
            }
            return !1
          })
      },
      4504: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Condition = e.BaseRuleStore = void 0)
        const n = r(7052),
          o = r(1676),
          i = r(4650),
          s = r(4106)
        class a {
          constructor() {
            ;(this.context = new s.SpeechRuleContext()),
              (this.parseOrder = o.DynamicCstr.DEFAULT_ORDER),
              (this.parser = new o.DynamicCstrParser(this.parseOrder)),
              (this.locale = o.DynamicCstr.DEFAULT_VALUES[o.Axis.LOCALE]),
              (this.modality = o.DynamicCstr.DEFAULT_VALUES[o.Axis.MODALITY]),
              (this.domain = ''),
              (this.initialized = !1),
              (this.inherits = null),
              (this.kind = 'standard'),
              (this.customTranscriptions = {}),
              (this.preconditions = new Map()),
              (this.speechRules_ = []),
              (this.rank = 0),
              (this.parseMethods = { Rule: this.defineRule, Generator: this.generateRules, Action: this.defineAction, Precondition: this.definePrecondition, Ignore: this.ignoreRules })
          }
          static compareStaticConstraints_(t, e) {
            if (t.length !== e.length) return !1
            for (let r, n = 0; (r = t[n]); n++) if (-1 === e.indexOf(r)) return !1
            return !0
          }
          static comparePreconditions_(t, e) {
            const r = t.precondition,
              n = e.precondition
            return r.query === n.query && a.compareStaticConstraints_(r.constraints, n.constraints)
          }
          defineRule(t, e, r, n, ...o) {
            const s = this.parseAction(r),
              a = this.parsePrecondition(n, o),
              l = this.parseCstr(e)
            if (!(s && a && l)) return console.error(`Rule Error: ${n}, (${e}): ${r}`), null
            const c = new i.SpeechRule(t, l, a, s)
            return (c.precondition.rank = this.rank++), this.addRule(c), c
          }
          addRule(t) {
            ;(t.context = this.context), this.speechRules_.unshift(t)
          }
          deleteRule(t) {
            const e = this.speechRules_.indexOf(t)
            ;-1 !== e && this.speechRules_.splice(e, 1)
          }
          findRule(t) {
            for (let e, r = 0; (e = this.speechRules_[r]); r++) if (t(e)) return e
            return null
          }
          findAllRules(t) {
            return this.speechRules_.filter(t)
          }
          evaluateDefault(t) {
            const e = t.textContent.slice(0)
            return e.match(/^\s+$/) ? this.evaluateWhitespace(e) : this.evaluateString(e)
          }
          evaluateWhitespace(t) {
            return []
          }
          evaluateCustom(t) {
            const e = this.customTranscriptions[t]
            return void 0 !== e ? n.AuditoryDescription.create({ text: e }, { adjust: !0, translate: !1 }) : null
          }
          evaluateCharacter(t) {
            return this.evaluateCustom(t) || n.AuditoryDescription.create({ text: t }, { adjust: !0, translate: !0 })
          }
          removeDuplicates(t) {
            for (let e, r = this.speechRules_.length - 1; (e = this.speechRules_[r]); r--) e !== t && t.dynamicCstr.equal(e.dynamicCstr) && a.comparePreconditions_(e, t) && this.speechRules_.splice(r, 1)
          }
          getSpeechRules() {
            return this.speechRules_
          }
          setSpeechRules(t) {
            this.speechRules_ = t
          }
          getPreconditions() {
            return this.preconditions
          }
          parseCstr(t) {
            try {
              return this.parser.parse(this.locale + '.' + this.modality + (this.domain ? '.' + this.domain : '') + '.' + t)
            } catch (e) {
              if ('RuleError' === e.name) return console.error('Rule Error ', `Illegal Dynamic Constraint: ${t}.`, e.message), null
              throw e
            }
          }
          parsePrecondition(t, e) {
            try {
              const r = this.parsePrecondition_(t)
              t = r[0]
              let n = r.slice(1)
              for (const t of e) n = n.concat(this.parsePrecondition_(t))
              return new i.Precondition(t, ...n)
            } catch (r) {
              if ('RuleError' === r.name) return console.error('Rule Error ', `Illegal preconditions: ${t}, ${e}.`, r.message), null
              throw r
            }
          }
          parseAction(t) {
            try {
              return i.Action.fromString(t)
            } catch (e) {
              if ('RuleError' === e.name) return console.error('Rule Error ', `Illegal action: ${t}.`, e.message), null
              throw e
            }
          }
          parse(t) {
            ;(this.modality = t.modality || this.modality),
              (this.locale = t.locale || this.locale),
              (this.domain = t.domain || this.domain),
              this.context.parse(t.functions || []),
              'actions' !== t.kind && ((this.kind = t.kind || this.kind), this.inheritRules()),
              this.parseRules(t.rules || [])
          }
          parseRules(t) {
            for (let e, r = 0; (e = t[r]); r++) {
              const t = e[0],
                r = this.parseMethods[t]
              t && r && r.apply(this, e.slice(1))
            }
          }
          generateRules(t) {
            const e = this.context.customGenerators.lookup(t)
            e && e(this)
          }
          defineAction(t, e) {
            let r
            try {
              r = i.Action.fromString(e)
            } catch (t) {
              if ('RuleError' === t.name) return void console.error('Action Error ', e, t.message)
              throw t
            }
            const n = this.getFullPreconditions(t)
            if (!n) return void console.error(`Action Error: No precondition for action ${t}`)
            this.ignoreRules(t)
            const o = new RegExp('^\\w+\\.\\w+\\.' + (this.domain ? '\\w+\\.' : ''))
            n.conditions.forEach(([e, n]) => {
              const s = this.parseCstr(e.toString().replace(o, ''))
              this.addRule(new i.SpeechRule(t, s, n, r))
            })
          }
          getFullPreconditions(t) {
            const e = this.preconditions.get(t)
            return e || !this.inherits ? e : this.inherits.getFullPreconditions(t)
          }
          definePrecondition(t, e, r, ...n) {
            const o = this.parsePrecondition(r, n),
              i = this.parseCstr(e)
            o && i ? ((o.rank = this.rank++), this.preconditions.set(t, new l(i, o))) : console.error(`Precondition Error: ${r}, (${e})`)
          }
          inheritRules() {
            if (!this.inherits || !this.inherits.getSpeechRules().length) return
            const t = new RegExp('^\\w+\\.\\w+\\.' + (this.domain ? '\\w+\\.' : ''))
            this.inherits.getSpeechRules().forEach((e) => {
              const r = this.parseCstr(e.dynamicCstr.toString().replace(t, ''))
              this.addRule(new i.SpeechRule(e.name, r, e.precondition, e.action))
            })
          }
          ignoreRules(t, ...e) {
            let r = this.findAllRules((e) => e.name === t)
            if (!e.length) return void r.forEach(this.deleteRule.bind(this))
            let n = []
            for (const t of e) {
              const e = this.parseCstr(t)
              for (const t of r) e.equal(t.dynamicCstr) ? this.deleteRule(t) : n.push(t)
              ;(r = n), (n = [])
            }
          }
          parsePrecondition_(t) {
            const e = this.context.customGenerators.lookup(t)
            return e ? e() : [t]
          }
        }
        e.BaseRuleStore = a
        class l {
          constructor(t, e) {
            ;(this.base = t), (this._conditions = []), (this.constraints = []), (this.allCstr = {}), this.constraints.push(t), this.addCondition(t, e)
          }
          get conditions() {
            return this._conditions
          }
          addConstraint(t) {
            if (this.constraints.filter((e) => e.equal(t)).length) return
            this.constraints.push(t)
            const e = []
            for (const [r, n] of this.conditions) this.base.equal(r) && e.push([t, n])
            this._conditions = this._conditions.concat(e)
          }
          addBaseCondition(t) {
            this.addCondition(this.base, t)
          }
          addFullCondition(t) {
            this.constraints.forEach((e) => this.addCondition(e, t))
          }
          addCondition(t, e) {
            const r = t.toString() + ' ' + e.toString()
            this.allCstr.condStr || ((this.allCstr[r] = !0), this._conditions.push([t, e]))
          }
        }
        e.Condition = l
      },
      2469: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BrailleStore = void 0)
        const n = r(7630),
          o = r(9935)
        class i extends o.MathStore {
          constructor() {
            super(...arguments), (this.modality = 'braille'), (this.customTranscriptions = { '\u22ca': '\u2808\u2821\u2833' })
          }
          evaluateString(t) {
            const e = [],
              r = Array.from(t)
            for (let t = 0; t < r.length; t++) e.push(this.evaluateCharacter(r[t]))
            return e
          }
          annotations() {
            for (let t, e = 0; (t = this.annotators[e]); e++) (0, n.activate)(this.locale, t)
          }
        }
        e.BrailleStore = i
      },
      1676: function (t, e) {
        var r
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.DefaultComparator = e.DynamicCstrParser = e.DynamicCstr = e.DynamicProperties = e.Axis = void 0),
          (function (t) {
            ;(t.DOMAIN = 'domain'), (t.STYLE = 'style'), (t.LOCALE = 'locale'), (t.TOPIC = 'topic'), (t.MODALITY = 'modality')
          })((r = e.Axis || (e.Axis = {})))
        class n {
          constructor(t, e = Object.keys(t)) {
            ;(this.properties = t), (this.order = e)
          }
          static createProp(...t) {
            const e = o.DEFAULT_ORDER,
              r = {}
            for (let n = 0, o = t.length, i = e.length; n < o && n < i; n++) r[e[n]] = t[n]
            return new n(r)
          }
          getProperties() {
            return this.properties
          }
          getOrder() {
            return this.order
          }
          getAxes() {
            return this.order
          }
          getProperty(t) {
            return this.properties[t]
          }
          updateProperties(t) {
            this.properties = t
          }
          allProperties() {
            const t = []
            return this.order.forEach((e) => t.push(this.getProperty(e).slice())), t
          }
          toString() {
            const t = []
            return this.order.forEach((e) => t.push(e + ': ' + this.getProperty(e).toString())), t.join('\n')
          }
        }
        e.DynamicProperties = n
        class o extends n {
          constructor(t, e) {
            const r = {}
            for (const [e, n] of Object.entries(t)) r[e] = [n]
            super(r, e), (this.components = t)
          }
          static createCstr(...t) {
            const e = o.DEFAULT_ORDER,
              r = {}
            for (let n = 0, o = t.length, i = e.length; n < o && n < i; n++) r[e[n]] = t[n]
            return new o(r)
          }
          static defaultCstr() {
            return o.createCstr.apply(
              null,
              o.DEFAULT_ORDER.map(function (t) {
                return o.DEFAULT_VALUES[t]
              })
            )
          }
          static validOrder(t) {
            const e = o.DEFAULT_ORDER.slice()
            return t.every((t) => {
              const r = e.indexOf(t)
              return -1 !== r && e.splice(r, 1)
            })
          }
          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, r, n = 0; (e = t[n]), (r = this.order[n]); n++) {
              const t = this.getValue(r)
              ;-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 r, n = 0; (r = e[n]); n++) {
              const e = this.getValue(r)
              if (!e || t.getValue(r) !== e) return !1
            }
            return !0
          }
        }
        ;(e.DynamicCstr = o),
          (o.DEFAULT_ORDER = [r.LOCALE, r.MODALITY, r.DOMAIN, r.STYLE, r.TOPIC]),
          (o.BASE_LOCALE = 'base'),
          (o.DEFAULT_VALUE = 'default'),
          (o.DEFAULT_VALUES = { [r.LOCALE]: 'en', [r.DOMAIN]: o.DEFAULT_VALUE, [r.STYLE]: o.DEFAULT_VALUE, [r.TOPIC]: o.DEFAULT_VALUE, [r.MODALITY]: 'speech' })
        e.DynamicCstrParser = class {
          constructor(t) {
            this.order = t
          }
          parse(t) {
            const e = t.split('.'),
              r = {}
            if (e.length > this.order.length) throw new Error('Invalid dynamic constraint: ' + r)
            let n = 0
            for (let t, o = 0; (t = this.order[o]), e.length; o++, n++) {
              const n = e.shift()
              r[t] = n
            }
            return new o(r, this.order.slice(0, n))
          }
        }
        e.DefaultComparator = class {
          constructor(t, e = new n(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 n(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 r = t.getValue(e)
                return r === this.reference.getValue(e) || -1 !== this.fallback.getProperty(e).indexOf(r)
              })
            )
          }
          compare(t, e) {
            let r = !1
            for (let n, o = 0; (n = this.order[o]); o++) {
              const o = t.getValue(n),
                i = e.getValue(n)
              if (!r) {
                const t = this.reference.getValue(n)
                if (t === o && t !== i) return -1
                if (t === i && t !== o) return 1
                if (t === o && t === i) continue
                t !== o && t !== i && (r = !0)
              }
              const s = this.fallback.getProperty(n),
                a = s.indexOf(o),
                l = s.indexOf(i)
              if (a < l) return -1
              if (l < a) return 1
            }
            return 0
          }
          toString() {
            return this.reference.toString() + '\n' + this.fallback.toString()
          }
        }
      },
      2105: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.numbersToAlpha = e.Grammar = e.ATTRIBUTE = void 0)
        const n = r(5740),
          o = r(5897),
          i = r(2536),
          s = r(4356)
        e.ATTRIBUTE = 'grammar'
        class a {
          constructor() {
            ;(this.currentFlags = {}), (this.parameters_ = {}), (this.corrections_ = {}), (this.preprocessors_ = {}), (this.stateStack_ = [])
          }
          static getInstance() {
            return (a.instance = a.instance || new a()), a.instance
          }
          static parseInput(t) {
            const e = {},
              r = t.split(':')
            for (let t = 0, n = r.length; t < n; t++) {
              const n = r[t].split('='),
                o = n[0].trim()
              n[1] ? (e[o] = n[1].trim()) : o.match(/^!/) ? (e[o.slice(1)] = !1) : (e[o] = !0)
            }
            return e
          }
          static parseState(t) {
            const e = {},
              r = t.split(' ')
            for (let t = 0, n = r.length; t < n; t++) {
              const n = r[t].split(':'),
                o = n[0],
                i = n[1]
              e[o] = i || !0
            }
            return e
          }
          static translateString_(t) {
            if (t.match(/:unit$/)) return a.translateUnit_(t)
            const e = o.default.getInstance()
            let r = e.evaluator(t, e.dynamicCstr)
            return (r = null === r ? t : r), a.getInstance().getParameter('plural') && (r = s.LOCALE.FUNCTIONS.plural(r)), r
          }
          static translateUnit_(t) {
            t = a.prepareUnit_(t)
            const e = o.default.getInstance(),
              r = a.getInstance().getParameter('plural'),
              n = e.strict,
              i = `${e.locale}.${e.modality}.default`
            let l, c
            return (
              (e.strict = !0),
              r && ((l = e.defaultParser.parse(i + '.plural')), (c = e.evaluator(t, l))),
              c ? ((e.strict = n), c) : ((l = e.defaultParser.parse(i + '.default')), (c = e.evaluator(t, l)), (e.strict = n), c ? (r && (c = s.LOCALE.FUNCTIONS.plural(c)), c) : a.cleanUnit_(t))
            )
          }
          static prepareUnit_(t) {
            const e = t.match(/:unit$/)
            return e ? t.slice(0, e.index).replace(/\s+/g, ' ') + t.slice(e.index) : t
          }
          static cleanUnit_(t) {
            return t.match(/:unit$/) ? t.replace(/:unit$/, '') : t
          }
          clear() {
            ;(this.parameters_ = {}), (this.stateStack_ = [])
          }
          setParameter(t, e) {
            const r = this.parameters_[t]
            return e ? (this.parameters_[t] = e) : delete this.parameters_[t], r
          }
          getParameter(t) {
            return this.parameters_[t]
          }
          setCorrection(t, e) {
            this.corrections_[t] = e
          }
          setPreprocessor(t, e) {
            this.preprocessors_[t] = e
          }
          getCorrection(t) {
            return this.corrections_[t]
          }
          getState() {
            const t = []
            for (const e in this.parameters_) {
              const r = this.parameters_[e]
              t.push('string' == typeof r ? e + ':' + r : e)
            }
            return t.join(' ')
          }
          pushState(t) {
            for (const e in t) t[e] = this.setParameter(e, t[e])
            this.stateStack_.push(t)
          }
          popState() {
            const t = this.stateStack_.pop()
            for (const e in t) this.setParameter(e, t[e])
          }
          setAttribute(t) {
            if (t && t.nodeType === n.NodeType.ELEMENT_NODE) {
              const r = this.getState()
              r && t.setAttribute(e.ATTRIBUTE, r)
            }
          }
          preprocess(t) {
            return this.runProcessors_(t, this.preprocessors_)
          }
          correct(t) {
            return this.runProcessors_(t, this.corrections_)
          }
          apply(t, e) {
            return (
              (this.currentFlags = e || {}),
              (t = this.currentFlags.adjust || this.currentFlags.preprocess ? a.getInstance().preprocess(t) : t),
              (this.parameters_.translate || this.currentFlags.translate) && (t = a.translateString_(t)),
              (t = this.currentFlags.adjust || this.currentFlags.correct ? a.getInstance().correct(t) : t),
              (this.currentFlags = {}),
              t
            )
          }
          runProcessors_(t, e) {
            for (const r in this.parameters_) {
              const n = e[r]
              if (!n) continue
              const o = this.parameters_[r]
              t = !0 === o ? n(t) : n(t, o)
            }
            return t
          }
        }
        function l(t, e) {
          if (!e || !t) return t
          const r = s.LOCALE.FUNCTIONS.fontRegexp(i.localFont(e))
          return t.replace(r, '')
        }
        function c(t) {
          return t.match(/\d+/) ? s.LOCALE.NUMBERS.numberToWords(parseInt(t, 10)) : t
        }
        ;(e.Grammar = a),
          (e.numbersToAlpha = c),
          a.getInstance().setCorrection('localFont', i.localFont),
          a.getInstance().setCorrection('localRole', i.localRole),
          a.getInstance().setCorrection('localEnclose', i.localEnclose),
          a.getInstance().setCorrection('ignoreFont', l),
          a.getInstance().setPreprocessor('annotation', function (t, e) {
            return t + ':' + e
          }),
          a.getInstance().setPreprocessor('noTranslateText', function (t) {
            return t.match(new RegExp('^[' + s.LOCALE.MESSAGES.regexp.TEXT + ']+$')) && (a.getInstance().currentFlags.translate = !1), t
          }),
          a.getInstance().setCorrection('ignoreCaps', function (t) {
            let e = s.LOCALE.ALPHABETS.capPrefix[o.default.getInstance().domain]
            return void 0 === e && (e = s.LOCALE.ALPHABETS.capPrefix.default), l(t, e)
          }),
          a.getInstance().setPreprocessor('numbers2alpha', c)
      },
      2780: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.enumerate = e.lookupString = e.lookupCategory = e.lookupRule = e.addSiUnitRules = e.addUnitRules = e.addFunctionRules = e.addSymbolRules = e.defineRule = e.defineRules = e.setSiPrefixes = void 0)
        const n = r(2057),
          o = r(5897),
          i = r(7491),
          s = r(4658),
          a = r(1676)
        let l = a.DynamicCstr.DEFAULT_VALUES[a.Axis.LOCALE],
          c = a.DynamicCstr.DEFAULT_VALUES[a.Axis.MODALITY],
          u = {}
        e.setSiPrefixes = function (t) {
          u = t
        }
        const p = {}
        function h(t, e, r, n) {
          const o = _(e)
          S(o, r), o.defineRulesFromMappings(t, l, c, e, n)
        }
        function f(t) {
          if (v(t)) return
          const e = t.names,
            r = t.mappings,
            n = t.category
          for (let t, o = 0; (t = e[o]); o++) h(t, t, n, r)
        }
        function d(t) {
          for (const e of Object.keys(u)) {
            const r = Object.assign({}, t)
            r.mappings = {}
            const n = u[e]
            ;(r.key = e + r.key),
              (r.names = r.names.map(function (t) {
                return e + t
              }))
            for (const e of Object.keys(t.mappings)) {
              r.mappings[e] = {}
              for (const o of Object.keys(t.mappings[e])) r.mappings[e][o] = i.locales[l]().FUNCTIONS.si(n, t.mappings[e][o])
            }
            b(r)
          }
          b(t)
        }
        function m(t, e) {
          const r = p[t]
          return r ? r.lookupRule(null, e) : null
        }
        function y(t, e) {
          const r = m(t, e)
          return r ? r.action : null
        }
        function g(t, e) {
          return (e = e || {}), t.length ? ((e[t[0]] = g(t.slice(1), e[t[0]])), e) : e
        }
        function b(t) {
          const e = t.names
          e &&
            (t.names = e.map(function (t) {
              return t + ':unit'
            })),
            f(t)
        }
        function v(t) {
          return !(!t.locale && !t.modality) && ((l = t.locale || l), (c = t.modality || c), !0)
        }
        function _(t) {
          let e = p[t]
          return e ? (n.Debugger.getInstance().output('Store exists! ' + t), e) : ((e = new s.MathSimpleStore()), (p[t] = e), e)
        }
        function S(t, e) {
          e && (t.category = e)
        }
        ;(e.defineRules = h),
          (e.defineRule = function (t, e, r, n, o, i) {
            const s = _(o)
            S(s, n), s.defineRuleFromStrings(t, l, c, e, r, o, i)
          }),
          (e.addSymbolRules = function (t) {
            if (v(t)) return
            const e = s.MathSimpleStore.parseUnicode(t.key)
            h(t.key, e, t.category, t.mappings)
          }),
          (e.addFunctionRules = f),
          (e.addUnitRules = function (t) {
            v(t) || (t.si ? d(t) : b(t))
          }),
          (e.addSiUnitRules = d),
          (e.lookupRule = m),
          (e.lookupCategory = function (t) {
            const e = p[t]
            return e ? e.category : ''
          }),
          (e.lookupString = y),
          (o.default.getInstance().evaluator = y),
          (e.enumerate = function (t = {}) {
            for (const e of Object.values(p)) for (const [, r] of e.rules.entries()) for (const { cstr: e } of r) t = g(e.getValues(), t)
            return t
          })
      },
      4658: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathSimpleStore = void 0)
        const n = r(5897),
          o = r(1676)
        class i {
          constructor() {
            ;(this.category = ''), (this.rules = new Map())
          }
          static parseUnicode(t) {
            const e = parseInt(t, 16)
            return String.fromCodePoint(e)
          }
          static testDynamicConstraints_(t, e) {
            return n.default.getInstance().strict ? e.cstr.equal(t) : n.default.getInstance().comparator.match(e.cstr)
          }
          defineRulesFromMappings(t, e, r, n, o) {
            for (const i in o)
              for (const s in o[i]) {
                const a = o[i][s]
                this.defineRuleFromStrings(t, e, r, i, s, n, a)
              }
          }
          getRules(t) {
            let e = this.rules.get(t)
            return e || ((e = []), this.rules.set(t, e)), e
          }
          defineRuleFromStrings(t, e, r, o, i, s, a) {
            let l = this.getRules(e)
            const c = n.default.getInstance().parsers[o] || n.default.getInstance().defaultParser,
              u = n.default.getInstance().comparators[o],
              p = `${e}.${r}.${o}.${i}`,
              h = c.parse(p),
              f = u ? u() : n.default.getInstance().comparator,
              d = f.getReference()
            f.setReference(h)
            const m = { cstr: h, action: a }
            ;(l = l.filter((t) => !h.equal(t.cstr))), l.push(m), this.rules.set(e, l), f.setReference(d)
          }
          lookupRule(t, e) {
            let r = this.getRules(e.getValue(o.Axis.LOCALE))
            return (
              (r = r.filter(function (t) {
                return i.testDynamicConstraints_(e, t)
              })),
              1 === r.length ? r[0] : r.length ? r.sort((t, e) => n.default.getInstance().comparator.compare(t.cstr, e.cstr))[0] : null
            )
          }
        }
        e.MathSimpleStore = i
      },
      9935: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathStore = void 0)
        const n = r(707),
          o = r(4356),
          i = r(7630),
          s = r(4504),
          a = r(4650)
        class l extends s.BaseRuleStore {
          constructor() {
            super(), (this.annotators = []), (this.parseMethods.Alias = this.defineAlias), (this.parseMethods.SpecializedRule = this.defineSpecializedRule), (this.parseMethods.Specialized = this.defineSpecialized)
          }
          initialize() {
            this.initialized || (this.annotations(), (this.initialized = !0))
          }
          annotations() {
            for (let t, e = 0; (t = this.annotators[e]); e++) (0, i.activate)(this.domain, t)
          }
          defineAlias(t, e, ...r) {
            const n = this.parsePrecondition(e, r)
            if (!n) return void console.error(`Precondition Error: ${e} ${r}`)
            const o = this.preconditions.get(t)
            o ? o.addFullCondition(n) : console.error(`Alias Error: No precondition by the name of ${t}`)
          }
          defineRulesAlias(t, e, ...r) {
            const n = this.findAllRules(function (e) {
              return e.name === t
            })
            if (0 === n.length) throw new a.OutputError('Rule with name ' + t + ' does not exist.')
            const o = []
            n.forEach((t) => {
              ;((t) => {
                const e = t.dynamicCstr.toString(),
                  r = t.action.toString()
                for (let t, n = 0; (t = o[n]); n++) if (t.action === r && t.cstr === e) return !1
                return o.push({ cstr: e, action: r }), !0
              })(t) && this.addAlias_(t, e, r)
            })
          }
          defineSpecializedRule(t, e, r, n) {
            const o = this.parseCstr(e),
              i = this.findRule((e) => e.name === t && o.equal(e.dynamicCstr)),
              s = this.parseCstr(r)
            if (!i && n) throw new a.OutputError('Rule named ' + t + ' with style ' + e + ' does not exist.')
            const l = n ? a.Action.fromString(n) : i.action,
              c = new a.SpeechRule(i.name, s, i.precondition, l)
            this.addRule(c)
          }
          defineSpecialized(t, e, r) {
            const n = this.parseCstr(r)
            if (!n) return void console.error(`Dynamic Constraint Error: ${r}`)
            const o = this.preconditions.get(t)
            o ? o.addConstraint(n) : console.error(`Alias Error: No precondition by the name of ${t}`)
          }
          evaluateString(t) {
            const e = []
            if (t.match(/^\s+$/)) return e
            let r = this.matchNumber_(t)
            if (r && r.length === t.length) return e.push(this.evaluateCharacter(r.number)), e
            const i = n.removeEmpty(t.replace(/\s/g, ' ').split(' '))
            for (let t, n = 0; (t = i[n]); n++)
              if (1 === t.length) e.push(this.evaluateCharacter(t))
              else if (t.match(new RegExp('^[' + o.LOCALE.MESSAGES.regexp.TEXT + ']+$'))) e.push(this.evaluateCharacter(t))
              else {
                let n = t
                for (; n; ) {
                  r = this.matchNumber_(n)
                  const t = n.match(new RegExp('^[' + o.LOCALE.MESSAGES.regexp.TEXT + ']+'))
                  if (r) e.push(this.evaluateCharacter(r.number)), (n = n.substring(r.length))
                  else if (t) e.push(this.evaluateCharacter(t[0])), (n = n.substring(t[0].length))
                  else {
                    const t = Array.from(n),
                      r = t[0]
                    e.push(this.evaluateCharacter(r)), (n = t.slice(1).join(''))
                  }
                }
              }
            return e
          }
          parse(t) {
            super.parse(t), (this.annotators = t.annotators || [])
          }
          addAlias_(t, e, r) {
            const n = this.parsePrecondition(e, r),
              o = new a.SpeechRule(t.name, t.dynamicCstr, n, t.action)
            ;(o.name = t.name), this.addRule(o)
          }
          matchNumber_(t) {
            const e = t.match(new RegExp('^' + o.LOCALE.MESSAGES.regexp.NUMBER)),
              r = t.match(new RegExp('^' + l.regexp.NUMBER))
            if (!e && !r) return null
            const n = r && r[0] === t
            if ((e && e[0] === t) || !n) return e ? { number: e[0], length: e[0].length } : null
            return {
              number: r[0].replace(new RegExp(l.regexp.DIGIT_GROUP, 'g'), 'X').replace(new RegExp(l.regexp.DECIMAL_MARK, 'g'), o.LOCALE.MESSAGES.regexp.DECIMAL_MARK).replace(/X/g, o.LOCALE.MESSAGES.regexp.DIGIT_GROUP.replace(/\\/g, '')),
              length: r[0].length
            }
          }
        }
        ;(e.MathStore = l), (l.regexp = { NUMBER: '((\\d{1,3})(?=(,| ))((,| )\\d{3})*(\\.\\d+)?)|^\\d*\\.\\d+|^\\d+', DECIMAL_MARK: '\\.', DIGIT_GROUP: ',' })
      },
      4650: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.OutputError = e.Precondition = e.Action = e.Component = e.ActionType = e.SpeechRule = void 0)
        const n = r(5897),
          o = r(2105)
        var i
        function s(t) {
          switch (t) {
            case '[n]':
              return i.NODE
            case '[m]':
              return i.MULTI
            case '[t]':
              return i.TEXT
            case '[p]':
              return i.PERSONALITY
            default:
              throw 'Parse error: ' + t
          }
        }
        ;(e.SpeechRule = class {
          constructor(t, e, r, n) {
            ;(this.name = t), (this.dynamicCstr = e), (this.precondition = r), (this.action = n), (this.context = null)
          }
          toString() {
            return this.name + ' | ' + this.dynamicCstr.toString() + ' | ' + this.precondition.toString() + ' ==> ' + this.action.toString()
          }
        }),
          (function (t) {
            ;(t.NODE = 'NODE'), (t.MULTI = 'MULTI'), (t.TEXT = 'TEXT'), (t.PERSONALITY = 'PERSONALITY')
          })((i = e.ActionType || (e.ActionType = {})))
        class a {
          constructor({ type: t, content: e, attributes: r, grammar: n }) {
            ;(this.type = t), (this.content = e), (this.attributes = r), (this.grammar = n)
          }
          static grammarFromString(t) {
            return o.Grammar.parseInput(t)
          }
          static fromString(t) {
            const e = { type: s(t.substring(0, 3)) }
            let r = t.slice(3).trim()
            if (!r) throw new u('Missing content.')
            switch (e.type) {
              case i.TEXT:
                if ('"' === r[0]) {
                  const t = p(r, '\\(')[0].trim()
                  if ('"' !== t.slice(-1)) throw new u('Invalid string syntax.')
                  ;(e.content = t), (r = r.slice(t.length).trim()), -1 === r.indexOf('(') && (r = '')
                  break
                }
              case i.NODE:
              case i.MULTI: {
                const t = r.indexOf(' (')
                if (-1 === t) {
                  ;(e.content = r.trim()), (r = '')
                  break
                }
                ;(e.content = r.substring(0, t).trim()), (r = r.slice(t).trim())
              }
            }
            if (r) {
              const t = a.attributesFromString(r)
              t.grammar && ((e.grammar = t.grammar), delete t.grammar), Object.keys(t).length && (e.attributes = t)
            }
            return new a(e)
          }
          static attributesFromString(t) {
            if ('(' !== t[0] || ')' !== t.slice(-1)) throw new u('Invalid attribute expression: ' + t)
            const e = {},
              r = p(t.slice(1, -1), ',')
            for (let t = 0, n = r.length; t < n; t++) {
              const n = r[t],
                i = n.indexOf(':')
              if (-1 === i) e[n.trim()] = 'true'
              else {
                const t = n.substring(0, i).trim(),
                  r = n.slice(i + 1).trim()
                e[t] = t === o.ATTRIBUTE ? a.grammarFromString(r) : r
              }
            }
            return e
          }
          toString() {
            let t = ''
            ;(t += (function (t) {
              switch (t) {
                case i.NODE:
                  return '[n]'
                case i.MULTI:
                  return '[m]'
                case i.TEXT:
                  return '[t]'
                case i.PERSONALITY:
                  return '[p]'
                default:
                  throw 'Unknown type error: ' + t
              }
            })(this.type)),
              (t += this.content ? ' ' + this.content : '')
            const e = this.attributesToString()
            return (t += e ? ' ' + e : ''), t
          }
          grammarToString() {
            return this.getGrammar().join(':')
          }
          getGrammar() {
            const t = []
            for (const e in this.grammar) !0 === this.grammar[e] ? t.push(e) : !1 === this.grammar[e] ? t.push('!' + e) : t.push(e + '=' + this.grammar[e])
            return t
          }
          attributesToString() {
            const t = this.getAttributes(),
              e = this.grammarToString()
            return e && t.push('grammar:' + e), t.length > 0 ? '(' + t.join(', ') + ')' : ''
          }
          getAttributes() {
            const t = []
            for (const e in this.attributes) {
              const r = this.attributes[e]
              'true' === r ? t.push(e) : t.push(e + ':' + r)
            }
            return t
          }
        }
        e.Component = a
        class l {
          constructor(t) {
            this.components = t
          }
          static fromString(t) {
            const e = p(t, ';')
                .filter(function (t) {
                  return t.match(/\S/)
                })
                .map(function (t) {
                  return t.trim()
                }),
              r = []
            for (let t = 0, n = e.length; t < n; t++) {
              const n = a.fromString(e[t])
              n && r.push(n)
            }
            return new l(r)
          }
          toString() {
            return this.components
              .map(function (t) {
                return t.toString()
              })
              .join('; ')
          }
        }
        e.Action = l
        class c {
          constructor(t, ...e) {
            ;(this.query = t), (this.constraints = e)
            const [r, n] = this.presetPriority()
            this.priority = r ? n : this.calculatePriority()
          }
          static constraintValue(t, e) {
            for (let r, n = 0; (r = e[n]); n++) if (t.match(r)) return ++n
            return 0
          }
          toString() {
            const t = this.constraints.join(', ')
            return `${this.query}, ${t} (${this.priority}, ${this.rank})`
          }
          calculatePriority() {
            const t = c.constraintValue(this.query, c.queryPriorities)
            if (!t) return 0
            const e = this.query.match(/^self::.+\[(.+)\]/)[1]
            return 100 * t + 10 * c.constraintValue(e, c.attributePriorities)
          }
          presetPriority() {
            if (!this.constraints.length) return [!1, 0]
            const t = this.constraints[this.constraints.length - 1].match(/^priority=(.*$)/)
            if (!t) return [!1, 0]
            this.constraints.pop()
            const e = parseFloat(t[1])
            return [!0, isNaN(e) ? 0 : e]
          }
        }
        ;(e.Precondition = c), (c.queryPriorities = [/^self::\*\[.+\]$/, /^self::[\w-]+\[.+\]$/]), (c.attributePriorities = [/^@[\w-]+$/, /^@[\w-]+!=".+"$/, /^not\(contains\(@[\w-]+,\s*".+"\)\)$/, /^contains\(@[\w-]+,".+"\)$/, /^@[\w-]+=".+"$/])
        class u extends n.SREError {
          constructor(t) {
            super(t), (this.name = 'RuleError')
          }
        }
        function p(t, e) {
          const r = []
          let n = ''
          for (; '' !== t; ) {
            const o = t.search(e)
            if (-1 === o) {
              if ((t.match(/"/g) || []).length % 2 != 0) throw new u('Invalid string in expression: ' + t)
              r.push(n + t), (n = ''), (t = '')
            } else if ((t.substring(0, o).match(/"/g) || []).length % 2 == 0) r.push(n + t.substring(0, o)), (n = ''), (t = t.substring(o + 1))
            else {
              const e = t.substring(o).search('"')
              if (-1 === e) throw new u('Invalid string in expression: ' + t)
              ;(n += t.substring(0, o + e + 1)), (t = t.substring(o + e + 1))
            }
          }
          return n && r.push(n), r
        }
        e.OutputError = u
      },
      4106: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SpeechRuleContext = void 0)
        const n = r(5274),
          o = r(5662)
        e.SpeechRuleContext = class {
          constructor() {
            ;(this.customQueries = new o.CustomQueries()), (this.customStrings = new o.CustomStrings()), (this.contextFunctions = new o.ContextFunctions()), (this.customGenerators = new o.CustomGenerators())
          }
          applyCustomQuery(t, e) {
            const r = this.customQueries.lookup(e)
            return r ? r(t) : null
          }
          applySelector(t, e) {
            return this.applyCustomQuery(t, e) || n.evalXPath(e, t)
          }
          applyQuery(t, e) {
            const r = this.applySelector(t, e)
            return r.length > 0 ? r[0] : null
          }
          applyConstraint(t, e) {
            return !!this.applyQuery(t, e) || n.evaluateBoolean(e, t)
          }
          constructString(t, e) {
            if (!e) return ''
            if ('"' === e.charAt(0)) return e.slice(1, -1)
            const r = this.customStrings.lookup(e)
            return r ? r(t) : n.evaluateString(e, t)
          }
          parse(t) {
            const e = Array.isArray(t) ? t : Object.entries(t)
            for (let t, r = 0; (t = e[r]); r++) {
              switch (t[0].slice(0, 3)) {
                case 'CQF':
                  this.customQueries.add(t[0], t[1])
                  break
                case 'CSF':
                  this.customStrings.add(t[0], t[1])
                  break
                case 'CTF':
                  this.contextFunctions.add(t[0], t[1])
                  break
                case 'CGF':
                  this.customGenerators.add(t[0], t[1])
                  break
                default:
                  console.error('FunctionError: Invalid function name ' + t[0])
              }
            }
          }
        }
      },
      2362: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.storeFactory = e.SpeechRuleEngine = void 0)
        const n = r(7052),
          o = r(2057),
          i = r(5740),
          s = r(5897),
          a = r(4440),
          l = r(5274),
          c = r(7283),
          u = r(7599),
          p = r(2469),
          h = r(1676),
          f = r(2105),
          d = r(9935),
          m = r(4650),
          y = r(4508)
        class g {
          constructor() {
            ;(this.trie = null), (this.evaluators_ = {}), (this.trie = new y.Trie())
          }
          static getInstance() {
            return (g.instance = g.instance || new g()), g.instance
          }
          static debugSpeechRule(t, e) {
            const r = t.precondition,
              n = t.context.applyQuery(e, r.query)
            o.Debugger.getInstance().output(r.query, n ? n.toString() : n), r.constraints.forEach((r) => o.Debugger.getInstance().output(r, t.context.applyConstraint(e, r)))
          }
          static debugNamedSpeechRule(t, e) {
            const r = g
              .getInstance()
              .trie.collectRules()
              .filter((e) => e.name == t)
            for (let n, i = 0; (n = r[i]); i++) o.Debugger.getInstance().output('Rule', t, 'DynamicCstr:', n.dynamicCstr.toString(), 'number', i), g.debugSpeechRule(n, e)
          }
          evaluateNode(t) {
            ;(0, l.updateEvaluator)(t)
            const e = new Date().getTime()
            let r = []
            try {
              r = this.evaluateNode_(t)
            } catch (t) {
              console.error('Something went wrong computing speech.'), o.Debugger.getInstance().output(t)
            }
            const n = new Date().getTime()
            return o.Debugger.getInstance().output('Time:', n - e), r
          }
          toString() {
            return this.trie
              .collectRules()
              .map((t) => t.toString())
              .join('\n')
          }
          runInSetting(t, e) {
            const r = s.default.getInstance(),
              n = {}
            for (const e in t) (n[e] = r[e]), (r[e] = t[e])
            r.setDynamicCstr()
            const o = e()
            for (const t in n) r[t] = n[t]
            return r.setDynamicCstr(), o
          }
          addStore(t) {
            const e = v(t)
            'abstract' !== e.kind && e.getSpeechRules().forEach((t) => this.trie.addRule(t)), this.addEvaluator(e)
          }
          processGrammar(t, e, r) {
            const n = {}
            for (const o in r) {
              const i = r[o]
              n[o] = 'string' == typeof i ? t.constructString(e, i) : i
            }
            f.Grammar.getInstance().pushState(n)
          }
          addEvaluator(t) {
            const e = t.evaluateDefault.bind(t),
              r = this.evaluators_[t.locale]
            if (r) return void (r[t.modality] = e)
            const n = {}
            ;(n[t.modality] = e), (this.evaluators_[t.locale] = n)
          }
          getEvaluator(t, e) {
            const r = this.evaluators_[t] || this.evaluators_[h.DynamicCstr.DEFAULT_VALUES[h.Axis.LOCALE]]
            return r[e] || r[h.DynamicCstr.DEFAULT_VALUES[h.Axis.MODALITY]]
          }
          enumerate(t) {
            return this.trie.enumerate(t)
          }
          evaluateNode_(t) {
            return t ? (this.updateConstraint_(), this.evaluateTree_(t)) : []
          }
          evaluateTree_(t) {
            const e = s.default.getInstance()
            let r
            o.Debugger.getInstance().output(e.mode !== a.Mode.HTTP ? t.toString() : t), f.Grammar.getInstance().setAttribute(t)
            const i = this.lookupRule(t, e.dynamicCstr)
            if (!i) return e.strict ? [] : ((r = this.getEvaluator(e.locale, e.modality)(t)), t.attributes && this.addPersonality_(r, {}, !1, t), r)
            o.Debugger.getInstance().generateOutput(() => ['Apply Rule:', i.name, i.dynamicCstr.toString(), (e.mode, a.Mode.HTTP, t).toString()])
            const c = i.context,
              u = i.action.components
            r = []
            for (let e, o = 0; (e = u[o]); o++) {
              let o = []
              const i = e.content || '',
                a = e.attributes || {}
              let u = !1
              e.grammar && this.processGrammar(c, t, e.grammar)
              let p = null
              if (a.engine) {
                p = s.default.getInstance().dynamicCstr.getComponents()
                const t = f.Grammar.parseInput(a.engine)
                s.default.getInstance().setDynamicCstr(t)
              }
              switch (e.type) {
                case m.ActionType.NODE:
                  {
                    const e = c.applyQuery(t, i)
                    e && (o = this.evaluateTree_(e))
                  }
                  break
                case m.ActionType.MULTI:
                  {
                    u = !0
                    const e = c.applySelector(t, i)
                    e.length > 0 && (o = this.evaluateNodeList_(c, e, a.sepFunc, c.constructString(t, a.separator), a.ctxtFunc, c.constructString(t, a.context)))
                  }
                  break
                case m.ActionType.TEXT:
                  {
                    const e = a.span,
                      r = {}
                    if (e) {
                      const n = (0, l.evalXPath)(e, t)
                      n.length && (r.extid = n[0].getAttribute('extid'))
                    }
                    const s = c.constructString(t, i)
                    ;(s || '' === s) &&
                      (o = Array.isArray(s)
                        ? s.map(function (t) {
                            return n.AuditoryDescription.create({ text: t.speech, attributes: t.attributes }, { adjust: !0 })
                          })
                        : [n.AuditoryDescription.create({ text: s, attributes: r }, { adjust: !0 })])
                  }
                  break
                case m.ActionType.PERSONALITY:
                default:
                  o = [n.AuditoryDescription.create({ text: i })]
              }
              o[0] && !u && (a.context && (o[0].context = c.constructString(t, a.context) + (o[0].context || '')), a.annotation && (o[0].annotation = a.annotation)),
                this.addLayout(o, a, u),
                e.grammar && f.Grammar.getInstance().popState(),
                (r = r.concat(this.addPersonality_(o, a, u, t))),
                p && s.default.getInstance().setDynamicCstr(p)
            }
            return r
          }
          evaluateNodeList_(t, e, r, o, i, s) {
            if (!e.length) return []
            const a = o || '',
              l = s || '',
              c = t.contextFunctions.lookup(i),
              u = c
                ? c(e, l)
                : function () {
                    return l
                  },
              p = t.contextFunctions.lookup(r),
              h = p
                ? p(e, a)
                : function () {
                    return [n.AuditoryDescription.create({ text: a }, { translate: !0 })]
                  }
            let f = []
            for (let t, r = 0; (t = e[r]); r++) {
              const n = this.evaluateTree_(t)
              if (n.length > 0 && ((n[0].context = u() + (n[0].context || '')), (f = f.concat(n)), r < e.length - 1)) {
                const t = h()
                f = f.concat(t)
              }
            }
            return f
          }
          addLayout(t, e, r) {
            const o = e.layout
            o &&
              (o.match(/^begin/)
                ? t.unshift(new n.AuditoryDescription({ text: '', layout: o }))
                : o.match(/^end/)
                ? t.push(new n.AuditoryDescription({ text: '', layout: o }))
                : (t.unshift(new n.AuditoryDescription({ text: '', layout: `begin${o}` })), t.push(new n.AuditoryDescription({ text: '', layout: `end${o}` }))))
          }
          addPersonality_(t, e, r, o) {
            const i = {}
            let s = null
            for (const t of a.personalityPropList) {
              const r = e[t]
              if (void 0 === r) continue
              const n = parseFloat(r),
                o = isNaN(n) ? ('"' === r.charAt(0) ? r.slice(1, -1) : r) : n
              t === a.personalityProps.PAUSE ? (s = o) : (i[t] = o)
            }
            for (let e, r = 0; (e = t[r]); r++) this.addRelativePersonality_(e, i), this.addExternalAttributes_(e, o)
            if ((r && t.length && delete t[t.length - 1].personality[a.personalityProps.JOIN], s && t.length)) {
              const e = t[t.length - 1]
              e.text || Object.keys(e.personality).length ? t.push(n.AuditoryDescription.create({ text: '', personality: { pause: s } })) : (e.personality[a.personalityProps.PAUSE] = s)
            }
            return t
          }
          addExternalAttributes_(t, e) {
            if (e.hasAttributes()) {
              const r = e.attributes
              for (let e = r.length - 1; e >= 0; e--) {
                const n = r[e].name
                !t.attributes[n] && n.match(/^ext/) && (t.attributes[n] = r[e].value)
              }
            }
          }
          addRelativePersonality_(t, e) {
            if (!t.personality) return (t.personality = e), t
            const r = t.personality
            for (const t in e) r[t] && 'number' == typeof r[t] && 'number' == typeof e[t] ? (r[t] = r[t] + e[t]) : r[t] || (r[t] = e[t])
            return t
          }
          updateConstraint_() {
            const t = s.default.getInstance().dynamicCstr,
              e = s.default.getInstance().strict,
              r = this.trie,
              n = {}
            let o = t.getValue(h.Axis.LOCALE),
              i = t.getValue(h.Axis.MODALITY),
              a = t.getValue(h.Axis.DOMAIN)
            r.hasSubtrie([o, i, a]) || ((a = h.DynamicCstr.DEFAULT_VALUES[h.Axis.DOMAIN]), r.hasSubtrie([o, i, a]) || ((i = h.DynamicCstr.DEFAULT_VALUES[h.Axis.MODALITY]), r.hasSubtrie([o, i, a]) || (o = h.DynamicCstr.DEFAULT_VALUES[h.Axis.LOCALE]))),
              (n[h.Axis.LOCALE] = [o]),
              (n[h.Axis.MODALITY] = ['summary' !== i ? i : h.DynamicCstr.DEFAULT_VALUES[h.Axis.MODALITY]]),
              (n[h.Axis.DOMAIN] = ['speech' !== i ? h.DynamicCstr.DEFAULT_VALUES[h.Axis.DOMAIN] : a])
            const l = t.getOrder()
            for (let r, o = 0; (r = l[o]); o++)
              if (!n[r]) {
                const o = t.getValue(r),
                  i = this.makeSet_(o, t.preference),
                  s = h.DynamicCstr.DEFAULT_VALUES[r]
                e || o === s || i.push(s), (n[r] = i)
              }
            t.updateProperties(n)
          }
          makeSet_(t, e) {
            return e && Object.keys(e).length ? t.split(':') : [t]
          }
          lookupRule(t, e) {
            if (!t || (t.nodeType !== i.NodeType.ELEMENT_NODE && t.nodeType !== i.NodeType.TEXT_NODE)) return null
            const r = this.lookupRules(t, e)
            return r.length > 0 ? this.pickMostConstraint_(e, r) : null
          }
          lookupRules(t, e) {
            return this.trie.lookupRules(t, e.allProperties())
          }
          pickMostConstraint_(t, e) {
            const r = s.default.getInstance().comparator
            return (
              e.sort(function (t, e) {
                return r.compare(t.dynamicCstr, e.dynamicCstr) || e.precondition.priority - t.precondition.priority || e.precondition.constraints.length - t.precondition.constraints.length || e.precondition.rank - t.precondition.rank
              }),
              o.Debugger.getInstance().generateOutput((() => e.map((t) => t.name + '(' + t.dynamicCstr.toString() + ')')).bind(this)),
              e[0]
            )
          }
        }
        e.SpeechRuleEngine = g
        const b = new Map()
        function v(t) {
          const e = `${t.locale}.${t.modality}.${t.domain}`
          if ('actions' === t.kind) {
            const r = b.get(e)
            return r.parse(t), r
          }
          u.init(), t && !t.functions && (t.functions = c.getStore(t.locale, t.modality, t.domain))
          const r = 'braille' === t.modality ? new p.BrailleStore() : new d.MathStore()
          return b.set(e, r), t.inherits && (r.inherits = b.get(`${t.inherits}.${t.modality}.${t.domain}`)), r.parse(t), r.initialize(), r
        }
        ;(e.storeFactory = v), (s.default.nodeEvaluator = g.getInstance().evaluateNode.bind(g.getInstance()))
      },
      5662: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.CustomGenerators = e.ContextFunctions = e.CustomStrings = e.CustomQueries = void 0)
        class r {
          constructor(t, e) {
            ;(this.prefix = t), (this.store = e)
          }
          add(t, e) {
            this.checkCustomFunctionSyntax_(t) && (this.store[t] = e)
          }
          addStore(t) {
            const e = Object.keys(t.store)
            for (let r, n = 0; (r = e[n]); n++) this.add(r, t.store[r])
          }
          lookup(t) {
            return this.store[t]
          }
          checkCustomFunctionSyntax_(t) {
            const e = new RegExp('^' + this.prefix)
            return !!t.match(e) || (console.error('FunctionError: Invalid function name. Expected prefix ' + this.prefix), !1)
          }
        }
        e.CustomQueries = class extends r {
          constructor() {
            super('CQF', {})
          }
        }
        e.CustomStrings = class extends r {
          constructor() {
            super('CSF', {})
          }
        }
        e.ContextFunctions = class extends r {
          constructor() {
            super('CTF', {})
          }
        }
        e.CustomGenerators = class extends r {
          constructor() {
            super('CGF', {})
          }
        }
      },
      365: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.contentIterator = e.pauseSeparator = e.nodeCounter = void 0)
        const n = r(7052),
          o = r(5274),
          i = r(5897)
        ;(e.nodeCounter = function (t, e) {
          const r = t.length
          let n = 0,
            o = e
          return (
            e || (o = ''),
            function () {
              return n < r && (n += 1), o + ' ' + n
            }
          )
        }),
          (e.pauseSeparator = function (t, e) {
            const r = parseFloat(e),
              o = isNaN(r) ? e : r
            return function () {
              return [n.AuditoryDescription.create({ text: '', personality: { pause: o } })]
            }
          }),
          (e.contentIterator = function (t, e) {
            let r
            return (
              (r = t.length > 0 ? o.evalXPath('../../content/*', t[0]) : []),
              function () {
                const t = r.shift(),
                  o = e ? [n.AuditoryDescription.create({ text: e }, { translate: !0 })] : []
                if (!t) return o
                const s = i.default.evaluateNode(t)
                return o.concat(s)
              }
            )
          })
      },
      1414: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.getTreeFromString = e.getTree = e.xmlTree = void 0)
        const n = r(5740),
          o = r(7075)
        function i(t) {
          return new o.SemanticTree(t)
        }
        ;(e.xmlTree = function (t) {
          return i(t).xml()
        }),
          (e.getTree = i),
          (e.getTreeFromString = function (t) {
            return i(n.parseInput(t))
          })
      },
      7630: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.annotate = e.activate = e.register = e.visitors = e.annotators = void 0)
        const n = r(9265)
        ;(e.annotators = new Map()),
          (e.visitors = new Map()),
          (e.register = function (t) {
            const r = t.domain + ':' + t.name
            t instanceof n.SemanticAnnotator ? e.annotators.set(r, t) : e.visitors.set(r, t)
          }),
          (e.activate = function (t, r) {
            const n = t + ':' + r,
              o = e.annotators.get(n) || e.visitors.get(n)
            o && (o.active = !0)
          }),
          (e.annotate = function (t) {
            for (const r of e.annotators.values()) r.active && r.annotate(t)
            for (const r of e.visitors.values()) r.active && r.visit(t, Object.assign({}, r.def))
          })
      },
      9265: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticVisitor = e.SemanticAnnotator = void 0)
        e.SemanticAnnotator = class {
          constructor(t, e, r) {
            ;(this.domain = t), (this.name = e), (this.func = r), (this.active = !1)
          }
          annotate(t) {
            t.childNodes.forEach(this.annotate.bind(this)), t.addAnnotation(this.domain, this.func(t))
          }
        }
        e.SemanticVisitor = class {
          constructor(t, e, r, n = {}) {
            ;(this.domain = t), (this.name = e), (this.func = r), (this.def = n), (this.active = !1)
          }
          visit(t, e) {
            let r = this.func(t, e)
            t.addAnnotation(this.domain, r[0])
            for (let e, n = 0; (e = t.childNodes[n]); n++) r = this.visit(e, r[1])
            return r
          }
        }
      },
      3588: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.lookupSecondary = e.isEmbellishedType = e.isMatchingFence = e.functionApplication = e.invisibleComma = e.invisiblePlus = e.invisibleTimes = e.lookupMeaning = e.lookupRole = e.lookupType = e.equal = e.allLettersRegExp = void 0)
        const r = String.fromCodePoint(8291),
          n = ['\uff0c', '\ufe50', ',', r],
          o = ['\xaf', '\u2012', '\u2013', '\u2014', '\u2015', '\ufe58', '-', '\u207b', '\u208b', '\u2212', '\u2796', '\ufe63', '\uff0d', '\u2010', '\u2011', '\u203e', '_'],
          i = ['~', '\u0303', '\u223c', '\u02dc', '\u223d', '\u02f7', '\u0334', '\u0330'],
          s = {
            '(': ')',
            '[': ']',
            '{': '}',
            '\u2045': '\u2046',
            '\u2329': '\u232a',
            '\u2768': '\u2769',
            '\u276a': '\u276b',
            '\u276c': '\u276d',
            '\u276e': '\u276f',
            '\u2770': '\u2771',
            '\u2772': '\u2773',
            '\u2774': '\u2775',
            '\u27c5': '\u27c6',
            '\u27e6': '\u27e7',
            '\u27e8': '\u27e9',
            '\u27ea': '\u27eb',
            '\u27ec': '\u27ed',
            '\u27ee': '\u27ef',
            '\u2983': '\u2984',
            '\u2985': '\u2986',
            '\u2987': '\u2988',
            '\u2989': '\u298a',
            '\u298b': '\u298c',
            '\u298d': '\u298e',
            '\u298f': '\u2990',
            '\u2991': '\u2992',
            '\u2993': '\u2994',
            '\u2995': '\u2996',
            '\u2997': '\u2998',
            '\u29d8': '\u29d9',
            '\u29da': '\u29db',
            '\u29fc': '\u29fd',
            '\u2e22': '\u2e23',
            '\u2e24': '\u2e25',
            '\u2e26': '\u2e27',
            '\u2e28': '\u2e29',
            '\u3008': '\u3009',
            '\u300a': '\u300b',
            '\u300c': '\u300d',
            '\u300e': '\u300f',
            '\u3010': '\u3011',
            '\u3014': '\u3015',
            '\u3016': '\u3017',
            '\u3018': '\u3019',
            '\u301a': '\u301b',
            '\u301d': '\u301e',
            '\ufd3e': '\ufd3f',
            '\ufe17': '\ufe18',
            '\ufe59': '\ufe5a',
            '\ufe5b': '\ufe5c',
            '\ufe5d': '\ufe5e',
            '\uff08': '\uff09',
            '\uff3b': '\uff3d',
            '\uff5b': '\uff5d',
            '\uff5f': '\uff60',
            '\uff62': '\uff63',
            '\u2308': '\u2309',
            '\u230a': '\u230b',
            '\u230c': '\u230d',
            '\u230e': '\u230f',
            '\u231c': '\u231d',
            '\u231e': '\u231f',
            '\u239b': '\u239e',
            '\u239c': '\u239f',
            '\u239d': '\u23a0',
            '\u23a1': '\u23a4',
            '\u23a2': '\u23a5',
            '\u23a3': '\u23a6',
            '\u23a7': '\u23ab',
            '\u23a8': '\u23ac',
            '\u23a9': '\u23ad',
            '\u23b0': '\u23b1',
            '\u23b8': '\u23b9'
          },
          a = {
            '\u23b4': '\u23b5',
            '\u23dc': '\u23dd',
            '\u23de': '\u23df',
            '\u23e0': '\u23e1',
            '\ufe35': '\ufe36',
            '\ufe37': '\ufe38',
            '\ufe39': '\ufe3a',
            '\ufe3b': '\ufe3c',
            '\ufe3d': '\ufe3e',
            '\ufe3f': '\ufe40',
            '\ufe41': '\ufe42',
            '\ufe43': '\ufe44',
            '\ufe47': '\ufe48'
          },
          l = Object.keys(s),
          c = Object.values(s)
        c.push('\u301f')
        const u = Object.keys(a),
          p = Object.values(a),
          h = ['|', '\xa6', '\u2223', '\u23d0', '\u23b8', '\u23b9', '\u2758', '\uff5c', '\uffe4', '\ufe31', '\ufe32'],
          f = ['\u2016', '\u2225', '\u2980', '\u2af4'],
          d = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'],
          m = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '\u0131', '\u0237'],
          y = [
            '\uff21',
            '\uff22',
            '\uff23',
            '\uff24',
            '\uff25',
            '\uff26',
            '\uff27',
            '\uff28',
            '\uff29',
            '\uff2a',
            '\uff2b',
            '\uff2c',
            '\uff2d',
            '\uff2e',
            '\uff2f',
            '\uff30',
            '\uff31',
            '\uff32',
            '\uff33',
            '\uff34',
            '\uff35',
            '\uff36',
            '\uff37',
            '\uff38',
            '\uff39',
            '\uff3a'
          ],
          g = [
            '\uff41',
            '\uff42',
            '\uff43',
            '\uff44',
            '\uff45',
            '\uff46',
            '\uff47',
            '\uff48',
            '\uff49',
            '\uff4a',
            '\uff4b',
            '\uff4c',
            '\uff4d',
            '\uff4e',
            '\uff4f',
            '\uff50',
            '\uff51',
            '\uff52',
            '\uff53',
            '\uff54',
            '\uff55',
            '\uff56',
            '\uff57',
            '\uff58',
            '\uff59',
            '\uff5a'
          ],
          b = [
            '\ud835\udc00',
            '\ud835\udc01',
            '\ud835\udc02',
            '\ud835\udc03',
            '\ud835\udc04',
            '\ud835\udc05',
            '\ud835\udc06',
            '\ud835\udc07',
            '\ud835\udc08',
            '\ud835\udc09',
            '\ud835\udc0a',
            '\ud835\udc0b',
            '\ud835\udc0c',
            '\ud835\udc0d',
            '\ud835\udc0e',
            '\ud835\udc0f',
            '\ud835\udc10',
            '\ud835\udc11',
            '\ud835\udc12',
            '\ud835\udc13',
            '\ud835\udc14',
            '\ud835\udc15',
            '\ud835\udc16',
            '\ud835\udc17',
            '\ud835\udc18',
            '\ud835\udc19'
          ],
          v = [
            '\ud835\udc1a',
            '\ud835\udc1b',
            '\ud835\udc1c',
            '\ud835\udc1d',
            '\ud835\udc1e',
            '\ud835\udc1f',
            '\ud835\udc20',
            '\ud835\udc21',
            '\ud835\udc22',
            '\ud835\udc23',
            '\ud835\udc24',
            '\ud835\udc25',
            '\ud835\udc26',
            '\ud835\udc27',
            '\ud835\udc28',
            '\ud835\udc29',
            '\ud835\udc2a',
            '\ud835\udc2b',
            '\ud835\udc2c',
            '\ud835\udc2d',
            '\ud835\udc2e',
            '\ud835\udc2f',
            '\ud835\udc30',
            '\ud835\udc31',
            '\ud835\udc32',
            '\ud835\udc33'
          ],
          _ = [
            '\ud835\udc34',
            '\ud835\udc35',
            '\ud835\udc36',
            '\ud835\udc37',
            '\ud835\udc38',
            '\ud835\udc39',
            '\ud835\udc3a',
            '\ud835\udc3b',
            '\ud835\udc3c',
            '\ud835\udc3d',
            '\ud835\udc3e',
            '\ud835\udc3f',
            '\ud835\udc40',
            '\ud835\udc41',
            '\ud835\udc42',
            '\ud835\udc43',
            '\ud835\udc44',
            '\ud835\udc45',
            '\ud835\udc46',
            '\ud835\udc47',
            '\ud835\udc48',
            '\ud835\udc49',
            '\ud835\udc4a',
            '\ud835\udc4b',
            '\ud835\udc4c',
            '\ud835\udc4d'
          ],
          S = [
            '\ud835\udc4e',
            '\ud835\udc4f',
            '\ud835\udc50',
            '\ud835\udc51',
            '\ud835\udc52',
            '\ud835\udc53',
            '\ud835\udc54',
            '\u210e',
            '\ud835\udc56',
            '\ud835\udc57',
            '\ud835\udc58',
            '\ud835\udc59',
            '\ud835\udc5a',
            '\ud835\udc5b',
            '\ud835\udc5c',
            '\ud835\udc5d',
            '\ud835\udc5e',
            '\ud835\udc5f',
            '\ud835\udc60',
            '\ud835\udc61',
            '\ud835\udc62',
            '\ud835\udc63',
            '\ud835\udc64',
            '\ud835\udc65',
            '\ud835\udc66',
            '\ud835\udc67',
            '\ud835\udea4',
            '\ud835\udea5'
          ],
          M = [
            '\ud835\udc68',
            '\ud835\udc69',
            '\ud835\udc6a',
            '\ud835\udc6b',
            '\ud835\udc6c',
            '\ud835\udc6d',
            '\ud835\udc6e',
            '\ud835\udc6f',
            '\ud835\udc70',
            '\ud835\udc71',
            '\ud835\udc72',
            '\ud835\udc73',
            '\ud835\udc74',
            '\ud835\udc75',
            '\ud835\udc76',
            '\ud835\udc77',
            '\ud835\udc78',
            '\ud835\udc79',
            '\ud835\udc7a',
            '\ud835\udc7b',
            '\ud835\udc7c',
            '\ud835\udc7d',
            '\ud835\udc7e',
            '\ud835\udc7f',
            '\ud835\udc80',
            '\ud835\udc81'
          ],
          O = [
            '\ud835\udc82',
            '\ud835\udc83',
            '\ud835\udc84',
            '\ud835\udc85',
            '\ud835\udc86',
            '\ud835\udc87',
            '\ud835\udc88',
            '\ud835\udc89',
            '\ud835\udc8a',
            '\ud835\udc8b',
            '\ud835\udc8c',
            '\ud835\udc8d',
            '\ud835\udc8e',
            '\ud835\udc8f',
            '\ud835\udc90',
            '\ud835\udc91',
            '\ud835\udc92',
            '\ud835\udc93',
            '\ud835\udc94',
            '\ud835\udc95',
            '\ud835\udc96',
            '\ud835\udc97',
            '\ud835\udc98',
            '\ud835\udc99',
            '\ud835\udc9a',
            '\ud835\udc9b'
          ],
          x = [
            '\ud835\udc9c',
            '\u212c',
            '\ud835\udc9e',
            '\ud835\udc9f',
            '\u2130',
            '\u2131',
            '\ud835\udca2',
            '\u210b',
            '\u2110',
            '\ud835\udca5',
            '\ud835\udca6',
            '\u2112',
            '\u2133',
            '\ud835\udca9',
            '\ud835\udcaa',
            '\ud835\udcab',
            '\ud835\udcac',
            '\u211b',
            '\ud835\udcae',
            '\ud835\udcaf',
            '\ud835\udcb0',
            '\ud835\udcb1',
            '\ud835\udcb2',
            '\ud835\udcb3',
            '\ud835\udcb4',
            '\ud835\udcb5',
            '\u2118'
          ],
          E = [
            '\ud835\udcb6',
            '\ud835\udcb7',
            '\ud835\udcb8',
            '\ud835\udcb9',
            '\u212f',
            '\ud835\udcbb',
            '\u210a',
            '\ud835\udcbd',
            '\ud835\udcbe',
            '\ud835\udcbf',
            '\ud835\udcc0',
            '\ud835\udcc1',
            '\ud835\udcc2',
            '\ud835\udcc3',
            '\u2134',
            '\ud835\udcc5',
            '\ud835\udcc6',
            '\ud835\udcc7',
            '\ud835\udcc8',
            '\ud835\udcc9',
            '\ud835\udcca',
            '\ud835\udccb',
            '\ud835\udccc',
            '\ud835\udccd',
            '\ud835\udcce',
            '\ud835\udccf',
            '\u2113'
          ],
          A = [
            '\ud835\udcd0',
            '\ud835\udcd1',
            '\ud835\udcd2',
            '\ud835\udcd3',
            '\ud835\udcd4',
            '\ud835\udcd5',
            '\ud835\udcd6',
            '\ud835\udcd7',
            '\ud835\udcd8',
            '\ud835\udcd9',
            '\ud835\udcda',
            '\ud835\udcdb',
            '\ud835\udcdc',
            '\ud835\udcdd',
            '\ud835\udcde',
            '\ud835\udcdf',
            '\ud835\udce0',
            '\ud835\udce1',
            '\ud835\udce2',
            '\ud835\udce3',
            '\ud835\udce4',
            '\ud835\udce5',
            '\ud835\udce6',
            '\ud835\udce7',
            '\ud835\udce8',
            '\ud835\udce9'
          ],
          C = [
            '\ud835\udcea',
            '\ud835\udceb',
            '\ud835\udcec',
            '\ud835\udced',
            '\ud835\udcee',
            '\ud835\udcef',
            '\ud835\udcf0',
            '\ud835\udcf1',
            '\ud835\udcf2',
            '\ud835\udcf3',
            '\ud835\udcf4',
            '\ud835\udcf5',
            '\ud835\udcf6',
            '\ud835\udcf7',
            '\ud835\udcf8',
            '\ud835\udcf9',
            '\ud835\udcfa',
            '\ud835\udcfb',
            '\ud835\udcfc',
            '\ud835\udcfd',
            '\ud835\udcfe',
            '\ud835\udcff',
            '\ud835\udd00',
            '\ud835\udd01',
            '\ud835\udd02',
            '\ud835\udd03'
          ],
          T = [
            '\ud835\udd04',
            '\ud835\udd05',
            '\u212d',
            '\ud835\udd07',
            '\ud835\udd08',
            '\ud835\udd09',
            '\ud835\udd0a',
            '\u210c',
            '\u2111',
            '\ud835\udd0d',
            '\ud835\udd0e',
            '\ud835\udd0f',
            '\ud835\udd10',
            '\ud835\udd11',
            '\ud835\udd12',
            '\ud835\udd13',
            '\ud835\udd14',
            '\u211c',
            '\ud835\udd16',
            '\ud835\udd17',
            '\ud835\udd18',
            '\ud835\udd19',
            '\ud835\udd1a',
            '\ud835\udd1b',
            '\ud835\udd1c',
            '\u2128'
          ],
          N = [
            '\ud835\udd1e',
            '\ud835\udd1f',
            '\ud835\udd20',
            '\ud835\udd21',
            '\ud835\udd22',
            '\ud835\udd23',
            '\ud835\udd24',
            '\ud835\udd25',
            '\ud835\udd26',
            '\ud835\udd27',
            '\ud835\udd28',
            '\ud835\udd29',
            '\ud835\udd2a',
            '\ud835\udd2b',
            '\ud835\udd2c',
            '\ud835\udd2d',
            '\ud835\udd2e',
            '\ud835\udd2f',
            '\ud835\udd30',
            '\ud835\udd31',
            '\ud835\udd32',
            '\ud835\udd33',
            '\ud835\udd34',
            '\ud835\udd35',
            '\ud835\udd36',
            '\ud835\udd37'
          ],
          w = [
            '\ud835\udd38',
            '\ud835\udd39',
            '\u2102',
            '\ud835\udd3b',
            '\ud835\udd3c',
            '\ud835\udd3d',
            '\ud835\udd3e',
            '\u210d',
            '\ud835\udd40',
            '\ud835\udd41',
            '\ud835\udd42',
            '\ud835\udd43',
            '\ud835\udd44',
            '\u2115',
            '\ud835\udd46',
            '\u2119',
            '\u211a',
            '\u211d',
            '\ud835\udd4a',
            '\ud835\udd4b',
            '\ud835\udd4c',
            '\ud835\udd4d',
            '\ud835\udd4e',
            '\ud835\udd4f',
            '\ud835\udd50',
            '\u2124'
          ],
          L = [
            '\ud835\udd52',
            '\ud835\udd53',
            '\ud835\udd54',
            '\ud835\udd55',
            '\ud835\udd56',
            '\ud835\udd57',
            '\ud835\udd58',
            '\ud835\udd59',
            '\ud835\udd5a',
            '\ud835\udd5b',
            '\ud835\udd5c',
            '\ud835\udd5d',
            '\ud835\udd5e',
            '\ud835\udd5f',
            '\ud835\udd60',
            '\ud835\udd61',
            '\ud835\udd62',
            '\ud835\udd63',
            '\ud835\udd64',
            '\ud835\udd65',
            '\ud835\udd66',
            '\ud835\udd67',
            '\ud835\udd68',
            '\ud835\udd69',
            '\ud835\udd6a',
            '\ud835\udd6b'
          ],
          I = [
            '\ud835\udd6c',
            '\ud835\udd6d',
            '\ud835\udd6e',
            '\ud835\udd6f',
            '\ud835\udd70',
            '\ud835\udd71',
            '\ud835\udd72',
            '\ud835\udd73',
            '\ud835\udd74',
            '\ud835\udd75',
            '\ud835\udd76',
            '\ud835\udd77',
            '\ud835\udd78',
            '\ud835\udd79',
            '\ud835\udd7a',
            '\ud835\udd7b',
            '\ud835\udd7c',
            '\ud835\udd7d',
            '\ud835\udd7e',
            '\ud835\udd7f',
            '\ud835\udd80',
            '\ud835\udd81',
            '\ud835\udd82',
            '\ud835\udd83',
            '\ud835\udd84',
            '\ud835\udd85'
          ],
          P = [
            '\ud835\udd86',
            '\ud835\udd87',
            '\ud835\udd88',
            '\ud835\udd89',
            '\ud835\udd8a',
            '\ud835\udd8b',
            '\ud835\udd8c',
            '\ud835\udd8d',
            '\ud835\udd8e',
            '\ud835\udd8f',
            '\ud835\udd90',
            '\ud835\udd91',
            '\ud835\udd92',
            '\ud835\udd93',
            '\ud835\udd94',
            '\ud835\udd95',
            '\ud835\udd96',
            '\ud835\udd97',
            '\ud835\udd98',
            '\ud835\udd99',
            '\ud835\udd9a',
            '\ud835\udd9b',
            '\ud835\udd9c',
            '\ud835\udd9d',
            '\ud835\udd9e',
            '\ud835\udd9f'
          ],
          R = [
            '\ud835\udda0',
            '\ud835\udda1',
            '\ud835\udda2',
            '\ud835\udda3',
            '\ud835\udda4',
            '\ud835\udda5',
            '\ud835\udda6',
            '\ud835\udda7',
            '\ud835\udda8',
            '\ud835\udda9',
            '\ud835\uddaa',
            '\ud835\uddab',
            '\ud835\uddac',
            '\ud835\uddad',
            '\ud835\uddae',
            '\ud835\uddaf',
            '\ud835\uddb0',
            '\ud835\uddb1',
            '\ud835\uddb2',
            '\ud835\uddb3',
            '\ud835\uddb4',
            '\ud835\uddb5',
            '\ud835\uddb6',
            '\ud835\uddb7',
            '\ud835\uddb8',
            '\ud835\uddb9'
          ],
          k = [
            '\ud835\uddba',
            '\ud835\uddbb',
            '\ud835\uddbc',
            '\ud835\uddbd',
            '\ud835\uddbe',
            '\ud835\uddbf',
            '\ud835\uddc0',
            '\ud835\uddc1',
            '\ud835\uddc2',
            '\ud835\uddc3',
            '\ud835\uddc4',
            '\ud835\uddc5',
            '\ud835\uddc6',
            '\ud835\uddc7',
            '\ud835\uddc8',
            '\ud835\uddc9',
            '\ud835\uddca',
            '\ud835\uddcb',
            '\ud835\uddcc',
            '\ud835\uddcd',
            '\ud835\uddce',
            '\ud835\uddcf',
            '\ud835\uddd0',
            '\ud835\uddd1',
            '\ud835\uddd2',
            '\ud835\uddd3'
          ],
          j = [
            '\ud835\uddd4',
            '\ud835\uddd5',
            '\ud835\uddd6',
            '\ud835\uddd7',
            '\ud835\uddd8',
            '\ud835\uddd9',
            '\ud835\uddda',
            '\ud835\udddb',
            '\ud835\udddc',
            '\ud835\udddd',
            '\ud835\uddde',
            '\ud835\udddf',
            '\ud835\udde0',
            '\ud835\udde1',
            '\ud835\udde2',
            '\ud835\udde3',
            '\ud835\udde4',
            '\ud835\udde5',
            '\ud835\udde6',
            '\ud835\udde7',
            '\ud835\udde8',
            '\ud835\udde9',
            '\ud835\uddea',
            '\ud835\uddeb',
            '\ud835\uddec',
            '\ud835\udded'
          ],
          B = [
            '\ud835\uddee',
            '\ud835\uddef',
            '\ud835\uddf0',
            '\ud835\uddf1',
            '\ud835\uddf2',
            '\ud835\uddf3',
            '\ud835\uddf4',
            '\ud835\uddf5',
            '\ud835\uddf6',
            '\ud835\uddf7',
            '\ud835\uddf8',
            '\ud835\uddf9',
            '\ud835\uddfa',
            '\ud835\uddfb',
            '\ud835\uddfc',
            '\ud835\uddfd',
            '\ud835\uddfe',
            '\ud835\uddff',
            '\ud835\ude00',
            '\ud835\ude01',
            '\ud835\ude02',
            '\ud835\ude03',
            '\ud835\ude04',
            '\ud835\ude05',
            '\ud835\ude06',
            '\ud835\ude07'
          ],
          D = [
            '\ud835\ude08',
            '\ud835\ude09',
            '\ud835\ude0a',
            '\ud835\ude0b',
            '\ud835\ude0c',
            '\ud835\ude0d',
            '\ud835\ude0e',
            '\ud835\ude0f',
            '\ud835\ude10',
            '\ud835\ude11',
            '\ud835\ude12',
            '\ud835\ude13',
            '\ud835\ude14',
            '\ud835\ude15',
            '\ud835\ude16',
            '\ud835\ude17',
            '\ud835\ude18',
            '\ud835\ude19',
            '\ud835\ude1a',
            '\ud835\ude1b',
            '\ud835\ude1c',
            '\ud835\ude1d',
            '\ud835\ude1e',
            '\ud835\ude1f',
            '\ud835\ude20',
            '\ud835\ude21'
          ],
          F = [
            '\ud835\ude22',
            '\ud835\ude23',
            '\ud835\ude24',
            '\ud835\ude25',
            '\ud835\ude26',
            '\ud835\ude27',
            '\ud835\ude28',
            '\ud835\ude29',
            '\ud835\ude2a',
            '\ud835\ude2b',
            '\ud835\ude2c',
            '\ud835\ude2d',
            '\ud835\ude2e',
            '\ud835\ude2f',
            '\ud835\ude30',
            '\ud835\ude31',
            '\ud835\ude32',
            '\ud835\ude33',
            '\ud835\ude34',
            '\ud835\ude35',
            '\ud835\ude36',
            '\ud835\ude37',
            '\ud835\ude38',
            '\ud835\ude39',
            '\ud835\ude3a',
            '\ud835\ude3b'
          ],
          H = [
            '\ud835\ude3c',
            '\ud835\ude3d',
            '\ud835\ude3e',
            '\ud835\ude3f',
            '\ud835\ude40',
            '\ud835\ude41',
            '\ud835\ude42',
            '\ud835\ude43',
            '\ud835\ude44',
            '\ud835\ude45',
            '\ud835\ude46',
            '\ud835\ude47',
            '\ud835\ude48',
            '\ud835\ude49',
            '\ud835\ude4a',
            '\ud835\ude4b',
            '\ud835\ude4c',
            '\ud835\ude4d',
            '\ud835\ude4e',
            '\ud835\ude4f',
            '\ud835\ude50',
            '\ud835\ude51',
            '\ud835\ude52',
            '\ud835\ude53',
            '\ud835\ude54',
            '\ud835\ude55'
          ],
          U = [
            '\ud835\ude56',
            '\ud835\ude57',
            '\ud835\ude58',
            '\ud835\ude59',
            '\ud835\ude5a',
            '\ud835\ude5b',
            '\ud835\ude5c',
            '\ud835\ude5d',
            '\ud835\ude5e',
            '\ud835\ude5f',
            '\ud835\ude60',
            '\ud835\ude61',
            '\ud835\ude62',
            '\ud835\ude63',
            '\ud835\ude64',
            '\ud835\ude65',
            '\ud835\ude66',
            '\ud835\ude67',
            '\ud835\ude68',
            '\ud835\ude69',
            '\ud835\ude6a',
            '\ud835\ude6b',
            '\ud835\ude6c',
            '\ud835\ude6d',
            '\ud835\ude6e',
            '\ud835\ude6f'
          ],
          X = [
            '\ud835\ude70',
            '\ud835\ude71',
            '\ud835\ude72',
            '\ud835\ude73',
            '\ud835\ude74',
            '\ud835\ude75',
            '\ud835\ude76',
            '\ud835\ude77',
            '\ud835\ude78',
            '\ud835\ude79',
            '\ud835\ude7a',
            '\ud835\ude7b',
            '\ud835\ude7c',
            '\ud835\ude7d',
            '\ud835\ude7e',
            '\ud835\ude7f',
            '\ud835\ude80',
            '\ud835\ude81',
            '\ud835\ude82',
            '\ud835\ude83',
            '\ud835\ude84',
            '\ud835\ude85',
            '\ud835\ude86',
            '\ud835\ude87',
            '\ud835\ude88',
            '\ud835\ude89'
          ],
          V = [
            '\ud835\ude8a',
            '\ud835\ude8b',
            '\ud835\ude8c',
            '\ud835\ude8d',
            '\ud835\ude8e',
            '\ud835\ude8f',
            '\ud835\ude90',
            '\ud835\ude91',
            '\ud835\ude92',
            '\ud835\ude93',
            '\ud835\ude94',
            '\ud835\ude95',
            '\ud835\ude96',
            '\ud835\ude97',
            '\ud835\ude98',
            '\ud835\ude99',
            '\ud835\ude9a',
            '\ud835\ude9b',
            '\ud835\ude9c',
            '\ud835\ude9d',
            '\ud835\ude9e',
            '\ud835\ude9f',
            '\ud835\udea0',
            '\ud835\udea1',
            '\ud835\udea2',
            '\ud835\udea3'
          ],
          q = ['\u2145', '\u2146', '\u2147', '\u2148', '\u2149'],
          W = ['\u0391', '\u0392', '\u0393', '\u0394', '\u0395', '\u0396', '\u0397', '\u0398', '\u0399', '\u039a', '\u039b', '\u039c', '\u039d', '\u039e', '\u039f', '\u03a0', '\u03a1', '\u03a3', '\u03a4', '\u03a5', '\u03a6', '\u03a7', '\u03a8', '\u03a9'],
          G = [
            '\u03b1',
            '\u03b2',
            '\u03b3',
            '\u03b4',
            '\u03b5',
            '\u03b6',
            '\u03b7',
            '\u03b8',
            '\u03b9',
            '\u03ba',
            '\u03bb',
            '\u03bc',
            '\u03bd',
            '\u03be',
            '\u03bf',
            '\u03c0',
            '\u03c1',
            '\u03c2',
            '\u03c3',
            '\u03c4',
            '\u03c5',
            '\u03c6',
            '\u03c7',
            '\u03c8',
            '\u03c9'
          ],
          z = [
            '\ud835\udea8',
            '\ud835\udea9',
            '\ud835\udeaa',
            '\ud835\udeab',
            '\ud835\udeac',
            '\ud835\udead',
            '\ud835\udeae',
            '\ud835\udeaf',
            '\ud835\udeb0',
            '\ud835\udeb1',
            '\ud835\udeb2',
            '\ud835\udeb3',
            '\ud835\udeb4',
            '\ud835\udeb5',
            '\ud835\udeb6',
            '\ud835\udeb7',
            '\ud835\udeb8',
            '\ud835\udeba',
            '\ud835\udebb',
            '\ud835\udebc',
            '\ud835\udebd',
            '\ud835\udebe',
            '\ud835\udebf',
            '\ud835\udec0'
          ],
          J = [
            '\ud835\udec2',
            '\ud835\udec3',
            '\ud835\udec4',
            '\ud835\udec5',
            '\ud835\udec6',
            '\ud835\udec7',
            '\ud835\udec8',
            '\ud835\udec9',
            '\ud835\udeca',
            '\ud835\udecb',
            '\ud835\udecc',
            '\ud835\udecd',
            '\ud835\udece',
            '\ud835\udecf',
            '\ud835\uded0',
            '\ud835\uded1',
            '\ud835\uded2',
            '\ud835\uded3',
            '\ud835\uded4',
            '\ud835\uded5',
            '\ud835\uded6',
            '\ud835\uded7',
            '\ud835\uded8',
            '\ud835\uded9',
            '\ud835\udeda'
          ],
          K = [
            '\ud835\udee2',
            '\ud835\udee3',
            '\ud835\udee4',
            '\ud835\udee5',
            '\ud835\udee6',
            '\ud835\udee7',
            '\ud835\udee8',
            '\ud835\udee9',
            '\ud835\udeea',
            '\ud835\udeeb',
            '\ud835\udeec',
            '\ud835\udeed',
            '\ud835\udeee',
            '\ud835\udeef',
            '\ud835\udef0',
            '\ud835\udef1',
            '\ud835\udef2',
            '\ud835\udef4',
            '\ud835\udef5',
            '\ud835\udef6',
            '\ud835\udef7',
            '\ud835\udef8',
            '\ud835\udef9',
            '\ud835\udefa'
          ],
          $ = [
            '\ud835\udefc',
            '\ud835\udefd',
            '\ud835\udefe',
            '\ud835\udeff',
            '\ud835\udf00',
            '\ud835\udf01',
            '\ud835\udf02',
            '\ud835\udf03',
            '\ud835\udf04',
            '\ud835\udf05',
            '\ud835\udf06',
            '\ud835\udf07',
            '\ud835\udf08',
            '\ud835\udf09',
            '\ud835\udf0a',
            '\ud835\udf0b',
            '\ud835\udf0c',
            '\ud835\udf0d',
            '\ud835\udf0e',
            '\ud835\udf0f',
            '\ud835\udf10',
            '\ud835\udf11',
            '\ud835\udf12',
            '\ud835\udf13',
            '\ud835\udf14'
          ],
          Y = [
            '\ud835\udf1c',
            '\ud835\udf1d',
            '\ud835\udf1e',
            '\ud835\udf1f',
            '\ud835\udf20',
            '\ud835\udf21',
            '\ud835\udf22',
            '\ud835\udf23',
            '\ud835\udf24',
            '\ud835\udf25',
            '\ud835\udf26',
            '\ud835\udf27',
            '\ud835\udf28',
            '\ud835\udf29',
            '\ud835\udf2a',
            '\ud835\udf2b',
            '\ud835\udf2c',
            '\ud835\udf2e',
            '\ud835\udf2f',
            '\ud835\udf30',
            '\ud835\udf31',
            '\ud835\udf32',
            '\ud835\udf33',
            '\ud835\udf34'
          ],
          Z = [
            '\ud835\udf36',
            '\ud835\udf37',
            '\ud835\udf38',
            '\ud835\udf39',
            '\ud835\udf3a',
            '\ud835\udf3b',
            '\ud835\udf3c',
            '\ud835\udf3d',
            '\ud835\udf3e',
            '\ud835\udf3f',
            '\ud835\udf40',
            '\ud835\udf41',
            '\ud835\udf42',
            '\ud835\udf43',
            '\ud835\udf44',
            '\ud835\udf45',
            '\ud835\udf46',
            '\ud835\udf47',
            '\ud835\udf48',
            '\ud835\udf49',
            '\ud835\udf4a',
            '\ud835\udf4b',
            '\ud835\udf4c',
            '\ud835\udf4d',
            '\ud835\udf4e'
          ],
          Q = [
            '\ud835\udf56',
            '\ud835\udf57',
            '\ud835\udf58',
            '\ud835\udf59',
            '\ud835\udf5a',
            '\ud835\udf5b',
            '\ud835\udf5c',
            '\ud835\udf5d',
            '\ud835\udf5e',
            '\ud835\udf5f',
            '\ud835\udf60',
            '\ud835\udf61',
            '\ud835\udf62',
            '\ud835\udf63',
            '\ud835\udf64',
            '\ud835\udf65',
            '\ud835\udf66',
            '\ud835\udf68',
            '\ud835\udf69',
            '\ud835\udf6a',
            '\ud835\udf6b',
            '\ud835\udf6c',
            '\ud835\udf6d',
            '\ud835\udf6e'
          ],
          tt = [
            '\ud835\udf70',
            '\ud835\udf71',
            '\ud835\udf72',
            '\ud835\udf73',
            '\ud835\udf74',
            '\ud835\udf75',
            '\ud835\udf76',
            '\ud835\udf77',
            '\ud835\udf78',
            '\ud835\udf79',
            '\ud835\udf7a',
            '\ud835\udf7b',
            '\ud835\udf7c',
            '\ud835\udf7d',
            '\ud835\udf7e',
            '\ud835\udf7f',
            '\ud835\udf80',
            '\ud835\udf81',
            '\ud835\udf82',
            '\ud835\udf83',
            '\ud835\udf84',
            '\ud835\udf85',
            '\ud835\udf86',
            '\ud835\udf87',
            '\ud835\udf88'
          ],
          et = [
            '\ud835\udf90',
            '\ud835\udf91',
            '\ud835\udf92',
            '\ud835\udf93',
            '\ud835\udf94',
            '\ud835\udf95',
            '\ud835\udf96',
            '\ud835\udf97',
            '\ud835\udf98',
            '\ud835\udf99',
            '\ud835\udf9a',
            '\ud835\udf9b',
            '\ud835\udf9c',
            '\ud835\udf9d',
            '\ud835\udf9e',
            '\ud835\udf9f',
            '\ud835\udfa0',
            '\ud835\udfa2',
            '\ud835\udfa3',
            '\ud835\udfa4',
            '\ud835\udfa5',
            '\ud835\udfa6',
            '\ud835\udfa7',
            '\ud835\udfa8'
          ],
          rt = [
            '\ud835\udfaa',
            '\ud835\udfab',
            '\ud835\udfac',
            '\ud835\udfad',
            '\ud835\udfae',
            '\ud835\udfaf',
            '\ud835\udfb0',
            '\ud835\udfb1',
            '\ud835\udfb2',
            '\ud835\udfb3',
            '\ud835\udfb4',
            '\ud835\udfb5',
            '\ud835\udfb6',
            '\ud835\udfb7',
            '\ud835\udfb8',
            '\ud835\udfb9',
            '\ud835\udfba',
            '\ud835\udfbb',
            '\ud835\udfbc',
            '\ud835\udfbd',
            '\ud835\udfbe',
            '\ud835\udfbf',
            '\ud835\udfc0',
            '\ud835\udfc1',
            '\ud835\udfc2'
          ],
          nt = ['\u213c', '\u213d', '\u213e', '\u213f'],
          ot = ['\u03d0', '\u03d1', '\u03d5', '\u03d6', '\u03d7', '\u03f0', '\u03f1', '\u03f5', '\u03f6', '\u03f4'],
          it = ['\ud835\udedc', '\ud835\udedd', '\ud835\udede', '\ud835\udedf', '\ud835\udee0', '\ud835\udee1'],
          st = ['\ud835\udf16', '\ud835\udf17', '\ud835\udf18', '\ud835\udf19', '\ud835\udf1a', '\ud835\udf1b'],
          at = ['\ud835\udf8a', '\ud835\udf8b', '\ud835\udf8c', '\ud835\udf8d', '\ud835\udf8e', '\ud835\udf8f'],
          lt = ['\u2135', '\u2136', '\u2137', '\u2138'],
          ct = d.concat(m, y, g, b, v, _, M, O, S, x, E, A, C, T, N, w, L, I, P, R, k, j, B, D, F, H, U, X, V, q, W, G, z, J, K, $, Y, Z, Q, tt, nt, ot, et, rt, it, st, at, lt)
        e.allLettersRegExp = new RegExp(ct.join('|'))
        const ut = [
            '+',
            '\xb1',
            '\u2213',
            '\u2214',
            '\u2227',
            '\u2228',
            '\u2229',
            '\u222a',
            '\u228c',
            '\u228d',
            '\u228e',
            '\u2293',
            '\u2294',
            '\u229d',
            '\u229e',
            '\u22a4',
            '\u22a5',
            '\u22ba',
            '\u22bb',
            '\u22bc',
            '\u22c4',
            '\u22ce',
            '\u22cf',
            '\u22d2',
            '\u22d3',
            '\u2a5e',
            '\u2295',
            '\u22d4'
          ],
          pt = String.fromCodePoint(8292)
        ut.push(pt)
        const ht = ['\u2020', '\u2021', '\u2210', '\u2217', '\u2218', '\u2219', '\u2240', '\u229a', '\u229b', '\u22a0', '\u22a1', '\u22c5', '\u22c6', '\u22c7', '\u22c8', '\u22c9', '\u22ca', '\u22cb', '\u22cc', '\u25cb', '\xb7', '*', '\u2297', '\u2299'],
          ft = String.fromCodePoint(8290)
        ht.push(ft)
        const dt = String.fromCodePoint(8289),
          mt = ['\xbc', '\xbd', '\xbe', '\u2150', '\u2151', '\u2152', '\u2153', '\u2154', '\u2155', '\u2156', '\u2157', '\u2158', '\u2159', '\u215a', '\u215b', '\u215c', '\u215d', '\u215e', '\u215f', '\u2189'],
          yt = ['\xb2', '\xb3', '\xb9', '\u2070', '\u2074', '\u2075', '\u2076', '\u2077', '\u2078', '\u2079'].concat(
            ['\u2080', '\u2081', '\u2082', '\u2083', '\u2084', '\u2085', '\u2086', '\u2087', '\u2088', '\u2089'],
            [
              '\u2460',
              '\u2461',
              '\u2462',
              '\u2463',
              '\u2464',
              '\u2465',
              '\u2466',
              '\u2467',
              '\u2468',
              '\u2469',
              '\u246a',
              '\u246b',
              '\u246c',
              '\u246d',
              '\u246e',
              '\u246f',
              '\u2470',
              '\u2471',
              '\u2472',
              '\u2473',
              '\u24ea',
              '\u24eb',
              '\u24ec',
              '\u24ed',
              '\u24ee',
              '\u24ef',
              '\u24f0',
              '\u24f1',
              '\u24f2',
              '\u24f3',
              '\u24f4',
              '\u24f5',
              '\u24f6',
              '\u24f7',
              '\u24f8',
              '\u24f9',
              '\u24fa',
              '\u24fb',
              '\u24fc',
              '\u24fd',
              '\u24fe',
              '\u24ff',
              '\u2776',
              '\u2777',
              '\u2778',
              '\u2779',
              '\u277a',
              '\u277b',
              '\u277c',
              '\u277d',
              '\u277e',
              '\u277f',
              '\u2780',
              '\u2781',
              '\u2782',
              '\u2783',
              '\u2784',
              '\u2785',
              '\u2786',
              '\u2787',
              '\u2788',
              '\u2789',
              '\u278a',
              '\u278b',
              '\u278c',
              '\u278d',
              '\u278e',
              '\u278f',
              '\u2790',
              '\u2791',
              '\u2792',
              '\u2793',
              '\u3248',
              '\u3249',
              '\u324a',
              '\u324b',
              '\u324c',
              '\u324d',
              '\u324e',
              '\u324f',
              '\u3251',
              '\u3252',
              '\u3253',
              '\u3254',
              '\u3255',
              '\u3256',
              '\u3257',
              '\u3258',
              '\u3259',
              '\u325a',
              '\u325b',
              '\u325c',
              '\u325d',
              '\u325e',
              '\u325f',
              '\u32b1',
              '\u32b2',
              '\u32b3',
              '\u32b4',
              '\u32b5',
              '\u32b6',
              '\u32b7',
              '\u32b8',
              '\u32b9',
              '\u32ba',
              '\u32bb',
              '\u32bc',
              '\u32bd',
              '\u32be',
              '\u32bf'
            ],
            ['\u2474', '\u2475', '\u2476', '\u2477', '\u2478', '\u2479', '\u247a', '\u247b', '\u247c', '\u247d', '\u247e', '\u247f', '\u2480', '\u2481', '\u2482', '\u2483', '\u2484', '\u2485', '\u2486', '\u2487'],
            [
              '\u2488',
              '\u2489',
              '\u248a',
              '\u248b',
              '\u248c',
              '\u248d',
              '\u248e',
              '\u248f',
              '\u2490',
              '\u2491',
              '\u2492',
              '\u2493',
              '\u2494',
              '\u2495',
              '\u2496',
              '\u2497',
              '\u2498',
              '\u2499',
              '\u249a',
              '\u249b',
              '\ud83c\udd00',
              '\ud83c\udd01',
              '\ud83c\udd02',
              '\ud83c\udd03',
              '\ud83c\udd04',
              '\ud83c\udd05',
              '\ud83c\udd06',
              '\ud83c\udd07',
              '\ud83c\udd08',
              '\ud83c\udd09',
              '\ud83c\udd0a'
            ]
          ),
          gt = ['cos', 'cot', 'csc', 'sec', 'sin', 'tan', 'arccos', 'arccot', 'arccsc', 'arcsec', 'arcsin', 'arctan', 'arc cos', 'arc cot', 'arc csc', 'arc sec', 'arc sin', 'arc tan'].concat(
            ['cosh', 'coth', 'csch', 'sech', 'sinh', 'tanh', 'arcosh', 'arcoth', 'arcsch', 'arsech', 'arsinh', 'artanh', 'arccosh', 'arccoth', 'arccsch', 'arcsech', 'arcsinh', 'arctanh'],
            ['deg', 'det', 'dim', 'hom', 'ker', 'Tr', 'tr'],
            ['log', 'ln', 'lg', 'exp', 'expt', 'gcd', 'gcd', 'arg', 'im', 're', 'Pr']
          ),
          bt = [
            {
              set: [
                '!',
                '"',
                '#',
                '%',
                '&',
                ';',
                '?',
                '@',
                '\\',
                '\xa1',
                '\xa7',
                '\xb6',
                '\xbf',
                '\u2017',
                '\u2020',
                '\u2021',
                '\u2022',
                '\u2023',
                '\u2024',
                '\u2025',
                '\u2027',
                '\u2030',
                '\u2031',
                '\u2038',
                '\u203b',
                '\u203c',
                '\u203d',
                '\u203e',
                '\u2041',
                '\u2042',
                '\u2043',
                '\u2047',
                '\u2048',
                '\u2049',
                '\u204b',
                '\u204c',
                '\u204d',
                '\u204e',
                '\u204f',
                '\u2050',
                '\u2051',
                '\u2053',
                '\u2055',
                '\u2056',
                '\u2058',
                '\u2059',
                '\u205a',
                '\u205b',
                '\u205c',
                '\u205d',
                '\u205e',
                '\ufe10',
                '\ufe14',
                '\ufe15',
                '\ufe16',
                '\ufe30',
                '\ufe45',
                '\ufe46',
                '\ufe49',
                '\ufe4a',
                '\ufe4b',
                '\ufe4c',
                '\ufe54',
                '\ufe56',
                '\ufe57',
                '\ufe5f',
                '\ufe60',
                '\ufe61',
                '\ufe68',
                '\ufe6a',
                '\ufe6b',
                '\uff01',
                '\uff02',
                '\uff03',
                '\uff05',
                '\uff06',
                '\uff07',
                '\uff0a',
                '\uff0f',
                '\uff1b',
                '\uff1f',
                '\uff20',
                '\uff3c'
              ],
              type: 'punctuation',
              role: 'unknown'
            },
            { set: ['\ufe13', ':', '\uff1a', '\ufe55'], type: 'punctuation', role: 'colon' },
            { set: n, type: 'punctuation', role: 'comma' },
            { set: ['\u2026', '\u22ee', '\u22ef', '\u22f0', '\u22f1', '\ufe19'], type: 'punctuation', role: 'ellipsis' },
            { set: ['.', '\ufe52', '\uff0e'], type: 'punctuation', role: 'fullstop' },
            { set: o, type: 'operator', role: 'dash' },
            { set: i, type: 'operator', role: 'tilde' },
            { set: ["'", '\u2032', '\u2033', '\u2034', '\u2035', '\u2036', '\u2037', '\u2057', '\u02b9', '\u02ba'], type: 'punctuation', role: 'prime' },
            { set: ['\xb0'], type: 'punctuation', role: 'degree' },
            { set: l, type: 'fence', role: 'open' },
            { set: c, type: 'fence', role: 'close' },
            { set: u, type: 'fence', role: 'top' },
            { set: p, type: 'fence', role: 'bottom' },
            { set: h, type: 'fence', role: 'neutral' },
            { set: f, type: 'fence', role: 'metric' },
            { set: m, type: 'identifier', role: 'latinletter', font: 'normal' },
            { set: d, type: 'identifier', role: 'latinletter', font: 'normal' },
            { set: g, type: 'identifier', role: 'latinletter', font: 'normal' },
            { set: y, type: 'identifier', role: 'latinletter', font: 'normal' },
            { set: v, type: 'identifier', role: 'latinletter', font: 'bold' },
            { set: b, type: 'identifier', role: 'latinletter', font: 'bold' },
            { set: S, type: 'identifier', role: 'latinletter', font: 'italic' },
            { set: _, type: 'identifier', role: 'latinletter', font: 'italic' },
            { set: O, type: 'identifier', role: 'latinletter', font: 'bold-italic' },
            { set: M, type: 'identifier', role: 'latinletter', font: 'bold-italic' },
            { set: E, type: 'identifier', role: 'latinletter', font: 'script' },
            { set: x, type: 'identifier', role: 'latinletter', font: 'script' },
            { set: C, type: 'identifier', role: 'latinletter', font: 'bold-script' },
            { set: A, type: 'identifier', role: 'latinletter', font: 'bold-script' },
            { set: N, type: 'identifier', role: 'latinletter', font: 'fraktur' },
            { set: T, type: 'identifier', role: 'latinletter', font: 'fraktur' },
            { set: L, type: 'identifier', role: 'latinletter', font: 'double-struck' },
            { set: w, type: 'identifier', role: 'latinletter', font: 'double-struck' },
            { set: P, type: 'identifier', role: 'latinletter', font: 'bold-fraktur' },
            { set: I, type: 'identifier', role: 'latinletter', font: 'bold-fraktur' },
            { set: k, type: 'identifier', role: 'latinletter', font: 'sans-serif' },
            { set: R, type: 'identifier', role: 'latinletter', font: 'sans-serif' },
            { set: B, type: 'identifier', role: 'latinletter', font: 'sans-serif-bold' },
            { set: j, type: 'identifier', role: 'latinletter', font: 'sans-serif-bold' },
            { set: F, type: 'identifier', role: 'latinletter', font: 'sans-serif-italic' },
            { set: D, type: 'identifier', role: 'latinletter', font: 'sans-serif-italic' },
            { set: U, type: 'identifier', role: 'latinletter', font: 'sans-serif-bold-italic' },
            { set: H, type: 'identifier', role: 'latinletter', font: 'sans-serif-bold-italic' },
            { set: V, type: 'identifier', role: 'latinletter', font: 'monospace' },
            { set: X, type: 'identifier', role: 'latinletter', font: 'monospace' },
            { set: q, type: 'identifier', role: 'latinletter', font: 'double-struck-italic' },
            { set: G, type: 'identifier', role: 'greekletter', font: 'normal' },
            { set: W, type: 'identifier', role: 'greekletter', font: 'normal' },
            { set: J, type: 'identifier', role: 'greekletter', font: 'bold' },
            { set: z, type: 'identifier', role: 'greekletter', font: 'bold' },
            { set: $, type: 'identifier', role: 'greekletter', font: 'italic' },
            { set: K, type: 'identifier', role: 'greekletter', font: 'italic' },
            { set: Z, type: 'identifier', role: 'greekletter', font: 'bold-italic' },
            { set: Y, type: 'identifier', role: 'greekletter', font: 'bold-italic' },
            { set: tt, type: 'identifier', role: 'greekletter', font: 'sans-serif-bold' },
            { set: Q, type: 'identifier', role: 'greekletter', font: 'sans-serif-bold' },
            { set: et, type: 'identifier', role: 'greekletter', font: 'sans-serif-bold-italic' },
            { set: rt, type: 'identifier', role: 'greekletter', font: 'sans-serif-bold-italic' },
            { set: nt, type: 'identifier', role: 'greekletter', font: 'double-struck' },
            { set: ot, type: 'identifier', role: 'greekletter', font: 'normal' },
            { set: it, type: 'identifier', role: 'greekletter', font: 'bold' },
            { set: st, type: 'identifier', role: 'greekletter', font: 'italic' },
            { set: at, type: 'identifier', role: 'greekletter', font: 'sans-serif-bold' },
            { set: lt, type: 'identifier', role: 'otherletter', font: 'normal' },
            { set: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'], type: 'number', role: 'integer', font: 'normal' },
            { set: ['\uff10', '\uff11', '\uff12', '\uff13', '\uff14', '\uff15', '\uff16', '\uff17', '\uff18', '\uff19'], type: 'number', role: 'integer', font: 'normal' },
            { set: ['\ud835\udfce', '\ud835\udfcf', '\ud835\udfd0', '\ud835\udfd1', '\ud835\udfd2', '\ud835\udfd3', '\ud835\udfd4', '\ud835\udfd5', '\ud835\udfd6', '\ud835\udfd7'], type: 'number', role: 'integer', font: 'bold' },
            { set: ['\ud835\udfd8', '\ud835\udfd9', '\ud835\udfda', '\ud835\udfdb', '\ud835\udfdc', '\ud835\udfdd', '\ud835\udfde', '\ud835\udfdf', '\ud835\udfe0', '\ud835\udfe1'], type: 'number', role: 'integer', font: 'double-struck' },
            { set: ['\ud835\udfe2', '\ud835\udfe3', '\ud835\udfe4', '\ud835\udfe5', '\ud835\udfe6', '\ud835\udfe7', '\ud835\udfe8', '\ud835\udfe9', '\ud835\udfea', '\ud835\udfeb'], type: 'number', role: 'integer', font: 'sans-serif' },
            { set: ['\ud835\udfec', '\ud835\udfed', '\ud835\udfee', '\ud835\udfef', '\ud835\udff0', '\ud835\udff1', '\ud835\udff2', '\ud835\udff3', '\ud835\udff4', '\ud835\udff5'], type: 'number', role: 'integer', font: 'sans-serif-bold' },
            { set: ['\ud835\udff6', '\ud835\udff7', '\ud835\udff8', '\ud835\udff9', '\ud835\udffa', '\ud835\udffb', '\ud835\udffc', '\ud835\udffd', '\ud835\udffe', '\ud835\udfff'], type: 'number', role: 'integer', font: 'monospace' },
            { set: mt, type: 'number', role: 'float' },
            { set: yt, type: 'number', role: 'othernumber' },
            { set: ut, type: 'operator', role: 'addition' },
            { set: ht, type: 'operator', role: 'multiplication' },
            {
              set: ['\xaf', '-', '\u2052', '\u207b', '\u208b', '\u2212', '\u2216', '\u2238', '\u2242', '\u2296', '\u229f', '\u2796', '\u2a29', '\u2a2a', '\u2a2b', '\u2a2c', '\u2a3a', '\u2a41', '\ufe63', '\uff0d', '\u2010', '\u2011'],
              type: 'operator',
              role: 'subtraction'
            },
            { set: ['/', '\xf7', '\u2044', '\u2215', '\u2298', '\u27cc', '\u29bc', '\u2a38'], type: 'operator', role: 'division' },
            { set: ['\u2200', '\u2203', '\u2206', '\u2207', '\u2202', '\u2201', '\u2204'], type: 'operator', role: 'prefix operator' },
            { set: ['\ud835\udec1', '\ud835\udedb', '\ud835\udfca', '\ud835\udfcb'], type: 'operator', role: 'prefix operator', font: 'bold' },
            { set: ['\ud835\udefb', '\ud835\udf15'], type: 'operator', role: 'prefix operator', font: 'italic' },
            { set: ['\ud835\udf6f', '\ud835\udf89'], type: 'operator', role: 'prefix operator', font: 'sans-serif-bold' },
            {
              set: [
                '=',
                '~',
                '\u207c',
                '\u208c',
                '\u223c',
                '\u223d',
                '\u2243',
                '\u2245',
                '\u2248',
                '\u224a',
                '\u224b',
                '\u224c',
                '\u224d',
                '\u224e',
                '\u2251',
                '\u2252',
                '\u2253',
                '\u2254',
                '\u2255',
                '\u2256',
                '\u2257',
                '\u2258',
                '\u2259',
                '\u225a',
                '\u225b',
                '\u225c',
                '\u225d',
                '\u225e',
                '\u225f',
                '\u2261',
                '\u2263',
                '\u29e4',
                '\u2a66',
                '\u2a6e',
                '\u2a6f',
                '\u2a70',
                '\u2a71',
                '\u2a72',
                '\u2a73',
                '\u2a74',
                '\u2a75',
                '\u2a76',
                '\u2a77',
                '\u2a78',
                '\u22d5',
                '\u2a6d',
                '\u2a6a',
                '\u2a6b',
                '\u2a6c',
                '\ufe66',
                '\uff1d',
                '\u2a6c',
                '\u229c',
                '\u2237'
              ],
              type: 'relation',
              role: 'equality'
            },
            {
              set: [
                '<',
                '>',
                '\u2241',
                '\u2242',
                '\u2244',
                '\u2246',
                '\u2247',
                '\u2249',
                '\u224f',
                '\u2250',
                '\u2260',
                '\u2262',
                '\u2264',
                '\u2265',
                '\u2266',
                '\u2267',
                '\u2268',
                '\u2269',
                '\u226a',
                '\u226b',
                '\u226c',
                '\u226d',
                '\u226e',
                '\u226f',
                '\u2270',
                '\u2271',
                '\u2272',
                '\u2273',
                '\u2274',
                '\u2275',
                '\u2276',
                '\u2277',
                '\u2278',
                '\u2279',
                '\u227a',
                '\u227b',
                '\u227c',
                '\u227d',
                '\u227e',
                '\u227f',
                '\u2280',
                '\u2281',
                '\u22d6',
                '\u22d7',
                '\u22d8',
                '\u22d9',
                '\u22da',
                '\u22db',
                '\u22dc',
                '\u22dd',
                '\u22de',
                '\u22df',
                '\u22e0',
                '\u22e1',
                '\u22e6',
                '\u22e7',
                '\u22e8',
                '\u22e9',
                '\u2a79',
                '\u2a7a',
                '\u2a7b',
                '\u2a7c',
                '\u2a7d',
                '\u2a7e',
                '\u2a7f',
                '\u2a80',
                '\u2a81',
                '\u2a82',
                '\u2a83',
                '\u2a84',
                '\u2a85',
                '\u2a86',
                '\u2a87',
                '\u2a88',
                '\u2a89',
                '\u2a8a',
                '\u2a8b',
                '\u2a8c',
                '\u2a8d',
                '\u2a8e',
                '\u2a8f',
                '\u2a90',
                '\u2a91',
                '\u2a92',
                '\u2a93',
                '\u2a94',
                '\u2a95',
                '\u2a96',
                '\u2a97',
                '\u2a98',
                '\u2a99',
                '\u2a9a',
                '\u2a9b',
                '\u2a9c',
                '\u2a9d',
                '\u2a9e',
                '\u2a9f',
                '\u2aa0',
                '\u2aa1',
                '\u2aa2',
                '\u2aa3',
                '\u2aa4',
                '\u2aa5',
                '\u2aa6',
                '\u2aa7',
                '\u2aa8',
                '\u2aa9',
                '\u2aaa',
                '\u2aab',
                '\u2aac',
                '\u2aad',
                '\u2aae',
                '\u2aaf',
                '\u2ab0',
                '\u2ab1',
                '\u2ab2',
                '\u2ab3',
                '\u2ab4',
                '\u2ab5',
                '\u2ab6',
                '\u2ab7',
                '\u2ab8',
                '\u2ab9',
                '\u2aba',
                '\u2abb',
                '\u2abc',
                '\u2af7',
                '\u2af8',
                '\u2af9',
                '\u2afa',
                '\u29c0',
                '\u29c1',
                '\ufe64',
                '\ufe65',
                '\uff1c',
                '\uff1e'
              ],
              type: 'relation',
              role: 'inequality'
            },
            {
              set: [
                '\u22e2',
                '\u22e3',
                '\u22e4',
                '\u22e5',
                '\u2282',
                '\u2283',
                '\u2284',
                '\u2285',
                '\u2286',
                '\u2287',
                '\u2288',
                '\u2289',
                '\u228a',
                '\u228b',
                '\u228f',
                '\u2290',
                '\u2291',
                '\u2292',
                '\u2abd',
                '\u2abe',
                '\u2abf',
                '\u2ac0',
                '\u2ac1',
                '\u2ac2',
                '\u2ac3',
                '\u2ac4',
                '\u2ac5',
                '\u2ac6',
                '\u2ac7',
                '\u2ac8',
                '\u2ac9',
                '\u2aca',
                '\u2acb',
                '\u2acc',
                '\u2acd',
                '\u2ace',
                '\u2acf',
                '\u2ad0',
                '\u2ad1',
                '\u2ad2',
                '\u2ad3',
                '\u2ad4',
                '\u2ad5',
                '\u2ad6',
                '\u2ad7',
                '\u2ad8',
                '\u22d0',
                '\u22d1',
                '\u22ea',
                '\u22eb',
                '\u22ec',
                '\u22ed',
                '\u22b2',
                '\u22b3',
                '\u22b4',
                '\u22b5'
              ],
              type: 'relation',
              role: 'set'
            },
            {
              set: [
                '\u22a2',
                '\u22a3',
                '\u22a6',
                '\u22a7',
                '\u22a8',
                '\u22a9',
                '\u22aa',
                '\u22ab',
                '\u22ac',
                '\u22ad',
                '\u22ae',
                '\u22af',
                '\u2ade',
                '\u2adf',
                '\u2ae0',
                '\u2ae1',
                '\u2ae2',
                '\u2ae3',
                '\u2ae4',
                '\u2ae5',
                '\u2ae6',
                '\u2ae7',
                '\u2ae8',
                '\u2ae9',
                '\u2aea',
                '\u2aeb',
                '\u2aec',
                '\u2aed'
              ],
              type: 'relation',
              role: 'unknown'
            },
            {
              set: [
                '\u2190',
                '\u2191',
                '\u2192',
                '\u2193',
                '\u2194',
                '\u2195',
                '\u2196',
                '\u2197',
                '\u2198',
                '\u2199',
                '\u219a',
                '\u219b',
                '\u219c',
                '\u219d',
                '\u219e',
                '\u219f',
                '\u21a0',
                '\u21a1',
                '\u21a2',
                '\u21a3',
                '\u21a4',
                '\u21a5',
                '\u21a6',
                '\u21a7',
                '\u21a8',
                '\u21a9',
                '\u21aa',
                '\u21ab',
                '\u21ac',
                '\u21ad',
                '\u21ae',
                '\u21af',
                '\u21b0',
                '\u21b1',
                '\u21b2',
                '\u21b3',
                '\u21b4',
                '\u21b5',
                '\u21b6',
                '\u21b7',
                '\u21b8',
                '\u21b9',
                '\u21ba',
                '\u21bb',
                '\u21c4',
                '\u21c5',
                '\u21c6',
                '\u21c7',
                '\u21c8',
                '\u21c9',
                '\u21ca',
                '\u21cd',
                '\u21ce',
                '\u21cf',
                '\u21d0',
                '\u21d1',
                '\u21d2',
                '\u21d3',
                '\u21d4',
                '\u21d5',
                '\u21d6',
                '\u21d7',
                '\u21d8',
                '\u21d9',
                '\u21da',
                '\u21db',
                '\u21dc',
                '\u21dd',
                '\u21de',
                '\u21df',
                '\u21e0',
                '\u21e1',
                '\u21e2',
                '\u21e3',
                '\u21e4',
                '\u21e5',
                '\u21e6',
                '\u21e7',
                '\u21e8',
                '\u21e9',
                '\u21ea',
                '\u21eb',
                '\u21ec',
                '\u21ed',
                '\u21ee',
                '\u21ef',
                '\u21f0',
                '\u21f1',
                '\u21f2',
                '\u21f3',
                '\u21f4',
                '\u21f5',
                '\u21f6',
                '\u21f7',
                '\u21f8',
                '\u21f9',
                '\u21fa',
                '\u21fb',
                '\u21fc',
                '\u21fd',
                '\u21fe',
                '\u21ff',
                '\u2301',
                '\u2303',
                '\u2304',
                '\u2324',
                '\u238b',
                '\u2794',
                '\u2798',
                '\u2799',
                '\u279a',
                '\u279b',
                '\u279c',
                '\u279d',
                '\u279e',
                '\u279f',
                '\u27a0',
                '\u27a1',
                '\u27a2',
                '\u27a3',
                '\u27a4',
                '\u27a5',
                '\u27a6',
                '\u27a7',
                '\u27a8',
                '\u27a9',
                '\u27aa',
                '\u27ab',
                '\u27ac',
                '\u27ad',
                '\u27ae',
                '\u27af',
                '\u27b1',
                '\u27b2',
                '\u27b3',
                '\u27b4',
                '\u27b5',
                '\u27b6',
                '\u27b7',
                '\u27b8',
                '\u27b9',
                '\u27ba',
                '\u27bb',
                '\u27bc',
                '\u27bd',
                '\u27be',
                '\u27f0',
                '\u27f1',
                '\u27f2',
                '\u27f3',
                '\u27f4',
                '\u27f5',
                '\u27f6',
                '\u27f7',
                '\u27f8',
                '\u27f9',
                '\u27fa',
                '\u27fb',
                '\u27fc',
                '\u27fd',
                '\u27fe',
                '\u27ff',
                '\u2900',
                '\u2901',
                '\u2902',
                '\u2903',
                '\u2904',
                '\u2905',
                '\u2906',
                '\u2907',
                '\u2908',
                '\u2909',
                '\u290a',
                '\u290b',
                '\u290c',
                '\u290d',
                '\u290e',
                '\u290f',
                '\u2910',
                '\u2911',
                '\u2912',
                '\u2913',
                '\u2914',
                '\u2915',
                '\u2916',
                '\u2917',
                '\u2918',
                '\u2919',
                '\u291a',
                '\u291b',
                '\u291c',
                '\u291d',
                '\u291e',
                '\u291f',
                '\u2920',
                '\u2921',
                '\u2922',
                '\u2923',
                '\u2924',
                '\u2925',
                '\u2926',
                '\u2927',
                '\u2928',
                '\u2929',
                '\u292a',
                '\u292d',
                '\u292e',
                '\u292f',
                '\u2930',
                '\u2931',
                '\u2932',
                '\u2933',
                '\u2934',
                '\u2935',
                '\u2936',
                '\u2937',
                '\u2938',
                '\u2939',
                '\u293a',
                '\u293b',
                '\u293c',
                '\u293d',
                '\u293e',
                '\u293f',
                '\u2940',
                '\u2941',
                '\u2942',
                '\u2943',
                '\u2944',
                '\u2945',
                '\u2946',
                '\u2947',
                '\u2948',
                '\u2949',
                '\u2970',
                '\u2971',
                '\u2972',
                '\u2973',
                '\u2974',
                '\u2975',
                '\u2976',
                '\u2977',
                '\u2978',
                '\u2979',
                '\u297a',
                '\u297b',
                '\u29b3',
                '\u29b4',
                '\u29bd',
                '\u29ea',
                '\u29ec',
                '\u29ed',
                '\u2a17',
                '\u2b00',
                '\u2b01',
                '\u2b02',
                '\u2b03',
                '\u2b04',
                '\u2b05',
                '\u2b06',
                '\u2b07',
                '\u2b08',
                '\u2b09',
                '\u2b0a',
                '\u2b0b',
                '\u2b0c',
                '\u2b0d',
                '\u2b0e',
                '\u2b0f',
                '\u2b10',
                '\u2b11',
                '\u2b30',
                '\u2b31',
                '\u2b32',
                '\u2b33',
                '\u2b34',
                '\u2b35',
                '\u2b36',
                '\u2b37',
                '\u2b38',
                '\u2b39',
                '\u2b3a',
                '\u2b3b',
                '\u2b3c',
                '\u2b3d',
                '\u2b3e',
                '\u2b3f',
                '\u2b40',
                '\u2b41',
                '\u2b42',
                '\u2b43',
                '\u2b44',
                '\u2b45',
                '\u2b46',
                '\u2b47',
                '\u2b48',
                '\u2b49',
                '\u2b4a',
                '\u2b4b',
                '\u2b4c',
                '\uffe9',
                '\uffea',
                '\uffeb',
                '\uffec',
                '\u21bc',
                '\u21bd',
                '\u21be',
                '\u21bf',
                '\u21c0',
                '\u21c1',
                '\u21c2',
                '\u21c3',
                '\u21cb',
                '\u21cc',
                '\u294a',
                '\u294b',
                '\u294c',
                '\u294d',
                '\u294e',
                '\u294f',
                '\u2950',
                '\u2951',
                '\u2952',
                '\u2953',
                '\u2954',
                '\u2955',
                '\u2956',
                '\u2957',
                '\u2958',
                '\u2959',
                '\u295a',
                '\u295b',
                '\u295c',
                '\u295d',
                '\u295e',
                '\u295f',
                '\u2960',
                '\u2961',
                '\u2962',
                '\u2963',
                '\u2964',
                '\u2965',
                '\u2966',
                '\u2967',
                '\u2968',
                '\u2969',
                '\u296a',
                '\u296b',
                '\u296c',
                '\u296d',
                '\u296e',
                '\u296f',
                '\u297c',
                '\u297d',
                '\u297e',
                '\u297f'
              ],
              type: 'relation',
              role: 'arrow'
            },
            { set: ['\u2208', '\u220a', '\u22f2', '\u22f3', '\u22f4', '\u22f5', '\u22f6', '\u22f7', '\u22f8', '\u22f9', '\u22ff'], type: 'operator', role: 'element' },
            { set: ['\u2209'], type: 'operator', role: 'nonelement' },
            { set: ['\u220b', '\u220d', '\u22fa', '\u22fb', '\u22fc', '\u22fd', '\u22fe'], type: 'operator', role: 'reelement' },
            { set: ['\u220c'], type: 'operator', role: 'renonelement' },
            {
              set: ['\u2140', '\u220f', '\u2210', '\u2211', '\u22c0', '\u22c1', '\u22c2', '\u22c3', '\u2a00', '\u2a01', '\u2a02', '\u2a03', '\u2a04', '\u2a05', '\u2a06', '\u2a07', '\u2a08', '\u2a09', '\u2a0a', '\u2a0b', '\u2afc', '\u2aff'],
              type: 'largeop',
              role: 'sum'
            },
            {
              set: [
                '\u222b',
                '\u222c',
                '\u222d',
                '\u222e',
                '\u222f',
                '\u2230',
                '\u2231',
                '\u2232',
                '\u2233',
                '\u2a0c',
                '\u2a0d',
                '\u2a0e',
                '\u2a0f',
                '\u2a10',
                '\u2a11',
                '\u2a12',
                '\u2a13',
                '\u2a14',
                '\u2a15',
                '\u2a16',
                '\u2a17',
                '\u2a18',
                '\u2a19',
                '\u2a1a',
                '\u2a1b',
                '\u2a1c'
              ],
              type: 'largeop',
              role: 'integral'
            },
            { set: ['\u221f', '\u2220', '\u2221', '\u2222', '\u22be', '\u22bf', '\u25b3', '\u25b7', '\u25bd', '\u25c1'], type: 'operator', role: 'geometry' },
            { set: ['inf', 'lim', 'liminf', 'limsup', 'max', 'min', 'sup', 'injlim', 'projlim', 'inj lim', 'proj lim'], type: 'function', role: 'limit function' },
            { set: gt, type: 'function', role: 'prefix function' },
            { set: ['mod', 'rem'], type: 'operator', role: 'prefix function' }
          ],
          vt = (function () {
            const t = {}
            for (let e, r = 0; (e = bt[r]); r++)
              e.set.forEach(function (r) {
                t[r] = { role: e.role || 'unknown', type: e.type || 'unknown', font: e.font || 'unknown' }
              })
            return t
          })()
        ;(e.equal = function (t, e) {
          return t.type === e.type && t.role === e.role && t.font === e.font
        }),
          (e.lookupType = function (t) {
            var e
            return (null === (e = vt[t]) || void 0 === e ? void 0 : e.type) || 'unknown'
          }),
          (e.lookupRole = function (t) {
            var e
            return (null === (e = vt[t]) || void 0 === e ? void 0 : e.role) || 'unknown'
          }),
          (e.lookupMeaning = function (t) {
            return vt[t] || { role: 'unknown', type: 'unknown', font: 'unknown' }
          }),
          (e.invisibleTimes = function () {
            return ft
          }),
          (e.invisiblePlus = function () {
            return pt
          }),
          (e.invisibleComma = function () {
            return r
          }),
          (e.functionApplication = function () {
            return dt
          }),
          (e.isMatchingFence = function (t, e) {
            return -1 !== h.indexOf(t) || -1 !== f.indexOf(t) ? t === e : s[t] === e || a[t] === e
          }),
          (e.isEmbellishedType = function (t) {
            return 'operator' === t || 'relation' === t || 'fence' === t || 'punctuation' === t
          })
        const _t = new Map()
        function St(t, e) {
          return `${t} ${e}`
        }
        function Mt(t, e, r = '') {
          for (const n of e) _t.set(St(t, n), r || t)
        }
        Mt('d', ['d', '\u2146', '\uff44', '\ud835\udc1d', '\ud835\udc51', '\ud835\udcb9', '\ud835\udced', '\ud835\udd21', '\ud835\udd55', '\ud835\udd89', '\ud835\uddbd', '\ud835\uddf1', '\ud835\ude25', '\ud835\ude8d']),
          Mt('bar', o),
          Mt('tilde', i),
          (e.lookupSecondary = function (t, e) {
            return _t.get(St(t, e))
          })
      },
      8158: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticMeaningCollator = e.SemanticNodeCollator = e.SemanticDefault = void 0)
        const n = r(3588),
          o = r(3882)
        class i {
          constructor() {
            this.map = {}
          }
          static key(t, e) {
            return e ? t + ':' + e : t
          }
          add(t, e) {
            this.map[i.key(t, e.font)] = e
          }
          addNode(t) {
            this.add(t.textContent, t.meaning())
          }
          retrieve(t, e) {
            return this.map[i.key(t, e)]
          }
          retrieveNode(t) {
            return this.retrieve(t.textContent, t.font)
          }
          size() {
            return Object.keys(this.map).length
          }
        }
        e.SemanticDefault = i
        class s {
          constructor() {
            this.map = {}
          }
          add(t, e) {
            const r = this.map[t]
            r ? r.push(e) : (this.map[t] = [e])
          }
          retrieve(t, e) {
            return this.map[i.key(t, e)]
          }
          retrieveNode(t) {
            return this.retrieve(t.textContent, t.font)
          }
          copy() {
            const t = this.copyCollator()
            for (const e in this.map) t.map[e] = this.map[e]
            return t
          }
          minimize() {
            for (const t in this.map) 1 === this.map[t].length && delete this.map[t]
          }
          minimalCollator() {
            const t = this.copy()
            for (const e in t.map) 1 === t.map[e].length && delete t.map[e]
            return t
          }
          isMultiValued() {
            for (const t in this.map) if (this.map[t].length > 1) return !0
            return !1
          }
          isEmpty() {
            return !Object.keys(this.map).length
          }
        }
        class a extends s {
          copyCollator() {
            return new a()
          }
          add(t, e) {
            const r = i.key(t, e.font)
            super.add(r, e)
          }
          addNode(t) {
            this.add(t.textContent, t)
          }
          toString() {
            const t = []
            for (const e in this.map) {
              const r = Array(e.length + 3).join(' '),
                n = this.map[e],
                o = []
              for (let t, e = 0; (t = n[e]); e++) o.push(t.toString())
              t.push(e + ': ' + o.join('\n' + r))
            }
            return t.join('\n')
          }
          collateMeaning() {
            const t = new l()
            for (const e in this.map)
              t.map[e] = this.map[e].map(function (t) {
                return t.meaning()
              })
            return t
          }
        }
        e.SemanticNodeCollator = a
        class l extends s {
          copyCollator() {
            return new l()
          }
          add(t, e) {
            const r = this.retrieve(t, e.font)
            if (
              !r ||
              !r.find(function (t) {
                return n.equal(t, e)
              })
            ) {
              const r = i.key(t, e.font)
              super.add(r, e)
            }
          }
          addNode(t) {
            this.add(t.textContent, t.meaning())
          }
          toString() {
            const t = []
            for (const e in this.map) {
              const r = Array(e.length + 3).join(' '),
                n = this.map[e],
                o = []
              for (let t, e = 0; (t = n[e]); e++) o.push('{type: ' + t.type + ', role: ' + t.role + ', font: ' + t.font + '}')
              t.push(e + ': ' + o.join('\n' + r))
            }
            return t.join('\n')
          }
          reduce() {
            for (const t in this.map) 1 !== this.map[t].length && (this.map[t] = (0, o.reduce)(this.map[t]))
          }
          default() {
            const t = new i()
            for (const e in this.map) 1 === this.map[e].length && (t.map[e] = this.map[e][0])
            return t
          }
          newDefault() {
            const t = this.default()
            this.reduce()
            const e = this.default()
            return t.size() !== e.size() ? e : null
          }
        }
        e.SemanticMeaningCollator = l
      },
      9911: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticMultiHeuristic = e.SemanticTreeHeuristic = e.SemanticAbstractHeuristic = void 0)
        class r {
          constructor(t, e, r = (t) => !1) {
            ;(this.name = t), (this.apply = e), (this.applicable = r)
          }
        }
        e.SemanticAbstractHeuristic = r
        e.SemanticTreeHeuristic = class extends r {}
        e.SemanticMultiHeuristic = class extends r {}
      },
      7516: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.lookup = e.run = e.add = e.blacklist = e.flags = e.updateFactory = e.factory = void 0),
          (e.factory = null),
          (e.updateFactory = function (t) {
            e.factory = t
          })
        const r = new Map()
        function n(t) {
          return r.get(t)
        }
        ;(e.flags = { combine_juxtaposition: !0, convert_juxtaposition: !0, multioperator: !0 }),
          (e.blacklist = {}),
          (e.add = function (t) {
            const n = t.name
            r.set(n, t), e.flags[n] || (e.flags[n] = !1)
          }),
          (e.run = function (t, r, o) {
            const i = n(t)
            return i && !e.blacklist[t] && (e.flags[t] || i.applicable(r)) ? i.apply(r) : o ? o(r) : r
          }),
          (e.lookup = n)
      },
      94: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(2057),
          o = r(5897),
          i = r(3588),
          s = r(7516),
          a = r(9911),
          l = r(5609),
          c = r(3308),
          u = r(4795)
        function p(t, e, r) {
          let n = null
          if (!t.length) return n
          const o = r[r.length - 1],
            i = o && o.length,
            s = e && e.length,
            a = c.default.getInstance()
          if (i && s) {
            if ('infixop' === e[0].type && 'implicit' === e[0].role) return (n = t.pop()), o.push(a.postfixNode_(o.pop(), t)), n
            n = t.shift()
            const r = a.prefixNode_(e.shift(), t)
            return e.unshift(r), n
          }
          return i ? (o.push(a.postfixNode_(o.pop(), t)), n) : (s && e.unshift(a.prefixNode_(e.shift(), t)), n)
        }
        function h(t, e, r) {
          if (!e.length) return t
          const o = t.pop(),
            i = e.shift(),
            a = r.shift()
          if (l.isImplicitOp(i)) {
            n.Debugger.getInstance().output('Juxta Heuristic Case 2')
            const s = (o ? [o, i] : [i]).concat(a)
            return h(t.concat(s), e, r)
          }
          if (!o) return n.Debugger.getInstance().output('Juxta Heuristic Case 3'), h([i].concat(a), e, r)
          const c = a.shift()
          if (!c) {
            n.Debugger.getInstance().output('Juxta Heuristic Case 9')
            const a = s.factory.makeBranchNode('infixop', [o, e.shift()], [i], i.textContent)
            return (a.role = 'implicit'), s.run('combine_juxtaposition', a), e.unshift(a), h(t, e, r)
          }
          if (l.isOperator(o) || l.isOperator(c)) return n.Debugger.getInstance().output('Juxta Heuristic Case 4'), h(t.concat([o, i, c]).concat(a), e, r)
          let u = null
          return (
            l.isImplicitOp(o) && l.isImplicitOp(c)
              ? (n.Debugger.getInstance().output('Juxta Heuristic Case 5'),
                o.contentNodes.push(i),
                (o.contentNodes = o.contentNodes.concat(c.contentNodes)),
                o.childNodes.push(c),
                (o.childNodes = o.childNodes.concat(c.childNodes)),
                c.childNodes.forEach((t) => (t.parent = o)),
                (i.parent = o),
                o.addMathmlNodes(i.mathml),
                o.addMathmlNodes(c.mathml),
                (u = o))
              : l.isImplicitOp(o)
              ? (n.Debugger.getInstance().output('Juxta Heuristic Case 6'), o.contentNodes.push(i), o.childNodes.push(c), (c.parent = o), (i.parent = o), o.addMathmlNodes(i.mathml), o.addMathmlNodes(c.mathml), (u = o))
              : l.isImplicitOp(c)
              ? (n.Debugger.getInstance().output('Juxta Heuristic Case 7'), c.contentNodes.unshift(i), c.childNodes.unshift(o), (o.parent = c), (i.parent = c), c.addMathmlNodes(i.mathml), c.addMathmlNodes(o.mathml), (u = c))
              : (n.Debugger.getInstance().output('Juxta Heuristic Case 8'), (u = s.factory.makeBranchNode('infixop', [o, c], [i], i.textContent)), (u.role = 'implicit')),
            t.push(u),
            h(t.concat(a), e, r)
          )
        }
        s.add(
          new a.SemanticTreeHeuristic('combine_juxtaposition', function (t) {
            for (let e, r = t.childNodes.length - 1; (e = t.childNodes[r]); r--)
              l.isImplicitOp(e) &&
                !e.nobreaking &&
                (t.childNodes.splice(r, 1, ...e.childNodes),
                t.contentNodes.splice(r, 0, ...e.contentNodes),
                e.childNodes.concat(e.contentNodes).forEach(function (e) {
                  e.parent = t
                }),
                t.addMathmlNodes(e.mathml))
            return t
          })
        ),
          s.add(
            new a.SemanticTreeHeuristic(
              'propagateSimpleFunction',
              (t) => (('infixop' !== t.type && 'fraction' !== t.type) || !t.childNodes.every(l.isSimpleFunction) || (t.role = 'composed function'), t),
              (t) => 'clearspeak' === o.default.getInstance().domain
            )
          ),
          s.add(
            new a.SemanticTreeHeuristic(
              'simpleNamedFunction',
              (t) => ('unit' !== t.role && -1 !== ['f', 'g', 'h', 'F', 'G', 'H'].indexOf(t.textContent) && (t.role = 'simple function'), t),
              (t) => 'clearspeak' === o.default.getInstance().domain
            )
          ),
          s.add(
            new a.SemanticTreeHeuristic(
              'propagateComposedFunction',
              (t) => ('fenced' === t.type && 'composed function' === t.childNodes[0].role && (t.role = 'composed function'), t),
              (t) => 'clearspeak' === o.default.getInstance().domain
            )
          ),
          s.add(
            new a.SemanticTreeHeuristic('multioperator', (t) => {
              if ('unknown' !== t.role || t.textContent.length <= 1) return
              const e = [...t.textContent].map(i.lookupMeaning).reduce(function (t, e) {
                return t && e.role && 'unknown' !== e.role && e.role !== t ? ('unknown' === t ? e.role : null) : t
              }, 'unknown')
              e && (t.role = e)
            })
          ),
          s.add(
            new a.SemanticMultiHeuristic('convert_juxtaposition', (t) => {
              let e = u.partitionNodes(t, function (t) {
                return t.textContent === i.invisibleTimes() && 'operator' === t.type
              })
              ;(e = e.rel.length
                ? (function (t) {
                    const e = [],
                      r = []
                    let n = t.comp.shift(),
                      o = null,
                      i = []
                    for (; t.comp.length; )
                      if (((i = []), n.length)) o && e.push(o), r.push(n), (o = t.rel.shift()), (n = t.comp.shift())
                      else {
                        for (o && i.push(o); !n.length && t.comp.length; ) (n = t.comp.shift()), i.push(t.rel.shift())
                        o = p(i, n, r)
                      }
                    i.length || n.length ? (e.push(o), r.push(n)) : (i.push(o), p(i, n, r))
                    return { rel: e, comp: r }
                  })(e)
                : e),
                (t = e.comp[0])
              for (let r, n, o = 1; (r = e.comp[o]), (n = e.rel[o - 1]); o++) t.push(n), (t = t.concat(r))
              return (
                (e = u.partitionNodes(t, function (t) {
                  return t.textContent === i.invisibleTimes() && ('operator' === t.type || 'infixop' === t.type)
                })),
                e.rel.length ? h(e.comp.shift(), e.rel, e.comp) : t
              )
            })
          ),
          s.add(
            new a.SemanticTreeHeuristic(
              'simple2prefix',
              (t) => (t.textContent.length > 1 && !t.textContent[0].match(/[A-Z]/) && (t.role = 'prefix function'), t),
              (t) => 'braille' === o.default.getInstance().modality && 'identifier' === t.type
            )
          ),
          s.add(
            new a.SemanticTreeHeuristic(
              'detect_cycle',
              (t) => {
                ;(t.type = 'matrix'), (t.role = 'cycle')
                const e = t.childNodes[0]
                return (e.type = 'row'), (e.role = 'cycle'), (e.textContent = ''), (e.contentNodes = []), t
              },
              (t) =>
                'fenced' === t.type &&
                'infixop' === t.childNodes[0].type &&
                'implicit' === t.childNodes[0].role &&
                t.childNodes[0].childNodes.every(function (t) {
                  return 'number' === t.type
                }) &&
                t.childNodes[0].contentNodes.every(function (t) {
                  return 'space' === t.role
                })
            )
          )
      },
      7228: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticMathml = void 0)
        const n = r(5740),
          o = r(5250),
          i = r(5609),
          s = r(3308),
          a = r(4795)
        class l extends o.SemanticAbstractParser {
          constructor() {
            super('MathML'),
              (this.parseMap_ = {
                SEMANTICS: this.semantics_.bind(this),
                MATH: this.rows_.bind(this),
                MROW: this.rows_.bind(this),
                MPADDED: this.rows_.bind(this),
                MSTYLE: this.rows_.bind(this),
                MFRAC: this.fraction_.bind(this),
                MSUB: this.limits_.bind(this),
                MSUP: this.limits_.bind(this),
                MSUBSUP: this.limits_.bind(this),
                MOVER: this.limits_.bind(this),
                MUNDER: this.limits_.bind(this),
                MUNDEROVER: this.limits_.bind(this),
                MROOT: this.root_.bind(this),
                MSQRT: this.sqrt_.bind(this),
                MTABLE: this.table_.bind(this),
                MLABELEDTR: this.tableLabeledRow_.bind(this),
                MTR: this.tableRow_.bind(this),
                MTD: this.tableCell_.bind(this),
                MS: this.text_.bind(this),
                MTEXT: this.text_.bind(this),
                MSPACE: this.space_.bind(this),
                'ANNOTATION-XML': this.text_.bind(this),
                MI: this.identifier_.bind(this),
                MN: this.number_.bind(this),
                MO: this.operator_.bind(this),
                MFENCED: this.fenced_.bind(this),
                MENCLOSE: this.enclosed_.bind(this),
                MMULTISCRIPTS: this.multiscripts_.bind(this),
                ANNOTATION: this.empty_.bind(this),
                NONE: this.empty_.bind(this),
                MACTION: this.action_.bind(this)
              })
            const t = { type: 'identifier', role: 'numbersetletter', font: 'double-struck' }
            ;['C', 'H', 'N', 'P', 'Q', 'R', 'Z', '\u2102', '\u210d', '\u2115', '\u2119', '\u211a', '\u211d', '\u2124'].forEach(((e) => this.getFactory().defaultMap.add(e, t)).bind(this))
          }
          static getAttribute_(t, e, r) {
            if (!t.hasAttribute(e)) return r
            const n = t.getAttribute(e)
            return n.match(/^\s*$/) ? null : n
          }
          parse(t) {
            s.default.getInstance().setNodeFactory(this.getFactory())
            const e = n.toArray(t.childNodes),
              r = n.tagName(t),
              o = this.parseMap_[r],
              i = (o || this.dummy_.bind(this))(t, e)
            return a.addAttributes(i, t), -1 !== ['MATH', 'MROW', 'MPADDED', 'MSTYLE', 'SEMANTICS'].indexOf(r) || (i.mathml.unshift(t), (i.mathmlTree = t)), i
          }
          semantics_(t, e) {
            return e.length ? this.parse(e[0]) : this.getFactory().makeEmptyNode()
          }
          rows_(t, e) {
            const r = t.getAttribute('semantics')
            if (r && r.match('bspr_')) return s.default.proof(t, r, this.parseList.bind(this))
            let n
            return 1 === (e = a.purgeNodes(e)).length ? ((n = this.parse(e[0])), 'empty' !== n.type || n.mathmlTree || (n.mathmlTree = t)) : (n = s.default.getInstance().row(this.parseList(e))), n.mathml.unshift(t), n
          }
          fraction_(t, e) {
            if (!e.length) return this.getFactory().makeEmptyNode()
            const r = this.parse(e[0]),
              n = e[1] ? this.parse(e[1]) : this.getFactory().makeEmptyNode()
            return s.default.getInstance().fractionLikeNode(r, n, t.getAttribute('linethickness'), 'true' === t.getAttribute('bevelled'))
          }
          limits_(t, e) {
            return s.default.getInstance().limitNode(n.tagName(t), this.parseList(e))
          }
          root_(t, e) {
            return e[1] ? this.getFactory().makeBranchNode('root', [this.parse(e[1]), this.parse(e[0])], []) : this.sqrt_(t, e)
          }
          sqrt_(t, e) {
            const r = this.parseList(a.purgeNodes(e))
            return this.getFactory().makeBranchNode('sqrt', [s.default.getInstance().row(r)], [])
          }
          table_(t, e) {
            const r = t.getAttribute('semantics')
            if (r && r.match('bspr_')) return s.default.proof(t, r, this.parseList.bind(this))
            const n = this.getFactory().makeBranchNode('table', this.parseList(e), [])
            return (n.mathmlTree = t), s.default.tableToMultiline(n), n
          }
          tableRow_(t, e) {
            const r = this.getFactory().makeBranchNode('row', this.parseList(e), [])
            return (r.role = 'table'), r
          }
          tableLabeledRow_(t, e) {
            if (!e.length) return this.tableRow_(t, e)
            const r = this.parse(e[0])
            r.role = 'label'
            const n = this.getFactory().makeBranchNode('row', this.parseList(e.slice(1)), [r])
            return (n.role = 'table'), n
          }
          tableCell_(t, e) {
            const r = this.parseList(a.purgeNodes(e))
            let n
            n = r.length ? (1 === r.length && i.isType(r[0], 'empty') ? r : [s.default.getInstance().row(r)]) : []
            const o = this.getFactory().makeBranchNode('cell', n, [])
            return (o.role = 'table'), o
          }
          space_(t, e) {
            const r = t.getAttribute('width'),
              o = r && r.match(/[a-z]*$/)
            if (!o) return this.empty_(t, e)
            const i = o[0],
              a = parseFloat(r.slice(0, o.index)),
              l = { cm: 0.4, pc: 0.5, em: 0.5, ex: 1, in: 0.15, pt: 5, mm: 5 }[i]
            if (!l || isNaN(a) || a < l) return this.empty_(t, e)
            const c = this.getFactory().makeUnprocessed(t)
            return s.default.getInstance().text(c, n.tagName(t))
          }
          text_(t, e) {
            const r = this.leaf_(t, e)
            return t.textContent ? (r.updateContent(t.textContent, !0), s.default.getInstance().text(r, n.tagName(t))) : r
          }
          identifier_(t, e) {
            const r = this.leaf_(t, e)
            return s.default.getInstance().identifierNode(r, s.default.getInstance().font(t.getAttribute('mathvariant')), t.getAttribute('class'))
          }
          number_(t, e) {
            const r = this.leaf_(t, e)
            return s.default.number(r), r
          }
          operator_(t, e) {
            const r = this.leaf_(t, e)
            return s.default.getInstance().operatorNode(r), r
          }
          fenced_(t, e) {
            const r = this.parseList(a.purgeNodes(e)),
              n = l.getAttribute_(t, 'separators', ','),
              o = l.getAttribute_(t, 'open', '('),
              i = l.getAttribute_(t, 'close', ')'),
              c = s.default.getInstance().mfenced(o, i, n, r)
            return s.default.getInstance().tablesInRow([c])[0]
          }
          enclosed_(t, e) {
            const r = this.parseList(a.purgeNodes(e)),
              n = this.getFactory().makeBranchNode('enclose', [s.default.getInstance().row(r)], [])
            return (n.role = t.getAttribute('notation') || 'unknown'), n
          }
          multiscripts_(t, e) {
            if (!e.length) return this.getFactory().makeEmptyNode()
            const r = this.parse(e.shift())
            if (!e.length) return r
            const o = [],
              i = [],
              l = [],
              c = []
            let u = !1,
              p = 0
            for (let t, r = 0; (t = e[r]); r++) 'MPRESCRIPTS' !== n.tagName(t) ? (u ? (1 & p ? o.push(t) : i.push(t)) : 1 & p ? l.push(t) : c.push(t), p++) : ((u = !0), (p = 0))
            return a.purgeNodes(o).length || a.purgeNodes(i).length ? s.default.getInstance().tensor(r, this.parseList(i), this.parseList(o), this.parseList(c), this.parseList(l)) : s.default.getInstance().pseudoTensor(r, this.parseList(c), this.parseList(l))
          }
          empty_(t, e) {
            return this.getFactory().makeEmptyNode()
          }
          action_(t, e) {
            return e.length > 1 ? this.parse(e[1]) : this.getFactory().makeUnprocessed(t)
          }
          dummy_(t, e) {
            const r = this.getFactory().makeUnprocessed(t)
            return (r.role = t.tagName), (r.textContent = t.textContent), r
          }
          leaf_(t, e) {
            if (1 === e.length && e[0].nodeType !== n.NodeType.TEXT_NODE) {
              const r = this.getFactory().makeUnprocessed(t)
              return (r.role = e[0].tagName), a.addAttributes(r, e[0]), r
            }
            return this.getFactory().makeLeafNode(t.textContent, s.default.getInstance().font(t.getAttribute('mathvariant')))
          }
        }
        e.SemanticMathml = l
      },
      5952: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticNode = void 0)
        const n = r(5740),
          o = r(3588),
          i = r(4795)
        class s {
          constructor(t) {
            ;(this.id = t),
              (this.mathml = []),
              (this.parent = null),
              (this.type = 'unknown'),
              (this.role = 'unknown'),
              (this.font = 'unknown'),
              (this.embellished = null),
              (this.fencePointer = ''),
              (this.childNodes = []),
              (this.textContent = ''),
              (this.mathmlTree = null),
              (this.contentNodes = []),
              (this.annotation = {}),
              (this.attributes = {}),
              (this.nobreaking = !1)
          }
          static fromXml(t) {
            const e = parseInt(t.getAttribute('id'), 10),
              r = new s(e)
            return (
              (r.type = t.tagName),
              s.setAttribute(r, t, 'role'),
              s.setAttribute(r, t, 'font'),
              s.setAttribute(r, t, 'embellished'),
              s.setAttribute(r, t, 'fencepointer', 'fencePointer'),
              t.getAttribute('annotation') && r.parseAnnotation(t.getAttribute('annotation')),
              i.addAttributes(r, t),
              s.processChildren(r, t),
              r
            )
          }
          static setAttribute(t, e, r, n) {
            n = n || r
            const o = e.getAttribute(r)
            o && (t[n] = o)
          }
          static processChildren(t, e) {
            for (const r of n.toArray(e.childNodes)) {
              if (r.nodeType === n.NodeType.TEXT_NODE) {
                t.textContent = r.textContent
                continue
              }
              const e = n.toArray(r.childNodes).map(s.fromXml)
              e.forEach((e) => (e.parent = t)), 'CONTENT' === n.tagName(r) ? (t.contentNodes = e) : (t.childNodes = e)
            }
          }
          querySelectorAll(t) {
            let e = []
            for (let r, n = 0; (r = this.childNodes[n]); n++) e = e.concat(r.querySelectorAll(t))
            for (let r, n = 0; (r = this.contentNodes[n]); n++) e = e.concat(r.querySelectorAll(t))
            return t(this) && e.unshift(this), e
          }
          xml(t, e) {
            const r = function (r, n) {
                const o = n.map(function (r) {
                    return r.xml(t, e)
                  }),
                  i = t.createElementNS('', r)
                for (let t, e = 0; (t = o[e]); e++) i.appendChild(t)
                return i
              },
              n = t.createElementNS('', this.type)
            return e || this.xmlAttributes(n), (n.textContent = this.textContent), this.contentNodes.length > 0 && n.appendChild(r('content', this.contentNodes)), this.childNodes.length > 0 && n.appendChild(r('children', this.childNodes)), n
          }
          toString(t = !1) {
            const e = n.parseInput('<snode/>')
            return n.serializeXml(this.xml(e, t))
          }
          allAttributes() {
            const t = []
            return (
              t.push(['role', this.role]),
              'unknown' !== this.font && t.push(['font', this.font]),
              Object.keys(this.annotation).length && t.push(['annotation', this.xmlAnnotation()]),
              this.embellished && t.push(['embellished', this.embellished]),
              this.fencePointer && t.push(['fencepointer', this.fencePointer]),
              t.push(['id', this.id.toString()]),
              t
            )
          }
          xmlAnnotation() {
            const t = []
            for (const e in this.annotation)
              this.annotation[e].forEach(function (r) {
                t.push(e + ':' + r)
              })
            return t.join(';')
          }
          toJson() {
            const t = {}
            t.type = this.type
            const e = this.allAttributes()
            for (let r, n = 0; (r = e[n]); n++) t[r[0]] = r[1].toString()
            return (
              this.textContent && (t.$t = this.textContent),
              this.childNodes.length &&
                (t.children = this.childNodes.map(function (t) {
                  return t.toJson()
                })),
              this.contentNodes.length &&
                (t.content = this.contentNodes.map(function (t) {
                  return t.toJson()
                })),
              t
            )
          }
          updateContent(t, e) {
            const r = e ? t.replace(/^[ \f\n\r\t\v\u200b]*/, '').replace(/[ \f\n\r\t\v\u200b]*$/, '') : t.trim()
            if (((t = t && !r ? t : r), this.textContent === t)) return
            const n = (0, o.lookupMeaning)(t)
            ;(this.textContent = t), (this.role = n.role), (this.type = n.type), (this.font = n.font)
          }
          addMathmlNodes(t) {
            for (let e, r = 0; (e = t[r]); r++) -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 r = this.childNodes.indexOf(t)
            if (-1 === r) return
            ;(t.parent = null), (e.parent = this), (this.childNodes[r] = e)
            const n = t.mathml.filter(function (t) {
                return -1 === e.mathml.indexOf(t)
              }),
              o = e.mathml.filter(function (e) {
                return -1 === t.mathml.indexOf(e)
              })
            this.removeMathmlNodes(n), this.addMathmlNodes(o)
          }
          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, r, n = 0; (e = this.childNodes[n]), (r = t.childNodes[n]); n++) if (!e.equals(r)) return !1
            for (let e, r, n = 0; (e = this.contentNodes[n]), (r = t.contentNodes[n]); n++) if (!e.equals(r)) 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 r = this.annotation[t]
            return !!r && -1 !== r.indexOf(e)
          }
          parseAnnotation(t) {
            const e = t.split(';')
            for (let t = 0, r = e.length; t < r; t++) {
              const r = e[t].split(':')
              this.addAnnotation(r[0], r[1])
            }
          }
          meaning() {
            return { type: this.type, role: this.role, font: this.font }
          }
          xmlAttributes(t) {
            const e = this.allAttributes()
            for (let r, n = 0; (r = e[n]); n++) t.setAttribute(r[0], r[1])
            this.addExternalAttributes(t)
          }
          addExternalAttributes(t) {
            for (const e in this.attributes) t.setAttribute(e, this.attributes[e])
          }
          removeMathmlNodes(t) {
            const e = this.mathml
            for (let r, n = 0; (r = t[n]); n++) {
              const t = e.indexOf(r)
              ;-1 !== t && e.splice(t, 1)
            }
            this.mathml = e
          }
          displayTree_(t) {
            t++
            const e = Array(t).join('  ')
            let r = ''
            ;(r += '\n' + e + this.toString()), (r += '\n' + e + 'MathmlTree:'), (r += '\n' + e + this.mathmlTreeString()), (r += '\n' + e + 'MathML:')
            for (let t, n = 0; (t = this.mathml[n]); n++) r += '\n' + e + t.toString()
            return (
              (r += '\n' + e + 'Begin Content'),
              this.contentNodes.forEach(function (e) {
                r += e.displayTree_(t)
              }),
              (r += '\n' + e + 'End Content'),
              (r += '\n' + e + 'Begin Children'),
              this.childNodes.forEach(function (e) {
                r += e.displayTree_(t)
              }),
              (r += '\n' + e + 'End Children'),
              r
            )
          }
          mathmlTreeString() {
            return this.mathmlTree ? this.mathmlTree.toString() : 'EMPTY'
          }
          addAnnotation_(t, e) {
            const r = this.annotation[t]
            r ? r.push(e) : (this.annotation[t] = [e])
          }
        }
        e.SemanticNode = s
      },
      6537: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticNodeFactory = void 0)
        const n = r(8158),
          o = r(8158),
          i = r(5952)
        e.SemanticNodeFactory = class {
          constructor() {
            ;(this.leafMap = new o.SemanticNodeCollator()), (this.defaultMap = new n.SemanticDefault()), (this.idCounter_ = -1)
          }
          makeNode(t) {
            return this.createNode_(t)
          }
          makeUnprocessed(t) {
            const e = this.createNode_()
            return (e.mathml = [t]), (e.mathmlTree = t), e
          }
          makeEmptyNode() {
            const t = this.createNode_()
            return (t.type = 'empty'), t
          }
          makeContentNode(t) {
            const e = this.createNode_()
            return e.updateContent(t), e
          }
          makeMultipleContentNodes(t, e) {
            const r = []
            for (let n = 0; n < t; n++) r.push(this.makeContentNode(e))
            return r
          }
          makeLeafNode(t, e) {
            if (!t) return this.makeEmptyNode()
            const r = this.makeContentNode(t)
            r.font = e || r.font
            const n = this.defaultMap.retrieveNode(r)
            return n && ((r.type = n.type), (r.role = n.role), (r.font = n.font)), this.leafMap.addNode(r), r
          }
          makeBranchNode(t, e, r, n) {
            const o = this.createNode_()
            return (
              n && o.updateContent(n),
              (o.type = t),
              (o.childNodes = e),
              (o.contentNodes = r),
              e.concat(r).forEach(function (t) {
                ;(t.parent = o), o.addMathmlNodes(t.mathml)
              }),
              o
            )
          }
          createNode_(t) {
            return void 0 !== t ? (this.idCounter_ = Math.max(this.idCounter_, t)) : (t = ++this.idCounter_), new i.SemanticNode(t)
          }
        }
      },
      3882: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticComparator = e.reduce = e.sort = e.apply = e.add = void 0)
        const r = []
        function n(t) {
          r.push(t)
        }
        function o(t, e) {
          for (let n, o = 0; (n = r[o]); o++) {
            const r = n.compare(t, e)
            if (0 !== r) return r
          }
          return 0
        }
        function i(t) {
          t.sort(o)
        }
        ;(e.add = n),
          (e.apply = o),
          (e.sort = i),
          (e.reduce = function (t) {
            if (t.length <= 1) return t
            const e = t.slice()
            i(e)
            const r = []
            let n
            do {
              ;(n = e.pop()), r.push(n)
            } while (n && e.length && 0 === o(e[e.length - 1], n))
            return r
          })
        class s {
          constructor(t, e = null) {
            ;(this.comparator = t), (this.type = e), n(this)
          }
          compare(t, e) {
            return this.type && this.type === t.type && this.type === e.type ? this.comparator(t, e) : 0
          }
        }
        ;(e.SemanticComparator = s),
          new s(function (t, e) {
            return 'simple function' === t.role ? 1 : 'simple function' === e.role ? -1 : 0
          }, 'identifier')
      },
      5250: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticAbstractParser = void 0)
        const n = r(6537)
        e.SemanticAbstractParser = class {
          constructor(t) {
            ;(this.type = t), (this.factory_ = new n.SemanticNodeFactory())
          }
          getFactory() {
            return this.factory_
          }
          setFactory(t) {
            this.factory_ = t
          }
          getType() {
            return this.type
          }
          parseList(t) {
            const e = []
            for (let r, n = 0; (r = t[n]); n++) e.push(this.parse(r))
            return e
          }
        }
      },
      5609: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.isMembership =
            e.elligibleRightNeutral =
            e.elligibleLeftNeutral =
            e.compareNeutralFences =
            e.isNeutralFence =
            e.isImplicitOp =
            e.isImplicit =
            e.isPureUnit =
            e.isUnitCounter =
            e.isNumber =
            e.isSingletonSetContent =
            e.scriptedElement_ =
            e.illegalSingleton_ =
            e.isSetNode =
            e.isRightBrace =
            e.isLeftBrace =
            e.isSimpleFunction =
            e.singlePunctAtPosition =
            e.isSimpleFunctionHead =
            e.isLimitBase =
            e.isBinomial =
            e.lineIsLabelled =
            e.tableIsMultiline =
            e.tableIsCases =
            e.isFencedElement =
            e.tableIsMatrixOrVector =
            e.isTableOrMultiline =
            e.isElligibleEmbellishedFence =
            e.isFence =
            e.isPunctuation =
            e.isRelation =
            e.isOperator =
            e.isEmbellished =
            e.isGeneralFunctionBoundary =
            e.isIntegralDxBoundarySingle =
            e.isIntegralDxBoundary =
            e.isBigOpBoundary =
            e.isPrefixFunctionBoundary =
            e.isSimpleFunctionScope =
            e.isAccent =
            e.isRole =
            e.embellishedType =
            e.isType =
              void 0)
        const n = r(3588),
          o = r(4795)
        function i(t, e) {
          return t.type === e
        }
        function s(t, e) {
          return t.embellished === e
        }
        function a(t, e) {
          return t.role === e
        }
        function l(t) {
          return u(t) || p(t)
        }
        function c(t) {
          return i(t, 'operator') || s(t, 'operator')
        }
        function u(t) {
          return i(t, 'relation') || s(t, 'relation')
        }
        function p(t) {
          return i(t, 'punctuation') || s(t, 'punctuation')
        }
        function h(t) {
          return i(t, 'fence') || s(t, 'fence')
        }
        function f(t) {
          return (
            !t.embellished ||
            (!(function (t) {
              return i(t, 'tensor') && (!i(t.childNodes[1], 'empty') || !i(t.childNodes[2], 'empty')) && (!i(t.childNodes[3], 'empty') || !i(t.childNodes[4], 'empty'))
            })(t) &&
              (!a(t, 'close') || !i(t, 'tensor')) &&
              (!a(t, 'open') || (!i(t, 'subscript') && !i(t, 'superscript'))) &&
              f(t.childNodes[0]))
          )
        }
        function d(t) {
          return !!t && (i(t, 'table') || i(t, 'multiline'))
        }
        function m(t) {
          return !!t && i(t, 'fenced') && (a(t, 'leftright') || v(t)) && 1 === t.childNodes.length
        }
        function y(t) {
          return !!t && -1 !== ['{', '\ufe5b', '\uff5b'].indexOf(t.textContent)
        }
        function g(t) {
          return !!t && -1 !== ['}', '\ufe5c', '\uff5d'].indexOf(t.textContent)
        }
        function b(t) {
          return 'number' === t.type && ('integer' === t.role || 'float' === t.role)
        }
        function v(t) {
          return 'neutral' === t.role || 'metric' === t.role
        }
        ;(e.isType = i),
          (e.embellishedType = s),
          (e.isRole = a),
          (e.isAccent = function (t) {
            const e = new RegExp('\u221e|\u1ab2')
            return i(t, 'fence') || i(t, 'punctuation') || (i(t, 'operator') && !t.textContent.match(e)) || i(t, 'relation') || (i(t, 'identifier') && a(t, 'unknown') && !t.textContent.match(n.allLettersRegExp) && !t.textContent.match(e))
          }),
          (e.isSimpleFunctionScope = function (t) {
            const e = t.childNodes
            if (0 === e.length) return !0
            if (e.length > 1) return !1
            const r = e[0]
            if ('infixop' === r.type) {
              if ('implicit' !== r.role) return !1
              if (r.childNodes.some((t) => i(t, 'infixop'))) return !1
            }
            return !0
          }),
          (e.isPrefixFunctionBoundary = function (t) {
            return (c(t) && !a(t, 'division')) || i(t, 'appl') || l(t)
          }),
          (e.isBigOpBoundary = function (t) {
            return c(t) || l(t)
          }),
          (e.isIntegralDxBoundary = function (t, e) {
            return !!e && i(e, 'identifier') && n.lookupSecondary('d', t.textContent)
          }),
          (e.isIntegralDxBoundarySingle = function (t) {
            if (i(t, 'identifier')) {
              const e = t.textContent[0]
              return e && t.textContent[1] && n.lookupSecondary('d', e)
            }
            return !1
          }),
          (e.isGeneralFunctionBoundary = l),
          (e.isEmbellished = function (t) {
            return t.embellished ? t.embellished : n.isEmbellishedType(t.type) ? t.type : null
          }),
          (e.isOperator = c),
          (e.isRelation = u),
          (e.isPunctuation = p),
          (e.isFence = h),
          (e.isElligibleEmbellishedFence = function (t) {
            return !(!t || !h(t)) && (!t.embellished || f(t))
          }),
          (e.isTableOrMultiline = d),
          (e.tableIsMatrixOrVector = function (t) {
            return !!t && m(t) && d(t.childNodes[0])
          }),
          (e.isFencedElement = m),
          (e.tableIsCases = function (t, e) {
            return e.length > 0 && a(e[e.length - 1], 'openfence')
          }),
          (e.tableIsMultiline = function (t) {
            return t.childNodes.every(function (t) {
              return t.childNodes.length <= 1
            })
          }),
          (e.lineIsLabelled = function (t) {
            return i(t, 'line') && t.contentNodes.length && a(t.contentNodes[0], 'label')
          }),
          (e.isBinomial = function (t) {
            return 2 === t.childNodes.length
          }),
          (e.isLimitBase = function t(e) {
            return i(e, 'largeop') || i(e, 'limboth') || i(e, 'limlower') || i(e, 'limupper') || (i(e, 'function') && a(e, 'limit function')) || ((i(e, 'overscore') || i(e, 'underscore')) && t(e.childNodes[0]))
          }),
          (e.isSimpleFunctionHead = function (t) {
            return 'identifier' === t.type || 'latinletter' === t.role || 'greekletter' === t.role || 'otherletter' === t.role
          }),
          (e.singlePunctAtPosition = function (t, e, r) {
            return 1 === e.length && ('punctuation' === t[r].type || 'punctuation' === t[r].embellished) && t[r] === e[0]
          }),
          (e.isSimpleFunction = function (t) {
            return i(t, 'identifier') && a(t, 'simple function')
          }),
          (e.isLeftBrace = y),
          (e.isRightBrace = g),
          (e.isSetNode = function (t) {
            return y(t.contentNodes[0]) && g(t.contentNodes[1])
          }),
          (e.illegalSingleton_ = ['punctuation', 'punctuated', 'relseq', 'multirel', 'table', 'multiline', 'cases', 'inference']),
          (e.scriptedElement_ = ['limupper', 'limlower', 'limboth', 'subscript', 'superscript', 'underscore', 'overscore', 'tensor']),
          (e.isSingletonSetContent = function t(r) {
            const n = r.type
            return -1 === e.illegalSingleton_.indexOf(n) && ('infixop' !== n || 'implicit' === r.role) && ('fenced' === n ? 'leftright' !== r.role || t(r.childNodes[0]) : -1 === e.scriptedElement_.indexOf(n) || t(r.childNodes[0]))
          }),
          (e.isNumber = b),
          (e.isUnitCounter = function (t) {
            return b(t) || 'vulgar' === t.role || 'mixed' === t.role
          }),
          (e.isPureUnit = function (t) {
            const e = t.childNodes
            return 'unit' === t.role && (!e.length || 'unit' === e[0].role)
          }),
          (e.isImplicit = function (t) {
            return 'implicit' === t.role || ('unit' === t.role && !!t.contentNodes.length && t.contentNodes[0].textContent === n.invisibleTimes())
          }),
          (e.isImplicitOp = function (t) {
            return 'infixop' === t.type && 'implicit' === t.role
          }),
          (e.isNeutralFence = v),
          (e.compareNeutralFences = function (t, e) {
            return v(t) && v(e) && (0, o.getEmbellishedInner)(t).textContent === (0, o.getEmbellishedInner)(e).textContent
          }),
          (e.elligibleLeftNeutral = function (t) {
            return !!v(t) && (!t.embellished || ('superscript' !== t.type && 'subscript' !== t.type && ('tensor' !== t.type || ('empty' === t.childNodes[3].type && 'empty' === t.childNodes[4].type))))
          }),
          (e.elligibleRightNeutral = function (t) {
            return !!v(t) && (!t.embellished || 'tensor' !== t.type || ('empty' === t.childNodes[1].type && 'empty' === t.childNodes[2].type))
          }),
          (e.isMembership = function (t) {
            return ['element', 'nonelement', 'reelement', 'renonelement'].includes(t.role)
          })
      },
      3308: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 })
        const n = r(5740),
          o = r(3588),
          i = r(7516),
          s = r(6537),
          a = r(5609),
          l = r(4795)
        class c {
          constructor() {
            ;(this.funcAppls = {}), (this.factory_ = new s.SemanticNodeFactory()), i.updateFactory(this.factory_)
          }
          static getInstance() {
            return (c.instance = c.instance || new c()), c.instance
          }
          static tableToMultiline(t) {
            if (a.tableIsMultiline(t)) {
              t.type = 'multiline'
              for (let e, r = 0; (e = t.childNodes[r]); r++) c.rowToLine_(e, 'multiline')
              1 === t.childNodes.length && !a.lineIsLabelled(t.childNodes[0]) && a.isFencedElement(t.childNodes[0].childNodes[0]) && c.tableToMatrixOrVector_(c.rewriteFencedLine_(t)), c.binomialForm_(t), c.classifyMultiline(t)
            } else c.classifyTable(t)
          }
          static number(t) {
            ;('unknown' !== t.type && 'identifier' !== t.type) || (t.type = 'number'), c.numberRole_(t), c.exprFont_(t)
          }
          static classifyMultiline(t) {
            let e = 0
            const r = t.childNodes.length
            let n
            for (; e < r && (!(n = t.childNodes[e]) || !n.childNodes.length); ) e++
            if (e >= r) return
            const o = n.childNodes[0].role
            'unknown' !== o &&
              t.childNodes.every(function (t) {
                const e = t.childNodes[0]
                return !e || (e.role === o && (a.isType(e, 'relation') || a.isType(e, 'relseq')))
              }) &&
              (t.role = o)
          }
          static classifyTable(t) {
            const e = c.computeColumns_(t)
            c.classifyByColumns_(t, e, 'equality') || c.classifyByColumns_(t, e, 'inequality', ['equality']) || c.classifyByColumns_(t, e, 'arrow') || c.detectCaleyTable(t)
          }
          static detectCaleyTable(t) {
            if (!t.mathmlTree) return !1
            const e = t.mathmlTree,
              r = e.getAttribute('columnlines'),
              n = e.getAttribute('rowlines')
            return !(!r || !n) && !(!c.cayleySpacing(r) || !c.cayleySpacing(n)) && ((t.role = '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, r) {
            const n = c.separateSemantics(e)
            return c.getInstance().proof(t, n, r)
          }
          static findSemantics(t, e, r) {
            const n = null == r ? null : r,
              o = c.getSemantics(t)
            return !!o && !!o[e] && (null == n || o[e] === n)
          }
          static getSemantics(t) {
            const e = t.getAttribute('semantics')
            return e ? c.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 [r, n] = t.split(':')
                e[c.removePrefix(r)] = n
              }),
              e
            )
          }
          static matchSpaces_(t, e) {
            for (let r, n = 0; (r = e[n]); n++) {
              const e = t[n].mathmlTree,
                o = t[n + 1].mathmlTree
              if (!e || !o) continue
              const i = e.nextSibling
              if (!i || i === o) continue
              const s = c.getSpacer_(i)
              s && (r.mathml.push(s), (r.mathmlTree = s), (r.role = 'space'))
            }
          }
          static getSpacer_(t) {
            if ('MSPACE' === n.tagName(t)) return t
            for (; l.hasEmptyTag(t) && 1 === t.childNodes.length; ) if (((t = t.childNodes[0]), 'MSPACE' === n.tagName(t))) return t
            return null
          }
          static fenceToPunct_(t) {
            const e = c.FENCE_TO_PUNCT_[t.role]
            if (e) {
              for (; t.embellished; ) (t.embellished = 'punctuation'), a.isRole(t, 'subsup') || a.isRole(t, 'underover') || (t.role = e), (t = t.childNodes[0])
              ;(t.type = 'punctuation'), (t.role = e)
            }
          }
          static classifyFunction_(t, e) {
            if ('appl' === t.type || 'bigop' === t.type || 'integral' === t.type) return ''
            if (e[0] && e[0].textContent === o.functionApplication()) {
              c.getInstance().funcAppls[t.id] = e.shift()
              let r = 'simple function'
              return i.run('simple2prefix', t), ('prefix function' !== t.role && 'limit function' !== t.role) || (r = t.role), c.propagateFunctionRole_(t, r), 'prefix'
            }
            const r = c.CLASSIFY_FUNCTION_[t.role]
            return r || (a.isSimpleFunctionHead(t) ? 'simple' : '')
          }
          static propagateFunctionRole_(t, e) {
            if (t) {
              if ('infixop' === t.type) return
              a.isRole(t, 'subsup') || a.isRole(t, 'underover') || (t.role = e), c.propagateFunctionRole_(t.childNodes[0], e)
            }
          }
          static getFunctionOp_(t, e) {
            if (e(t)) return t
            for (let r, n = 0; (r = t.childNodes[n]); n++) {
              const t = c.getFunctionOp_(r, e)
              if (t) return t
            }
            return null
          }
          static tableToMatrixOrVector_(t) {
            const e = t.childNodes[0]
            a.isType(e, 'multiline') ? c.tableToVector_(t) : c.tableToMatrix_(t), t.contentNodes.forEach(e.appendContentNode.bind(e))
            for (let t, r = 0; (t = e.childNodes[r]); r++) c.assignRoleToRow_(t, c.getComponentRoles_(e))
            return (e.parent = null), e
          }
          static tableToVector_(t) {
            const e = t.childNodes[0]
            ;(e.type = 'vector'), 1 !== e.childNodes.length ? c.binomialForm_(e) : c.tableToSquare_(t)
          }
          static binomialForm_(t) {
            a.isBinomial(t) && ((t.role = 'binomial'), (t.childNodes[0].role = 'binomial'), (t.childNodes[1].role = 'binomial'))
          }
          static tableToMatrix_(t) {
            const e = t.childNodes[0]
            ;(e.type = 'matrix'), e.childNodes && e.childNodes.length > 0 && e.childNodes[0].childNodes && e.childNodes.length === e.childNodes[0].childNodes.length ? c.tableToSquare_(t) : e.childNodes && 1 === e.childNodes.length && (e.role = 'rowvector')
          }
          static tableToSquare_(t) {
            const e = t.childNodes[0]
            a.isNeutralFence(t) ? (e.role = 'determinant') : (e.role = 'squarematrix')
          }
          static getComponentRoles_(t) {
            const e = t.role
            return e && 'unknown' !== e ? e : t.type.toLowerCase() || 'unknown'
          }
          static tableToCases_(t, e) {
            for (let e, r = 0; (e = t.childNodes[r]); r++) c.assignRoleToRow_(e, 'cases')
            return (t.type = 'cases'), t.appendContentNode(e), a.tableIsMultiline(t) && c.binomialForm_(t), t
          }
          static rewriteFencedLine_(t) {
            const e = t.childNodes[0],
              r = t.childNodes[0].childNodes[0],
              n = t.childNodes[0].childNodes[0].childNodes[0]
            return (r.parent = t.parent), (t.parent = r), (n.parent = e), (r.childNodes = [t]), (e.childNodes = [n]), r
          }
          static rowToLine_(t, e) {
            const r = e || 'unknown'
            a.isType(t, 'row') &&
              ((t.type = 'line'),
              (t.role = r),
              1 === t.childNodes.length &&
                a.isType(t.childNodes[0], 'cell') &&
                ((t.childNodes = t.childNodes[0].childNodes),
                t.childNodes.forEach(function (e) {
                  e.parent = t
                })))
          }
          static assignRoleToRow_(t, e) {
            a.isType(t, 'line')
              ? (t.role = e)
              : a.isType(t, 'row') &&
                ((t.role = e),
                t.childNodes.forEach(function (t) {
                  a.isType(t, '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 numberRole_(t) {
            if ('unknown' !== t.role) return
            const e = [...t.textContent].filter((t) => t.match(/[^\s]/)),
              r = e.map(o.lookupMeaning)
            if (
              r.every(function (t) {
                return ('number' === t.type && 'integer' === t.role) || ('punctuation' === t.type && 'comma' === t.role)
              })
            )
              return (t.role = 'integer'), void ('0' === e[0] && t.addAnnotation('general', 'basenumber'))
            r.every(function (t) {
              return ('number' === t.type && 'integer' === t.role) || 'punctuation' === t.type
            })
              ? (t.role = 'float')
              : (t.role = 'othernumber')
          }
          static exprFont_(t) {
            if ('unknown' !== t.font) return
            const e = [...t.textContent].map(o.lookupMeaning).reduce(function (t, e) {
              return t && e.font && 'unknown' !== e.font && e.font !== t ? ('unknown' === t ? e.font : null) : t
            }, 'unknown')
            e && (t.font = e)
          }
          static purgeFences_(t) {
            const e = t.rel,
              r = t.comp,
              n = [],
              o = []
            for (; e.length > 0; ) {
              const t = e.shift()
              let i = r.shift()
              a.isElligibleEmbellishedFence(t) ? (n.push(t), o.push(i)) : (c.fenceToPunct_(t), i.push(t), (i = i.concat(r.shift())), r.unshift(i))
            }
            return o.push(r.shift()), { rel: n, comp: o }
          }
          static rewriteFencedNode_(t) {
            const e = t.contentNodes[0],
              r = t.contentNodes[1]
            let n = c.rewriteFence_(t, e)
            return (t.contentNodes[0] = n.fence), (n = c.rewriteFence_(n.node, r)), (t.contentNodes[1] = n.fence), (t.contentNodes[0].parent = t), (t.contentNodes[1].parent = t), (n.node.parent = null), n.node
          }
          static rewriteFence_(t, e) {
            if (!e.embellished) return { node: t, fence: e }
            const r = e.childNodes[0],
              n = c.rewriteFence_(t, r)
            return a.isType(e, 'superscript') || a.isType(e, 'subscript') || a.isType(e, 'tensor')
              ? (a.isRole(e, 'subsup') || (e.role = t.role), r !== n.node && (e.replaceChild(r, n.node), (r.parent = t)), c.propagateFencePointer_(e, r), { node: e, fence: n.fence })
              : (e.replaceChild(r, n.fence), e.mathmlTree && -1 === e.mathml.indexOf(e.mathmlTree) && e.mathml.push(e.mathmlTree), { node: n.node, fence: e })
          }
          static propagateFencePointer_(t, e) {
            ;(t.fencePointer = e.fencePointer || e.id.toString()), (t.embellished = null)
          }
          static classifyByColumns_(t, e, r, n) {
            return (
              !!(
                (3 === e.length && c.testColumns_(e, 1, (t) => c.isPureRelation_(t, r))) ||
                (2 === e.length && (c.testColumns_(e, 1, (t) => c.isEndRelation_(t, r) || c.isPureRelation_(t, r)) || c.testColumns_(e, 0, (t) => c.isEndRelation_(t, r, !0) || c.isPureRelation_(t, r))))
              ) && ((t.role = r), !0)
            )
          }
          static isEndRelation_(t, e, r) {
            const n = r ? t.childNodes.length - 1 : 0
            return a.isType(t, 'relseq') && a.isRole(t, e) && a.isType(t.childNodes[n], 'empty')
          }
          static isPureRelation_(t, e) {
            return a.isType(t, 'relation') && a.isRole(t, e)
          }
          static computeColumns_(t) {
            const e = []
            for (let r, n = 0; (r = t.childNodes[n]); n++)
              for (let t, n = 0; (t = r.childNodes[n]); n++) {
                e[n] ? e[n].push(t) : (e[n] = [t])
              }
            return e
          }
          static testColumns_(t, e, r) {
            const n = t[e]
            return (
              !!n &&
              n.some(function (t) {
                return t.childNodes.length && r(t.childNodes[0])
              }) &&
              n.every(function (t) {
                return !t.childNodes.length || r(t.childNodes[0])
              })
            )
          }
          setNodeFactory(t) {
            ;(c.getInstance().factory_ = t), i.updateFactory(c.getInstance().factory_)
          }
          getNodeFactory() {
            return c.getInstance().factory_
          }
          identifierNode(t, e, r) {
            if ('MathML-Unit' === r) (t.type = 'identifier'), (t.role = 'unit')
            else if (!e && 1 === t.textContent.length && ('integer' === t.role || 'latinletter' === t.role || 'greekletter' === t.role) && 'normal' === t.font) return (t.font = 'italic'), i.run('simpleNamedFunction', t)
            return 'unknown' === t.type && (t.type = 'identifier'), c.exprFont_(t), i.run('simpleNamedFunction', t)
          }
          implicitNode(t) {
            if (((t = c.getInstance().getMixedNumbers_(t)), 1 === (t = c.getInstance().combineUnits_(t)).length)) return t[0]
            const e = c.getInstance().implicitNode_(t)
            return i.run('combine_juxtaposition', e)
          }
          text(t, e) {
            return c.exprFont_(t), (t.type = 'text'), 'MS' === e ? ((t.role = 'string'), t) : 'MSPACE' === e || t.textContent.match(/^\s*$/) ? ((t.role = 'space'), t) : t
          }
          row(t) {
            return 0 ===
              (t = t.filter(function (t) {
                return !a.isType(t, 'empty')
              })).length
              ? c.getInstance().factory_.makeEmptyNode()
              : ((t = c.getInstance().getFencesInRow_(t)),
                (t = c.getInstance().tablesInRow(t)),
                (t = c.getInstance().getPunctuationInRow_(t)),
                (t = c.getInstance().getTextInRow_(t)),
                (t = c.getInstance().getFunctionsInRow_(t)),
                c.getInstance().relationsInRow_(t))
          }
          limitNode(t, e) {
            if (!e.length) return c.getInstance().factory_.makeEmptyNode()
            let r,
              n = e[0],
              o = 'unknown'
            if (!e[1]) return n
            if (a.isLimitBase(n)) {
              r = c.MML_TO_LIMIT_[t]
              const i = r.length
              if (((o = r.type), (e = e.slice(0, r.length + 1)), (1 === i && a.isAccent(e[1])) || (2 === i && a.isAccent(e[1]) && a.isAccent(e[2])))) return (r = c.MML_TO_BOUNDS_[t]), c.getInstance().accentNode_(n, e, r.type, r.length, r.accent)
              if (2 === i) {
                if (a.isAccent(e[1])) return (n = c.getInstance().accentNode_(n, [n, e[1]], { MSUBSUP: 'subscript', MUNDEROVER: 'underscore' }[t], 1, !0)), e[2] ? c.getInstance().makeLimitNode_(n, [n, e[2]], null, 'limupper') : n
                if (e[2] && a.isAccent(e[2])) return (n = c.getInstance().accentNode_(n, [n, e[2]], { MSUBSUP: 'superscript', MUNDEROVER: 'overscore' }[t], 1, !0)), c.getInstance().makeLimitNode_(n, [n, e[1]], null, 'limlower')
                e[i] || (o = 'limlower')
              }
              return c.getInstance().makeLimitNode_(n, e, null, o)
            }
            return (r = c.MML_TO_BOUNDS_[t]), c.getInstance().accentNode_(n, e, r.type, r.length, r.accent)
          }
          tablesInRow(t) {
            let e = l.partitionNodes(t, a.tableIsMatrixOrVector),
              r = []
            for (let t, n = 0; (t = e.rel[n]); n++) (r = r.concat(e.comp.shift())), r.push(c.tableToMatrixOrVector_(t))
            ;(r = r.concat(e.comp.shift())), (e = l.partitionNodes(r, a.isTableOrMultiline)), (r = [])
            for (let t, n = 0; (t = e.rel[n]); n++) {
              const n = e.comp.shift()
              a.tableIsCases(t, n) && c.tableToCases_(t, n.pop()), (r = r.concat(n)), r.push(t)
            }
            return r.concat(e.comp.shift())
          }
          mfenced(t, e, r, n) {
            if (r && n.length > 0) {
              const t = c.nextSeparatorFunction_(r),
                e = [n.shift()]
              n.forEach((r) => {
                e.push(c.getInstance().factory_.makeContentNode(t())), e.push(r)
              }),
                (n = e)
            }
            return t && e
              ? c.getInstance().horizontalFencedNode_(c.getInstance().factory_.makeContentNode(t), c.getInstance().factory_.makeContentNode(e), n)
              : (t && n.unshift(c.getInstance().factory_.makeContentNode(t)), e && n.push(c.getInstance().factory_.makeContentNode(e)), c.getInstance().row(n))
          }
          fractionLikeNode(t, e, r, n) {
            let o
            if (!n && l.isZeroLength(r)) {
              const r = c.getInstance().factory_.makeBranchNode('line', [t], []),
                n = c.getInstance().factory_.makeBranchNode('line', [e], [])
              return (o = c.getInstance().factory_.makeBranchNode('multiline', [r, n], [])), c.binomialForm_(o), c.classifyMultiline(o), o
            }
            return (o = c.getInstance().fractionNode_(t, e)), n && o.addAnnotation('general', 'bevelled'), o
          }
          tensor(t, e, r, n, o) {
            const i = c.getInstance().factory_.makeBranchNode('tensor', [t, c.getInstance().scriptNode_(e, 'leftsub'), c.getInstance().scriptNode_(r, 'leftsuper'), c.getInstance().scriptNode_(n, 'rightsub'), c.getInstance().scriptNode_(o, 'rightsuper')], [])
            return (i.role = t.role), (i.embellished = a.isEmbellished(t)), i
          }
          pseudoTensor(t, e, r) {
            const n = (t) => !a.isType(t, 'empty'),
              o = e.filter(n).length,
              i = r.filter(n).length
            if (!o && !i) return t
            const s = o ? (i ? 'MSUBSUP' : 'MSUB') : 'MSUP',
              l = [t]
            return o && l.push(c.getInstance().scriptNode_(e, 'rightsub', !0)), i && l.push(c.getInstance().scriptNode_(r, 'rightsuper', !0)), c.getInstance().limitNode(s, l)
          }
          font(t) {
            const e = c.MATHJAX_FONTS[t]
            return e || t
          }
          proof(t, e, r) {
            if ((e.inference || e.axiom || console.log('Noise'), e.axiom)) {
              const e = c.getInstance().cleanInference(t.childNodes),
                n = e.length ? c.getInstance().factory_.makeBranchNode('inference', r(e), []) : c.getInstance().factory_.makeEmptyNode()
              return (n.role = 'axiom'), (n.mathmlTree = t), n
            }
            const n = c.getInstance().inference(t, e, r)
            return e.proof && ((n.role = 'proof'), (n.childNodes[0].role = 'final')), n
          }
          inference(t, e, r) {
            if (e.inferenceRule) {
              const e = c.getInstance().getFormulas(t, [], r)
              return c.getInstance().factory_.makeBranchNode('inference', [e.conclusion, e.premises], [])
            }
            const o = e.labelledRule,
              i = n.toArray(t.childNodes),
              s = []
            ;('left' !== o && 'both' !== o) || s.push(c.getInstance().getLabel(t, i, r, 'left')), ('right' !== o && 'both' !== o) || s.push(c.getInstance().getLabel(t, i, r, 'right'))
            const a = c.getInstance().getFormulas(t, i, r),
              l = c.getInstance().factory_.makeBranchNode('inference', [a.conclusion, a.premises], s)
            return (l.mathmlTree = t), l
          }
          getLabel(t, e, r, o) {
            const i = c.getInstance().findNestedRow(e, 'prooflabel', o),
              s = c.getInstance().factory_.makeBranchNode('rulelabel', r(n.toArray(i.childNodes)), [])
            return (s.role = o), (s.mathmlTree = i), s
          }
          getFormulas(t, e, r) {
            const o = e.length ? c.getInstance().findNestedRow(e, 'inferenceRule') : t,
              i = 'up' === c.getSemantics(o).inferenceRule,
              s = i ? o.childNodes[1] : o.childNodes[0],
              a = i ? o.childNodes[0] : o.childNodes[1],
              l = s.childNodes[0].childNodes[0],
              u = n.toArray(l.childNodes[0].childNodes),
              p = []
            let h = 1
            for (const t of u) h % 2 && p.push(t.childNodes[0]), h++
            const f = r(p),
              d = r(n.toArray(a.childNodes[0].childNodes))[0],
              m = c.getInstance().factory_.makeBranchNode('premises', f, [])
            m.mathmlTree = l
            const y = c.getInstance().factory_.makeBranchNode('conclusion', [d], [])
            return (y.mathmlTree = a.childNodes[0].childNodes[0]), { conclusion: y, premises: m }
          }
          findNestedRow(t, e, r) {
            return c.getInstance().findNestedRow_(t, e, 0, r)
          }
          cleanInference(t) {
            return n.toArray(t).filter(function (t) {
              return 'MSPACE' !== n.tagName(t)
            })
          }
          operatorNode(t) {
            return 'unknown' === t.type && (t.type = 'operator'), i.run('multioperator', t)
          }
          implicitNode_(t) {
            const e = c.getInstance().factory_.makeMultipleContentNodes(t.length - 1, o.invisibleTimes())
            c.matchSpaces_(t, e)
            const r = c.getInstance().infixNode_(t, e[0])
            return (
              (r.role = 'implicit'),
              e.forEach(function (t) {
                t.parent = r
              }),
              (r.contentNodes = e),
              r
            )
          }
          infixNode_(t, e) {
            const r = c.getInstance().factory_.makeBranchNode('infixop', t, [e], l.getEmbellishedInner(e).textContent)
            return (r.role = e.role), i.run('propagateSimpleFunction', r)
          }
          explicitMixed_(t) {
            const e = l.partitionNodes(t, function (t) {
              return t.textContent === o.invisiblePlus()
            })
            if (!e.rel.length) return t
            let r = []
            for (let t, n = 0; (t = e.rel[n]); n++) {
              const o = e.comp[n],
                i = e.comp[n + 1],
                s = o.length - 1
              if (o[s] && i[0] && a.isType(o[s], 'number') && !a.isRole(o[s], 'mixed') && a.isType(i[0], 'fraction')) {
                const t = c.getInstance().factory_.makeBranchNode('number', [o[s], i[0]], [])
                ;(t.role = 'mixed'), (r = r.concat(o.slice(0, s))), r.push(t), i.shift()
              } else (r = r.concat(o)), r.push(t)
            }
            return r.concat(e.comp[e.comp.length - 1])
          }
          concatNode_(t, e, r) {
            if (0 === e.length) return t
            const n = e
                .map(function (t) {
                  return l.getEmbellishedInner(t).textContent
                })
                .join(' '),
              o = c.getInstance().factory_.makeBranchNode(r, [t], e, n)
            return e.length > 1 && (o.role = 'multiop'), o
          }
          prefixNode_(t, e) {
            const r = l.partitionNodes(e, (t) => a.isRole(t, 'subtraction'))
            let n = c.getInstance().concatNode_(t, r.comp.pop(), 'prefixop')
            for (1 === n.contentNodes.length && 'addition' === n.contentNodes[0].role && '+' === n.contentNodes[0].textContent && (n.role = 'positive'); r.rel.length > 0; )
              (n = c.getInstance().concatNode_(n, [r.rel.pop()], 'prefixop')), (n.role = 'negative'), (n = c.getInstance().concatNode_(n, r.comp.pop(), 'prefixop'))
            return n
          }
          postfixNode_(t, e) {
            return e.length ? c.getInstance().concatNode_(t, e, 'postfixop') : t
          }
          combineUnits_(t) {
            const e = l.partitionNodes(t, function (t) {
              return !a.isRole(t, 'unit')
            })
            if (t.length === e.rel.length) return e.rel
            const r = []
            let n, o
            do {
              const t = e.comp.shift()
              n = e.rel.shift()
              let i = null
              ;(o = r.pop()), o && (t.length && a.isUnitCounter(o) ? t.unshift(o) : r.push(o)), 1 === t.length && (i = t.pop()), t.length > 1 && ((i = c.getInstance().implicitNode_(t)), (i.role = 'unit')), i && r.push(i), n && r.push(n)
            } while (n)
            return r
          }
          getMixedNumbers_(t) {
            const e = l.partitionNodes(t, function (t) {
              return a.isType(t, 'fraction') && a.isRole(t, 'vulgar')
            })
            if (!e.rel.length) return t
            let r = []
            for (let t, n = 0; (t = e.rel[n]); n++) {
              const o = e.comp[n],
                i = o.length - 1
              if (o[i] && a.isType(o[i], 'number') && (a.isRole(o[i], 'integer') || a.isRole(o[i], 'float'))) {
                const e = c.getInstance().factory_.makeBranchNode('number', [o[i], t], [])
                ;(e.role = 'mixed'), (r = r.concat(o.slice(0, i))), r.push(e)
              } else (r = r.concat(o)), r.push(t)
            }
            return r.concat(e.comp[e.comp.length - 1])
          }
          getTextInRow_(t) {
            if (t.length <= 1) return t
            const e = l.partitionNodes(t, (t) => a.isType(t, 'text'))
            if (0 === e.rel.length) return t
            const r = []
            let n = e.comp[0]
            n.length > 0 && r.push(c.getInstance().row(n))
            for (let t, o = 0; (t = e.rel[o]); o++) r.push(t), (n = e.comp[o + 1]), n.length > 0 && r.push(c.getInstance().row(n))
            return [c.getInstance().dummyNode_(r)]
          }
          relationsInRow_(t) {
            const e = l.partitionNodes(t, a.isRelation),
              r = e.rel[0]
            if (!r) return c.getInstance().operationsInRow_(t)
            if (1 === t.length) return t[0]
            const n = e.comp.map(c.getInstance().operationsInRow_)
            let o
            return e.rel.some(function (t) {
              return !t.equals(r)
            })
              ? ((o = c.getInstance().factory_.makeBranchNode('multirel', n, e.rel)),
                e.rel.every(function (t) {
                  return t.role === r.role
                }) && (o.role = r.role),
                o)
              : ((o = c.getInstance().factory_.makeBranchNode('relseq', n, e.rel, l.getEmbellishedInner(r).textContent)), (o.role = r.role), o)
          }
          operationsInRow_(t) {
            if (0 === t.length) return c.getInstance().factory_.makeEmptyNode()
            if (1 === (t = c.getInstance().explicitMixed_(t)).length) return t[0]
            const e = []
            for (; t.length > 0 && a.isOperator(t[0]); ) e.push(t.shift())
            if (0 === t.length) return c.getInstance().prefixNode_(e.pop(), e)
            if (1 === t.length) return c.getInstance().prefixNode_(t[0], e)
            t = i.run('convert_juxtaposition', t)
            const r = l.sliceNodes(t, a.isOperator),
              n = c.getInstance().prefixNode_(c.getInstance().implicitNode(r.head), e)
            return r.div ? c.getInstance().operationsTree_(r.tail, n, r.div) : n
          }
          operationsTree_(t, e, r, n) {
            const o = n || []
            if (0 === t.length) {
              if ((o.unshift(r), 'infixop' === e.type)) {
                const t = c.getInstance().postfixNode_(e.childNodes.pop(), o)
                return e.appendChild(t), e
              }
              return c.getInstance().postfixNode_(e, o)
            }
            const i = l.sliceNodes(t, a.isOperator)
            if (0 === i.head.length) return o.push(i.div), c.getInstance().operationsTree_(i.tail, e, r, o)
            const s = c.getInstance().prefixNode_(c.getInstance().implicitNode(i.head), o),
              u = c.getInstance().appendOperand_(e, r, s)
            return i.div ? c.getInstance().operationsTree_(i.tail, u, i.div, []) : u
          }
          appendOperand_(t, e, r) {
            if ('infixop' !== t.type) return c.getInstance().infixNode_([t, r], e)
            const n = c.getInstance().appendDivisionOp_(t, e, r)
            return n || (c.getInstance().appendExistingOperator_(t, e, r) ? t : 'multiplication' === e.role ? c.getInstance().appendMultiplicativeOp_(t, e, r) : c.getInstance().appendAdditiveOp_(t, e, r))
          }
          appendDivisionOp_(t, e, r) {
            return 'division' === e.role ? (a.isImplicit(t) ? c.getInstance().infixNode_([t, r], e) : c.getInstance().appendLastOperand_(t, e, r)) : 'division' === t.role ? c.getInstance().infixNode_([t, r], e) : null
          }
          appendLastOperand_(t, e, r) {
            let n = t,
              o = t.childNodes[t.childNodes.length - 1]
            for (; o && 'infixop' === o.type && !a.isImplicit(o); ) (n = o), (o = n.childNodes[t.childNodes.length - 1])
            const i = c.getInstance().infixNode_([n.childNodes.pop(), r], e)
            return n.appendChild(i), t
          }
          appendMultiplicativeOp_(t, e, r) {
            if (a.isImplicit(t)) return c.getInstance().infixNode_([t, r], e)
            let n = t,
              o = t.childNodes[t.childNodes.length - 1]
            for (; o && 'infixop' === o.type && !a.isImplicit(o); ) (n = o), (o = n.childNodes[t.childNodes.length - 1])
            const i = c.getInstance().infixNode_([n.childNodes.pop(), r], e)
            return n.appendChild(i), t
          }
          appendAdditiveOp_(t, e, r) {
            return c.getInstance().infixNode_([t, r], e)
          }
          appendExistingOperator_(t, e, r) {
            return !(!t || 'infixop' !== t.type || a.isImplicit(t)) && (t.contentNodes[0].equals(e) ? (t.appendContentNode(e), t.appendChild(r), !0) : c.getInstance().appendExistingOperator_(t.childNodes[t.childNodes.length - 1], e, r))
          }
          getFencesInRow_(t) {
            let e = l.partitionNodes(t, a.isFence)
            e = c.purgeFences_(e)
            const r = e.comp.shift()
            return c.getInstance().fences_(e.rel, e.comp, [], [r])
          }
          fences_(t, e, r, n) {
            if (0 === t.length && 0 === r.length) return n[0]
            const o = (t) => a.isRole(t, 'open')
            if (0 === t.length) {
              const t = n.shift()
              for (; r.length > 0; ) {
                if (o(r[0])) {
                  const e = r.shift()
                  c.fenceToPunct_(e), t.push(e)
                } else {
                  const e = l.sliceNodes(r, o),
                    i = e.head.length - 1,
                    s = c.getInstance().neutralFences_(e.head, n.slice(0, i))
                  ;(n = n.slice(i)), t.push(...s), e.div && e.tail.unshift(e.div), (r = e.tail)
                }
                t.push(...n.shift())
              }
              return t
            }
            const i = r[r.length - 1],
              s = t[0].role
            if ('open' === s || (a.isNeutralFence(t[0]) && (!i || !a.compareNeutralFences(t[0], i)))) {
              r.push(t.shift())
              const o = e.shift()
              return o && n.push(o), c.getInstance().fences_(t, e, r, n)
            }
            if (i && 'close' === s && 'open' === i.role) {
              const o = c.getInstance().horizontalFencedNode_(r.pop(), t.shift(), n.pop())
              return n.push(n.pop().concat([o], e.shift())), c.getInstance().fences_(t, e, r, n)
            }
            if (i && a.compareNeutralFences(t[0], i)) {
              if (!a.elligibleLeftNeutral(i) || !a.elligibleRightNeutral(t[0])) {
                r.push(t.shift())
                const o = e.shift()
                return o && n.push(o), c.getInstance().fences_(t, e, r, n)
              }
              const o = c.getInstance().horizontalFencedNode_(r.pop(), t.shift(), n.pop())
              return n.push(n.pop().concat([o], e.shift())), c.getInstance().fences_(t, e, r, n)
            }
            if (i && 'close' === s && a.isNeutralFence(i) && r.some(o)) {
              const i = l.sliceNodes(r, o, !0),
                s = n.pop(),
                a = n.length - i.tail.length + 1,
                u = c.getInstance().neutralFences_(i.tail, n.slice(a))
              n = n.slice(0, a)
              const p = c.getInstance().horizontalFencedNode_(i.div, t.shift(), n.pop().concat(u, s))
              return n.push(n.pop().concat([p], e.shift())), c.getInstance().fences_(t, e, i.head, n)
            }
            const u = t.shift()
            return c.fenceToPunct_(u), n.push(n.pop().concat([u], e.shift())), c.getInstance().fences_(t, e, r, n)
          }
          neutralFences_(t, e) {
            if (0 === t.length) return t
            if (1 === t.length) return c.fenceToPunct_(t[0]), t
            const r = t.shift()
            if (!a.elligibleLeftNeutral(r)) {
              c.fenceToPunct_(r)
              const n = e.shift()
              return n.unshift(r), n.concat(c.getInstance().neutralFences_(t, e))
            }
            const n = l.sliceNodes(t, function (t) {
              return a.compareNeutralFences(t, r)
            })
            if (!n.div) {
              c.fenceToPunct_(r)
              const n = e.shift()
              return n.unshift(r), n.concat(c.getInstance().neutralFences_(t, e))
            }
            if (!a.elligibleRightNeutral(n.div)) return c.fenceToPunct_(n.div), t.unshift(r), c.getInstance().neutralFences_(t, e)
            const o = c.getInstance().combineFencedContent_(r, n.div, n.head, e)
            if (n.tail.length > 0) {
              const t = o.shift(),
                e = c.getInstance().neutralFences_(n.tail, o)
              return t.concat(e)
            }
            return o[0]
          }
          combineFencedContent_(t, e, r, n) {
            if (0 === r.length) {
              const r = c.getInstance().horizontalFencedNode_(t, e, n.shift())
              return n.length > 0 ? n[0].unshift(r) : (n = [[r]]), n
            }
            const o = n.shift(),
              i = r.length - 1,
              s = n.slice(0, i),
              a = (n = n.slice(i)).shift(),
              l = c.getInstance().neutralFences_(r, s)
            o.push(...l), o.push(...a)
            const u = c.getInstance().horizontalFencedNode_(t, e, o)
            return n.length > 0 ? n[0].unshift(u) : (n = [[u]]), n
          }
          horizontalFencedNode_(t, e, r) {
            const n = c.getInstance().row(r)
            let o = c.getInstance().factory_.makeBranchNode('fenced', [n], [t, e])
            return 'open' === t.role ? (c.getInstance().classifyHorizontalFence_(o), (o = i.run('propagateComposedFunction', o))) : (o.role = t.role), (o = i.run('detect_cycle', o)), c.rewriteFencedNode_(o)
          }
          classifyHorizontalFence_(t) {
            t.role = 'leftright'
            const e = t.childNodes
            if (!a.isSetNode(t) || e.length > 1) return
            if (0 === e.length || 'empty' === e[0].type) return void (t.role = 'set empty')
            const r = e[0].type
            if (1 === e.length && a.isSingletonSetContent(e[0])) return void (t.role = 'set singleton')
            const n = e[0].role
            if ('punctuated' === r && 'sequence' === n) {
              if ('comma' !== e[0].contentNodes[0].role) return 1 !== e[0].contentNodes.length || ('vbar' !== e[0].contentNodes[0].role && 'colon' !== e[0].contentNodes[0].role) ? void 0 : ((t.role = 'set extended'), void c.getInstance().setExtension_(t))
              t.role = 'set collection'
            }
          }
          setExtension_(t) {
            const e = t.childNodes[0].childNodes[0]
            e && 'infixop' === e.type && 1 === e.contentNodes.length && a.isMembership(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
              },
              r = l.partitionNodes(t, function (r) {
                if (!a.isPunctuation(r)) return !1
                if (a.isPunctuation(r) && !a.isRole(r, 'ellipsis')) return !0
                const n = t.indexOf(r)
                if (0 === n) return !t[1] || !e(t[1])
                const o = t[n - 1]
                if (n === t.length - 1) return !e(o)
                const i = t[n + 1]
                return !e(o) || !e(i)
              })
            if (0 === r.rel.length) return t
            const n = []
            let o = r.comp.shift()
            o.length > 0 && n.push(c.getInstance().row(o))
            let i = 0
            for (; r.comp.length > 0; ) n.push(r.rel[i++]), (o = r.comp.shift()), o.length > 0 && n.push(c.getInstance().row(o))
            return [c.getInstance().punctuatedNode_(n, r.rel)]
          }
          punctuatedNode_(t, e) {
            const r = c.getInstance().factory_.makeBranchNode('punctuated', t, e)
            if (e.length === t.length) {
              const t = e[0].role
              if (
                'unknown' !== t &&
                e.every(function (e) {
                  return e.role === t
                })
              )
                return (r.role = t), r
            }
            return (
              a.singlePunctAtPosition(t, e, 0)
                ? (r.role = 'startpunct')
                : a.singlePunctAtPosition(t, e, t.length - 1)
                ? (r.role = 'endpunct')
                : e.every((t) => a.isRole(t, 'dummy'))
                ? (r.role = 'text')
                : e.every((t) => a.isRole(t, 'space'))
                ? (r.role = 'space')
                : (r.role = 'sequence'),
              r
            )
          }
          dummyNode_(t) {
            const e = c.getInstance().factory_.makeMultipleContentNodes(t.length - 1, o.invisibleComma())
            return (
              e.forEach(function (t) {
                t.role = 'dummy'
              }),
              c.getInstance().punctuatedNode_(t, e)
            )
          }
          accentRole_(t, e) {
            if (!a.isAccent(t)) return !1
            const r = t.textContent,
              n = o.lookupSecondary('bar', r) || o.lookupSecondary('tilde', r) || t.role
            return (t.role = 'underscore' === e ? 'underaccent' : 'overaccent'), t.addAnnotation('accent', n), !0
          }
          accentNode_(t, e, r, n, o) {
            const i = (e = e.slice(0, n + 1))[1],
              s = e[2]
            let a
            if ((!o && s && ((a = c.getInstance().factory_.makeBranchNode('subscript', [t, i], [])), (a.role = 'subsup'), (e = [a, s]), (r = 'superscript')), o)) {
              const n = c.getInstance().accentRole_(i, r)
              if (s) {
                c.getInstance().accentRole_(s, 'overscore') && !n
                  ? ((a = c.getInstance().factory_.makeBranchNode('overscore', [t, s], [])), (e = [a, i]), (r = 'underscore'))
                  : ((a = c.getInstance().factory_.makeBranchNode('underscore', [t, i], [])), (e = [a, s]), (r = 'overscore')),
                  (a.role = 'underover')
              }
            }
            return c.getInstance().makeLimitNode_(t, e, a, r)
          }
          makeLimitNode_(t, e, r, n) {
            if ('limupper' === n && 'limlower' === t.type) return t.childNodes.push(e[1]), (e[1].parent = t), (t.type = 'limboth'), t
            if ('limlower' === n && 'limupper' === t.type) return t.childNodes.splice(1, -1, e[1]), (e[1].parent = t), (t.type = 'limboth'), t
            const o = c.getInstance().factory_.makeBranchNode(n, e, []),
              i = a.isEmbellished(t)
            return r && (r.embellished = i), (o.embellished = i), (o.role = t.role), o
          }
          getFunctionsInRow_(t, e) {
            const r = e || []
            if (0 === t.length) return r
            const n = t.shift(),
              o = c.classifyFunction_(n, t)
            if (!o) return r.push(n), c.getInstance().getFunctionsInRow_(t, r)
            const i = c.getInstance().getFunctionsInRow_(t, []),
              s = c.getInstance().getFunctionArgs_(n, i, o)
            return r.concat(s)
          }
          getFunctionArgs_(t, e, r) {
            let n, o, i
            switch (r) {
              case 'integral': {
                const r = c.getInstance().getIntegralArgs_(e)
                if (!r.intvar && !r.integrand.length) return r.rest.unshift(t), r.rest
                const n = c.getInstance().row(r.integrand)
                return (i = c.getInstance().integralNode_(t, n, r.intvar)), r.rest.unshift(i), r.rest
              }
              case 'prefix':
                if (e[0] && 'fenced' === e[0].type) {
                  const r = e.shift()
                  return a.isNeutralFence(r) || (r.role = 'leftright'), (i = c.getInstance().functionNode_(t, r)), e.unshift(i), e
                }
                if (((n = l.sliceNodes(e, a.isPrefixFunctionBoundary)), n.head.length)) (o = c.getInstance().row(n.head)), n.div && n.tail.unshift(n.div)
                else {
                  if (!n.div || !a.isType(n.div, 'appl')) return e.unshift(t), e
                  o = n.div
                }
                return (i = c.getInstance().functionNode_(t, o)), n.tail.unshift(i), n.tail
              case 'bigop':
                return (n = l.sliceNodes(e, a.isBigOpBoundary)), n.head.length ? ((o = c.getInstance().row(n.head)), (i = c.getInstance().bigOpNode_(t, o)), n.div && n.tail.unshift(n.div), n.tail.unshift(i), n.tail) : (e.unshift(t), e)
              default: {
                if (0 === e.length) return [t]
                const r = e[0]
                return 'fenced' === r.type && !a.isNeutralFence(r) && a.isSimpleFunctionScope(r) ? ((r.role = 'leftright'), c.propagateFunctionRole_(t, 'simple function'), (i = c.getInstance().functionNode_(t, e.shift())), e.unshift(i), e) : (e.unshift(t), e)
              }
            }
          }
          getIntegralArgs_(t, e = []) {
            if (0 === t.length) return { integrand: e, intvar: null, rest: t }
            const r = t[0]
            if (a.isGeneralFunctionBoundary(r)) return { integrand: e, intvar: null, rest: t }
            if (a.isIntegralDxBoundarySingle(r)) return (r.role = 'integral'), { integrand: e, intvar: r, rest: t.slice(1) }
            if (t[1] && a.isIntegralDxBoundary(r, t[1])) {
              const n = c.getInstance().prefixNode_(t[1], [r])
              return (n.role = 'integral'), { integrand: e, intvar: n, rest: t.slice(2) }
            }
            return e.push(t.shift()), c.getInstance().getIntegralArgs_(t, e)
          }
          functionNode_(t, e) {
            const r = c.getInstance().factory_.makeContentNode(o.functionApplication()),
              n = c.getInstance().funcAppls[t.id]
            n && ((r.mathmlTree = n.mathmlTree), (r.mathml = n.mathml), (r.annotation = n.annotation), (r.attributes = n.attributes), delete c.getInstance().funcAppls[t.id]), (r.type = 'punctuation'), (r.role = 'application')
            const i = c.getFunctionOp_(t, function (t) {
              return a.isType(t, 'function') || (a.isType(t, 'identifier') && a.isRole(t, 'simple function'))
            })
            return c.getInstance().functionalNode_('appl', [t, e], i, [r])
          }
          bigOpNode_(t, e) {
            const r = c.getFunctionOp_(t, (t) => a.isType(t, 'largeop'))
            return c.getInstance().functionalNode_('bigop', [t, e], r, [])
          }
          integralNode_(t, e, r) {
            ;(e = e || c.getInstance().factory_.makeEmptyNode()), (r = r || c.getInstance().factory_.makeEmptyNode())
            const n = c.getFunctionOp_(t, (t) => a.isType(t, 'largeop'))
            return c.getInstance().functionalNode_('integral', [t, e, r], n, [])
          }
          functionalNode_(t, e, r, n) {
            const o = e[0]
            let i
            r && ((i = r.parent), n.push(r))
            const s = c.getInstance().factory_.makeBranchNode(t, e, n)
            return (s.role = o.role), i && (r.parent = i), s
          }
          fractionNode_(t, e) {
            const r = c.getInstance().factory_.makeBranchNode('fraction', [t, e], [])
            return (
              (r.role = r.childNodes.every(function (t) {
                return a.isType(t, 'number') && a.isRole(t, 'integer')
              })
                ? 'vulgar'
                : r.childNodes.every(a.isPureUnit)
                ? 'unit'
                : 'division'),
              i.run('propagateSimpleFunction', r)
            )
          }
          scriptNode_(t, e, r) {
            let n
            switch (t.length) {
              case 0:
                n = c.getInstance().factory_.makeEmptyNode()
                break
              case 1:
                if (((n = t[0]), r)) return n
                break
              default:
                n = c.getInstance().dummyNode_(t)
            }
            return (n.role = e), n
          }
          findNestedRow_(t, e, r, o) {
            if (r > 3) return null
            for (let i, s = 0; (i = t[s]); s++) {
              const t = n.tagName(i)
              if ('MSPACE' !== t) {
                if ('MROW' === t) return c.getInstance().findNestedRow_(n.toArray(i.childNodes), e, r + 1, o)
                if (c.findSemantics(i, e, o)) return i
              }
            }
            return null
          }
        }
        ;(e.default = c),
          (c.FENCE_TO_PUNCT_ = { metric: 'metric', neutral: 'vbar', open: 'openfence', close: 'closefence' }),
          (c.MML_TO_LIMIT_ = {
            MSUB: { type: 'limlower', length: 1 },
            MUNDER: { type: 'limlower', length: 1 },
            MSUP: { type: 'limupper', length: 1 },
            MOVER: { type: 'limupper', length: 1 },
            MSUBSUP: { type: 'limboth', length: 2 },
            MUNDEROVER: { type: 'limboth', length: 2 }
          }),
          (c.MML_TO_BOUNDS_ = {
            MSUB: { type: 'subscript', length: 1, accent: !1 },
            MSUP: { type: 'superscript', length: 1, accent: !1 },
            MSUBSUP: { type: 'subscript', length: 2, accent: !1 },
            MUNDER: { type: 'underscore', length: 1, accent: !0 },
            MOVER: { type: 'overscore', length: 1, accent: !0 },
            MUNDEROVER: { type: 'underscore', length: 2, accent: !0 }
          }),
          (c.CLASSIFY_FUNCTION_ = { integral: 'integral', sum: 'bigop', 'prefix function': 'prefix', 'limit function': 'prefix', 'simple function': 'prefix', 'composed function': 'prefix' }),
          (c.MATHJAX_FONTS = {
            '-tex-caligraphic': 'caligraphic',
            '-tex-caligraphic-bold': 'caligraphic-bold',
            '-tex-calligraphic': 'caligraphic',
            '-tex-calligraphic-bold': 'caligraphic-bold',
            '-tex-oldstyle': 'oldstyle',
            '-tex-oldstyle-bold': 'oldstyle-bold',
            '-tex-mathit': 'italic'
          })
      },
      5656: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticSkeleton = void 0)
        const n = r(707),
          o = r(5274),
          i = r(2298)
        class s {
          constructor(t) {
            ;(this.parents = null), (this.levelsMap = null), (t = 0 === t ? t : t || []), (this.array = t)
          }
          static fromTree(t) {
            return s.fromNode(t.root)
          }
          static fromNode(t) {
            return new s(s.fromNode_(t))
          }
          static fromString(t) {
            return new s(s.fromString_(t))
          }
          static simpleCollapseStructure(t) {
            return 'number' == typeof t
          }
          static contentCollapseStructure(t) {
            return !!t && !s.simpleCollapseStructure(t) && 'c' === t[0]
          }
          static interleaveIds(t, e) {
            return n.interleaveLists(s.collapsedLeafs(t), s.collapsedLeafs(e))
          }
          static collapsedLeafs(...t) {
            return t.reduce((t, e) => {
              return t.concat(((r = e), s.simpleCollapseStructure(r) ? [r] : ((r = r), s.contentCollapseStructure(r[1]) ? r.slice(2) : r.slice(1))))
              var r
            }, [])
          }
          static fromStructure(t, e) {
            return new s(s.tree_(t, e.root))
          }
          static combineContentChildren(t, e, r) {
            switch (t.type) {
              case 'relseq':
              case 'infixop':
              case 'multirel':
                return n.interleaveLists(r, e)
              case 'prefixop':
                return e.concat(r)
              case 'postfixop':
                return r.concat(e)
              case 'fenced':
                return r.unshift(e[0]), r.push(e[1]), r
              case 'appl':
                return [r[0], e[0], r[1]]
              case 'root':
                return [r[1], r[0]]
              case 'row':
              case 'line':
                return e.length && r.unshift(e[0]), r
              default:
                return r
            }
          }
          static makeSexp_(t) {
            return s.simpleCollapseStructure(t) ? t.toString() : s.contentCollapseStructure(t) ? '(c ' + t.slice(1).map(s.makeSexp_).join(' ') + ')' : '(' + t.map(s.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 r
            e.length && ((r = e.map(s.fromNode_)), r.unshift('c'))
            const n = t.childNodes
            if (!n.length) return e.length ? [t.id, r] : t.id
            const o = n.map(s.fromNode_)
            return e.length && o.unshift(r), o.unshift(t.id), o
          }
          static tree_(t, e) {
            if (!e) return []
            if (!e.childNodes.length) return e.id
            const r = e.id,
              n = [r],
              a = o.evalXPath(`.//self::*[@${i.Attribute.ID}=${r}]`, t)[0],
              l = s.combineContentChildren(
                e,
                e.contentNodes.map(function (t) {
                  return t
                }),
                e.childNodes.map(function (t) {
                  return t
                })
              )
            a && s.addOwns_(a, l)
            for (let e, r = 0; (e = l[r]); r++) n.push(s.tree_(t, e))
            return n
          }
          static addOwns_(t, e) {
            const r = t.getAttribute(i.Attribute.COLLAPSED),
              n = r ? s.realLeafs_(s.fromString(r).array) : e.map((t) => t.id)
            t.setAttribute(i.Attribute.OWNS, n.join(' '))
          }
          static realLeafs_(t) {
            if (s.simpleCollapseStructure(t)) return [t]
            if (s.contentCollapseStructure(t)) return []
            t = t
            let e = []
            for (let r = 1; r < t.length; r++) e = e.concat(s.realLeafs_(t[r]))
            return e
          }
          populate() {
            ;(this.parents && this.levelsMap) || ((this.parents = {}), (this.levelsMap = {}), this.populate_(this.array, this.array, []))
          }
          toString() {
            return s.makeSexp_(this.array)
          }
          populate_(t, e, r) {
            if (s.simpleCollapseStructure(t)) return (t = t), (this.levelsMap[t] = e), void (this.parents[t] = t === r[0] ? r.slice(1) : r)
            const n = s.contentCollapseStructure(t) ? t.slice(1) : t,
              o = [n[0]].concat(r)
            for (let e = 0, r = n.length; e < r; e++) {
              const r = n[e]
              this.populate_(r, t, o)
            }
          }
          isRoot(t) {
            return t === this.levelsMap[t][0]
          }
          directChildren(t) {
            if (!this.isRoot(t)) return []
            return this.levelsMap[t].slice(1).map((t) => (s.simpleCollapseStructure(t) ? t : s.contentCollapseStructure(t) ? t[1] : t[0]))
          }
          subtreeNodes(t) {
            if (!this.isRoot(t)) return []
            const e = (t, r) => {
                s.simpleCollapseStructure(t) ? r.push(t) : ((t = t), s.contentCollapseStructure(t) && (t = t.slice(1)), t.forEach((t) => e(t, r)))
              },
              r = this.levelsMap[t],
              n = []
            return e(r.slice(1), n), n
          }
        }
        e.SemanticSkeleton = s
      },
      7075: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticTree = void 0)
        const n = r(5740),
          o = r(7630),
          i = r(9265),
          s = r(7228),
          a = r(5952),
          l = r(5609)
        r(94)
        class c {
          constructor(t) {
            ;(this.mathml = t), (this.parser = new s.SemanticMathml()), (this.root = this.parser.parse(t)), (this.collator = this.parser.getFactory().leafMap.collateMeaning())
            const e = this.collator.newDefault()
            e && ((this.parser = new s.SemanticMathml()), (this.parser.getFactory().defaultMap = e), (this.root = this.parser.parse(t))), u.visit(this.root, {}), (0, o.annotate)(this.root)
          }
          static empty() {
            const t = n.parseInput('<math/>'),
              e = new c(t)
            return (e.mathml = t), e
          }
          static fromNode(t, e) {
            const r = c.empty()
            return (r.root = t), e && (r.mathml = e), r
          }
          static fromRoot(t, e) {
            let r = t
            for (; r.parent; ) r = r.parent
            const n = c.fromNode(r)
            return e && (n.mathml = e), n
          }
          static fromXml(t) {
            const e = c.empty()
            return t.childNodes[0] && (e.root = a.SemanticNode.fromXml(t.childNodes[0])), e
          }
          xml(t) {
            const e = n.parseInput('<stree></stree>'),
              r = this.root.xml(e.ownerDocument, t)
            return e.appendChild(r), e
          }
          toString(t) {
            return n.serializeXml(this.xml(t))
          }
          formatXml(t) {
            const e = this.toString(t)
            return n.formatXml(e)
          }
          displayTree() {
            this.root.displayTree()
          }
          replaceNode(t, e) {
            const r = t.parent
            r ? r.replaceChild(t, e) : (this.root = e)
          }
          toJson() {
            const t = {}
            return (t.stree = this.root.toJson()), t
          }
        }
        e.SemanticTree = c
        const u = new i.SemanticVisitor('general', 'unit', (t, e) => {
          if ('infixop' === t.type && ('multiplication' === t.role || 'implicit' === t.role)) {
            const e = t.childNodes
            e.length && (l.isPureUnit(e[0]) || l.isUnitCounter(e[0])) && t.childNodes.slice(1).every(l.isPureUnit) && (t.role = 'unit')
          }
          return !1
        })
      },
      4795: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.partitionNodes =
            e.sliceNodes =
            e.getEmbellishedInner =
            e.addAttributes =
            e.isZeroLength =
            e.purgeNodes =
            e.isOrphanedGlyph =
            e.hasDisplayTag =
            e.hasEmptyTag =
            e.hasIgnoreTag =
            e.hasLeafTag =
            e.hasMathTag =
            e.directSpeechKeys =
            e.DISPLAYTAGS =
            e.EMPTYTAGS =
            e.IGNORETAGS =
            e.LEAFTAGS =
              void 0)
        const n = r(5740)
        function o(t) {
          return !!t && -1 !== e.LEAFTAGS.indexOf(n.tagName(t))
        }
        function i(t, e, r) {
          r && t.reverse()
          const n = []
          for (let o, i = 0; (o = t[i]); i++) {
            if (e(o)) return r ? { head: t.slice(i + 1).reverse(), div: o, tail: n.reverse() } : { head: n, div: o, tail: t.slice(i + 1) }
            n.push(o)
          }
          return r ? { head: [], div: null, tail: n.reverse() } : { head: n, div: null, tail: [] }
        }
        ;(e.LEAFTAGS = ['MO', 'MI', 'MN', 'MTEXT', 'MS', 'MSPACE']),
          (e.IGNORETAGS = ['MERROR', 'MPHANTOM', 'MALIGNGROUP', 'MALIGNMARK', 'MPRESCRIPTS', 'ANNOTATION', 'ANNOTATION-XML']),
          (e.EMPTYTAGS = ['MATH', 'MROW', 'MPADDED', 'MACTION', 'NONE', 'MSTYLE', 'SEMANTICS']),
          (e.DISPLAYTAGS = ['MROOT', 'MSQRT']),
          (e.directSpeechKeys = ['aria-label', 'exact-speech', 'alt']),
          (e.hasMathTag = function (t) {
            return !!t && 'MATH' === n.tagName(t)
          }),
          (e.hasLeafTag = o),
          (e.hasIgnoreTag = function (t) {
            return !!t && -1 !== e.IGNORETAGS.indexOf(n.tagName(t))
          }),
          (e.hasEmptyTag = function (t) {
            return !!t && -1 !== e.EMPTYTAGS.indexOf(n.tagName(t))
          }),
          (e.hasDisplayTag = function (t) {
            return !!t && -1 !== e.DISPLAYTAGS.indexOf(n.tagName(t))
          }),
          (e.isOrphanedGlyph = function (t) {
            return !!t && 'MGLYPH' === n.tagName(t) && !o(t.parentNode)
          }),
          (e.purgeNodes = function (t) {
            const r = []
            for (let o, i = 0; (o = t[i]); i++) {
              if (o.nodeType !== n.NodeType.ELEMENT_NODE) continue
              const t = n.tagName(o)
              ;-1 === e.IGNORETAGS.indexOf(t) && ((-1 !== e.EMPTYTAGS.indexOf(t) && 0 === o.childNodes.length) || r.push(o))
            }
            return r
          }),
          (e.isZeroLength = function (t) {
            if (!t) return !1
            if (-1 !== ['negativeveryverythinmathspace', 'negativeverythinmathspace', 'negativethinmathspace', 'negativemediummathspace', 'negativethickmathspace', 'negativeverythickmathspace', 'negativeveryverythickmathspace'].indexOf(t)) return !0
            const e = t.match(/[0-9.]+/)
            return !!e && 0 === parseFloat(e[0])
          }),
          (e.addAttributes = function (t, r) {
            if (r.hasAttributes()) {
              const n = r.attributes
              for (let r = n.length - 1; r >= 0; r--) {
                const o = n[r].name
                o.match(/^ext/) && ((t.attributes[o] = n[r].value), (t.nobreaking = !0)),
                  -1 !== e.directSpeechKeys.indexOf(o) && ((t.attributes['ext-speech'] = n[r].value), (t.nobreaking = !0)),
                  o.match(/texclass$/) && (t.attributes.texclass = n[r].value),
                  'href' === o && ((t.attributes.href = n[r].value), (t.nobreaking = !0))
              }
            }
          }),
          (e.getEmbellishedInner = function t(e) {
            return e && e.embellished && e.childNodes.length > 0 ? t(e.childNodes[0]) : e
          }),
          (e.sliceNodes = i),
          (e.partitionNodes = function (t, e) {
            let r = t
            const n = [],
              o = []
            let s = null
            do {
              ;(s = i(r, e)), o.push(s.head), n.push(s.div), (r = s.tail)
            } while (s.div)
            return n.pop(), { rel: n, comp: o }
          })
      },
      6278: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractSpeechGenerator = void 0)
        const n = r(6828),
          o = r(2298),
          i = r(1214),
          s = r(9543)
        e.AbstractSpeechGenerator = class {
          constructor() {
            ;(this.modality = o.addPrefix('speech')), (this.rebuilt_ = null), (this.options_ = {})
          }
          getRebuilt() {
            return this.rebuilt_
          }
          setRebuilt(t) {
            this.rebuilt_ = t
          }
          setOptions(t) {
            ;(this.options_ = t || {}), (this.modality = o.addPrefix(this.options_.modality || 'speech'))
          }
          getOptions() {
            return this.options_
          }
          start() {}
          end() {}
          generateSpeech(t, e) {
            return this.rebuilt_ || (this.rebuilt_ = new i.RebuildStree(e)), (0, n.setup)(this.options_), s.computeMarkup(this.getRebuilt().xml)
          }
        }
      },
      1452: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AdhocSpeechGenerator = void 0)
        const n = r(6278)
        class o extends n.AbstractSpeechGenerator {
          getSpeech(t, e) {
            const r = this.generateSpeech(t, e)
            return t.setAttribute(this.modality, r), r
          }
        }
        e.AdhocSpeechGenerator = o
      },
      5152: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ColorGenerator = void 0)
        const n = r(2298),
          o = r(8396),
          i = r(1214),
          s = r(1204),
          a = r(6278)
        class l extends a.AbstractSpeechGenerator {
          constructor() {
            super(...arguments), (this.modality = (0, n.addPrefix)('foreground')), (this.contrast = new o.ContrastPicker())
          }
          static visitStree_(t, e, r) {
            if (t.childNodes.length) {
              if ((t.contentNodes.length && ('punctuated' === t.type && t.contentNodes.forEach((t) => (r[t.id] = !0)), 'implicit' !== t.role && e.push(t.contentNodes.map((t) => t.id))), t.childNodes.length)) {
                if ('implicit' === t.role) {
                  const n = []
                  let o = []
                  for (const e of t.childNodes) {
                    const t = []
                    l.visitStree_(e, t, r), t.length <= 2 && n.push(t.shift()), (o = o.concat(t))
                  }
                  return e.push(n), void o.forEach((t) => e.push(t))
                }
                t.childNodes.forEach((t) => l.visitStree_(t, e, r))
              }
            } else r[t.id] || e.push(t.id)
          }
          getSpeech(t, e) {
            return s.getAttribute(t, this.modality)
          }
          generateSpeech(t, e) {
            return this.getRebuilt() || this.setRebuilt(new i.RebuildStree(t)), this.colorLeaves_(t), s.getAttribute(t, this.modality)
          }
          colorLeaves_(t) {
            const e = []
            l.visitStree_(this.getRebuilt().streeRoot, e, {})
            for (const r of e) {
              const e = this.contrast.generate()
              let n = !1
              ;(n = Array.isArray(r) ? r.map((r) => this.colorLeave_(t, r, e)).reduce((t, e) => t || e, !1) : this.colorLeave_(t, r.toString(), e)), n && this.contrast.increment()
            }
          }
          colorLeave_(t, e, r) {
            const n = s.getBySemanticId(t, e)
            return !!n && (n.setAttribute(this.modality, r), !0)
          }
        }
        e.ColorGenerator = l
      },
      6604: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.DirectSpeechGenerator = void 0)
        const n = r(1204),
          o = r(6278)
        class i extends o.AbstractSpeechGenerator {
          getSpeech(t, e) {
            return n.getAttribute(t, this.modality)
          }
        }
        e.DirectSpeechGenerator = i
      },
      3123: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.DummySpeechGenerator = void 0)
        const n = r(6278)
        class o extends n.AbstractSpeechGenerator {
          getSpeech(t, e) {
            return ''
          }
        }
        e.DummySpeechGenerator = o
      },
      5858: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.NodeSpeechGenerator = void 0)
        const n = r(1204),
          o = r(4598)
        class i extends o.TreeSpeechGenerator {
          getSpeech(t, e) {
            return super.getSpeech(t, e), n.getAttribute(t, this.modality)
          }
        }
        e.NodeSpeechGenerator = i
      },
      9552: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.generatorMapping_ = e.generator = void 0)
        const n = r(1452),
          o = r(5152),
          i = r(6604),
          s = r(3123),
          a = r(5858),
          l = r(597),
          c = r(4598)
        ;(e.generator = function (t) {
          return (e.generatorMapping_[t] || e.generatorMapping_.Direct)()
        }),
          (e.generatorMapping_ = {
            Adhoc: () => new n.AdhocSpeechGenerator(),
            Color: () => new o.ColorGenerator(),
            Direct: () => new i.DirectSpeechGenerator(),
            Dummy: () => new s.DummySpeechGenerator(),
            Node: () => new a.NodeSpeechGenerator(),
            Summary: () => new l.SummarySpeechGenerator(),
            Tree: () => new c.TreeSpeechGenerator()
          })
      },
      9543: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.computeSummary_ =
            e.retrieveSummary =
            e.connectAllMactions =
            e.connectMactions =
            e.nodeAtPosition_ =
            e.computePrefix_ =
            e.retrievePrefix =
            e.addPrefix =
            e.addModality =
            e.addSpeech =
            e.recomputeMarkup =
            e.computeMarkup =
            e.recomputeSpeech =
            e.computeSpeech =
              void 0)
        const n = r(8290),
          o = r(5740),
          i = r(5274),
          s = r(2298),
          a = r(2362),
          l = r(7075),
          c = r(1204)
        function u(t) {
          return a.SpeechRuleEngine.getInstance().evaluateNode(t)
        }
        function p(t) {
          return u(l.SemanticTree.fromNode(t).xml())
        }
        function h(t) {
          const e = p(t)
          return n.markup(e)
        }
        function f(t) {
          const e = d(t)
          return n.markup(e)
        }
        function d(t) {
          const e = l.SemanticTree.fromRoot(t),
            r = i.evalXPath('.//*[@id="' + t.id + '"]', e.xml())
          let n = r[0]
          return (
            r.length > 1 && (n = m(t, r) || n),
            n
              ? a.SpeechRuleEngine.getInstance().runInSetting({ modality: 'prefix', domain: 'default', style: 'default', strict: !0, speech: !0 }, function () {
                  return a.SpeechRuleEngine.getInstance().evaluateNode(n)
                })
              : []
          )
        }
        function m(t, e) {
          const r = e[0]
          if (!t.parent) return r
          const n = []
          for (; t; ) n.push(t.id), (t = t.parent)
          const o = function (t, e) {
            for (; e.length && e.shift().toString() === t.getAttribute('id') && t.parentNode && t.parentNode.parentNode; ) t = t.parentNode.parentNode
            return !e.length
          }
          for (let t, r = 0; (t = e[r]); r++) if (o(t, n.slice())) return t
          return r
        }
        function y(t) {
          return t
            ? a.SpeechRuleEngine.getInstance().runInSetting({ modality: 'summary', strict: !1, speech: !0 }, function () {
                return a.SpeechRuleEngine.getInstance().evaluateNode(t)
              })
            : []
        }
        ;(e.computeSpeech = u),
          (e.recomputeSpeech = p),
          (e.computeMarkup = function (t) {
            const e = u(t)
            return n.markup(e)
          }),
          (e.recomputeMarkup = h),
          (e.addSpeech = function (t, e, r) {
            const i = o.querySelectorAllByAttrValue(r, 'id', e.id.toString())[0],
              a = i ? n.markup(u(i)) : h(e)
            t.setAttribute(s.Attribute.SPEECH, a)
          }),
          (e.addModality = function (t, e, r) {
            const n = h(e)
            t.setAttribute(r, n)
          }),
          (e.addPrefix = function (t, e) {
            const r = f(e)
            r && t.setAttribute(s.Attribute.PREFIX, r)
          }),
          (e.retrievePrefix = f),
          (e.computePrefix_ = d),
          (e.nodeAtPosition_ = m),
          (e.connectMactions = function (t, e, r) {
            const n = o.querySelectorAll(e, 'maction')
            for (let e, i = 0; (e = n[i]); i++) {
              const n = e.getAttribute('id'),
                i = o.querySelectorAllByAttrValue(t, 'id', n)[0]
              if (!i) continue
              const a = e.childNodes[1],
                l = a.getAttribute(s.Attribute.ID)
              let u = c.getBySemanticId(t, l)
              if (u && 'dummy' !== u.getAttribute(s.Attribute.TYPE)) continue
              if (((u = i.childNodes[0]), u.getAttribute('sre-highlighter-added'))) continue
              const p = a.getAttribute(s.Attribute.PARENT)
              p && u.setAttribute(s.Attribute.PARENT, p), u.setAttribute(s.Attribute.TYPE, 'dummy'), u.setAttribute(s.Attribute.ID, l)
              o.querySelectorAllByAttrValue(r, 'id', l)[0].setAttribute('alternative', l)
            }
          }),
          (e.connectAllMactions = function (t, e) {
            const r = o.querySelectorAll(t, 'maction')
            for (let t, n = 0; (t = r[n]); n++) {
              const r = t.childNodes[1].getAttribute(s.Attribute.ID)
              o.querySelectorAllByAttrValue(e, 'id', r)[0].setAttribute('alternative', r)
            }
          }),
          (e.retrieveSummary = function (t) {
            const e = y(t)
            return n.markup(e)
          }),
          (e.computeSummary_ = y)
      },
      597: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SummarySpeechGenerator = void 0)
        const n = r(6278),
          o = r(9543)
        class i extends n.AbstractSpeechGenerator {
          getSpeech(t, e) {
            return o.connectAllMactions(e, this.getRebuilt().xml), this.generateSpeech(t, e)
          }
        }
        e.SummarySpeechGenerator = i
      },
      4598: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.TreeSpeechGenerator = void 0)
        const n = r(2298),
          o = r(1204),
          i = r(6278),
          s = r(9543)
        class a extends i.AbstractSpeechGenerator {
          getSpeech(t, e) {
            const r = this.generateSpeech(t, e),
              i = this.getRebuilt().nodeDict
            for (const r in i) {
              const a = i[r],
                l = o.getBySemanticId(e, r),
                c = o.getBySemanticId(t, r)
              l && c && (this.modality && this.modality !== n.Attribute.SPEECH ? s.addModality(c, a, this.modality) : s.addSpeech(c, a, this.getRebuilt().xml), this.modality === n.Attribute.SPEECH && s.addPrefix(c, a))
            }
            return r
          }
        }
        e.TreeSpeechGenerator = a
      },
      313: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.INTERVALS = e.makeLetter = e.numberRules = e.alphabetRules = e.getFont = e.makeInterval = e.generate = e.makeDomains_ = e.Domains_ = e.Base = e.Embellish = e.Font = void 0)
        const n = r(5897),
          o = r(7491),
          i = r(4356),
          s = r(2536),
          a = r(2780)
        var l, c, u
        function p() {
          const t = i.LOCALE.ALPHABETS,
            r = (t, e) => {
              const r = {}
              return Object.keys(t).forEach((t) => (r[t] = !0)), Object.keys(e).forEach((t) => (r[t] = !0)), Object.keys(r)
            }
          ;(e.Domains_.small = r(t.smallPrefix, t.letterTrans)), (e.Domains_.capital = r(t.capPrefix, t.letterTrans)), (e.Domains_.digit = r(t.digitPrefix, t.digitTrans))
        }
        function h(t) {
          const e = t.toString(16).toUpperCase()
          return e.length > 3 ? e : ('000' + e).slice(-4)
        }
        function f([t, e], r) {
          const n = parseInt(t, 16),
            o = parseInt(e, 16),
            i = []
          for (let t = n; t <= o; t++) {
            let e = h(t)
            !1 !== r[e] && ((e = r[e] || e), i.push(e))
          }
          return i
        }
        function d(t) {
          const e = 'normal' === t || 'fullwidth' === t ? '' : i.LOCALE.MESSAGES.font[t] || i.LOCALE.MESSAGES.embellish[t] || ''
          return (0, s.localeFontCombiner)(e)
        }
        function m(t, r, n, o, s, a) {
          const l = d(o)
          for (let o, c, u, p = 0; (o = t[p]), (c = r[p]), (u = n[p]); p++) {
            const t = a ? i.LOCALE.ALPHABETS.capPrefix : i.LOCALE.ALPHABETS.smallPrefix,
              r = a ? e.Domains_.capital : e.Domains_.small
            g(l.combiner, o, c, u, l.font, t, s, i.LOCALE.ALPHABETS.letterTrans, r)
          }
        }
        function y(t, r, n, o, s) {
          const a = d(n)
          for (let n, l, c = 0; (n = t[c]), (l = r[c]); c++) {
            const t = i.LOCALE.ALPHABETS.digitPrefix,
              r = c + s
            g(a.combiner, n, l, r, a.font, t, o, i.LOCALE.ALPHABETS.digitTrans, e.Domains_.digit)
          }
        }
        function g(t, e, r, n, o, i, s, l, c) {
          for (let u, p = 0; (u = c[p]); p++) {
            const c = u in l ? l[u] : l.default,
              p = u in i ? i[u] : i.default
            a.defineRule(e.toString(), u, 'default', s, r, t(c(n), o, p))
          }
        }
        !(function (t) {
          ;(t.BOLD = 'bold'),
            (t.BOLDFRAKTUR = 'bold-fraktur'),
            (t.BOLDITALIC = 'bold-italic'),
            (t.BOLDSCRIPT = 'bold-script'),
            (t.DOUBLESTRUCK = 'double-struck'),
            (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')
        })((l = e.Font || (e.Font = {}))),
          (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')
          })((c = e.Embellish || (e.Embellish = {}))),
          (function (t) {
            ;(t.LATINCAP = 'latinCap'), (t.LATINSMALL = 'latinSmall'), (t.GREEKCAP = 'greekCap'), (t.GREEKSMALL = 'greekSmall'), (t.DIGIT = 'digit')
          })((u = e.Base || (e.Base = {}))),
          (e.Domains_ = { small: ['default'], capital: ['default'], digit: ['default'] }),
          (e.makeDomains_ = p),
          (e.generate = function (t) {
            const r = n.default.getInstance().locale
            ;(n.default.getInstance().locale = t), o.setLocale(), a.addSymbolRules({ locale: t }), p()
            const s = e.INTERVALS
            for (let t, e = 0; (t = s[e]); e++) {
              const e = f(t.interval, t.subst),
                r = e.map(function (t) {
                  return String.fromCodePoint(parseInt(t, 16))
                })
              if ('offset' in t) y(e, r, t.font, t.category, t.offset || 0)
              else {
                m(e, r, i.LOCALE.ALPHABETS[t.base], t.font, t.category, !!t.capital)
              }
            }
            ;(n.default.getInstance().locale = r), o.setLocale()
          }),
          (e.makeInterval = f),
          (e.getFont = d),
          (e.alphabetRules = m),
          (e.numberRules = y),
          (e.makeLetter = g),
          (e.INTERVALS = [
            { interval: ['1D400', '1D419'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.BOLD },
            { interval: ['1D41A', '1D433'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.BOLD },
            { interval: ['1D56C', '1D585'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.BOLDFRAKTUR },
            { interval: ['1D586', '1D59F'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.BOLDFRAKTUR },
            { interval: ['1D468', '1D481'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.BOLDITALIC },
            { interval: ['1D482', '1D49B'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.BOLDITALIC },
            { interval: ['1D4D0', '1D4E9'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.BOLDSCRIPT },
            { interval: ['1D4EA', '1D503'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.BOLDSCRIPT },
            { interval: ['1D538', '1D551'], base: u.LATINCAP, subst: { '1D53A': '2102', '1D53F': '210D', '1D545': '2115', '1D547': '2119', '1D548': '211A', '1D549': '211D', '1D551': '2124' }, capital: !0, category: 'Lu', font: l.DOUBLESTRUCK },
            { interval: ['1D552', '1D56B'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.DOUBLESTRUCK },
            { interval: ['1D504', '1D51D'], base: u.LATINCAP, subst: { '1D506': '212D', '1D50B': '210C', '1D50C': '2111', '1D515': '211C', '1D51D': '2128' }, capital: !0, category: 'Lu', font: l.FRAKTUR },
            { interval: ['1D51E', '1D537'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.FRAKTUR },
            { interval: ['FF21', 'FF3A'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.FULLWIDTH },
            { interval: ['FF41', 'FF5A'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.FULLWIDTH },
            { interval: ['1D434', '1D44D'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.ITALIC },
            { interval: ['1D44E', '1D467'], base: u.LATINSMALL, subst: { '1D455': '210E' }, capital: !1, category: 'Ll', font: l.ITALIC },
            { interval: ['1D670', '1D689'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.MONOSPACE },
            { interval: ['1D68A', '1D6A3'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.MONOSPACE },
            { interval: ['0041', '005A'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.NORMAL },
            { interval: ['0061', '007A'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.NORMAL },
            { interval: ['1D49C', '1D4B5'], base: u.LATINCAP, subst: { '1D49D': '212C', '1D4A0': '2130', '1D4A1': '2131', '1D4A3': '210B', '1D4A4': '2110', '1D4A7': '2112', '1D4A8': '2133', '1D4AD': '211B' }, capital: !0, category: 'Lu', font: l.SCRIPT },
            { interval: ['1D4B6', '1D4CF'], base: u.LATINSMALL, subst: { '1D4BA': '212F', '1D4BC': '210A', '1D4C4': '2134' }, capital: !1, category: 'Ll', font: l.SCRIPT },
            { interval: ['1D5A0', '1D5B9'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.SANSSERIF },
            { interval: ['1D5BA', '1D5D3'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.SANSSERIF },
            { interval: ['1D608', '1D621'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.SANSSERIFITALIC },
            { interval: ['1D622', '1D63B'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.SANSSERIFITALIC },
            { interval: ['1D5D4', '1D5ED'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.SANSSERIFBOLD },
            { interval: ['1D5EE', '1D607'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.SANSSERIFBOLD },
            { interval: ['1D63C', '1D655'], base: u.LATINCAP, subst: {}, capital: !0, category: 'Lu', font: l.SANSSERIFBOLDITALIC },
            { interval: ['1D656', '1D66F'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'Ll', font: l.SANSSERIFBOLDITALIC },
            { interval: ['0391', '03A9'], base: u.GREEKCAP, subst: { '03A2': '03F4' }, capital: !0, category: 'Lu', font: l.NORMAL },
            { interval: ['03B0', '03D0'], base: u.GREEKSMALL, subst: { '03B0': '2207', '03CA': '2202', '03CB': '03F5', '03CC': '03D1', '03CD': '03F0', '03CE': '03D5', '03CF': '03F1', '03D0': '03D6' }, capital: !1, category: 'Ll', font: l.NORMAL },
            { interval: ['1D6A8', '1D6C0'], base: u.GREEKCAP, subst: {}, capital: !0, category: 'Lu', font: l.BOLD },
            { interval: ['1D6C1', '1D6E1'], base: u.GREEKSMALL, subst: {}, capital: !1, category: 'Ll', font: l.BOLD },
            { interval: ['1D6E2', '1D6FA'], base: u.GREEKCAP, subst: {}, capital: !0, category: 'Lu', font: l.ITALIC },
            { interval: ['1D6FB', '1D71B'], base: u.GREEKSMALL, subst: {}, capital: !1, category: 'Ll', font: l.ITALIC },
            { interval: ['1D71C', '1D734'], base: u.GREEKCAP, subst: {}, capital: !0, category: 'Lu', font: l.BOLDITALIC },
            { interval: ['1D735', '1D755'], base: u.GREEKSMALL, subst: {}, capital: !1, category: 'Ll', font: l.BOLDITALIC },
            { interval: ['1D756', '1D76E'], base: u.GREEKCAP, subst: {}, capital: !0, category: 'Lu', font: l.SANSSERIFBOLD },
            { interval: ['1D76F', '1D78F'], base: u.GREEKSMALL, subst: {}, capital: !1, category: 'Ll', font: l.SANSSERIFBOLD },
            { interval: ['1D790', '1D7A8'], base: u.GREEKCAP, subst: {}, capital: !0, category: 'Lu', font: l.SANSSERIFBOLDITALIC },
            { interval: ['1D7A9', '1D7C9'], base: u.GREEKSMALL, subst: {}, capital: !1, category: 'Ll', font: l.SANSSERIFBOLDITALIC },
            { interval: ['0030', '0039'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.NORMAL },
            { interval: ['2070', '2079'], base: u.DIGIT, subst: { 2071: '00B9', 2072: '00B2', 2073: '00B3' }, offset: 0, category: 'No', font: c.SUPER },
            { interval: ['2080', '2089'], base: u.DIGIT, subst: {}, offset: 0, category: 'No', font: c.SUB },
            { interval: ['245F', '2473'], base: u.DIGIT, subst: { '245F': '24EA' }, offset: 0, category: 'No', font: c.CIRCLED },
            { interval: ['3251', '325F'], base: u.DIGIT, subst: {}, offset: 21, category: 'No', font: c.CIRCLED },
            { interval: ['32B1', '32BF'], base: u.DIGIT, subst: {}, offset: 36, category: 'No', font: c.CIRCLED },
            { interval: ['2474', '2487'], base: u.DIGIT, subst: {}, offset: 1, category: 'No', font: c.PARENTHESIZED },
            { interval: ['2487', '249B'], base: u.DIGIT, subst: { 2487: '1F100' }, offset: 0, category: 'No', font: c.PERIOD },
            { interval: ['2775', '277F'], base: u.DIGIT, subst: { 2775: '24FF' }, offset: 0, category: 'No', font: c.NEGATIVECIRCLED },
            { interval: ['24EB', '24F4'], base: u.DIGIT, subst: {}, offset: 11, category: 'No', font: c.NEGATIVECIRCLED },
            { interval: ['24F5', '24FE'], base: u.DIGIT, subst: {}, offset: 1, category: 'No', font: c.DOUBLECIRCLED },
            { interval: ['277F', '2789'], base: u.DIGIT, subst: { '277F': '1F10B' }, offset: 0, category: 'No', font: c.CIRCLEDSANSSERIF },
            { interval: ['2789', '2793'], base: u.DIGIT, subst: { 2789: '1F10C' }, offset: 0, category: 'No', font: c.NEGATIVECIRCLEDSANSSERIF },
            { interval: ['FF10', 'FF19'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.FULLWIDTH },
            { interval: ['1D7CE', '1D7D7'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.BOLD },
            { interval: ['1D7D8', '1D7E1'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.DOUBLESTRUCK },
            { interval: ['1D7E2', '1D7EB'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.SANSSERIF },
            { interval: ['1D7EC', '1D7F5'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.SANSSERIFBOLD },
            { interval: ['1D7F6', '1D7FF'], base: u.DIGIT, subst: {}, offset: 0, category: 'Nd', font: l.MONOSPACE },
            { interval: ['1F101', '1F10A'], base: u.DIGIT, subst: {}, offset: 0, category: 'No', font: c.COMMA },
            { interval: ['24B6', '24CF'], base: u.LATINCAP, subst: {}, capital: !0, category: 'So', font: c.CIRCLED },
            { interval: ['24D0', '24E9'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'So', font: c.CIRCLED },
            { interval: ['1F110', '1F129'], base: u.LATINCAP, subst: {}, capital: !0, category: 'So', font: c.PARENTHESIZED },
            { interval: ['249C', '24B5'], base: u.LATINSMALL, subst: {}, capital: !1, category: 'So', font: c.PARENTHESIZED },
            { interval: ['1F130', '1F149'], base: u.LATINCAP, subst: {}, capital: !0, category: 'So', font: c.SQUARED },
            { interval: ['1F170', '1F189'], base: u.LATINCAP, subst: {}, capital: !0, category: 'So', font: c.NEGATIVESQUARED },
            { interval: ['1F150', '1F169'], base: u.LATINCAP, subst: {}, capital: !0, category: 'So', font: c.NEGATIVECIRCLED }
          ])
      },
      8504: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Parser = e.Comparator = e.ClearspeakPreferences = void 0)
        const n = r(5897),
          o = r(4440),
          i = r(1676),
          s = r(1676),
          a = r(2780),
          l = r(2362)
        class c extends i.DynamicCstr {
          constructor(t, e) {
            super(t), (this.preference = e)
          }
          static comparator() {
            return new p(
              n.default.getInstance().dynamicCstr,
              s.DynamicProperties.createProp([i.DynamicCstr.DEFAULT_VALUES[s.Axis.LOCALE]], [i.DynamicCstr.DEFAULT_VALUES[s.Axis.MODALITY]], [i.DynamicCstr.DEFAULT_VALUES[s.Axis.DOMAIN]], [i.DynamicCstr.DEFAULT_VALUES[s.Axis.STYLE]])
            )
          }
          static fromPreference(t) {
            const e = t.split(':'),
              r = {},
              n = u.getProperties(),
              o = Object.keys(n)
            for (let t, i = 0; (t = e[i]); i++) {
              const e = t.split('_')
              if (-1 === o.indexOf(e[0])) continue
              const i = e[1]
              i && i !== c.AUTO && -1 !== n[e[0]].indexOf(i) && (r[e[0]] = e[1])
            }
            return r
          }
          static toPreference(t) {
            const e = Object.keys(t),
              r = []
            for (let n = 0; n < e.length; n++) r.push(e[n] + '_' + t[e[n]])
            return r.length ? r.join(':') : i.DynamicCstr.DEFAULT_VALUE
          }
          static getLocalePreferences(t) {
            const e = t || a.enumerate(l.SpeechRuleEngine.getInstance().enumerate())
            return c.getLocalePreferences_(e)
          }
          static smartPreferences(t, e) {
            const r = c.getLocalePreferences()[e]
            if (!r) return []
            const n = t.explorers.speech,
              i = c.relevantPreferences(n.walker.getFocus().getSemanticPrimary()),
              s = o.DOMAIN_TO_STYLES.clearspeak
            return [
              { type: 'radio', content: 'No Preferences', id: 'clearspeak-default', variable: 'speechRules' },
              { type: 'radio', content: 'Current Preferences', id: 'clearspeak-' + s, variable: 'speechRules' },
              { type: 'rule' },
              { type: 'label', content: 'Preferences for ' + i },
              { type: 'rule' }
            ].concat(
              r[i].map(function (t) {
                const e = t.split('_')
                return { type: 'radio', content: e[1], id: 'clearspeak-' + c.addPreference(s, e[0], e[1]), variable: 'speechRules' }
              })
            )
          }
          static relevantPreferences(t) {
            const e = d[t.type]
            return (e && (e[t.role] || e[''])) || 'ImpliedTimes'
          }
          static findPreference(t, e) {
            if ('default' === t) return c.AUTO
            return c.fromPreference(t)[e] || c.AUTO
          }
          static addPreference(t, e, r) {
            if ('default' === t) return e + '_' + r
            const n = c.fromPreference(t)
            return (n[e] = r), c.toPreference(n)
          }
          static getLocalePreferences_(t) {
            const e = {}
            for (const r in t) {
              if (!t[r].speech || !t[r].speech.clearspeak) continue
              const n = Object.keys(t[r].speech.clearspeak),
                o = (e[r] = {})
              for (const t in u.getProperties()) {
                const e = u.getProperties()[t],
                  r = [t + '_Auto']
                if (e) for (const o of e) -1 !== n.indexOf(t + '_' + o) && r.push(t + '_' + o)
                o[t] = r
              }
            }
            return e
          }
          equal(t) {
            if (!super.equal(t)) return !1
            const e = Object.keys(this.preference),
              r = t.preference
            if (e.length !== Object.keys(r).length) return !1
            for (let t, n = 0; (t = e[n]); n++) if (this.preference[t] !== r[t]) return !1
            return !0
          }
        }
        ;(e.ClearspeakPreferences = c), (c.AUTO = 'Auto')
        const u = new s.DynamicProperties({
          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'],
          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']
        })
        class p extends s.DefaultComparator {
          constructor(t, e) {
            super(t, e), (this.preference = t instanceof c ? t.preference : {})
          }
          match(t) {
            if (!(t instanceof c)) return super.match(t)
            if ('default' === t.getComponents()[s.Axis.STYLE]) return !0
            const e = Object.keys(t.preference)
            for (let r, n = 0; (r = e[n]); n++) if (this.preference[r] !== t.preference[r]) return !1
            return !0
          }
          compare(t, e) {
            const r = super.compare(t, e)
            if (0 !== r) return r
            const n = t instanceof c,
              o = e instanceof c
            if (!n && o) return 1
            if (n && !o) return -1
            if (!n && !o) return 0
            const i = Object.keys(t.preference).length,
              s = Object.keys(e.preference).length
            return i > s ? -1 : i < s ? 1 : 0
          }
        }
        e.Comparator = p
        class h extends s.DynamicCstrParser {
          constructor() {
            super([s.Axis.LOCALE, s.Axis.MODALITY, s.Axis.DOMAIN, s.Axis.STYLE])
          }
          parse(t) {
            const e = super.parse(t)
            let r = e.getValue(s.Axis.STYLE)
            const n = e.getValue(s.Axis.LOCALE),
              o = e.getValue(s.Axis.MODALITY)
            let a = {}
            return r !== i.DynamicCstr.DEFAULT_VALUE && ((a = this.fromPreference(r)), (r = this.toPreference(a))), new c({ locale: n, modality: o, domain: 'clearspeak', style: r }, a)
          }
          fromPreference(t) {
            return c.fromPreference(t)
          }
          toPreference(t) {
            return c.toPreference(t)
          }
        }
        e.Parser = h
        const f = [
            ['AbsoluteValue', 'fenced', 'neutral', 'metric'],
            ['Bar', 'overscore', 'overaccent'],
            ['Caps', 'identifier', 'latinletter'],
            ['CombinationPermutation', 'appl', 'unknown'],
            ['Ellipses', 'punctuation', 'ellipsis'],
            ['Exponent', 'superscript', ''],
            ['Fraction', 'fraction', ''],
            ['Functions', 'appl', 'simple function'],
            ['ImpliedTimes', 'operator', 'implicit'],
            ['Log', 'appl', 'prefix function'],
            ['Matrix', 'matrix', ''],
            ['Matrix', 'vector', ''],
            ['MultiLineLabel', 'multiline', 'label'],
            ['MultiLineOverview', 'multiline', 'table'],
            ['MultiLinePausesBetweenColumns', 'multiline', 'table'],
            ['MultiLineLabel', 'table', 'label'],
            ['MultiLineOverview', 'table', 'table'],
            ['MultiLinePausesBetweenColumns', 'table', 'table'],
            ['MultiLineLabel', 'cases', 'label'],
            ['MultiLineOverview', 'cases', 'table'],
            ['MultiLinePausesBetweenColumns', 'cases', 'table'],
            ['MultsymbolDot', 'operator', 'multiplication'],
            ['MultsymbolX', 'operator', 'multiplication'],
            ['Paren', 'fenced', 'leftright'],
            ['Prime', 'superscript', 'prime'],
            ['Roots', 'root', ''],
            ['Roots', 'sqrt', ''],
            ['SetMemberSymbol', 'relation', 'element'],
            ['Sets', 'fenced', 'set extended'],
            ['TriangleSymbol', 'identifier', 'greekletter'],
            ['Trig', 'appl', 'prefix function'],
            ['VerticalLine', 'punctuated', 'vbar']
          ],
          d = (function () {
            const t = {}
            for (let e, r = 0; (e = f[r]); r++) {
              const r = e[0]
              let n = t[e[1]]
              n || ((n = {}), (t[e[1]] = n)), (n[e[2]] = r)
            }
            return t
          })()
        ;(n.default.getInstance().comparators.clearspeak = c.comparator), (n.default.getInstance().parsers.clearspeak = new h())
      },
      5425: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ClearspeakRules = void 0)
        const n = r(1676),
          o = r(365),
          i = r(9912),
          s = r(1378),
          a = r(8437),
          l = r(7283)
        e.ClearspeakRules = function () {
          l.addStore(n.DynamicCstr.BASE_LOCALE + '.speech.clearspeak', '', {
            CTFpauseSeparator: o.pauseSeparator,
            CTFnodeCounter: i.nodeCounter,
            CTFcontentIterator: o.contentIterator,
            CSFvulgarFraction: a.vulgarFraction,
            CQFvulgarFractionSmall: i.isSmallVulgarFraction,
            CQFcellsSimple: i.allCellsSimple,
            CSFordinalExponent: i.ordinalExponent,
            CSFwordOrdinal: i.wordOrdinal,
            CQFmatchingFences: i.matchingFences,
            CSFnestingDepth: i.nestingDepth,
            CQFfencedArguments: i.fencedArguments,
            CQFsimpleArguments: i.simpleArguments,
            CQFspaceoutNumber: s.spaceoutNumber
          })
        }
      },
      9912: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.wordOrdinal =
            e.layoutFactor_ =
            e.fencedFactor_ =
            e.simpleFactor_ =
            e.simpleArguments =
            e.fencedArguments =
            e.insertNesting =
            e.matchingFences =
            e.nestingDepth =
            e.NESTING_DEPTH =
            e.ordinalExponent =
            e.allTextLastContent_ =
            e.isUnitExpression =
            e.isSmallVulgarFraction =
            e.allCellsSimple =
            e.allIndices_ =
            e.isInteger_ =
            e.simpleCell_ =
            e.simpleNode =
            e.hasPreference =
            e.isSimpleFraction_ =
            e.isSimpleNumber_ =
            e.isNumber_ =
            e.isLetter_ =
            e.isSimple_ =
            e.isSimpleLetters_ =
            e.isSimpleDegree_ =
            e.isSimpleNegative_ =
            e.isSimpleFunction_ =
            e.isSimpleExpression =
            e.nodeCounter =
              void 0)
        const n = r(5740),
          o = r(5897),
          i = r(5274),
          s = r(4356),
          a = r(4977),
          l = r(2105),
          c = r(365),
          u = r(7630),
          p = r(9265),
          h = r(3588)
        function f(t) {
          return S(t) || g(t) || y(t) || m(t) || d(t)
        }
        function d(t) {
          return 'appl' === t.type && ('prefix function' === t.childNodes[0].role || 'simple function' === t.childNodes[0].role) && (b(t.childNodes[1]) || ('fenced' === t.childNodes[1].type && b(t.childNodes[1].childNodes[0])))
        }
        function m(t) {
          return 'prefixop' === t.type && 'negative' === t.role && b(t.childNodes[0]) && 'prefixop' !== t.childNodes[0].type && 'appl' !== t.childNodes[0].type && 'punctuated' !== t.childNodes[0].type
        }
        function y(t) {
          return (
            'punctuated' === t.type &&
            'endpunct' === t.role &&
            2 === t.childNodes.length &&
            'degree' === t.childNodes[1].role &&
            (v(t.childNodes[0]) || _(t.childNodes[0]) || ('prefixop' === t.childNodes[0].type && 'negative' === t.childNodes[0].role && (v(t.childNodes[0].childNodes[0]) || _(t.childNodes[0].childNodes[0]))))
          )
        }
        function g(t) {
          return (
            v(t) ||
            ('infixop' === t.type && 'implicit' === t.role && ((2 === t.childNodes.length && (v(t.childNodes[0]) || S(t.childNodes[0])) && v(t.childNodes[1])) || (3 === t.childNodes.length && S(t.childNodes[0]) && v(t.childNodes[1]) && v(t.childNodes[2]))))
          )
        }
        function b(t) {
          return t.hasAnnotation('clearspeak', 'simple')
        }
        function v(t) {
          return 'identifier' === t.type && ('latinletter' === t.role || 'greekletter' === t.role || 'otherletter' === t.role || 'simple function' === t.role)
        }
        function _(t) {
          return 'number' === t.type && ('integer' === t.role || 'float' === t.role)
        }
        function S(t) {
          return _(t) || M(t)
        }
        function M(t) {
          if (O('Fraction_Over') || O('Fraction_FracOver')) return !1
          if ('fraction' !== t.type || 'vulgar' !== t.role) return !1
          if (O('Fraction_Ordinal')) return !0
          const e = parseInt(t.childNodes[0].textContent, 10),
            r = parseInt(t.childNodes[1].textContent, 10)
          return e > 0 && e < 20 && r > 0 && r < 11
        }
        function O(t) {
          return o.default.getInstance().style === t
        }
        function x(t) {
          if (!t.hasAttribute('annotation')) return !1
          const e = t.getAttribute('annotation')
          return !!/clearspeak:simple$|clearspeak:simple;/.exec(e)
        }
        function E(t) {
          if (x(t)) return !0
          if ('subscript' !== t.tagName) return !1
          const e = t.childNodes[0].childNodes,
            r = e[1]
          return 'identifier' === e[0].tagName && (A(r) || ('infixop' === r.tagName && r.hasAttribute('role') && 'implicit' === r.getAttribute('role') && C(r)))
        }
        function A(t) {
          return 'number' === t.tagName && t.hasAttribute('role') && 'integer' === t.getAttribute('role')
        }
        function C(t) {
          return i.evalXPath('children/*', t).every((t) => A(t) || 'identifier' === t.tagName)
        }
        function T(t) {
          return 'text' === t.type || ('punctuated' === t.type && 'text' === t.role && _(t.childNodes[0]) && N(t.childNodes.slice(1))) || ('identifier' === t.type && 'unit' === t.role) || ('infixop' === t.type && ('implicit' === t.role || 'unit' === t.role))
        }
        function N(t) {
          for (let e = 0; e < t.length - 1; e++) if ('text' !== t[e].type || '' !== t[e].textContent) return !1
          return 'text' === t[t.length - 1].type
        }
        function w(t, e) {
          if (!e || !t) return t
          const r = t.match(/^(open|close) /)
          return r ? r[0] + e + ' ' + t.substring(r[0].length) : e + ' ' + t
        }
        function L(t) {
          return !!t && ('number' === t.tagName || 'identifier' === t.tagName || 'function' === t.tagName || 'appl' === t.tagName || 'fraction' === t.tagName)
        }
        function I(t) {
          return t && ('fenced' === t.tagName || (t.hasAttribute('role') && 'leftright' === t.getAttribute('role')) || P(t))
        }
        function P(t) {
          return !!t && ('matrix' === t.tagName || 'vector' === t.tagName)
        }
        ;(e.nodeCounter = function (t, e) {
          const r = e.split('-'),
            n = c.nodeCounter(t, r[0] || ''),
            o = r[1] || '',
            i = r[2] || ''
          let s = !0
          return function () {
            const t = n()
            return s ? ((s = !1), i + t + o) : t + o
          }
        }),
          (e.isSimpleExpression = f),
          (e.isSimpleFunction_ = d),
          (e.isSimpleNegative_ = m),
          (e.isSimpleDegree_ = y),
          (e.isSimpleLetters_ = g),
          (e.isSimple_ = b),
          (e.isLetter_ = v),
          (e.isNumber_ = _),
          (e.isSimpleNumber_ = S),
          (e.isSimpleFraction_ = M),
          (e.hasPreference = O),
          (0, u.register)(
            new p.SemanticAnnotator('clearspeak', 'simple', function (t) {
              return f(t) ? 'simple' : ''
            })
          ),
          (e.simpleNode = x),
          (e.simpleCell_ = E),
          (e.isInteger_ = A),
          (e.allIndices_ = C),
          (e.allCellsSimple = function (t) {
            const e = 'matrix' === t.tagName ? 'children/row/children/cell/children/*' : 'children/line/children/*'
            return i.evalXPath(e, t).every(E) ? [t] : []
          }),
          (e.isSmallVulgarFraction = function (t) {
            return (0, a.vulgarFractionSmall)(t, 20, 11) ? [t] : []
          }),
          (e.isUnitExpression = T),
          (e.allTextLastContent_ = N),
          (0, u.register)(
            new p.SemanticAnnotator('clearspeak', 'unit', function (t) {
              return T(t) ? 'unit' : ''
            })
          ),
          (e.ordinalExponent = function (t) {
            const e = parseInt(t.textContent, 10)
            return isNaN(e) ? t.textContent : e > 10 ? s.LOCALE.NUMBERS.numericOrdinal(e) : s.LOCALE.NUMBERS.wordOrdinal(e)
          }),
          (e.NESTING_DEPTH = null),
          (e.nestingDepth = function (t) {
            let r = 0
            const n = t.textContent,
              o = 'open' === t.getAttribute('role') ? 0 : 1
            let i = t.parentNode
            for (; i; ) 'fenced' === i.tagName && i.childNodes[0].childNodes[o].textContent === n && r++, (i = i.parentNode)
            return (e.NESTING_DEPTH = r > 1 ? s.LOCALE.NUMBERS.wordOrdinal(r) : ''), e.NESTING_DEPTH
          }),
          (e.matchingFences = function (t) {
            const e = t.previousSibling
            let r, n
            return e ? ((r = e), (n = t)) : ((r = t), (n = t.nextSibling)), n && (0, h.isMatchingFence)(r.textContent, n.textContent) ? [t] : []
          }),
          (e.insertNesting = w),
          l.Grammar.getInstance().setCorrection('insertNesting', w),
          (e.fencedArguments = function (t) {
            const e = n.toArray(t.parentNode.childNodes),
              r = i.evalXPath('../../children/*', t),
              o = e.indexOf(t)
            return I(r[o]) || I(r[o + 1]) ? [t] : []
          }),
          (e.simpleArguments = function (t) {
            const e = n.toArray(t.parentNode.childNodes),
              r = i.evalXPath('../../children/*', t),
              o = e.indexOf(t)
            return L(r[o]) &&
              r[o + 1] &&
              (L(r[o + 1]) ||
                'root' === r[o + 1].tagName ||
                'sqrt' === r[o + 1].tagName ||
                ('superscript' === r[o + 1].tagName &&
                  r[o + 1].childNodes[0].childNodes[0] &&
                  ('number' === r[o + 1].childNodes[0].childNodes[0].tagName || 'identifier' === r[o + 1].childNodes[0].childNodes[0].tagName) &&
                  ('2' === r[o + 1].childNodes[0].childNodes[1].textContent || '3' === r[o + 1].childNodes[0].childNodes[1].textContent)))
              ? [t]
              : []
          }),
          (e.simpleFactor_ = L),
          (e.fencedFactor_ = I),
          (e.layoutFactor_ = P),
          (e.wordOrdinal = function (t) {
            return s.LOCALE.NUMBERS.wordOrdinal(parseInt(t.textContent, 10))
          })
      },
      6141: function (t, e, r) {
        var n =
          (this && this.__awaiter) ||
          function (t, e, r, n) {
            return new (r || (r = Promise))(function (o, i) {
              function s(t) {
                try {
                  l(n.next(t))
                } catch (t) {
                  i(t)
                }
              }
              function a(t) {
                try {
                  l(n.throw(t))
                } catch (t) {
                  i(t)
                }
              }
              function l(t) {
                var e
                t.done
                  ? o(t.value)
                  : ((e = t.value),
                    e instanceof r
                      ? e
                      : new r(function (t) {
                          t(e)
                        })).then(s, a)
              }
              l((n = n.apply(t, e || [])).next())
            })
          }
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.loadAjax = e.loadFileSync = e.loadFile = e.parseMaps = e.retrieveFiles = e.standardLoader = e.loadLocale = e.store = void 0)
        const o = r(2139),
          i = r(5897),
          s = r(4440),
          a = r(7248),
          l = r(2315),
          c = r(1676),
          u = r(2780),
          p = r(2362),
          h = r(7491),
          f = r(313)
        e.store = u
        const d = { functions: u.addFunctionRules, symbols: u.addSymbolRules, units: u.addUnitRules, si: u.setSiPrefixes }
        let m = !1
        function y(t = i.default.getInstance().locale) {
          i.EnginePromise.loaded[t] ||
            ((i.EnginePromise.loaded[t] = [!1, !1]),
            (function (t) {
              if (i.default.getInstance().isIE && i.default.getInstance().mode === s.Mode.HTTP) return void S(t)
              b(t)
            })(t))
        }
        function g() {
          switch (i.default.getInstance().mode) {
            case s.Mode.ASYNC:
              return M
            case s.Mode.HTTP:
              return x
            case s.Mode.SYNC:
            default:
              return O
          }
        }
        function b(t) {
          const e = i.default.getInstance().customLoader ? i.default.getInstance().customLoader : g(),
            r = new Promise((r) => {
              e(t).then(
                (e) => {
                  v(e), (i.EnginePromise.loaded[t] = [!0, !0]), r(t)
                },
                (e) => {
                  ;(i.EnginePromise.loaded[t] = [!0, !1]), console.error(`Unable to load locale: ${t}`), (i.default.getInstance().locale = i.default.getInstance().defaultLocale), r(t)
                }
              )
            })
          i.EnginePromise.promises[t] = r
        }
        function v(t) {
          _(JSON.parse(t))
        }
        function _(t, e) {
          let r = !0
          for (let n, o = 0; (n = Object.keys(t)[o]); o++) {
            const o = n.split('/')
            ;(e && e !== o[0]) || ('rules' === o[1] ? p.SpeechRuleEngine.getInstance().addStore(t[n]) : 'messages' === o[1] ? (0, h.completeLocale)(t[n]) : (r && (f.generate(o[0]), (r = !1)), t[n].forEach(d[o[1]])))
          }
        }
        function S(t, e) {
          let r = e || 1
          o.mapsForIE ? _(o.mapsForIE, t) : r <= 5 && setTimeout((() => S(t, r++)).bind(this), 300)
        }
        function M(t) {
          const e = a.localePath(t)
          return new Promise((t, r) => {
            l.default.fs.readFile(e, 'utf8', (e, n) => {
              if (e) return r(e)
              t(n)
            })
          })
        }
        function O(t) {
          const e = a.localePath(t)
          return new Promise((t, r) => {
            let n = '{}'
            try {
              n = l.default.fs.readFileSync(e, 'utf8')
            } catch (t) {
              return r(t)
            }
            t(n)
          })
        }
        function x(t) {
          const e = a.localePath(t),
            r = new XMLHttpRequest()
          return new Promise((t, n) => {
            ;(r.onreadystatechange = function () {
              if (4 === r.readyState) {
                const e = r.status
                0 === e || (e >= 200 && e < 400) ? t(r.responseText) : n(e)
              }
            }),
              r.open('GET', e, !0),
              r.send()
          })
        }
        ;(e.loadLocale = function (t = i.default.getInstance().locale) {
          return n(this, void 0, void 0, function* () {
            return (
              m || (y(c.DynamicCstr.BASE_LOCALE), (m = !0)),
              i.EnginePromise.promises[c.DynamicCstr.BASE_LOCALE].then(() =>
                n(this, void 0, void 0, function* () {
                  const e = i.default.getInstance().defaultLocale
                  return e
                    ? (y(e),
                      i.EnginePromise.promises[e].then(() =>
                        n(this, void 0, void 0, function* () {
                          return y(t), i.EnginePromise.promises[t]
                        })
                      ))
                    : (y(t), i.EnginePromise.promises[t])
                })
              )
            )
          })
        }),
          (e.standardLoader = g),
          (e.retrieveFiles = b),
          (e.parseMaps = v),
          (e.loadFile = M),
          (e.loadFileSync = O),
          (e.loadAjax = x)
      },
      7088: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.leftSubscriptBrief = e.leftSuperscriptBrief = e.leftSubscriptVerbose = e.leftSuperscriptVerbose = e.baselineBrief = e.baselineVerbose = void 0)
        const n = r(1378)
        ;(e.baselineVerbose = function (t) {
          return n.baselineVerbose(t).replace(/-$/, '')
        }),
          (e.baselineBrief = function (t) {
            return n.baselineBrief(t).replace(/-$/, '')
          }),
          (e.leftSuperscriptVerbose = function (t) {
            return n.superscriptVerbose(t).replace(/^exposant/, 'exposant gauche')
          }),
          (e.leftSubscriptVerbose = function (t) {
            return n.subscriptVerbose(t).replace(/^indice/, 'indice gauche')
          }),
          (e.leftSuperscriptBrief = function (t) {
            return n.superscriptBrief(t).replace(/^sup/, 'sup gauche')
          }),
          (e.leftSubscriptBrief = function (t) {
            return n.subscriptBrief(t).replace(/^sub/, 'sub gauche')
          })
      },
      9577: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.MathspeakRules = void 0)
        const n = r(1676),
          o = r(365),
          i = r(7088),
          s = r(1378),
          a = r(8437),
          l = r(7283),
          c = r(7598)
        e.MathspeakRules = function () {
          l.addStore(n.DynamicCstr.BASE_LOCALE + '.speech.mathspeak', '', {
            CQFspaceoutNumber: s.spaceoutNumber,
            CQFspaceoutIdentifier: s.spaceoutIdentifier,
            CSFspaceoutText: s.spaceoutText,
            CSFopenFracVerbose: s.openingFractionVerbose,
            CSFcloseFracVerbose: s.closingFractionVerbose,
            CSFoverFracVerbose: s.overFractionVerbose,
            CSFopenFracBrief: s.openingFractionBrief,
            CSFcloseFracBrief: s.closingFractionBrief,
            CSFopenFracSbrief: s.openingFractionSbrief,
            CSFcloseFracSbrief: s.closingFractionSbrief,
            CSFoverFracSbrief: s.overFractionSbrief,
            CSFvulgarFraction: a.vulgarFraction,
            CQFvulgarFractionSmall: s.isSmallVulgarFraction,
            CSFopenRadicalVerbose: s.openingRadicalVerbose,
            CSFcloseRadicalVerbose: s.closingRadicalVerbose,
            CSFindexRadicalVerbose: s.indexRadicalVerbose,
            CSFopenRadicalBrief: s.openingRadicalBrief,
            CSFcloseRadicalBrief: s.closingRadicalBrief,
            CSFindexRadicalBrief: s.indexRadicalBrief,
            CSFopenRadicalSbrief: s.openingRadicalSbrief,
            CSFindexRadicalSbrief: s.indexRadicalSbrief,
            CQFisSmallRoot: s.smallRoot,
            CSFsuperscriptVerbose: s.superscriptVerbose,
            CSFsuperscriptBrief: s.superscriptBrief,
            CSFsubscriptVerbose: s.subscriptVerbose,
            CSFsubscriptBrief: s.subscriptBrief,
            CSFbaselineVerbose: s.baselineVerbose,
            CSFbaselineBrief: s.baselineBrief,
            CSFleftsuperscriptVerbose: s.superscriptVerbose,
            CSFleftsubscriptVerbose: s.subscriptVerbose,
            CSFrightsuperscriptVerbose: s.superscriptVerbose,
            CSFrightsubscriptVerbose: s.subscriptVerbose,
            CSFleftsuperscriptBrief: s.superscriptBrief,
            CSFleftsubscriptBrief: s.subscriptBrief,
            CSFrightsuperscriptBrief: s.superscriptBrief,
            CSFrightsubscriptBrief: s.subscriptBrief,
            CSFunderscript: s.nestedUnderscript,
            CSFoverscript: s.nestedOverscript,
            CSFendscripts: s.endscripts,
            CTFordinalCounter: a.ordinalCounter,
            CTFwordCounter: a.wordCounter,
            CTFcontentIterator: o.contentIterator,
            CQFdetIsSimple: s.determinantIsSimple,
            CSFRemoveParens: s.removeParens,
            CQFresetNesting: s.resetNestingDepth,
            CGFbaselineConstraint: s.generateBaselineConstraint,
            CGFtensorRules: s.generateTensorRules
          }),
            l.addStore('es.speech.mathspeak', n.DynamicCstr.BASE_LOCALE + '.speech.mathspeak', { CTFunitMultipliers: c.unitMultipliers, CQFoneLeft: c.oneLeft }),
            l.addStore('fr.speech.mathspeak', n.DynamicCstr.BASE_LOCALE + '.speech.mathspeak', {
              CSFbaselineVerbose: i.baselineVerbose,
              CSFbaselineBrief: i.baselineBrief,
              CSFleftsuperscriptVerbose: i.leftSuperscriptVerbose,
              CSFleftsubscriptVerbose: i.leftSubscriptVerbose,
              CSFleftsuperscriptBrief: i.leftSuperscriptBrief,
              CSFleftsubscriptBrief: i.leftSubscriptBrief
            })
        }
      },
      1378: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.smallRoot =
            e.generateTensorRules =
            e.removeParens =
            e.generateBaselineConstraint =
            e.determinantIsSimple =
            e.nestedOverscript =
            e.endscripts =
            e.overscoreNestingDepth =
            e.nestedUnderscript =
            e.underscoreNestingDepth =
            e.indexRadicalSbrief =
            e.openingRadicalSbrief =
            e.indexRadicalBrief =
            e.closingRadicalBrief =
            e.openingRadicalBrief =
            e.indexRadicalVerbose =
            e.closingRadicalVerbose =
            e.openingRadicalVerbose =
            e.getRootIndex =
            e.nestedRadical =
            e.radicalNestingDepth =
            e.baselineBrief =
            e.baselineVerbose =
            e.superscriptBrief =
            e.superscriptVerbose =
            e.subscriptBrief =
            e.subscriptVerbose =
            e.nestedSubSuper =
            e.isSmallVulgarFraction =
            e.overFractionSbrief =
            e.closingFractionSbrief =
            e.openingFractionSbrief =
            e.closingFractionBrief =
            e.openingFractionBrief =
            e.overFractionVerbose =
            e.closingFractionVerbose =
            e.openingFractionVerbose =
            e.nestedFraction =
            e.fractionNestingDepth =
            e.computeNestingDepth_ =
            e.containsAttr =
            e.getNestingDepth =
            e.resetNestingDepth =
            e.nestingBarriers =
            e.spaceoutIdentifier =
            e.spaceoutNumber =
            e.spaceoutNodes =
            e.spaceoutText =
              void 0)
        const n = r(707),
          o = r(5740),
          i = r(5274),
          s = r(4356),
          a = r(3308)
        let l = {}
        function c(t, e) {
          const r = Array.from(t.textContent),
            n = [],
            o = a.default.getInstance(),
            i = t.ownerDocument
          for (let t, s = 0; (t = r[s]); s++) {
            const r = o.getNodeFactory().makeLeafNode(t, 'unknown'),
              s = o.identifierNode(r, 'unknown', '')
            e(s), n.push(s.xml(i))
          }
          return n
        }
        function u(t, r, i, s, a, c) {
          ;(s = s || e.nestingBarriers),
            (a = a || {}),
            (c =
              c ||
              function (t) {
                return !1
              })
          const u = o.serializeXml(r)
          if ((l[t] || (l[t] = {}), l[t][u])) return l[t][u]
          if (c(r) || i.indexOf(r.tagName) < 0) return 0
          const p = h(r, i, n.setdifference(s, i), a, c, 0)
          return (l[t][u] = p), p
        }
        function p(t, e) {
          if (!t.attributes) return !1
          const r = o.toArray(t.attributes)
          for (let t, n = 0; (t = r[n]); n++) if (e[t.nodeName] === t.nodeValue) return !0
          return !1
        }
        function h(t, e, r, n, i, s) {
          if (i(t) || r.indexOf(t.tagName) > -1 || p(t, n)) return s
          if ((e.indexOf(t.tagName) > -1 && s++, !t.childNodes || 0 === t.childNodes.length)) return s
          const a = o.toArray(t.childNodes)
          return Math.max.apply(
            null,
            a.map(function (t) {
              return h(t, e, r, n, i, s)
            })
          )
        }
        function f(t) {
          return u('fraction', t, ['fraction'], e.nestingBarriers, {}, s.LOCALE.FUNCTIONS.fracNestDepth)
        }
        function d(t, e, r) {
          const n = f(t),
            o = Array(n).fill(e)
          return r && o.push(r), o.join(s.LOCALE.MESSAGES.regexp.JOINER_FRAC)
        }
        function m(t, e, r) {
          for (; t.parentNode; ) {
            const n = t.parentNode,
              o = n.parentNode
            if (!o) break
            const i = t.getAttribute && t.getAttribute('role')
            ;(('subscript' === o.tagName && t === n.childNodes[1]) || ('tensor' === o.tagName && i && ('leftsub' === i || 'rightsub' === i))) && (e = r.sub + s.LOCALE.MESSAGES.regexp.JOINER_SUBSUPER + e),
              (('superscript' === o.tagName && t === n.childNodes[1]) || ('tensor' === o.tagName && i && ('leftsuper' === i || 'rightsuper' === i))) && (e = r.sup + s.LOCALE.MESSAGES.regexp.JOINER_SUBSUPER + e),
              (t = o)
          }
          return e.trim()
        }
        function y(t) {
          return u('radical', t, ['sqrt', 'root'], e.nestingBarriers, {})
        }
        function g(t, e, r) {
          const n = y(t),
            o = b(t)
          return (r = o ? s.LOCALE.FUNCTIONS.combineRootIndex(r, o) : r), 1 === n ? r : s.LOCALE.FUNCTIONS.combineNestedRadical(e, s.LOCALE.FUNCTIONS.radicalNestDepth(n - 1), r)
        }
        function b(t) {
          const e = 'sqrt' === t.tagName ? '2' : i.evalXPath('children/*[1]', t)[0].textContent.trim()
          return s.LOCALE.MESSAGES.MSroots[e] || ''
        }
        function v(t) {
          return u('underscore', t, ['underscore'], e.nestingBarriers, {}, function (t) {
            return t.tagName && 'underscore' === t.tagName && 'underaccent' === t.childNodes[0].childNodes[1].getAttribute('role')
          })
        }
        function _(t) {
          return u('overscore', t, ['overscore'], e.nestingBarriers, {}, function (t) {
            return t.tagName && 'overscore' === t.tagName && 'overaccent' === t.childNodes[0].childNodes[1].getAttribute('role')
          })
        }
        ;(e.spaceoutText = function (t) {
          return Array.from(t.textContent).join(' ')
        }),
          (e.spaceoutNodes = c),
          (e.spaceoutNumber = function (t) {
            return c(t, function (t) {
              t.textContent.match(/\W/) || (t.type = 'number')
            })
          }),
          (e.spaceoutIdentifier = function (t) {
            return c(t, function (t) {
              ;(t.font = 'unknown'), (t.type = 'identifier')
            })
          }),
          (e.nestingBarriers = ['cases', 'cell', 'integral', 'line', 'matrix', 'multiline', 'overscore', 'root', 'row', 'sqrt', 'subscript', 'superscript', 'table', 'underscore', 'vector']),
          (e.resetNestingDepth = function (t) {
            return (l = {}), [t]
          }),
          (e.getNestingDepth = u),
          (e.containsAttr = p),
          (e.computeNestingDepth_ = h),
          (e.fractionNestingDepth = f),
          (e.nestedFraction = d),
          (e.openingFractionVerbose = function (t) {
            return d(t, s.LOCALE.MESSAGES.MS.START, s.LOCALE.MESSAGES.MS.FRAC_V)
          }),
          (e.closingFractionVerbose = function (t) {
            return d(t, s.LOCALE.MESSAGES.MS.END, s.LOCALE.MESSAGES.MS.FRAC_V)
          }),
          (e.overFractionVerbose = function (t) {
            return d(t, s.LOCALE.MESSAGES.MS.FRAC_OVER)
          }),
          (e.openingFractionBrief = function (t) {
            return d(t, s.LOCALE.MESSAGES.MS.START, s.LOCALE.MESSAGES.MS.FRAC_B)
          }),
          (e.closingFractionBrief = function (t) {
            return d(t, s.LOCALE.MESSAGES.MS.END, s.LOCALE.MESSAGES.MS.FRAC_B)
          }),
          (e.openingFractionSbrief = function (t) {
            const e = f(t)
            return 1 === e ? s.LOCALE.MESSAGES.MS.FRAC_S : s.LOCALE.FUNCTIONS.combineNestedFraction(s.LOCALE.MESSAGES.MS.NEST_FRAC, s.LOCALE.FUNCTIONS.radicalNestDepth(e - 1), s.LOCALE.MESSAGES.MS.FRAC_S)
          }),
          (e.closingFractionSbrief = function (t) {
            const e = f(t)
            return 1 === e ? s.LOCALE.MESSAGES.MS.ENDFRAC : s.LOCALE.FUNCTIONS.combineNestedFraction(s.LOCALE.MESSAGES.MS.NEST_FRAC, s.LOCALE.FUNCTIONS.radicalNestDepth(e - 1), s.LOCALE.MESSAGES.MS.ENDFRAC)
          }),
          (e.overFractionSbrief = function (t) {
            const e = f(t)
            return 1 === e ? s.LOCALE.MESSAGES.MS.FRAC_OVER : s.LOCALE.FUNCTIONS.combineNestedFraction(s.LOCALE.MESSAGES.MS.NEST_FRAC, s.LOCALE.FUNCTIONS.radicalNestDepth(e - 1), s.LOCALE.MESSAGES.MS.FRAC_OVER)
          }),
          (e.isSmallVulgarFraction = function (t) {
            return s.LOCALE.FUNCTIONS.fracNestDepth(t) ? [t] : []
          }),
          (e.nestedSubSuper = m),
          (e.subscriptVerbose = function (t) {
            return m(t, s.LOCALE.MESSAGES.MS.SUBSCRIPT, { sup: s.LOCALE.MESSAGES.MS.SUPER, sub: s.LOCALE.MESSAGES.MS.SUB })
          }),
          (e.subscriptBrief = function (t) {
            return m(t, s.LOCALE.MESSAGES.MS.SUB, { sup: s.LOCALE.MESSAGES.MS.SUP, sub: s.LOCALE.MESSAGES.MS.SUB })
          }),
          (e.superscriptVerbose = function (t) {
            return m(t, s.LOCALE.MESSAGES.MS.SUPERSCRIPT, { sup: s.LOCALE.MESSAGES.MS.SUPER, sub: s.LOCALE.MESSAGES.MS.SUB })
          }),
          (e.superscriptBrief = function (t) {
            return m(t, s.LOCALE.MESSAGES.MS.SUP, { sup: s.LOCALE.MESSAGES.MS.SUP, sub: s.LOCALE.MESSAGES.MS.SUB })
          }),
          (e.baselineVerbose = function (t) {
            const e = m(t, '', { sup: s.LOCALE.MESSAGES.MS.SUPER, sub: s.LOCALE.MESSAGES.MS.SUB })
            return e ? e.replace(new RegExp(s.LOCALE.MESSAGES.MS.SUB + '$'), s.LOCALE.MESSAGES.MS.SUBSCRIPT).replace(new RegExp(s.LOCALE.MESSAGES.MS.SUPER + '$'), s.LOCALE.MESSAGES.MS.SUPERSCRIPT) : s.LOCALE.MESSAGES.MS.BASELINE
          }),
          (e.baselineBrief = function (t) {
            return m(t, '', { sup: s.LOCALE.MESSAGES.MS.SUP, sub: s.LOCALE.MESSAGES.MS.SUB }) || s.LOCALE.MESSAGES.MS.BASE
          }),
          (e.radicalNestingDepth = y),
          (e.nestedRadical = g),
          (e.getRootIndex = b),
          (e.openingRadicalVerbose = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NESTED, s.LOCALE.MESSAGES.MS.STARTROOT)
          }),
          (e.closingRadicalVerbose = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NESTED, s.LOCALE.MESSAGES.MS.ENDROOT)
          }),
          (e.indexRadicalVerbose = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NESTED, s.LOCALE.MESSAGES.MS.ROOTINDEX)
          }),
          (e.openingRadicalBrief = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NEST_ROOT, s.LOCALE.MESSAGES.MS.STARTROOT)
          }),
          (e.closingRadicalBrief = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NEST_ROOT, s.LOCALE.MESSAGES.MS.ENDROOT)
          }),
          (e.indexRadicalBrief = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NEST_ROOT, s.LOCALE.MESSAGES.MS.ROOTINDEX)
          }),
          (e.openingRadicalSbrief = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NEST_ROOT, s.LOCALE.MESSAGES.MS.ROOT)
          }),
          (e.indexRadicalSbrief = function (t) {
            return g(t, s.LOCALE.MESSAGES.MS.NEST_ROOT, s.LOCALE.MESSAGES.MS.INDEX)
          }),
          (e.underscoreNestingDepth = v),
          (e.nestedUnderscript = function (t) {
            const e = v(t)
            return Array(e).join(s.LOCALE.MESSAGES.MS.UNDER) + s.LOCALE.MESSAGES.MS.UNDERSCRIPT
          }),
          (e.overscoreNestingDepth = _),
          (e.endscripts = function (t) {
            return s.LOCALE.MESSAGES.MS.ENDSCRIPTS
          }),
          (e.nestedOverscript = function (t) {
            const e = _(t)
            return Array(e).join(s.LOCALE.MESSAGES.MS.OVER) + s.LOCALE.MESSAGES.MS.OVERSCRIPT
          }),
          (e.determinantIsSimple = function (t) {
            if ('matrix' !== t.tagName || 'determinant' !== t.getAttribute('role')) return []
            const e = i.evalXPath('children/row/children/cell/children/*', t)
            for (let t, r = 0; (t = e[r]); r++)
              if ('number' !== t.tagName) {
                if ('identifier' === t.tagName) {
                  const e = t.getAttribute('role')
                  if ('latinletter' === e || 'greekletter' === e || 'otherletter' === e) continue
                }
                return []
              }
            return [t]
          }),
          (e.generateBaselineConstraint = function () {
            const t = (t) => t.map((t) => 'ancestor::' + t),
              e = (t) => 'not(' + t + ')',
              r = e(t(['subscript', 'superscript', 'tensor']).join(' or ')),
              n = t(['relseq', 'multrel']),
              o = t(['fraction', 'punctuation', 'fenced', 'sqrt', 'root'])
            let i = []
            for (let t, e = 0; (t = o[e]); e++)
              i = i.concat(
                n.map(function (e) {
                  return t + '/' + e
                })
              )
            return [['ancestor::*/following-sibling::*', r, e(i.join(' | '))].join(' and ')]
          }),
          (e.removeParens = function (t) {
            if (!t.childNodes.length || !t.childNodes[0].childNodes.length || !t.childNodes[0].childNodes[0].childNodes.length) return ''
            const e = t.childNodes[0].childNodes[0].childNodes[0].textContent
            return e.match(/^\(.+\)$/) ? e.slice(1, -1) : e
          })
        const S = new Map([
            [3, 'CSFleftsuperscript'],
            [4, 'CSFleftsubscript'],
            [2, 'CSFbaseline'],
            [1, 'CSFrightsubscript'],
            [0, 'CSFrightsuperscript']
          ]),
          M = new Map([
            [4, 2],
            [3, 3],
            [2, 1],
            [1, 4],
            [0, 5]
          ])
        function O(t) {
          const e = []
          let r = '',
            n = '',
            o = parseInt(t, 2)
          for (let t = 0; t < 5; t++) {
            const i = 'children/*[' + M.get(t) + ']'
            if (1 & o) {
              const e = S.get(t % 5)
              ;(r = '[t] ' + e + 'Verbose; [n] ' + i + ';' + r), (n = '[t] ' + e + 'Brief; [n] ' + i + ';' + n)
            } else e.unshift('name(' + i + ')="empty"')
            o >>= 1
          }
          return [e, r, n]
        }
        ;(e.generateTensorRules = function (t, e = !0) {
          const r = ['11111', '11110', '11101', '11100', '10111', '10110', '10101', '10100', '01111', '01110', '01101', '01100']
          for (let n, o = 0; (n = r[o]); o++) {
            let r = 'tensor' + n,
              [o, i, s] = O(n)
            t.defineRule(r, 'default', i, 'self::tensor', ...o), e && (t.defineRule(r, 'brief', s, 'self::tensor', ...o), t.defineRule(r, 'sbrief', s, 'self::tensor', ...o))
            const a = S.get(2)
            ;(i += '; [t]' + a + 'Verbose'), (s += '; [t]' + a + 'Brief'), (r += '-baseline')
            const l = '((.//*[not(*)])[last()]/@id)!=(((.//ancestor::fraction|ancestor::root|ancestor::sqrt|ancestor::cell|ancestor::line|ancestor::stree)[1]//*[not(*)])[last()]/@id)'
            t.defineRule(r, 'default', i, 'self::tensor', l, ...o), e && (t.defineRule(r, 'brief', s, 'self::tensor', l, ...o), t.defineRule(r, 'sbrief', s, 'self::tensor', l, ...o))
          }
        }),
          (e.smallRoot = function (t) {
            let e = Object.keys(s.LOCALE.MESSAGES.MSroots).length
            if (!e) return []
            if ((e++, !t.childNodes || 0 === t.childNodes.length || !t.childNodes[0].childNodes)) return []
            const r = t.childNodes[0].childNodes[0].textContent
            if (!/^\d+$/.test(r)) return []
            const n = parseInt(r, 10)
            return n > 1 && n <= e ? [t] : []
          })
      },
      6922: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.implicitIterator =
            e.relationIterator =
            e.propagateNumber =
            e.checkParent_ =
            e.NUMBER_INHIBITORS_ =
            e.NUMBER_PROPAGATORS_ =
            e.enlargeFence =
            e.indexRadical =
            e.closingRadical =
            e.openingRadical =
            e.radicalNestingDepth =
            e.nestedRadical =
            e.overBevelledFraction =
            e.overFraction =
            e.closingFraction =
            e.openingFraction =
              void 0)
        const n = r(7052),
          o = r(5740),
          i = r(5274),
          s = r(2105),
          a = r(5897),
          l = r(7630),
          c = r(9265),
          u = r(4356),
          p = r(1378)
        function h(t, e) {
          const r = f(t)
          return 1 === r ? e : new Array(r).join(u.LOCALE.MESSAGES.MS.NESTED) + e
        }
        function f(t, e) {
          const r = e || 0
          return t.parentNode ? f(t.parentNode, 'root' === t.tagName || 'sqrt' === t.tagName ? r + 1 : r) : r
        }
        function d(t) {
          const e = '\u2820'
          if (1 === t.length) return e + t
          const r = t.split('')
          return r.every(function (t) {
            return '\u2833' === t
          })
            ? e + r.join(e)
            : t.slice(0, -1) + e + t.slice(-1)
        }
        function m(t, r) {
          const n = t.parent
          if (!n) return !1
          const o = n.type
          return -1 !== e.NUMBER_PROPAGATORS_.indexOf(o) || ('prefixop' === o && 'negative' === n.role && !r.script) || ('prefixop' === o && 'geometry' === n.role) || !('punctuated' !== o || (r.enclosed && 'text' !== n.role))
        }
        function y(t, r) {
          return t.childNodes.length
            ? (-1 !== e.NUMBER_INHIBITORS_.indexOf(t.type) && (r.script = !0), 'fenced' === t.type ? ((r.number = !1), (r.enclosed = !0), ['', r]) : (m(t, r) && ((r.number = !0), (r.enclosed = !1)), ['', r]))
            : (m(t, r) && ((r.number = !0), (r.script = !1), (r.enclosed = !1)), [r.number ? 'number' : '', { number: !1, enclosed: r.enclosed, script: r.script }])
        }
        ;(e.openingFraction = function (t) {
          const e = p.fractionNestingDepth(t)
          return new Array(e).join(u.LOCALE.MESSAGES.MS.FRACTION_REPEAT) + u.LOCALE.MESSAGES.MS.FRACTION_START
        }),
          (e.closingFraction = function (t) {
            const e = p.fractionNestingDepth(t)
            return new Array(e).join(u.LOCALE.MESSAGES.MS.FRACTION_REPEAT) + u.LOCALE.MESSAGES.MS.FRACTION_END
          }),
          (e.overFraction = function (t) {
            const e = p.fractionNestingDepth(t)
            return new Array(e).join(u.LOCALE.MESSAGES.MS.FRACTION_REPEAT) + u.LOCALE.MESSAGES.MS.FRACTION_OVER
          }),
          (e.overBevelledFraction = function (t) {
            const e = p.fractionNestingDepth(t)
            return new Array(e).join(u.LOCALE.MESSAGES.MS.FRACTION_REPEAT) + '\u2838' + u.LOCALE.MESSAGES.MS.FRACTION_OVER
          }),
          (e.nestedRadical = h),
          (e.radicalNestingDepth = f),
          (e.openingRadical = function (t) {
            return h(t, u.LOCALE.MESSAGES.MS.STARTROOT)
          }),
          (e.closingRadical = function (t) {
            return h(t, u.LOCALE.MESSAGES.MS.ENDROOT)
          }),
          (e.indexRadical = function (t) {
            return h(t, u.LOCALE.MESSAGES.MS.ROOTINDEX)
          }),
          (e.enlargeFence = d),
          s.Grammar.getInstance().setCorrection('enlargeFence', d),
          (e.NUMBER_PROPAGATORS_ = ['multirel', 'relseq', 'appl', 'row', 'line']),
          (e.NUMBER_INHIBITORS_ = ['subscript', 'superscript', 'overscore', 'underscore']),
          (e.checkParent_ = m),
          (e.propagateNumber = y),
          (0, l.register)(new c.SemanticVisitor('nemeth', 'number', y, { number: !0 })),
          (e.relationIterator = function (t, e) {
            const r = t.slice(0)
            let s,
              l = !0
            return (
              (s = t.length > 0 ? i.evalXPath('../../content/*', t[0]) : []),
              function () {
                const t = s.shift(),
                  i = r.shift(),
                  c = r[0],
                  h = e ? [n.AuditoryDescription.create({ text: e }, { translate: !0 })] : []
                if (!t) return h
                const f = i ? p.nestedSubSuper(i, '', { sup: u.LOCALE.MESSAGES.MS.SUPER, sub: u.LOCALE.MESSAGES.MS.SUB }) : '',
                  d = (i && 'EMPTY' !== o.tagName(i)) || (l && t.parentNode.parentNode && t.parentNode.parentNode.previousSibling) ? [n.AuditoryDescription.create({ text: '\u2800' + f }, {})] : [],
                  m = (c && 'EMPTY' !== o.tagName(c)) || (!s.length && t.parentNode.parentNode && t.parentNode.parentNode.nextSibling) ? [n.AuditoryDescription.create({ text: '\u2800' }, {})] : [],
                  y = a.default.evaluateNode(t)
                return (l = !1), h.concat(d, y, m)
              }
            )
          }),
          (e.implicitIterator = function (t, e) {
            const r = t.slice(0)
            let s
            return (
              (s = t.length > 0 ? i.evalXPath('../../content/*', t[0]) : []),
              function () {
                const t = r.shift(),
                  i = r[0],
                  a = s.shift(),
                  l = e ? [n.AuditoryDescription.create({ text: e }, { translate: !0 })] : []
                if (!a) return l
                const c = t && 'NUMBER' === o.tagName(t),
                  u = i && 'NUMBER' === o.tagName(i)
                return l.concat(c && u && 'space' === a.getAttribute('role') ? [n.AuditoryDescription.create({ text: '\u2800' }, {})] : [])
              }
            )
          })
      },
      8437: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.ordinalPosition = e.vulgarFraction = e.wordCounter = e.ordinalCounter = void 0)
        const n = r(9536),
          o = r(5740),
          i = r(4356),
          s = r(4977)
        ;(e.ordinalCounter = function (t, e) {
          let r = 0
          return function () {
            return i.LOCALE.NUMBERS.numericOrdinal(++r) + ' ' + e
          }
        }),
          (e.wordCounter = function (t, e) {
            let r = 0
            return function () {
              return i.LOCALE.NUMBERS.numberToOrdinal(++r, !1) + ' ' + e
            }
          }),
          (e.vulgarFraction = function (t) {
            const e = (0, s.convertVulgarFraction)(t, i.LOCALE.MESSAGES.MS.FRAC_OVER)
            return e.convertible && e.enumerator && e.denominator
              ? [
                  new n.Span(i.LOCALE.NUMBERS.numberToWords(e.enumerator), { extid: t.childNodes[0].childNodes[0].getAttribute('extid'), separator: '' }),
                  new n.Span(i.LOCALE.NUMBERS.vulgarSep, { separator: '' }),
                  new n.Span(i.LOCALE.NUMBERS.numberToOrdinal(e.denominator, 1 !== e.enumerator), { extid: t.childNodes[0].childNodes[1].getAttribute('extid') })
                ]
              : [new n.Span(e.content || '', { extid: t.getAttribute('extid') })]
          }),
          (e.ordinalPosition = function (t) {
            const e = o.toArray(t.parentNode.childNodes)
            return i.LOCALE.NUMBERS.numericOrdinal(e.indexOf(t) + 1).toString()
          })
      },
      9284: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.BrailleRules = e.OtherRules = e.PrefixRules = void 0)
        const n = r(1676),
          o = r(365),
          i = r(1378),
          s = r(6922),
          a = r(8437),
          l = r(7283)
        ;(e.PrefixRules = function () {
          l.addStore('en.prefix.default', '', { CSFordinalPosition: a.ordinalPosition })
        }),
          (e.OtherRules = function () {
            l.addStore('en.speech.chromevox', '', { CTFnodeCounter: o.nodeCounter, CTFcontentIterator: o.contentIterator }),
              l.addStore('en.speech.emacspeak', 'en.speech.chromevox', { CQFvulgarFractionSmall: i.isSmallVulgarFraction, CSFvulgarFraction: a.vulgarFraction })
          }),
          (e.BrailleRules = function () {
            l.addStore('nemeth.braille.default', n.DynamicCstr.BASE_LOCALE + '.speech.mathspeak', {
              CSFopenFraction: s.openingFraction,
              CSFcloseFraction: s.closingFraction,
              CSFoverFraction: s.overFraction,
              CSFoverBevFraction: s.overBevelledFraction,
              CSFopenRadical: s.openingRadical,
              CSFcloseRadical: s.closingRadical,
              CSFindexRadical: s.indexRadical,
              CSFsubscript: i.subscriptVerbose,
              CSFsuperscript: i.superscriptVerbose,
              CSFbaseline: i.baselineVerbose,
              CGFtensorRules: (t) => i.generateTensorRules(t, !1),
              CTFrelationIterator: s.relationIterator,
              CTFimplicitIterator: s.implicitIterator
            })
          })
      },
      7599: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.init = e.INIT_ = void 0)
        const n = r(5425),
          o = r(9577),
          i = r(9284)
        ;(e.INIT_ = !1),
          (e.init = function () {
            e.INIT_ || ((0, o.MathspeakRules)(), (0, n.ClearspeakRules)(), (0, i.PrefixRules)(), (0, i.OtherRules)(), (0, i.BrailleRules)(), (e.INIT_ = !0))
          })
      },
      7283: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.getStore = e.addStore = e.funcStore = void 0)
        const n = r(1676)
        ;(e.funcStore = new Map()),
          (e.addStore = function (t, r, n) {
            const o = {}
            if (r) {
              const t = e.funcStore.get(r) || {}
              Object.assign(o, t)
            }
            e.funcStore.set(t, Object.assign(o, n))
          }),
          (e.getStore = function (t, r, o) {
            return e.funcStore.get([t, r, o].join('.')) || e.funcStore.get([n.DynamicCstr.DEFAULT_VALUES[n.Axis.LOCALE], r, o].join('.')) || e.funcStore.get([n.DynamicCstr.BASE_LOCALE, r, o].join('.')) || {}
          })
      },
      7598: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.oneLeft = e.leftMostUnit = e.rightMostUnit = e.unitMultipliers = void 0)
        const n = r(7052),
          o = r(5274),
          i = r(4356)
        e.unitMultipliers = function (t, e) {
          const r = t
          let o = 0
          return function () {
            const t = n.AuditoryDescription.create({ text: a(r[o]) && l(r[o + 1]) ? i.LOCALE.MESSAGES.unitTimes : '' }, {})
            return o++, [t]
          }
        }
        const s = ['superscript', 'subscript', 'overscore', 'underscore']
        function a(t) {
          for (; t; ) {
            if ('unit' === t.getAttribute('role')) return !0
            const e = t.tagName,
              r = o.evalXPath('children/*', t)
            t = -1 !== s.indexOf(e) ? r[0] : r[r.length - 1]
          }
          return !1
        }
        function l(t) {
          for (; t; ) {
            if ('unit' === t.getAttribute('role')) return !0
            t = o.evalXPath('children/*', t)[0]
          }
          return !1
        }
        ;(e.rightMostUnit = a),
          (e.leftMostUnit = l),
          (e.oneLeft = function (t) {
            for (; t; ) {
              if ('number' === t.tagName && '1' === t.textContent) return [t]
              if ('infixop' !== t.tagName || ('multiplication' !== t.getAttribute('role') && 'implicit' !== t.getAttribute('role'))) return []
              t = o.evalXPath('children/*', t)[0]
            }
            return []
          })
      },
      3284: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.AbstractWalker = void 0)
        const n = r(7052),
          o = r(8290),
          i = r(5740),
          s = r(4440),
          a = r(6828),
          l = r(8496),
          c = r(2298),
          u = r(4356),
          p = r(2105),
          h = r(5656),
          f = r(9552),
          d = r(9543),
          m = r(8504),
          y = r(7730),
          g = r(1214),
          b = r(179),
          v = r(1204),
          _ = r(5274)
        class S {
          constructor(t, e, r, n) {
            ;(this.node = t),
              (this.generator = e),
              (this.highlighter = r),
              (this.modifier = !1),
              (this.keyMapping = new Map([
                [l.KeyCode.UP, this.up.bind(this)],
                [l.KeyCode.DOWN, this.down.bind(this)],
                [l.KeyCode.RIGHT, this.right.bind(this)],
                [l.KeyCode.LEFT, this.left.bind(this)],
                [l.KeyCode.TAB, this.repeat.bind(this)],
                [l.KeyCode.DASH, this.expand.bind(this)],
                [l.KeyCode.SPACE, this.depth.bind(this)],
                [l.KeyCode.HOME, this.home.bind(this)],
                [l.KeyCode.X, this.summary.bind(this)],
                [l.KeyCode.Z, this.detail.bind(this)],
                [l.KeyCode.V, this.virtualize.bind(this)],
                [l.KeyCode.P, this.previous.bind(this)],
                [l.KeyCode.U, this.undo.bind(this)],
                [l.KeyCode.LESS, this.previousRules.bind(this)],
                [l.KeyCode.GREATER, this.nextRules.bind(this)]
              ])),
              (this.cursors = []),
              (this.xml_ = null),
              (this.rebuilt_ = null),
              (this.focus_ = null),
              (this.active_ = !1),
              this.node.id ? (this.id = this.node.id) : this.node.hasAttribute(S.SRE_ID_ATTR) ? (this.id = this.node.getAttribute(S.SRE_ID_ATTR)) : (this.node.setAttribute(S.SRE_ID_ATTR, S.ID_COUNTER.toString()), (this.id = S.ID_COUNTER++)),
              (this.rootNode = v.getSemanticRoot(t)),
              (this.rootId = this.rootNode.getAttribute(c.Attribute.ID)),
              (this.xmlString_ = n),
              (this.moved = b.WalkerMoves.ENTER)
          }
          getXml() {
            return this.xml_ || (this.xml_ = i.parseInput(this.xmlString_)), this.xml_
          }
          getRebuilt() {
            return this.rebuilt_ || this.rebuildStree(), this.rebuilt_
          }
          isActive() {
            return this.active_
          }
          activate() {
            this.isActive() || (this.generator.start(), this.toggleActive_())
          }
          deactivate() {
            this.isActive() && (b.WalkerState.setState(this.id, this.primaryId()), this.generator.end(), this.toggleActive_())
          }
          getFocus(t = !1) {
            return this.focus_ || (this.focus_ = this.singletonFocus(this.rootId)), t && this.updateFocus(), this.focus_
          }
          setFocus(t) {
            this.focus_ = t
          }
          getDepth() {
            return this.levels.depth() - 1
          }
          isSpeech() {
            return this.generator.modality === c.Attribute.SPEECH
          }
          focusDomNodes() {
            return this.getFocus().getDomNodes()
          }
          focusSemanticNodes() {
            return this.getFocus().getSemanticNodes()
          }
          speech() {
            const t = this.focusDomNodes()
            if (!t.length) return ''
            const e = this.specialMove()
            if (null !== e) return e
            switch (this.moved) {
              case b.WalkerMoves.DEPTH:
                return this.depth_()
              case b.WalkerMoves.SUMMARY:
                return this.summary_()
              case b.WalkerMoves.DETAIL:
                return this.detail_()
              default: {
                const e = [],
                  r = this.focusSemanticNodes()
                for (let n = 0, o = t.length; n < o; n++) {
                  const o = t[n],
                    i = r[n]
                  e.push(o ? this.generator.getSpeech(o, this.getXml()) : d.recomputeMarkup(i))
                }
                return this.mergePrefix_(e)
              }
            }
          }
          move(t) {
            const e = this.keyMapping.get(t)
            if (!e) return null
            const r = e()
            return !(!r || r === this.getFocus()) && (this.setFocus(r), this.moved === b.WalkerMoves.HOME && (this.levels = this.initLevels()), !0)
          }
          up() {
            return (this.moved = b.WalkerMoves.UP), this.getFocus()
          }
          down() {
            return (this.moved = b.WalkerMoves.DOWN), this.getFocus()
          }
          left() {
            return (this.moved = b.WalkerMoves.LEFT), this.getFocus()
          }
          right() {
            return (this.moved = b.WalkerMoves.RIGHT), this.getFocus()
          }
          repeat() {
            return (this.moved = b.WalkerMoves.REPEAT), this.getFocus().clone()
          }
          depth() {
            return (this.moved = this.isSpeech() ? b.WalkerMoves.DEPTH : b.WalkerMoves.REPEAT), this.getFocus().clone()
          }
          home() {
            this.moved = b.WalkerMoves.HOME
            return this.singletonFocus(this.rootId)
          }
          getBySemanticId(t) {
            return v.getBySemanticId(this.node, t)
          }
          primaryId() {
            return this.getFocus().getSemanticPrimary().id.toString()
          }
          expand() {
            const t = this.getFocus().getDomPrimary(),
              e = this.actionable_(t)
            return e ? ((this.moved = b.WalkerMoves.EXPAND), e.dispatchEvent(new Event('click')), this.getFocus().clone()) : this.getFocus()
          }
          expandable(t) {
            return !!this.actionable_(t) && 0 === t.childNodes.length
          }
          collapsible(t) {
            return !!this.actionable_(t) && t.childNodes.length > 0
          }
          restoreState() {
            if (!this.highlighter) return
            const t = b.WalkerState.getState(this.id)
            if (!t) return
            let e = this.getRebuilt().nodeDict[t]
            const r = []
            for (; e; ) r.push(e.id), (e = e.parent)
            for (r.pop(); r.length > 0; ) {
              this.down()
              const t = r.pop(),
                e = this.findFocusOnLevel(t)
              if (!e) break
              this.setFocus(e)
            }
            this.moved = b.WalkerMoves.ENTER
          }
          updateFocus() {
            this.setFocus(
              y.Focus.factory(
                this.getFocus().getSemanticPrimary().id.toString(),
                this.getFocus()
                  .getSemanticNodes()
                  .map((t) => t.id.toString()),
                this.getRebuilt(),
                this.node
              )
            )
          }
          rebuildStree() {
            ;(this.rebuilt_ = new g.RebuildStree(this.getXml())),
              (this.rootId = this.rebuilt_.stree.root.id.toString()),
              this.generator.setRebuilt(this.rebuilt_),
              (this.skeleton = h.SemanticSkeleton.fromTree(this.rebuilt_.stree)),
              this.skeleton.populate(),
              (this.focus_ = this.singletonFocus(this.rootId)),
              (this.levels = this.initLevels()),
              d.connectMactions(this.node, this.getXml(), this.rebuilt_.xml)
          }
          previousLevel() {
            const t = this.getFocus().getDomPrimary()
            return t ? v.getAttribute(t, c.Attribute.PARENT) : this.getFocus().getSemanticPrimary().parent.id.toString()
          }
          nextLevel() {
            const t = this.getFocus().getDomPrimary()
            let e, r
            if (t) {
              ;(e = v.splitAttribute(v.getAttribute(t, c.Attribute.CHILDREN))), (r = v.splitAttribute(v.getAttribute(t, c.Attribute.CONTENT)))
              const n = v.getAttribute(t, c.Attribute.TYPE),
                o = v.getAttribute(t, c.Attribute.ROLE)
              return this.combineContentChildren(n, o, r, e)
            }
            const n = (t) => t.id.toString(),
              o = this.getRebuilt().nodeDict[this.primaryId()]
            return (e = o.childNodes.map(n)), (r = o.contentNodes.map(n)), 0 === e.length ? [] : this.combineContentChildren(o.type, o.role, r, e)
          }
          singletonFocus(t) {
            this.getRebuilt()
            const e = this.retrieveVisuals(t)
            return this.focusFromId(t, e)
          }
          retrieveVisuals(t) {
            if (!this.skeleton) return [t]
            const e = parseInt(t, 10),
              r = this.skeleton.subtreeNodes(e)
            if (!r.length) return [t]
            r.unshift(e)
            const n = {},
              o = []
            _.updateEvaluator(this.getXml())
            for (const t of r) n[t] || (o.push(t.toString()), (n[t] = !0), this.subtreeIds(t, n))
            return o
          }
          subtreeIds(t, e) {
            const r = _.evalXPath(`//*[@data-semantic-id="${t}"]`, this.getXml())
            _.evalXPath('*//@data-semantic-id', r[0]).forEach((t) => (e[parseInt(t.textContent, 10)] = !0))
          }
          focusFromId(t, e) {
            return y.Focus.factory(t, e, this.getRebuilt(), this.node)
          }
          summary() {
            return (this.moved = this.isSpeech() ? b.WalkerMoves.SUMMARY : b.WalkerMoves.REPEAT), this.getFocus().clone()
          }
          detail() {
            return (this.moved = this.isSpeech() ? b.WalkerMoves.DETAIL : b.WalkerMoves.REPEAT), this.getFocus().clone()
          }
          specialMove() {
            return null
          }
          virtualize(t) {
            return this.cursors.push({ focus: this.getFocus(), levels: this.levels, undo: t || !this.cursors.length }), (this.levels = this.levels.clone()), this.getFocus().clone()
          }
          previous() {
            const t = this.cursors.pop()
            return t ? ((this.levels = t.levels), t.focus) : this.getFocus()
          }
          undo() {
            let t
            do {
              t = this.cursors.pop()
            } while (t && !t.undo)
            return t ? ((this.levels = t.levels), t.focus) : this.getFocus()
          }
          update(t) {
            this.generator.setOptions(t), (0, a.setup)(t).then(() => f.generator('Tree').getSpeech(this.node, this.getXml()))
          }
          nextRules() {
            const t = this.generator.getOptions()
            return 'speech' !== t.modality
              ? this.getFocus()
              : ((s.DOMAIN_TO_STYLES[t.domain] = t.style), (t.domain = 'mathspeak' === t.domain ? 'clearspeak' : 'mathspeak'), (t.style = s.DOMAIN_TO_STYLES[t.domain]), this.update(t), (this.moved = b.WalkerMoves.REPEAT), this.getFocus().clone())
          }
          nextStyle(t, e) {
            if ('mathspeak' === t) {
              const t = ['default', 'brief', 'sbrief'],
                r = t.indexOf(e)
              return -1 === r ? e : r >= t.length - 1 ? t[0] : t[r + 1]
            }
            if ('clearspeak' === t) {
              const t = m.ClearspeakPreferences.getLocalePreferences().en
              if (!t) return 'default'
              const r = m.ClearspeakPreferences.relevantPreferences(this.getFocus().getSemanticPrimary()),
                n = m.ClearspeakPreferences.findPreference(e, r),
                o = t[r].map(function (t) {
                  return t.split('_')[1]
                }),
                i = o.indexOf(n)
              if (-1 === i) return e
              const s = i >= o.length - 1 ? o[0] : o[i + 1]
              return m.ClearspeakPreferences.addPreference(e, r, s)
            }
            return e
          }
          previousRules() {
            const t = this.generator.getOptions()
            return 'speech' !== t.modality ? this.getFocus() : ((t.style = this.nextStyle(t.domain, t.style)), this.update(t), (this.moved = b.WalkerMoves.REPEAT), this.getFocus().clone())
          }
          refocus() {
            let t,
              e = this.getFocus()
            for (; !e.getNodes().length; ) {
              t = this.levels.peek()
              const r = this.up()
              if (!r) break
              this.setFocus(r), (e = this.getFocus(!0))
            }
            this.levels.push(t), this.setFocus(e)
          }
          toggleActive_() {
            this.active_ = !this.active_
          }
          mergePrefix_(t, e = []) {
            const r = this.isSpeech() ? this.prefix_() : ''
            r && t.unshift(r)
            const n = this.isSpeech() ? this.postfix_() : ''
            return n && t.push(n), o.finalize(o.merge(e.concat(t)))
          }
          prefix_() {
            const t = this.getFocus().getDomNodes(),
              e = this.getFocus().getSemanticNodes()
            return t[0] ? v.getAttribute(t[0], c.Attribute.PREFIX) : d.retrievePrefix(e[0])
          }
          postfix_() {
            const t = this.getFocus().getDomNodes()
            return t[0] ? v.getAttribute(t[0], c.Attribute.POSTFIX) : ''
          }
          depth_() {
            const t = p.Grammar.getInstance().getParameter('depth')
            p.Grammar.getInstance().setParameter('depth', !0)
            const e = this.getFocus().getDomPrimary(),
              r = this.expandable(e) ? u.LOCALE.MESSAGES.navigate.EXPANDABLE : this.collapsible(e) ? u.LOCALE.MESSAGES.navigate.COLLAPSIBLE : '',
              i = u.LOCALE.MESSAGES.navigate.LEVEL + ' ' + this.getDepth(),
              s = this.getFocus().getSemanticNodes(),
              a = d.retrievePrefix(s[0]),
              l = [new n.AuditoryDescription({ text: i, personality: {} }), new n.AuditoryDescription({ text: a, personality: {} }), new n.AuditoryDescription({ text: r, personality: {} })]
            return p.Grammar.getInstance().setParameter('depth', t), o.finalize(o.markup(l))
          }
          actionable_(t) {
            const e = null == t ? void 0 : t.parentNode
            return e && this.highlighter.isMactionNode(e) ? e : null
          }
          summary_() {
            const t = this.getFocus().getSemanticPrimary().id.toString(),
              e = this.getRebuilt().xml.getAttribute('id') === t ? this.getRebuilt().xml : i.querySelectorAllByAttrValue(this.getRebuilt().xml, 'id', t)[0],
              r = d.retrieveSummary(e)
            return this.mergePrefix_([r])
          }
          detail_() {
            const t = this.getFocus().getSemanticPrimary().id.toString(),
              e = this.getRebuilt().xml.getAttribute('id') === t ? this.getRebuilt().xml : i.querySelectorAllByAttrValue(this.getRebuilt().xml, 'id', t)[0],
              r = e.getAttribute('alternative')
            e.removeAttribute('alternative')
            const n = d.computeMarkup(e),
              o = this.mergePrefix_([n])
            return e.setAttribute('alternative', r), o
          }
        }
        ;(e.AbstractWalker = S), (S.ID_COUNTER = 0), (S.SRE_ID_ATTR = 'sre-explorer-id')
      },
      162: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.DummyWalker = void 0)
        const n = r(3284)
        class o extends n.AbstractWalker {
          up() {
            return null
          }
          down() {
            return null
          }
          left() {
            return null
          }
          right() {
            return null
          }
          repeat() {
            return null
          }
          depth() {
            return null
          }
          home() {
            return null
          }
          getDepth() {
            return 0
          }
          initLevels() {
            return null
          }
          combineContentChildren(t, e, r, n) {
            return []
          }
          findFocusOnLevel(t) {
            return null
          }
        }
        e.DummyWalker = o
      },
      7730: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Focus = void 0)
        const n = r(1204)
        class o {
          constructor(t, e) {
            ;(this.nodes = t), (this.primary = e), (this.domNodes = []), (this.domPrimary_ = null), (this.allNodes = [])
          }
          static factory(t, e, r, i) {
            const s = (t) => n.getBySemanticId(i, t),
              a = r.nodeDict,
              l = s(t),
              c = e.map(s),
              u = e.map(function (t) {
                return a[t]
              }),
              p = new o(u, a[t])
            return (p.domNodes = c), (p.domPrimary_ = l), (p.allNodes = o.generateAllVisibleNodes_(e, c, a, i)), p
          }
          static generateAllVisibleNodes_(t, e, r, i) {
            const s = (t) => n.getBySemanticId(i, t)
            let a = []
            for (let n = 0, l = t.length; n < l; n++) {
              if (e[n]) {
                a.push(e[n])
                continue
              }
              const l = r[t[n]]
              if (!l) continue
              const c = l.childNodes.map(function (t) {
                  return t.id.toString()
                }),
                u = c.map(s)
              a = a.concat(o.generateAllVisibleNodes_(c, u, r, i))
            }
            return a
          }
          getSemanticPrimary() {
            return this.primary
          }
          getSemanticNodes() {
            return this.nodes
          }
          getNodes() {
            return this.allNodes
          }
          getDomNodes() {
            return this.domNodes
          }
          getDomPrimary() {
            return this.domPrimary_
          }
          toString() {
            return 'Primary:' + this.domPrimary_ + ' Nodes:' + this.domNodes
          }
          clone() {
            const t = new o(this.nodes, this.primary)
            return (t.domNodes = this.domNodes), (t.domPrimary_ = this.domPrimary_), (t.allNodes = this.allNodes), t
          }
        }
        e.Focus = o
      },
      9797: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.Levels = void 0)
        class r {
          constructor() {
            this.level_ = []
          }
          push(t) {
            this.level_.push(t)
          }
          pop() {
            return this.level_.pop()
          }
          peek() {
            return this.level_[this.level_.length - 1] || null
          }
          indexOf(t) {
            const e = this.peek()
            return e ? e.indexOf(t) : null
          }
          find(t) {
            const e = this.peek()
            if (!e) return null
            for (let r = 0, n = e.length; r < n; r++) if (t(e[r])) return e[r]
            return null
          }
          get(t) {
            const e = this.peek()
            return !e || t < 0 || t >= e.length ? null : e[t]
          }
          depth() {
            return this.level_.length
          }
          clone() {
            const t = new r()
            return (t.level_ = this.level_.slice(0)), t
          }
          toString() {
            let t = ''
            for (let e, r = 0; (e = this.level_[r]); r++)
              t +=
                '\n' +
                e.map(function (t) {
                  return t.toString()
                })
            return t
          }
        }
        e.Levels = r
      },
      1214: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.RebuildStree = void 0)
        const n = r(5740),
          o = r(2298),
          i = r(3588),
          s = r(6537),
          a = r(3308),
          l = r(5656),
          c = r(7075),
          u = r(4795),
          p = r(1204)
        class h {
          constructor(t) {
            ;(this.mathml = t),
              (this.factory = new s.SemanticNodeFactory()),
              (this.nodeDict = {}),
              (this.mmlRoot = p.getSemanticRoot(t)),
              (this.streeRoot = this.assembleTree(this.mmlRoot)),
              (this.stree = c.SemanticTree.fromNode(this.streeRoot, this.mathml)),
              (this.xml = this.stree.xml()),
              a.default.getInstance().setNodeFactory(this.factory)
          }
          static addAttributes(t, e, r) {
            r && 1 === e.childNodes.length && e.childNodes[0].nodeType !== n.NodeType.TEXT_NODE && u.addAttributes(t, e.childNodes[0]), u.addAttributes(t, e)
          }
          static textContent(t, e, r) {
            if (!r && e.textContent) return void (t.textContent = e.textContent)
            const n = p.splitAttribute(p.getAttribute(e, o.Attribute.OPERATOR))
            n.length > 1 && (t.textContent = n[1])
          }
          static isPunctuated(t) {
            return !l.SemanticSkeleton.simpleCollapseStructure(t) && t[1] && l.SemanticSkeleton.contentCollapseStructure(t[1])
          }
          getTree() {
            return this.stree
          }
          assembleTree(t) {
            const e = this.makeNode(t),
              r = p.splitAttribute(p.getAttribute(t, o.Attribute.CHILDREN)),
              n = p.splitAttribute(p.getAttribute(t, o.Attribute.CONTENT))
            if ((h.addAttributes(e, t, !(r.length || n.length)), 0 === n.length && 0 === r.length)) return h.textContent(e, t), e
            if (n.length > 0) {
              const t = p.getBySemanticId(this.mathml, n[0])
              t && h.textContent(e, t, !0)
            }
            ;(e.contentNodes = n.map((t) => this.setParent(t, e))), (e.childNodes = r.map((t) => this.setParent(t, e)))
            const i = p.getAttribute(t, o.Attribute.COLLAPSED)
            return i ? this.postProcess(e, i) : e
          }
          makeNode(t) {
            const e = p.getAttribute(t, o.Attribute.TYPE),
              r = p.getAttribute(t, o.Attribute.ROLE),
              n = p.getAttribute(t, o.Attribute.FONT),
              i = p.getAttribute(t, o.Attribute.ANNOTATION) || '',
              s = p.getAttribute(t, o.Attribute.ID),
              a = p.getAttribute(t, o.Attribute.EMBELLISHED),
              l = p.getAttribute(t, o.Attribute.FENCEPOINTER),
              c = this.createNode(parseInt(s, 10))
            return (c.type = e), (c.role = r), (c.font = n || 'unknown'), c.parseAnnotation(i), l && (c.fencePointer = l), a && (c.embellished = a), c
          }
          makePunctuation(t) {
            const e = this.createNode(t)
            return e.updateContent((0, i.invisibleComma)()), (e.role = 'dummy'), e
          }
          makePunctuated(t, e, r) {
            const n = this.createNode(e[0])
            ;(n.type = 'punctuated'), (n.embellished = t.embellished), (n.fencePointer = t.fencePointer), (n.role = r)
            const o = e.splice(1, 1)[0].slice(1)
            ;(n.contentNodes = o.map(this.makePunctuation.bind(this))), this.collapsedChildren_(e)
          }
          makeEmpty(t, e, r) {
            const n = this.createNode(e)
            ;(n.type = 'empty'), (n.embellished = t.embellished), (n.fencePointer = t.fencePointer), (n.role = r)
          }
          makeIndex(t, e, r) {
            if (h.isPunctuated(e)) return this.makePunctuated(t, e, r), void (e = e[0])
            l.SemanticSkeleton.simpleCollapseStructure(e) && !this.nodeDict[e.toString()] && this.makeEmpty(t, e, r)
          }
          postProcess(t, e) {
            const r = l.SemanticSkeleton.fromString(e).array
            if ('subsup' === t.type) {
              const e = this.createNode(r[1][0])
              return (
                (e.type = 'subscript'),
                (e.role = 'subsup'),
                (t.type = 'superscript'),
                (e.embellished = t.embellished),
                (e.fencePointer = t.fencePointer),
                this.makeIndex(t, r[1][2], 'rightsub'),
                this.makeIndex(t, r[2], 'rightsuper'),
                this.collapsedChildren_(r),
                t
              )
            }
            if ('subscript' === t.type) return this.makeIndex(t, r[2], 'rightsub'), this.collapsedChildren_(r), t
            if ('superscript' === t.type) return this.makeIndex(t, r[2], 'rightsuper'), this.collapsedChildren_(r), t
            if ('tensor' === t.type) return this.makeIndex(t, r[2], 'leftsub'), this.makeIndex(t, r[3], 'leftsuper'), this.makeIndex(t, r[4], 'rightsub'), this.makeIndex(t, r[5], 'rightsuper'), this.collapsedChildren_(r), t
            if ('punctuated' === t.type) {
              if (h.isPunctuated(r)) {
                const e = r.splice(1, 1)[0].slice(1)
                t.contentNodes = e.map(this.makePunctuation.bind(this))
              }
              return t
            }
            if ('underover' === t.type) {
              const e = this.createNode(r[1][0])
              return (
                'overaccent' === t.childNodes[1].role ? ((e.type = 'overscore'), (t.type = 'underscore')) : ((e.type = 'underscore'), (t.type = 'overscore')),
                (e.role = 'underover'),
                (e.embellished = t.embellished),
                (e.fencePointer = t.fencePointer),
                this.collapsedChildren_(r),
                t
              )
            }
            return t
          }
          createNode(t) {
            const e = this.factory.makeNode(t)
            return (this.nodeDict[t.toString()] = e), e
          }
          collapsedChildren_(t) {
            const e = (t) => {
              const r = this.nodeDict[t[0]]
              r.childNodes = []
              for (let n = 1, o = t.length; n < o; n++) {
                const o = t[n]
                r.childNodes.push(l.SemanticSkeleton.simpleCollapseStructure(o) ? this.nodeDict[o] : e(o))
              }
              return r
            }
            e(t)
          }
          setParent(t, e) {
            const r = p.getBySemanticId(this.mathml, t),
              n = this.assembleTree(r)
            return (n.parent = e), n
          }
        }
        e.RebuildStree = h
      },
      6295: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SemanticWalker = void 0)
        const n = r(3284),
          o = r(9797)
        class i extends n.AbstractWalker {
          constructor(t, e, r, n) {
            super(t, e, r, n), (this.node = t), (this.generator = e), (this.highlighter = r), (this.levels = null), this.restoreState()
          }
          initLevels() {
            const t = new o.Levels()
            return t.push([this.getFocus()]), t
          }
          up() {
            super.up()
            const t = this.previousLevel()
            if (!t) return null
            this.levels.pop()
            return this.levels.find(function (e) {
              return e.getSemanticNodes().some(function (e) {
                return e.id.toString() === t
              })
            })
          }
          down() {
            super.down()
            const t = this.nextLevel()
            return 0 === t.length ? null : (this.levels.push(t), t[0])
          }
          combineContentChildren(t, e, r, n) {
            switch (t) {
              case 'relseq':
              case 'infixop':
              case 'multirel':
                return this.makePairList(n, r)
              case 'prefixop':
                return [this.focusFromId(n[0], r.concat(n))]
              case 'postfixop':
                return [this.focusFromId(n[0], n.concat(r))]
              case 'matrix':
              case 'vector':
              case 'fenced':
                return [this.focusFromId(n[0], [r[0], n[0], r[1]])]
              case 'cases':
                return [this.focusFromId(n[0], [r[0], n[0]])]
              case 'punctuated':
                return 'text' === e ? n.map(this.singletonFocus.bind(this)) : n.length === r.length ? r.map(this.singletonFocus.bind(this)) : this.combinePunctuations(n, r, [], [])
              case 'appl':
                return [this.focusFromId(n[0], [n[0], r[0]]), this.singletonFocus(n[1])]
              case 'root':
                return [this.singletonFocus(n[1]), this.singletonFocus(n[0])]
              default:
                return n.map(this.singletonFocus.bind(this))
            }
          }
          combinePunctuations(t, e, r, n) {
            if (0 === t.length) return n
            const o = t.shift(),
              i = e.shift()
            return o === i ? (r.push(i), this.combinePunctuations(t, e, r, n)) : (e.unshift(i), r.push(o), t.length === e.length ? (n.push(this.focusFromId(o, r.concat(e))), n) : (n.push(this.focusFromId(o, r)), this.combinePunctuations(t, e, [], n)))
          }
          makePairList(t, e) {
            if (0 === t.length) return []
            if (1 === t.length) return [this.singletonFocus(t[0])]
            const r = [this.singletonFocus(t.shift())]
            for (let n = 0, o = t.length; n < o; n++) r.push(this.focusFromId(t[n], [e[n], t[n]]))
            return r
          }
          left() {
            super.left()
            const t = this.levels.indexOf(this.getFocus())
            if (null === t) return null
            const e = this.levels.get(t - 1)
            return e || null
          }
          right() {
            super.right()
            const t = this.levels.indexOf(this.getFocus())
            if (null === t) return null
            const e = this.levels.get(t + 1)
            return e || null
          }
          findFocusOnLevel(t) {
            return this.levels.find((e) => e.getSemanticPrimary().id === t)
          }
        }
        e.SemanticWalker = i
      },
      9806: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.SyntaxWalker = void 0)
        const n = r(707),
          o = r(3284),
          i = r(9797)
        class s extends o.AbstractWalker {
          constructor(t, e, r, n) {
            super(t, e, r, n), (this.node = t), (this.generator = e), (this.highlighter = r), (this.levels = null), this.restoreState()
          }
          initLevels() {
            const t = new i.Levels()
            return t.push([this.primaryId()]), t
          }
          up() {
            super.up()
            const t = this.previousLevel()
            return t ? (this.levels.pop(), this.singletonFocus(t)) : null
          }
          down() {
            super.down()
            const t = this.nextLevel()
            if (0 === t.length) return null
            const e = this.singletonFocus(t[0])
            return e && this.levels.push(t), e
          }
          combineContentChildren(t, e, r, o) {
            switch (t) {
              case 'relseq':
              case 'infixop':
              case 'multirel':
                return (0, n.interleaveLists)(o, r)
              case 'prefixop':
                return r.concat(o)
              case 'postfixop':
                return o.concat(r)
              case 'matrix':
              case 'vector':
              case 'fenced':
                return o.unshift(r[0]), o.push(r[1]), o
              case 'cases':
                return o.unshift(r[0]), o
              case 'punctuated':
                return 'text' === e ? (0, n.interleaveLists)(o, r) : o
              case 'appl':
                return [o[0], r[0], o[1]]
              case 'root':
                return [o[1], o[0]]
              default:
                return o
            }
          }
          left() {
            super.left()
            const t = this.levels.indexOf(this.primaryId())
            if (null === t) return null
            const e = this.levels.get(t - 1)
            return e ? this.singletonFocus(e) : null
          }
          right() {
            super.right()
            const t = this.levels.indexOf(this.primaryId())
            if (null === t) return null
            const e = this.levels.get(t + 1)
            return e ? this.singletonFocus(e) : null
          }
          findFocusOnLevel(t) {
            return this.singletonFocus(t.toString())
          }
          focusDomNodes() {
            return [this.getFocus().getDomPrimary()]
          }
          focusSemanticNodes() {
            return [this.getFocus().getSemanticPrimary()]
          }
        }
        e.SyntaxWalker = s
      },
      1799: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.TableWalker = void 0)
        const n = r(5740),
          o = r(8496),
          i = r(9806),
          s = r(179)
        class a extends i.SyntaxWalker {
          constructor(t, e, r, n) {
            super(t, e, r, n),
              (this.node = t),
              (this.generator = e),
              (this.highlighter = r),
              (this.firstJump = null),
              (this.key_ = null),
              (this.row_ = 0),
              (this.currentTable_ = null),
              this.keyMapping.set(o.KeyCode.ZERO, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.ONE, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.TWO, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.THREE, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.FOUR, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.FIVE, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.SIX, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.SEVEN, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.EIGHT, this.jumpCell.bind(this)),
              this.keyMapping.set(o.KeyCode.NINE, this.jumpCell.bind(this))
          }
          move(t) {
            this.key_ = t
            const e = super.move(t)
            return (this.modifier = !1), e
          }
          up() {
            return (this.moved = s.WalkerMoves.UP), this.eligibleCell_() ? this.verticalMove_(!1) : super.up()
          }
          down() {
            return (this.moved = s.WalkerMoves.DOWN), this.eligibleCell_() ? this.verticalMove_(!0) : super.down()
          }
          jumpCell() {
            if (!this.isInTable_() || null === this.key_) return this.getFocus()
            if (this.moved === s.WalkerMoves.ROW) {
              this.moved = s.WalkerMoves.CELL
              const t = this.key_ - o.KeyCode.ZERO
              return this.isLegalJump_(this.row_, t) ? this.jumpCell_(this.row_, t) : this.getFocus()
            }
            const t = this.key_ - o.KeyCode.ZERO
            return t > this.currentTable_.childNodes.length ? this.getFocus() : ((this.row_ = t), (this.moved = s.WalkerMoves.ROW), this.getFocus().clone())
          }
          undo() {
            const t = super.undo()
            return t === this.firstJump && (this.firstJump = null), t
          }
          eligibleCell_() {
            const t = this.getFocus().getSemanticPrimary()
            return this.modifier && 'cell' === t.type && -1 !== a.ELIGIBLE_CELL_ROLES.indexOf(t.role)
          }
          verticalMove_(t) {
            const e = this.previousLevel()
            if (!e) return null
            const r = this.getFocus(),
              n = this.levels.indexOf(this.primaryId()),
              o = this.levels.pop(),
              i = this.levels.indexOf(e),
              s = this.levels.get(t ? i + 1 : i - 1)
            if (!s) return this.levels.push(o), null
            this.setFocus(this.singletonFocus(s))
            const a = this.nextLevel()
            return a[n] ? (this.levels.push(a), this.singletonFocus(a[n])) : (this.setFocus(r), this.levels.push(o), null)
          }
          jumpCell_(t, e) {
            this.firstJump ? this.virtualize(!1) : ((this.firstJump = this.getFocus()), this.virtualize(!0))
            const r = this.currentTable_.id.toString()
            let n
            do {
              n = this.levels.pop()
            } while (-1 === n.indexOf(r))
            this.levels.push(n), this.setFocus(this.singletonFocus(r)), this.levels.push(this.nextLevel())
            const o = this.currentTable_.childNodes[t - 1]
            return this.setFocus(this.singletonFocus(o.id.toString())), this.levels.push(this.nextLevel()), this.singletonFocus(o.childNodes[e - 1].id.toString())
          }
          isLegalJump_(t, e) {
            const r = n.querySelectorAllByAttrValue(this.getRebuilt().xml, 'id', this.currentTable_.id.toString())[0]
            if (!r || r.hasAttribute('alternative')) return !1
            const o = this.currentTable_.childNodes[t - 1]
            if (!o) return !1
            const i = n.querySelectorAllByAttrValue(r, 'id', o.id.toString())[0]
            return !(!i || i.hasAttribute('alternative')) && !(!o || !o.childNodes[e - 1])
          }
          isInTable_() {
            let t = this.getFocus().getSemanticPrimary()
            for (; t; ) {
              if (-1 !== a.ELIGIBLE_TABLE_TYPES.indexOf(t.type)) return (this.currentTable_ = t), !0
              t = t.parent
            }
            return !1
          }
        }
        ;(e.TableWalker = a), (a.ELIGIBLE_CELL_ROLES = ['determinant', 'rowvector', 'binomial', 'squarematrix', 'multiline', 'matrix', 'vector', 'cases', 'table']), (a.ELIGIBLE_TABLE_TYPES = ['multiline', 'matrix', 'vector', 'cases', 'table'])
      },
      179: function (t, e) {
        Object.defineProperty(e, '__esModule', { value: !0 }),
          (e.WalkerState = e.WalkerMoves = void 0),
          (function (t) {
            ;(t.UP = 'up'),
              (t.DOWN = 'down'),
              (t.LEFT = 'left'),
              (t.RIGHT = 'right'),
              (t.REPEAT = 'repeat'),
              (t.DEPTH = 'depth'),
              (t.ENTER = 'enter'),
              (t.EXPAND = 'expand'),
              (t.HOME = 'home'),
              (t.SUMMARY = 'summary'),
              (t.DETAIL = 'detail'),
              (t.ROW = 'row'),
              (t.CELL = 'cell')
          })(e.WalkerMoves || (e.WalkerMoves = {}))
        class r {
          static resetState(t) {
            delete r.STATE[t]
          }
          static setState(t, e) {
            r.STATE[t] = e
          }
          static getState(t) {
            return r.STATE[t]
          }
        }
        ;(e.WalkerState = r), (r.STATE = {})
      },
      3362: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.walkerMapping_ = e.walker = void 0)
        const n = r(162),
          o = r(6295),
          i = r(9806),
          s = r(1799)
        ;(e.walker = function (t, r, n, o, i) {
          return (e.walkerMapping_[t.toLowerCase()] || e.walkerMapping_.dummy)(r, n, o, i)
        }),
          (e.walkerMapping_ = { dummy: (t, e, r, o) => new n.DummyWalker(t, e, r, o), semantic: (t, e, r, n) => new o.SemanticWalker(t, e, r, n), syntax: (t, e, r, n) => new i.SyntaxWalker(t, e, r, n), table: (t, e, r, n) => new s.TableWalker(t, e, r, n) })
      },
      1204: function (t, e, r) {
        Object.defineProperty(e, '__esModule', { value: !0 }), (e.getBySemanticId = e.getSemanticRoot = e.getAttribute = e.splitAttribute = void 0)
        const n = r(5740),
          o = r(2298)
        ;(e.splitAttribute = function (t) {
          return t ? t.split(/,/) : []
        }),
          (e.getAttribute = function (t, e) {
            return t.getAttribute(e)
          }),
          (e.getSemanticRoot = function (t) {
            if (t.hasAttribute(o.Attribute.TYPE) && !t.hasAttribute(o.Attribute.PARENT)) return t
            const e = n.querySelectorAllByAttr(t, o.Attribute.TYPE)
            for (let t, r = 0; (t = e[r]); r++) if (!t.hasAttribute(o.Attribute.PARENT)) return t
            return t
          }),
          (e.getBySemanticId = function (t, e) {
            return t.getAttribute(o.Attribute.ID) === e ? t : n.querySelectorAllByAttrValue(t, o.Attribute.ID, e)[0]
          })
      }
    },
    __webpack_module_cache__ = {}
  function __webpack_require__(t) {
    var e = __webpack_module_cache__[t]
    if (void 0 !== e) return e.exports
    var r = (__webpack_module_cache__[t] = { exports: {} })
    return __webpack_modules__[t].call(r.exports, r, r.exports, __webpack_require__), r.exports
  }
  __webpack_require__.g = (function () {
    if ('object' == typeof globalThis) return globalThis
    try {
      return this || new Function('return this')()
    } catch (t) {
      if ('object' == typeof window) return window
    }
  })()
  var __webpack_exports__ = {}
  !(function () {
    var t = __webpack_require__(9515),
      e = __webpack_require__(3282),
      r = __webpack_require__(235),
      n = __webpack_require__(265),
      o = __webpack_require__(2388)
    function i(t, e) {
      ;(null == e || e > t.length) && (e = t.length)
      for (var r = 0, n = new Array(e); r < e; r++) n[r] = t[r]
      return n
    }
    MathJax.loader && MathJax.loader.checkVersion('startup', e.VERSION, 'startup'), (0, t.combineWithMathJax)({ _: { components: { loader: r, package: n, startup: o } } })
    var s,
      a = {
        'a11y/semantic-enrich': ['input/mml', 'a11y/sre'],
        'a11y/complexity': ['a11y/semantic-enrich'],
        'a11y/explorer': ['a11y/semantic-enrich', 'ui/menu'],
        '[mml]/mml3': ['input/mml'],
        '[tex]/all-packages': ['input/tex-base'],
        '[tex]/action': ['input/tex-base', '[tex]/newcommand'],
        '[tex]/autoload': ['input/tex-base', '[tex]/require'],
        '[tex]/ams': ['input/tex-base'],
        '[tex]/amscd': ['input/tex-base'],
        '[tex]/bbox': ['input/tex-base', '[tex]/ams', '[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]/centernot': ['input/tex-base'],
        '[tex]/color': ['input/tex-base'],
        '[tex]/colorv2': ['input/tex-base'],
        '[tex]/colortbl': ['input/tex-base', '[tex]/color'],
        '[tex]/configmacros': ['input/tex-base', '[tex]/newcommand'],
        '[tex]/enclose': ['input/tex-base'],
        '[tex]/extpfeil': ['input/tex-base', '[tex]/newcommand', '[tex]/ams'],
        '[tex]/html': ['input/tex-base'],
        '[tex]/mathtools': ['input/tex-base', '[tex]/newcommand', '[tex]/ams'],
        '[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]/textcomp': ['input/tex-base', '[tex]/textmacros'],
        '[tex]/textmacros': ['input/tex-base'],
        '[tex]/unicode': ['input/tex-base'],
        '[tex]/verb': ['input/tex-base'],
        '[tex]/cases': ['[tex]/empheq'],
        '[tex]/empheq': ['input/tex-base', '[tex]/ams']
      },
      l = Array.from(Object.keys(a)).filter(function (t) {
        return '[tex]' === t.substr(0, 5) && '[tex]/autoload' !== t && '[tex]/colorv2' !== t && '[tex]/all-packages' !== t
      }),
      c = {
        startup: ['loader'],
        'input/tex': ['input/tex-base', '[tex]/ams', '[tex]/newcommand', '[tex]/noundefined', '[tex]/require', '[tex]/autoload', '[tex]/configmacros'],
        'input/tex-full': ['input/tex-base', '[tex]/all-packages'].concat(
          ((s = l),
          (function (t) {
            if (Array.isArray(t)) return i(t)
          })(s) ||
            (function (t) {
              if (('undefined' != typeof Symbol && null != t[Symbol.iterator]) || null != t['@@iterator']) return Array.from(t)
            })(s) ||
            (function (t, e) {
              if (t) {
                if ('string' == typeof t) return i(t, e)
                var r = Object.prototype.toString.call(t).slice(8, -1)
                return 'Object' === r && t.constructor && (r = t.constructor.name), 'Map' === r || 'Set' === r ? Array.from(t) : 'Arguments' === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? i(t, e) : void 0
              }
            })(s) ||
            (function () {
              throw new TypeError('Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.')
            })())
        ),
        '[tex]/all-packages': l
      }
    ;(0, t.combineDefaults)(MathJax.config.loader, 'dependencies', a),
      (0, t.combineDefaults)(MathJax.config.loader, 'paths', { tex: '[mathjax]/input/tex/extensions', mml: '[mathjax]/input/mml/extensions', sre: '[mathjax]/sre/mathmaps' }),
      (0, t.combineDefaults)(MathJax.config.loader, 'provides', c),
      (0, t.combineDefaults)(MathJax.config.loader, 'source', { '[tex]/amsCd': '[tex]/amscd', '[tex]/colorV2': '[tex]/colorv2', '[tex]/configMacros': '[tex]/configmacros', '[tex]/tagFormat': '[tex]/tagformat' }),
      r.Loader.preLoad('loader', 'startup', 'core', 'input/tex', 'input/mml', 'output/chtml', 'output/chtml/fonts/tex.js', 'ui/menu', 'a11y/assistive-mml')
    var u = __webpack_require__(444),
      p = __webpack_require__(6191),
      h = __webpack_require__(5009),
      f = __webpack_require__(3494),
      d = __webpack_require__(3670),
      m = __webpack_require__(805),
      y = __webpack_require__(9206),
      g = __webpack_require__(5722),
      b = __webpack_require__(4474),
      v = __webpack_require__(9e3),
      _ = __webpack_require__(91),
      S = __webpack_require__(6336),
      M = __webpack_require__(1759),
      O = __webpack_require__(3909),
      x = __webpack_require__(9007),
      E = __webpack_require__(3948),
      A = __webpack_require__(9145),
      C = __webpack_require__(142),
      T = __webpack_require__(7590),
      N = __webpack_require__(3233),
      w = __webpack_require__(1334),
      L = __webpack_require__(6661),
      I = __webpack_require__(1581),
      P = __webpack_require__(5410),
      R = __webpack_require__(6850),
      k = __webpack_require__(3985),
      j = __webpack_require__(450),
      B = __webpack_require__(6405),
      D = __webpack_require__(3050),
      F = __webpack_require__(2756),
      H = __webpack_require__(7238),
      U = __webpack_require__(5741),
      X = __webpack_require__(6145),
      V = __webpack_require__(9878),
      q = __webpack_require__(7265),
      W = __webpack_require__(6030),
      G = __webpack_require__(7131),
      z = __webpack_require__(1314),
      J = __webpack_require__(4461),
      K = __webpack_require__(1349),
      $ = __webpack_require__(4359),
      Y = __webpack_require__(4770),
      Z = __webpack_require__(5022),
      Q = __webpack_require__(5184),
      tt = __webpack_require__(9102),
      et = __webpack_require__(6325),
      rt = __webpack_require__(4082),
      nt = __webpack_require__(9259),
      ot = __webpack_require__(2975),
      it = __webpack_require__(4574),
      st = __webpack_require__(4596),
      at = __webpack_require__(7860),
      lt = __webpack_require__(8823),
      ct = __webpack_require__(8912),
      ut = __webpack_require__(3811),
      pt = __webpack_require__(6272),
      ht = __webpack_require__(3683),
      ft = __webpack_require__(5138),
      dt = __webpack_require__(3726),
      mt = __webpack_require__(3363),
      yt = __webpack_require__(3335),
      gt = __webpack_require__(5713),
      bt = __webpack_require__(9923),
      vt = __webpack_require__(6469),
      _t = __webpack_require__(6751),
      St = __webpack_require__(5368),
      Mt = __webpack_require__(7525),
      Ot = __webpack_require__(103),
      xt = __webpack_require__(7233),
      Et = __webpack_require__(8666),
      At = __webpack_require__(4542),
      Ct = __webpack_require__(4139),
      Tt = __webpack_require__(8054),
      Nt = __webpack_require__(6010),
      wt = __webpack_require__(7875),
      Lt = __webpack_require__(505)
    MathJax.loader && MathJax.loader.checkVersion('core', e.VERSION, 'core'),
      (0, t.combineWithMathJax)({
        _: {
          adaptors: { HTMLAdaptor: u, browserAdaptor: p },
          components: { global: t },
          core: {
            DOMAdaptor: h,
            FindMath: f,
            Handler: d,
            HandlerList: m,
            InputJax: y,
            MathDocument: g,
            MathItem: b,
            MathList: v,
            MmlTree: {
              Attributes: _,
              MML: S,
              MathMLVisitor: M,
              MmlFactory: O,
              MmlNode: x,
              MmlNodes: {
                TeXAtom: E,
                maction: A,
                maligngroup: C,
                malignmark: T,
                math: N,
                mathchoice: w,
                menclose: L,
                merror: I,
                mfenced: P,
                mfrac: R,
                mglyph: k,
                mi: j,
                mmultiscripts: B,
                mn: D,
                mo: F,
                mpadded: H,
                mphantom: U,
                mroot: X,
                mrow: V,
                ms: q,
                mspace: W,
                msqrt: G,
                mstyle: z,
                msubsup: J,
                mtable: K,
                mtd: $,
                mtext: Y,
                mtr: Z,
                munderover: Q,
                semantics: tt
              },
              MmlVisitor: et,
              OperatorDictionary: rt,
              SerializedMmlVisitor: nt
            },
            OutputJax: ot,
            Tree: { Factory: it, Node: st, NodeFactory: at, Visitor: lt, Wrapper: ct, WrapperFactory: ut }
          },
          handlers: { html_ts: pt, html: { HTMLDocument: ht, HTMLDomStrings: ft, HTMLHandler: dt, HTMLMathItem: mt, HTMLMathList: yt } },
          mathjax: gt,
          util: { AsyncLoad: bt, BBox: vt, BitField: _t, Entities: St, FunctionList: Mt, LinkedList: Ot, Options: xt, PrioritizedList: Et, Retries: At, StyleList: Ct, Styles: Tt, lengths: Nt, numeric: wt, string: Lt }
        }
      }),
      MathJax.startup && (MathJax.startup.registerConstructor('HTMLHandler', dt.HTMLHandler), MathJax.startup.registerConstructor('browserAdaptor', p.browserAdaptor), MathJax.startup.useHandler('HTMLHandler'), MathJax.startup.useAdaptor('browserAdaptor')),
      MathJax.loader &&
        (MathJax._.mathjax.mathjax.asyncLoad = function (t) {
          return MathJax.loader.load(t)
        })
    var It = __webpack_require__(8462),
      Pt = __webpack_require__(9899),
      Rt = __webpack_require__(4676),
      kt = __webpack_require__(7073),
      jt = __webpack_require__(2947),
      Bt = __webpack_require__(8929),
      Dt = __webpack_require__(1256),
      Ft = __webpack_require__(5450),
      Ht = __webpack_require__(8562),
      Ut = __webpack_require__(1130),
      Xt = __webpack_require__(9497),
      Vt = __webpack_require__(8292),
      qt = __webpack_require__(5453),
      Wt = __webpack_require__(8803),
      Gt = __webpack_require__(9140),
      zt = __webpack_require__(6521),
      Jt = __webpack_require__(8317),
      Kt = __webpack_require__(3971),
      $t = __webpack_require__(8417),
      Yt = __webpack_require__(8021),
      Zt = __webpack_require__(2790),
      Qt = __webpack_require__(4387),
      te = __webpack_require__(1275),
      ee = __webpack_require__(2942),
      re = __webpack_require__(1181),
      ne = __webpack_require__(7693),
      oe = __webpack_require__(8458),
      ie = __webpack_require__(1496),
      se = __webpack_require__(6793),
      ae = __webpack_require__(1110),
      le = __webpack_require__(5579),
      ce = __webpack_require__(4898),
      ue = __webpack_require__(7741)
    MathJax.loader && MathJax.loader.checkVersion('input/tex', e.VERSION, 'input'),
      (0, t.combineWithMathJax)({
        _: {
          input: {
            tex_ts: It,
            tex: {
              Configuration: Pt,
              FilterUtil: Rt,
              FindTeX: kt,
              MapHandler: jt,
              NodeFactory: Bt,
              NodeUtil: Dt,
              ParseMethods: Ft,
              ParseOptions: Ht,
              ParseUtil: Ut,
              Stack: Xt,
              StackItem: Vt,
              StackItemFactory: qt,
              Symbol: Wt,
              SymbolMap: Gt,
              Tags: zt,
              TexConstants: Jt,
              TexError: Kt,
              TexParser: $t,
              ams: { AmsConfiguration: Yt, AmsItems: Zt, AmsMethods: Qt },
              autoload: { AutoloadConfiguration: te },
              base: { BaseConfiguration: ee, BaseItems: re, BaseMethods: ne },
              configmacros: { ConfigMacrosConfiguration: oe },
              newcommand: { NewcommandConfiguration: ie, NewcommandItems: se, NewcommandMethods: ae, NewcommandUtil: le },
              noundefined: { NoUndefinedConfiguration: ce },
              require: { RequireConfiguration: ue }
            }
          }
        }
      }),
      r.Loader.preLoad('input/tex-base', '[tex]/ams', '[tex]/newcommand', '[tex]/noundefined', '[tex]/require', '[tex]/autoload', '[tex]/configmacros'),
      (function () {
        var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [],
          e = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1]
        if (MathJax.startup) {
          e && (MathJax.startup.registerConstructor('tex', MathJax._.input.tex_ts.TeX), MathJax.startup.useInput('tex')), MathJax.config.tex || (MathJax.config.tex = {})
          var r = MathJax.config.tex.packages
          ;(MathJax.config.tex.packages = t), r && (0, xt.insert)(MathJax.config.tex, { packages: r })
        }
      })(['base', 'ams', 'newcommand', 'noundefined', 'require', 'autoload', 'configmacros'])
    var pe = __webpack_require__(2892),
      he = __webpack_require__(625),
      fe = __webpack_require__(2769)
    MathJax.loader && MathJax.loader.checkVersion('input/mml', e.VERSION, 'input'),
      (0, t.combineWithMathJax)({ _: { input: { mathml_ts: pe, mathml: { FindMathML: he, MathMLCompile: fe } } } }),
      MathJax.startup && (MathJax.startup.registerConstructor('mml', pe.MathML), MathJax.startup.useInput('mml')),
      MathJax.loader &&
        MathJax.loader.pathFilters.add(function (t) {
          return (t.name = t.name.replace(/\/util\/entities\/.*?\.js/, '/input/mml/entities.js')), !0
        })
    var de = __webpack_require__(50),
      me = __webpack_require__(8042),
      ye = __webpack_require__(8270),
      ge = __webpack_require__(6797),
      be = __webpack_require__(5355),
      ve = __webpack_require__(9261),
      _e = __webpack_require__(9086),
      Se = __webpack_require__(95),
      Me = __webpack_require__(1148),
      Oe = __webpack_require__(8102),
      xe = __webpack_require__(804),
      Ee = __webpack_require__(8147),
      Ae = __webpack_require__(2275),
      Ce = __webpack_require__(9063),
      Te = __webpack_require__(6911),
      Ne = __webpack_require__(1653),
      we = __webpack_require__(6781),
      Le = __webpack_require__(6460),
      Ie = __webpack_require__(6287),
      Pe = __webpack_require__(5964),
      Re = __webpack_require__(8776),
      ke = __webpack_require__(4798),
      je = __webpack_require__(4597),
      Be = __webpack_require__(2970),
      De = __webpack_require__(5610),
      Fe = __webpack_require__(4300),
      He = __webpack_require__(8002),
      Ue = __webpack_require__(7056),
      Xe = __webpack_require__(1259),
      Ve = __webpack_require__(3571),
      qe = __webpack_require__(6590),
      We = __webpack_require__(8650),
      Ge = __webpack_require__(421),
      ze = __webpack_require__(5884),
      Je = __webpack_require__(5552),
      Ke = __webpack_require__(3055),
      $e = __webpack_require__(7519),
      Ye = __webpack_require__(4420),
      Ze = __webpack_require__(9800),
      Qe = __webpack_require__(1160),
      tr = __webpack_require__(1956),
      er = __webpack_require__(7490),
      rr = __webpack_require__(7313),
      nr = __webpack_require__(7555),
      or = __webpack_require__(2688),
      ir = __webpack_require__(5636),
      sr = __webpack_require__(5723),
      ar = __webpack_require__(8009),
      lr = __webpack_require__(5023),
      cr = __webpack_require__(7096),
      ur = __webpack_require__(6898),
      pr = __webpack_require__(6991),
      hr = __webpack_require__(8411),
      fr = __webpack_require__(4126),
      dr = __webpack_require__(258),
      mr = __webpack_require__(4093),
      yr = __webpack_require__(905),
      gr = __webpack_require__(6237),
      br = __webpack_require__(5164),
      vr = __webpack_require__(6319),
      _r = __webpack_require__(5766),
      Sr = __webpack_require__(1971),
      Mr = __webpack_require__(167),
      Or = __webpack_require__(5806)
    MathJax.loader && MathJax.loader.checkVersion('output/chtml', e.VERSION, 'output'),
      (0, t.combineWithMathJax)({
        _: {
          output: {
            chtml_ts: de,
            chtml: {
              FontData: me,
              Notation: ye,
              Usage: ge,
              Wrapper: be,
              WrapperFactory: ve,
              Wrappers_ts: _e,
              Wrappers: {
                TeXAtom: Se,
                TextNode: Me,
                maction: Oe,
                math: xe,
                menclose: Ee,
                mfenced: Ae,
                mfrac: Ce,
                mglyph: Te,
                mi: Ne,
                mmultiscripts: we,
                mn: Le,
                mo: Ie,
                mpadded: Pe,
                mroot: Re,
                mrow: ke,
                ms: je,
                mspace: Be,
                msqrt: De,
                msubsup: Fe,
                mtable: He,
                mtd: Ue,
                mtext: Xe,
                mtr: Ve,
                munderover: qe,
                scriptbase: We,
                semantics: Ge
              }
            },
            common: {
              FontData: ze,
              Notation: Je,
              OutputJax: Ke,
              Wrapper: $e,
              WrapperFactory: Ye,
              Wrappers: {
                TeXAtom: Ze,
                TextNode: Qe,
                maction: tr,
                math: er,
                menclose: rr,
                mfenced: nr,
                mfrac: or,
                mglyph: ir,
                mi: sr,
                mmultiscripts: ar,
                mn: lr,
                mo: cr,
                mpadded: ur,
                mroot: pr,
                mrow: hr,
                ms: fr,
                mspace: dr,
                msqrt: mr,
                msubsup: yr,
                mtable: gr,
                mtd: br,
                mtext: vr,
                mtr: _r,
                munderover: Sr,
                scriptbase: Mr,
                semantics: Or
              }
            }
          }
        }
      }),
      MathJax.loader &&
        (0, t.combineDefaults)(MathJax.config.loader, 'output/chtml', {
          checkReady: function () {
            return MathJax.loader.load('output/chtml/fonts/tex')
          }
        }),
      MathJax.startup && (MathJax.startup.registerConstructor('chtml', de.CHTML), MathJax.startup.useOutput('chtml'))
    var xr = __webpack_require__(2760),
      Er = __webpack_require__(4005),
      Ar = __webpack_require__(1015),
      Cr = __webpack_require__(6555),
      Tr = __webpack_require__(2183),
      Nr = __webpack_require__(3490),
      wr = __webpack_require__(9056),
      Lr = __webpack_require__(3019),
      Ir = __webpack_require__(2713),
      Pr = __webpack_require__(7517),
      Rr = __webpack_require__(4182),
      kr = __webpack_require__(2679),
      jr = __webpack_require__(5469),
      Br = __webpack_require__(775),
      Dr = __webpack_require__(9551),
      Fr = __webpack_require__(6530),
      Hr = __webpack_require__(4409),
      Ur = __webpack_require__(5292),
      Xr = __webpack_require__(3980),
      Vr = __webpack_require__(1103),
      qr = __webpack_require__(9124),
      Wr = __webpack_require__(6001),
      Gr = __webpack_require__(3696),
      zr = __webpack_require__(9587),
      Jr = __webpack_require__(8348),
      Kr = __webpack_require__(1376),
      $r = __webpack_require__(1439),
      Yr = __webpack_require__(331),
      Zr = __webpack_require__(4886),
      Qr = __webpack_require__(4471),
      tn = __webpack_require__(5181),
      en = __webpack_require__(3526),
      rn = __webpack_require__(5649),
      nn = __webpack_require__(7153),
      on = __webpack_require__(5745),
      sn = __webpack_require__(1411),
      an = __webpack_require__(6384),
      ln = __webpack_require__(6041),
      cn = __webpack_require__(8199),
      un = __webpack_require__(9848),
      pn = __webpack_require__(7906),
      hn = __webpack_require__(2644),
      fn = __webpack_require__(4926)
    if (
      (MathJax.loader && MathJax.loader.checkVersion('output/chtml/fonts/tex', e.VERSION, 'chtml-font'),
      (0, t.combineWithMathJax)({
        _: {
          output: {
            chtml: {
              fonts: {
                tex_ts: xr,
                tex: {
                  'bold-italic': Er,
                  bold: Ar,
                  'fraktur-bold': Cr,
                  fraktur: Tr,
                  italic: Nr,
                  largeop: wr,
                  monospace: Lr,
                  normal: Ir,
                  'sans-serif-bold-italic': Pr,
                  'sans-serif-bold': Rr,
                  'sans-serif-italic': kr,
                  'sans-serif': jr,
                  smallop: Br,
                  'tex-calligraphic-bold': Dr,
                  'tex-size3': Fr,
                  'tex-size4': Hr,
                  'tex-variant': Ur
                }
              }
            },
            common: {
              fonts: {
                tex: {
                  'bold-italic': Xr,
                  bold: Vr,
                  delimiters: qr,
                  'double-struck': Wr,
                  'fraktur-bold': Gr,
                  fraktur: zr,
                  italic: Jr,
                  largeop: Kr,
                  monospace: $r,
                  normal: Yr,
                  'sans-serif-bold-italic': Zr,
                  'sans-serif-bold': Qr,
                  'sans-serif-italic': tn,
                  'sans-serif': en,
                  'script-bold': rn,
                  script: nn,
                  smallop: on,
                  'tex-calligraphic-bold': sn,
                  'tex-calligraphic': an,
                  'tex-mathit': ln,
                  'tex-oldstyle-bold': cn,
                  'tex-oldstyle': un,
                  'tex-size3': pn,
                  'tex-size4': hn,
                  'tex-variant': fn
                }
              }
            }
          }
        }
      }),
      MathJax.startup)
    ) {
      ;(0, t.combineDefaults)(MathJax.config, 'chtml', { fontURL: n.Package.resolvePath('/mathJaxFont', !1) })
      var dn = (0, xt.selectOptionsFromKeys)(MathJax.config.chtml || {}, xr.TeXFont.OPTIONS)
      ;(0, t.combineDefaults)(MathJax.config, 'chtml', { font: new xr.TeXFont(dn) })
    }
    var mn = __webpack_require__(5865),
      yn = __webpack_require__(8310),
      gn = __webpack_require__(4001),
      bn = __webpack_require__(473),
      vn = __webpack_require__(4414)
    MathJax.loader && MathJax.loader.checkVersion('ui/menu', e.VERSION, 'ui'),
      (0, t.combineWithMathJax)({ _: { ui: { menu: { MJContextMenu: mn, Menu: yn, MenuHandler: gn, MmlVisitor: bn, SelectableInfo: vn } } } }),
      MathJax.startup &&
        'undefined' != typeof window &&
        MathJax.startup.extendHandler(function (t) {
          return (0, gn.MenuHandler)(t)
        }, 20)
    var _n = __webpack_require__(351)
    function Sn(t, e) {
      ;(null == e || e > t.length) && (e = t.length)
      for (var r = 0, n = new Array(e); r < e; r++) n[r] = t[r]
      return n
    }
    MathJax.loader && MathJax.loader.checkVersion('a11y/assistive-mml', e.VERSION, 'a11y'),
      (0, t.combineWithMathJax)({ _: { a11y: { 'assistive-mml': _n } } }),
      MathJax.startup &&
        MathJax.startup.extendHandler(function (t) {
          return (0, _n.AssistiveMmlHandler)(t)
        }),
      r.Loader.preLoad('loader'),
      r.Loader.load
        .apply(
          r.Loader,
          (function (t) {
            return (
              (function (t) {
                if (Array.isArray(t)) return Sn(t)
              })(t) ||
              (function (t) {
                if (('undefined' != typeof Symbol && null != t[Symbol.iterator]) || null != t['@@iterator']) return Array.from(t)
              })(t) ||
              (function (t, e) {
                if (!t) return
                if ('string' == typeof t) return Sn(t, e)
                var r = Object.prototype.toString.call(t).slice(8, -1)
                'Object' === r && t.constructor && (r = t.constructor.name)
                if ('Map' === r || 'Set' === r) return Array.from(t)
                if ('Arguments' === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return Sn(t, e)
              })(t) ||
              (function () {
                throw new TypeError('Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.')
              })()
            )
          })(r.CONFIG.load)
        )
        .then(function () {
          return r.CONFIG.ready()
        })
        .catch(function (t) {
          return r.CONFIG.failed(t)
        })
  })()
})()
