@loopstack/loopstack-studio 0.27.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/dist/_virtual/rolldown_runtime.js +13 -15
  2. package/dist/components/ai-elements/code-block.js +2 -2
  3. package/dist/components/dynamic-form/Form.js +49 -52
  4. package/dist/components/loopstack-elements/tool.js +18 -9
  5. package/dist/config.js +6 -0
  6. package/dist/features/debug/components/WorkflowFlowViewer.js +94 -81
  7. package/dist/features/debug/components/workflow-flow/StateNode.js +154 -79
  8. package/dist/features/debug/components/workflow-flow/WorkflowGraph.js +43 -31
  9. package/dist/features/debug/components/workflow-flow/WorkflowTransitionEdge.js +52 -51
  10. package/dist/features/debug/lib/edge-paths.js +45 -30
  11. package/dist/features/debug/lib/flow-types.js +2 -0
  12. package/dist/features/debug/lib/flow-utils.js +66 -64
  13. package/dist/features/documents/DocumentRenderer.js +2 -2
  14. package/dist/features/documents/components/DocumentList.js +19 -18
  15. package/dist/features/documents/renderers/LlmMessage.js +89 -0
  16. package/dist/features/workbench/WorkflowItem.js +4 -3
  17. package/dist/features/workbench/components/EmbedLogsContent.js +5 -0
  18. package/dist/features/workbench/components/PreviewEmptyState.js +10 -0
  19. package/dist/features/workbench/components/PreviewWorkbench.js +14 -0
  20. package/dist/features/workbench/components/RecentRunItem.js +48 -0
  21. package/dist/features/workbench/components/WorkflowForms.js +4 -3
  22. package/dist/features/workbench/hooks/useEmbedBridge.js +3 -0
  23. package/dist/features/workbench/hooks/useWorkflowData.js +9 -9
  24. package/dist/features/workbench/index.js +4 -0
  25. package/dist/features/workspaces/components/ExecutionTimeline.js +9 -8
  26. package/dist/loopstack-studio.css +1 -1
  27. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{architecture-YZFGNWBL.js → architecture-7EHR7CIX.js} +2 -2
  28. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-7N4EOEYR.js → chunk-4EGX6M5U.js} +9 -13
  29. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-KGLVRYIC.js → chunk-5DO6E6H7.js} +3 -7
  30. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-BR22UD5L.js +56 -0
  31. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-2KRD3SAO.js → chunk-FHYWG6QK.js} +3 -7
  32. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-FOC6F5B3.js → chunk-MPE355IW.js} +3 -7
  33. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-MZUSXYTE.js +24 -0
  34. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-N66VUXT2.js +48 -0
  35. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-NNHCCRGN.js +20219 -0
  36. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-PUPMXCY4.js +19 -0
  37. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{chunk-67CJDMHE.js → chunk-UIBZB4QT.js} +3 -7
  38. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-WCWK7LTN.js +25 -0
  39. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/eventmodeling-FCH6USID.js +3 -0
  40. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{gitGraph-7Q5UKJZL.js → gitGraph-WXDBUCRP.js} +2 -2
  41. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-J43DQDTF.js +3 -0
  42. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-YPE3B663.js +3 -0
  43. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-LRSECV5Y.js +3 -0
  44. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-GUYGQ44K.js +3 -0
  45. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/{treeView-SZITEDCU.js → treeView-BLDUP644.js} +2 -2
  46. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-LRROVOQU.js +3 -0
  47. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-L42UT6IY.js +3 -0
  48. package/dist/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +24 -19
  49. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.js +36 -26
  50. package/dist/node_modules/@xyflow/react/dist/esm/index.js +1 -1
  51. package/dist/node_modules/cytoscape/dist/cytoscape.esm.js +257 -254
  52. package/dist/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +19 -19
  53. package/dist/node_modules/dagre-d3-es/src/dagre/layout.js +48 -48
  54. package/dist/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +9 -9
  55. package/dist/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +3 -3
  56. package/dist/node_modules/dagre-d3-es/src/dagre/order/index.js +11 -11
  57. package/dist/node_modules/dagre-d3-es/src/dagre/order/init-order.js +4 -4
  58. package/dist/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +4 -4
  59. package/dist/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +8 -8
  60. package/dist/node_modules/dagre-d3-es/src/dagre/order/sort.js +5 -5
  61. package/dist/node_modules/dagre-d3-es/src/dagre/position/bk.js +72 -72
  62. package/dist/node_modules/dagre-d3-es/src/dagre/position/index.js +1 -1
  63. package/dist/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +25 -25
  64. package/dist/node_modules/dagre-d3-es/src/dagre/rank/util.js +8 -8
  65. package/dist/node_modules/dagre-d3-es/src/dagre/util.js +48 -48
  66. package/dist/node_modules/dagre-d3-es/src/graphlib/graph.js +109 -109
  67. package/dist/node_modules/dagre-d3-es/src/graphlib/json.js +17 -17
  68. package/dist/node_modules/dompurify/dist/purify.es.js +301 -209
  69. package/dist/node_modules/es-toolkit/dist/_internal/globalThis.js +4 -0
  70. package/dist/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js +4 -0
  71. package/dist/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js +4 -0
  72. package/dist/node_modules/es-toolkit/dist/compat/_internal/getTag.js +4 -0
  73. package/dist/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js +5 -0
  74. package/dist/node_modules/es-toolkit/dist/compat/_internal/tags.js +2 -0
  75. package/dist/node_modules/es-toolkit/dist/compat/function/memoize.js +12 -0
  76. package/dist/node_modules/es-toolkit/dist/compat/object/clone.js +97 -0
  77. package/dist/node_modules/es-toolkit/dist/compat/object/cloneDeep.js +5 -0
  78. package/dist/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js +29 -0
  79. package/dist/node_modules/es-toolkit/dist/compat/object/merge.js +6 -0
  80. package/dist/node_modules/es-toolkit/dist/compat/object/mergeWith.js +49 -0
  81. package/dist/node_modules/es-toolkit/dist/compat/predicate/isArguments.js +5 -0
  82. package/dist/node_modules/es-toolkit/dist/compat/predicate/isArray.js +4 -0
  83. package/dist/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js +5 -0
  84. package/dist/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js +6 -0
  85. package/dist/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js +16 -0
  86. package/dist/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js +4 -0
  87. package/dist/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js +12 -0
  88. package/dist/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js +5 -0
  89. package/dist/node_modules/es-toolkit/dist/function/noop.js +2 -0
  90. package/dist/node_modules/es-toolkit/dist/object/clone.js +29 -0
  91. package/dist/node_modules/es-toolkit/dist/object/cloneDeepWith.js +114 -0
  92. package/dist/node_modules/es-toolkit/dist/predicate/isBuffer.js +5 -0
  93. package/dist/node_modules/es-toolkit/dist/predicate/isLength.js +4 -0
  94. package/dist/node_modules/es-toolkit/dist/predicate/isPrimitive.js +4 -0
  95. package/dist/node_modules/es-toolkit/dist/predicate/isTypedArray.js +4 -0
  96. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.js +2 -2
  97. package/dist/node_modules/internmap/src/index.js +1 -1
  98. package/dist/node_modules/katex/dist/katex.js +379 -417
  99. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +3 -3
  100. package/dist/node_modules/lodash-es/_assignMergeValue.js +1 -1
  101. package/dist/node_modules/lodash-es/_assignValue.js +1 -1
  102. package/dist/node_modules/lodash-es/_baseClone.js +9 -9
  103. package/dist/node_modules/lodash-es/_baseForOwn.js +1 -1
  104. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +1 -1
  105. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +6 -6
  106. package/dist/node_modules/lodash-es/_baseMerge.js +2 -2
  107. package/dist/node_modules/lodash-es/_baseMergeDeep.js +7 -7
  108. package/dist/node_modules/lodash-es/_baseOrderBy.js +12 -12
  109. package/dist/node_modules/lodash-es/_baseRest.js +1 -1
  110. package/dist/node_modules/lodash-es/_baseSet.js +1 -1
  111. package/dist/node_modules/lodash-es/_baseSetToString.js +3 -3
  112. package/dist/node_modules/lodash-es/_baseToString.js +2 -2
  113. package/dist/node_modules/lodash-es/_baseUniq.js +1 -1
  114. package/dist/node_modules/lodash-es/_createRange.js +1 -1
  115. package/dist/node_modules/lodash-es/_createSet.js +3 -3
  116. package/dist/node_modules/lodash-es/_flatRest.js +1 -1
  117. package/dist/node_modules/lodash-es/_getAllKeys.js +2 -2
  118. package/dist/node_modules/lodash-es/_getAllKeysIn.js +1 -1
  119. package/dist/node_modules/lodash-es/_getSymbolsIn.js +1 -1
  120. package/dist/node_modules/lodash-es/_getTag.js +1 -1
  121. package/dist/node_modules/lodash-es/_hasPath.js +2 -2
  122. package/dist/node_modules/lodash-es/_initCloneByTag.js +1 -1
  123. package/dist/node_modules/lodash-es/_initCloneObject.js +1 -1
  124. package/dist/node_modules/lodash-es/_isFlattenable.js +1 -1
  125. package/dist/node_modules/lodash-es/_isIterateeCall.js +1 -1
  126. package/dist/node_modules/lodash-es/_isKey.js +1 -1
  127. package/dist/node_modules/lodash-es/_setToString.js +1 -1
  128. package/dist/node_modules/lodash-es/defaults.js +1 -1
  129. package/dist/node_modules/lodash-es/findIndex.js +2 -2
  130. package/dist/node_modules/lodash-es/forEach.js +1 -1
  131. package/dist/node_modules/lodash-es/forIn.js +1 -1
  132. package/dist/node_modules/lodash-es/isEmpty.js +2 -2
  133. package/dist/node_modules/lodash-es/isPlainObject.js +1 -1
  134. package/dist/node_modules/lodash-es/map.js +1 -1
  135. package/dist/node_modules/lodash-es/max.js +1 -1
  136. package/dist/node_modules/lodash-es/merge.js +3 -3
  137. package/dist/node_modules/lodash-es/min.js +1 -1
  138. package/dist/node_modules/lodash-es/minBy.js +1 -1
  139. package/dist/node_modules/lodash-es/reduce.js +1 -1
  140. package/dist/node_modules/lodash-es/toNumber.js +1 -1
  141. package/dist/node_modules/lodash-es/union.js +3 -3
  142. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{architectureDiagram-Q4EWVU46.js → architectureDiagram-3BPJPVTR.js} +310 -308
  143. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{blockDiagram-DXYQGD6D.js → blockDiagram-GPEHLZMM.js} +215 -190
  144. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{c4Diagram-AHTNJAMY.js → c4Diagram-AAUBKEIU.js} +3 -3
  145. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-EDXVE4YY.js → chunk-2J33WTMH.js} +1 -1
  146. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-5FUZZQ4R.js → chunk-3OPIFGDE.js} +48 -20
  147. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-5PVQY5BW.js → chunk-5ZQYHXKU.js} +8 -8
  148. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-4TB4RGXK.js → chunk-727SXJPM.js} +555 -459
  149. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-OYMX7WX6.js → chunk-AQP2D5EJ.js} +155 -145
  150. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-ICPOFSXX.js → chunk-CSCIHK7Q.js} +106 -12
  151. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-ENJZ2VHE.js → chunk-KSCS5N6A.js} +12 -12
  152. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-ZZ45TVLE.js → chunk-L5ZTLDWV.js} +2 -2
  153. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-336JU56O.js → chunk-LZXEDZCA.js} +5 -5
  154. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-YZCP3GAM.js → chunk-ND2GUHAM.js} +1 -1
  155. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-X2U36JSP.js → chunk-NZK2D7GU.js} +1 -1
  156. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-U2HBQHQK.js → chunk-O5CBEL6O.js} +2 -2
  157. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{chunk-426QAEUC.js → chunk-WU5MYG2G.js} +1 -1
  158. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{classDiagram-6PBFFD2Q.js → classDiagram-4FO5ZUOK.js} +11 -11
  159. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{classDiagram-v2-HSJHXN6E.js → classDiagram-v2-Q7XG4LA2.js} +11 -11
  160. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{dagre-KV5264BT.js → dagre-BM42HDAG.js} +8 -8
  161. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{diagram-MMDJMWI5.js → diagram-2AECGRRQ.js} +3 -3
  162. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{diagram-5BDNPKRD.js → diagram-5GNKFQAL.js} +3 -3
  163. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-KO2AKTUF.js +433 -0
  164. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{diagram-TYMM5635.js → diagram-LMA3HP47.js} +3 -3
  165. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{diagram-G4DWMVQ6.js → diagram-OG6HWLK6.js} +5 -5
  166. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{erDiagram-SMLLAGMA.js → erDiagram-TEJ5UH35.js} +9 -9
  167. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{flowDiagram-DWJPFMVM.js → flowDiagram-I6XJVG4X.js} +10 -10
  168. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{ganttDiagram-T4ZO3ILL.js → ganttDiagram-6RSMTGT7.js} +7 -4
  169. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{gitGraphDiagram-UUTBAWPF.js → gitGraphDiagram-PVQCEYII.js} +2 -2
  170. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{infoDiagram-42DDH7IO.js → infoDiagram-5YYISTIA.js} +3 -3
  171. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{ishikawaDiagram-UXIWVN3A.js → ishikawaDiagram-YF4QCWOH.js} +3 -3
  172. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{journeyDiagram-VCZTEJTY.js → journeyDiagram-JHISSGLW.js} +2 -2
  173. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{kanban-definition-6JOO6SKY.js → kanban-definition-UN3LZRKU.js} +7 -7
  174. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{mindmap-definition-QFDTVHPH.js → mindmap-definition-RKZ34NQL.js} +9 -9
  175. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{pieDiagram-DEJITSTG.js → pieDiagram-4H26LBE5.js} +3 -3
  176. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{quadrantDiagram-34T5L4WZ.js → quadrantDiagram-W4KKPZXB.js} +364 -337
  177. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{requirementDiagram-MS252O5E.js → requirementDiagram-4Y6WPE33.js} +9 -9
  178. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{sankeyDiagram-XADWPNL6.js → sankeyDiagram-5OEKKPKP.js} +187 -138
  179. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{sequenceDiagram-FGHM5R23.js → sequenceDiagram-3UESZ5HK.js} +15 -8
  180. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{stateDiagram-FHFEXIEX.js → stateDiagram-AJRCARHV.js} +10 -10
  181. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{stateDiagram-v2-QKLJ7IA2.js → stateDiagram-v2-BHNVJYJU.js} +10 -10
  182. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{timeline-definition-GMOUNBTQ.js → timeline-definition-PNZ67QCA.js} +3 -3
  183. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{vennDiagram-DHZGUBPP.js → vennDiagram-CIIHVFJN.js} +3 -3
  184. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/wardleyDiagram-YWT4CUSO.js +640 -0
  185. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/{xychartDiagram-5P7HB3ND.js → xychartDiagram-2RQKCTM6.js} +4 -4
  186. package/dist/node_modules/mermaid/dist/mermaid.core.js +96 -70
  187. package/dist/node_modules/stylis/src/Enum.js +2 -2
  188. package/dist/node_modules/stylis/src/Middleware.js +9 -0
  189. package/dist/node_modules/stylis/src/Parser.js +55 -44
  190. package/dist/node_modules/stylis/src/Utility.js +9 -12
  191. package/dist/node_modules/unified/lib/index.js +1 -1
  192. package/dist/packages/contracts/dist/enums/index.js +4 -24
  193. package/dist/packages/contracts/dist/enums/registry.enum.js +9 -20
  194. package/dist/packages/contracts/dist/enums/sort-order.enum.js +5 -10
  195. package/dist/packages/contracts/dist/enums/user-type.enum.js +5 -10
  196. package/dist/packages/contracts/dist/enums/workflow-state.enum.js +5 -10
  197. package/dist/pages/EmbedWorkbenchPage.js +4 -3
  198. package/dist/pages/PreviewWorkbenchPage.js +126 -124
  199. package/dist/pages/StudioLandingPage.js +28 -72
  200. package/package.json +2 -2
  201. package/dist/features/documents/renderers/ClaudeMessage.js +0 -96
  202. package/dist/node_modules/@chevrotain/gast/lib/src/helpers.js +0 -23
  203. package/dist/node_modules/@chevrotain/gast/lib/src/model.js +0 -151
  204. package/dist/node_modules/@chevrotain/gast/lib/src/visitor.js +0 -40
  205. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/api.js +0 -2
  206. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js +0 -85
  207. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js +0 -35
  208. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js +0 -570
  209. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js +0 -25
  210. package/dist/node_modules/@chevrotain/utils/lib/src/print.js +0 -9
  211. package/dist/node_modules/@chevrotain/utils/lib/src/timer.js +0 -8
  212. package/dist/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js +0 -10
  213. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js +0 -28
  214. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js +0 -23
  215. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js +0 -1197
  216. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LIHQZDEY.js +0 -60
  217. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js +0 -29
  218. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-OMHHGYJF.js +0 -3
  219. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-4T2RLAQJ.js +0 -3
  220. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-ZZUOXDRM.js +0 -3
  221. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-PYXPWWZC.js +0 -3
  222. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-W4RFUUIX.js +0 -3
  223. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-RL74JXVD.js +0 -3
  224. package/dist/node_modules/chevrotain/lib/src/api.js +0 -10
  225. package/dist/node_modules/chevrotain/lib/src/lang/lang_extensions.js +0 -10
  226. package/dist/node_modules/chevrotain/lib/src/parse/constants.js +0 -2
  227. package/dist/node_modules/chevrotain/lib/src/parse/cst/cst.js +0 -13
  228. package/dist/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js +0 -49
  229. package/dist/node_modules/chevrotain/lib/src/parse/errors_public.js +0 -77
  230. package/dist/node_modules/chevrotain/lib/src/parse/exceptions_public.js +0 -33
  231. package/dist/node_modules/chevrotain/lib/src/parse/grammar/checks.js +0 -275
  232. package/dist/node_modules/chevrotain/lib/src/parse/grammar/first.js +0 -23
  233. package/dist/node_modules/chevrotain/lib/src/parse/grammar/follow.js +0 -28
  234. package/dist/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js +0 -14
  235. package/dist/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js +0 -262
  236. package/dist/node_modules/chevrotain/lib/src/parse/grammar/keys.js +0 -5
  237. package/dist/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js +0 -41
  238. package/dist/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js +0 -241
  239. package/dist/node_modules/chevrotain/lib/src/parse/grammar/resolver.js +0 -30
  240. package/dist/node_modules/chevrotain/lib/src/parse/grammar/rest.js +0 -56
  241. package/dist/node_modules/chevrotain/lib/src/parse/parser/parser.js +0 -114
  242. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js +0 -46
  243. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js +0 -166
  244. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js +0 -43
  245. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js +0 -107
  246. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +0 -21
  247. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js +0 -312
  248. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js +0 -285
  249. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js +0 -144
  250. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js +0 -92
  251. package/dist/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js +0 -11
  252. package/dist/node_modules/chevrotain/lib/src/scan/lexer.js +0 -437
  253. package/dist/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js +0 -9
  254. package/dist/node_modules/chevrotain/lib/src/scan/lexer_public.js +0 -253
  255. package/dist/node_modules/chevrotain/lib/src/scan/reg_exp.js +0 -152
  256. package/dist/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js +0 -15
  257. package/dist/node_modules/chevrotain/lib/src/scan/tokens.js +0 -65
  258. package/dist/node_modules/chevrotain/lib/src/scan/tokens_public.js +0 -39
  259. package/dist/node_modules/chevrotain-allstar/lib/all-star-lookahead.js +0 -346
  260. package/dist/node_modules/chevrotain-allstar/lib/atn.js +0 -194
  261. package/dist/node_modules/chevrotain-allstar/lib/dfa.js +0 -32
  262. package/dist/node_modules/chevrotain-allstar/lib/index.js +0 -1
  263. package/dist/node_modules/langium/lib/default-module.js +0 -85
  264. package/dist/node_modules/langium/lib/dependency-injection.js +0 -62
  265. package/dist/node_modules/langium/lib/documentation/comment-provider.js +0 -11
  266. package/dist/node_modules/langium/lib/documentation/documentation-provider.js +0 -36
  267. package/dist/node_modules/langium/lib/documentation/jsdoc.js +0 -303
  268. package/dist/node_modules/langium/lib/index.js +0 -182
  269. package/dist/node_modules/langium/lib/languages/generated/ast.js +0 -1089
  270. package/dist/node_modules/langium/lib/languages/grammar-config.js +0 -13
  271. package/dist/node_modules/langium/lib/parser/async-parser.js +0 -83
  272. package/dist/node_modules/langium/lib/parser/completion-parser-builder.js +0 -7
  273. package/dist/node_modules/langium/lib/parser/cst-node-builder.js +0 -160
  274. package/dist/node_modules/langium/lib/parser/indentation-aware.js +0 -141
  275. package/dist/node_modules/langium/lib/parser/langium-parser-builder.js +0 -11
  276. package/dist/node_modules/langium/lib/parser/langium-parser.js +0 -388
  277. package/dist/node_modules/langium/lib/parser/lexer.js +0 -50
  278. package/dist/node_modules/langium/lib/parser/parser-builder-base.js +0 -275
  279. package/dist/node_modules/langium/lib/parser/token-builder.js +0 -61
  280. package/dist/node_modules/langium/lib/parser/value-converter.js +0 -78
  281. package/dist/node_modules/langium/lib/references/linker.js +0 -190
  282. package/dist/node_modules/langium/lib/references/name-provider.js +0 -13
  283. package/dist/node_modules/langium/lib/references/references.js +0 -76
  284. package/dist/node_modules/langium/lib/references/scope-computation.js +0 -35
  285. package/dist/node_modules/langium/lib/references/scope-provider.js +0 -34
  286. package/dist/node_modules/langium/lib/references/scope.js +0 -73
  287. package/dist/node_modules/langium/lib/serializer/hydrator.js +0 -125
  288. package/dist/node_modules/langium/lib/serializer/json-serializer.js +0 -145
  289. package/dist/node_modules/langium/lib/service-registry.js +0 -37
  290. package/dist/node_modules/langium/lib/syntax-tree.js +0 -70
  291. package/dist/node_modules/langium/lib/utils/ast-utils.js +0 -157
  292. package/dist/node_modules/langium/lib/utils/caching.js +0 -91
  293. package/dist/node_modules/langium/lib/utils/cancellation.js +0 -5
  294. package/dist/node_modules/langium/lib/utils/collections.js +0 -85
  295. package/dist/node_modules/langium/lib/utils/cst-utils.js +0 -190
  296. package/dist/node_modules/langium/lib/utils/disposable.js +0 -8
  297. package/dist/node_modules/langium/lib/utils/errors.js +0 -12
  298. package/dist/node_modules/langium/lib/utils/event.js +0 -5
  299. package/dist/node_modules/langium/lib/utils/grammar-loader.js +0 -22
  300. package/dist/node_modules/langium/lib/utils/grammar-utils.js +0 -296
  301. package/dist/node_modules/langium/lib/utils/index.js +0 -53
  302. package/dist/node_modules/langium/lib/utils/promise-utils.js +0 -30
  303. package/dist/node_modules/langium/lib/utils/regexp-utils.js +0 -167
  304. package/dist/node_modules/langium/lib/utils/stream.js +0 -327
  305. package/dist/node_modules/langium/lib/utils/uri-utils.js +0 -107
  306. package/dist/node_modules/langium/lib/validation/document-validator.js +0 -210
  307. package/dist/node_modules/langium/lib/validation/validation-registry.js +0 -87
  308. package/dist/node_modules/langium/lib/workspace/ast-descriptions.js +0 -57
  309. package/dist/node_modules/langium/lib/workspace/ast-node-locator.js +0 -28
  310. package/dist/node_modules/langium/lib/workspace/configuration.js +0 -51
  311. package/dist/node_modules/langium/lib/workspace/document-builder.js +0 -201
  312. package/dist/node_modules/langium/lib/workspace/documents.js +0 -142
  313. package/dist/node_modules/langium/lib/workspace/file-system-provider.js +0 -34
  314. package/dist/node_modules/langium/lib/workspace/index-manager.js +0 -49
  315. package/dist/node_modules/langium/lib/workspace/profiler.js +0 -89
  316. package/dist/node_modules/langium/lib/workspace/workspace-lock.js +0 -42
  317. package/dist/node_modules/langium/lib/workspace/workspace-manager.js +0 -66
  318. package/dist/node_modules/lodash-es/flatMap.js +0 -7
  319. package/dist/node_modules/lodash-es/uniqBy.js +0 -7
  320. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/wardleyDiagram-NUSXRM2D.js +0 -574
  321. package/dist/node_modules/vscode-jsonrpc/browser.js +0 -7
  322. package/dist/node_modules/vscode-jsonrpc/lib/browser/main.js +0 -52
  323. package/dist/node_modules/vscode-jsonrpc/lib/browser/ril.js +0 -120
  324. package/dist/node_modules/vscode-jsonrpc/lib/common/api.js +0 -337
  325. package/dist/node_modules/vscode-jsonrpc/lib/common/cancellation.js +0 -57
  326. package/dist/node_modules/vscode-jsonrpc/lib/common/connection.js +0 -647
  327. package/dist/node_modules/vscode-jsonrpc/lib/common/disposable.js +0 -13
  328. package/dist/node_modules/vscode-jsonrpc/lib/common/events.js +0 -64
  329. package/dist/node_modules/vscode-jsonrpc/lib/common/is.js +0 -34
  330. package/dist/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +0 -235
  331. package/dist/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +0 -93
  332. package/dist/node_modules/vscode-jsonrpc/lib/common/messageReader.js +0 -129
  333. package/dist/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +0 -85
  334. package/dist/node_modules/vscode-jsonrpc/lib/common/messages.js +0 -161
  335. package/dist/node_modules/vscode-jsonrpc/lib/common/ral.js +0 -18
  336. package/dist/node_modules/vscode-jsonrpc/lib/common/semaphore.js +0 -44
  337. package/dist/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +0 -58
  338. package/dist/node_modules/vscode-languageserver-protocol/lib/browser/main.js +0 -28
  339. package/dist/node_modules/vscode-languageserver-protocol/lib/common/api.js +0 -36
  340. package/dist/node_modules/vscode-languageserver-protocol/lib/common/connection.js +0 -12
  341. package/dist/node_modules/vscode-languageserver-protocol/lib/common/messages.js +0 -31
  342. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +0 -19
  343. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +0 -15
  344. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +0 -11
  345. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +0 -11
  346. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +0 -33
  347. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +0 -35
  348. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +0 -15
  349. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +0 -11
  350. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +0 -19
  351. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +0 -11
  352. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +0 -15
  353. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +0 -674
  354. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +0 -11
  355. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +0 -19
  356. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +0 -126
  357. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +0 -24
  358. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +0 -11
  359. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +0 -31
  360. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +0 -11
  361. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +0 -11
  362. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +0 -19
  363. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +0 -15
  364. package/dist/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +0 -42
  365. package/dist/node_modules/vscode-languageserver-textdocument/lib/esm/main.js +0 -138
  366. package/dist/node_modules/vscode-languageserver-types/lib/esm/main.js +0 -1084
  367. package/dist/node_modules/vscode-uri/lib/esm/index.js +0 -373
  368. /package/dist/node_modules/{entities → hast-util-raw/node_modules/entities}/dist/esm/decode-codepoint.js +0 -0
  369. /package/dist/node_modules/{entities → hast-util-raw/node_modules/entities}/dist/esm/decode.js +0 -0
  370. /package/dist/node_modules/{entities → hast-util-raw/node_modules/entities}/dist/esm/generated/decode-data-html.js +0 -0
  371. /package/dist/node_modules/{unified/node_modules/is-plain-obj → is-plain-obj}/index.js +0 -0
@@ -7,7 +7,7 @@ var ParseError = class e extends Error {
7
7
  var l = c.slice(a, o).replace(/[^]/g, "$&̲"), u = a > 15 ? "…" + c.slice(a - 15, a) : c.slice(0, a), d = o + 15 < c.length ? c.slice(o, o + 15) + "…" : c.slice(o);
8
8
  r += u + l + d;
9
9
  }
10
- super(r), this.name = "ParseError", Object.setPrototypeOf(this, e.prototype), this.position = a, a != null && o != null && (this.length = o - a), this.rawMessage = t;
10
+ super(r), this.name = "ParseError", this.position = void 0, this.length = void 0, this.rawMessage = void 0, Object.setPrototypeOf(this, e.prototype), this.position = a, a != null && o != null && (this.length = o - a), this.rawMessage = t;
11
11
  }
12
12
  }, uppercase = /([A-Z])/g, hyphenate = (e) => e.replace(uppercase, "-$1").toLowerCase(), ESCAPE_LOOKUP = {
13
13
  "&": "&amp;",
@@ -117,23 +117,29 @@ var ParseError = class e extends Error {
117
117
  cli: !1
118
118
  }
119
119
  };
120
- function getDefaultValue(e) {
121
- if ("default" in e) return e.default;
122
- var t = e.type, n = Array.isArray(t) ? t[0] : t;
123
- if (typeof n != "string") return n.enum[0];
124
- switch (n) {
120
+ function getImplicitDefault(e) {
121
+ if (typeof e != "string") return e.enum[0];
122
+ switch (e) {
125
123
  case "boolean": return !1;
126
124
  case "string": return "";
127
125
  case "number": return 0;
128
126
  case "object": return {};
127
+ default: throw Error("Unexpected schema type; settings must declare an explicit default.");
129
128
  }
130
129
  }
130
+ function getDefaultValue(e) {
131
+ return e.default === void 0 ? getImplicitDefault(Array.isArray(e.type) ? e.type[0] : e.type) : e.default;
132
+ }
133
+ function applySetting(e, t, n, r) {
134
+ var a = n[t];
135
+ e[t] = a === void 0 ? getDefaultValue(r) : r.processor ? r.processor(a) : a;
136
+ }
131
137
  var Settings = class {
132
138
  constructor(e) {
133
- e === void 0 && (e = {}), e ||= {};
139
+ e === void 0 && (e = {}), this.displayMode = void 0, this.output = void 0, this.leqno = void 0, this.fleqn = void 0, this.throwOnError = void 0, this.errorColor = void 0, this.macros = void 0, this.minRuleThickness = void 0, this.colorIsTextColor = void 0, this.strict = void 0, this.trust = void 0, this.maxSize = void 0, this.maxExpand = void 0, this.globalGroup = void 0, e ||= {};
134
140
  for (var t of Object.keys(SETTINGS_SCHEMA)) {
135
- var n = SETTINGS_SCHEMA[t], r = e[t];
136
- this[t] = r === void 0 ? getDefaultValue(n) : n.processor ? n.processor(r) : r;
141
+ var n = SETTINGS_SCHEMA[t];
142
+ n && applySetting(this, t, e, n);
137
143
  }
138
144
  }
139
145
  reportNonstrict(t, n, r) {
@@ -162,7 +168,7 @@ var Settings = class {
162
168
  }
163
169
  }, Style = class {
164
170
  constructor(e, t, n) {
165
- this.id = e, this.size = t, this.cramped = n;
171
+ this.id = void 0, this.size = void 0, this.cramped = void 0, this.id = e, this.size = t, this.cramped = n;
166
172
  }
167
173
  sup() {
168
174
  return styles[sup[this.id]];
@@ -425,9 +431,13 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
425
431
  case "rparen": return "M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,\n63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5\nc11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0," + (t + 9) + "\nc-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664\nc-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11\nc0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17\nc242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558\nl0,-" + (t + 144) + "c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,\n-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z";
426
432
  default: throw Error("Unknown stretchy delimiter.");
427
433
  }
428
- }, DocumentFragment = class {
434
+ };
435
+ function isMathDomNode(e) {
436
+ return "toText" in e;
437
+ }
438
+ var DocumentFragment = class {
429
439
  constructor(e) {
430
- this.children = e, this.classes = [], this.height = 0, this.depth = 0, this.maxFontSize = 0, this.style = {};
440
+ this.children = void 0, this.classes = void 0, this.height = void 0, this.depth = void 0, this.maxFontSize = void 0, this.style = void 0, this.children = e, this.classes = [], this.height = 0, this.depth = 0, this.maxFontSize = 0, this.style = {};
431
441
  }
432
442
  hasClass(e) {
433
443
  return this.classes.includes(e);
@@ -441,7 +451,10 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
441
451
  return e;
442
452
  }
443
453
  toText() {
444
- return this.children.map((e) => e.toText()).join("");
454
+ return this.children.map((e) => {
455
+ if (isMathDomNode(e)) return e.toText();
456
+ throw Error("Expected MathDomNode with toText, got " + e.constructor.name);
457
+ }).join("");
445
458
  }
446
459
  }, ptPerUnit = {
447
460
  pt: 1,
@@ -478,6 +491,13 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
478
491
  return +e.toFixed(4) + "em";
479
492
  }, createClass = function(e) {
480
493
  return e.filter((e) => e).join(" ");
494
+ }, cssStyleToString = function(e) {
495
+ var t = "";
496
+ for (var r of Object.keys(e)) {
497
+ var a = e[r];
498
+ a !== void 0 && (t += hyphenate(r) + ":" + a + ";");
499
+ }
500
+ return t;
481
501
  }, initNode = function(e, t, n) {
482
502
  if (this.classes = e || [], this.attributes = {}, this.height = 0, this.depth = 0, this.maxFontSize = 0, this.style = n || {}, t) {
483
503
  t.style.isTight() && this.classes.push("mtight");
@@ -486,27 +506,25 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
486
506
  }
487
507
  }, toNode = function(e) {
488
508
  var t = document.createElement(e);
489
- t.className = createClass(this.classes);
490
- for (var n of Object.keys(this.style)) t.style[n] = this.style[n];
491
- for (var r of Object.keys(this.attributes)) t.setAttribute(r, this.attributes[r]);
492
- for (var a = 0; a < this.children.length; a++) t.appendChild(this.children[a].toNode());
509
+ t.className = createClass(this.classes), Object.assign(t.style, this.style);
510
+ for (var n of Object.keys(this.attributes)) t.setAttribute(n, this.attributes[n]);
511
+ for (var r = 0; r < this.children.length; r++) t.appendChild(this.children[r].toNode());
493
512
  return t;
494
513
  }, invalidAttributeNameRegex = /[\s"'>/=\x00-\x1f]/, toMarkup = function(t) {
495
- var r = "<" + t;
496
- this.classes.length && (r += " class=\"" + escape(createClass(this.classes)) + "\"");
497
- var a = "";
498
- for (var s of Object.keys(this.style)) a += hyphenate(s) + ":" + this.style[s] + ";";
499
- a && (r += " style=\"" + escape(a) + "\"");
500
- for (var c of Object.keys(this.attributes)) {
501
- if (invalidAttributeNameRegex.test(c)) throw new ParseError("Invalid attribute name '" + c + "'");
502
- r += " " + c + "=\"" + escape(this.attributes[c]) + "\"";
503
- }
504
- r += ">";
505
- for (var l = 0; l < this.children.length; l++) r += this.children[l].toMarkup();
506
- return r += "</" + t + ">", r;
514
+ var n = "<" + t;
515
+ this.classes.length && (n += " class=\"" + escape(createClass(this.classes)) + "\"");
516
+ var r = cssStyleToString(this.style);
517
+ r && (n += " style=\"" + escape(r) + "\"");
518
+ for (var a of Object.keys(this.attributes)) {
519
+ if (invalidAttributeNameRegex.test(a)) throw new ParseError("Invalid attribute name '" + a + "'");
520
+ n += " " + a + "=\"" + escape(this.attributes[a]) + "\"";
521
+ }
522
+ n += ">";
523
+ for (var s = 0; s < this.children.length; s++) n += this.children[s].toMarkup();
524
+ return n += "</" + t + ">", n;
507
525
  }, Span = class {
508
526
  constructor(e, t, n, r) {
509
- initNode.call(this, e, n, r), this.children = t || [];
527
+ this.children = void 0, this.attributes = void 0, this.classes = void 0, this.height = void 0, this.depth = void 0, this.width = void 0, this.maxFontSize = void 0, this.style = void 0, this.italic = void 0, initNode.call(this, e, n, r), this.children = t || [];
510
528
  }
511
529
  setAttribute(e, t) {
512
530
  this.attributes[e] = t;
@@ -522,7 +540,7 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
522
540
  }
523
541
  }, Anchor = class {
524
542
  constructor(e, t, n, r) {
525
- initNode.call(this, t, r), this.children = n || [], this.setAttribute("href", e);
543
+ this.children = void 0, this.attributes = void 0, this.classes = void 0, this.height = void 0, this.depth = void 0, this.maxFontSize = void 0, this.style = void 0, initNode.call(this, t, r), this.children = n || [], this.setAttribute("href", e);
526
544
  }
527
545
  setAttribute(e, t) {
528
546
  this.attributes[e] = t;
@@ -538,20 +556,17 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
538
556
  }
539
557
  }, Img = class {
540
558
  constructor(e, t, n) {
541
- this.alt = t, this.src = e, this.classes = ["mord"], this.height = 0, this.depth = 0, this.maxFontSize = 0, this.style = n;
559
+ this.src = void 0, this.alt = void 0, this.classes = void 0, this.height = void 0, this.depth = void 0, this.maxFontSize = void 0, this.style = void 0, this.alt = t, this.src = e, this.classes = ["mord"], this.height = 0, this.depth = 0, this.maxFontSize = 0, this.style = n;
542
560
  }
543
561
  hasClass(e) {
544
562
  return this.classes.includes(e);
545
563
  }
546
564
  toNode() {
547
565
  var e = document.createElement("img");
548
- e.src = this.src, e.alt = this.alt, e.className = "mord";
549
- for (var t of Object.keys(this.style)) e.style[t] = this.style[t];
550
- return e;
566
+ return e.src = this.src, e.alt = this.alt, e.className = "mord", Object.assign(e.style, this.style), e;
551
567
  }
552
568
  toMarkup() {
553
- var e = "<img src=\"" + escape(this.src) + "\"" + (" alt=\"" + escape(this.alt) + "\""), t = "";
554
- for (var r of Object.keys(this.style)) t += hyphenate(r) + ":" + this.style[r] + ";";
569
+ var e = "<img src=\"" + escape(this.src) + "\"" + (" alt=\"" + escape(this.alt) + "\""), t = cssStyleToString(this.style);
555
570
  return t && (e += " style=\"" + escape(t) + "\""), e += "'/>", e;
556
571
  }
557
572
  }, iCombinations = {
@@ -561,7 +576,7 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
561
576
  ì: "ı̀"
562
577
  }, SymbolNode = class {
563
578
  constructor(e, t, n, r, a, o, s, c) {
564
- this.text = e, this.height = t || 0, this.depth = n || 0, this.italic = r || 0, this.skew = a || 0, this.width = o || 0, this.classes = s || [], this.style = c || {}, this.maxFontSize = 0;
579
+ this.text = void 0, this.height = void 0, this.depth = void 0, this.italic = void 0, this.skew = void 0, this.width = void 0, this.maxFontSize = void 0, this.classes = void 0, this.style = void 0, this.text = e, this.height = t || 0, this.depth = n || 0, this.italic = r || 0, this.skew = a || 0, this.width = o || 0, this.classes = s || [], this.style = c || {}, this.maxFontSize = 0;
565
580
  var l = scriptFromCodepoint(this.text.charCodeAt(0));
566
581
  l && this.classes.push(l + "_fallback"), /[îïíì]/.test(this.text) && (this.text = iCombinations[this.text]);
567
582
  }
@@ -570,23 +585,19 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
570
585
  }
571
586
  toNode() {
572
587
  var e = document.createTextNode(this.text), t = null;
573
- this.italic > 0 && (t = document.createElement("span"), t.style.marginRight = makeEm(this.italic)), this.classes.length > 0 && (t ||= document.createElement("span"), t.className = createClass(this.classes));
574
- for (var n of Object.keys(this.style)) t ||= document.createElement("span"), t.style[n] = this.style[n];
575
- return t ? (t.appendChild(e), t) : e;
588
+ return this.italic > 0 && (t = document.createElement("span"), t.style.marginRight = makeEm(this.italic)), this.classes.length > 0 && (t ||= document.createElement("span"), t.className = createClass(this.classes)), Object.keys(this.style).length > 0 && (t ||= document.createElement("span"), Object.assign(t.style, this.style)), t ? (t.appendChild(e), t) : e;
576
589
  }
577
590
  toMarkup() {
578
591
  var e = !1, t = "<span";
579
592
  this.classes.length && (e = !0, t += " class=\"", t += escape(createClass(this.classes)), t += "\"");
580
- var r = "";
581
- this.italic > 0 && (r += "margin-right:" + makeEm(this.italic) + ";");
582
- for (var a of Object.keys(this.style)) r += hyphenate(a) + ":" + this.style[a] + ";";
583
- r && (e = !0, t += " style=\"" + escape(r) + "\"");
584
- var s = escape(this.text);
585
- return e ? (t += ">", t += s, t += "</span>", t) : s;
593
+ var n = "";
594
+ this.italic > 0 && (n += "margin-right:" + makeEm(this.italic) + ";"), n += cssStyleToString(this.style), n && (e = !0, t += " style=\"" + escape(n) + "\"");
595
+ var r = escape(this.text);
596
+ return e ? (t += ">", t += r, t += "</span>", t) : r;
586
597
  }
587
598
  }, SvgNode = class {
588
599
  constructor(e, t) {
589
- this.children = e || [], this.attributes = t || {};
600
+ this.children = void 0, this.attributes = void 0, this.children = e || [], this.attributes = t || {};
590
601
  }
591
602
  toNode() {
592
603
  var e = document.createElementNS("http://www.w3.org/2000/svg", "svg");
@@ -603,7 +614,7 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
603
614
  }
604
615
  }, PathNode = class {
605
616
  constructor(e, t) {
606
- this.pathName = e, this.alternate = t;
617
+ this.pathName = void 0, this.alternate = void 0, this.pathName = e, this.alternate = t;
607
618
  }
608
619
  toNode() {
609
620
  var e = document.createElementNS("http://www.w3.org/2000/svg", "path");
@@ -614,7 +625,7 @@ var doubleBrushStroke = (e) => e + " " + e, hLinePad = 80, sqrtMain = function(e
614
625
  }
615
626
  }, LineNode = class {
616
627
  constructor(e) {
617
- this.attributes = e || {};
628
+ this.attributes = void 0, this.attributes = e || {};
618
629
  }
619
630
  toNode() {
620
631
  var e = document.createElementNS("http://www.w3.org/2000/svg", "line");
@@ -15204,20 +15215,7 @@ function getGlobalMetrics(e) {
15204
15215
  }
15205
15216
  return fontMetricsBySizeIndex[t];
15206
15217
  }
15207
- var ATOMS = {
15208
- bin: 1,
15209
- close: 1,
15210
- inner: 1,
15211
- open: 1,
15212
- punct: 1,
15213
- rel: 1
15214
- }, NON_ATOMS = {
15215
- "accent-token": 1,
15216
- mathord: 1,
15217
- "op-token": 1,
15218
- spacing: 1,
15219
- textord: 1
15220
- }, symbols = {
15218
+ var symbols = {
15221
15219
  math: {},
15222
15220
  text: {}
15223
15221
  };
@@ -15229,7 +15227,7 @@ function defineSymbol(e, t, n, r, a, o) {
15229
15227
  }, o && r && (symbols[e][r] = symbols[e][a]);
15230
15228
  }
15231
15229
  var math = "math", text = "text", main = "main", ams = "ams", accent = "accent-token", bin = "bin", close = "close", inner = "inner", mathord = "mathord", op = "op-token", open = "open", punct = "punct", rel = "rel", spacing = "spacing", textord = "textord";
15232
- defineSymbol(math, main, rel, "≡", "\\equiv", !0), defineSymbol(math, main, rel, "≺", "\\prec", !0), defineSymbol(math, main, rel, "≻", "\\succ", !0), defineSymbol(math, main, rel, "∼", "\\sim", !0), defineSymbol(math, main, rel, "⊥", "\\perp"), defineSymbol(math, main, rel, "⪯", "\\preceq", !0), defineSymbol(math, main, rel, "⪰", "\\succeq", !0), defineSymbol(math, main, rel, "≃", "\\simeq", !0), defineSymbol(math, main, rel, "∣", "\\mid", !0), defineSymbol(math, main, rel, "≪", "\\ll", !0), defineSymbol(math, main, rel, "≫", "\\gg", !0), defineSymbol(math, main, rel, "≍", "\\asymp", !0), defineSymbol(math, main, rel, "∥", "\\parallel"), defineSymbol(math, main, rel, "⋈", "\\bowtie", !0), defineSymbol(math, main, rel, "⌣", "\\smile", !0), defineSymbol(math, main, rel, "⊑", "\\sqsubseteq", !0), defineSymbol(math, main, rel, "⊒", "\\sqsupseteq", !0), defineSymbol(math, main, rel, "≐", "\\doteq", !0), defineSymbol(math, main, rel, "⌢", "\\frown", !0), defineSymbol(math, main, rel, "∋", "\\ni", !0), defineSymbol(math, main, rel, "∝", "\\propto", !0), defineSymbol(math, main, rel, "⊢", "\\vdash", !0), defineSymbol(math, main, rel, "⊣", "\\dashv", !0), defineSymbol(math, main, rel, "∋", "\\owns"), defineSymbol(math, main, punct, ".", "\\ldotp"), defineSymbol(math, main, punct, "⋅", "\\cdotp"), defineSymbol(math, main, punct, "⋅", "·"), defineSymbol(text, main, textord, "⋅", "·"), defineSymbol(math, main, textord, "#", "\\#"), defineSymbol(text, main, textord, "#", "\\#"), defineSymbol(math, main, textord, "&", "\\&"), defineSymbol(text, main, textord, "&", "\\&"), defineSymbol(math, main, textord, "ℵ", "\\aleph", !0), defineSymbol(math, main, textord, "∀", "\\forall", !0), defineSymbol(math, main, textord, "ℏ", "\\hbar", !0), defineSymbol(math, main, textord, "∃", "\\exists", !0), defineSymbol(math, main, textord, "∇", "\\nabla", !0), defineSymbol(math, main, textord, "♭", "\\flat", !0), defineSymbol(math, main, textord, "ℓ", "\\ell", !0), defineSymbol(math, main, textord, "♮", "\\natural", !0), defineSymbol(math, main, textord, "♣", "\\clubsuit", !0), defineSymbol(math, main, textord, "℘", "\\wp", !0), defineSymbol(math, main, textord, "♯", "\\sharp", !0), defineSymbol(math, main, textord, "♢", "\\diamondsuit", !0), defineSymbol(math, main, textord, "ℜ", "\\Re", !0), defineSymbol(math, main, textord, "♡", "\\heartsuit", !0), defineSymbol(math, main, textord, "ℑ", "\\Im", !0), defineSymbol(math, main, textord, "♠", "\\spadesuit", !0), defineSymbol(math, main, textord, "§", "\\S", !0), defineSymbol(text, main, textord, "§", "\\S"), defineSymbol(math, main, textord, "¶", "\\P", !0), defineSymbol(text, main, textord, "¶", "\\P"), defineSymbol(math, main, textord, "†", "\\dag"), defineSymbol(text, main, textord, "†", "\\dag"), defineSymbol(text, main, textord, "†", "\\textdagger"), defineSymbol(math, main, textord, "‡", "\\ddag"), defineSymbol(text, main, textord, "‡", "\\ddag"), defineSymbol(text, main, textord, "‡", "\\textdaggerdbl"), defineSymbol(math, main, close, "⎱", "\\rmoustache", !0), defineSymbol(math, main, open, "⎰", "\\lmoustache", !0), defineSymbol(math, main, close, "⟯", "\\rgroup", !0), defineSymbol(math, main, open, "⟮", "\\lgroup", !0), defineSymbol(math, main, bin, "∓", "\\mp", !0), defineSymbol(math, main, bin, "⊖", "\\ominus", !0), defineSymbol(math, main, bin, "⊎", "\\uplus", !0), defineSymbol(math, main, bin, "⊓", "\\sqcap", !0), defineSymbol(math, main, bin, "∗", "\\ast"), defineSymbol(math, main, bin, "⊔", "\\sqcup", !0), defineSymbol(math, main, bin, "◯", "\\bigcirc", !0), defineSymbol(math, main, bin, "∙", "\\bullet", !0), defineSymbol(math, main, bin, "‡", "\\ddagger"), defineSymbol(math, main, bin, "≀", "\\wr", !0), defineSymbol(math, main, bin, "⨿", "\\amalg"), defineSymbol(math, main, bin, "&", "\\And"), defineSymbol(math, main, rel, "⟵", "\\longleftarrow", !0), defineSymbol(math, main, rel, "⇐", "\\Leftarrow", !0), defineSymbol(math, main, rel, "⟸", "\\Longleftarrow", !0), defineSymbol(math, main, rel, "⟶", "\\longrightarrow", !0), defineSymbol(math, main, rel, "⇒", "\\Rightarrow", !0), defineSymbol(math, main, rel, "⟹", "\\Longrightarrow", !0), defineSymbol(math, main, rel, "↔", "\\leftrightarrow", !0), defineSymbol(math, main, rel, "⟷", "\\longleftrightarrow", !0), defineSymbol(math, main, rel, "⇔", "\\Leftrightarrow", !0), defineSymbol(math, main, rel, "⟺", "\\Longleftrightarrow", !0), defineSymbol(math, main, rel, "↦", "\\mapsto", !0), defineSymbol(math, main, rel, "⟼", "\\longmapsto", !0), defineSymbol(math, main, rel, "↗", "\\nearrow", !0), defineSymbol(math, main, rel, "↩", "\\hookleftarrow", !0), defineSymbol(math, main, rel, "↪", "\\hookrightarrow", !0), defineSymbol(math, main, rel, "↘", "\\searrow", !0), defineSymbol(math, main, rel, "↼", "\\leftharpoonup", !0), defineSymbol(math, main, rel, "⇀", "\\rightharpoonup", !0), defineSymbol(math, main, rel, "↙", "\\swarrow", !0), defineSymbol(math, main, rel, "↽", "\\leftharpoondown", !0), defineSymbol(math, main, rel, "⇁", "\\rightharpoondown", !0), defineSymbol(math, main, rel, "↖", "\\nwarrow", !0), defineSymbol(math, main, rel, "⇌", "\\rightleftharpoons", !0), defineSymbol(math, ams, rel, "≮", "\\nless", !0), defineSymbol(math, ams, rel, "", "\\@nleqslant"), defineSymbol(math, ams, rel, "", "\\@nleqq"), defineSymbol(math, ams, rel, "⪇", "\\lneq", !0), defineSymbol(math, ams, rel, "≨", "\\lneqq", !0), defineSymbol(math, ams, rel, "", "\\@lvertneqq"), defineSymbol(math, ams, rel, "⋦", "\\lnsim", !0), defineSymbol(math, ams, rel, "⪉", "\\lnapprox", !0), defineSymbol(math, ams, rel, "⊀", "\\nprec", !0), defineSymbol(math, ams, rel, "⋠", "\\npreceq", !0), defineSymbol(math, ams, rel, "⋨", "\\precnsim", !0), defineSymbol(math, ams, rel, "⪹", "\\precnapprox", !0), defineSymbol(math, ams, rel, "≁", "\\nsim", !0), defineSymbol(math, ams, rel, "", "\\@nshortmid"), defineSymbol(math, ams, rel, "∤", "\\nmid", !0), defineSymbol(math, ams, rel, "⊬", "\\nvdash", !0), defineSymbol(math, ams, rel, "⊭", "\\nvDash", !0), defineSymbol(math, ams, rel, "⋪", "\\ntriangleleft"), defineSymbol(math, ams, rel, "⋬", "\\ntrianglelefteq", !0), defineSymbol(math, ams, rel, "⊊", "\\subsetneq", !0), defineSymbol(math, ams, rel, "", "\\@varsubsetneq"), defineSymbol(math, ams, rel, "⫋", "\\subsetneqq", !0), defineSymbol(math, ams, rel, "", "\\@varsubsetneqq"), defineSymbol(math, ams, rel, "≯", "\\ngtr", !0), defineSymbol(math, ams, rel, "", "\\@ngeqslant"), defineSymbol(math, ams, rel, "", "\\@ngeqq"), defineSymbol(math, ams, rel, "⪈", "\\gneq", !0), defineSymbol(math, ams, rel, "≩", "\\gneqq", !0), defineSymbol(math, ams, rel, "", "\\@gvertneqq"), defineSymbol(math, ams, rel, "⋧", "\\gnsim", !0), defineSymbol(math, ams, rel, "⪊", "\\gnapprox", !0), defineSymbol(math, ams, rel, "⊁", "\\nsucc", !0), defineSymbol(math, ams, rel, "⋡", "\\nsucceq", !0), defineSymbol(math, ams, rel, "⋩", "\\succnsim", !0), defineSymbol(math, ams, rel, "⪺", "\\succnapprox", !0), defineSymbol(math, ams, rel, "≆", "\\ncong", !0), defineSymbol(math, ams, rel, "", "\\@nshortparallel"), defineSymbol(math, ams, rel, "∦", "\\nparallel", !0), defineSymbol(math, ams, rel, "⊯", "\\nVDash", !0), defineSymbol(math, ams, rel, "⋫", "\\ntriangleright"), defineSymbol(math, ams, rel, "⋭", "\\ntrianglerighteq", !0), defineSymbol(math, ams, rel, "", "\\@nsupseteqq"), defineSymbol(math, ams, rel, "⊋", "\\supsetneq", !0), defineSymbol(math, ams, rel, "", "\\@varsupsetneq"), defineSymbol(math, ams, rel, "⫌", "\\supsetneqq", !0), defineSymbol(math, ams, rel, "", "\\@varsupsetneqq"), defineSymbol(math, ams, rel, "⊮", "\\nVdash", !0), defineSymbol(math, ams, rel, "⪵", "\\precneqq", !0), defineSymbol(math, ams, rel, "⪶", "\\succneqq", !0), defineSymbol(math, ams, rel, "", "\\@nsubseteqq"), defineSymbol(math, ams, bin, "⊴", "\\unlhd"), defineSymbol(math, ams, bin, "⊵", "\\unrhd"), defineSymbol(math, ams, rel, "↚", "\\nleftarrow", !0), defineSymbol(math, ams, rel, "↛", "\\nrightarrow", !0), defineSymbol(math, ams, rel, "⇍", "\\nLeftarrow", !0), defineSymbol(math, ams, rel, "⇏", "\\nRightarrow", !0), defineSymbol(math, ams, rel, "↮", "\\nleftrightarrow", !0), defineSymbol(math, ams, rel, "⇎", "\\nLeftrightarrow", !0), defineSymbol(math, ams, rel, "△", "\\vartriangle"), defineSymbol(math, ams, textord, "ℏ", "\\hslash"), defineSymbol(math, ams, textord, "▽", "\\triangledown"), defineSymbol(math, ams, textord, "◊", "\\lozenge"), defineSymbol(math, ams, textord, "Ⓢ", "\\circledS"), defineSymbol(math, ams, textord, "®", "\\circledR"), defineSymbol(text, ams, textord, "®", "\\circledR"), defineSymbol(math, ams, textord, "∡", "\\measuredangle", !0), defineSymbol(math, ams, textord, "∄", "\\nexists"), defineSymbol(math, ams, textord, "℧", "\\mho"), defineSymbol(math, ams, textord, "Ⅎ", "\\Finv", !0), defineSymbol(math, ams, textord, "⅁", "\\Game", !0), defineSymbol(math, ams, textord, "‵", "\\backprime"), defineSymbol(math, ams, textord, "▲", "\\blacktriangle"), defineSymbol(math, ams, textord, "▼", "\\blacktriangledown"), defineSymbol(math, ams, textord, "■", "\\blacksquare"), defineSymbol(math, ams, textord, "⧫", "\\blacklozenge"), defineSymbol(math, ams, textord, "★", "\\bigstar"), defineSymbol(math, ams, textord, "∢", "\\sphericalangle", !0), defineSymbol(math, ams, textord, "∁", "\\complement", !0), defineSymbol(math, ams, textord, "ð", "\\eth", !0), defineSymbol(text, main, textord, "ð", "ð"), defineSymbol(math, ams, textord, "╱", "\\diagup"), defineSymbol(math, ams, textord, "╲", "\\diagdown"), defineSymbol(math, ams, textord, "□", "\\square"), defineSymbol(math, ams, textord, "□", "\\Box"), defineSymbol(math, ams, textord, "◊", "\\Diamond"), defineSymbol(math, ams, textord, "¥", "\\yen", !0), defineSymbol(text, ams, textord, "¥", "\\yen", !0), defineSymbol(math, ams, textord, "✓", "\\checkmark", !0), defineSymbol(text, ams, textord, "✓", "\\checkmark"), defineSymbol(math, ams, textord, "ℶ", "\\beth", !0), defineSymbol(math, ams, textord, "ℸ", "\\daleth", !0), defineSymbol(math, ams, textord, "ℷ", "\\gimel", !0), defineSymbol(math, ams, textord, "ϝ", "\\digamma", !0), defineSymbol(math, ams, textord, "ϰ", "\\varkappa"), defineSymbol(math, ams, open, "┌", "\\@ulcorner", !0), defineSymbol(math, ams, close, "┐", "\\@urcorner", !0), defineSymbol(math, ams, open, "└", "\\@llcorner", !0), defineSymbol(math, ams, close, "┘", "\\@lrcorner", !0), defineSymbol(math, ams, rel, "≦", "\\leqq", !0), defineSymbol(math, ams, rel, "⩽", "\\leqslant", !0), defineSymbol(math, ams, rel, "⪕", "\\eqslantless", !0), defineSymbol(math, ams, rel, "≲", "\\lesssim", !0), defineSymbol(math, ams, rel, "⪅", "\\lessapprox", !0), defineSymbol(math, ams, rel, "≊", "\\approxeq", !0), defineSymbol(math, ams, bin, "⋖", "\\lessdot"), defineSymbol(math, ams, rel, "⋘", "\\lll", !0), defineSymbol(math, ams, rel, "≶", "\\lessgtr", !0), defineSymbol(math, ams, rel, "⋚", "\\lesseqgtr", !0), defineSymbol(math, ams, rel, "⪋", "\\lesseqqgtr", !0), defineSymbol(math, ams, rel, "≑", "\\doteqdot"), defineSymbol(math, ams, rel, "≓", "\\risingdotseq", !0), defineSymbol(math, ams, rel, "≒", "\\fallingdotseq", !0), defineSymbol(math, ams, rel, "∽", "\\backsim", !0), defineSymbol(math, ams, rel, "⋍", "\\backsimeq", !0), defineSymbol(math, ams, rel, "⫅", "\\subseteqq", !0), defineSymbol(math, ams, rel, "⋐", "\\Subset", !0), defineSymbol(math, ams, rel, "⊏", "\\sqsubset", !0), defineSymbol(math, ams, rel, "≼", "\\preccurlyeq", !0), defineSymbol(math, ams, rel, "⋞", "\\curlyeqprec", !0), defineSymbol(math, ams, rel, "≾", "\\precsim", !0), defineSymbol(math, ams, rel, "⪷", "\\precapprox", !0), defineSymbol(math, ams, rel, "⊲", "\\vartriangleleft"), defineSymbol(math, ams, rel, "⊴", "\\trianglelefteq"), defineSymbol(math, ams, rel, "⊨", "\\vDash", !0), defineSymbol(math, ams, rel, "⊪", "\\Vvdash", !0), defineSymbol(math, ams, rel, "⌣", "\\smallsmile"), defineSymbol(math, ams, rel, "⌢", "\\smallfrown"), defineSymbol(math, ams, rel, "≏", "\\bumpeq", !0), defineSymbol(math, ams, rel, "≎", "\\Bumpeq", !0), defineSymbol(math, ams, rel, "≧", "\\geqq", !0), defineSymbol(math, ams, rel, "⩾", "\\geqslant", !0), defineSymbol(math, ams, rel, "⪖", "\\eqslantgtr", !0), defineSymbol(math, ams, rel, "≳", "\\gtrsim", !0), defineSymbol(math, ams, rel, "⪆", "\\gtrapprox", !0), defineSymbol(math, ams, bin, "⋗", "\\gtrdot"), defineSymbol(math, ams, rel, "⋙", "\\ggg", !0), defineSymbol(math, ams, rel, "≷", "\\gtrless", !0), defineSymbol(math, ams, rel, "⋛", "\\gtreqless", !0), defineSymbol(math, ams, rel, "⪌", "\\gtreqqless", !0), defineSymbol(math, ams, rel, "≖", "\\eqcirc", !0), defineSymbol(math, ams, rel, "≗", "\\circeq", !0), defineSymbol(math, ams, rel, "≜", "\\triangleq", !0), defineSymbol(math, ams, rel, "∼", "\\thicksim"), defineSymbol(math, ams, rel, "≈", "\\thickapprox"), defineSymbol(math, ams, rel, "⫆", "\\supseteqq", !0), defineSymbol(math, ams, rel, "⋑", "\\Supset", !0), defineSymbol(math, ams, rel, "⊐", "\\sqsupset", !0), defineSymbol(math, ams, rel, "≽", "\\succcurlyeq", !0), defineSymbol(math, ams, rel, "⋟", "\\curlyeqsucc", !0), defineSymbol(math, ams, rel, "≿", "\\succsim", !0), defineSymbol(math, ams, rel, "⪸", "\\succapprox", !0), defineSymbol(math, ams, rel, "⊳", "\\vartriangleright"), defineSymbol(math, ams, rel, "⊵", "\\trianglerighteq"), defineSymbol(math, ams, rel, "⊩", "\\Vdash", !0), defineSymbol(math, ams, rel, "∣", "\\shortmid"), defineSymbol(math, ams, rel, "∥", "\\shortparallel"), defineSymbol(math, ams, rel, "≬", "\\between", !0), defineSymbol(math, ams, rel, "⋔", "\\pitchfork", !0), defineSymbol(math, ams, rel, "∝", "\\varpropto"), defineSymbol(math, ams, rel, "◀", "\\blacktriangleleft"), defineSymbol(math, ams, rel, "∴", "\\therefore", !0), defineSymbol(math, ams, rel, "∍", "\\backepsilon"), defineSymbol(math, ams, rel, "▶", "\\blacktriangleright"), defineSymbol(math, ams, rel, "∵", "\\because", !0), defineSymbol(math, ams, rel, "⋘", "\\llless"), defineSymbol(math, ams, rel, "⋙", "\\gggtr"), defineSymbol(math, ams, bin, "⊲", "\\lhd"), defineSymbol(math, ams, bin, "⊳", "\\rhd"), defineSymbol(math, ams, rel, "≂", "\\eqsim", !0), defineSymbol(math, main, rel, "⋈", "\\Join"), defineSymbol(math, ams, rel, "≑", "\\Doteq", !0), defineSymbol(math, ams, bin, "∔", "\\dotplus", !0), defineSymbol(math, ams, bin, "∖", "\\smallsetminus"), defineSymbol(math, ams, bin, "⋒", "\\Cap", !0), defineSymbol(math, ams, bin, "⋓", "\\Cup", !0), defineSymbol(math, ams, bin, "⩞", "\\doublebarwedge", !0), defineSymbol(math, ams, bin, "⊟", "\\boxminus", !0), defineSymbol(math, ams, bin, "⊞", "\\boxplus", !0), defineSymbol(math, ams, bin, "⋇", "\\divideontimes", !0), defineSymbol(math, ams, bin, "⋉", "\\ltimes", !0), defineSymbol(math, ams, bin, "⋊", "\\rtimes", !0), defineSymbol(math, ams, bin, "⋋", "\\leftthreetimes", !0), defineSymbol(math, ams, bin, "⋌", "\\rightthreetimes", !0), defineSymbol(math, ams, bin, "⋏", "\\curlywedge", !0), defineSymbol(math, ams, bin, "⋎", "\\curlyvee", !0), defineSymbol(math, ams, bin, "⊝", "\\circleddash", !0), defineSymbol(math, ams, bin, "⊛", "\\circledast", !0), defineSymbol(math, ams, bin, "⋅", "\\centerdot"), defineSymbol(math, ams, bin, "⊺", "\\intercal", !0), defineSymbol(math, ams, bin, "⋒", "\\doublecap"), defineSymbol(math, ams, bin, "⋓", "\\doublecup"), defineSymbol(math, ams, bin, "⊠", "\\boxtimes", !0), defineSymbol(math, ams, rel, "⇢", "\\dashrightarrow", !0), defineSymbol(math, ams, rel, "⇠", "\\dashleftarrow", !0), defineSymbol(math, ams, rel, "⇇", "\\leftleftarrows", !0), defineSymbol(math, ams, rel, "⇆", "\\leftrightarrows", !0), defineSymbol(math, ams, rel, "⇚", "\\Lleftarrow", !0), defineSymbol(math, ams, rel, "↞", "\\twoheadleftarrow", !0), defineSymbol(math, ams, rel, "↢", "\\leftarrowtail", !0), defineSymbol(math, ams, rel, "↫", "\\looparrowleft", !0), defineSymbol(math, ams, rel, "⇋", "\\leftrightharpoons", !0), defineSymbol(math, ams, rel, "↶", "\\curvearrowleft", !0), defineSymbol(math, ams, rel, "↺", "\\circlearrowleft", !0), defineSymbol(math, ams, rel, "↰", "\\Lsh", !0), defineSymbol(math, ams, rel, "⇈", "\\upuparrows", !0), defineSymbol(math, ams, rel, "↿", "\\upharpoonleft", !0), defineSymbol(math, ams, rel, "⇃", "\\downharpoonleft", !0), defineSymbol(math, main, rel, "⊶", "\\origof", !0), defineSymbol(math, main, rel, "⊷", "\\imageof", !0), defineSymbol(math, ams, rel, "⊸", "\\multimap", !0), defineSymbol(math, ams, rel, "↭", "\\leftrightsquigarrow", !0), defineSymbol(math, ams, rel, "⇉", "\\rightrightarrows", !0), defineSymbol(math, ams, rel, "⇄", "\\rightleftarrows", !0), defineSymbol(math, ams, rel, "↠", "\\twoheadrightarrow", !0), defineSymbol(math, ams, rel, "↣", "\\rightarrowtail", !0), defineSymbol(math, ams, rel, "↬", "\\looparrowright", !0), defineSymbol(math, ams, rel, "↷", "\\curvearrowright", !0), defineSymbol(math, ams, rel, "↻", "\\circlearrowright", !0), defineSymbol(math, ams, rel, "↱", "\\Rsh", !0), defineSymbol(math, ams, rel, "⇊", "\\downdownarrows", !0), defineSymbol(math, ams, rel, "↾", "\\upharpoonright", !0), defineSymbol(math, ams, rel, "⇂", "\\downharpoonright", !0), defineSymbol(math, ams, rel, "⇝", "\\rightsquigarrow", !0), defineSymbol(math, ams, rel, "⇝", "\\leadsto"), defineSymbol(math, ams, rel, "⇛", "\\Rrightarrow", !0), defineSymbol(math, ams, rel, "↾", "\\restriction"), defineSymbol(math, main, textord, "‘", "`"), defineSymbol(math, main, textord, "$", "\\$"), defineSymbol(text, main, textord, "$", "\\$"), defineSymbol(text, main, textord, "$", "\\textdollar"), defineSymbol(math, main, textord, "%", "\\%"), defineSymbol(text, main, textord, "%", "\\%"), defineSymbol(math, main, textord, "_", "\\_"), defineSymbol(text, main, textord, "_", "\\_"), defineSymbol(text, main, textord, "_", "\\textunderscore"), defineSymbol(math, main, textord, "∠", "\\angle", !0), defineSymbol(math, main, textord, "∞", "\\infty", !0), defineSymbol(math, main, textord, "′", "\\prime"), defineSymbol(math, main, textord, "△", "\\triangle"), defineSymbol(math, main, textord, "Γ", "\\Gamma", !0), defineSymbol(math, main, textord, "Δ", "\\Delta", !0), defineSymbol(math, main, textord, "Θ", "\\Theta", !0), defineSymbol(math, main, textord, "Λ", "\\Lambda", !0), defineSymbol(math, main, textord, "Ξ", "\\Xi", !0), defineSymbol(math, main, textord, "Π", "\\Pi", !0), defineSymbol(math, main, textord, "Σ", "\\Sigma", !0), defineSymbol(math, main, textord, "Υ", "\\Upsilon", !0), defineSymbol(math, main, textord, "Φ", "\\Phi", !0), defineSymbol(math, main, textord, "Ψ", "\\Psi", !0), defineSymbol(math, main, textord, "Ω", "\\Omega", !0), defineSymbol(math, main, textord, "A", "Α"), defineSymbol(math, main, textord, "B", "Β"), defineSymbol(math, main, textord, "E", "Ε"), defineSymbol(math, main, textord, "Z", "Ζ"), defineSymbol(math, main, textord, "H", "Η"), defineSymbol(math, main, textord, "I", "Ι"), defineSymbol(math, main, textord, "K", "Κ"), defineSymbol(math, main, textord, "M", "Μ"), defineSymbol(math, main, textord, "N", "Ν"), defineSymbol(math, main, textord, "O", "Ο"), defineSymbol(math, main, textord, "P", "Ρ"), defineSymbol(math, main, textord, "T", "Τ"), defineSymbol(math, main, textord, "X", "Χ"), defineSymbol(math, main, textord, "¬", "\\neg", !0), defineSymbol(math, main, textord, "¬", "\\lnot"), defineSymbol(math, main, textord, "⊤", "\\top"), defineSymbol(math, main, textord, "⊥", "\\bot"), defineSymbol(math, main, textord, "∅", "\\emptyset"), defineSymbol(math, ams, textord, "∅", "\\varnothing"), defineSymbol(math, main, mathord, "α", "\\alpha", !0), defineSymbol(math, main, mathord, "β", "\\beta", !0), defineSymbol(math, main, mathord, "γ", "\\gamma", !0), defineSymbol(math, main, mathord, "δ", "\\delta", !0), defineSymbol(math, main, mathord, "ϵ", "\\epsilon", !0), defineSymbol(math, main, mathord, "ζ", "\\zeta", !0), defineSymbol(math, main, mathord, "η", "\\eta", !0), defineSymbol(math, main, mathord, "θ", "\\theta", !0), defineSymbol(math, main, mathord, "ι", "\\iota", !0), defineSymbol(math, main, mathord, "κ", "\\kappa", !0), defineSymbol(math, main, mathord, "λ", "\\lambda", !0), defineSymbol(math, main, mathord, "μ", "\\mu", !0), defineSymbol(math, main, mathord, "ν", "\\nu", !0), defineSymbol(math, main, mathord, "ξ", "\\xi", !0), defineSymbol(math, main, mathord, "ο", "\\omicron", !0), defineSymbol(math, main, mathord, "π", "\\pi", !0), defineSymbol(math, main, mathord, "ρ", "\\rho", !0), defineSymbol(math, main, mathord, "σ", "\\sigma", !0), defineSymbol(math, main, mathord, "τ", "\\tau", !0), defineSymbol(math, main, mathord, "υ", "\\upsilon", !0), defineSymbol(math, main, mathord, "ϕ", "\\phi", !0), defineSymbol(math, main, mathord, "χ", "\\chi", !0), defineSymbol(math, main, mathord, "ψ", "\\psi", !0), defineSymbol(math, main, mathord, "ω", "\\omega", !0), defineSymbol(math, main, mathord, "ε", "\\varepsilon", !0), defineSymbol(math, main, mathord, "ϑ", "\\vartheta", !0), defineSymbol(math, main, mathord, "ϖ", "\\varpi", !0), defineSymbol(math, main, mathord, "ϱ", "\\varrho", !0), defineSymbol(math, main, mathord, "ς", "\\varsigma", !0), defineSymbol(math, main, mathord, "φ", "\\varphi", !0), defineSymbol(math, main, bin, "∗", "*", !0), defineSymbol(math, main, bin, "+", "+"), defineSymbol(math, main, bin, "−", "-", !0), defineSymbol(math, main, bin, "⋅", "\\cdot", !0), defineSymbol(math, main, bin, "∘", "\\circ", !0), defineSymbol(math, main, bin, "÷", "\\div", !0), defineSymbol(math, main, bin, "±", "\\pm", !0), defineSymbol(math, main, bin, "×", "\\times", !0), defineSymbol(math, main, bin, "∩", "\\cap", !0), defineSymbol(math, main, bin, "∪", "\\cup", !0), defineSymbol(math, main, bin, "∖", "\\setminus", !0), defineSymbol(math, main, bin, "∧", "\\land"), defineSymbol(math, main, bin, "∨", "\\lor"), defineSymbol(math, main, bin, "∧", "\\wedge", !0), defineSymbol(math, main, bin, "∨", "\\vee", !0), defineSymbol(math, main, textord, "√", "\\surd"), defineSymbol(math, main, open, "⟨", "\\langle", !0), defineSymbol(math, main, open, "∣", "\\lvert"), defineSymbol(math, main, open, "∥", "\\lVert"), defineSymbol(math, main, close, "?", "?"), defineSymbol(math, main, close, "!", "!"), defineSymbol(math, main, close, "⟩", "\\rangle", !0), defineSymbol(math, main, close, "∣", "\\rvert"), defineSymbol(math, main, close, "∥", "\\rVert"), defineSymbol(math, main, rel, "=", "="), defineSymbol(math, main, rel, ":", ":"), defineSymbol(math, main, rel, "≈", "\\approx", !0), defineSymbol(math, main, rel, "≅", "\\cong", !0), defineSymbol(math, main, rel, "≥", "\\ge"), defineSymbol(math, main, rel, "≥", "\\geq", !0), defineSymbol(math, main, rel, "←", "\\gets"), defineSymbol(math, main, rel, ">", "\\gt", !0), defineSymbol(math, main, rel, "∈", "\\in", !0), defineSymbol(math, main, rel, "", "\\@not"), defineSymbol(math, main, rel, "⊂", "\\subset", !0), defineSymbol(math, main, rel, "⊃", "\\supset", !0), defineSymbol(math, main, rel, "⊆", "\\subseteq", !0), defineSymbol(math, main, rel, "⊇", "\\supseteq", !0), defineSymbol(math, ams, rel, "⊈", "\\nsubseteq", !0), defineSymbol(math, ams, rel, "⊉", "\\nsupseteq", !0), defineSymbol(math, main, rel, "⊨", "\\models"), defineSymbol(math, main, rel, "←", "\\leftarrow", !0), defineSymbol(math, main, rel, "≤", "\\le"), defineSymbol(math, main, rel, "≤", "\\leq", !0), defineSymbol(math, main, rel, "<", "\\lt", !0), defineSymbol(math, main, rel, "→", "\\rightarrow", !0), defineSymbol(math, main, rel, "→", "\\to"), defineSymbol(math, ams, rel, "≱", "\\ngeq", !0), defineSymbol(math, ams, rel, "≰", "\\nleq", !0), defineSymbol(math, main, spacing, "\xA0", "\\ "), defineSymbol(math, main, spacing, "\xA0", "\\space"), defineSymbol(math, main, spacing, "\xA0", "\\nobreakspace"), defineSymbol(text, main, spacing, "\xA0", "\\ "), defineSymbol(text, main, spacing, "\xA0", " "), defineSymbol(text, main, spacing, "\xA0", "\\space"), defineSymbol(text, main, spacing, "\xA0", "\\nobreakspace"), defineSymbol(math, main, spacing, null, "\\nobreak"), defineSymbol(math, main, spacing, null, "\\allowbreak"), defineSymbol(math, main, punct, ",", ","), defineSymbol(math, main, punct, ";", ";"), defineSymbol(math, ams, bin, "⊼", "\\barwedge", !0), defineSymbol(math, ams, bin, "⊻", "\\veebar", !0), defineSymbol(math, main, bin, "⊙", "\\odot", !0), defineSymbol(math, main, bin, "⊕", "\\oplus", !0), defineSymbol(math, main, bin, "⊗", "\\otimes", !0), defineSymbol(math, main, textord, "∂", "\\partial", !0), defineSymbol(math, main, bin, "⊘", "\\oslash", !0), defineSymbol(math, ams, bin, "⊚", "\\circledcirc", !0), defineSymbol(math, ams, bin, "⊡", "\\boxdot", !0), defineSymbol(math, main, bin, "△", "\\bigtriangleup"), defineSymbol(math, main, bin, "▽", "\\bigtriangledown"), defineSymbol(math, main, bin, "†", "\\dagger"), defineSymbol(math, main, bin, "⋄", "\\diamond"), defineSymbol(math, main, bin, "⋆", "\\star"), defineSymbol(math, main, bin, "◃", "\\triangleleft"), defineSymbol(math, main, bin, "▹", "\\triangleright"), defineSymbol(math, main, open, "{", "\\{"), defineSymbol(text, main, textord, "{", "\\{"), defineSymbol(text, main, textord, "{", "\\textbraceleft"), defineSymbol(math, main, close, "}", "\\}"), defineSymbol(text, main, textord, "}", "\\}"), defineSymbol(text, main, textord, "}", "\\textbraceright"), defineSymbol(math, main, open, "{", "\\lbrace"), defineSymbol(math, main, close, "}", "\\rbrace"), defineSymbol(math, main, open, "[", "\\lbrack", !0), defineSymbol(text, main, textord, "[", "\\lbrack", !0), defineSymbol(math, main, close, "]", "\\rbrack", !0), defineSymbol(text, main, textord, "]", "\\rbrack", !0), defineSymbol(math, main, open, "(", "\\lparen", !0), defineSymbol(math, main, close, ")", "\\rparen", !0), defineSymbol(text, main, textord, "<", "\\textless", !0), defineSymbol(text, main, textord, ">", "\\textgreater", !0), defineSymbol(math, main, open, "⌊", "\\lfloor", !0), defineSymbol(math, main, close, "⌋", "\\rfloor", !0), defineSymbol(math, main, open, "⌈", "\\lceil", !0), defineSymbol(math, main, close, "⌉", "\\rceil", !0), defineSymbol(math, main, textord, "\\", "\\backslash"), defineSymbol(math, main, textord, "∣", "|"), defineSymbol(math, main, textord, "∣", "\\vert"), defineSymbol(text, main, textord, "|", "\\textbar", !0), defineSymbol(math, main, textord, "∥", "\\|"), defineSymbol(math, main, textord, "∥", "\\Vert"), defineSymbol(text, main, textord, "∥", "\\textbardbl"), defineSymbol(text, main, textord, "~", "\\textasciitilde"), defineSymbol(text, main, textord, "\\", "\\textbackslash"), defineSymbol(text, main, textord, "^", "\\textasciicircum"), defineSymbol(math, main, rel, "↑", "\\uparrow", !0), defineSymbol(math, main, rel, "⇑", "\\Uparrow", !0), defineSymbol(math, main, rel, "↓", "\\downarrow", !0), defineSymbol(math, main, rel, "⇓", "\\Downarrow", !0), defineSymbol(math, main, rel, "↕", "\\updownarrow", !0), defineSymbol(math, main, rel, "⇕", "\\Updownarrow", !0), defineSymbol(math, main, op, "∐", "\\coprod"), defineSymbol(math, main, op, "⋁", "\\bigvee"), defineSymbol(math, main, op, "⋀", "\\bigwedge"), defineSymbol(math, main, op, "⨄", "\\biguplus"), defineSymbol(math, main, op, "⋂", "\\bigcap"), defineSymbol(math, main, op, "⋃", "\\bigcup"), defineSymbol(math, main, op, "∫", "\\int"), defineSymbol(math, main, op, "∫", "\\intop"), defineSymbol(math, main, op, "∬", "\\iint"), defineSymbol(math, main, op, "∭", "\\iiint"), defineSymbol(math, main, op, "∏", "\\prod"), defineSymbol(math, main, op, "∑", "\\sum"), defineSymbol(math, main, op, "⨂", "\\bigotimes"), defineSymbol(math, main, op, "⨁", "\\bigoplus"), defineSymbol(math, main, op, "⨀", "\\bigodot"), defineSymbol(math, main, op, "∮", "\\oint"), defineSymbol(math, main, op, "∯", "\\oiint"), defineSymbol(math, main, op, "∰", "\\oiiint"), defineSymbol(math, main, op, "⨆", "\\bigsqcup"), defineSymbol(math, main, op, "∫", "\\smallint"), defineSymbol(text, main, inner, "…", "\\textellipsis"), defineSymbol(math, main, inner, "…", "\\mathellipsis"), defineSymbol(text, main, inner, "…", "\\ldots", !0), defineSymbol(math, main, inner, "…", "\\ldots", !0), defineSymbol(math, main, inner, "⋯", "\\@cdots", !0), defineSymbol(math, main, inner, "⋱", "\\ddots", !0), defineSymbol(math, main, textord, "⋮", "\\varvdots"), defineSymbol(text, main, textord, "⋮", "\\varvdots"), defineSymbol(math, main, accent, "ˊ", "\\acute"), defineSymbol(math, main, accent, "ˋ", "\\grave"), defineSymbol(math, main, accent, "¨", "\\ddot"), defineSymbol(math, main, accent, "~", "\\tilde"), defineSymbol(math, main, accent, "ˉ", "\\bar"), defineSymbol(math, main, accent, "˘", "\\breve"), defineSymbol(math, main, accent, "ˇ", "\\check"), defineSymbol(math, main, accent, "^", "\\hat"), defineSymbol(math, main, accent, "⃗", "\\vec"), defineSymbol(math, main, accent, "˙", "\\dot"), defineSymbol(math, main, accent, "˚", "\\mathring"), defineSymbol(math, main, mathord, "", "\\@imath"), defineSymbol(math, main, mathord, "", "\\@jmath"), defineSymbol(math, main, textord, "ı", "ı"), defineSymbol(math, main, textord, "ȷ", "ȷ"), defineSymbol(text, main, textord, "ı", "\\i", !0), defineSymbol(text, main, textord, "ȷ", "\\j", !0), defineSymbol(text, main, textord, "ß", "\\ss", !0), defineSymbol(text, main, textord, "æ", "\\ae", !0), defineSymbol(text, main, textord, "œ", "\\oe", !0), defineSymbol(text, main, textord, "ø", "\\o", !0), defineSymbol(text, main, textord, "Æ", "\\AE", !0), defineSymbol(text, main, textord, "Œ", "\\OE", !0), defineSymbol(text, main, textord, "Ø", "\\O", !0), defineSymbol(text, main, accent, "ˊ", "\\'"), defineSymbol(text, main, accent, "ˋ", "\\`"), defineSymbol(text, main, accent, "ˆ", "\\^"), defineSymbol(text, main, accent, "˜", "\\~"), defineSymbol(text, main, accent, "ˉ", "\\="), defineSymbol(text, main, accent, "˘", "\\u"), defineSymbol(text, main, accent, "˙", "\\."), defineSymbol(text, main, accent, "¸", "\\c"), defineSymbol(text, main, accent, "˚", "\\r"), defineSymbol(text, main, accent, "ˇ", "\\v"), defineSymbol(text, main, accent, "¨", "\\\""), defineSymbol(text, main, accent, "˝", "\\H"), defineSymbol(text, main, accent, "◯", "\\textcircled");
15230
+ defineSymbol(math, main, rel, "≡", "\\equiv", !0), defineSymbol(math, main, rel, "≺", "\\prec", !0), defineSymbol(math, main, rel, "≻", "\\succ", !0), defineSymbol(math, main, rel, "∼", "\\sim", !0), defineSymbol(math, main, rel, "⊥", "\\perp"), defineSymbol(math, main, rel, "⪯", "\\preceq", !0), defineSymbol(math, main, rel, "⪰", "\\succeq", !0), defineSymbol(math, main, rel, "≃", "\\simeq", !0), defineSymbol(math, main, rel, "∣", "\\mid", !0), defineSymbol(math, main, rel, "≪", "\\ll", !0), defineSymbol(math, main, rel, "≫", "\\gg", !0), defineSymbol(math, main, rel, "≍", "\\asymp", !0), defineSymbol(math, main, rel, "∥", "\\parallel"), defineSymbol(math, main, rel, "⋈", "\\bowtie", !0), defineSymbol(math, main, rel, "⌣", "\\smile", !0), defineSymbol(math, main, rel, "⊑", "\\sqsubseteq", !0), defineSymbol(math, main, rel, "⊒", "\\sqsupseteq", !0), defineSymbol(math, main, rel, "≐", "\\doteq", !0), defineSymbol(math, main, rel, "⌢", "\\frown", !0), defineSymbol(math, main, rel, "∋", "\\ni", !0), defineSymbol(math, main, rel, "∝", "\\propto", !0), defineSymbol(math, main, rel, "⊢", "\\vdash", !0), defineSymbol(math, main, rel, "⊣", "\\dashv", !0), defineSymbol(math, main, rel, "∋", "\\owns"), defineSymbol(math, main, punct, ".", "\\ldotp"), defineSymbol(math, main, punct, "⋅", "\\cdotp"), defineSymbol(math, main, punct, "⋅", "·"), defineSymbol(text, main, textord, "⋅", "·"), defineSymbol(math, main, textord, "#", "\\#"), defineSymbol(text, main, textord, "#", "\\#"), defineSymbol(math, main, textord, "&", "\\&"), defineSymbol(text, main, textord, "&", "\\&"), defineSymbol(math, main, textord, "ℵ", "\\aleph", !0), defineSymbol(math, main, textord, "∀", "\\forall", !0), defineSymbol(math, main, textord, "ℏ", "\\hbar", !0), defineSymbol(math, main, textord, "∃", "\\exists", !0), defineSymbol(math, main, textord, "∇", "\\nabla", !0), defineSymbol(math, main, textord, "♭", "\\flat", !0), defineSymbol(math, main, textord, "ℓ", "\\ell", !0), defineSymbol(math, main, textord, "♮", "\\natural", !0), defineSymbol(math, main, textord, "♣", "\\clubsuit", !0), defineSymbol(math, main, textord, "℘", "\\wp", !0), defineSymbol(math, main, textord, "♯", "\\sharp", !0), defineSymbol(math, main, textord, "♢", "\\diamondsuit", !0), defineSymbol(math, main, textord, "ℜ", "\\Re", !0), defineSymbol(math, main, textord, "♡", "\\heartsuit", !0), defineSymbol(math, main, textord, "ℑ", "\\Im", !0), defineSymbol(math, main, textord, "♠", "\\spadesuit", !0), defineSymbol(math, main, textord, "§", "\\S", !0), defineSymbol(text, main, textord, "§", "\\S"), defineSymbol(math, main, textord, "¶", "\\P", !0), defineSymbol(text, main, textord, "¶", "\\P"), defineSymbol(math, main, textord, "†", "\\dag"), defineSymbol(text, main, textord, "†", "\\dag"), defineSymbol(text, main, textord, "†", "\\textdagger"), defineSymbol(math, main, textord, "‡", "\\ddag"), defineSymbol(text, main, textord, "‡", "\\ddag"), defineSymbol(text, main, textord, "‡", "\\textdaggerdbl"), defineSymbol(math, main, close, "⎱", "\\rmoustache", !0), defineSymbol(math, main, open, "⎰", "\\lmoustache", !0), defineSymbol(math, main, close, "⟯", "\\rgroup", !0), defineSymbol(math, main, open, "⟮", "\\lgroup", !0), defineSymbol(math, main, bin, "∓", "\\mp", !0), defineSymbol(math, main, bin, "⊖", "\\ominus", !0), defineSymbol(math, main, bin, "⊎", "\\uplus", !0), defineSymbol(math, main, bin, "⊓", "\\sqcap", !0), defineSymbol(math, main, bin, "∗", "\\ast"), defineSymbol(math, main, bin, "⊔", "\\sqcup", !0), defineSymbol(math, main, bin, "◯", "\\bigcirc", !0), defineSymbol(math, main, bin, "∙", "\\bullet", !0), defineSymbol(math, main, bin, "‡", "\\ddagger"), defineSymbol(math, main, bin, "≀", "\\wr", !0), defineSymbol(math, main, bin, "⨿", "\\amalg"), defineSymbol(math, main, bin, "&", "\\And"), defineSymbol(math, main, rel, "⟵", "\\longleftarrow", !0), defineSymbol(math, main, rel, "⇐", "\\Leftarrow", !0), defineSymbol(math, main, rel, "⟸", "\\Longleftarrow", !0), defineSymbol(math, main, rel, "⟶", "\\longrightarrow", !0), defineSymbol(math, main, rel, "⇒", "\\Rightarrow", !0), defineSymbol(math, main, rel, "⟹", "\\Longrightarrow", !0), defineSymbol(math, main, rel, "↔", "\\leftrightarrow", !0), defineSymbol(math, main, rel, "⟷", "\\longleftrightarrow", !0), defineSymbol(math, main, rel, "⇔", "\\Leftrightarrow", !0), defineSymbol(math, main, rel, "⟺", "\\Longleftrightarrow", !0), defineSymbol(math, main, rel, "↦", "\\mapsto", !0), defineSymbol(math, main, rel, "⟼", "\\longmapsto", !0), defineSymbol(math, main, rel, "↗", "\\nearrow", !0), defineSymbol(math, main, rel, "↩", "\\hookleftarrow", !0), defineSymbol(math, main, rel, "↪", "\\hookrightarrow", !0), defineSymbol(math, main, rel, "↘", "\\searrow", !0), defineSymbol(math, main, rel, "↼", "\\leftharpoonup", !0), defineSymbol(math, main, rel, "⇀", "\\rightharpoonup", !0), defineSymbol(math, main, rel, "↙", "\\swarrow", !0), defineSymbol(math, main, rel, "↽", "\\leftharpoondown", !0), defineSymbol(math, main, rel, "⇁", "\\rightharpoondown", !0), defineSymbol(math, main, rel, "↖", "\\nwarrow", !0), defineSymbol(math, main, rel, "⇌", "\\rightleftharpoons", !0), defineSymbol(math, ams, rel, "≮", "\\nless", !0), defineSymbol(math, ams, rel, "", "\\@nleqslant"), defineSymbol(math, ams, rel, "", "\\@nleqq"), defineSymbol(math, ams, rel, "⪇", "\\lneq", !0), defineSymbol(math, ams, rel, "≨", "\\lneqq", !0), defineSymbol(math, ams, rel, "", "\\@lvertneqq"), defineSymbol(math, ams, rel, "⋦", "\\lnsim", !0), defineSymbol(math, ams, rel, "⪉", "\\lnapprox", !0), defineSymbol(math, ams, rel, "⊀", "\\nprec", !0), defineSymbol(math, ams, rel, "⋠", "\\npreceq", !0), defineSymbol(math, ams, rel, "⋨", "\\precnsim", !0), defineSymbol(math, ams, rel, "⪹", "\\precnapprox", !0), defineSymbol(math, ams, rel, "≁", "\\nsim", !0), defineSymbol(math, ams, rel, "", "\\@nshortmid"), defineSymbol(math, ams, rel, "∤", "\\nmid", !0), defineSymbol(math, ams, rel, "⊬", "\\nvdash", !0), defineSymbol(math, ams, rel, "⊭", "\\nvDash", !0), defineSymbol(math, ams, rel, "⋪", "\\ntriangleleft"), defineSymbol(math, ams, rel, "⋬", "\\ntrianglelefteq", !0), defineSymbol(math, ams, rel, "⊊", "\\subsetneq", !0), defineSymbol(math, ams, rel, "", "\\@varsubsetneq"), defineSymbol(math, ams, rel, "⫋", "\\subsetneqq", !0), defineSymbol(math, ams, rel, "", "\\@varsubsetneqq"), defineSymbol(math, ams, rel, "≯", "\\ngtr", !0), defineSymbol(math, ams, rel, "", "\\@ngeqslant"), defineSymbol(math, ams, rel, "", "\\@ngeqq"), defineSymbol(math, ams, rel, "⪈", "\\gneq", !0), defineSymbol(math, ams, rel, "≩", "\\gneqq", !0), defineSymbol(math, ams, rel, "", "\\@gvertneqq"), defineSymbol(math, ams, rel, "⋧", "\\gnsim", !0), defineSymbol(math, ams, rel, "⪊", "\\gnapprox", !0), defineSymbol(math, ams, rel, "⊁", "\\nsucc", !0), defineSymbol(math, ams, rel, "⋡", "\\nsucceq", !0), defineSymbol(math, ams, rel, "⋩", "\\succnsim", !0), defineSymbol(math, ams, rel, "⪺", "\\succnapprox", !0), defineSymbol(math, ams, rel, "≆", "\\ncong", !0), defineSymbol(math, ams, rel, "", "\\@nshortparallel"), defineSymbol(math, ams, rel, "∦", "\\nparallel", !0), defineSymbol(math, ams, rel, "⊯", "\\nVDash", !0), defineSymbol(math, ams, rel, "⋫", "\\ntriangleright"), defineSymbol(math, ams, rel, "⋭", "\\ntrianglerighteq", !0), defineSymbol(math, ams, rel, "", "\\@nsupseteqq"), defineSymbol(math, ams, rel, "⊋", "\\supsetneq", !0), defineSymbol(math, ams, rel, "", "\\@varsupsetneq"), defineSymbol(math, ams, rel, "⫌", "\\supsetneqq", !0), defineSymbol(math, ams, rel, "", "\\@varsupsetneqq"), defineSymbol(math, ams, rel, "⊮", "\\nVdash", !0), defineSymbol(math, ams, rel, "⪵", "\\precneqq", !0), defineSymbol(math, ams, rel, "⪶", "\\succneqq", !0), defineSymbol(math, ams, rel, "", "\\@nsubseteqq"), defineSymbol(math, ams, bin, "⊴", "\\unlhd"), defineSymbol(math, ams, bin, "⊵", "\\unrhd"), defineSymbol(math, ams, rel, "↚", "\\nleftarrow", !0), defineSymbol(math, ams, rel, "↛", "\\nrightarrow", !0), defineSymbol(math, ams, rel, "⇍", "\\nLeftarrow", !0), defineSymbol(math, ams, rel, "⇏", "\\nRightarrow", !0), defineSymbol(math, ams, rel, "↮", "\\nleftrightarrow", !0), defineSymbol(math, ams, rel, "⇎", "\\nLeftrightarrow", !0), defineSymbol(math, ams, rel, "△", "\\vartriangle"), defineSymbol(math, ams, textord, "ℏ", "\\hslash"), defineSymbol(math, ams, textord, "▽", "\\triangledown"), defineSymbol(math, ams, textord, "◊", "\\lozenge"), defineSymbol(math, ams, textord, "Ⓢ", "\\circledS"), defineSymbol(math, ams, textord, "®", "\\circledR"), defineSymbol(text, ams, textord, "®", "\\circledR"), defineSymbol(math, ams, textord, "∡", "\\measuredangle", !0), defineSymbol(math, ams, textord, "∄", "\\nexists"), defineSymbol(math, ams, textord, "℧", "\\mho"), defineSymbol(math, ams, textord, "Ⅎ", "\\Finv", !0), defineSymbol(math, ams, textord, "⅁", "\\Game", !0), defineSymbol(math, ams, textord, "‵", "\\backprime"), defineSymbol(math, ams, textord, "▲", "\\blacktriangle"), defineSymbol(math, ams, textord, "▼", "\\blacktriangledown"), defineSymbol(math, ams, textord, "■", "\\blacksquare"), defineSymbol(math, ams, textord, "⧫", "\\blacklozenge"), defineSymbol(math, ams, textord, "★", "\\bigstar"), defineSymbol(math, ams, textord, "∢", "\\sphericalangle", !0), defineSymbol(math, ams, textord, "∁", "\\complement", !0), defineSymbol(math, ams, textord, "ð", "\\eth", !0), defineSymbol(text, main, textord, "ð", "ð"), defineSymbol(math, ams, textord, "╱", "\\diagup"), defineSymbol(math, ams, textord, "╲", "\\diagdown"), defineSymbol(math, ams, textord, "□", "\\square"), defineSymbol(math, ams, textord, "□", "\\Box"), defineSymbol(math, ams, textord, "◊", "\\Diamond"), defineSymbol(math, ams, textord, "¥", "\\yen", !0), defineSymbol(text, ams, textord, "¥", "\\yen", !0), defineSymbol(math, ams, textord, "✓", "\\checkmark", !0), defineSymbol(text, ams, textord, "✓", "\\checkmark"), defineSymbol(math, ams, textord, "ℶ", "\\beth", !0), defineSymbol(math, ams, textord, "ℸ", "\\daleth", !0), defineSymbol(math, ams, textord, "ℷ", "\\gimel", !0), defineSymbol(math, ams, textord, "ϝ", "\\digamma", !0), defineSymbol(math, ams, textord, "ϰ", "\\varkappa"), defineSymbol(math, ams, open, "┌", "\\@ulcorner", !0), defineSymbol(math, ams, close, "┐", "\\@urcorner", !0), defineSymbol(math, ams, open, "└", "\\@llcorner", !0), defineSymbol(math, ams, close, "┘", "\\@lrcorner", !0), defineSymbol(math, ams, rel, "≦", "\\leqq", !0), defineSymbol(math, ams, rel, "⩽", "\\leqslant", !0), defineSymbol(math, ams, rel, "⪕", "\\eqslantless", !0), defineSymbol(math, ams, rel, "≲", "\\lesssim", !0), defineSymbol(math, ams, rel, "⪅", "\\lessapprox", !0), defineSymbol(math, ams, rel, "≊", "\\approxeq", !0), defineSymbol(math, ams, bin, "⋖", "\\lessdot"), defineSymbol(math, ams, rel, "⋘", "\\lll", !0), defineSymbol(math, ams, rel, "≶", "\\lessgtr", !0), defineSymbol(math, ams, rel, "⋚", "\\lesseqgtr", !0), defineSymbol(math, ams, rel, "⪋", "\\lesseqqgtr", !0), defineSymbol(math, ams, rel, "≑", "\\doteqdot"), defineSymbol(math, ams, rel, "≓", "\\risingdotseq", !0), defineSymbol(math, ams, rel, "≒", "\\fallingdotseq", !0), defineSymbol(math, ams, rel, "∽", "\\backsim", !0), defineSymbol(math, ams, rel, "⋍", "\\backsimeq", !0), defineSymbol(math, ams, rel, "⫅", "\\subseteqq", !0), defineSymbol(math, ams, rel, "⋐", "\\Subset", !0), defineSymbol(math, ams, rel, "⊏", "\\sqsubset", !0), defineSymbol(math, ams, rel, "≼", "\\preccurlyeq", !0), defineSymbol(math, ams, rel, "⋞", "\\curlyeqprec", !0), defineSymbol(math, ams, rel, "≾", "\\precsim", !0), defineSymbol(math, ams, rel, "⪷", "\\precapprox", !0), defineSymbol(math, ams, rel, "⊲", "\\vartriangleleft"), defineSymbol(math, ams, rel, "⊴", "\\trianglelefteq"), defineSymbol(math, ams, rel, "⊨", "\\vDash", !0), defineSymbol(math, ams, rel, "⊪", "\\Vvdash", !0), defineSymbol(math, ams, rel, "⌣", "\\smallsmile"), defineSymbol(math, ams, rel, "⌢", "\\smallfrown"), defineSymbol(math, ams, rel, "≏", "\\bumpeq", !0), defineSymbol(math, ams, rel, "≎", "\\Bumpeq", !0), defineSymbol(math, ams, rel, "≧", "\\geqq", !0), defineSymbol(math, ams, rel, "⩾", "\\geqslant", !0), defineSymbol(math, ams, rel, "⪖", "\\eqslantgtr", !0), defineSymbol(math, ams, rel, "≳", "\\gtrsim", !0), defineSymbol(math, ams, rel, "⪆", "\\gtrapprox", !0), defineSymbol(math, ams, bin, "⋗", "\\gtrdot"), defineSymbol(math, ams, rel, "⋙", "\\ggg", !0), defineSymbol(math, ams, rel, "≷", "\\gtrless", !0), defineSymbol(math, ams, rel, "⋛", "\\gtreqless", !0), defineSymbol(math, ams, rel, "⪌", "\\gtreqqless", !0), defineSymbol(math, ams, rel, "≖", "\\eqcirc", !0), defineSymbol(math, ams, rel, "≗", "\\circeq", !0), defineSymbol(math, ams, rel, "≜", "\\triangleq", !0), defineSymbol(math, ams, rel, "∼", "\\thicksim"), defineSymbol(math, ams, rel, "≈", "\\thickapprox"), defineSymbol(math, ams, rel, "⫆", "\\supseteqq", !0), defineSymbol(math, ams, rel, "⋑", "\\Supset", !0), defineSymbol(math, ams, rel, "⊐", "\\sqsupset", !0), defineSymbol(math, ams, rel, "≽", "\\succcurlyeq", !0), defineSymbol(math, ams, rel, "⋟", "\\curlyeqsucc", !0), defineSymbol(math, ams, rel, "≿", "\\succsim", !0), defineSymbol(math, ams, rel, "⪸", "\\succapprox", !0), defineSymbol(math, ams, rel, "⊳", "\\vartriangleright"), defineSymbol(math, ams, rel, "⊵", "\\trianglerighteq"), defineSymbol(math, ams, rel, "⊩", "\\Vdash", !0), defineSymbol(math, ams, rel, "∣", "\\shortmid"), defineSymbol(math, ams, rel, "∥", "\\shortparallel"), defineSymbol(math, ams, rel, "≬", "\\between", !0), defineSymbol(math, ams, rel, "⋔", "\\pitchfork", !0), defineSymbol(math, ams, rel, "∝", "\\varpropto"), defineSymbol(math, ams, rel, "◀", "\\blacktriangleleft"), defineSymbol(math, ams, rel, "∴", "\\therefore", !0), defineSymbol(math, ams, rel, "∍", "\\backepsilon"), defineSymbol(math, ams, rel, "▶", "\\blacktriangleright"), defineSymbol(math, ams, rel, "∵", "\\because", !0), defineSymbol(math, ams, rel, "⋘", "\\llless"), defineSymbol(math, ams, rel, "⋙", "\\gggtr"), defineSymbol(math, ams, bin, "⊲", "\\lhd"), defineSymbol(math, ams, bin, "⊳", "\\rhd"), defineSymbol(math, ams, rel, "≂", "\\eqsim", !0), defineSymbol(math, main, rel, "⋈", "\\Join"), defineSymbol(math, ams, rel, "≑", "\\Doteq", !0), defineSymbol(math, ams, bin, "∔", "\\dotplus", !0), defineSymbol(math, ams, bin, "∖", "\\smallsetminus"), defineSymbol(math, ams, bin, "⋒", "\\Cap", !0), defineSymbol(math, ams, bin, "⋓", "\\Cup", !0), defineSymbol(math, ams, bin, "⩞", "\\doublebarwedge", !0), defineSymbol(math, ams, bin, "⊟", "\\boxminus", !0), defineSymbol(math, ams, bin, "⊞", "\\boxplus", !0), defineSymbol(math, ams, bin, "⋇", "\\divideontimes", !0), defineSymbol(math, ams, bin, "⋉", "\\ltimes", !0), defineSymbol(math, ams, bin, "⋊", "\\rtimes", !0), defineSymbol(math, ams, bin, "⋋", "\\leftthreetimes", !0), defineSymbol(math, ams, bin, "⋌", "\\rightthreetimes", !0), defineSymbol(math, ams, bin, "⋏", "\\curlywedge", !0), defineSymbol(math, ams, bin, "⋎", "\\curlyvee", !0), defineSymbol(math, ams, bin, "⊝", "\\circleddash", !0), defineSymbol(math, ams, bin, "⊛", "\\circledast", !0), defineSymbol(math, ams, bin, "⋅", "\\centerdot"), defineSymbol(math, ams, bin, "⊺", "\\intercal", !0), defineSymbol(math, ams, bin, "⋒", "\\doublecap"), defineSymbol(math, ams, bin, "⋓", "\\doublecup"), defineSymbol(math, ams, bin, "⊠", "\\boxtimes", !0), defineSymbol(math, ams, rel, "⇢", "\\dashrightarrow", !0), defineSymbol(math, ams, rel, "⇠", "\\dashleftarrow", !0), defineSymbol(math, ams, rel, "⇇", "\\leftleftarrows", !0), defineSymbol(math, ams, rel, "⇆", "\\leftrightarrows", !0), defineSymbol(math, ams, rel, "⇚", "\\Lleftarrow", !0), defineSymbol(math, ams, rel, "↞", "\\twoheadleftarrow", !0), defineSymbol(math, ams, rel, "↢", "\\leftarrowtail", !0), defineSymbol(math, ams, rel, "↫", "\\looparrowleft", !0), defineSymbol(math, ams, rel, "⇋", "\\leftrightharpoons", !0), defineSymbol(math, ams, rel, "↶", "\\curvearrowleft", !0), defineSymbol(math, ams, rel, "↺", "\\circlearrowleft", !0), defineSymbol(math, ams, rel, "↰", "\\Lsh", !0), defineSymbol(math, ams, rel, "⇈", "\\upuparrows", !0), defineSymbol(math, ams, rel, "↿", "\\upharpoonleft", !0), defineSymbol(math, ams, rel, "⇃", "\\downharpoonleft", !0), defineSymbol(math, main, rel, "⊶", "\\origof", !0), defineSymbol(math, main, rel, "⊷", "\\imageof", !0), defineSymbol(math, ams, rel, "⊸", "\\multimap", !0), defineSymbol(math, ams, rel, "↭", "\\leftrightsquigarrow", !0), defineSymbol(math, ams, rel, "⇉", "\\rightrightarrows", !0), defineSymbol(math, ams, rel, "⇄", "\\rightleftarrows", !0), defineSymbol(math, ams, rel, "↠", "\\twoheadrightarrow", !0), defineSymbol(math, ams, rel, "↣", "\\rightarrowtail", !0), defineSymbol(math, ams, rel, "↬", "\\looparrowright", !0), defineSymbol(math, ams, rel, "↷", "\\curvearrowright", !0), defineSymbol(math, ams, rel, "↻", "\\circlearrowright", !0), defineSymbol(math, ams, rel, "↱", "\\Rsh", !0), defineSymbol(math, ams, rel, "⇊", "\\downdownarrows", !0), defineSymbol(math, ams, rel, "↾", "\\upharpoonright", !0), defineSymbol(math, ams, rel, "⇂", "\\downharpoonright", !0), defineSymbol(math, ams, rel, "⇝", "\\rightsquigarrow", !0), defineSymbol(math, ams, rel, "⇝", "\\leadsto"), defineSymbol(math, ams, rel, "⇛", "\\Rrightarrow", !0), defineSymbol(math, ams, rel, "↾", "\\restriction"), defineSymbol(math, main, textord, "‘", "`"), defineSymbol(math, main, textord, "$", "\\$"), defineSymbol(text, main, textord, "$", "\\$"), defineSymbol(text, main, textord, "$", "\\textdollar"), defineSymbol(math, main, textord, "%", "\\%"), defineSymbol(text, main, textord, "%", "\\%"), defineSymbol(math, main, textord, "_", "\\_"), defineSymbol(text, main, textord, "_", "\\_"), defineSymbol(text, main, textord, "_", "\\textunderscore"), defineSymbol(math, main, textord, "∠", "\\angle", !0), defineSymbol(math, main, textord, "∞", "\\infty", !0), defineSymbol(math, main, textord, "′", "\\prime"), defineSymbol(math, main, textord, "△", "\\triangle"), defineSymbol(math, main, textord, "Γ", "\\Gamma", !0), defineSymbol(math, main, textord, "Δ", "\\Delta", !0), defineSymbol(math, main, textord, "Θ", "\\Theta", !0), defineSymbol(math, main, textord, "Λ", "\\Lambda", !0), defineSymbol(math, main, textord, "Ξ", "\\Xi", !0), defineSymbol(math, main, textord, "Π", "\\Pi", !0), defineSymbol(math, main, textord, "Σ", "\\Sigma", !0), defineSymbol(math, main, textord, "Υ", "\\Upsilon", !0), defineSymbol(math, main, textord, "Φ", "\\Phi", !0), defineSymbol(math, main, textord, "Ψ", "\\Psi", !0), defineSymbol(math, main, textord, "Ω", "\\Omega", !0), defineSymbol(math, main, textord, "A", "Α"), defineSymbol(math, main, textord, "B", "Β"), defineSymbol(math, main, textord, "E", "Ε"), defineSymbol(math, main, textord, "Z", "Ζ"), defineSymbol(math, main, textord, "H", "Η"), defineSymbol(math, main, textord, "I", "Ι"), defineSymbol(math, main, textord, "K", "Κ"), defineSymbol(math, main, textord, "M", "Μ"), defineSymbol(math, main, textord, "N", "Ν"), defineSymbol(math, main, textord, "O", "Ο"), defineSymbol(math, main, textord, "P", "Ρ"), defineSymbol(math, main, textord, "T", "Τ"), defineSymbol(math, main, textord, "X", "Χ"), defineSymbol(math, main, textord, "¬", "\\neg", !0), defineSymbol(math, main, textord, "¬", "\\lnot"), defineSymbol(math, main, textord, "⊤", "\\top"), defineSymbol(math, main, textord, "⊥", "\\bot"), defineSymbol(math, main, textord, "∅", "\\emptyset"), defineSymbol(math, ams, textord, "∅", "\\varnothing"), defineSymbol(math, main, mathord, "α", "\\alpha", !0), defineSymbol(math, main, mathord, "β", "\\beta", !0), defineSymbol(math, main, mathord, "γ", "\\gamma", !0), defineSymbol(math, main, mathord, "δ", "\\delta", !0), defineSymbol(math, main, mathord, "ϵ", "\\epsilon", !0), defineSymbol(math, main, mathord, "ζ", "\\zeta", !0), defineSymbol(math, main, mathord, "η", "\\eta", !0), defineSymbol(math, main, mathord, "θ", "\\theta", !0), defineSymbol(math, main, mathord, "ι", "\\iota", !0), defineSymbol(math, main, mathord, "κ", "\\kappa", !0), defineSymbol(math, main, mathord, "λ", "\\lambda", !0), defineSymbol(math, main, mathord, "μ", "\\mu", !0), defineSymbol(math, main, mathord, "ν", "\\nu", !0), defineSymbol(math, main, mathord, "ξ", "\\xi", !0), defineSymbol(math, main, mathord, "ο", "\\omicron", !0), defineSymbol(math, main, mathord, "π", "\\pi", !0), defineSymbol(math, main, mathord, "ρ", "\\rho", !0), defineSymbol(math, main, mathord, "σ", "\\sigma", !0), defineSymbol(math, main, mathord, "τ", "\\tau", !0), defineSymbol(math, main, mathord, "υ", "\\upsilon", !0), defineSymbol(math, main, mathord, "ϕ", "\\phi", !0), defineSymbol(math, main, mathord, "χ", "\\chi", !0), defineSymbol(math, main, mathord, "ψ", "\\psi", !0), defineSymbol(math, main, mathord, "ω", "\\omega", !0), defineSymbol(math, main, mathord, "ε", "\\varepsilon", !0), defineSymbol(math, main, mathord, "ϑ", "\\vartheta", !0), defineSymbol(math, main, mathord, "ϖ", "\\varpi", !0), defineSymbol(math, main, mathord, "ϱ", "\\varrho", !0), defineSymbol(math, main, mathord, "ς", "\\varsigma", !0), defineSymbol(math, main, mathord, "φ", "\\varphi", !0), defineSymbol(math, main, bin, "∗", "*", !0), defineSymbol(math, main, bin, "+", "+"), defineSymbol(math, main, bin, "−", "-", !0), defineSymbol(math, main, bin, "⋅", "\\cdot", !0), defineSymbol(math, main, bin, "∘", "\\circ", !0), defineSymbol(math, main, bin, "÷", "\\div", !0), defineSymbol(math, main, bin, "±", "\\pm", !0), defineSymbol(math, main, bin, "×", "\\times", !0), defineSymbol(math, main, bin, "∩", "\\cap", !0), defineSymbol(math, main, bin, "∪", "\\cup", !0), defineSymbol(math, main, bin, "∖", "\\setminus", !0), defineSymbol(math, main, bin, "∧", "\\land"), defineSymbol(math, main, bin, "∨", "\\lor"), defineSymbol(math, main, bin, "∧", "\\wedge", !0), defineSymbol(math, main, bin, "∨", "\\vee", !0), defineSymbol(math, main, textord, "√", "\\surd"), defineSymbol(math, main, open, "⟨", "\\langle", !0), defineSymbol(math, main, open, "∣", "\\lvert"), defineSymbol(math, main, open, "∥", "\\lVert"), defineSymbol(math, main, close, "?", "?"), defineSymbol(math, main, close, "!", "!"), defineSymbol(math, main, close, "⟩", "\\rangle", !0), defineSymbol(math, main, close, "∣", "\\rvert"), defineSymbol(math, main, close, "∥", "\\rVert"), defineSymbol(math, main, rel, "=", "="), defineSymbol(math, main, rel, ":", ":"), defineSymbol(math, main, rel, "≈", "\\approx", !0), defineSymbol(math, main, rel, "≅", "\\cong", !0), defineSymbol(math, main, rel, "≥", "\\ge"), defineSymbol(math, main, rel, "≥", "\\geq", !0), defineSymbol(math, main, rel, "←", "\\gets"), defineSymbol(math, main, rel, ">", "\\gt", !0), defineSymbol(math, main, rel, "∈", "\\in", !0), defineSymbol(math, main, rel, "", "\\@not"), defineSymbol(math, main, rel, "⊂", "\\subset", !0), defineSymbol(math, main, rel, "⊃", "\\supset", !0), defineSymbol(math, main, rel, "⊆", "\\subseteq", !0), defineSymbol(math, main, rel, "⊇", "\\supseteq", !0), defineSymbol(math, ams, rel, "⊈", "\\nsubseteq", !0), defineSymbol(math, ams, rel, "⊉", "\\nsupseteq", !0), defineSymbol(math, main, rel, "⊨", "\\models"), defineSymbol(math, main, rel, "←", "\\leftarrow", !0), defineSymbol(math, main, rel, "≤", "\\le"), defineSymbol(math, main, rel, "≤", "\\leq", !0), defineSymbol(math, main, rel, "<", "\\lt", !0), defineSymbol(math, main, rel, "→", "\\rightarrow", !0), defineSymbol(math, main, rel, "→", "\\to"), defineSymbol(math, ams, rel, "≱", "\\ngeq", !0), defineSymbol(math, ams, rel, "≰", "\\nleq", !0), defineSymbol(math, main, spacing, "\xA0", "\\ "), defineSymbol(math, main, spacing, "\xA0", "\\space"), defineSymbol(math, main, spacing, "\xA0", "\\nobreakspace"), defineSymbol(text, main, spacing, "\xA0", "\\ "), defineSymbol(text, main, spacing, "\xA0", " "), defineSymbol(text, main, spacing, "\xA0", "\\space"), defineSymbol(text, main, spacing, "\xA0", "\\nobreakspace"), defineSymbol(math, main, spacing, "", "\\nobreak"), defineSymbol(math, main, spacing, "", "\\allowbreak"), defineSymbol(math, main, punct, ",", ","), defineSymbol(math, main, punct, ";", ";"), defineSymbol(math, ams, bin, "⊼", "\\barwedge", !0), defineSymbol(math, ams, bin, "⊻", "\\veebar", !0), defineSymbol(math, main, bin, "⊙", "\\odot", !0), defineSymbol(math, main, bin, "⊕", "\\oplus", !0), defineSymbol(math, main, bin, "⊗", "\\otimes", !0), defineSymbol(math, main, textord, "∂", "\\partial", !0), defineSymbol(math, main, bin, "⊘", "\\oslash", !0), defineSymbol(math, ams, bin, "⊚", "\\circledcirc", !0), defineSymbol(math, ams, bin, "⊡", "\\boxdot", !0), defineSymbol(math, main, bin, "△", "\\bigtriangleup"), defineSymbol(math, main, bin, "▽", "\\bigtriangledown"), defineSymbol(math, main, bin, "†", "\\dagger"), defineSymbol(math, main, bin, "⋄", "\\diamond"), defineSymbol(math, main, bin, "⋆", "\\star"), defineSymbol(math, main, bin, "◃", "\\triangleleft"), defineSymbol(math, main, bin, "▹", "\\triangleright"), defineSymbol(math, main, open, "{", "\\{"), defineSymbol(text, main, textord, "{", "\\{"), defineSymbol(text, main, textord, "{", "\\textbraceleft"), defineSymbol(math, main, close, "}", "\\}"), defineSymbol(text, main, textord, "}", "\\}"), defineSymbol(text, main, textord, "}", "\\textbraceright"), defineSymbol(math, main, open, "{", "\\lbrace"), defineSymbol(math, main, close, "}", "\\rbrace"), defineSymbol(math, main, open, "[", "\\lbrack", !0), defineSymbol(text, main, textord, "[", "\\lbrack", !0), defineSymbol(math, main, close, "]", "\\rbrack", !0), defineSymbol(text, main, textord, "]", "\\rbrack", !0), defineSymbol(math, main, open, "(", "\\lparen", !0), defineSymbol(math, main, close, ")", "\\rparen", !0), defineSymbol(text, main, textord, "<", "\\textless", !0), defineSymbol(text, main, textord, ">", "\\textgreater", !0), defineSymbol(math, main, open, "⌊", "\\lfloor", !0), defineSymbol(math, main, close, "⌋", "\\rfloor", !0), defineSymbol(math, main, open, "⌈", "\\lceil", !0), defineSymbol(math, main, close, "⌉", "\\rceil", !0), defineSymbol(math, main, textord, "\\", "\\backslash"), defineSymbol(math, main, textord, "∣", "|"), defineSymbol(math, main, textord, "∣", "\\vert"), defineSymbol(text, main, textord, "|", "\\textbar", !0), defineSymbol(math, main, textord, "∥", "\\|"), defineSymbol(math, main, textord, "∥", "\\Vert"), defineSymbol(text, main, textord, "∥", "\\textbardbl"), defineSymbol(text, main, textord, "~", "\\textasciitilde"), defineSymbol(text, main, textord, "\\", "\\textbackslash"), defineSymbol(text, main, textord, "^", "\\textasciicircum"), defineSymbol(math, main, rel, "↑", "\\uparrow", !0), defineSymbol(math, main, rel, "⇑", "\\Uparrow", !0), defineSymbol(math, main, rel, "↓", "\\downarrow", !0), defineSymbol(math, main, rel, "⇓", "\\Downarrow", !0), defineSymbol(math, main, rel, "↕", "\\updownarrow", !0), defineSymbol(math, main, rel, "⇕", "\\Updownarrow", !0), defineSymbol(math, main, op, "∐", "\\coprod"), defineSymbol(math, main, op, "⋁", "\\bigvee"), defineSymbol(math, main, op, "⋀", "\\bigwedge"), defineSymbol(math, main, op, "⨄", "\\biguplus"), defineSymbol(math, main, op, "⋂", "\\bigcap"), defineSymbol(math, main, op, "⋃", "\\bigcup"), defineSymbol(math, main, op, "∫", "\\int"), defineSymbol(math, main, op, "∫", "\\intop"), defineSymbol(math, main, op, "∬", "\\iint"), defineSymbol(math, main, op, "∭", "\\iiint"), defineSymbol(math, main, op, "∏", "\\prod"), defineSymbol(math, main, op, "∑", "\\sum"), defineSymbol(math, main, op, "⨂", "\\bigotimes"), defineSymbol(math, main, op, "⨁", "\\bigoplus"), defineSymbol(math, main, op, "⨀", "\\bigodot"), defineSymbol(math, main, op, "∮", "\\oint"), defineSymbol(math, main, op, "∯", "\\oiint"), defineSymbol(math, main, op, "∰", "\\oiiint"), defineSymbol(math, main, op, "⨆", "\\bigsqcup"), defineSymbol(math, main, op, "∫", "\\smallint"), defineSymbol(text, main, inner, "…", "\\textellipsis"), defineSymbol(math, main, inner, "…", "\\mathellipsis"), defineSymbol(text, main, inner, "…", "\\ldots", !0), defineSymbol(math, main, inner, "…", "\\ldots", !0), defineSymbol(math, main, inner, "⋯", "\\@cdots", !0), defineSymbol(math, main, inner, "⋱", "\\ddots", !0), defineSymbol(math, main, textord, "⋮", "\\varvdots"), defineSymbol(text, main, textord, "⋮", "\\varvdots"), defineSymbol(math, main, accent, "ˊ", "\\acute"), defineSymbol(math, main, accent, "ˋ", "\\grave"), defineSymbol(math, main, accent, "¨", "\\ddot"), defineSymbol(math, main, accent, "~", "\\tilde"), defineSymbol(math, main, accent, "ˉ", "\\bar"), defineSymbol(math, main, accent, "˘", "\\breve"), defineSymbol(math, main, accent, "ˇ", "\\check"), defineSymbol(math, main, accent, "^", "\\hat"), defineSymbol(math, main, accent, "⃗", "\\vec"), defineSymbol(math, main, accent, "˙", "\\dot"), defineSymbol(math, main, accent, "˚", "\\mathring"), defineSymbol(math, main, mathord, "", "\\@imath"), defineSymbol(math, main, mathord, "", "\\@jmath"), defineSymbol(math, main, textord, "ı", "ı"), defineSymbol(math, main, textord, "ȷ", "ȷ"), defineSymbol(text, main, textord, "ı", "\\i", !0), defineSymbol(text, main, textord, "ȷ", "\\j", !0), defineSymbol(text, main, textord, "ß", "\\ss", !0), defineSymbol(text, main, textord, "æ", "\\ae", !0), defineSymbol(text, main, textord, "œ", "\\oe", !0), defineSymbol(text, main, textord, "ø", "\\o", !0), defineSymbol(text, main, textord, "Æ", "\\AE", !0), defineSymbol(text, main, textord, "Œ", "\\OE", !0), defineSymbol(text, main, textord, "Ø", "\\O", !0), defineSymbol(text, main, accent, "ˊ", "\\'"), defineSymbol(text, main, accent, "ˋ", "\\`"), defineSymbol(text, main, accent, "ˆ", "\\^"), defineSymbol(text, main, accent, "˜", "\\~"), defineSymbol(text, main, accent, "ˉ", "\\="), defineSymbol(text, main, accent, "˘", "\\u"), defineSymbol(text, main, accent, "˙", "\\."), defineSymbol(text, main, accent, "¸", "\\c"), defineSymbol(text, main, accent, "˚", "\\r"), defineSymbol(text, main, accent, "ˇ", "\\v"), defineSymbol(text, main, accent, "¨", "\\\""), defineSymbol(text, main, accent, "˝", "\\H"), defineSymbol(text, main, accent, "◯", "\\textcircled");
15233
15231
  var ligatures = {
15234
15232
  "--": !0,
15235
15233
  "---": !0,
@@ -15250,7 +15248,7 @@ for (var letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", _i2 =
15250
15248
  defineSymbol(math, main, mathord, _ch2, _ch2), defineSymbol(text, main, textord, _ch2, _ch2);
15251
15249
  }
15252
15250
  defineSymbol(math, ams, textord, "C", "ℂ"), defineSymbol(text, ams, textord, "C", "ℂ"), defineSymbol(math, ams, textord, "H", "ℍ"), defineSymbol(text, ams, textord, "H", "ℍ"), defineSymbol(math, ams, textord, "N", "ℕ"), defineSymbol(text, ams, textord, "N", "ℕ"), defineSymbol(math, ams, textord, "P", "ℙ"), defineSymbol(text, ams, textord, "P", "ℙ"), defineSymbol(math, ams, textord, "Q", "ℚ"), defineSymbol(text, ams, textord, "Q", "ℚ"), defineSymbol(math, ams, textord, "R", "ℝ"), defineSymbol(text, ams, textord, "R", "ℝ"), defineSymbol(math, ams, textord, "Z", "ℤ"), defineSymbol(text, ams, textord, "Z", "ℤ"), defineSymbol(math, main, mathord, "h", "ℎ"), defineSymbol(text, main, mathord, "h", "ℎ");
15253
- for (var wideChar = "", _i3 = 0; _i3 < letters.length; _i3++) {
15251
+ for (var wideChar, _i3 = 0; _i3 < letters.length; _i3++) {
15254
15252
  var _ch3 = letters.charAt(_i3);
15255
15253
  wideChar = String.fromCharCode(55349, 56320 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56372 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56424 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56580 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56684 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56736 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56788 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56840 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56944 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), _i3 < 26 && (wideChar = String.fromCharCode(55349, 56632 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar), wideChar = String.fromCharCode(55349, 56476 + _i3), defineSymbol(math, main, mathord, _ch3, wideChar), defineSymbol(text, main, textord, _ch3, wideChar));
15256
15254
  }
@@ -15263,174 +15261,94 @@ for (var extraLatin = "ÐÞþ", _i5 = 0; _i5 < extraLatin.length; _i5++) {
15263
15261
  var _ch5 = extraLatin.charAt(_i5);
15264
15262
  defineSymbol(math, main, mathord, _ch5, _ch5), defineSymbol(text, main, textord, _ch5, _ch5);
15265
15263
  }
15266
- var wideLatinLetterData = [
15267
- [
15268
- "mathbf",
15269
- "textbf",
15270
- "Main-Bold"
15271
- ],
15272
- [
15273
- "mathbf",
15274
- "textbf",
15275
- "Main-Bold"
15276
- ],
15277
- [
15278
- "mathnormal",
15279
- "textit",
15280
- "Math-Italic"
15281
- ],
15282
- [
15283
- "mathnormal",
15284
- "textit",
15285
- "Math-Italic"
15286
- ],
15287
- [
15288
- "boldsymbol",
15289
- "boldsymbol",
15290
- "Main-BoldItalic"
15291
- ],
15292
- [
15293
- "boldsymbol",
15294
- "boldsymbol",
15295
- "Main-BoldItalic"
15296
- ],
15297
- [
15298
- "mathscr",
15299
- "textscr",
15300
- "Script-Regular"
15301
- ],
15302
- [
15303
- "",
15304
- "",
15305
- ""
15306
- ],
15307
- [
15308
- "",
15309
- "",
15310
- ""
15311
- ],
15312
- [
15313
- "",
15314
- "",
15315
- ""
15316
- ],
15317
- [
15318
- "mathfrak",
15319
- "textfrak",
15320
- "Fraktur-Regular"
15321
- ],
15322
- [
15323
- "mathfrak",
15324
- "textfrak",
15325
- "Fraktur-Regular"
15326
- ],
15327
- [
15328
- "mathbb",
15329
- "textbb",
15330
- "AMS-Regular"
15331
- ],
15332
- [
15333
- "mathbb",
15334
- "textbb",
15335
- "AMS-Regular"
15336
- ],
15337
- [
15338
- "mathboldfrak",
15339
- "textboldfrak",
15340
- "Fraktur-Regular"
15341
- ],
15342
- [
15343
- "mathboldfrak",
15344
- "textboldfrak",
15345
- "Fraktur-Regular"
15346
- ],
15347
- [
15348
- "mathsf",
15349
- "textsf",
15350
- "SansSerif-Regular"
15351
- ],
15352
- [
15353
- "mathsf",
15354
- "textsf",
15355
- "SansSerif-Regular"
15356
- ],
15357
- [
15358
- "mathboldsf",
15359
- "textboldsf",
15360
- "SansSerif-Bold"
15361
- ],
15362
- [
15363
- "mathboldsf",
15364
- "textboldsf",
15365
- "SansSerif-Bold"
15366
- ],
15367
- [
15368
- "mathitsf",
15369
- "textitsf",
15370
- "SansSerif-Italic"
15371
- ],
15372
- [
15373
- "mathitsf",
15374
- "textitsf",
15375
- "SansSerif-Italic"
15376
- ],
15377
- [
15378
- "",
15379
- "",
15380
- ""
15381
- ],
15382
- [
15383
- "",
15384
- "",
15385
- ""
15386
- ],
15387
- [
15388
- "mathtt",
15389
- "texttt",
15390
- "Typewriter-Regular"
15391
- ],
15392
- [
15393
- "mathtt",
15394
- "texttt",
15395
- "Typewriter-Regular"
15396
- ]
15264
+ var boldUpright = {
15265
+ mathClass: "mathbf",
15266
+ textClass: "textbf",
15267
+ font: "Main-Bold"
15268
+ }, italic = {
15269
+ mathClass: "mathnormal",
15270
+ textClass: "textit",
15271
+ font: "Math-Italic"
15272
+ }, boldItalic = {
15273
+ mathClass: "boldsymbol",
15274
+ textClass: "boldsymbol",
15275
+ font: "Main-BoldItalic"
15276
+ }, script = {
15277
+ mathClass: "mathscr",
15278
+ textClass: "textscr",
15279
+ font: "Script-Regular"
15280
+ }, noFont = {
15281
+ mathClass: "",
15282
+ textClass: "",
15283
+ font: ""
15284
+ }, fraktur = {
15285
+ mathClass: "mathfrak",
15286
+ textClass: "textfrak",
15287
+ font: "Fraktur-Regular"
15288
+ }, doubleStruck = {
15289
+ mathClass: "mathbb",
15290
+ textClass: "textbb",
15291
+ font: "AMS-Regular"
15292
+ }, boldFraktur = {
15293
+ mathClass: "mathboldfrak",
15294
+ textClass: "textboldfrak",
15295
+ font: "Fraktur-Regular"
15296
+ }, sansSerif = {
15297
+ mathClass: "mathsf",
15298
+ textClass: "textsf",
15299
+ font: "SansSerif-Regular"
15300
+ }, boldSansSerif = {
15301
+ mathClass: "mathboldsf",
15302
+ textClass: "textboldsf",
15303
+ font: "SansSerif-Bold"
15304
+ }, italicSansSerif = {
15305
+ mathClass: "mathitsf",
15306
+ textClass: "textitsf",
15307
+ font: "SansSerif-Italic"
15308
+ }, monospace = {
15309
+ mathClass: "mathtt",
15310
+ textClass: "texttt",
15311
+ font: "Typewriter-Regular"
15312
+ }, wideLatinLetterData = [
15313
+ boldUpright,
15314
+ boldUpright,
15315
+ italic,
15316
+ italic,
15317
+ boldItalic,
15318
+ boldItalic,
15319
+ script,
15320
+ noFont,
15321
+ noFont,
15322
+ noFont,
15323
+ fraktur,
15324
+ fraktur,
15325
+ doubleStruck,
15326
+ doubleStruck,
15327
+ boldFraktur,
15328
+ boldFraktur,
15329
+ sansSerif,
15330
+ sansSerif,
15331
+ boldSansSerif,
15332
+ boldSansSerif,
15333
+ italicSansSerif,
15334
+ italicSansSerif,
15335
+ noFont,
15336
+ noFont,
15337
+ monospace,
15338
+ monospace
15397
15339
  ], wideNumeralData = [
15398
- [
15399
- "mathbf",
15400
- "textbf",
15401
- "Main-Bold"
15402
- ],
15403
- [
15404
- "",
15405
- "",
15406
- ""
15407
- ],
15408
- [
15409
- "mathsf",
15410
- "textsf",
15411
- "SansSerif-Regular"
15412
- ],
15413
- [
15414
- "mathboldsf",
15415
- "textboldsf",
15416
- "SansSerif-Bold"
15417
- ],
15418
- [
15419
- "mathtt",
15420
- "texttt",
15421
- "Typewriter-Regular"
15422
- ]
15423
- ], wideCharacterFont = (t, n) => {
15424
- var r = t.charCodeAt(0), a = t.charCodeAt(1), o = (r - 55296) * 1024 + (a - 56320) + 65536, s = n === "math" ? 0 : 1;
15425
- if (119808 <= o && o < 120484) {
15426
- var c = Math.floor((o - 119808) / 26);
15427
- return [wideLatinLetterData[c][2], wideLatinLetterData[c][s]];
15428
- } else if (120782 <= o && o <= 120831) {
15429
- var l = Math.floor((o - 120782) / 10);
15430
- return [wideNumeralData[l][2], wideNumeralData[l][s]];
15431
- } else if (o === 120485 || o === 120486) return [wideLatinLetterData[0][2], wideLatinLetterData[0][s]];
15432
- else if (120486 < o && o < 120782) return ["", ""];
15433
- else throw new ParseError("Unsupported character: " + t);
15340
+ boldUpright,
15341
+ noFont,
15342
+ sansSerif,
15343
+ boldSansSerif,
15344
+ monospace
15345
+ ], wideCharacterFont = (t) => {
15346
+ var n = t.charCodeAt(0), r = t.charCodeAt(1), a = (n - 55296) * 1024 + (r - 56320) + 65536;
15347
+ if (119808 <= a && a < 120484) return wideLatinLetterData[Math.floor((a - 119808) / 26)];
15348
+ if (120782 <= a && a <= 120831) return wideNumeralData[Math.floor((a - 120782) / 10)];
15349
+ if (a === 120485 || a === 120486) return wideLatinLetterData[0];
15350
+ if (120486 < a && a < 120782) return noFont;
15351
+ throw new ParseError("Unsupported character: " + t);
15434
15352
  }, lookupSymbol = function(e, t, n) {
15435
15353
  if (symbols[n][e]) {
15436
15354
  var r = symbols[n][e].replace;
@@ -15456,8 +15374,8 @@ var wideLatinLetterData = [
15456
15374
  return c;
15457
15375
  }, mathsym = function(e, t, n, r) {
15458
15376
  return r === void 0 && (r = []), n.font === "boldsymbol" && lookupSymbol(e, "Main-Bold", t).metrics ? makeSymbol(e, "Main-Bold", t, n, r.concat(["mathbf"])) : e === "\\" || symbols[t][e].font === "main" ? makeSymbol(e, "Main-Regular", t, n, r) : makeSymbol(e, "AMS-Regular", t, n, r.concat(["amsrm"]));
15459
- }, boldsymbol = function(e, t, n, r, a) {
15460
- return a !== "textord" && lookupSymbol(e, "Math-BoldItalic", t).metrics ? {
15377
+ }, boldSymbol = function(e, t, n) {
15378
+ return n !== "textord" && lookupSymbol(e, "Math-BoldItalic", t).metrics ? {
15461
15379
  fontName: "Math-BoldItalic",
15462
15380
  fontClass: "boldsymbol"
15463
15381
  } : {
@@ -15465,31 +15383,35 @@ var wideLatinLetterData = [
15465
15383
  fontClass: "mathbf"
15466
15384
  };
15467
15385
  }, makeOrd = function(e, t, n) {
15468
- var r = e.mode, a = e.text, o = ["mord"], s = r === "math" || r === "text" && t.font, c = s ? t.font : t.fontFamily, l = "", u = "";
15469
- if (a.charCodeAt(0) === 55349 && ([l, u] = wideCharacterFont(a, r)), l.length > 0) return makeSymbol(a, l, r, t, o.concat(u));
15470
- if (c) {
15471
- var d, f;
15472
- if (c === "boldsymbol") {
15473
- var p = boldsymbol(a, r, t, o, n);
15474
- d = p.fontName, f = [p.fontClass];
15475
- } else s ? (d = fontMap[c].fontName, f = [c]) : (d = retrieveTextFontName(c, t.fontWeight, t.fontShape), f = [
15386
+ var r = e.mode, a = e.text, o = ["mord"], { font: s, fontFamily: c, fontWeight: l, fontShape: u } = t, d = r === "math" || r === "text" && !!s, f = d ? s : c, p = "", m = "";
15387
+ if (a.charCodeAt(0) === 55349) {
15388
+ var h = wideCharacterFont(a);
15389
+ p = h.font, m = h[r + "Class"];
15390
+ }
15391
+ if (p) return makeSymbol(a, p, r, t, o.concat(m));
15392
+ if (f) {
15393
+ var g, _;
15394
+ if (f === "boldsymbol") {
15395
+ var v = boldSymbol(a, r, n);
15396
+ g = v.fontName, _ = [v.fontClass];
15397
+ } else d ? (g = fontMap[s].fontName, _ = [s]) : (g = retrieveTextFontName(c, l, u), _ = [
15476
15398
  c,
15477
- t.fontWeight,
15478
- t.fontShape
15399
+ l,
15400
+ u
15479
15401
  ]);
15480
- if (lookupSymbol(a, d, r).metrics) return makeSymbol(a, d, r, t, o.concat(f));
15481
- if (ligatures.hasOwnProperty(a) && d.slice(0, 10) === "Typewriter") {
15482
- for (var m = [], h = 0; h < a.length; h++) m.push(makeSymbol(a[h], d, r, t, o.concat(f)));
15483
- return makeFragment(m);
15402
+ if (lookupSymbol(a, g, r).metrics) return makeSymbol(a, g, r, t, o.concat(_));
15403
+ if (ligatures.hasOwnProperty(a) && g.slice(0, 10) === "Typewriter") {
15404
+ for (var y = [], b = 0; b < a.length; b++) y.push(makeSymbol(a[b], g, r, t, o.concat(_)));
15405
+ return makeFragment(y);
15484
15406
  }
15485
15407
  }
15486
15408
  if (n === "mathord") return makeSymbol(a, "Math-Italic", r, t, o.concat(["mathnormal"]));
15487
15409
  if (n === "textord") {
15488
- var g = symbols[r][a] && symbols[r][a].font;
15489
- if (g === "ams") return makeSymbol(a, retrieveTextFontName("amsrm", t.fontWeight, t.fontShape), r, t, o.concat("amsrm", t.fontWeight, t.fontShape));
15490
- if (g === "main" || !g) return makeSymbol(a, retrieveTextFontName("textrm", t.fontWeight, t.fontShape), r, t, o.concat(t.fontWeight, t.fontShape));
15491
- var _ = retrieveTextFontName(g, t.fontWeight, t.fontShape);
15492
- return makeSymbol(a, _, r, t, o.concat(_, t.fontWeight, t.fontShape));
15410
+ var x = symbols[r][a] && symbols[r][a].font;
15411
+ if (x === "ams") return makeSymbol(a, retrieveTextFontName("amsrm", l, u), r, t, o.concat("amsrm", l, u));
15412
+ if (x === "main" || !x) return makeSymbol(a, retrieveTextFontName("textrm", l, u), r, t, o.concat(l, u));
15413
+ var C = retrieveTextFontName(x, l, u);
15414
+ return makeSymbol(a, C, r, t, o.concat(C, l, u));
15493
15415
  } else throw Error("unexpected type: " + n + " in makeOrd");
15494
15416
  }, canCombine = (e, t) => {
15495
15417
  if (createClass(e.classes) !== createClass(t.classes) || e.skew !== t.skew || e.maxFontSize !== t.maxFontSize || e.italic !== 0 && e.hasClass("mathnormal")) return !1;
@@ -15591,8 +15513,8 @@ var wideLatinLetterData = [
15591
15513
  }, makeGlue = (e, t) => {
15592
15514
  var n = makeSpan(["mspace"], [], t), r = calculateSize(e, t);
15593
15515
  return n.style.marginRight = makeEm(r), n;
15594
- }, retrieveTextFontName = function(e, t, n) {
15595
- var r = "";
15516
+ }, retrieveTextFontName = (e, t, n) => {
15517
+ var r, a;
15596
15518
  switch (e) {
15597
15519
  case "amsrm":
15598
15520
  r = "AMS";
@@ -15608,8 +15530,7 @@ var wideLatinLetterData = [
15608
15530
  break;
15609
15531
  default: r = e;
15610
15532
  }
15611
- var a = t === "textbf" && n === "textit" ? "BoldItalic" : t === "textbf" ? "Bold" : t === "textit" ? "Italic" : "Regular";
15612
- return r + "-" + a;
15533
+ return a = t === "textbf" && n === "textit" ? "BoldItalic" : t === "textbf" ? "Bold" : n === "textit" ? "Italic" : "Regular", r + "-" + a;
15613
15534
  }, fontMap = {
15614
15535
  mathbf: {
15615
15536
  variant: "bold",
@@ -15922,7 +15843,7 @@ function newDocumentFragment(e) {
15922
15843
  }
15923
15844
  var MathNode = class {
15924
15845
  constructor(e, t, n) {
15925
- this.type = e, this.attributes = {}, this.children = t || [], this.classes = n || [];
15846
+ this.type = void 0, this.attributes = void 0, this.children = void 0, this.classes = void 0, this.type = e, this.attributes = {}, this.children = t || [], this.classes = n || [];
15926
15847
  }
15927
15848
  setAttribute(e, t) {
15928
15849
  this.attributes[e] = t;
@@ -15952,7 +15873,7 @@ var MathNode = class {
15952
15873
  }
15953
15874
  }, TextNode = class {
15954
15875
  constructor(e) {
15955
- this.text = e;
15876
+ this.text = void 0, this.text = e;
15956
15877
  }
15957
15878
  toNode() {
15958
15879
  return document.createTextNode(this.text);
@@ -15965,7 +15886,7 @@ var MathNode = class {
15965
15886
  }
15966
15887
  }, SpaceNode = class {
15967
15888
  constructor(e) {
15968
- this.width = e, e >= .05555 && e <= .05556 ? this.character = " " : e >= .1666 && e <= .1667 ? this.character = " " : e >= .2222 && e <= .2223 ? this.character = " " : e >= .2777 && e <= .2778 ? this.character = "  " : e >= -.05556 && e <= -.05555 ? this.character = " ⁣" : e >= -.1667 && e <= -.1666 ? this.character = " ⁣" : e >= -.2223 && e <= -.2222 ? this.character = " ⁣" : e >= -.2778 && e <= -.2777 ? this.character = " ⁣" : this.character = null;
15889
+ this.width = void 0, this.character = void 0, this.width = e, e >= .05555 && e <= .05556 ? this.character = " " : e >= .1666 && e <= .1667 ? this.character = " " : e >= .2222 && e <= .2223 ? this.character = " " : e >= .2777 && e <= .2778 ? this.character = "  " : e >= -.05556 && e <= -.05555 ? this.character = " ⁣" : e >= -.1667 && e <= -.1666 ? this.character = " ⁣" : e >= -.2223 && e <= -.2222 ? this.character = " ⁣" : e >= -.2778 && e <= -.2777 ? this.character = " ⁣" : this.character = null;
15969
15890
  }
15970
15891
  toNode() {
15971
15892
  if (this.character) return document.createTextNode(this.character);
@@ -15982,32 +15903,37 @@ var MathNode = class {
15982
15903
  return symbols[t][e] && symbols[t][e].replace && e.charCodeAt(0) !== 55349 && !(ligatures.hasOwnProperty(e) && n && (n.fontFamily && n.fontFamily.slice(4, 6) === "tt" || n.font && n.font.slice(4, 6) === "tt")) && (e = symbols[t][e].replace), new TextNode(e);
15983
15904
  }, makeRow = function(e) {
15984
15905
  return e.length === 1 ? e[0] : new MathNode("mrow", e);
15985
- }, getVariant = function(e, t) {
15986
- if (t.fontFamily === "texttt") return "monospace";
15987
- if (t.fontFamily === "textsf") return t.fontShape === "textit" && t.fontWeight === "textbf" ? "sans-serif-bold-italic" : t.fontShape === "textit" ? "sans-serif-italic" : t.fontWeight === "textbf" ? "bold-sans-serif" : "sans-serif";
15988
- if (t.fontShape === "textit" && t.fontWeight === "textbf") return "bold-italic";
15989
- if (t.fontShape === "textit") return "italic";
15990
- if (t.fontWeight === "textbf") return "bold";
15906
+ }, mathFontVariants = {
15907
+ mathit: "italic",
15908
+ boldsymbol: (e) => e.type === "textord" ? "bold" : "bold-italic",
15909
+ mathbf: "bold",
15910
+ mathbb: "double-struck",
15911
+ mathsfit: "sans-serif-italic",
15912
+ mathfrak: "fraktur",
15913
+ mathscr: "script",
15914
+ mathcal: "script",
15915
+ mathsf: "sans-serif",
15916
+ mathtt: "monospace"
15917
+ }, getVariant = (e, t) => {
15918
+ if (e.mode === "text") {
15919
+ if (t.fontFamily === "texttt") return "monospace";
15920
+ if (t.fontFamily === "textsf") return t.fontShape === "textit" && t.fontWeight === "textbf" ? "sans-serif-bold-italic" : t.fontShape === "textit" ? "sans-serif-italic" : t.fontWeight === "textbf" ? "bold-sans-serif" : "sans-serif";
15921
+ if (t.fontShape === "textit" && t.fontWeight === "textbf") return "bold-italic";
15922
+ if (t.fontShape === "textit") return "italic";
15923
+ if (t.fontWeight === "textbf") return "bold";
15924
+ }
15991
15925
  var n = t.font;
15992
15926
  if (!n || n === "mathnormal") return null;
15993
- var r = e.mode;
15994
- if (n === "mathit") return "italic";
15995
- if (n === "boldsymbol") return e.type === "textord" ? "bold" : "bold-italic";
15996
- if (n === "mathbf") return "bold";
15997
- if (n === "mathbb") return "double-struck";
15998
- if (n === "mathsfit") return "sans-serif-italic";
15999
- if (n === "mathfrak") return "fraktur";
16000
- if (n === "mathscr" || n === "mathcal") return "script";
16001
- if (n === "mathsf") return "sans-serif";
16002
- if (n === "mathtt") return "monospace";
16003
- var a = e.text;
16004
- if (noVariantSymbols.has(a)) return null;
16005
- if (symbols[r][a]) {
16006
- var o = symbols[r][a].replace;
16007
- o && (a = o);
16008
- }
16009
- var s = fontMap[n].fontName;
16010
- return getCharacterMetrics(a, s, r) ? fontMap[n].variant : null;
15927
+ var r = e.mode, a = mathFontVariants[n];
15928
+ if (a) return typeof a == "function" ? a(e) : a;
15929
+ var o = e.text;
15930
+ if (noVariantSymbols.has(o)) return null;
15931
+ if (symbols[r][o]) {
15932
+ var s = symbols[r][o].replace;
15933
+ s && (o = s);
15934
+ }
15935
+ var c = fontMap[n].fontName;
15936
+ return getCharacterMetrics(o, c, r) ? fontMap[n].variant : null;
16011
15937
  };
16012
15938
  function isNumberPunctuation(e) {
16013
15939
  if (!e) return !1;
@@ -16136,7 +16062,7 @@ var sizeStyleMap = [
16136
16062
  return t.size < 2 ? e : sizeStyleMap[e - 1][t.size - 1];
16137
16063
  }, Options = class e {
16138
16064
  constructor(t) {
16139
- this.style = t.style, this.color = t.color, this.size = t.size || e.BASESIZE, this.textSize = t.textSize || this.size, this.phantom = !!t.phantom, this.font = t.font || "", this.fontFamily = t.fontFamily || "", this.fontWeight = t.fontWeight || "", this.fontShape = t.fontShape || "", this.sizeMultiplier = sizeMultipliers[this.size - 1], this.maxSize = t.maxSize, this.minRuleThickness = t.minRuleThickness, this._fontMetrics = void 0;
16065
+ this.style = void 0, this.color = void 0, this.size = void 0, this.textSize = void 0, this.phantom = void 0, this.font = void 0, this.fontFamily = void 0, this.fontWeight = void 0, this.fontShape = void 0, this.sizeMultiplier = void 0, this.maxSize = void 0, this.minRuleThickness = void 0, this._fontMetrics = void 0, this.style = t.style, this.color = t.color, this.size = t.size || e.BASESIZE, this.textSize = t.textSize || this.size, this.phantom = !!t.phantom, this.font = t.font || "", this.fontFamily = t.fontFamily || "", this.fontWeight = t.fontWeight || "", this.fontShape = t.fontShape || "", this.sizeMultiplier = sizeMultipliers[this.size - 1], this.maxSize = t.maxSize, this.minRuleThickness = t.minRuleThickness, this._fontMetrics = void 0;
16140
16066
  }
16141
16067
  extend(t) {
16142
16068
  var n = {
@@ -16559,102 +16485,104 @@ var optionsFromSettings = function(e) {
16559
16485
  ]), stretchySvg = function(e, t) {
16560
16486
  function n() {
16561
16487
  var n = 4e5, r = e.label.slice(1);
16562
- if (wideAccentLabels.has(r)) {
16563
- var a = e, o = a.base.type === "ordgroup" ? a.base.body.length : 1, s, c, l;
16564
- if (o > 5) r === "widehat" || r === "widecheck" ? (s = 420, n = 2364, l = .42, c = r + "4") : (s = 312, n = 2340, l = .34, c = "tilde4");
16488
+ if (wideAccentLabels.has(r) && "base" in e) {
16489
+ var a = e.base.type === "ordgroup" ? e.base.body.length : 1, o, s, c;
16490
+ if (a > 5) r === "widehat" || r === "widecheck" ? (o = 420, n = 2364, c = .42, s = r + "4") : (o = 312, n = 2340, c = .34, s = "tilde4");
16565
16491
  else {
16566
- var u = [
16492
+ var l = [
16567
16493
  1,
16568
16494
  1,
16569
16495
  2,
16570
16496
  2,
16571
16497
  3,
16572
16498
  3
16573
- ][o];
16499
+ ][a];
16574
16500
  r === "widehat" || r === "widecheck" ? (n = [
16575
16501
  0,
16576
16502
  1062,
16577
16503
  2364,
16578
16504
  2364,
16579
16505
  2364
16580
- ][u], s = [
16506
+ ][l], o = [
16581
16507
  0,
16582
16508
  239,
16583
16509
  300,
16584
16510
  360,
16585
16511
  420
16586
- ][u], l = [
16512
+ ][l], c = [
16587
16513
  0,
16588
16514
  .24,
16589
16515
  .3,
16590
16516
  .3,
16591
16517
  .36,
16592
16518
  .42
16593
- ][u], c = r + u) : (n = [
16519
+ ][l], s = r + l) : (n = [
16594
16520
  0,
16595
16521
  600,
16596
16522
  1033,
16597
16523
  2339,
16598
16524
  2340
16599
- ][u], s = [
16525
+ ][l], o = [
16600
16526
  0,
16601
16527
  260,
16602
16528
  286,
16603
16529
  306,
16604
16530
  312
16605
- ][u], l = [
16531
+ ][l], c = [
16606
16532
  0,
16607
16533
  .26,
16608
16534
  .286,
16609
16535
  .3,
16610
16536
  .306,
16611
16537
  .34
16612
- ][u], c = "tilde" + u);
16538
+ ][l], s = "tilde" + l);
16613
16539
  }
16614
16540
  return {
16615
- span: makeSvgSpan([], [new SvgNode([new PathNode(c)], {
16541
+ span: makeSvgSpan([], [new SvgNode([new PathNode(s)], {
16616
16542
  width: "100%",
16617
- height: makeEm(l),
16618
- viewBox: "0 0 " + n + " " + s,
16543
+ height: makeEm(c),
16544
+ viewBox: "0 0 " + n + " " + o,
16619
16545
  preserveAspectRatio: "none"
16620
16546
  })], t),
16621
16547
  minWidth: 0,
16622
- height: l
16548
+ height: c
16623
16549
  };
16624
16550
  } else {
16625
- var d = [], f = katexImagesData[r], [p, m, h] = f, g = h / 1e3, _ = p.length, v, y;
16626
- if (_ === 1) {
16627
- var b = f[3];
16628
- v = ["hide-tail"], y = [b];
16629
- } else if (_ === 2) v = ["halfarrow-left", "halfarrow-right"], y = ["xMinYMin", "xMaxYMin"];
16630
- else if (_ === 3) v = [
16551
+ var u = [], d = katexImagesData[r];
16552
+ if (!d) throw Error("No SVG data for \"" + r + "\".");
16553
+ var [f, p, m] = d, h = m / 1e3, g = f.length, _, v;
16554
+ if (g === 1) {
16555
+ if (d.length !== 4) throw Error("Expected 4-tuple for single-path SVG data \"" + r + "\".");
16556
+ _ = ["hide-tail"], v = [d[3]];
16557
+ } else if (g === 2) _ = ["halfarrow-left", "halfarrow-right"], v = ["xMinYMin", "xMaxYMin"];
16558
+ else if (g === 3) _ = [
16631
16559
  "brace-left",
16632
16560
  "brace-center",
16633
16561
  "brace-right"
16634
- ], y = [
16562
+ ], v = [
16635
16563
  "xMinYMin",
16636
16564
  "xMidYMin",
16637
16565
  "xMaxYMin"
16638
16566
  ];
16639
- else throw Error("Correct katexImagesData or update code here to support\n " + _ + " children.");
16640
- for (var x = 0; x < _; x++) {
16641
- var C = new SvgNode([new PathNode(p[x])], {
16567
+ else throw Error("Correct katexImagesData or update code here to support\n " + g + " children.");
16568
+ for (var y = 0; y < g; y++) {
16569
+ var b = new SvgNode([new PathNode(f[y])], {
16642
16570
  width: "400em",
16643
- height: makeEm(g),
16644
- viewBox: "0 0 " + n + " " + h,
16645
- preserveAspectRatio: y[x] + " slice"
16646
- }), w = makeSvgSpan([v[x]], [C], t);
16647
- if (_ === 1) return {
16648
- span: w,
16649
- minWidth: m,
16650
- height: g
16571
+ height: makeEm(h),
16572
+ viewBox: "0 0 " + n + " " + m,
16573
+ preserveAspectRatio: v[y] + " slice"
16574
+ }), x = makeSvgSpan([_[y]], [b], t);
16575
+ if (g === 1) return {
16576
+ span: x,
16577
+ minWidth: p,
16578
+ height: h
16651
16579
  };
16652
- w.style.height = makeEm(g), d.push(w);
16580
+ x.style.height = makeEm(h), u.push(x);
16653
16581
  }
16654
16582
  return {
16655
- span: makeSpan(["stretchy"], d, t),
16656
- minWidth: m,
16657
- height: g
16583
+ span: makeSpan(["stretchy"], u, t),
16584
+ minWidth: p,
16585
+ height: h
16658
16586
  };
16659
16587
  }
16660
16588
  }
@@ -16687,7 +16615,23 @@ var optionsFromSettings = function(e) {
16687
16615
  })], a);
16688
16616
  }
16689
16617
  return o.height = s, o.style.height = makeEm(s), o;
16618
+ }, ATOMS = {
16619
+ bin: 1,
16620
+ close: 1,
16621
+ inner: 1,
16622
+ open: 1,
16623
+ punct: 1,
16624
+ rel: 1
16625
+ }, NON_ATOMS = {
16626
+ "accent-token": 1,
16627
+ mathord: 1,
16628
+ "op-token": 1,
16629
+ spacing: 1,
16630
+ textord: 1
16690
16631
  };
16632
+ function isAtom(e) {
16633
+ return e in ATOMS;
16634
+ }
16691
16635
  function assertNodeType(e, t) {
16692
16636
  if (!e || e.type !== t) throw Error("Expected node of type " + t + ", but got " + (e ? "node of type " + e.type : String(e)));
16693
16637
  return e;
@@ -16961,7 +16905,8 @@ defineFunction({
16961
16905
  {
16962
16906
  type: "elem",
16963
16907
  elem: c,
16964
- shift: l
16908
+ shift: l,
16909
+ wrapperClasses: ["svg-align"]
16965
16910
  },
16966
16911
  {
16967
16912
  type: "elem",
@@ -16979,10 +16924,11 @@ defineFunction({
16979
16924
  }, {
16980
16925
  type: "elem",
16981
16926
  elem: c,
16982
- shift: l
16927
+ shift: l,
16928
+ wrapperClasses: ["svg-align"]
16983
16929
  }]
16984
16930
  });
16985
- return d.children[0].children[0].children[1].classes.push("svg-align"), makeSpan(["mrel", "x-arrow"], [d], t);
16931
+ return makeSpan(["mrel", "x-arrow"], [d], t);
16986
16932
  },
16987
16933
  mathmlBuilder(e, t) {
16988
16934
  var n = stretchyMathML(e.label);
@@ -17125,7 +17071,8 @@ var cdArrowFunctionName = {
17125
17071
  type: "styling",
17126
17072
  body: [],
17127
17073
  mode: "math",
17128
- style: "display"
17074
+ style: "display",
17075
+ resetFont: !0
17129
17076
  }), isStartOfArrow = (e) => e.type === "textord" && e.text === "@", isLabelEnd = (e, t) => (e.type === "mathord" || e.type === "atom") && e.text === t;
17130
17077
  function cdArrow(e, t, n) {
17131
17078
  var r = cdArrowFunctionName[e];
@@ -17202,7 +17149,8 @@ function parseCD(t) {
17202
17149
  type: "styling",
17203
17150
  body: [cdArrow(d, f, t)],
17204
17151
  mode: "math",
17205
- style: "display"
17152
+ style: "display",
17153
+ resetFont: !0
17206
17154
  };
17207
17155
  a.push(g), l = newCell();
17208
17156
  }
@@ -17562,7 +17510,7 @@ var getMetrics = function(e, t, n) {
17562
17510
  preserveAspectRatio: "xMinYMin slice"
17563
17511
  })], a);
17564
17512
  }, makeSqrtImage = function(e, t) {
17565
- var n = t.havingBaseSizing(), r = traverseSequence("\\surd", e * n.sizeMultiplier, stackLargeDelimiterSequence, n), a = n.sizeMultiplier, o = Math.max(0, t.minRuleThickness - t.fontMetrics().sqrtRuleThickness), s, c = 0, l = 0, u = 0, d;
17513
+ var n = t.havingBaseSizing(), r = traverseSequence("\\surd", e * n.sizeMultiplier, stackLargeDelimiterSequence, n), a = n.sizeMultiplier, o = Math.max(0, t.minRuleThickness - t.fontMetrics().sqrtRuleThickness), s, c, l, u, d;
17566
17514
  return r.type === "small" ? (u = 1e3 + 1e3 * o + vbPad, e < 1 ? a = 1 : e < 1.4 && (a = .7), c = (1 + o + emPad) / a, l = (1 + o) / a, s = sqrtSvg("sqrtMain", c, u, o, t), s.style.minWidth = "0.853em", d = .833 / a) : r.type === "large" ? (u = (1e3 + vbPad) * sizeToMaxHeight[r.size], l = (sizeToMaxHeight[r.size] + o) / a, c = (sizeToMaxHeight[r.size] + o + emPad) / a, s = sqrtSvg("sqrtSize" + r.size, c, u, o, t), s.style.minWidth = "1.02em", d = 1 / a) : (c = e + o + emPad, l = e + o, u = Math.floor(1e3 * e + o) + vbPad, s = sqrtSvg("sqrtTall", c, u, o, t), s.style.minWidth = "0.742em", d = 1.056), s.height = l, s.style.height = makeEm(c), {
17567
17515
  span: s,
17568
17516
  advanceWidth: d,
@@ -17796,6 +17744,9 @@ var getMetrics = function(e, t, n) {
17796
17744
  size: 4
17797
17745
  }
17798
17746
  }, delimiters = new Set(/* @__PURE__ */ "(,\\lparen,),\\rparen,[,\\lbrack,],\\rbrack,\\{,\\lbrace,\\},\\rbrace,\\lfloor,\\rfloor,⌊,⌋,\\lceil,\\rceil,⌈,⌉,<,>,\\langle,⟨,\\rangle,⟩,\\lt,\\gt,\\lvert,\\rvert,\\lVert,\\rVert,\\lgroup,\\rgroup,⟮,⟯,\\lmoustache,\\rmoustache,⎰,⎱,/,\\backslash,|,\\vert,\\|,\\Vert,\\uparrow,\\Uparrow,\\downarrow,\\Downarrow,\\updownarrow,\\Updownarrow,.".split(","));
17747
+ function isMiddleDelimNode(e) {
17748
+ return "isMiddle" in e;
17749
+ }
17799
17750
  function checkDelimiter(t, n) {
17800
17751
  var r = checkSymbolNodeType(t);
17801
17752
  if (r && delimiters.has(r.text)) return r;
@@ -17889,20 +17840,26 @@ defineFunction({
17889
17840
  },
17890
17841
  htmlBuilder: (e, t) => {
17891
17842
  assertParsed(e);
17892
- for (var n = buildExpression$1(e.body, t, !0, ["mopen", "mclose"]), r = 0, a = 0, o = !1, s = 0; s < n.length; s++) n[s].isMiddle ? o = !0 : (r = Math.max(n[s].height, r), a = Math.max(n[s].depth, a));
17843
+ for (var n = buildExpression$1(e.body, t, !0, ["mopen", "mclose"]), r = 0, a = 0, o = !1, s = 0; s < n.length; s++) {
17844
+ var c = n[s];
17845
+ isMiddleDelimNode(c) ? o = !0 : (r = Math.max(n[s].height, r), a = Math.max(n[s].depth, a));
17846
+ }
17893
17847
  r *= t.sizeMultiplier, a *= t.sizeMultiplier;
17894
- var c = e.left === "." ? makeNullDelimiter(t, ["mopen"]) : makeLeftRightDelim(e.left, r, a, t, e.mode, ["mopen"]);
17895
- if (n.unshift(c), o) for (var l = 1; l < n.length; l++) {
17896
- var u = n[l].isMiddle;
17897
- u && (n[l] = makeLeftRightDelim(u.delim, r, a, u.options, e.mode, []));
17848
+ var l = e.left === "." ? makeNullDelimiter(t, ["mopen"]) : makeLeftRightDelim(e.left, r, a, t, e.mode, ["mopen"]);
17849
+ if (n.unshift(l), o) for (var u = 1; u < n.length; u++) {
17850
+ var d = n[u];
17851
+ if (isMiddleDelimNode(d)) {
17852
+ var f = d.isMiddle;
17853
+ n[u] = makeLeftRightDelim(f.delim, r, a, f.options, e.mode, []);
17854
+ }
17898
17855
  }
17899
- var d;
17900
- if (e.right === ".") d = makeNullDelimiter(t, ["mclose"]);
17856
+ var p;
17857
+ if (e.right === ".") p = makeNullDelimiter(t, ["mclose"]);
17901
17858
  else {
17902
- var f = e.rightColor ? t.withColor(e.rightColor) : t;
17903
- d = makeLeftRightDelim(e.right, r, a, f, e.mode, ["mclose"]);
17859
+ var m = e.rightColor ? t.withColor(e.rightColor) : t;
17860
+ p = makeLeftRightDelim(e.right, r, a, m, e.mode, ["mclose"]);
17904
17861
  }
17905
- return n.push(d), makeSpan(["minner"], n, t);
17862
+ return n.push(p), makeSpan(["minner"], n, t);
17906
17863
  },
17907
17864
  mathmlBuilder: (e, t) => {
17908
17865
  assertParsed(e);
@@ -17935,16 +17892,10 @@ defineFunction({
17935
17892
  },
17936
17893
  htmlBuilder: (e, t) => {
17937
17894
  var n;
17938
- if (e.delim === ".") n = makeNullDelimiter(t, []);
17939
- else {
17940
- n = makeSizedDelim(e.delim, 1, t, e.mode, []);
17941
- var r = {
17942
- delim: e.delim,
17943
- options: t
17944
- };
17945
- n.isMiddle = r;
17946
- }
17947
- return n;
17895
+ return e.delim === "." ? n = makeNullDelimiter(t, []) : (n = makeSizedDelim(e.delim, 1, t, e.mode, []), n.isMiddle = {
17896
+ delim: e.delim,
17897
+ options: t
17898
+ }), n;
17948
17899
  },
17949
17900
  mathmlBuilder: (e, t) => {
17950
17901
  var n = new MathNode("mo", [e.delim === "\\vert" || e.delim === "|" ? makeText("|", "text") : makeText(e.delim, e.mode)]);
@@ -17952,7 +17903,7 @@ defineFunction({
17952
17903
  }
17953
17904
  });
17954
17905
  var htmlBuilder$7 = (e, t) => {
17955
- var n = wrapFragment(buildGroup$1(e.body, t), t), r = e.label.slice(1), a = t.sizeMultiplier, o, s = 0, c = isCharacterBox(e.body);
17906
+ var n = wrapFragment(buildGroup$1(e.body, t), t), r = e.label.slice(1), a = t.sizeMultiplier, o, s, c = isCharacterBox(e.body);
17956
17907
  if (r === "sout") o = makeSpan(["stretchy", "sout"]), o.height = t.fontMetrics().defaultRuleThickness / a, s = -.5 * t.fontMetrics().xHeight;
17957
17908
  else if (r === "phase") {
17958
17909
  var u = calculateSize({
@@ -17974,7 +17925,7 @@ var htmlBuilder$7 = (e, t) => {
17974
17925
  })], t), o.style.height = makeEm(p), s = n.depth + u + d;
17975
17926
  } else {
17976
17927
  /cancel/.test(r) ? c || n.classes.push("cancel-pad") : r === "angl" ? n.classes.push("anglpad") : n.classes.push("boxpad");
17977
- var h = 0, g = 0, _ = 0;
17928
+ var h, g, _ = 0;
17978
17929
  /box/.test(r) ? (_ = Math.max(t.fontMetrics().fboxrule, t.minRuleThickness), h = t.fontMetrics().fboxsep + (r === "colorbox" ? 0 : _), g = h) : r === "angl" ? (_ = Math.max(t.fontMetrics().defaultRuleThickness, t.minRuleThickness), h = 4 * _, g = Math.max(0, .25 - n.depth)) : (h = c ? .2 : 0, g = h), o = stretchyEnclose(n, r, h, g, t), /fbox|boxed|fcolorbox/.test(r) ? (o.style.borderStyle = "solid", o.style.borderWidth = makeEm(_)) : r === "angl" && _ !== .049 && (o.style.borderTopWidth = makeEm(_), o.style.borderRightWidth = makeEm(_)), s = n.depth + g, e.backgroundColor && (o.style.backgroundColor = e.backgroundColor, e.borderColor && (o.style.borderColor = e.borderColor));
17979
17930
  }
17980
17931
  var v;
@@ -18008,7 +17959,7 @@ var htmlBuilder$7 = (e, t) => {
18008
17959
  }
18009
17960
  return /cancel/.test(r) && (v.height = n.height, v.depth = n.depth), /cancel/.test(r) && !c ? makeSpan(["mord", "cancel-lap"], [v], t) : makeSpan(["mord"], [v], t);
18010
17961
  }, mathmlBuilder$6 = (e, t) => {
18011
- var n = 0, r = new MathNode(e.label.includes("colorbox") ? "mpadded" : "menclose", [buildGroup(e.body, t)]);
17962
+ var n, r = new MathNode(e.label.includes("colorbox") ? "mpadded" : "menclose", [buildGroup(e.body, t)]);
18012
17963
  switch (e.label) {
18013
17964
  case "\\cancel":
18014
17965
  r.setAttribute("notation", "updiagonalstrike");
@@ -18047,7 +17998,7 @@ defineFunction({
18047
17998
  props: {
18048
17999
  numArgs: 2,
18049
18000
  allowedInText: !0,
18050
- argTypes: ["color", "text"]
18001
+ argTypes: ["color", "hbox"]
18051
18002
  },
18052
18003
  handler(e, t, n) {
18053
18004
  var { parser: r, funcName: a } = e, o = assertNodeType(t[0], "color-token").color, s = t[1];
@@ -18070,7 +18021,7 @@ defineFunction({
18070
18021
  argTypes: [
18071
18022
  "color",
18072
18023
  "color",
18073
- "text"
18024
+ "hbox"
18074
18025
  ]
18075
18026
  },
18076
18027
  handler(e, t, n) {
@@ -18178,14 +18129,14 @@ function defineMacro(e, t) {
18178
18129
  }
18179
18130
  var SourceLocation = class e {
18180
18131
  constructor(e, t, n) {
18181
- this.lexer = e, this.start = t, this.end = n;
18132
+ this.lexer = void 0, this.start = void 0, this.end = void 0, this.lexer = e, this.start = t, this.end = n;
18182
18133
  }
18183
18134
  static range(t, n) {
18184
18135
  return n ? !t || !t.loc || !n.loc || t.loc.lexer !== n.loc.lexer ? null : new e(t.loc.lexer, t.loc.start, n.loc.end) : t && t.loc;
18185
18136
  }
18186
18137
  }, Token = class e {
18187
18138
  constructor(e, t) {
18188
- this.text = e, this.loc = t;
18139
+ this.text = void 0, this.loc = void 0, this.noexpand = void 0, this.treatAsRelax = void 0, this.text = e, this.loc = t;
18189
18140
  }
18190
18141
  range(t, n) {
18191
18142
  return new e(n, SourceLocation.range(this, t));
@@ -18231,6 +18182,7 @@ function parseArray(t, n, r) {
18231
18182
  type: "styling",
18232
18183
  mode: t.mode,
18233
18184
  style: r,
18185
+ resetFont: !0,
18234
18186
  body: [E]
18235
18187
  }), g.push(E);
18236
18188
  var O = t.fetch().text;
@@ -18283,10 +18235,15 @@ var htmlBuilder$6 = function(t, n) {
18283
18235
  for (b(s[0]), r = 0; r < t.body.length; ++r) {
18284
18236
  var x = t.body[r], C = _, w = v;
18285
18237
  c < x.length && (c = x.length);
18286
- var E = Array(x.length);
18238
+ var E = {
18239
+ cells: Array(x.length),
18240
+ height: 0,
18241
+ depth: 0,
18242
+ pos: 0
18243
+ };
18287
18244
  for (a = 0; a < x.length; ++a) {
18288
18245
  var O = buildGroup$1(x[a], n);
18289
- w < O.depth && (w = O.depth), C < O.height && (C = O.height), E[a] = O;
18246
+ w < O.depth && (w = O.depth), C < O.height && (C = O.height), E.cells[a] = O;
18290
18247
  }
18291
18248
  var k = t.rowGaps[r], A = 0;
18292
18249
  k && (A = calculateSize(k, n), A > 0 && (A += v, w < A && (w = A), A = 0)), t.addJot && r < t.body.length - 1 && (w += h), E.height = C, E.depth = w, y += C, E.pos = y, y += w + A, l[r] = E, b(s[r + 1]);
@@ -18304,8 +18261,8 @@ var htmlBuilder$6 = function(t, n) {
18304
18261
  for (var V = M[F], H = !0; (U = V)?.type === "separator";) {
18305
18262
  var U;
18306
18263
  if (H || (P = makeSpan(["arraycolsep"], []), P.style.width = makeEm(n.fontMetrics().doubleRuleSep), N.push(P)), V.separator === "|" || V.separator === ":") {
18307
- var ia = V.separator === "|" ? "solid" : "dashed", W = makeSpan(["vertical-separator"], [], n);
18308
- W.style.height = makeEm(y), W.style.borderRightWidth = makeEm(d), W.style.borderRightStyle = ia, W.style.margin = "0 " + makeEm(-d / 2);
18264
+ var wa = V.separator === "|" ? "solid" : "dashed", W = makeSpan(["vertical-separator"], [], n);
18265
+ W.style.height = makeEm(y), W.style.borderRightWidth = makeEm(d), W.style.borderRightStyle = wa, W.style.margin = "0 " + makeEm(-d / 2);
18309
18266
  var G = y - j;
18310
18267
  G && (W.style.verticalAlign = makeEm(-G)), N.push(W);
18311
18268
  } else throw new ParseError("Invalid separator type: " + V.separator);
@@ -18316,26 +18273,26 @@ var htmlBuilder$6 = function(t, n) {
18316
18273
  (a > 0 || t.hskipBeforeAndAfter) && (K = V?.pregap ?? p, K !== 0 && (P = makeSpan(["arraycolsep"], []), P.style.width = makeEm(K), N.push(P)));
18317
18274
  var q = [];
18318
18275
  for (r = 0; r < o; ++r) {
18319
- var J = l[r], Y = J[a];
18276
+ var J = l[r], Y = J.cells[a];
18320
18277
  if (Y) {
18321
- var aa = J.pos - j;
18278
+ var Ta = J.pos - j;
18322
18279
  Y.depth = J.depth, Y.height = J.height, q.push({
18323
18280
  type: "elem",
18324
18281
  elem: Y,
18325
- shift: aa
18282
+ shift: Ta
18326
18283
  });
18327
18284
  }
18328
18285
  }
18329
- var oa = makeVList({
18286
+ var Ea = makeVList({
18330
18287
  positionType: "individualShift",
18331
18288
  children: q
18332
- }), sa = makeSpan(["col-align-" + (V?.align || "c")], [oa]);
18333
- N.push(sa), (a < c - 1 || t.hskipBeforeAndAfter) && (K = V?.postgap ?? p, K !== 0 && (P = makeSpan(["arraycolsep"], []), P.style.width = makeEm(K), N.push(P)));
18289
+ }), Da = makeSpan(["col-align-" + (V?.align || "c")], [Ea]);
18290
+ N.push(Da), (a < c - 1 || t.hskipBeforeAndAfter) && (K = V?.postgap ?? p, K !== 0 && (P = makeSpan(["arraycolsep"], []), P.style.width = makeEm(K), N.push(P)));
18334
18291
  }
18335
18292
  }
18336
18293
  var X = makeSpan(["mtable"], N);
18337
18294
  if (u.length > 0) {
18338
- for (var ca = makeLineSpan("hline", n, d), la = makeLineSpan("hdashline", n, d), Z = [{
18295
+ for (var Oa = makeLineSpan("hline", n, d), ka = makeLineSpan("hdashline", n, d), Z = [{
18339
18296
  type: "elem",
18340
18297
  elem: X,
18341
18298
  shift: 0
@@ -18343,11 +18300,11 @@ var htmlBuilder$6 = function(t, n) {
18343
18300
  var Q = u.pop(), $ = Q.pos - j;
18344
18301
  Q.isDashed ? Z.push({
18345
18302
  type: "elem",
18346
- elem: la,
18303
+ elem: ka,
18347
18304
  shift: $
18348
18305
  }) : Z.push({
18349
18306
  type: "elem",
18350
- elem: ca,
18307
+ elem: Oa,
18351
18308
  shift: $
18352
18309
  });
18353
18310
  }
@@ -18357,11 +18314,11 @@ var htmlBuilder$6 = function(t, n) {
18357
18314
  });
18358
18315
  }
18359
18316
  if (I.length === 0) return makeSpan(["mord"], [X], n);
18360
- var ua = makeSpan(["tag"], [makeVList({
18317
+ var Aa = makeSpan(["tag"], [makeVList({
18361
18318
  positionType: "individualShift",
18362
18319
  children: I
18363
18320
  })], n);
18364
- return makeFragment([X, ua]);
18321
+ return makeFragment([X, Aa]);
18365
18322
  }, alignMap = {
18366
18323
  c: "center ",
18367
18324
  l: "left ",
@@ -18715,8 +18672,7 @@ var htmlBuilder$5 = (e, t) => {
18715
18672
  }, fontAliases = {
18716
18673
  "\\Bbb": "\\mathbb",
18717
18674
  "\\bold": "\\mathbf",
18718
- "\\frak": "\\mathfrak",
18719
- "\\bm": "\\boldsymbol"
18675
+ "\\frak": "\\mathfrak"
18720
18676
  };
18721
18677
  defineFunction({
18722
18678
  type: "font",
@@ -19078,8 +19034,7 @@ defineFunction({
19078
19034
  var htmlBuilder$3 = (e, t) => {
19079
19035
  var n = t.style, r, a;
19080
19036
  e.type === "supsub" ? (r = e.sup ? buildGroup$1(e.sup, t.havingStyle(n.sup()), t) : buildGroup$1(e.sub, t.havingStyle(n.sub()), t), a = assertNodeType(e.base, "horizBrace")) : a = assertNodeType(e, "horizBrace");
19081
- var o = buildGroup$1(a.base, t.havingBaseStyle(Style$1.DISPLAY)), s = stretchySvg(a, t), c;
19082
- if (a.isOver ? (c = makeVList({
19037
+ var o = buildGroup$1(a.base, t.havingBaseStyle(Style$1.DISPLAY)), s = stretchySvg(a, t), c = a.isOver ? makeVList({
19083
19038
  positionType: "firstBaseline",
19084
19039
  children: [
19085
19040
  {
@@ -19092,16 +19047,18 @@ var htmlBuilder$3 = (e, t) => {
19092
19047
  },
19093
19048
  {
19094
19049
  type: "elem",
19095
- elem: s
19050
+ elem: s,
19051
+ wrapperClasses: ["svg-align"]
19096
19052
  }
19097
19053
  ]
19098
- }), c.children[0].children[0].children[1].classes.push("svg-align")) : (c = makeVList({
19054
+ }) : makeVList({
19099
19055
  positionType: "bottom",
19100
19056
  positionData: o.depth + .1 + s.height,
19101
19057
  children: [
19102
19058
  {
19103
19059
  type: "elem",
19104
- elem: s
19060
+ elem: s,
19061
+ wrapperClasses: ["svg-align"]
19105
19062
  },
19106
19063
  {
19107
19064
  type: "kern",
@@ -19112,7 +19069,8 @@ var htmlBuilder$3 = (e, t) => {
19112
19069
  elem: o
19113
19070
  }
19114
19071
  ]
19115
- }), c.children[0].children[0].children[0].classes.push("svg-align")), r) {
19072
+ });
19073
+ if (r) {
19116
19074
  var l = makeSpan(["minner", a.isOver ? "mover" : "munder"], [c], t);
19117
19075
  c = a.isOver ? makeVList({
19118
19076
  positionType: "firstBaseline",
@@ -19256,10 +19214,10 @@ defineFunction({
19256
19214
  };
19257
19215
  },
19258
19216
  htmlBuilder(e, t) {
19259
- return makeFragment(buildExpression$1(e.body, t, !1));
19217
+ return makeFragment(buildExpression$1(e.body, t.withFont(""), !1));
19260
19218
  },
19261
19219
  mathmlBuilder(e, t) {
19262
- return new MathNode("mrow", buildExpression(e.body, t));
19220
+ return new MathNode("mrow", buildExpression(e.body, t.withFont("")));
19263
19221
  }
19264
19222
  }), defineFunction({
19265
19223
  type: "html",
@@ -19517,6 +19475,7 @@ defineFunction({
19517
19475
  type: "styling",
19518
19476
  mode: r.mode,
19519
19477
  style: "text",
19478
+ resetFont: !0,
19520
19479
  body: s
19521
19480
  };
19522
19481
  }
@@ -19674,15 +19633,15 @@ var assembleSupSub = (e, t, n, r, a, o, s) => {
19674
19633
  e.type === "supsub" ? (n = e.sup, r = e.sub, o = assertNodeType(e.base, "op"), a = !0) : o = assertNodeType(e, "op");
19675
19634
  var s = t.style, c = !1;
19676
19635
  s.size === Style$1.DISPLAY.size && o.symbol && !noSuccessor.has(o.name) && (c = !0);
19677
- var l;
19636
+ var l, u;
19678
19637
  if (o.symbol) {
19679
- var u = c ? "Size2-Regular" : "Size1-Regular", d = "";
19680
- if ((o.name === "\\oiint" || o.name === "\\oiiint") && (d = o.name.slice(1), o.name = d === "oiint" ? "\\iint" : "\\iiint"), l = makeSymbol(o.name, u, "math", t, [
19638
+ var d = c ? "Size2-Regular" : "Size1-Regular", f = "";
19639
+ if ((o.name === "\\oiint" || o.name === "\\oiiint") && (f = o.name.slice(1), o.name = f === "oiint" ? "\\iint" : "\\iiint"), l = makeSymbol(o.name, d, "math", t, [
19681
19640
  "mop",
19682
19641
  "op-symbol",
19683
19642
  c ? "large-op" : "small-op"
19684
- ]), d.length > 0) {
19685
- var f = l.italic, p = staticSvg(d + "Size" + (c ? "2" : "1"), t);
19643
+ ]), u = l.italic, f.length > 0) {
19644
+ var p = staticSvg(f + "Size" + (c ? "2" : "1"), t);
19686
19645
  l = makeVList({
19687
19646
  positionType: "individualShift",
19688
19647
  children: [{
@@ -19694,7 +19653,7 @@ var assembleSupSub = (e, t, n, r, a, o, s) => {
19694
19653
  elem: p,
19695
19654
  shift: c ? .08 : 0
19696
19655
  }]
19697
- }), o.name = "\\" + d, l.classes.unshift("mop"), l.italic = f;
19656
+ }), o.name = "\\" + f, l.classes.unshift("mop"), l.italic = u;
19698
19657
  }
19699
19658
  } else if (o.body) {
19700
19659
  var m = buildExpression$1(o.body, t, !0);
@@ -19704,7 +19663,7 @@ var assembleSupSub = (e, t, n, r, a, o, s) => {
19704
19663
  l = makeSpan(["mop"], h, t);
19705
19664
  }
19706
19665
  var _ = 0, v = 0;
19707
- return (l instanceof SymbolNode || o.name === "\\oiint" || o.name === "\\oiiint") && !o.suppressBaseShift && (_ = (l.height - l.depth) / 2 - t.fontMetrics().axisHeight, v = l.italic || 0), a ? assembleSupSub(l, n, r, t, s, v, _) : (_ && (l.style.position = "relative", l.style.top = makeEm(_)), l);
19666
+ return (l instanceof SymbolNode || o.name === "\\oiint" || o.name === "\\oiiint") && !o.suppressBaseShift && (_ = (l.height - l.depth) / 2 - t.fontMetrics().axisHeight, v = l.italic ?? 0), a ? assembleSupSub(l, n, r, t, s, v, _) : (_ && (l.style.position = "relative", l.style.top = makeEm(_)), l);
19708
19667
  }, mathmlBuilder$1 = (e, t) => {
19709
19668
  var n;
19710
19669
  if (e.symbol) n = new MathNode("mo", [makeText(e.name, e.mode)]), noSuccessor.has(e.name) && n.setAttribute("largeop", "false");
@@ -20133,7 +20092,7 @@ defineFunction({
20133
20092
  },
20134
20093
  handler: (e, t, n) => {
20135
20094
  var { parser: r } = e, a = !1, o = !1, s = n[0] && assertNodeType(n[0], "ordgroup");
20136
- if (s) for (var c = "", l = 0; l < s.body.length; ++l) {
20095
+ if (s) for (var c, l = 0; l < s.body.length; ++l) {
20137
20096
  var u = s.body[l];
20138
20097
  if (c = assertSymbolNodeType(u).text, c === "t") a = !0;
20139
20098
  else if (c === "b") o = !0;
@@ -20239,6 +20198,9 @@ var styleMap = {
20239
20198
  script: Style$1.SCRIPT,
20240
20199
  scriptscript: Style$1.SCRIPTSCRIPT
20241
20200
  };
20201
+ function isStyleStr(e) {
20202
+ return e in styleMap;
20203
+ }
20242
20204
  defineFunction({
20243
20205
  type: "styling",
20244
20206
  names: [
@@ -20254,6 +20216,7 @@ defineFunction({
20254
20216
  },
20255
20217
  handler(e, t) {
20256
20218
  var { breakOnTokenText: n, funcName: r, parser: a } = e, o = a.parseExpression(!0, n), s = r.slice(1, r.length - 5);
20219
+ if (!isStyleStr(s)) throw Error("Unknown style: " + s);
20257
20220
  return {
20258
20221
  type: "styling",
20259
20222
  mode: a.mode,
@@ -20262,11 +20225,13 @@ defineFunction({
20262
20225
  };
20263
20226
  },
20264
20227
  htmlBuilder(e, t) {
20265
- var n = styleMap[e.style], r = t.havingStyle(n).withFont("");
20266
- return sizingGroup(e.body, r, t);
20228
+ var n = styleMap[e.style], r = t.havingStyle(n);
20229
+ return e.resetFont && (r = r.withFont("")), sizingGroup(e.body, r, t);
20267
20230
  },
20268
20231
  mathmlBuilder(e, t) {
20269
- var n = styleMap[e.style], r = t.havingStyle(n), a = new MathNode("mstyle", buildExpression(e.body, r)), o = {
20232
+ var n = styleMap[e.style], r = t.havingStyle(n);
20233
+ e.resetFont && (r = r.withFont(""));
20234
+ var a = new MathNode("mstyle", buildExpression(e.body, r)), o = {
20270
20235
  display: ["0", "true"],
20271
20236
  text: ["0", "false"],
20272
20237
  script: ["1", "false"],
@@ -20296,7 +20261,7 @@ defineFunctionBuilders({
20296
20261
  var _ = t.style === Style$1.DISPLAY ? d.sup1 : t.style.cramped ? d.sup3 : d.sup2, v = t.sizeMultiplier, y = makeEm(.5 / d.ptPerEm / v), b = null;
20297
20262
  if (u) {
20298
20263
  var x = e.base && e.base.type === "op" && e.base.name && (e.base.name === "\\oiint" || e.base.name === "\\oiiint");
20299
- (s instanceof SymbolNode || x) && (b = makeEm(-s.italic));
20264
+ (s instanceof SymbolNode || x) && (b = makeEm(-(s.italic ?? 0)));
20300
20265
  }
20301
20266
  var C;
20302
20267
  if (c && u) {
@@ -20606,7 +20571,7 @@ defineFunction({
20606
20571
  });
20607
20572
  var makeVerb = (e) => e.body.replace(/ /g, e.star ? "␣" : "\xA0"), functions = _functions, spaceRegexString = "[ \r\n ]", controlWordRegexString = "\\\\[a-zA-Z@]+", controlSymbolRegexString = "\\\\[^\ud800-\udfff]", controlWordWhitespaceRegexString = "(" + controlWordRegexString + ")" + spaceRegexString + "*", controlSpaceRegexString = "\\\\(\n|[ \r ]+\n?)[ \r ]*", combiningDiacriticalMarkString = "[̀-ͯ]", combiningDiacriticalMarksEndRegex = /* @__PURE__ */ RegExp(combiningDiacriticalMarkString + "+$"), tokenRegexString = "(" + spaceRegexString + "+)|" + (controlSpaceRegexString + "|") + "([!-\\[\\]-‧‪-퟿豈-￿]" + (combiningDiacriticalMarkString + "*") + "|[\ud800-\udbff][\udc00-\udfff]" + (combiningDiacriticalMarkString + "*") + "|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5" + ("|" + controlWordWhitespaceRegexString) + ("|" + controlSymbolRegexString + ")"), Lexer = class {
20608
20573
  constructor(e, t) {
20609
- this.input = e, this.settings = t, this.tokenRegex = new RegExp(tokenRegexString, "g"), this.catcodes = {
20574
+ this.input = void 0, this.settings = void 0, this.tokenRegex = void 0, this.catcodes = void 0, this.input = e, this.settings = t, this.tokenRegex = new RegExp(tokenRegexString, "g"), this.catcodes = {
20610
20575
  "%": 14,
20611
20576
  "~": 13
20612
20577
  };
@@ -20628,7 +20593,7 @@ var makeVerb = (e) => e.body.replace(/ /g, e.star ? "␣" : "\xA0"), functions =
20628
20593
  }
20629
20594
  }, Namespace = class {
20630
20595
  constructor(e, t) {
20631
- e === void 0 && (e = {}), t === void 0 && (t = {}), this.current = t, this.builtins = e, this.undefStack = [];
20596
+ e === void 0 && (e = {}), t === void 0 && (t = {}), this.current = void 0, this.builtins = void 0, this.undefStack = void 0, this.current = t, this.builtins = e, this.undefStack = [];
20632
20597
  }
20633
20598
  beginGroup() {
20634
20599
  this.undefStack.push({});
@@ -20883,7 +20848,7 @@ var implicitCommands = {
20883
20848
  "\\nolimits": !0
20884
20849
  }, MacroExpander = class {
20885
20850
  constructor(e, t, n) {
20886
- this.settings = t, this.expansionCount = 0, this.feed(e), this.macros = new Namespace(macros, t.macros), this.mode = n, this.stack = [];
20851
+ this.settings = void 0, this.expansionCount = void 0, this.lexer = void 0, this.macros = void 0, this.stack = void 0, this.mode = void 0, this.settings = t, this.expansionCount = 0, this.feed(e), this.macros = new Namespace(macros, t.macros), this.mode = n, this.stack = [];
20887
20852
  }
20888
20853
  feed(e) {
20889
20854
  this.lexer = new Lexer(e, this.settings);
@@ -21524,7 +21489,7 @@ var implicitCommands = {
21524
21489
  Ὼ: "Ὼ"
21525
21490
  }, Parser = class t {
21526
21491
  constructor(e, t) {
21527
- this.mode = "math", this.gullet = new MacroExpander(e, t, this.mode), this.settings = t, this.leftrightDepth = 0, this.nextToken = null;
21492
+ this.mode = void 0, this.gullet = void 0, this.settings = void 0, this.leftrightDepth = void 0, this.nextToken = void 0, this.mode = "math", this.gullet = new MacroExpander(e, t, this.mode), this.settings = t, this.leftrightDepth = 0, this.nextToken = null;
21528
21493
  }
21529
21494
  expect(t, n) {
21530
21495
  if (n === void 0 && (n = !0), this.fetch().text !== t) throw new ParseError("Expected '" + t + "', got '" + this.fetch().text + "'", this.fetch());
@@ -21728,7 +21693,8 @@ var implicitCommands = {
21728
21693
  type: "styling",
21729
21694
  mode: a.mode,
21730
21695
  body: [a],
21731
- style: "text"
21696
+ style: "text",
21697
+ resetFont: !0
21732
21698
  };
21733
21699
  case "raw":
21734
21700
  var o = this.parseStringGroup("raw", r);
@@ -21887,23 +21853,19 @@ var implicitCommands = {
21887
21853
  var s;
21888
21854
  if (symbols[this.mode][n]) {
21889
21855
  this.settings.strict && this.mode === "math" && extraLatin.includes(n) && this.settings.reportNonstrict("unicodeTextInMathMode", "Latin-1/Unicode text character \"" + n[0] + "\" used in math mode", t);
21890
- var c = symbols[this.mode][n].group, l = SourceLocation.range(t), u;
21891
- if (ATOMS.hasOwnProperty(c)) {
21892
- var d = c;
21893
- u = {
21894
- type: "atom",
21895
- mode: this.mode,
21896
- family: d,
21897
- loc: l,
21898
- text: n
21899
- };
21900
- } else u = {
21856
+ var c = symbols[this.mode][n].group, l = SourceLocation.range(t);
21857
+ s = isAtom(c) ? {
21858
+ type: "atom",
21859
+ mode: this.mode,
21860
+ family: c,
21861
+ loc: l,
21862
+ text: n
21863
+ } : {
21901
21864
  type: c,
21902
21865
  mode: this.mode,
21903
21866
  loc: l,
21904
21867
  text: n
21905
21868
  };
21906
- s = u;
21907
21869
  } else if (n.charCodeAt(0) >= 128) this.settings.strict && (supportedCodepoint(n.charCodeAt(0)) ? this.mode === "math" && this.settings.reportNonstrict("unicodeTextInMathMode", "Unicode text character \"" + n[0] + "\" used in math mode", t) : this.settings.reportNonstrict("unknownSymbol", "Unrecognized Unicode character \"" + n[0] + "\"" + (" (" + n.charCodeAt(0) + ")"), t)), s = {
21908
21870
  type: "textord",
21909
21871
  mode: "text",
@@ -21911,16 +21873,16 @@ var implicitCommands = {
21911
21873
  text: n
21912
21874
  };
21913
21875
  else return null;
21914
- if (this.consume(), o) for (var f = 0; f < o[0].length; f++) {
21915
- var p = o[0][f];
21916
- if (!unicodeAccents[p]) throw new ParseError("Unknown accent ' " + p + "'", t);
21917
- var m = unicodeAccents[p][this.mode] || unicodeAccents[p].text;
21918
- if (!m) throw new ParseError("Accent " + p + " unsupported in " + this.mode + " mode", t);
21876
+ if (this.consume(), o) for (var u = 0; u < o[0].length; u++) {
21877
+ var d = o[0][u];
21878
+ if (!unicodeAccents[d]) throw new ParseError("Unknown accent ' " + d + "'", t);
21879
+ var f = unicodeAccents[d][this.mode] || unicodeAccents[d].text;
21880
+ if (!f) throw new ParseError("Accent " + d + " unsupported in " + this.mode + " mode", t);
21919
21881
  s = {
21920
21882
  type: "accent",
21921
21883
  mode: this.mode,
21922
21884
  loc: SourceLocation.range(t),
21923
- label: m,
21885
+ label: f,
21924
21886
  isStretchy: !1,
21925
21887
  isShifty: !0,
21926
21888
  base: s
@@ -21975,7 +21937,7 @@ var renderToString = function(e, t) {
21975
21937
  return renderError(t, e, n);
21976
21938
  }
21977
21939
  }, katex = {
21978
- version: "0.16.45",
21940
+ version: "0.16.46",
21979
21941
  render,
21980
21942
  renderToString,
21981
21943
  ParseError,