autodiff-visualizer / assets /interactive_graph.bundle.js
Simon Clematide
Fix KaTeX double subscript error for pick indexing
87fc892
Raw History Blame Contribute Delete
418 kB
"use strict";(()=>{var V1=Object.create;var tn=Object.defineProperty;var U1=Object.getOwnPropertyDescriptor;var Y1=Object.getOwnPropertyNames;var X1=Object.getPrototypeOf,W1=Object.prototype.hasOwnProperty;var K1=(t,e,r)=>e in t?tn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var V=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Q1=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Y1(e))!W1.call(t,i)&&i!==r&&tn(t,i,{get:()=>e[i],enumerable:!(n=U1(e,i))||n.enumerable});return t};var Z1=(t,e,r)=>(r=t!=null?V1(X1(t)):{},Q1(e||!t||!t.__esModule?tn(r,"default",{value:t,enumerable:!0}):r,t));var fe=(t,e,r)=>K1(t,typeof e!="symbol"?e+"":e,r);var v0=V((w2,Co)=>{"use strict";var Yc="\0",Bt="\0",To="",ei=class{constructor(e){fe(this,"_isDirected",!0);fe(this,"_isMultigraph",!1);fe(this,"_isCompound",!1);fe(this,"_label");fe(this,"_defaultNodeLabelFn",()=>{});fe(this,"_defaultEdgeLabelFn",()=>{});fe(this,"_nodes",{});fe(this,"_in",{});fe(this,"_preds",{});fe(this,"_out",{});fe(this,"_sucs",{});fe(this,"_edgeObjs",{});fe(this,"_edgeLabels",{});fe(this,"_nodeCount",0);fe(this,"_edgeCount",0);fe(this,"_parent");fe(this,"_children");e&&(this._isDirected=Object.hasOwn(e,"directed")?e.directed:!0,this._isMultigraph=Object.hasOwn(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.hasOwn(e,"compound")?e.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[Bt]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return this._defaultNodeLabelFn=e,typeof e!="function"&&(this._defaultNodeLabelFn=()=>e),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var e=this;return this.nodes().filter(r=>Object.keys(e._in[r]).length===0)}sinks(){var e=this;return this.nodes().filter(r=>Object.keys(e._out[r]).length===0)}setNodes(e,r){var n=arguments,i=this;return e.forEach(function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Object.hasOwn(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=Bt,this._children[e]={},this._children[Bt][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.hasOwn(this._nodes,e)}removeNode(e){var r=this;if(Object.hasOwn(this._nodes,e)){var n=i=>r.removeEdge(r._edgeObjs[i]);delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],this.children(e).forEach(function(i){r.setParent(i)}),delete this._children[e]),Object.keys(this._in[e]).forEach(n),delete this._in[e],delete this._preds[e],Object.keys(this._out[e]).forEach(n),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r===void 0)r=Bt;else{r+="";for(var n=r;n!==void 0;n=this.parent(n))if(n===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==Bt)return r}}children(e=Bt){if(this._isCompound){var r=this._children[e];if(r)return Object.keys(r)}else{if(e===Bt)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return Object.keys(r)}successors(e){var r=this._sucs[e];if(r)return Object.keys(r)}neighbors(e){var r=this.predecessors(e);if(r){let i=new Set(r);for(var n of this.successors(e))i.add(n);return Array.from(i.values())}}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Object.entries(this._nodes).forEach(function([o,s]){e(o)&&r.setNode(o,s)}),Object.values(this._edgeObjs).forEach(function(o){r.hasNode(o.v)&&r.hasNode(o.w)&&r.setEdge(o,n.edge(o))});var i={};function a(o){var s=n.parent(o);return s===void 0||r.hasNode(s)?(i[o]=s,s):s in i?i[s]:a(s)}return this._isCompound&&r.nodes().forEach(o=>r.setParent(o,a(o))),r}setDefaultEdgeLabel(e){return this._defaultEdgeLabelFn=e,typeof e!="function"&&(this._defaultEdgeLabelFn=()=>e),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return e.reduce(function(a,o){return i.length>1?n.setEdge(a,o,r):n.setEdge(a,o),o}),this}setEdge(){var e,r,n,i,a=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(e=o.v,r=o.w,n=o.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=o,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,n!==void 0&&(n=""+n);var s=mr(this._isDirected,e,r,n);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(n!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(e,r,n);var l=Xc(this._isDirected,e,r,n);return e=l.v,r=l.w,Object.freeze(l),this._edgeObjs[s]=l,Ao(this._preds[r],e),Ao(this._sucs[e],r),this._in[r][s]=l,this._out[e][s]=l,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?Jn(this._isDirected,arguments[0]):mr(this._isDirected,e,r,n);return this._edgeLabels[i]}edgeAsObj(){let e=this.edge(...arguments);return typeof e!="object"?{label:e}:e}hasEdge(e,r,n){var i=arguments.length===1?Jn(this._isDirected,arguments[0]):mr(this._isDirected,e,r,n);return Object.hasOwn(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?Jn(this._isDirected,arguments[0]):mr(this._isDirected,e,r,n),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],zo(this._preds[r],e),zo(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var n=this._in[e];if(n){var i=Object.values(n);return r?i.filter(a=>a.v===r):i}}outEdges(e,r){var n=this._out[e];if(n){var i=Object.values(n);return r?i.filter(a=>a.w===r):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}};function Ao(t,e){t[e]?t[e]++:t[e]=1}function zo(t,e){--t[e]||delete t[e]}function mr(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var o=i;i=a,a=o}return i+To+a+To+(n===void 0?Yc:n)}function Xc(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var o=i;i=a,a=o}var s={v:i,w:a};return n&&(s.name=n),s}function Jn(t,e){return mr(t,e.v,e.w,e.name)}Co.exports=ei});var Io=V((S2,No)=>{No.exports="2.2.4"});var Lo=V((E2,_o)=>{_o.exports={Graph:v0(),version:Io()}});var Do=V((M2,qo)=>{var Wc=v0();qo.exports={write:Kc,read:Jc};function Kc(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:Qc(t),edges:Zc(t)};return t.graph()!==void 0&&(e.value=structuredClone(t.graph())),e}function Qc(t){return t.nodes().map(function(e){var r=t.node(e),n=t.parent(e),i={v:e};return r!==void 0&&(i.value=r),n!==void 0&&(i.parent=n),i})}function Zc(t){return t.edges().map(function(e){var r=t.edge(e),n={v:e.v,w:e.w};return e.name!==void 0&&(n.name=e.name),r!==void 0&&(n.value=r),n})}function Jc(t){var e=new Wc(t.options).setGraph(t.value);return t.nodes.forEach(function(r){e.setNode(r.v,r.value),r.parent&&e.setParent(r.v,r.parent)}),t.edges.forEach(function(r){e.setEdge({v:r.v,w:r.w,name:r.name},r.value)}),e}});var Oo=V((T2,Bo)=>{Bo.exports=ed;function ed(t){var e={},r=[],n;function i(a){Object.hasOwn(e,a)||(e[a]=!0,n.push(a),t.successors(a).forEach(i),t.predecessors(a).forEach(i))}return t.nodes().forEach(function(a){n=[],i(a),n.length&&r.push(n)}),r}});var ri=V((A2,Ro)=>{var ti=class{constructor(){fe(this,"_arr",[]);fe(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(e){return e.key})}has(e){return Object.hasOwn(this._keyIndices,e)}priority(e){var r=this._keyIndices[e];if(r!==void 0)return this._arr[r].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(e,r){var n=this._keyIndices;if(e=String(e),!Object.hasOwn(n,e)){var i=this._arr,a=i.length;return n[e]=a,i.push({key:e,priority:r}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key}decrease(e,r){var n=this._keyIndices[e];if(r>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+r);this._arr[n].priority=r,this._decrease(n)}_heapify(e){var r=this._arr,n=2*e,i=n+1,a=e;n<r.length&&(a=r[n].priority<r[a].priority?n:a,i<r.length&&(a=r[i].priority<r[a].priority?i:a),a!==e&&(this._swap(e,a),this._heapify(a)))}_decrease(e){for(var r=this._arr,n=r[e].priority,i;e!==0&&(i=e>>1,!(r[i].priority<n));)this._swap(e,i),e=i}_swap(e,r){var n=this._arr,i=this._keyIndices,a=n[e],o=n[r];n[e]=o,n[r]=a,i[o.key]=e,i[a.key]=r}};Ro.exports=ti});var ni=V((C2,Fo)=>{var td=ri();Fo.exports=nd;var rd=()=>1;function nd(t,e,r,n){return id(t,String(e),r||rd,n||function(i){return t.outEdges(i)})}function id(t,e,r,n){var i={},a=new td,o,s,l=function(h){var d=h.v!==o?h.v:h.w,m=i[d],v=r(h),g=s.distance+v;if(v<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+h+" Weight: "+v);g<m.distance&&(m.distance=g,m.predecessor=o,a.decrease(d,g))};for(t.nodes().forEach(function(h){var d=h===e?0:Number.POSITIVE_INFINITY;i[h]={distance:d},a.add(h,d)});a.size()>0&&(o=a.removeMin(),s=i[o],s.distance!==Number.POSITIVE_INFINITY);)n(o).forEach(l);return i}});var $o=V((N2,Ho)=>{var ad=ni();Ho.exports=od;function od(t,e,r){return t.nodes().reduce(function(n,i){return n[i]=ad(t,i,e,r),n},{})}});var ii=V((I2,Po)=>{Po.exports=sd;function sd(t){var e=0,r=[],n={},i=[];function a(o){var s=n[o]={onStack:!0,lowlink:e,index:e++};if(r.push(o),t.successors(o).forEach(function(d){Object.hasOwn(n,d)?n[d].onStack&&(s.lowlink=Math.min(s.lowlink,n[d].index)):(a(d),s.lowlink=Math.min(s.lowlink,n[d].lowlink))}),s.lowlink===s.index){var l=[],h;do h=r.pop(),n[h].onStack=!1,l.push(h);while(o!==h);i.push(l)}}return t.nodes().forEach(function(o){Object.hasOwn(n,o)||a(o)}),i}});var jo=V((_2,Go)=>{var ld=ii();Go.exports=ud;function ud(t){return ld(t).filter(function(e){return e.length>1||e.length===1&&t.hasEdge(e[0],e[0])})}});var Uo=V((L2,Vo)=>{Vo.exports=cd;var hd=()=>1;function cd(t,e,r){return dd(t,e||hd,r||function(n){return t.outEdges(n)})}function dd(t,e,r){var n={},i=t.nodes();return i.forEach(function(a){n[a]={},n[a][a]={distance:0},i.forEach(function(o){a!==o&&(n[a][o]={distance:Number.POSITIVE_INFINITY})}),r(a).forEach(function(o){var s=o.v===a?o.w:o.v,l=e(o);n[a][s]={distance:l,predecessor:a}})}),i.forEach(function(a){var o=n[a];i.forEach(function(s){var l=n[s];i.forEach(function(h){var d=l[a],m=o[h],v=l[h],g=d.distance+m.distance;g<v.distance&&(v.distance=g,v.predecessor=m.predecessor)})})}),n}});var ai=V((q2,Xo)=>{function Yo(t){var e={},r={},n=[];function i(a){if(Object.hasOwn(r,a))throw new fr;Object.hasOwn(e,a)||(r[a]=!0,e[a]=!0,t.predecessors(a).forEach(i),delete r[a],n.push(a))}if(t.sinks().forEach(i),Object.keys(e).length!==t.nodeCount())throw new fr;return n}var fr=class extends Error{constructor(){super(...arguments)}};Xo.exports=Yo;Yo.CycleException=fr});var Qo=V((D2,Ko)=>{var Wo=ai();Ko.exports=md;function md(t){try{Wo(t)}catch(e){if(e instanceof Wo.CycleException)return!1;throw e}return!0}});var oi=V((B2,Jo)=>{Jo.exports=fd;function fd(t,e,r){Array.isArray(e)||(e=[e]);var n=t.isDirected()?s=>t.successors(s):s=>t.neighbors(s),i=r==="post"?pd:vd,a=[],o={};return e.forEach(s=>{if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,n,o,a)}),a}function pd(t,e,r,n){for(var i=[[t,!1]];i.length>0;){var a=i.pop();a[1]?n.push(a[0]):Object.hasOwn(r,a[0])||(r[a[0]]=!0,i.push([a[0],!0]),Zo(e(a[0]),o=>i.push([o,!1])))}}function vd(t,e,r,n){for(var i=[t];i.length>0;){var a=i.pop();Object.hasOwn(r,a)||(r[a]=!0,n.push(a),Zo(e(a),o=>i.push(o)))}}function Zo(t,e){for(var r=t.length;r--;)e(t[r],r,t);return t}});var ts=V((O2,es)=>{var gd=oi();es.exports=bd;function bd(t,e){return gd(t,e,"post")}});var ns=V((R2,rs)=>{var yd=oi();rs.exports=xd;function xd(t,e){return yd(t,e,"pre")}});var as=V((F2,is)=>{var wd=v0(),kd=ri();is.exports=Sd;function Sd(t,e){var r=new wd,n={},i=new kd,a;function o(l){var h=l.v===a?l.w:l.v,d=i.priority(h);if(d!==void 0){var m=e(l);m<d&&(n[h]=a,i.decrease(h,m))}}if(t.nodeCount()===0)return r;t.nodes().forEach(function(l){i.add(l,Number.POSITIVE_INFINITY),r.setNode(l)}),i.decrease(t.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(n,a))r.setEdge(a,n[a]);else{if(s)throw new Error("Input graph is not connected: "+t);s=!0}t.nodeEdges(a).forEach(o)}return r}});var ss=V((H2,os)=>{os.exports={components:Oo(),dijkstra:ni(),dijkstraAll:$o(),findCycles:jo(),floydWarshall:Uo(),isAcyclic:Qo(),postorder:ts(),preorder:ns(),prim:as(),tarjan:ii(),topsort:ai()}});var Ge=V(($2,us)=>{var ls=Lo();us.exports={Graph:ls.Graph,json:Do(),alg:ss(),version:ls.version}});var ds=V((P2,cs)=>{var si=class{constructor(){let e={};e._next=e._prev=e,this._sentinel=e}dequeue(){let e=this._sentinel,r=e._prev;if(r!==e)return hs(r),r}enqueue(e){let r=this._sentinel;e._prev&&e._next&&hs(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){let e=[],r=this._sentinel,n=r._prev;for(;n!==r;)e.push(JSON.stringify(n,Ed)),n=n._prev;return"["+e.join(", ")+"]"}};function hs(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function Ed(t,e){if(t!=="_next"&&t!=="_prev")return e}cs.exports=si});var fs=V((G2,ms)=>{var Md=Ge().Graph,Td=ds();ms.exports=zd;var Ad=()=>1;function zd(t,e){if(t.nodeCount()<=1)return[];let r=Nd(t,e||Ad);return Cd(r.graph,r.buckets,r.zeroIdx).flatMap(i=>t.outEdges(i.v,i.w))}function Cd(t,e,r){let n=[],i=e[e.length-1],a=e[0],o;for(;t.nodeCount();){for(;o=a.dequeue();)li(t,e,r,o);for(;o=i.dequeue();)li(t,e,r,o);if(t.nodeCount()){for(let s=e.length-2;s>0;--s)if(o=e[s].dequeue(),o){n=n.concat(li(t,e,r,o,!0));break}}}return n}function li(t,e,r,n,i){let a=i?[]:void 0;return t.inEdges(n.v).forEach(o=>{let s=t.edge(o),l=t.node(o.v);i&&a.push({v:o.v,w:o.w}),l.out-=s,ui(e,r,l)}),t.outEdges(n.v).forEach(o=>{let s=t.edge(o),l=o.w,h=t.node(l);h.in-=s,ui(e,r,h)}),t.removeNode(n.v),a}function Nd(t,e){let r=new Md,n=0,i=0;t.nodes().forEach(s=>{r.setNode(s,{v:s,in:0,out:0})}),t.edges().forEach(s=>{let l=r.edge(s.v,s.w)||0,h=e(s),d=l+h;r.setEdge(s.v,s.w,d),i=Math.max(i,r.node(s.v).out+=h),n=Math.max(n,r.node(s.w).in+=h)});let a=Id(i+n+3).map(()=>new Td),o=n+1;return r.nodes().forEach(s=>{ui(a,o,r.node(s))}),{graph:r,buckets:a,zeroIdx:o}}function ui(t,e,r){r.out?r.in?t[r.out-r.in+e].enqueue(r):t[t.length-1].enqueue(r):t[0].enqueue(r)}function Id(t){let e=[];for(let r=0;r<t;r++)e.push(r);return e}});var pe=V((j2,ws)=>{"use strict";var ps=Ge().Graph;ws.exports={addBorderNode:Hd,addDummyNode:vs,applyWithChunking:g0,asNonCompoundGraph:Ld,buildLayerMatrix:Od,intersectRect:Bd,mapValues:Yd,maxRank:bs,normalizeRanks:Rd,notime:jd,partition:Pd,pick:Ud,predecessorWeights:Dd,range:xs,removeEmptyRanks:Fd,simplify:_d,successorWeights:qd,time:Gd,uniqueId:ys,zipObject:hi};function vs(t,e,r,n){for(var i=n;t.hasNode(i);)i=ys(n);return r.dummy=e,t.setNode(i,r),i}function _d(t){let e=new ps().setGraph(t.graph());return t.nodes().forEach(r=>e.setNode(r,t.node(r))),t.edges().forEach(r=>{let n=e.edge(r.v,r.w)||{weight:0,minlen:1},i=t.edge(r);e.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),e}function Ld(t){let e=new ps({multigraph:t.isMultigraph()}).setGraph(t.graph());return t.nodes().forEach(r=>{t.children(r).length||e.setNode(r,t.node(r))}),t.edges().forEach(r=>{e.setEdge(r,t.edge(r))}),e}function qd(t){let e=t.nodes().map(r=>{let n={};return t.outEdges(r).forEach(i=>{n[i.w]=(n[i.w]||0)+t.edge(i).weight}),n});return hi(t.nodes(),e)}function Dd(t){let e=t.nodes().map(r=>{let n={};return t.inEdges(r).forEach(i=>{n[i.v]=(n[i.v]||0)+t.edge(i).weight}),n});return hi(t.nodes(),e)}function Bd(t,e){let r=t.x,n=t.y,i=e.x-r,a=e.y-n,o=t.width/2,s=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let l,h;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),l=s*i/a,h=s):(i<0&&(o=-o),l=o,h=o*a/i),{x:r+l,y:n+h}}function Od(t){let e=xs(bs(t)+1).map(()=>[]);return t.nodes().forEach(r=>{let n=t.node(r),i=n.rank;i!==void 0&&(e[i][n.order]=r)}),e}function Rd(t){let e=t.nodes().map(n=>{let i=t.node(n).rank;return i===void 0?Number.MAX_VALUE:i}),r=g0(Math.min,e);t.nodes().forEach(n=>{let i=t.node(n);Object.hasOwn(i,"rank")&&(i.rank-=r)})}function Fd(t){let e=t.nodes().map(o=>t.node(o).rank),r=g0(Math.min,e),n=[];t.nodes().forEach(o=>{let s=t.node(o).rank-r;n[s]||(n[s]=[]),n[s].push(o)});let i=0,a=t.graph().nodeRankFactor;Array.from(n).forEach((o,s)=>{o===void 0&&s%a!==0?--i:o!==void 0&&i&&o.forEach(l=>t.node(l).rank+=i)})}function Hd(t,e,r,n){let i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),vs(t,"border",i,e)}function $d(t,e=gs){let r=[];for(let n=0;n<t.length;n+=e){let i=t.slice(n,n+e);r.push(i)}return r}var gs=65535;function g0(t,e){if(e.length>gs){let r=$d(e);return t.apply(null,r.map(n=>t.apply(null,n)))}else return t.apply(null,e)}function bs(t){let r=t.nodes().map(n=>{let i=t.node(n).rank;return i===void 0?Number.MIN_VALUE:i});return g0(Math.max,r)}function Pd(t,e){let r={lhs:[],rhs:[]};return t.forEach(n=>{e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function Gd(t,e){let r=Date.now();try{return e()}finally{console.log(t+" time: "+(Date.now()-r)+"ms")}}function jd(t,e){return e()}var Vd=0;function ys(t){var e=++Vd;return t+(""+e)}function xs(t,e,r=1){e==null&&(e=t,t=0);let n=a=>a<e;r<0&&(n=a=>e<a);let i=[];for(let a=t;n(a);a+=r)i.push(a);return i}function Ud(t,e){let r={};for(let n of e)t[n]!==void 0&&(r[n]=t[n]);return r}function Yd(t,e){let r=e;return typeof e=="string"&&(r=n=>n[e]),Object.entries(t).reduce((n,[i,a])=>(n[i]=r(a,i),n),{})}function hi(t,e){return t.reduce((r,n,i)=>(r[n]=e[i],r),{})}});var Ss=V((V2,ks)=>{"use strict";var Xd=fs(),Wd=pe().uniqueId;ks.exports={run:Kd,undo:Zd};function Kd(t){(t.graph().acyclicer==="greedy"?Xd(t,r(t)):Qd(t)).forEach(n=>{let i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,Wd("rev"))});function r(n){return i=>n.edge(i).weight}}function Qd(t){let e=[],r={},n={};function i(a){Object.hasOwn(n,a)||(n[a]=!0,r[a]=!0,t.outEdges(a).forEach(o=>{Object.hasOwn(r,o.w)?e.push(o):i(o.w)}),delete r[a])}return t.nodes().forEach(i),e}function Zd(t){t.edges().forEach(e=>{let r=t.edge(e);if(r.reversed){t.removeEdge(e);let n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}});var Ms=V((U2,Es)=>{"use strict";var Jd=pe();Es.exports={run:e4,undo:r4};function e4(t){t.graph().dummyChains=[],t.edges().forEach(e=>t4(t,e))}function t4(t,e){let r=e.v,n=t.node(r).rank,i=e.w,a=t.node(i).rank,o=e.name,s=t.edge(e),l=s.labelRank;if(a===n+1)return;t.removeEdge(e);let h,d,m;for(m=0,++n;n<a;++m,++n)s.points=[],d={width:0,height:0,edgeLabel:s,edgeObj:e,rank:n},h=Jd.addDummyNode(t,"edge",d,"_d"),n===l&&(d.width=s.width,d.height=s.height,d.dummy="edge-label",d.labelpos=s.labelpos),t.setEdge(r,h,{weight:s.weight},o),m===0&&t.graph().dummyChains.push(h),r=h;t.setEdge(r,i,{weight:s.weight},o)}function r4(t){t.graph().dummyChains.forEach(e=>{let r=t.node(e),n=r.edgeLabel,i;for(t.setEdge(r.edgeObj,n);r.dummy;)i=t.successors(e)[0],t.removeNode(e),n.points.push({x:r.x,y:r.y}),r.dummy==="edge-label"&&(n.x=r.x,n.y=r.y,n.width=r.width,n.height=r.height),e=i,r=t.node(e)})}});var pr=V((Y2,Ts)=>{"use strict";var{applyWithChunking:n4}=pe();Ts.exports={longestPath:i4,slack:a4};function i4(t){var e={};function r(n){var i=t.node(n);if(Object.hasOwn(e,n))return i.rank;e[n]=!0;let a=t.outEdges(n).map(s=>s==null?Number.POSITIVE_INFINITY:r(s.w)-t.edge(s).minlen);var o=n4(Math.min,a);return o===Number.POSITIVE_INFINITY&&(o=0),i.rank=o}t.sources().forEach(r)}function a4(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}});var ci=V((X2,As)=>{"use strict";var o4=Ge().Graph,b0=pr().slack;As.exports=s4;function s4(t){var e=new o4({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;l4(e,t)<n;)i=u4(e,t),a=e.hasNode(i.v)?b0(t,i):-b0(t,i),h4(e,t,a);return e}function l4(t,e){function r(n){e.nodeEdges(n).forEach(i=>{var a=i.v,o=n===a?i.w:a;!t.hasNode(o)&&!b0(e,i)&&(t.setNode(o,{}),t.setEdge(n,o,{}),r(o))})}return t.nodes().forEach(r),t.nodeCount()}function u4(t,e){return e.edges().reduce((n,i)=>{let a=Number.POSITIVE_INFINITY;return t.hasNode(i.v)!==t.hasNode(i.w)&&(a=b0(e,i)),a<n[0]?[a,i]:n},[Number.POSITIVE_INFINITY,null])[1]}function h4(t,e,r){t.nodes().forEach(n=>e.node(n).rank+=r)}});var Bs=V((W2,Ds)=>{"use strict";var c4=ci(),zs=pr().slack,d4=pr().longestPath,m4=Ge().alg.preorder,f4=Ge().alg.postorder,p4=pe().simplify;Ds.exports=Ot;Ot.initLowLimValues=mi;Ot.initCutValues=di;Ot.calcCutValue=Ns;Ot.leaveEdge=_s;Ot.enterEdge=Ls;Ot.exchangeEdges=qs;function Ot(t){t=p4(t),d4(t);var e=c4(t);mi(e),di(e,t);for(var r,n;r=_s(e);)n=Ls(e,t,r),qs(e,t,r,n)}function di(t,e){var r=f4(t,t.nodes());r=r.slice(0,r.length-1),r.forEach(n=>v4(t,e,n))}function v4(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=Ns(t,e,r)}function Ns(t,e,r){var n=t.node(r),i=n.parent,a=!0,o=e.edge(r,i),s=0;return o||(a=!1,o=e.edge(i,r)),s=o.weight,e.nodeEdges(r).forEach(l=>{var h=l.v===r,d=h?l.w:l.v;if(d!==i){var m=h===a,v=e.edge(l).weight;if(s+=m?v:-v,b4(t,r,d)){var g=t.edge(r,d).cutvalue;s+=m?-g:g}}}),s}function mi(t,e){arguments.length<2&&(e=t.nodes()[0]),Is(t,{},1,e)}function Is(t,e,r,n,i){var a=r,o=t.node(n);return e[n]=!0,t.neighbors(n).forEach(s=>{Object.hasOwn(e,s)||(r=Is(t,e,r,s,n))}),o.low=a,o.lim=r++,i?o.parent=i:delete o.parent,r}function _s(t){return t.edges().find(e=>t.edge(e).cutvalue<0)}function Ls(t,e,r){var n=r.v,i=r.w;e.hasEdge(n,i)||(n=r.w,i=r.v);var a=t.node(n),o=t.node(i),s=a,l=!1;a.lim>o.lim&&(s=o,l=!0);var h=e.edges().filter(d=>l===Cs(t,t.node(d.v),s)&&l!==Cs(t,t.node(d.w),s));return h.reduce((d,m)=>zs(e,m)<zs(e,d)?m:d)}function qs(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),mi(t),di(t,e),g4(t,e)}function g4(t,e){var r=t.nodes().find(i=>!e.node(i).parent),n=m4(t,r);n=n.slice(1),n.forEach(i=>{var a=t.node(i).parent,o=e.edge(i,a),s=!1;o||(o=e.edge(a,i),s=!0),e.node(i).rank=e.node(a).rank+(s?o.minlen:-o.minlen)})}function b4(t,e,r){return t.hasEdge(e,r)}function Cs(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}});var Hs=V((K2,Fs)=>{"use strict";var y4=pr(),Rs=y4.longestPath,x4=ci(),w4=Bs();Fs.exports=k4;function k4(t){var e=t.graph().ranker;if(e instanceof Function)return e(t);switch(t.graph().ranker){case"network-simplex":Os(t);break;case"tight-tree":E4(t);break;case"longest-path":S4(t);break;case"none":break;default:Os(t)}}var S4=Rs;function E4(t){Rs(t),x4(t)}function Os(t){w4(t)}});var Ps=V((Q2,$s)=>{$s.exports=M4;function M4(t){let e=A4(t);t.graph().dummyChains.forEach(r=>{let n=t.node(r),i=n.edgeObj,a=T4(t,e,i.v,i.w),o=a.path,s=a.lca,l=0,h=o[l],d=!0;for(;r!==i.w;){if(n=t.node(r),d){for(;(h=o[l])!==s&&t.node(h).maxRank<n.rank;)l++;h===s&&(d=!1)}if(!d){for(;l<o.length-1&&t.node(h=o[l+1]).minRank<=n.rank;)l++;h=o[l]}t.setParent(r,h),r=t.successors(r)[0]}})}function T4(t,e,r,n){let i=[],a=[],o=Math.min(e[r].low,e[n].low),s=Math.max(e[r].lim,e[n].lim),l,h;l=r;do l=t.parent(l),i.push(l);while(l&&(e[l].low>o||s>e[l].lim));for(h=l,l=n;(l=t.parent(l))!==h;)a.push(l);return{path:i.concat(a.reverse()),lca:h}}function A4(t){let e={},r=0;function n(i){let a=r;t.children(i).forEach(n),e[i]={low:a,lim:r++}}return t.children().forEach(n),e}});var Vs=V((Z2,js)=>{var y0=pe();js.exports={run:z4,cleanup:I4};function z4(t){let e=y0.addDummyNode(t,"root",{},"_root"),r=C4(t),n=Object.values(r),i=y0.applyWithChunking(Math.max,n)-1,a=2*i+1;t.graph().nestingRoot=e,t.edges().forEach(s=>t.edge(s).minlen*=a);let o=N4(t)+1;t.children().forEach(s=>Gs(t,e,a,o,i,r,s)),t.graph().nodeRankFactor=a}function Gs(t,e,r,n,i,a,o){let s=t.children(o);if(!s.length){o!==e&&t.setEdge(e,o,{weight:0,minlen:r});return}let l=y0.addBorderNode(t,"_bt"),h=y0.addBorderNode(t,"_bb"),d=t.node(o);t.setParent(l,o),d.borderTop=l,t.setParent(h,o),d.borderBottom=h,s.forEach(m=>{Gs(t,e,r,n,i,a,m);let v=t.node(m),g=v.borderTop?v.borderTop:m,k=v.borderBottom?v.borderBottom:m,w=v.borderTop?n:2*n,M=g!==k?1:i-a[o]+1;t.setEdge(l,g,{weight:w,minlen:M,nestingEdge:!0}),t.setEdge(k,h,{weight:w,minlen:M,nestingEdge:!0})}),t.parent(o)||t.setEdge(e,l,{weight:0,minlen:i+a[o]})}function C4(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&a.forEach(o=>r(o,i+1)),e[n]=i}return t.children().forEach(n=>r(n,1)),e}function N4(t){return t.edges().reduce((e,r)=>e+t.edge(r).weight,0)}function I4(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,t.edges().forEach(r=>{var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}});var Xs=V((J2,Ys)=>{var _4=pe();Ys.exports=L4;function L4(t){function e(r){let n=t.children(r),i=t.node(r);if(n.length&&n.forEach(e),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,o=i.maxRank+1;a<o;++a)Us(t,"borderLeft","_bl",r,i,a),Us(t,"borderRight","_br",r,i,a)}}t.children().forEach(e)}function Us(t,e,r,n,i,a){let o={width:0,height:0,rank:a,borderType:e},s=i[e][a-1],l=_4.addDummyNode(t,"border",o,r);i[e][a]=l,t.setParent(l,n),s&&t.setEdge(s,l,{weight:1})}});var Zs=V((e5,Qs)=>{"use strict";Qs.exports={adjust:q4,undo:D4};function q4(t){let e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&Ks(t)}function D4(t){let e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&B4(t),(e==="lr"||e==="rl")&&(O4(t),Ks(t))}function Ks(t){t.nodes().forEach(e=>Ws(t.node(e))),t.edges().forEach(e=>Ws(t.edge(e)))}function Ws(t){let e=t.width;t.width=t.height,t.height=e}function B4(t){t.nodes().forEach(e=>fi(t.node(e))),t.edges().forEach(e=>{let r=t.edge(e);r.points.forEach(fi),Object.hasOwn(r,"y")&&fi(r)})}function fi(t){t.y=-t.y}function O4(t){t.nodes().forEach(e=>pi(t.node(e))),t.edges().forEach(e=>{let r=t.edge(e);r.points.forEach(pi),Object.hasOwn(r,"x")&&pi(r)})}function pi(t){let e=t.x;t.x=t.y,t.y=e}});var tl=V((t5,el)=>{"use strict";var Js=pe();el.exports=R4;function R4(t){let e={},r=t.nodes().filter(l=>!t.children(l).length),n=r.map(l=>t.node(l).rank),i=Js.applyWithChunking(Math.max,n),a=Js.range(i+1).map(()=>[]);function o(l){if(e[l])return;e[l]=!0;let h=t.node(l);a[h.rank].push(l),t.successors(l).forEach(o)}return r.sort((l,h)=>t.node(l).rank-t.node(h).rank).forEach(o),a}});var nl=V((r5,rl)=>{"use strict";var F4=pe().zipObject;rl.exports=H4;function H4(t,e){let r=0;for(let n=1;n<e.length;++n)r+=$4(t,e[n-1],e[n]);return r}function $4(t,e,r){let n=F4(r,r.map((h,d)=>d)),i=e.flatMap(h=>t.outEdges(h).map(d=>({pos:n[d.w],weight:t.edge(d).weight})).sort((d,m)=>d.pos-m.pos)),a=1;for(;a<r.length;)a<<=1;let o=2*a-1;a-=1;let s=new Array(o).fill(0),l=0;return i.forEach(h=>{let d=h.pos+a;s[d]+=h.weight;let m=0;for(;d>0;)d%2&&(m+=s[d+1]),d=d-1>>1,s[d]+=h.weight;l+=h.weight*m}),l}});var al=V((n5,il)=>{il.exports=P4;function P4(t,e=[]){return e.map(r=>{let n=t.inEdges(r);if(n.length){let i=n.reduce((a,o)=>{let s=t.edge(o),l=t.node(o.v);return{sum:a.sum+s.weight*l.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}});var sl=V((i5,ol)=>{"use strict";var G4=pe();ol.exports=j4;function j4(t,e){let r={};t.forEach((i,a)=>{let o=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(o.barycenter=i.barycenter,o.weight=i.weight)}),e.edges().forEach(i=>{let a=r[i.v],o=r[i.w];a!==void 0&&o!==void 0&&(o.indegree++,a.out.push(r[i.w]))});let n=Object.values(r).filter(i=>!i.indegree);return V4(n)}function V4(t){let e=[];function r(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&U4(i,a)}}function n(i){return a=>{a.in.push(i),--a.indegree===0&&t.push(a)}}for(;t.length;){let i=t.pop();e.push(i),i.in.reverse().forEach(r(i)),i.out.forEach(n(i))}return e.filter(i=>!i.merged).map(i=>G4.pick(i,["vs","i","barycenter","weight"]))}function U4(t,e){let r=0,n=0;t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=r/n,t.weight=n,t.i=Math.min(e.i,t.i),e.merged=!0}});var hl=V((a5,ul)=>{var Y4=pe();ul.exports=X4;function X4(t,e){let r=Y4.partition(t,d=>Object.hasOwn(d,"barycenter")),n=r.lhs,i=r.rhs.sort((d,m)=>m.i-d.i),a=[],o=0,s=0,l=0;n.sort(W4(!!e)),l=ll(a,i,l),n.forEach(d=>{l+=d.vs.length,a.push(d.vs),o+=d.barycenter*d.weight,s+=d.weight,l=ll(a,i,l)});let h={vs:a.flat(!0)};return s&&(h.barycenter=o/s,h.weight=s),h}function ll(t,e,r){let n;for(;e.length&&(n=e[e.length-1]).i<=r;)e.pop(),t.push(n.vs),r++;return r}function W4(t){return(e,r)=>e.barycenter<r.barycenter?-1:e.barycenter>r.barycenter?1:t?r.i-e.i:e.i-r.i}});var ml=V((o5,dl)=>{var K4=al(),Q4=sl(),Z4=hl();dl.exports=cl;function cl(t,e,r,n){let i=t.children(e),a=t.node(e),o=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,l={};o&&(i=i.filter(v=>v!==o&&v!==s));let h=K4(t,i);h.forEach(v=>{if(t.children(v.v).length){let g=cl(t,v.v,r,n);l[v.v]=g,Object.hasOwn(g,"barycenter")&&em(v,g)}});let d=Q4(h,r);J4(d,l);let m=Z4(d,n);if(o&&(m.vs=[o,m.vs,s].flat(!0),t.predecessors(o).length)){let v=t.node(t.predecessors(o)[0]),g=t.node(t.predecessors(s)[0]);Object.hasOwn(m,"barycenter")||(m.barycenter=0,m.weight=0),m.barycenter=(m.barycenter*m.weight+v.order+g.order)/(m.weight+2),m.weight+=2}return m}function J4(t,e){t.forEach(r=>{r.vs=r.vs.flatMap(n=>e[n]?e[n].vs:n)})}function em(t,e){t.barycenter!==void 0?(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight):(t.barycenter=e.barycenter,t.weight=e.weight)}});var pl=V((s5,fl)=>{var tm=Ge().Graph,rm=pe();fl.exports=nm;function nm(t,e,r,n){n||(n=t.nodes());let i=im(t),a=new tm({compound:!0}).setGraph({root:i}).setDefaultNodeLabel(o=>t.node(o));return n.forEach(o=>{let s=t.node(o),l=t.parent(o);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(a.setNode(o),a.setParent(o,l||i),t[r](o).forEach(h=>{let d=h.v===o?h.w:h.v,m=a.edge(d,o),v=m!==void 0?m.weight:0;a.setEdge(d,o,{weight:t.edge(h).weight+v})}),Object.hasOwn(s,"minRank")&&a.setNode(o,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),a}function im(t){for(var e;t.hasNode(e=rm.uniqueId("_root")););return e}});var gl=V((l5,vl)=>{vl.exports=am;function am(t,e,r){let n={},i;r.forEach(a=>{let o=t.parent(a),s,l;for(;o;){if(s=t.parent(o),s?(l=n[s],n[s]=o):(l=i,i=o),l&&l!==o){e.setEdge(l,o);return}o=s}})}});var kl=V((u5,wl)=>{"use strict";var om=tl(),sm=nl(),lm=ml(),um=pl(),hm=gl(),cm=Ge().Graph,x0=pe();wl.exports=xl;function xl(t,e){if(e&&typeof e.customOrder=="function"){e.customOrder(t,xl);return}let r=x0.maxRank(t),n=bl(t,x0.range(1,r+1),"inEdges"),i=bl(t,x0.range(r-1,-1,-1),"outEdges"),a=om(t);if(yl(t,a),e&&e.disableOptimalOrderHeuristic)return;let o=Number.POSITIVE_INFINITY,s;for(let l=0,h=0;h<4;++l,++h){dm(l%2?n:i,l%4>=2),a=x0.buildLayerMatrix(t);let d=sm(t,a);d<o&&(h=0,s=Object.assign({},a),o=d)}yl(t,s)}function bl(t,e,r){let n=new Map,i=(a,o)=>{n.has(a)||n.set(a,[]),n.get(a).push(o)};for(let a of t.nodes()){let o=t.node(a);if(typeof o.rank=="number"&&i(o.rank,a),typeof o.minRank=="number"&&typeof o.maxRank=="number")for(let s=o.minRank;s<=o.maxRank;s++)s!==o.rank&&i(s,a)}return e.map(function(a){return um(t,a,r,n.get(a)||[])})}function dm(t,e){let r=new cm;t.forEach(function(n){let i=n.graph().root,a=lm(n,i,r,e);a.vs.forEach((o,s)=>n.node(o).order=s),hm(n,r,a.vs)})}function yl(t,e){Object.values(e).forEach(r=>r.forEach((n,i)=>t.node(n).order=i))}});var _l=V((h5,Il)=>{"use strict";var mm=Ge().Graph,ft=pe();Il.exports={positionX:vm,findType1Conflicts:Sl,findType2Conflicts:El,addConflict:vi,hasConflict:Ml,verticalAlignment:Tl,horizontalCompaction:Al,alignCoordinates:Cl,findSmallestWidthAlignment:zl,balance:Nl};function Sl(t,e){let r={};function n(i,a){let o=0,s=0,l=i.length,h=a[a.length-1];return a.forEach((d,m)=>{let v=fm(t,d),g=v?t.node(v).order:l;(v||d===h)&&(a.slice(s,m+1).forEach(k=>{t.predecessors(k).forEach(w=>{let M=t.node(w),E=M.order;(E<o||g<E)&&!(M.dummy&&t.node(k).dummy)&&vi(r,w,k)})}),s=m+1,o=g)}),a}return e.length&&e.reduce(n),r}function El(t,e){let r={};function n(a,o,s,l,h){let d;ft.range(o,s).forEach(m=>{d=a[m],t.node(d).dummy&&t.predecessors(d).forEach(v=>{let g=t.node(v);g.dummy&&(g.order<l||g.order>h)&&vi(r,v,d)})})}function i(a,o){let s=-1,l,h=0;return o.forEach((d,m)=>{if(t.node(d).dummy==="border"){let v=t.predecessors(d);v.length&&(l=t.node(v[0]).order,n(o,h,m,s,l),h=m,s=l)}n(o,h,o.length,l,a.length)}),o}return e.length&&e.reduce(i),r}function fm(t,e){if(t.node(e).dummy)return t.predecessors(e).find(r=>t.node(r).dummy)}function vi(t,e,r){if(e>r){let i=e;e=r,r=i}let n=t[e];n||(t[e]=n={}),n[r]=!0}function Ml(t,e,r){if(e>r){let n=e;e=r,r=n}return!!t[e]&&Object.hasOwn(t[e],r)}function Tl(t,e,r,n){let i={},a={},o={};return e.forEach(s=>{s.forEach((l,h)=>{i[l]=l,a[l]=l,o[l]=h})}),e.forEach(s=>{let l=-1;s.forEach(h=>{let d=n(h);if(d.length){d=d.sort((v,g)=>o[v]-o[g]);let m=(d.length-1)/2;for(let v=Math.floor(m),g=Math.ceil(m);v<=g;++v){let k=d[v];a[h]===h&&l<o[k]&&!Ml(r,h,k)&&(a[k]=h,a[h]=i[h]=i[k],l=o[k])}}})}),{root:i,align:a}}function Al(t,e,r,n,i){let a={},o=pm(t,e,r,i),s=i?"borderLeft":"borderRight";function l(m,v){let g=o.nodes(),k=g.pop(),w={};for(;k;)w[k]?m(k):(w[k]=!0,g.push(k),g=g.concat(v(k))),k=g.pop()}function h(m){a[m]=o.inEdges(m).reduce((v,g)=>Math.max(v,a[g.v]+o.edge(g)),0)}function d(m){let v=o.outEdges(m).reduce((k,w)=>Math.min(k,a[w.w]-o.edge(w)),Number.POSITIVE_INFINITY),g=t.node(m);v!==Number.POSITIVE_INFINITY&&g.borderType!==s&&(a[m]=Math.max(a[m],v))}return l(h,o.predecessors.bind(o)),l(d,o.successors.bind(o)),Object.keys(n).forEach(m=>a[m]=a[r[m]]),a}function pm(t,e,r,n){let i=new mm,a=t.graph(),o=gm(a.nodesep,a.edgesep,n);return e.forEach(s=>{let l;s.forEach(h=>{let d=r[h];if(i.setNode(d),l){var m=r[l],v=i.edge(m,d);i.setEdge(m,d,Math.max(o(t,h,l),v||0))}l=h})}),i}function zl(t,e){return Object.values(e).reduce((r,n)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(n).forEach(([s,l])=>{let h=bm(t,s)/2;i=Math.max(l+h,i),a=Math.min(l-h,a)});let o=i-a;return o<r[0]&&(r=[o,n]),r},[Number.POSITIVE_INFINITY,null])[1]}function Cl(t,e){let r=Object.values(e),n=ft.applyWithChunking(Math.min,r),i=ft.applyWithChunking(Math.max,r);["u","d"].forEach(a=>{["l","r"].forEach(o=>{let s=a+o,l=t[s];if(l===e)return;let h=Object.values(l),d=n-ft.applyWithChunking(Math.min,h);o!=="l"&&(d=i-ft.applyWithChunking(Math.max,h)),d&&(t[s]=ft.mapValues(l,m=>m+d))})})}function Nl(t,e){return ft.mapValues(t.ul,(r,n)=>{if(e)return t[e.toLowerCase()][n];{let i=Object.values(t).map(a=>a[n]).sort((a,o)=>a-o);return(i[1]+i[2])/2}})}function vm(t){let e=ft.buildLayerMatrix(t),r=Object.assign(Sl(t,e),El(t,e)),n={},i;["u","d"].forEach(o=>{i=o==="u"?e:Object.values(e).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(m=>Object.values(m).reverse()));let l=(o==="u"?t.predecessors:t.successors).bind(t),h=Tl(t,i,r,l),d=Al(t,i,h.root,h.align,s==="r");s==="r"&&(d=ft.mapValues(d,m=>-m)),n[o+s]=d})});let a=zl(t,n);return Cl(n,a),Nl(n,t.graph().align)}function gm(t,e,r){return(n,i,a)=>{let o=n.node(i),s=n.node(a),l=0,h;if(l+=o.width/2,Object.hasOwn(o,"labelpos"))switch(o.labelpos.toLowerCase()){case"l":h=-o.width/2;break;case"r":h=o.width/2;break}if(h&&(l+=r?h:-h),h=0,l+=(o.dummy?e:t)/2,l+=(s.dummy?e:t)/2,l+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":h=s.width/2;break;case"r":h=-s.width/2;break}return h&&(l+=r?h:-h),h=0,l}}function bm(t,e){return t.node(e).width}});var Dl=V((c5,ql)=>{"use strict";var Ll=pe(),ym=_l().positionX;ql.exports=xm;function xm(t){t=Ll.asNonCompoundGraph(t),wm(t),Object.entries(ym(t)).forEach(([e,r])=>t.node(e).x=r)}function wm(t){let e=Ll.buildLayerMatrix(t),r=t.graph().ranksep,n=0;e.forEach(i=>{let a=i.reduce((o,s)=>{let l=t.node(s).height;return o>l?o:l},0);i.forEach(o=>t.node(o).y=n+a/2),n+=a+r})}});var Pl=V((d5,$l)=>{"use strict";var Bl=Ss(),Ol=Ms(),km=Hs(),Sm=pe().normalizeRanks,Em=Ps(),Mm=pe().removeEmptyRanks,Rl=Vs(),Tm=Xs(),Fl=Zs(),Am=kl(),zm=Dl(),je=pe(),Cm=Ge().Graph;$l.exports=Nm;function Nm(t,e){let r=e&&e.debugTiming?je.time:je.notime;r("layout",()=>{let n=r(" buildLayoutGraph",()=>Hm(t));r(" runLayout",()=>Im(n,r,e)),r(" updateInputGraph",()=>_m(t,n))})}function Im(t,e,r){e(" makeSpaceForEdgeLabels",()=>$m(t)),e(" removeSelfEdges",()=>Km(t)),e(" acyclic",()=>Bl.run(t)),e(" nestingGraph.run",()=>Rl.run(t)),e(" rank",()=>km(je.asNonCompoundGraph(t))),e(" injectEdgeLabelProxies",()=>Pm(t)),e(" removeEmptyRanks",()=>Mm(t)),e(" nestingGraph.cleanup",()=>Rl.cleanup(t)),e(" normalizeRanks",()=>Sm(t)),e(" assignRankMinMax",()=>Gm(t)),e(" removeEdgeLabelProxies",()=>jm(t)),e(" normalize.run",()=>Ol.run(t)),e(" parentDummyChains",()=>Em(t)),e(" addBorderSegments",()=>Tm(t)),e(" order",()=>Am(t,r)),e(" insertSelfEdges",()=>Qm(t)),e(" adjustCoordinateSystem",()=>Fl.adjust(t)),e(" position",()=>zm(t)),e(" positionSelfEdges",()=>Zm(t)),e(" removeBorderNodes",()=>Wm(t)),e(" normalize.undo",()=>Ol.undo(t)),e(" fixupEdgeLabelCoords",()=>Ym(t)),e(" undoCoordinateSystem",()=>Fl.undo(t)),e(" translateGraph",()=>Vm(t)),e(" assignNodeIntersects",()=>Um(t)),e(" reversePoints",()=>Xm(t)),e(" acyclic.undo",()=>Bl.undo(t))}function _m(t,e){t.nodes().forEach(r=>{let n=t.node(r),i=e.node(r);n&&(n.x=i.x,n.y=i.y,n.rank=i.rank,e.children(r).length&&(n.width=i.width,n.height=i.height))}),t.edges().forEach(r=>{let n=t.edge(r),i=e.edge(r);n.points=i.points,Object.hasOwn(i,"x")&&(n.x=i.x,n.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}var Lm=["nodesep","edgesep","ranksep","marginx","marginy"],qm={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},Dm=["acyclicer","ranker","rankdir","align"],Bm=["width","height","rank"],Hl={width:0,height:0},Om=["minlen","weight","width","height","labeloffset"],Rm={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},Fm=["labelpos"];function Hm(t){let e=new Cm({multigraph:!0,compound:!0}),r=bi(t.graph());return e.setGraph(Object.assign({},qm,gi(r,Lm),je.pick(r,Dm))),t.nodes().forEach(n=>{let i=bi(t.node(n)),a=gi(i,Bm);Object.keys(Hl).forEach(o=>{a[o]===void 0&&(a[o]=Hl[o])}),e.setNode(n,a),e.setParent(n,t.parent(n))}),t.edges().forEach(n=>{let i=bi(t.edge(n));e.setEdge(n,Object.assign({},Rm,gi(i,Om),je.pick(i,Fm)))}),e}function $m(t){let e=t.graph();e.ranksep/=2,t.edges().forEach(r=>{let n=t.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function Pm(t){t.edges().forEach(e=>{let r=t.edge(e);if(r.width&&r.height){let n=t.node(e.v),a={rank:(t.node(e.w).rank-n.rank)/2+n.rank,e};je.addDummyNode(t,"edge-proxy",a,"_ep")}})}function Gm(t){let e=0;t.nodes().forEach(r=>{let n=t.node(r);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,e=Math.max(e,n.maxRank))}),t.graph().maxRank=e}function jm(t){t.nodes().forEach(e=>{let r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function Vm(t){let e=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=t.graph(),o=a.marginx||0,s=a.marginy||0;function l(h){let d=h.x,m=h.y,v=h.width,g=h.height;e=Math.min(e,d-v/2),r=Math.max(r,d+v/2),n=Math.min(n,m-g/2),i=Math.max(i,m+g/2)}t.nodes().forEach(h=>l(t.node(h))),t.edges().forEach(h=>{let d=t.edge(h);Object.hasOwn(d,"x")&&l(d)}),e-=o,n-=s,t.nodes().forEach(h=>{let d=t.node(h);d.x-=e,d.y-=n}),t.edges().forEach(h=>{let d=t.edge(h);d.points.forEach(m=>{m.x-=e,m.y-=n}),Object.hasOwn(d,"x")&&(d.x-=e),Object.hasOwn(d,"y")&&(d.y-=n)}),a.width=r-e+o,a.height=i-n+s}function Um(t){t.edges().forEach(e=>{let r=t.edge(e),n=t.node(e.v),i=t.node(e.w),a,o;r.points?(a=r.points[0],o=r.points[r.points.length-1]):(r.points=[],a=i,o=n),r.points.unshift(je.intersectRect(n,a)),r.points.push(je.intersectRect(i,o))})}function Ym(t){t.edges().forEach(e=>{let r=t.edge(e);if(Object.hasOwn(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function Xm(t){t.edges().forEach(e=>{let r=t.edge(e);r.reversed&&r.points.reverse()})}function Wm(t){t.nodes().forEach(e=>{if(t.children(e).length){let r=t.node(e),n=t.node(r.borderTop),i=t.node(r.borderBottom),a=t.node(r.borderLeft[r.borderLeft.length-1]),o=t.node(r.borderRight[r.borderRight.length-1]);r.width=Math.abs(o.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),t.nodes().forEach(e=>{t.node(e).dummy==="border"&&t.removeNode(e)})}function Km(t){t.edges().forEach(e=>{if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function Qm(t){var e=je.buildLayerMatrix(t);e.forEach(r=>{var n=0;r.forEach((i,a)=>{var o=t.node(i);o.order=a+n,(o.selfEdges||[]).forEach(s=>{je.addDummyNode(t,"selfedge",{width:s.label.width,height:s.label.height,rank:o.rank,order:a+ ++n,e:s.e,label:s.label},"_se")}),delete o.selfEdges})})}function Zm(t){t.nodes().forEach(e=>{var r=t.node(e);if(r.dummy==="selfedge"){var n=t.node(r.e.v),i=n.x+n.width/2,a=n.y,o=r.x-i,s=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{x:i+o,y:a},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],r.label.x=r.x,r.label.y=r.y}})}function gi(t,e){return je.mapValues(je.pick(t,e),Number)}function bi(t){var e={};return t&&Object.entries(t).forEach(([r,n])=>{typeof r=="string"&&(r=r.toLowerCase()),e[r]=n}),e}});var jl=V((m5,Gl)=>{var Jm=pe(),ef=Ge().Graph;Gl.exports={debugOrdering:tf};function tf(t){let e=Jm.buildLayerMatrix(t),r=new ef({compound:!0,multigraph:!0}).setGraph({});return t.nodes().forEach(n=>{r.setNode(n,{label:n}),r.setParent(n,"layer"+t.node(n).rank)}),t.edges().forEach(n=>r.setEdge(n.v,n.w,{},n.name)),e.forEach((n,i)=>{let a="layer"+i;r.setNode(a,{rank:"same"}),n.reduce((o,s)=>(r.setEdge(o,s,{style:"invis"}),s))}),r}});var Ul=V((f5,Vl)=>{Vl.exports="1.1.8"});var Xl=V((p5,Yl)=>{Yl.exports={graphlib:Ge(),layout:Pl(),debug:jl(),util:{time:pe().time,notime:pe().notime},version:Ul()}});var N=class t extends Error{constructor(e,r){var n="KaTeX parse error: "+e,i,a,o=r&&r.loc;if(o&&o.start<=o.end){var s=o.lexer.input;i=o.start,a=o.end,i===s.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var l=s.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+s.slice(i-15,i):h=s.slice(0,i);var d;a+15<s.length?d=s.slice(a,a+15)+"\u2026":d=s.slice(a),n+=h+l+d}super(n),this.name="ParseError",this.position=void 0,this.length=void 0,this.rawMessage=void 0,Object.setPrototypeOf(this,t.prototype),this.position=i,i!=null&&a!=null&&(this.length=a-i),this.rawMessage=e}},J1=/([A-Z])/g,eh=t=>t.replace(J1,"-$1").toLowerCase(),th={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},rh=/[&><"']/g,Te=t=>String(t).replace(rh,e=>th[e]),Yr=t=>t.type==="ordgroup"||t.type==="color"?t.body.length===1?Yr(t.body[0]):t:t.type==="font"?Yr(t.body):t,nh=new Set(["mathord","textord","atom"]),ct=t=>nh.has(Yr(t).type),ih=t=>{var e=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(t);return e?e[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(e[1])?null:e[1].toLowerCase():"_relative"},gn={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:t=>"#"+t},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(t,e)=>(e.push(t),e)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:t=>Math.max(0,t),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:t=>Math.max(0,t),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:t=>Math.max(0,t),cli:"-e, --max-expand <n>",cliProcessor:t=>t==="Infinity"?1/0:parseInt(t)},globalGroup:{type:"boolean",cli:!1}};function ah(t){if(typeof t!="string")return t.enum[0];switch(t){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{};default:throw new Error("Unexpected schema type; settings must declare an explicit default.")}}function oh(t){if(t.default!==void 0)return t.default;var e=Array.isArray(t.type)?t.type[0]:t.type;return ah(e)}function sh(t,e,r,n){var i=r[e];t[e]=i!==void 0?n.processor?n.processor(i):i:oh(n)}var sr=class{constructor(e){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=e||{};for(var r of Object.keys(gn)){var n=gn[r];n&&sh(this,r,e,n)}}reportNonstrict(e,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(e,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new N("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+e+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]"))}}useStrictBehavior(e,r,n){var i=this.strict;if(typeof i=="function")try{i=i(e,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]")),!1)}isTrusted(e){if("url"in e&&e.url&&!e.protocol){var r=ih(e.url);if(r==null)return!1;e.protocol=r}var n=typeof this.trust=="function"?this.trust(e):this.trust;return!!n}},Je=class{constructor(e,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=r,this.cramped=n}sup(){return et[lh[this.id]]}sub(){return et[uh[this.id]]}fracNum(){return et[hh[this.id]]}fracDen(){return et[ch[this.id]]}cramp(){return et[dh[this.id]]}text(){return et[mh[this.id]]}isTight(){return this.size>=2}},Rn=0,Wr=1,jt=2,ht=3,lr=4,$e=5,Vt=6,ze=7,et=[new Je(Rn,0,!1),new Je(Wr,0,!0),new Je(jt,1,!1),new Je(ht,1,!0),new Je(lr,2,!1),new Je($e,2,!0),new Je(Vt,3,!1),new Je(ze,3,!0)],lh=[lr,$e,lr,$e,Vt,ze,Vt,ze],uh=[$e,$e,$e,$e,ze,ze,ze,ze],hh=[jt,ht,lr,$e,Vt,ze,Vt,ze],ch=[ht,ht,$e,$e,ze,ze,ze,ze],dh=[Wr,Wr,ht,ht,$e,$e,ze,ze],mh=[Rn,Wr,jt,ht,jt,ht,jt,ht],U={DISPLAY:et[Rn],TEXT:et[jt],SCRIPT:et[lr],SCRIPTSCRIPT:et[Vt]},bn=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];function fh(t){for(var e=0;e<bn.length;e++)for(var r=bn[e],n=0;n<r.blocks.length;n++){var i=r.blocks[n];if(t>=i[0]&&t<=i[1])return r.name}return null}var Xr=[];bn.forEach(t=>t.blocks.forEach(e=>Xr.push(...e)));function Na(t){for(var e=0;e<Xr.length;e+=2)if(t>=Xr[e]&&t<=Xr[e+1])return!0;return!1}var ye=t=>t+" "+t,Gt=80,ph=function(e,r){return"M95,"+(622+e+r)+`
c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14
c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54
c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10
s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429
c69,-144,104.5,-217.7,106.5,-221
l`+e/2.075+" -"+e+`
c5.3,-9.3,12,-14,20,-14
H400000v`+(40+e)+`H845.2724
s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7
c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z
M`+(834+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},vh=function(e,r){return"M263,"+(601+e+r)+`c0.7,0,18,39.7,52,119
c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120
c340,-704.7,510.7,-1060.3,512,-1067
l`+e/2.084+" -"+e+`
c4.7,-7.3,11,-11,19,-11
H40000v`+(40+e)+`H1012.3
s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232
c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1
s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26
c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z
M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},gh=function(e,r){return"M983 "+(10+e+r)+`
l`+e/3.13+" -"+e+`
c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+`
H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7
s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744
c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30
c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722
c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5
c53.7,-170.3,84.5,-266.8,92.5,-289.5z
M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},bh=function(e,r){return"M424,"+(2398+e+r)+`
c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514
c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20
s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121
s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081
l`+e/4.223+" -"+e+`c4,-6.7,10,-10,18,-10 H400000
v`+(40+e)+`H1014.6
s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185
c-2,6,-10,9,-24,9
c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+r+`
h400000v`+(40+e)+"h-400000z"},yh=function(e,r){return"M473,"+(2713+e+r)+`
c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+`
c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7
s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9
c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200
c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26
s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,
606zM`+(1001+e)+" "+r+"h400000v"+(40+e)+"H1017.7z"},xh=function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},wh=function(e,r,n){var i=n-54-r-e;return"M702 "+(e+r)+"H400000"+(40+e)+`
H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1
h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170
c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667
219 661 l218 661zM702 `+r+"H400000v"+(40+e)+"H742z"},kh=function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=ph(r,Gt);break;case"sqrtSize1":i=vh(r,Gt);break;case"sqrtSize2":i=gh(r,Gt);break;case"sqrtSize3":i=bh(r,Gt);break;case"sqrtSize4":i=yh(r,Gt);break;case"sqrtTall":i=wh(r,Gt,n)}return i},Sh=function(e,r){switch(e){case"\u239C":return ye("M291 0 H417 V"+r+" H291z");case"\u2223":return ye("M145 0 H188 V"+r+" H145z");case"\u2225":return ye("M145 0 H188 V"+r+" H145z")+ye("M367 0 H410 V"+r+" H367z");case"\u239F":return ye("M457 0 H583 V"+r+" H457z");case"\u23A2":return ye("M319 0 H403 V"+r+" H319z");case"\u23A5":return ye("M263 0 H347 V"+r+" H263z");case"\u23AA":return ye("M384 0 H504 V"+r+" H384z");case"\u23D0":return ye("M312 0 H355 V"+r+" H312z");case"\u2016":return ye("M257 0 H300 V"+r+" H257z")+ye("M478 0 H521 V"+r+" H478z");default:return""}},Wi={doubleleftarrow:`M262 157
l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3
0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28
14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5
c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5
157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87
-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7
-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z
m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l
-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5
14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88
-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68
-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18
-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782
c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3
-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120
135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8
-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247
c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208
490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3
1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202
l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117
-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7
5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13
35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688
0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7
-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80
H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0
435 0h399565z`,leftgroupunder:`M400000 262
H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219
435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3
-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5
-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7
-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5
20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3
-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7
-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z
m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333
5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5
1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667
-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12
10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7
-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0
v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5
-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3
-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21
71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:ye("M40 281 V428 H0 V94 H40 V241 H400000 v40z"),leftbracketunder:ye("M0 0 h120 V290 H399995 v120 H0z"),leftbracketover:ye("M0 440 h120 V150 H399995 v-120 H0z"),leftmapsto:ye("M40 281 V448H0V74H40V241H400000v40z"),leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23
-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8
c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3
68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:ye("M0 50 h400000 v40H0z m0 194h40000v40H0z"),midbrace:`M200428 334
c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14
-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7
311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11
12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214
c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14
53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3
11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0
-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6
-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z
m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8
60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8
-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z
m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2
c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6
-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z
m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0
85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8
-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z
m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1
c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128
-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20
11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7
39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85
-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l
-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5
s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1
c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3
28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237
-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0
3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18
0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3
-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2
-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58
69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11
-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7
2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z
m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8
8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5
-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95
-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8
15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3
8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3
-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z
m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3
15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0
-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21
66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:ye("M399960 241 V94 h40 V428 h-40 V281 H0 v-40z"),rightbracketunder:ye("M399995 0 h-120 V290 H0 v120 H400000z"),rightbracketover:ye("M399995 440 h-120 V150 H0 v-120 H399995z"),rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23
1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32
-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142
-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40
115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69
-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3
-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19
-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101
10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167
c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3
41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42
18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333
-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70
101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7
-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0
114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0
4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128
-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418
-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9
31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114
c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751
181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457
-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0
411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697
16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696
-338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345
-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409
177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9
14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409
-175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5
3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11
10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63
-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1
-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59
H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359
c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22
c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10
-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10
-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10
-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,
-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202
c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5
c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130
s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47
121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6
s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11
c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z
M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32
-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0
13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39
-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5
-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17
c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21
c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40
c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z
M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,
1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,
-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z
M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},Eh=function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 v84 h347 v-84
H403z M403 1759 V0 H319 V1759 v`+r+" v1759 v84 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v1759 H0 v84 H347z
M347 1759 V0 H263 V1759 v`+r+" v1759 h84z";case"vert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+" v585 h43z";case"doublevert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+` v585 h43z
M367 15 v585 v`+r+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+r+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+r+` v1715 h263 v84 H319z
MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+r+` v1799 H0 v-84 H319z
MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v602 h84z
M403 1759 V0 H319 V1759 v`+r+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v602 h84z
M347 1759 V0 h-84 V1759 v`+r+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1
c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,
-36,557 l0,`+(r+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,
949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9
c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,
-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189
l0,-`+(r+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,
-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;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,
63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5
c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(r+9)+`
c-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
c-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
c0,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
c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558
l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}};function Mh(t){return"toText"in t}var St=class{constructor(e){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={}}hasClass(e){return this.classes.includes(e)}toNode(){for(var e=document.createDocumentFragment(),r=0;r<this.children.length;r++)e.appendChild(this.children[r].toNode());return e}toMarkup(){for(var e="",r=0;r<this.children.length;r++)e+=this.children[r].toMarkup();return e}toText(){return this.children.map(e=>{if(Mh(e))return e.toText();throw new Error("Expected MathDomNode with toText, got "+e.constructor.name)}).join("")}},yn={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},Th={ex:!0,em:!0,mu:!0},Ia=function(e){return typeof e!="string"&&(e=e.unit),e in yn||e in Th||e==="ex"},ue=function(e,r){var n;if(e.unit in yn)n=yn[e.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(e.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,e.unit==="ex")n=i.fontMetrics().xHeight;else if(e.unit==="em")n=i.fontMetrics().quad;else throw new N("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},_=function(e){return+e.toFixed(4)+"em"},Et=function(e){return e.filter(r=>r).join(" ")},Fn=function(e){var r="";for(var n of Object.keys(e)){var i=e[n];i!==void 0&&(r+=eh(n)+":"+i+";")}return r},_a=function(e,r,n){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},La=function(e){var r=document.createElement(e);r.className=Et(this.classes),Object.assign(r.style,this.style);for(var n of Object.keys(this.attributes))r.setAttribute(n,this.attributes[n]);for(var i=0;i<this.children.length;i++)r.appendChild(this.children[i].toNode());return r},Ah=/[\s"'>/=\x00-\x1f]/,qa=function(e){var r="<"+e;this.classes.length&&(r+=' class="'+Te(Et(this.classes))+'"');var n=Fn(this.style);n&&(r+=' style="'+Te(n)+'"');for(var i of Object.keys(this.attributes)){if(Ah.test(i))throw new N("Invalid attribute name '"+i+"'");r+=" "+i+'="'+Te(this.attributes[i])+'"'}r+=">";for(var a=0;a<this.children.length;a++)r+=this.children[a].toMarkup();return r+="</"+e+">",r},Mt=class{constructor(e,r,n,i){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,_a.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return this.classes.includes(e)}toNode(){return La.call(this,"span")}toMarkup(){return qa.call(this,"span")}},Ut=class{constructor(e,r,n,i){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,_a.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return this.classes.includes(e)}toNode(){return La.call(this,"a")}toMarkup(){return qa.call(this,"a")}},xn=class{constructor(e,r,n){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=r,this.src=e,this.classes=["mord"],this.height=0,this.depth=0,this.maxFontSize=0,this.style=n}hasClass(e){return this.classes.includes(e)}toNode(){var e=document.createElement("img");return e.src=this.src,e.alt=this.alt,e.className="mord",Object.assign(e.style,this.style),e}toMarkup(){var e='<img src="'+Te(this.src)+'"'+(' alt="'+Te(this.alt)+'"'),r=Fn(this.style);return r&&(e+=' style="'+Te(r)+'"'),e+="'/>",e}},zh={\u00EE:"\u0131\u0302",\u00EF:"\u0131\u0308",\u00ED:"\u0131\u0301",\u00EC:"\u0131\u0300"},Ce=class{constructor(e,r,n,i,a,o,s,l){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=r||0,this.depth=n||0,this.italic=i||0,this.skew=a||0,this.width=o||0,this.classes=s||[],this.style=l||{},this.maxFontSize=0;var h=fh(this.text.charCodeAt(0));h&&this.classes.push(h+"_fallback"),/[îïíì]/.test(this.text)&&(this.text=zh[this.text])}hasClass(e){return this.classes.includes(e)}toNode(){var e=document.createTextNode(this.text),r=null;return this.italic>0&&(r=document.createElement("span"),r.style.marginRight=_(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=Et(this.classes)),Object.keys(this.style).length>0&&(r=r||document.createElement("span"),Object.assign(r.style,this.style)),r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="<span";this.classes.length&&(e=!0,r+=' class="',r+=Te(Et(this.classes)),r+='"');var n="";this.italic>0&&(n+="margin-right:"+_(this.italic)+";"),n+=Fn(this.style),n&&(e=!0,r+=' style="'+Te(n)+'"');var i=Te(this.text);return e?(r+=">",r+=i,r+="</span>",r):i}},Xe=class{constructor(e,r){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=r||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"svg");for(var n of Object.keys(this.attributes))r.setAttribute(n,this.attributes[n]);for(var i=0;i<this.children.length;i++)r.appendChild(this.children[i].toNode());return r}toMarkup(){var e='<svg xmlns="http://www.w3.org/2000/svg"';for(var r of Object.keys(this.attributes))e+=" "+r+'="'+Te(this.attributes[r])+'"';e+=">";for(var n=0;n<this.children.length;n++)e+=this.children[n].toMarkup();return e+="</svg>",e}},rt=class{constructor(e,r){this.pathName=void 0,this.alternate=void 0,this.pathName=e,this.alternate=r}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"path");return this.alternate?r.setAttribute("d",this.alternate):r.setAttribute("d",Wi[this.pathName]),r}toMarkup(){return this.alternate?'<path d="'+Te(this.alternate)+'"/>':'<path d="'+Te(Wi[this.pathName])+'"/>'}},ur=class{constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"line");for(var n of Object.keys(this.attributes))r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e="<line";for(var r of Object.keys(this.attributes))e+=" "+r+'="'+Te(this.attributes[r])+'"';return e+="/>",e}};function Ch(t){if(t instanceof Ce)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function Nh(t){if(t instanceof Mt)return t;throw new Error("Expected span<HtmlDomNode> but got "+String(t)+".")}var Ih=t=>t instanceof Mt||t instanceof Ut||t instanceof St,tt={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},Or={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},Ki={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};function _h(t,e){tt[t]=e}function Hn(t,e,r){if(!tt[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=tt[e][n];if(!i&&t[0]in Ki&&(n=Ki[t[0]].charCodeAt(0),i=tt[e][n]),!i&&r==="text"&&Na(n)&&(i=tt[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}var rn={};function Lh(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!rn[e]){var r=rn[e]={cssEmPerMu:Or.quad[e]/18};for(var n in Or)Or.hasOwnProperty(n)&&(r[n]=Or[n][e])}return rn[e]}var ie={math:{},text:{}};function u(t,e,r,n,i,a){ie[t][i]={font:e,group:r,replace:n},a&&n&&(ie[t][n]=ie[t][i])}var c="math",T="text",f="main",b="ams",ae="accent-token",O="bin",Ne="close",Wt="inner",P="mathord",ge="op-token",Oe="open",cr="punct",y="rel",dt="spacing",x="textord";u(c,f,y,"\u2261","\\equiv",!0);u(c,f,y,"\u227A","\\prec",!0);u(c,f,y,"\u227B","\\succ",!0);u(c,f,y,"\u223C","\\sim",!0);u(c,f,y,"\u22A5","\\perp");u(c,f,y,"\u2AAF","\\preceq",!0);u(c,f,y,"\u2AB0","\\succeq",!0);u(c,f,y,"\u2243","\\simeq",!0);u(c,f,y,"\u2223","\\mid",!0);u(c,f,y,"\u226A","\\ll",!0);u(c,f,y,"\u226B","\\gg",!0);u(c,f,y,"\u224D","\\asymp",!0);u(c,f,y,"\u2225","\\parallel");u(c,f,y,"\u22C8","\\bowtie",!0);u(c,f,y,"\u2323","\\smile",!0);u(c,f,y,"\u2291","\\sqsubseteq",!0);u(c,f,y,"\u2292","\\sqsupseteq",!0);u(c,f,y,"\u2250","\\doteq",!0);u(c,f,y,"\u2322","\\frown",!0);u(c,f,y,"\u220B","\\ni",!0);u(c,f,y,"\u221D","\\propto",!0);u(c,f,y,"\u22A2","\\vdash",!0);u(c,f,y,"\u22A3","\\dashv",!0);u(c,f,y,"\u220B","\\owns");u(c,f,cr,".","\\ldotp");u(c,f,cr,"\u22C5","\\cdotp");u(c,f,cr,"\u22C5","\xB7");u(T,f,x,"\u22C5","\xB7");u(c,f,x,"#","\\#");u(T,f,x,"#","\\#");u(c,f,x,"&","\\&");u(T,f,x,"&","\\&");u(c,f,x,"\u2135","\\aleph",!0);u(c,f,x,"\u2200","\\forall",!0);u(c,f,x,"\u210F","\\hbar",!0);u(c,f,x,"\u2203","\\exists",!0);u(c,f,x,"\u2207","\\nabla",!0);u(c,f,x,"\u266D","\\flat",!0);u(c,f,x,"\u2113","\\ell",!0);u(c,f,x,"\u266E","\\natural",!0);u(c,f,x,"\u2663","\\clubsuit",!0);u(c,f,x,"\u2118","\\wp",!0);u(c,f,x,"\u266F","\\sharp",!0);u(c,f,x,"\u2662","\\diamondsuit",!0);u(c,f,x,"\u211C","\\Re",!0);u(c,f,x,"\u2661","\\heartsuit",!0);u(c,f,x,"\u2111","\\Im",!0);u(c,f,x,"\u2660","\\spadesuit",!0);u(c,f,x,"\xA7","\\S",!0);u(T,f,x,"\xA7","\\S");u(c,f,x,"\xB6","\\P",!0);u(T,f,x,"\xB6","\\P");u(c,f,x,"\u2020","\\dag");u(T,f,x,"\u2020","\\dag");u(T,f,x,"\u2020","\\textdagger");u(c,f,x,"\u2021","\\ddag");u(T,f,x,"\u2021","\\ddag");u(T,f,x,"\u2021","\\textdaggerdbl");u(c,f,Ne,"\u23B1","\\rmoustache",!0);u(c,f,Oe,"\u23B0","\\lmoustache",!0);u(c,f,Ne,"\u27EF","\\rgroup",!0);u(c,f,Oe,"\u27EE","\\lgroup",!0);u(c,f,O,"\u2213","\\mp",!0);u(c,f,O,"\u2296","\\ominus",!0);u(c,f,O,"\u228E","\\uplus",!0);u(c,f,O,"\u2293","\\sqcap",!0);u(c,f,O,"\u2217","\\ast");u(c,f,O,"\u2294","\\sqcup",!0);u(c,f,O,"\u25EF","\\bigcirc",!0);u(c,f,O,"\u2219","\\bullet",!0);u(c,f,O,"\u2021","\\ddagger");u(c,f,O,"\u2240","\\wr",!0);u(c,f,O,"\u2A3F","\\amalg");u(c,f,O,"&","\\And");u(c,f,y,"\u27F5","\\longleftarrow",!0);u(c,f,y,"\u21D0","\\Leftarrow",!0);u(c,f,y,"\u27F8","\\Longleftarrow",!0);u(c,f,y,"\u27F6","\\longrightarrow",!0);u(c,f,y,"\u21D2","\\Rightarrow",!0);u(c,f,y,"\u27F9","\\Longrightarrow",!0);u(c,f,y,"\u2194","\\leftrightarrow",!0);u(c,f,y,"\u27F7","\\longleftrightarrow",!0);u(c,f,y,"\u21D4","\\Leftrightarrow",!0);u(c,f,y,"\u27FA","\\Longleftrightarrow",!0);u(c,f,y,"\u21A6","\\mapsto",!0);u(c,f,y,"\u27FC","\\longmapsto",!0);u(c,f,y,"\u2197","\\nearrow",!0);u(c,f,y,"\u21A9","\\hookleftarrow",!0);u(c,f,y,"\u21AA","\\hookrightarrow",!0);u(c,f,y,"\u2198","\\searrow",!0);u(c,f,y,"\u21BC","\\leftharpoonup",!0);u(c,f,y,"\u21C0","\\rightharpoonup",!0);u(c,f,y,"\u2199","\\swarrow",!0);u(c,f,y,"\u21BD","\\leftharpoondown",!0);u(c,f,y,"\u21C1","\\rightharpoondown",!0);u(c,f,y,"\u2196","\\nwarrow",!0);u(c,f,y,"\u21CC","\\rightleftharpoons",!0);u(c,b,y,"\u226E","\\nless",!0);u(c,b,y,"\uE010","\\@nleqslant");u(c,b,y,"\uE011","\\@nleqq");u(c,b,y,"\u2A87","\\lneq",!0);u(c,b,y,"\u2268","\\lneqq",!0);u(c,b,y,"\uE00C","\\@lvertneqq");u(c,b,y,"\u22E6","\\lnsim",!0);u(c,b,y,"\u2A89","\\lnapprox",!0);u(c,b,y,"\u2280","\\nprec",!0);u(c,b,y,"\u22E0","\\npreceq",!0);u(c,b,y,"\u22E8","\\precnsim",!0);u(c,b,y,"\u2AB9","\\precnapprox",!0);u(c,b,y,"\u2241","\\nsim",!0);u(c,b,y,"\uE006","\\@nshortmid");u(c,b,y,"\u2224","\\nmid",!0);u(c,b,y,"\u22AC","\\nvdash",!0);u(c,b,y,"\u22AD","\\nvDash",!0);u(c,b,y,"\u22EA","\\ntriangleleft");u(c,b,y,"\u22EC","\\ntrianglelefteq",!0);u(c,b,y,"\u228A","\\subsetneq",!0);u(c,b,y,"\uE01A","\\@varsubsetneq");u(c,b,y,"\u2ACB","\\subsetneqq",!0);u(c,b,y,"\uE017","\\@varsubsetneqq");u(c,b,y,"\u226F","\\ngtr",!0);u(c,b,y,"\uE00F","\\@ngeqslant");u(c,b,y,"\uE00E","\\@ngeqq");u(c,b,y,"\u2A88","\\gneq",!0);u(c,b,y,"\u2269","\\gneqq",!0);u(c,b,y,"\uE00D","\\@gvertneqq");u(c,b,y,"\u22E7","\\gnsim",!0);u(c,b,y,"\u2A8A","\\gnapprox",!0);u(c,b,y,"\u2281","\\nsucc",!0);u(c,b,y,"\u22E1","\\nsucceq",!0);u(c,b,y,"\u22E9","\\succnsim",!0);u(c,b,y,"\u2ABA","\\succnapprox",!0);u(c,b,y,"\u2246","\\ncong",!0);u(c,b,y,"\uE007","\\@nshortparallel");u(c,b,y,"\u2226","\\nparallel",!0);u(c,b,y,"\u22AF","\\nVDash",!0);u(c,b,y,"\u22EB","\\ntriangleright");u(c,b,y,"\u22ED","\\ntrianglerighteq",!0);u(c,b,y,"\uE018","\\@nsupseteqq");u(c,b,y,"\u228B","\\supsetneq",!0);u(c,b,y,"\uE01B","\\@varsupsetneq");u(c,b,y,"\u2ACC","\\supsetneqq",!0);u(c,b,y,"\uE019","\\@varsupsetneqq");u(c,b,y,"\u22AE","\\nVdash",!0);u(c,b,y,"\u2AB5","\\precneqq",!0);u(c,b,y,"\u2AB6","\\succneqq",!0);u(c,b,y,"\uE016","\\@nsubseteqq");u(c,b,O,"\u22B4","\\unlhd");u(c,b,O,"\u22B5","\\unrhd");u(c,b,y,"\u219A","\\nleftarrow",!0);u(c,b,y,"\u219B","\\nrightarrow",!0);u(c,b,y,"\u21CD","\\nLeftarrow",!0);u(c,b,y,"\u21CF","\\nRightarrow",!0);u(c,b,y,"\u21AE","\\nleftrightarrow",!0);u(c,b,y,"\u21CE","\\nLeftrightarrow",!0);u(c,b,y,"\u25B3","\\vartriangle");u(c,b,x,"\u210F","\\hslash");u(c,b,x,"\u25BD","\\triangledown");u(c,b,x,"\u25CA","\\lozenge");u(c,b,x,"\u24C8","\\circledS");u(c,b,x,"\xAE","\\circledR");u(T,b,x,"\xAE","\\circledR");u(c,b,x,"\u2221","\\measuredangle",!0);u(c,b,x,"\u2204","\\nexists");u(c,b,x,"\u2127","\\mho");u(c,b,x,"\u2132","\\Finv",!0);u(c,b,x,"\u2141","\\Game",!0);u(c,b,x,"\u2035","\\backprime");u(c,b,x,"\u25B2","\\blacktriangle");u(c,b,x,"\u25BC","\\blacktriangledown");u(c,b,x,"\u25A0","\\blacksquare");u(c,b,x,"\u29EB","\\blacklozenge");u(c,b,x,"\u2605","\\bigstar");u(c,b,x,"\u2222","\\sphericalangle",!0);u(c,b,x,"\u2201","\\complement",!0);u(c,b,x,"\xF0","\\eth",!0);u(T,f,x,"\xF0","\xF0");u(c,b,x,"\u2571","\\diagup");u(c,b,x,"\u2572","\\diagdown");u(c,b,x,"\u25A1","\\square");u(c,b,x,"\u25A1","\\Box");u(c,b,x,"\u25CA","\\Diamond");u(c,b,x,"\xA5","\\yen",!0);u(T,b,x,"\xA5","\\yen",!0);u(c,b,x,"\u2713","\\checkmark",!0);u(T,b,x,"\u2713","\\checkmark");u(c,b,x,"\u2136","\\beth",!0);u(c,b,x,"\u2138","\\daleth",!0);u(c,b,x,"\u2137","\\gimel",!0);u(c,b,x,"\u03DD","\\digamma",!0);u(c,b,x,"\u03F0","\\varkappa");u(c,b,Oe,"\u250C","\\@ulcorner",!0);u(c,b,Ne,"\u2510","\\@urcorner",!0);u(c,b,Oe,"\u2514","\\@llcorner",!0);u(c,b,Ne,"\u2518","\\@lrcorner",!0);u(c,b,y,"\u2266","\\leqq",!0);u(c,b,y,"\u2A7D","\\leqslant",!0);u(c,b,y,"\u2A95","\\eqslantless",!0);u(c,b,y,"\u2272","\\lesssim",!0);u(c,b,y,"\u2A85","\\lessapprox",!0);u(c,b,y,"\u224A","\\approxeq",!0);u(c,b,O,"\u22D6","\\lessdot");u(c,b,y,"\u22D8","\\lll",!0);u(c,b,y,"\u2276","\\lessgtr",!0);u(c,b,y,"\u22DA","\\lesseqgtr",!0);u(c,b,y,"\u2A8B","\\lesseqqgtr",!0);u(c,b,y,"\u2251","\\doteqdot");u(c,b,y,"\u2253","\\risingdotseq",!0);u(c,b,y,"\u2252","\\fallingdotseq",!0);u(c,b,y,"\u223D","\\backsim",!0);u(c,b,y,"\u22CD","\\backsimeq",!0);u(c,b,y,"\u2AC5","\\subseteqq",!0);u(c,b,y,"\u22D0","\\Subset",!0);u(c,b,y,"\u228F","\\sqsubset",!0);u(c,b,y,"\u227C","\\preccurlyeq",!0);u(c,b,y,"\u22DE","\\curlyeqprec",!0);u(c,b,y,"\u227E","\\precsim",!0);u(c,b,y,"\u2AB7","\\precapprox",!0);u(c,b,y,"\u22B2","\\vartriangleleft");u(c,b,y,"\u22B4","\\trianglelefteq");u(c,b,y,"\u22A8","\\vDash",!0);u(c,b,y,"\u22AA","\\Vvdash",!0);u(c,b,y,"\u2323","\\smallsmile");u(c,b,y,"\u2322","\\smallfrown");u(c,b,y,"\u224F","\\bumpeq",!0);u(c,b,y,"\u224E","\\Bumpeq",!0);u(c,b,y,"\u2267","\\geqq",!0);u(c,b,y,"\u2A7E","\\geqslant",!0);u(c,b,y,"\u2A96","\\eqslantgtr",!0);u(c,b,y,"\u2273","\\gtrsim",!0);u(c,b,y,"\u2A86","\\gtrapprox",!0);u(c,b,O,"\u22D7","\\gtrdot");u(c,b,y,"\u22D9","\\ggg",!0);u(c,b,y,"\u2277","\\gtrless",!0);u(c,b,y,"\u22DB","\\gtreqless",!0);u(c,b,y,"\u2A8C","\\gtreqqless",!0);u(c,b,y,"\u2256","\\eqcirc",!0);u(c,b,y,"\u2257","\\circeq",!0);u(c,b,y,"\u225C","\\triangleq",!0);u(c,b,y,"\u223C","\\thicksim");u(c,b,y,"\u2248","\\thickapprox");u(c,b,y,"\u2AC6","\\supseteqq",!0);u(c,b,y,"\u22D1","\\Supset",!0);u(c,b,y,"\u2290","\\sqsupset",!0);u(c,b,y,"\u227D","\\succcurlyeq",!0);u(c,b,y,"\u22DF","\\curlyeqsucc",!0);u(c,b,y,"\u227F","\\succsim",!0);u(c,b,y,"\u2AB8","\\succapprox",!0);u(c,b,y,"\u22B3","\\vartriangleright");u(c,b,y,"\u22B5","\\trianglerighteq");u(c,b,y,"\u22A9","\\Vdash",!0);u(c,b,y,"\u2223","\\shortmid");u(c,b,y,"\u2225","\\shortparallel");u(c,b,y,"\u226C","\\between",!0);u(c,b,y,"\u22D4","\\pitchfork",!0);u(c,b,y,"\u221D","\\varpropto");u(c,b,y,"\u25C0","\\blacktriangleleft");u(c,b,y,"\u2234","\\therefore",!0);u(c,b,y,"\u220D","\\backepsilon");u(c,b,y,"\u25B6","\\blacktriangleright");u(c,b,y,"\u2235","\\because",!0);u(c,b,y,"\u22D8","\\llless");u(c,b,y,"\u22D9","\\gggtr");u(c,b,O,"\u22B2","\\lhd");u(c,b,O,"\u22B3","\\rhd");u(c,b,y,"\u2242","\\eqsim",!0);u(c,f,y,"\u22C8","\\Join");u(c,b,y,"\u2251","\\Doteq",!0);u(c,b,O,"\u2214","\\dotplus",!0);u(c,b,O,"\u2216","\\smallsetminus");u(c,b,O,"\u22D2","\\Cap",!0);u(c,b,O,"\u22D3","\\Cup",!0);u(c,b,O,"\u2A5E","\\doublebarwedge",!0);u(c,b,O,"\u229F","\\boxminus",!0);u(c,b,O,"\u229E","\\boxplus",!0);u(c,b,O,"\u22C7","\\divideontimes",!0);u(c,b,O,"\u22C9","\\ltimes",!0);u(c,b,O,"\u22CA","\\rtimes",!0);u(c,b,O,"\u22CB","\\leftthreetimes",!0);u(c,b,O,"\u22CC","\\rightthreetimes",!0);u(c,b,O,"\u22CF","\\curlywedge",!0);u(c,b,O,"\u22CE","\\curlyvee",!0);u(c,b,O,"\u229D","\\circleddash",!0);u(c,b,O,"\u229B","\\circledast",!0);u(c,b,O,"\u22C5","\\centerdot");u(c,b,O,"\u22BA","\\intercal",!0);u(c,b,O,"\u22D2","\\doublecap");u(c,b,O,"\u22D3","\\doublecup");u(c,b,O,"\u22A0","\\boxtimes",!0);u(c,b,y,"\u21E2","\\dashrightarrow",!0);u(c,b,y,"\u21E0","\\dashleftarrow",!0);u(c,b,y,"\u21C7","\\leftleftarrows",!0);u(c,b,y,"\u21C6","\\leftrightarrows",!0);u(c,b,y,"\u21DA","\\Lleftarrow",!0);u(c,b,y,"\u219E","\\twoheadleftarrow",!0);u(c,b,y,"\u21A2","\\leftarrowtail",!0);u(c,b,y,"\u21AB","\\looparrowleft",!0);u(c,b,y,"\u21CB","\\leftrightharpoons",!0);u(c,b,y,"\u21B6","\\curvearrowleft",!0);u(c,b,y,"\u21BA","\\circlearrowleft",!0);u(c,b,y,"\u21B0","\\Lsh",!0);u(c,b,y,"\u21C8","\\upuparrows",!0);u(c,b,y,"\u21BF","\\upharpoonleft",!0);u(c,b,y,"\u21C3","\\downharpoonleft",!0);u(c,f,y,"\u22B6","\\origof",!0);u(c,f,y,"\u22B7","\\imageof",!0);u(c,b,y,"\u22B8","\\multimap",!0);u(c,b,y,"\u21AD","\\leftrightsquigarrow",!0);u(c,b,y,"\u21C9","\\rightrightarrows",!0);u(c,b,y,"\u21C4","\\rightleftarrows",!0);u(c,b,y,"\u21A0","\\twoheadrightarrow",!0);u(c,b,y,"\u21A3","\\rightarrowtail",!0);u(c,b,y,"\u21AC","\\looparrowright",!0);u(c,b,y,"\u21B7","\\curvearrowright",!0);u(c,b,y,"\u21BB","\\circlearrowright",!0);u(c,b,y,"\u21B1","\\Rsh",!0);u(c,b,y,"\u21CA","\\downdownarrows",!0);u(c,b,y,"\u21BE","\\upharpoonright",!0);u(c,b,y,"\u21C2","\\downharpoonright",!0);u(c,b,y,"\u21DD","\\rightsquigarrow",!0);u(c,b,y,"\u21DD","\\leadsto");u(c,b,y,"\u21DB","\\Rrightarrow",!0);u(c,b,y,"\u21BE","\\restriction");u(c,f,x,"\u2018","`");u(c,f,x,"$","\\$");u(T,f,x,"$","\\$");u(T,f,x,"$","\\textdollar");u(c,f,x,"%","\\%");u(T,f,x,"%","\\%");u(c,f,x,"_","\\_");u(T,f,x,"_","\\_");u(T,f,x,"_","\\textunderscore");u(c,f,x,"\u2220","\\angle",!0);u(c,f,x,"\u221E","\\infty",!0);u(c,f,x,"\u2032","\\prime");u(c,f,x,"\u25B3","\\triangle");u(c,f,x,"\u0393","\\Gamma",!0);u(c,f,x,"\u0394","\\Delta",!0);u(c,f,x,"\u0398","\\Theta",!0);u(c,f,x,"\u039B","\\Lambda",!0);u(c,f,x,"\u039E","\\Xi",!0);u(c,f,x,"\u03A0","\\Pi",!0);u(c,f,x,"\u03A3","\\Sigma",!0);u(c,f,x,"\u03A5","\\Upsilon",!0);u(c,f,x,"\u03A6","\\Phi",!0);u(c,f,x,"\u03A8","\\Psi",!0);u(c,f,x,"\u03A9","\\Omega",!0);u(c,f,x,"A","\u0391");u(c,f,x,"B","\u0392");u(c,f,x,"E","\u0395");u(c,f,x,"Z","\u0396");u(c,f,x,"H","\u0397");u(c,f,x,"I","\u0399");u(c,f,x,"K","\u039A");u(c,f,x,"M","\u039C");u(c,f,x,"N","\u039D");u(c,f,x,"O","\u039F");u(c,f,x,"P","\u03A1");u(c,f,x,"T","\u03A4");u(c,f,x,"X","\u03A7");u(c,f,x,"\xAC","\\neg",!0);u(c,f,x,"\xAC","\\lnot");u(c,f,x,"\u22A4","\\top");u(c,f,x,"\u22A5","\\bot");u(c,f,x,"\u2205","\\emptyset");u(c,b,x,"\u2205","\\varnothing");u(c,f,P,"\u03B1","\\alpha",!0);u(c,f,P,"\u03B2","\\beta",!0);u(c,f,P,"\u03B3","\\gamma",!0);u(c,f,P,"\u03B4","\\delta",!0);u(c,f,P,"\u03F5","\\epsilon",!0);u(c,f,P,"\u03B6","\\zeta",!0);u(c,f,P,"\u03B7","\\eta",!0);u(c,f,P,"\u03B8","\\theta",!0);u(c,f,P,"\u03B9","\\iota",!0);u(c,f,P,"\u03BA","\\kappa",!0);u(c,f,P,"\u03BB","\\lambda",!0);u(c,f,P,"\u03BC","\\mu",!0);u(c,f,P,"\u03BD","\\nu",!0);u(c,f,P,"\u03BE","\\xi",!0);u(c,f,P,"\u03BF","\\omicron",!0);u(c,f,P,"\u03C0","\\pi",!0);u(c,f,P,"\u03C1","\\rho",!0);u(c,f,P,"\u03C3","\\sigma",!0);u(c,f,P,"\u03C4","\\tau",!0);u(c,f,P,"\u03C5","\\upsilon",!0);u(c,f,P,"\u03D5","\\phi",!0);u(c,f,P,"\u03C7","\\chi",!0);u(c,f,P,"\u03C8","\\psi",!0);u(c,f,P,"\u03C9","\\omega",!0);u(c,f,P,"\u03B5","\\varepsilon",!0);u(c,f,P,"\u03D1","\\vartheta",!0);u(c,f,P,"\u03D6","\\varpi",!0);u(c,f,P,"\u03F1","\\varrho",!0);u(c,f,P,"\u03C2","\\varsigma",!0);u(c,f,P,"\u03C6","\\varphi",!0);u(c,f,O,"\u2217","*",!0);u(c,f,O,"+","+");u(c,f,O,"\u2212","-",!0);u(c,f,O,"\u22C5","\\cdot",!0);u(c,f,O,"\u2218","\\circ",!0);u(c,f,O,"\xF7","\\div",!0);u(c,f,O,"\xB1","\\pm",!0);u(c,f,O,"\xD7","\\times",!0);u(c,f,O,"\u2229","\\cap",!0);u(c,f,O,"\u222A","\\cup",!0);u(c,f,O,"\u2216","\\setminus",!0);u(c,f,O,"\u2227","\\land");u(c,f,O,"\u2228","\\lor");u(c,f,O,"\u2227","\\wedge",!0);u(c,f,O,"\u2228","\\vee",!0);u(c,f,x,"\u221A","\\surd");u(c,f,Oe,"\u27E8","\\langle",!0);u(c,f,Oe,"\u2223","\\lvert");u(c,f,Oe,"\u2225","\\lVert");u(c,f,Ne,"?","?");u(c,f,Ne,"!","!");u(c,f,Ne,"\u27E9","\\rangle",!0);u(c,f,Ne,"\u2223","\\rvert");u(c,f,Ne,"\u2225","\\rVert");u(c,f,y,"=","=");u(c,f,y,":",":");u(c,f,y,"\u2248","\\approx",!0);u(c,f,y,"\u2245","\\cong",!0);u(c,f,y,"\u2265","\\ge");u(c,f,y,"\u2265","\\geq",!0);u(c,f,y,"\u2190","\\gets");u(c,f,y,">","\\gt",!0);u(c,f,y,"\u2208","\\in",!0);u(c,f,y,"\uE020","\\@not");u(c,f,y,"\u2282","\\subset",!0);u(c,f,y,"\u2283","\\supset",!0);u(c,f,y,"\u2286","\\subseteq",!0);u(c,f,y,"\u2287","\\supseteq",!0);u(c,b,y,"\u2288","\\nsubseteq",!0);u(c,b,y,"\u2289","\\nsupseteq",!0);u(c,f,y,"\u22A8","\\models");u(c,f,y,"\u2190","\\leftarrow",!0);u(c,f,y,"\u2264","\\le");u(c,f,y,"\u2264","\\leq",!0);u(c,f,y,"<","\\lt",!0);u(c,f,y,"\u2192","\\rightarrow",!0);u(c,f,y,"\u2192","\\to");u(c,b,y,"\u2271","\\ngeq",!0);u(c,b,y,"\u2270","\\nleq",!0);u(c,f,dt,"\xA0","\\ ");u(c,f,dt,"\xA0","\\space");u(c,f,dt,"\xA0","\\nobreakspace");u(T,f,dt,"\xA0","\\ ");u(T,f,dt,"\xA0"," ");u(T,f,dt,"\xA0","\\space");u(T,f,dt,"\xA0","\\nobreakspace");u(c,f,dt,"","\\nobreak");u(c,f,dt,"","\\allowbreak");u(c,f,cr,",",",");u(c,f,cr,";",";");u(c,b,O,"\u22BC","\\barwedge",!0);u(c,b,O,"\u22BB","\\veebar",!0);u(c,f,O,"\u2299","\\odot",!0);u(c,f,O,"\u2295","\\oplus",!0);u(c,f,O,"\u2297","\\otimes",!0);u(c,f,x,"\u2202","\\partial",!0);u(c,f,O,"\u2298","\\oslash",!0);u(c,b,O,"\u229A","\\circledcirc",!0);u(c,b,O,"\u22A1","\\boxdot",!0);u(c,f,O,"\u25B3","\\bigtriangleup");u(c,f,O,"\u25BD","\\bigtriangledown");u(c,f,O,"\u2020","\\dagger");u(c,f,O,"\u22C4","\\diamond");u(c,f,O,"\u22C6","\\star");u(c,f,O,"\u25C3","\\triangleleft");u(c,f,O,"\u25B9","\\triangleright");u(c,f,Oe,"{","\\{");u(T,f,x,"{","\\{");u(T,f,x,"{","\\textbraceleft");u(c,f,Ne,"}","\\}");u(T,f,x,"}","\\}");u(T,f,x,"}","\\textbraceright");u(c,f,Oe,"{","\\lbrace");u(c,f,Ne,"}","\\rbrace");u(c,f,Oe,"[","\\lbrack",!0);u(T,f,x,"[","\\lbrack",!0);u(c,f,Ne,"]","\\rbrack",!0);u(T,f,x,"]","\\rbrack",!0);u(c,f,Oe,"(","\\lparen",!0);u(c,f,Ne,")","\\rparen",!0);u(T,f,x,"<","\\textless",!0);u(T,f,x,">","\\textgreater",!0);u(c,f,Oe,"\u230A","\\lfloor",!0);u(c,f,Ne,"\u230B","\\rfloor",!0);u(c,f,Oe,"\u2308","\\lceil",!0);u(c,f,Ne,"\u2309","\\rceil",!0);u(c,f,x,"\\","\\backslash");u(c,f,x,"\u2223","|");u(c,f,x,"\u2223","\\vert");u(T,f,x,"|","\\textbar",!0);u(c,f,x,"\u2225","\\|");u(c,f,x,"\u2225","\\Vert");u(T,f,x,"\u2225","\\textbardbl");u(T,f,x,"~","\\textasciitilde");u(T,f,x,"\\","\\textbackslash");u(T,f,x,"^","\\textasciicircum");u(c,f,y,"\u2191","\\uparrow",!0);u(c,f,y,"\u21D1","\\Uparrow",!0);u(c,f,y,"\u2193","\\downarrow",!0);u(c,f,y,"\u21D3","\\Downarrow",!0);u(c,f,y,"\u2195","\\updownarrow",!0);u(c,f,y,"\u21D5","\\Updownarrow",!0);u(c,f,ge,"\u2210","\\coprod");u(c,f,ge,"\u22C1","\\bigvee");u(c,f,ge,"\u22C0","\\bigwedge");u(c,f,ge,"\u2A04","\\biguplus");u(c,f,ge,"\u22C2","\\bigcap");u(c,f,ge,"\u22C3","\\bigcup");u(c,f,ge,"\u222B","\\int");u(c,f,ge,"\u222B","\\intop");u(c,f,ge,"\u222C","\\iint");u(c,f,ge,"\u222D","\\iiint");u(c,f,ge,"\u220F","\\prod");u(c,f,ge,"\u2211","\\sum");u(c,f,ge,"\u2A02","\\bigotimes");u(c,f,ge,"\u2A01","\\bigoplus");u(c,f,ge,"\u2A00","\\bigodot");u(c,f,ge,"\u222E","\\oint");u(c,f,ge,"\u222F","\\oiint");u(c,f,ge,"\u2230","\\oiiint");u(c,f,ge,"\u2A06","\\bigsqcup");u(c,f,ge,"\u222B","\\smallint");u(T,f,Wt,"\u2026","\\textellipsis");u(c,f,Wt,"\u2026","\\mathellipsis");u(T,f,Wt,"\u2026","\\ldots",!0);u(c,f,Wt,"\u2026","\\ldots",!0);u(c,f,Wt,"\u22EF","\\@cdots",!0);u(c,f,Wt,"\u22F1","\\ddots",!0);u(c,f,x,"\u22EE","\\varvdots");u(T,f,x,"\u22EE","\\varvdots");u(c,f,ae,"\u02CA","\\acute");u(c,f,ae,"\u02CB","\\grave");u(c,f,ae,"\xA8","\\ddot");u(c,f,ae,"~","\\tilde");u(c,f,ae,"\u02C9","\\bar");u(c,f,ae,"\u02D8","\\breve");u(c,f,ae,"\u02C7","\\check");u(c,f,ae,"^","\\hat");u(c,f,ae,"\u20D7","\\vec");u(c,f,ae,"\u02D9","\\dot");u(c,f,ae,"\u02DA","\\mathring");u(c,f,P,"\uE131","\\@imath");u(c,f,P,"\uE237","\\@jmath");u(c,f,x,"\u0131","\u0131");u(c,f,x,"\u0237","\u0237");u(T,f,x,"\u0131","\\i",!0);u(T,f,x,"\u0237","\\j",!0);u(T,f,x,"\xDF","\\ss",!0);u(T,f,x,"\xE6","\\ae",!0);u(T,f,x,"\u0153","\\oe",!0);u(T,f,x,"\xF8","\\o",!0);u(T,f,x,"\xC6","\\AE",!0);u(T,f,x,"\u0152","\\OE",!0);u(T,f,x,"\xD8","\\O",!0);u(T,f,ae,"\u02CA","\\'");u(T,f,ae,"\u02CB","\\`");u(T,f,ae,"\u02C6","\\^");u(T,f,ae,"\u02DC","\\~");u(T,f,ae,"\u02C9","\\=");u(T,f,ae,"\u02D8","\\u");u(T,f,ae,"\u02D9","\\.");u(T,f,ae,"\xB8","\\c");u(T,f,ae,"\u02DA","\\r");u(T,f,ae,"\u02C7","\\v");u(T,f,ae,"\xA8",'\\"');u(T,f,ae,"\u02DD","\\H");u(T,f,ae,"\u25EF","\\textcircled");var Da={"--":!0,"---":!0,"``":!0,"''":!0};u(T,f,x,"\u2013","--",!0);u(T,f,x,"\u2013","\\textendash");u(T,f,x,"\u2014","---",!0);u(T,f,x,"\u2014","\\textemdash");u(T,f,x,"\u2018","`",!0);u(T,f,x,"\u2018","\\textquoteleft");u(T,f,x,"\u2019","'",!0);u(T,f,x,"\u2019","\\textquoteright");u(T,f,x,"\u201C","``",!0);u(T,f,x,"\u201C","\\textquotedblleft");u(T,f,x,"\u201D","''",!0);u(T,f,x,"\u201D","\\textquotedblright");u(c,f,x,"\xB0","\\degree",!0);u(T,f,x,"\xB0","\\degree");u(T,f,x,"\xB0","\\textdegree",!0);u(c,f,x,"\xA3","\\pounds");u(c,f,x,"\xA3","\\mathsterling",!0);u(T,f,x,"\xA3","\\pounds");u(T,f,x,"\xA3","\\textsterling",!0);u(c,b,x,"\u2720","\\maltese");u(T,b,x,"\u2720","\\maltese");var Qi='0123456789/@."';for(Rr=0;Rr<Qi.length;Rr++)nn=Qi.charAt(Rr),u(c,f,x,nn,nn);var nn,Rr,Zi='0123456789!@*()-=+";:?/.,';for(Fr=0;Fr<Zi.length;Fr++)an=Zi.charAt(Fr),u(T,f,x,an,an);var an,Fr,Kr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";for(Hr=0;Hr<Kr.length;Hr++)nr=Kr.charAt(Hr),u(c,f,P,nr,nr),u(T,f,x,nr,nr);var nr,Hr;u(c,b,x,"C","\u2102");u(T,b,x,"C","\u2102");u(c,b,x,"H","\u210D");u(T,b,x,"H","\u210D");u(c,b,x,"N","\u2115");u(T,b,x,"N","\u2115");u(c,b,x,"P","\u2119");u(T,b,x,"P","\u2119");u(c,b,x,"Q","\u211A");u(T,b,x,"Q","\u211A");u(c,b,x,"R","\u211D");u(T,b,x,"R","\u211D");u(c,b,x,"Z","\u2124");u(T,b,x,"Z","\u2124");u(c,f,P,"h","\u210E");u(T,f,P,"h","\u210E");var G;for(Me=0;Me<Kr.length;Me++)se=Kr.charAt(Me),G=String.fromCharCode(55349,56320+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56372+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56424+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56580+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56684+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56736+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56788+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56840+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56944+Me),u(c,f,P,se,G),u(T,f,x,se,G),Me<26&&(G=String.fromCharCode(55349,56632+Me),u(c,f,P,se,G),u(T,f,x,se,G),G=String.fromCharCode(55349,56476+Me),u(c,f,P,se,G),u(T,f,x,se,G));var se,Me;G="\u{1D55C}";u(c,f,P,"k",G);u(T,f,x,"k",G);for(wt=0;wt<10;wt++)lt=wt.toString(),G=String.fromCharCode(55349,57294+wt),u(c,f,P,lt,G),u(T,f,x,lt,G),G=String.fromCharCode(55349,57314+wt),u(c,f,P,lt,G),u(T,f,x,lt,G),G=String.fromCharCode(55349,57324+wt),u(c,f,P,lt,G),u(T,f,x,lt,G),G=String.fromCharCode(55349,57334+wt),u(c,f,P,lt,G),u(T,f,x,lt,G);var lt,wt,wn="\xD0\xDE\xFE";for($r=0;$r<wn.length;$r++)ir=wn.charAt($r),u(c,f,P,ir,ir),u(T,f,x,ir,ir);var ir,$r,kn={mathClass:"mathbf",textClass:"textbf",font:"Main-Bold"},Ji={mathClass:"mathnormal",textClass:"textit",font:"Math-Italic"},ea={mathClass:"boldsymbol",textClass:"boldsymbol",font:"Main-BoldItalic"},qh={mathClass:"mathscr",textClass:"textscr",font:"Script-Regular"},qt={mathClass:"",textClass:"",font:""},ta={mathClass:"mathfrak",textClass:"textfrak",font:"Fraktur-Regular"},ra={mathClass:"mathbb",textClass:"textbb",font:"AMS-Regular"},na={mathClass:"mathboldfrak",textClass:"textboldfrak",font:"Fraktur-Regular"},Sn={mathClass:"mathsf",textClass:"textsf",font:"SansSerif-Regular"},En={mathClass:"mathboldsf",textClass:"textboldsf",font:"SansSerif-Bold"},ia={mathClass:"mathitsf",textClass:"textitsf",font:"SansSerif-Italic"},Mn={mathClass:"mathtt",textClass:"texttt",font:"Typewriter-Regular"},aa=[kn,kn,Ji,Ji,ea,ea,qh,qt,qt,qt,ta,ta,ra,ra,na,na,Sn,Sn,En,En,ia,ia,qt,qt,Mn,Mn],Dh=[kn,qt,Sn,En,Mn],Bh=t=>{var e=t.charCodeAt(0),r=t.charCodeAt(1),n=(e-55296)*1024+(r-56320)+65536;if(119808<=n&&n<120484){var i=Math.floor((n-119808)/26);return aa[i]}else if(120782<=n&&n<=120831){var a=Math.floor((n-120782)/10);return Dh[a]}else{if(n===120485||n===120486)return aa[0];if(120486<n&&n<120782)return qt;throw new N("Unsupported character: "+t)}},i0=function(e,r,n){if(ie[n][e]){var i=ie[n][e].replace;i&&(e=i)}return{value:e,metrics:Hn(e,r,n)}},Ae=function(e,r,n,i,a){var o=i0(e,r,n),s=o.metrics;e=o.value;var l;if(s){var h=s.italic;(n==="text"||i&&i.font==="mathit")&&(h=0),l=new Ce(e,s.height,s.depth,h,s.skew,s.width,a)}else typeof console<"u"&&console.warn("No character metrics "+("for '"+e+"' in style '"+r+"' and mode '"+n+"'")),l=new Ce(e,0,0,0,0,0,a);if(i){l.maxFontSize=i.sizeMultiplier,i.style.isTight()&&l.classes.push("mtight");var d=i.getColor();d&&(l.style.color=d)}return l},$n=function(e,r,n,i){return i===void 0&&(i=[]),n.font==="boldsymbol"&&i0(e,"Main-Bold",r).metrics?Ae(e,"Main-Bold",r,n,i.concat(["mathbf"])):e==="\\"||ie[r][e].font==="main"?Ae(e,"Main-Regular",r,n,i):Ae(e,"AMS-Regular",r,n,i.concat(["amsrm"]))},Oh=function(e,r,n){return n!=="textord"&&i0(e,"Math-BoldItalic",r).metrics?{fontName:"Math-BoldItalic",fontClass:"boldsymbol"}:{fontName:"Main-Bold",fontClass:"mathbf"}},a0=function(e,r,n){var i=e.mode,a=e.text,o=["mord"],{font:s,fontFamily:l,fontWeight:h,fontShape:d}=r,m=i==="math"||i==="text"&&!!s,v=m?s:l,g="",k="";if(a.charCodeAt(0)===55349){var w=Bh(a);g=w.font,k=w[i+"Class"]}if(g)return Ae(a,g,i,r,o.concat(k));if(v){var M,E;if(v==="boldsymbol"){var I=Oh(a,i,n);M=I.fontName,E=[I.fontClass]}else m?(M=Tn[s].fontName,E=[s]):(M=Pr(l,h,d),E=[l,h,d]);if(i0(a,M,i).metrics)return Ae(a,M,i,r,o.concat(E));if(Da.hasOwnProperty(a)&&M.slice(0,10)==="Typewriter"){for(var L=[],B=0;B<a.length;B++)L.push(Ae(a[B],M,i,r,o.concat(E)));return mt(L)}}if(n==="mathord")return Ae(a,"Math-Italic",i,r,o.concat(["mathnormal"]));if(n==="textord"){var q=ie[i][a]&&ie[i][a].font;if(q==="ams"){var H=Pr("amsrm",h,d);return Ae(a,H,i,r,o.concat("amsrm",h,d))}else if(q==="main"||!q){var F=Pr("textrm",h,d);return Ae(a,F,i,r,o.concat(h,d))}else{var X=Pr(q,h,d);return Ae(a,X,i,r,o.concat(X,h,d))}}else throw new Error("unexpected type: "+n+" in makeOrd")},Rh=(t,e)=>{if(Et(t.classes)!==Et(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize||t.italic!==0&&t.hasClass("mathnormal"))return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n of Object.keys(t.style))if(t.style[n]!==e.style[n])return!1;for(var i of Object.keys(e.style))if(t.style[i]!==e.style[i])return!1;return!0},Ba=t=>{for(var e=0;e<t.length-1;e++){var r=t[e],n=t[e+1];r instanceof Ce&&n instanceof Ce&&Rh(r,n)&&(r.text+=n.text,r.height=Math.max(r.height,n.height),r.depth=Math.max(r.depth,n.depth),r.italic=n.italic,t.splice(e+1,1),e--)}return t},Pn=function(e){for(var r=0,n=0,i=0,a=0;a<e.children.length;a++){var o=e.children[a];o.height>r&&(r=o.height),o.depth>n&&(n=o.depth),o.maxFontSize>i&&(i=o.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},A=function(e,r,n,i){var a=new Mt(e,r,n,i);return Pn(a),a},Tt=(t,e,r,n)=>new Mt(t,e,r,n),Yt=function(e,r,n){var i=A([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=_(i.height),i.maxFontSize=1,i},Fh=function(e,r,n,i){var a=new Ut(e,r,n,i);return Pn(a),a},mt=function(e){var r=new St(e);return Pn(r),r},Xt=function(e,r){return e instanceof St?A([],[e],r):e},Hh=function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,o=1;o<r.length;o++){var s=-r[o].shift-a-r[o].elem.depth,l=s-(r[o-1].elem.height+r[o-1].elem.depth);a=a+s,n.push({type:"kern",size:l}),n.push(r[o])}return{children:n,depth:i}}var h;if(e.positionType==="top"){for(var d=e.positionData,m=0;m<e.children.length;m++){var v=e.children[m];d-=v.type==="kern"?v.size:v.elem.height+v.elem.depth}h=d}else if(e.positionType==="bottom")h=-e.positionData;else{var g=e.children[0];if(g.type!=="elem")throw new Error('First child must have type "elem".');if(e.positionType==="shift")h=-g.elem.depth-e.positionData;else if(e.positionType==="firstBaseline")h=-g.elem.depth;else throw new Error("Invalid positionType "+e.positionType+".")}return{children:e.children,depth:h}},J=function(e,r){for(var{children:n,depth:i}=Hh(e),a=0,o=0;o<n.length;o++){var s=n[o];if(s.type==="elem"){var l=s.elem;a=Math.max(a,l.maxFontSize,l.height)}}a+=2;var h=A(["pstrut"],[]);h.style.height=_(a);for(var d=[],m=i,v=i,g=i,k=0;k<n.length;k++){var w=n[k];if(w.type==="kern")g+=w.size;else{var M=w.elem,E=w.wrapperClasses||[],I=w.wrapperStyle||{},L=A(E,[h,M],void 0,I);L.style.top=_(-a-g-M.depth),w.marginLeft&&(L.style.marginLeft=w.marginLeft),w.marginRight&&(L.style.marginRight=w.marginRight),d.push(L),g+=M.height+M.depth}m=Math.min(m,g),v=Math.max(v,g)}var B=A(["vlist"],d);B.style.height=_(v);var q;if(m<0){var H=A([],[]),F=A(["vlist"],[H]);F.style.height=_(-m);var X=A(["vlist-s"],[new Ce("\u200B")]);q=[A(["vlist-r"],[B,X]),A(["vlist-r"],[F])]}else q=[A(["vlist-r"],[B])];var Q=A(["vlist-t"],q);return q.length===2&&Q.classes.push("vlist-t2"),Q.height=v,Q.depth=-m,Q},Oa=(t,e)=>{var r=A(["mspace"],[],e),n=ue(t,e);return r.style.marginRight=_(n),r},Pr=(t,e,r)=>{var n,i;switch(t){case"amsrm":n="AMS";break;case"textrm":n="Main";break;case"textsf":n="SansSerif";break;case"texttt":n="Typewriter";break;default:n=t}return e==="textbf"&&r==="textit"?i="BoldItalic":e==="textbf"?i="Bold":r==="textit"?i="Italic":i="Regular",n+"-"+i},Tn={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},Ra={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Fa=function(e,r){var[n,i,a]=Ra[e],o=new rt(n),s=new Xe([o],{width:_(i),height:_(a),style:"width:"+_(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),l=Tt(["overlay"],[s],r);return l.height=a,l.style.height=_(a),l.style.width=_(i),l},le={number:3,unit:"mu"},Lt={number:4,unit:"mu"},ut={number:5,unit:"mu"},$h={mord:{mop:le,mbin:Lt,mrel:ut,minner:le},mop:{mord:le,mop:le,mrel:ut,minner:le},mbin:{mord:Lt,mop:Lt,mopen:Lt,minner:Lt},mrel:{mord:ut,mop:ut,mopen:ut,minner:ut},mopen:{},mclose:{mop:le,mbin:Lt,mrel:ut,minner:le},mpunct:{mord:le,mop:le,mrel:ut,mopen:le,mclose:le,mpunct:le,minner:le},minner:{mord:le,mop:le,mbin:Lt,mrel:ut,mopen:le,mpunct:le,minner:le}},Ph={mord:{mop:le},mop:{mord:le,mop:le},mbin:{},mrel:{},mopen:{},mclose:{mop:le},mpunct:{},minner:{mop:le}},Ha={},Qr={},Zr={};function D(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:o}=t,s={type:e,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},l=0;l<r.length;++l)Ha[r[l]]=s;e&&(a&&(Qr[e]=a),o&&(Zr[e]=o))}function Dt(t){var{type:e,htmlBuilder:r,mathmlBuilder:n}=t;D({type:e,names:[],props:{numArgs:0},handler(){throw new Error("Should never be called.")},htmlBuilder:r,mathmlBuilder:n})}var Jr=function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},ve=function(e){return e.type==="ordgroup"?e.body:[e]},Gh=new Set(["leftmost","mbin","mopen","mrel","mop","mpunct"]),jh=new Set(["rightmost","mrel","mclose","mpunct"]),Vh={display:U.DISPLAY,text:U.TEXT,script:U.SCRIPT,scriptscript:U.SCRIPTSCRIPT},Uh={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},xe=function(e,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],o=0;o<e.length;o++){var s=ee(e[o],r);if(s instanceof St){var l=s.children;a.push(...l)}else a.push(s)}if(Ba(a),!n)return a;var h=r;if(e.length===1){var d=e[0];d.type==="sizing"?h=r.havingSize(d.size):d.type==="styling"&&(h=r.havingStyle(Vh[d.style]))}var m=A([i[0]||"leftmost"],[],r),v=A([i[1]||"rightmost"],[],r),g=n==="root";return An(a,(k,w)=>{var M=w.classes[0],E=k.classes[0];M==="mbin"&&jh.has(E)?w.classes[0]="mord":E==="mbin"&&Gh.has(M)&&(k.classes[0]="mord")},{node:m},v,g),An(a,(k,w)=>{var M,E,I=Cn(w),L=Cn(k),B=I&&L?k.hasClass("mtight")?(M=Ph[I])==null?void 0:M[L]:(E=$h[I])==null?void 0:E[L]:null;if(B)return Oa(B,h)},{node:m},v,g),a},An=function(e,r,n,i,a){i&&e.push(i);for(var o=0;o<e.length;o++){var s=e[o],l=$a(s);if(l){An(l.children,r,n,null,a);continue}var h=!s.hasClass("mspace");if(h){var d=r(s,n.node);d&&(n.insertAfter?n.insertAfter(d):(e.unshift(d),o++))}h?n.node=s:a&&s.hasClass("newline")&&(n.node=A(["leftmost"])),n.insertAfter=(m=>v=>{e.splice(m+1,0,v),o++})(o)}i&&e.pop()},$a=function(e){return e instanceof St||e instanceof Ut||e instanceof Mt&&e.hasClass("enclosing")?e:null},zn=function(e,r){var n=$a(e);if(n){var i=n.children;if(i.length){if(r==="right")return zn(i[i.length-1],"right");if(r==="left")return zn(i[0],"left")}}return e},Cn=function(e,r){if(!e)return null;r&&(e=zn(e,r));var n=e.classes[0];return Uh[n]||null},hr=function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return A(r.concat(n))},ee=function(e,r,n){if(!e)return A();if(Qr[e.type]){var i=Qr[e.type](e,r);if(n&&r.size!==n.size){i=A(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new N("Got group of unknown type: '"+e.type+"'")};function Gr(t,e){var r=A(["base"],t,e),n=A(["strut"]);return n.style.height=_(r.height+r.depth),r.depth&&(n.style.verticalAlign=_(-r.depth)),r.children.unshift(n),r}function Nn(t,e){var r=null;t.length===1&&t[0].type==="tag"&&(r=t[0].tag,t=t[0].body);var n=xe(t,e,"root"),i;n.length===2&&n[1].hasClass("tag")&&(i=n.pop());for(var a=[],o=[],s=0;s<n.length;s++)if(o.push(n[s]),n[s].hasClass("mbin")||n[s].hasClass("mrel")||n[s].hasClass("allowbreak")){for(var l=!1;s<n.length-1&&n[s+1].hasClass("mspace")&&!n[s+1].hasClass("newline");)s++,o.push(n[s]),n[s].hasClass("nobreak")&&(l=!0);l||(a.push(Gr(o,e)),o=[])}else n[s].hasClass("newline")&&(o.pop(),o.length>0&&(a.push(Gr(o,e)),o=[]),a.push(n[s]));o.length>0&&a.push(Gr(o,e));var h;r?(h=Gr(xe(r,e,!0),e),h.classes=["tag"],a.push(h)):i&&a.push(i);var d=A(["katex-html"],a);if(d.setAttribute("aria-hidden","true"),h){var m=h.children[0];m.style.height=_(d.height+d.depth),d.depth&&(m.style.verticalAlign=_(-d.depth))}return d}function Pa(t){return new St(t)}var C=class{constructor(e,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(e,r){this.attributes[e]=r}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&e.setAttribute(r,this.attributes[r]);this.classes.length>0&&(e.className=Et(this.classes));for(var n=0;n<this.children.length;n++)if(this.children[n]instanceof de&&this.children[n+1]instanceof de){for(var i=this.children[n].toText()+this.children[++n].toText();this.children[n+1]instanceof de;)i+=this.children[++n].toText();e.appendChild(new de(i).toNode())}else e.appendChild(this.children[n].toNode());return e}toMarkup(){var e="<"+this.type;for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&(e+=" "+r+'="',e+=Te(this.attributes[r]),e+='"');this.classes.length>0&&(e+=' class ="'+Te(Et(this.classes))+'"'),e+=">";for(var n=0;n<this.children.length;n++)e+=this.children[n].toMarkup();return e+="</"+this.type+">",e}toText(){return this.children.map(e=>e.toText()).join("")}},de=class{constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return Te(this.toText())}toText(){return this.text}},e0=class{constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character="\u200A":e>=.1666&&e<=.1667?this.character="\u2009":e>=.2222&&e<=.2223?this.character="\u2005":e>=.2777&&e<=.2778?this.character="\u2005\u200A":e>=-.05556&&e<=-.05555?this.character="\u200A\u2063":e>=-.1667&&e<=-.1666?this.character="\u2009\u2063":e>=-.2223&&e<=-.2222?this.character="\u205F\u2063":e>=-.2778&&e<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",_(this.width)),e}toMarkup(){return this.character?"<mtext>"+this.character+"</mtext>":'<mspace width="'+_(this.width)+'"/>'}toText(){return this.character?this.character:" "}},Yh=new Set(["\\imath","\\jmath"]),Xh=new Set(["mrow","mtable"]),Pe=function(e,r,n){return ie[r][e]&&ie[r][e].replace&&e.charCodeAt(0)!==55349&&!(Da.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=ie[r][e].replace),new de(e)},Gn=function(e){return e.length===1?e[0]:new C("mrow",e)},Wh={mathit:"italic",boldsymbol:t=>t.type==="textord"?"bold":"bold-italic",mathbf:"bold",mathbb:"double-struck",mathsfit:"sans-serif-italic",mathfrak:"fraktur",mathscr:"script",mathcal:"script",mathsf:"sans-serif",mathtt:"monospace"},jn=(t,e)=>{if(t.mode==="text"){if(e.fontFamily==="texttt")return"monospace";if(e.fontFamily==="textsf")return e.fontShape==="textit"&&e.fontWeight==="textbf"?"sans-serif-bold-italic":e.fontShape==="textit"?"sans-serif-italic":e.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(e.fontShape==="textit"&&e.fontWeight==="textbf")return"bold-italic";if(e.fontShape==="textit")return"italic";if(e.fontWeight==="textbf")return"bold"}var r=e.font;if(!r||r==="mathnormal")return null;var n=t.mode,i=Wh[r];if(i)return typeof i=="function"?i(t):i;var a=t.text;if(Yh.has(a))return null;if(ie[n][a]){var o=ie[n][a].replace;o&&(a=o)}var s=Tn[r].fontName;return Hn(a,s,n)?Tn[r].variant:null};function on(t){if(!t)return!1;if(t.type==="mi"&&t.children.length===1){var e=t.children[0];return e instanceof de&&e.text==="."}else if(t.type==="mo"&&t.children.length===1&&t.getAttribute("separator")==="true"&&t.getAttribute("lspace")==="0em"&&t.getAttribute("rspace")==="0em"){var r=t.children[0];return r instanceof de&&r.text===","}else return!1}var Re=function(e,r,n){if(e.length===1){var i=re(e[0],r);return n&&i instanceof C&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],o,s=0;s<e.length;s++){var l=re(e[s],r);if(l instanceof C&&o instanceof C){if(l.type==="mtext"&&o.type==="mtext"&&l.getAttribute("mathvariant")===o.getAttribute("mathvariant")){o.children.push(...l.children);continue}else if(l.type==="mn"&&o.type==="mn"){o.children.push(...l.children);continue}else if(on(l)&&o.type==="mn"){o.children.push(...l.children);continue}else if(l.type==="mn"&&on(o))l.children=[...o.children,...l.children],a.pop();else if((l.type==="msup"||l.type==="msub")&&l.children.length>=1&&(o.type==="mn"||on(o))){var h=l.children[0];h instanceof C&&h.type==="mn"&&(h.children=[...o.children,...h.children],a.pop())}else if(o.type==="mi"&&o.children.length===1){var d=o.children[0];if(d instanceof de&&d.text==="\u0338"&&(l.type==="mo"||l.type==="mi"||l.type==="mn")){var m=l.children[0];m instanceof de&&m.text.length>0&&(m.text=m.text.slice(0,1)+"\u0338"+m.text.slice(1),a.pop())}}}a.push(l),o=l}return a},At=function(e,r,n){return Gn(Re(e,r,n))},re=function(e,r){if(!e)return new C("mrow");if(Zr[e.type])return Zr[e.type](e,r);throw new N("Got group of unknown type: '"+e.type+"'")};function oa(t,e,r,n,i){var a=Re(t,r),o;a.length===1&&a[0]instanceof C&&Xh.has(a[0].type)?o=a[0]:o=new C("mrow",a);var s=new C("annotation",[new de(e)]);s.setAttribute("encoding","application/x-tex");var l=new C("semantics",[o,s]),h=new C("math",[l]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var d=i?"katex":"katex-mathml";return A([d],[h])}var Kh=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],sa=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],la=function(e,r){return r.size<2?e:Kh[e-1][r.size-1]},t0=class t{constructor(e){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=e.style,this.color=e.color,this.size=e.size||t.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=sa[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};return Object.assign(r,e),new t(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:la(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:sa[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=la(t.BASESIZE,e);return this.size===r&&this.textSize===t.BASESIZE&&this.style===e?this:this.extend({style:e,size:r})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==t.BASESIZE?["sizing","reset-size"+this.size,"size"+t.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=Lh(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};t0.BASESIZE=6;var Ga=function(e){return new t0({style:e.displayMode?U.DISPLAY:U.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},ja=function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=A(n,[e])}return e},Qh=function(e,r,n){var i=Ga(n),a;if(n.output==="mathml")return oa(e,r,i,n.displayMode,!0);if(n.output==="html"){var o=Nn(e,i);a=A(["katex"],[o])}else{var s=oa(e,r,i,n.displayMode,!1),l=Nn(e,i);a=A(["katex"],[s,l])}return ja(a,n)},Zh=function(e,r,n){var i=Ga(n),a=Nn(e,i),o=A(["katex"],[a]);return ja(o,n)},Jh={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",underbracket:"\u23B5",overbracket:"\u23B4",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},o0=function(e){var r=new C("mo",[new de(Jh[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},ec={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overbracket:[["leftbracketover","rightbracketover"],1.6,440],underbracket:[["leftbracketunder","rightbracketunder"],1.6,410],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},tc=new Set(["widehat","widecheck","widetilde","utilde"]),s0=function(e,r){function n(){var s=4e5,l=e.label.slice(1);if(tc.has(l)&&"base"in e){var h=e.base.type==="ordgroup"?e.base.body.length:1,d,m,v;if(h>5)l==="widehat"||l==="widecheck"?(d=420,s=2364,v=.42,m=l+"4"):(d=312,s=2340,v=.34,m="tilde4");else{var g=[1,1,2,2,3,3][h];l==="widehat"||l==="widecheck"?(s=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],v=[0,.24,.3,.3,.36,.42][g],m=l+g):(s=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],v=[0,.26,.286,.3,.306,.34][g],m="tilde"+g)}var k=new rt(m),w=new Xe([k],{width:"100%",height:_(v),viewBox:"0 0 "+s+" "+d,preserveAspectRatio:"none"});return{span:Tt([],[w],r),minWidth:0,height:v}}else{var M=[],E=ec[l];if(!E)throw new Error('No SVG data for "'+l+'".');var[I,L,B]=E,q=B/1e3,H=I.length,F,X;if(H===1){if(E.length!==4)throw new Error('Expected 4-tuple for single-path SVG data "'+l+'".');F=["hide-tail"],X=[E[3]]}else if(H===2)F=["halfarrow-left","halfarrow-right"],X=["xMinYMin","xMaxYMin"];else if(H===3)F=["brace-left","brace-center","brace-right"],X=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support
`+H+" children.");for(var Q=0;Q<H;Q++){var oe=new rt(I[Q]),ke=new Xe([oe],{width:"400em",height:_(q),viewBox:"0 0 "+s+" "+B,preserveAspectRatio:X[Q]+" slice"}),ne=Tt([F[Q]],[ke],r);if(H===1)return{span:ne,minWidth:L,height:q};ne.style.height=_(q),M.push(ne)}return{span:A(["stretchy"],M,r),minWidth:L,height:q}}}var{span:i,minWidth:a,height:o}=n();return i.height=o,i.style.height=_(o),a>0&&(i.style.minWidth=_(a)),i},rc=function(e,r,n,i,a){var o,s=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(o=A(["stretchy",r],[],a),r==="fbox"){var l=a.color&&a.getColor();l&&(o.style.borderColor=l)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new ur({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new ur({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var d=new Xe(h,{width:"100%",height:_(s)});o=Tt([],[d],a)}return o.height=s,o.style.height=_(s),o},nc={bin:1,close:1,inner:1,open:1,punct:1,rel:1},ic={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1};function ac(t){return t in nc}function W(t,e){if(!t||t.type!==e)throw new Error("Expected node of type "+e+", but got "+(t?"node of type "+t.type:String(t)));return t}function l0(t){var e=u0(t);if(!e)throw new Error("Expected node of symbol group type, but got "+(t?"node of type "+t.type:String(t)));return e}function u0(t){return t&&(t.type==="atom"||ic.hasOwnProperty(t.type))?t:null}var Va=t=>{if(t instanceof Ce)return t;if(Ih(t)&&t.children.length===1)return Va(t.children[0])},Vn=(t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=W(t.base,"accent"),r=n.base,t.base=r,i=Nh(ee(t,e)),t.base=n):(n=W(t,"accent"),r=n.base);var a=ee(r,e.havingCrampedStyle()),o=n.isShifty&&ct(r),s=0;if(o){var l,h;s=(l=(h=Va(a))==null?void 0:h.skew)!=null?l:0}var d=n.label==="\\c",m=d?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),v;if(n.isStretchy)v=s0(n,e),v=J({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:v,wrapperClasses:["svg-align"],wrapperStyle:s>0?{width:"calc(100% - "+_(2*s)+")",marginLeft:_(2*s)}:void 0}]});else{var g,k;n.label==="\\vec"?(g=Fa("vec",e),k=Ra.vec[1]):(g=a0({type:"textord",mode:n.mode,text:n.label},e,"textord"),g=Ch(g),g.italic=0,k=g.width,d&&(m+=g.depth)),v=A(["accent-body"],[g]);var w=n.label==="\\textcircled";w&&(v.classes.push("accent-full"),m=a.height);var M=s;w||(M-=k/2),v.style.left=_(M),n.label==="\\textcircled"&&(v.style.top=".2em"),v=J({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-m},{type:"elem",elem:v}]})}var E=A(["mord","accent"],[v],e);return i?(i.children[0]=E,i.height=Math.max(E.height,i.height),i.classes[0]="mord",i):E},Ua=(t,e)=>{var r=t.isStretchy?o0(t.label):new C("mo",[Pe(t.label,t.mode)]),n=new C("mover",[re(t.base,e),r]);return n.setAttribute("accent","true"),n},oc=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));D({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:(t,e)=>{var r=Jr(e[0]),n=!oc.test(t.funcName),i=!n||t.funcName==="\\widehat"||t.funcName==="\\widetilde"||t.funcName==="\\widecheck";return{type:"accent",mode:t.parser.mode,label:t.funcName,isStretchy:n,isShifty:i,base:r}},htmlBuilder:Vn,mathmlBuilder:Ua});D({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(t,e)=>{var r=e[0],n=t.parser.mode;return n==="math"&&(t.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+t.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:t.funcName,isStretchy:!1,isShifty:!0,base:r}},htmlBuilder:Vn,mathmlBuilder:Ua});D({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},htmlBuilder:(t,e)=>{var r=ee(t.base,e),n=s0(t,e),i=t.label==="\\utilde"?.12:0,a=J({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]});return A(["mord","accentunder"],[a],e)},mathmlBuilder:(t,e)=>{var r=o0(t.label),n=new C("munder",[re(t.base,e),r]);return n.setAttribute("accentunder","true"),n}});var jr=t=>{var e=new C("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e};D({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n,funcName:i}=t;return{type:"xArrow",mode:n.mode,label:i,body:e[0],below:r[0]}},htmlBuilder(t,e){var r=e.style,n=e.havingStyle(r.sup()),i=Xt(ee(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var o;t.below&&(n=e.havingStyle(r.sub()),o=Xt(ee(t.below,n,e),e),o.classes.push(a+"-arrow-pad"));var s=s0(t,e),l=-e.fontMetrics().axisHeight+.5*s.height,h=-e.fontMetrics().axisHeight-.5*s.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(h-=i.depth);var d;if(o){var m=-e.fontMetrics().axisHeight+o.height+.5*s.height+.111;d=J({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:s,shift:l,wrapperClasses:["svg-align"]},{type:"elem",elem:o,shift:m}]})}else d=J({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:s,shift:l,wrapperClasses:["svg-align"]}]});return A(["mrel","x-arrow"],[d],e)},mathmlBuilder(t,e){var r=o0(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=jr(re(t.body,e));if(t.below){var a=jr(re(t.below,e));n=new C("munderover",[r,a,i])}else n=new C("mover",[r,i])}else if(t.below){var o=jr(re(t.below,e));n=new C("munder",[r,o])}else n=jr(),n=new C("mover",[r,n]);return n}});function Ya(t,e){var r=xe(t.body,e,!0);return A([t.mclass],r,e)}function Xa(t,e){var r,n=Re(t.body,e);return t.mclass==="minner"?r=new C("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new C("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new C("mo",n),t.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):t.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):t.mclass==="mopen"||t.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):t.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}D({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:ve(i),isCharacterBox:ct(i)}},htmlBuilder:Ya,mathmlBuilder:Xa});var h0=t=>{var e=t.type==="ordgroup"&&t.body.length?t.body[0]:t;return e.type==="atom"&&(e.family==="bin"||e.family==="rel")?"m"+e.family:"mord"};D({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:h0(e[0]),body:ve(e[1]),isCharacterBox:ct(e[1])}}});D({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],o;n!=="\\stackrel"?o=h0(i):o="mrel";var s={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:ve(i)},l={type:"supsub",mode:a.mode,base:s,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:o,body:[l],isCharacterBox:ct(l)}},htmlBuilder:Ya,mathmlBuilder:Xa});D({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:h0(e[0]),body:ve(e[0])}},htmlBuilder(t,e){var r=xe(t.body,e,!0),n=A([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=Re(t.body,e),n=new C("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});var sc={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},ua=()=>({type:"styling",body:[],mode:"math",style:"display",resetFont:!0}),ha=t=>t.type==="textord"&&t.text==="@",lc=(t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e;function uc(t,e,r){var n=sc[t];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[e[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},o=r.callFunction("\\Big",[a],[]),s=r.callFunction("\\\\cdright",[e[1]],[]),l={type:"ordgroup",mode:"math",body:[i,o,s]};return r.callFunction("\\\\cdparent",[l],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function hc(t){var e=[];for(t.gullet.beginGroup(),t.gullet.macros.set("\\cr","\\\\\\relax"),t.gullet.beginGroup();;){e.push(t.parseExpression(!1,"\\\\")),t.gullet.endGroup(),t.gullet.beginGroup();var r=t.fetch().text;if(r==="&"||r==="\\\\")t.consume();else if(r==="\\end"){e[e.length-1].length===0&&e.pop();break}else throw new N("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a<e.length;a++){for(var o=e[a],s=ua(),l=0;l<o.length;l++)if(!ha(o[l]))s.body.push(o[l]);else{n.push(s),l+=1;var h=l0(o[l]).text,d=new Array(2);if(d[0]={type:"ordgroup",mode:"math",body:[]},d[1]={type:"ordgroup",mode:"math",body:[]},!"=|.".includes(h))if("<>AV".includes(h))for(var m=0;m<2;m++){for(var v=!0,g=l+1;g<o.length;g++){if(lc(o[g],h)){v=!1,l=g;break}if(ha(o[g]))throw new N("Missing a "+h+" character to complete a CD arrow.",o[g]);d[m].body.push(o[g])}if(v)throw new N("Missing a "+h+" character to complete a CD arrow.",o[l])}else throw new N('Expected one of "<>AV=|." after @',o[l]);var k=uc(h,d,t),w={type:"styling",body:[k],mode:"math",style:"display",resetFont:!0};n.push(w),s=ua()}a%2===0?n.push(s):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var M=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:M,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}D({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:e[0]}},htmlBuilder(t,e){var r=e.havingStyle(e.style.sup()),n=Xt(ee(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=_(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new C("mrow",[re(t.label,e)]);return r=new C("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new C("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});D({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(t,e){var{parser:r}=t;return{type:"cdlabelparent",mode:r.mode,fragment:e[0]}},htmlBuilder(t,e){var r=Xt(ee(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new C("mrow",[re(t.fragment,e)])}});D({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=W(e[0],"ordgroup"),i=n.body,a="",o=0;o<i.length;o++){var s=W(i[o],"textord");a+=s.text}var l=parseInt(a),h;if(isNaN(l))throw new N("\\@char has non-numeric argument "+a);if(l<0||l>=1114111)throw new N("\\@char with invalid code point "+a);return l<=65535?h=String.fromCharCode(l):(l-=65536,h=String.fromCharCode((l>>10)+55296,(l&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});var Wa=(t,e)=>{var r=xe(t.body,e.withColor(t.color),!1);return mt(r)},Ka=(t,e)=>{var r=Re(t.body,e.withColor(t.color)),n=new C("mstyle",r);return n.setAttribute("mathcolor",t.color),n};D({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=W(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:ve(i)}},htmlBuilder:Wa,mathmlBuilder:Ka});D({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=W(e[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:Wa,mathmlBuilder:Ka});D({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(t,e,r){var{parser:n}=t,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&W(i,"size").value}},htmlBuilder(t,e){var r=A(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=_(ue(t.size,e)))),r},mathmlBuilder(t,e){var r=new C("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",_(ue(t.size,e)))),r}});var In={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},Qa=t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new N("Expected a control sequence",t);return e},cc=t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},Za=(t,e,r,n)=>{var i=t.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!t.gullet.isExpandable(r.text)}),t.gullet.macros.set(e,i,n)};D({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e,funcName:r}=t;e.consumeSpaces();var n=e.fetch();if(In[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=In[n.text]),W(e.parseFunction(),"internal");throw new N("Invalid token after macro prefix",n)}});D({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new N("Expected a control sequence",n);for(var a=0,o,s=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){o=e.gullet.future(),s[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new N('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new N('Argument number "'+n.text+'" out of order');a++,s.push([])}else{if(n.text==="EOF")throw new N("Expected a macro definition");s[a].push(n.text)}var{tokens:l}=e.gullet.consumeArg();return o&&l.unshift(o),(r==="\\edef"||r==="\\xdef")&&(l=e.gullet.expandTokens(l),l.reverse()),e.gullet.macros.set(i,{tokens:l,numArgs:a,delimiters:s},r===In[r]),{type:"internal",mode:e.mode}}});D({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=Qa(e.gullet.popToken());e.gullet.consumeSpaces();var i=cc(e);return Za(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});D({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=Qa(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return Za(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});var ar=function(e,r,n){var i=ie.math[e]&&ie.math[e].replace,a=Hn(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},Un=function(e,r,n,i){var a=n.havingBaseStyle(r),o=A(i.concat(a.sizingClasses(n)),[e],n),s=a.sizeMultiplier/n.sizeMultiplier;return o.height*=s,o.depth*=s,o.maxFontSize=a.sizeMultiplier,o},Ja=function(e,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=_(a),e.height-=a,e.depth+=a},dc=function(e,r,n,i,a,o){var s=Ae(e,"Main-Regular",a,i),l=Un(s,r,i,o);return n&&Ja(l,i,r),l},mc=function(e,r,n,i){return Ae(e,"Size"+r+"-Regular",n,i)},eo=function(e,r,n,i,a,o){var s=mc(e,r,a,i),l=Un(A(["delimsizing","size"+r],[s],i),U.TEXT,i,o);return n&&Ja(l,i,U.TEXT),l},sn=function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=A(["delimsizinginner",i],[A([],[Ae(e,r,n)])]);return{type:"elem",elem:a}},ln=function(e,r,n){var i=tt["Size4-Regular"][e.charCodeAt(0)]?tt["Size4-Regular"][e.charCodeAt(0)][4]:tt["Size1-Regular"][e.charCodeAt(0)][4],a=new rt("inner",Sh(e,Math.round(1e3*r))),o=new Xe([a],{width:_(i),height:_(r),style:"width:"+_(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),s=Tt([],[o],n);return s.height=r,s.style.height=_(r),s.style.width=_(i),{type:"elem",elem:s}},_n=.008,Vr={type:"kern",size:-1*_n},fc=new Set(["|","\\lvert","\\rvert","\\vert"]),pc=new Set(["\\|","\\lVert","\\rVert","\\Vert"]),to=function(e,r,n,i,a,o){var s,l,h,d,m="",v=0;s=h=d=e,l=null;var g="Size1-Regular";e==="\\uparrow"?h=d="\u23D0":e==="\\Uparrow"?h=d="\u2016":e==="\\downarrow"?s=h="\u23D0":e==="\\Downarrow"?s=h="\u2016":e==="\\updownarrow"?(s="\\uparrow",h="\u23D0",d="\\downarrow"):e==="\\Updownarrow"?(s="\\Uparrow",h="\u2016",d="\\Downarrow"):fc.has(e)?(h="\u2223",m="vert",v=333):pc.has(e)?(h="\u2225",m="doublevert",v=556):e==="["||e==="\\lbrack"?(s="\u23A1",h="\u23A2",d="\u23A3",g="Size4-Regular",m="lbrack",v=667):e==="]"||e==="\\rbrack"?(s="\u23A4",h="\u23A5",d="\u23A6",g="Size4-Regular",m="rbrack",v=667):e==="\\lfloor"||e==="\u230A"?(h=s="\u23A2",d="\u23A3",g="Size4-Regular",m="lfloor",v=667):e==="\\lceil"||e==="\u2308"?(s="\u23A1",h=d="\u23A2",g="Size4-Regular",m="lceil",v=667):e==="\\rfloor"||e==="\u230B"?(h=s="\u23A5",d="\u23A6",g="Size4-Regular",m="rfloor",v=667):e==="\\rceil"||e==="\u2309"?(s="\u23A4",h=d="\u23A5",g="Size4-Regular",m="rceil",v=667):e==="("||e==="\\lparen"?(s="\u239B",h="\u239C",d="\u239D",g="Size4-Regular",m="lparen",v=875):e===")"||e==="\\rparen"?(s="\u239E",h="\u239F",d="\u23A0",g="Size4-Regular",m="rparen",v=875):e==="\\{"||e==="\\lbrace"?(s="\u23A7",l="\u23A8",d="\u23A9",h="\u23AA",g="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(s="\u23AB",l="\u23AC",d="\u23AD",h="\u23AA",g="Size4-Regular"):e==="\\lgroup"||e==="\u27EE"?(s="\u23A7",d="\u23A9",h="\u23AA",g="Size4-Regular"):e==="\\rgroup"||e==="\u27EF"?(s="\u23AB",d="\u23AD",h="\u23AA",g="Size4-Regular"):e==="\\lmoustache"||e==="\u23B0"?(s="\u23A7",d="\u23AD",h="\u23AA",g="Size4-Regular"):(e==="\\rmoustache"||e==="\u23B1")&&(s="\u23AB",d="\u23A9",h="\u23AA",g="Size4-Regular");var k=ar(s,g,a),w=k.height+k.depth,M=ar(h,g,a),E=M.height+M.depth,I=ar(d,g,a),L=I.height+I.depth,B=0,q=1;if(l!==null){var H=ar(l,g,a);B=H.height+H.depth,q=2}var F=w+L+B,X=Math.max(0,Math.ceil((r-F)/(q*E))),Q=F+X*q*E,oe=i.fontMetrics().axisHeight;n&&(oe*=i.sizeMultiplier);var ke=Q/2-oe,ne=[];if(m.length>0){var Qe=Q-w-L,S=Math.round(Q*1e3),R=Eh(m,Math.round(Qe*1e3)),z=new rt(m,R),$=_(v/1e3),j=_(S/1e3),K=new Xe([z],{width:$,height:j,viewBox:"0 0 "+v+" "+S}),Y=Tt([],[K],i);Y.height=S/1e3,Y.style.width=$,Y.style.height=j,ne.push({type:"elem",elem:Y})}else{if(ne.push(sn(d,g,a)),ne.push(Vr),l===null){var Z=Q-w-L+2*_n;ne.push(ln(h,Z,i))}else{var te=(Q-w-L-B)/2+2*_n;ne.push(ln(h,te,i)),ne.push(Vr),ne.push(sn(l,g,a)),ne.push(Vr),ne.push(ln(h,te,i))}ne.push(Vr),ne.push(sn(s,g,a))}var he=i.havingBaseStyle(U.TEXT),ce=J({positionType:"bottom",positionData:ke,children:ne});return Un(A(["delimsizing","mult"],[ce],he),U.TEXT,i,o)},un=80,hn=.08,cn=function(e,r,n,i,a){var o=kh(e,i,n),s=new rt(e,o),l=new Xe([s],{width:"400em",height:_(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Tt(["hide-tail"],[l],a)},vc=function(e,r){var n=r.havingBaseSizing(),i=oo("\\surd",e*n.sizeMultiplier,ao,n),a=n.sizeMultiplier,o=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),s,l,h,d,m;return i.type==="small"?(d=1e3+1e3*o+un,e<1?a=1:e<1.4&&(a=.7),l=(1+o+hn)/a,h=(1+o)/a,s=cn("sqrtMain",l,d,o,r),s.style.minWidth="0.853em",m=.833/a):i.type==="large"?(d=(1e3+un)*or[i.size],h=(or[i.size]+o)/a,l=(or[i.size]+o+hn)/a,s=cn("sqrtSize"+i.size,l,d,o,r),s.style.minWidth="1.02em",m=1/a):(l=e+o+hn,h=e+o,d=Math.floor(1e3*e+o)+un,s=cn("sqrtTall",l,d,o,r),s.style.minWidth="0.742em",m=1.056),s.height=h,s.style.height=_(l),{span:s,advanceWidth:m,ruleWidth:(r.fontMetrics().sqrtRuleThickness+o)*a}},ro=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"]),gc=new Set(["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"]),no=new Set(["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"]),or=[0,1.2,1.8,2.4,3],io=function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),ro.has(e)||no.has(e))return eo(e,r,!1,n,i,a);if(gc.has(e))return to(e,or[r],!1,n,i,a);throw new N("Illegal delimiter: '"+e+"'")},bc=[{type:"small",style:U.SCRIPTSCRIPT},{type:"small",style:U.SCRIPT},{type:"small",style:U.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],yc=[{type:"small",style:U.SCRIPTSCRIPT},{type:"small",style:U.SCRIPT},{type:"small",style:U.TEXT},{type:"stack"}],ao=[{type:"small",style:U.SCRIPTSCRIPT},{type:"small",style:U.SCRIPT},{type:"small",style:U.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],xc=function(e){if(e.type==="small")return"Main-Regular";if(e.type==="large")return"Size"+e.size+"-Regular";if(e.type==="stack")return"Size4-Regular";var r=e.type;throw new Error("Add support for delim type '"+r+"' here.")},oo=function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),o=a;o<n.length;o++){var s=n[o];if(s.type==="stack")break;var l=ar(e,xc(s),"math"),h=l.height+l.depth;if(s.type==="small"){var d=i.havingBaseStyle(s.style);h*=d.sizeMultiplier}if(h>r)return s}return n[n.length-1]},Ln=function(e,r,n,i,a,o){e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle");var s;no.has(e)?s=bc:ro.has(e)?s=ao:s=yc;var l=oo(e,r,s,i);return l.type==="small"?dc(e,l.style,n,i,a,o):l.type==="large"?eo(e,l.size,n,i,a,o):to(e,r,n,i,a,o)},dn=function(e,r,n,i,a,o){var s=i.fontMetrics().axisHeight*i.sizeMultiplier,l=901,h=5/i.fontMetrics().ptPerEm,d=Math.max(r-s,n+s),m=Math.max(d/500*l,2*d-h);return Ln(e,m,!0,i,a,o)},ca={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},wc=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."]);function da(t){return"isMiddle"in t}function c0(t,e){var r=u0(t);if(r&&wc.has(r.text))return r;throw r?new N("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new N("Invalid delimiter type '"+t.type+"'",t)}D({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:(t,e)=>{var r=c0(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:ca[t.funcName].size,mclass:ca[t.funcName].mclass,delim:r.text}},htmlBuilder:(t,e)=>t.delim==="."?A([t.mclass]):io(t.delim,t.size,e,t.mode,[t.mclass]),mathmlBuilder:t=>{var e=[];t.delim!=="."&&e.push(Pe(t.delim,t.mode));var r=new C("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=_(or[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r}});function ma(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}D({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(t,e)=>{var r=t.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new N("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:c0(e[0],t).text,color:r}}});D({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(t,e)=>{var r=c0(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=W(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},htmlBuilder:(t,e)=>{ma(t);for(var r=xe(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,o=0;o<r.length;o++){var s=r[o];da(s)?a=!0:(n=Math.max(r[o].height,n),i=Math.max(r[o].depth,i))}n*=e.sizeMultiplier,i*=e.sizeMultiplier;var l;if(t.left==="."?l=hr(e,["mopen"]):l=dn(t.left,n,i,e,t.mode,["mopen"]),r.unshift(l),a)for(var h=1;h<r.length;h++){var d=r[h];if(da(d)){var m=d.isMiddle;r[h]=dn(m.delim,n,i,m.options,t.mode,[])}}var v;if(t.right===".")v=hr(e,["mclose"]);else{var g=t.rightColor?e.withColor(t.rightColor):e;v=dn(t.right,n,i,g,t.mode,["mclose"])}return r.push(v),A(["minner"],r,e)},mathmlBuilder:(t,e)=>{ma(t);var r=Re(t.body,e);if(t.left!=="."){var n=new C("mo",[Pe(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new C("mo",[Pe(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return Gn(r)}});D({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(t,e)=>{var r=c0(e[0],t);if(!t.parser.leftrightDepth)throw new N("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},htmlBuilder:(t,e)=>{var r;return t.delim==="."?r=hr(e,[]):(r=io(t.delim,1,e,t.mode,[]),r.isMiddle={delim:t.delim,options:e}),r},mathmlBuilder:(t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?Pe("|","text"):Pe(t.delim,t.mode),n=new C("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n}});var d0=(t,e)=>{var r=Xt(ee(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,o,s=ct(t.body);if(n==="sout")a=A(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,o=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var l=ue({number:.6,unit:"pt"},e),h=ue({number:.35,unit:"ex"},e),d=e.havingBaseSizing();i=i/d.sizeMultiplier;var m=r.height+r.depth+l+h;r.style.paddingLeft=_(m/2+l);var v=Math.floor(1e3*m*i),g=xh(v),k=new Xe([new rt("phase",g)],{width:"400em",height:_(v/1e3),viewBox:"0 0 400000 "+v,preserveAspectRatio:"xMinYMin slice"});a=Tt(["hide-tail"],[k],e),a.style.height=_(m),o=r.depth+l+h}else{/cancel/.test(n)?s||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var w,M,E=0;/box/.test(n)?(E=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),w=e.fontMetrics().fboxsep+(n==="colorbox"?0:E),M=w):n==="angl"?(E=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),w=4*E,M=Math.max(0,.25-r.depth)):(w=s?.2:0,M=w),a=rc(r,n,w,M,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=_(E)):n==="angl"&&E!==.049&&(a.style.borderTopWidth=_(E),a.style.borderRightWidth=_(E)),o=r.depth+M,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var I;if(t.backgroundColor)I=J({positionType:"individualShift",children:[{type:"elem",elem:a,shift:o},{type:"elem",elem:r,shift:0}]});else{var L=/cancel|phase/.test(n)?["svg-align"]:[];I=J({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:o,wrapperClasses:L}]})}return/cancel/.test(n)&&(I.height=r.height,I.depth=r.depth),/cancel/.test(n)&&!s?A(["mord","cancel-lap"],[I],e):A(["mord"],[I],e)},m0=(t,e)=>{var r,n=new C(t.label.includes("colorbox")?"mpadded":"menclose",[re(t.body,e)]);switch(t.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),t.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);n.setAttribute("style","border: "+_(i)+" solid "+t.borderColor)}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n};D({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","hbox"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=W(e[0],"color-token").color,o=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:o}},htmlBuilder:d0,mathmlBuilder:m0});D({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","hbox"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=W(e[0],"color-token").color,o=W(e[1],"color-token").color,s=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:o,borderColor:a,body:s}},htmlBuilder:d0,mathmlBuilder:m0});D({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\fbox",body:e[0]}}});D({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\phase"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:d0,mathmlBuilder:m0});D({type:"enclose",names:["\\sout"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t;r.mode==="math"&&r.settings.reportNonstrict("mathVsSout","LaTeX's \\sout works only in text mode");var i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:d0,mathmlBuilder:m0});D({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\angl",body:e[0]}}});var so={};function nt(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:o}=t,s={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},l=0;l<r.length;++l)so[r[l]]=s;a&&(Qr[e]=a),o&&(Zr[e]=o)}var lo={};function p(t,e){lo[t]=e}var qe=class t{constructor(e,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=r,this.end=n}static range(e,r){return r?!e||!e.loc||!r.loc||e.loc.lexer!==r.loc.lexer?null:new t(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}},Be=class t{constructor(e,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=r}range(e,r){return new t(r,qe.range(this,e))}};function fa(t){var e=[];t.consumeSpaces();var r=t.fetch().text;for(r==="\\relax"&&(t.consume(),t.consumeSpaces(),r=t.fetch().text);r==="\\hline"||r==="\\hdashline";)t.consume(),e.push(r==="\\hdashline"),t.consumeSpaces(),r=t.fetch().text;return e}var f0=t=>{var e=t.parser.settings;if(!e.displayMode)throw new N("{"+t.envName+"} can be used only in display mode.")},kc=new Set(["gather","gather*"]);function Yn(t){if(!t.includes("ed"))return!t.includes("*")}function zt(t,e,r){var{hskipBeforeAndAfter:n,addJot:i,cols:a,arraystretch:o,colSeparationType:s,autoTag:l,singleRow:h,emptySingleRow:d,maxNumCols:m,leqno:v}=e;if(t.gullet.beginGroup(),h||t.gullet.macros.set("\\cr","\\\\\\relax"),!o){var g=t.gullet.expandMacroAsText("\\arraystretch");if(g==null)o=1;else if(o=parseFloat(g),!o||o<0)throw new N("Invalid \\arraystretch: "+g)}t.gullet.beginGroup();var k=[],w=[k],M=[],E=[],I=l!=null?[]:void 0;function L(){l&&t.gullet.macros.set("\\@eqnsw","1",!0)}function B(){I&&(t.gullet.macros.get("\\df@tag")?(I.push(t.subparse([new Be("\\df@tag")])),t.gullet.macros.set("\\df@tag",void 0,!0)):I.push(!!l&&t.gullet.macros.get("\\@eqnsw")==="1"))}for(L(),E.push(fa(t));;){var q=t.parseExpression(!1,h?"\\end":"\\\\");t.gullet.endGroup(),t.gullet.beginGroup();var H={type:"ordgroup",mode:t.mode,body:q};r&&(H={type:"styling",mode:t.mode,style:r,resetFont:!0,body:[H]}),k.push(H);var F=t.fetch().text;if(F==="&"){if(m&&k.length===m){if(h||s)throw new N("Too many tab characters: &",t.nextToken);t.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}t.consume()}else if(F==="\\end"){B(),k.length===1&&H.type==="styling"&&H.body.length===1&&H.body[0].type==="ordgroup"&&H.body[0].body.length===0&&(w.length>1||!d)&&w.pop(),E.length<w.length+1&&E.push([]);break}else if(F==="\\\\"){t.consume();var X=void 0;t.gullet.future().text!==" "&&(X=t.parseSizeGroup(!0)),M.push(X?X.value:null),B(),E.push(fa(t)),k=[],w.push(k),L()}else throw new N("Expected & or \\\\ or \\cr or \\end",t.nextToken)}return t.gullet.endGroup(),t.gullet.endGroup(),{type:"array",mode:t.mode,addJot:i,arraystretch:o,body:w,cols:a,rowGaps:M,hskipBeforeAndAfter:n,hLinesBeforeRow:E,colSeparationType:s,tags:I,leqno:v}}function Xn(t){return t.slice(0,1)==="d"?"display":"text"}var it=function(e,r){var n,i,a=e.body.length,o=e.hLinesBeforeRow,s=0,l=new Array(a),h=[],d=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),m=1/r.fontMetrics().ptPerEm,v=5*m;if(e.colSeparationType&&e.colSeparationType==="small"){var g=r.havingStyle(U.SCRIPT).sizeMultiplier;v=.2778*(g/r.sizeMultiplier)}var k=e.colSeparationType==="CD"?ue({number:3,unit:"ex"},r):12*m,w=3*m,M=e.arraystretch*k,E=.7*M,I=.3*M,L=0;function B(Dr){for(var Br=0;Br<Dr.length;++Br)Br>0&&(L+=.25),h.push({pos:L,isDashed:Dr[Br]})}for(B(o[0]),n=0;n<e.body.length;++n){var q=e.body[n],H=E,F=I;s<q.length&&(s=q.length);var X={cells:new Array(q.length),height:0,depth:0,pos:0};for(i=0;i<q.length;++i){var Q=ee(q[i],r);F<Q.depth&&(F=Q.depth),H<Q.height&&(H=Q.height),X.cells[i]=Q}var oe=e.rowGaps[n],ke=0;oe&&(ke=ue(oe,r),ke>0&&(ke+=I,F<ke&&(F=ke),ke=0)),e.addJot&&n<e.body.length-1&&(F+=w),X.height=H,X.depth=F,L+=H,X.pos=L,L+=F+ke,l[n]=X,B(o[n+1])}var ne=L/2+r.fontMetrics().axisHeight,Qe=e.cols||[],S=[],R,z,$=[];if(e.tags&&e.tags.some(Dr=>Dr))for(n=0;n<a;++n){var j=l[n],K=j.pos-ne,Y=e.tags[n],Z=void 0;Y===!0?Z=A(["eqn-num"],[],r):Y===!1?Z=A([],[],r):Z=A([],xe(Y,r,!0),r),Z.depth=j.depth,Z.height=j.height,$.push({type:"elem",elem:Z,shift:K})}for(i=0,z=0;i<s||z<Qe.length;++i,++z){for(var te,he=Qe[z],ce=!0;((Le=he)==null?void 0:Le.type)==="separator";){var Le;if(ce||(R=A(["arraycolsep"],[]),R.style.width=_(r.fontMetrics().doubleRuleSep),S.push(R)),he.separator==="|"||he.separator===":"){var Ye=he.separator==="|"?"solid":"dashed",Se=A(["vertical-separator"],[],r);Se.style.height=_(L),Se.style.borderRightWidth=_(d),Se.style.borderRightStyle=Ye,Se.style.margin="0 "+_(-d/2);var He=L-ne;He&&(Se.style.verticalAlign=_(-He)),S.push(Se)}else throw new N("Invalid separator type: "+he.separator);z++,he=Qe[z],ce=!1}if(!(i>=s)){var Ze=void 0;if(i>0||e.hskipBeforeAndAfter){var Pi,Gi;Ze=(Pi=(Gi=he)==null?void 0:Gi.pregap)!=null?Pi:v,Ze!==0&&(R=A(["arraycolsep"],[]),R.style.width=_(Ze),S.push(R))}var ji=[];for(n=0;n<a;++n){var _r=l[n],Lr=_r.cells[i];if(Lr){var R1=_r.pos-ne;Lr.depth=_r.depth,Lr.height=_r.height,ji.push({type:"elem",elem:Lr,shift:R1})}}var F1=J({positionType:"individualShift",children:ji}),H1=A(["col-align-"+(((te=he)==null?void 0:te.align)||"c")],[F1]);if(S.push(H1),i<s-1||e.hskipBeforeAndAfter){var Vi,Ui;Ze=(Vi=(Ui=he)==null?void 0:Ui.postgap)!=null?Vi:v,Ze!==0&&(R=A(["arraycolsep"],[]),R.style.width=_(Ze),S.push(R))}}}var qr=A(["mtable"],S);if(h.length>0){for(var $1=Yt("hline",r,d),P1=Yt("hdashline",r,d),en=[{type:"elem",elem:qr,shift:0}];h.length>0;){var Yi=h.pop(),Xi=Yi.pos-ne;Yi.isDashed?en.push({type:"elem",elem:P1,shift:Xi}):en.push({type:"elem",elem:$1,shift:Xi})}qr=J({positionType:"individualShift",children:en})}if($.length===0)return A(["mord"],[qr],r);var G1=J({positionType:"individualShift",children:$}),j1=A(["tag"],[G1],r);return mt([qr,j1])},Sc={c:"center ",l:"left ",r:"right "},at=function(e,r){for(var n=[],i=new C("mtd",[],["mtr-glue"]),a=new C("mtd",[],["mml-eqn-num"]),o=0;o<e.body.length;o++){for(var s=e.body[o],l=[],h=0;h<s.length;h++)l.push(new C("mtd",[re(s[h],r)]));e.tags&&e.tags[o]&&(l.unshift(i),l.push(i),e.leqno?l.unshift(a):l.push(a)),n.push(new C("mtr",l))}var d=new C("mtable",n),m=e.arraystretch===.5?.1:.16+e.arraystretch-1+(e.addJot?.09:0);d.setAttribute("rowspacing",_(m));var v="",g="";if(e.cols&&e.cols.length>0){var k=e.cols,w="",M=!1,E=0,I=k.length;k[0].type==="separator"&&(v+="top ",E=1),k[k.length-1].type==="separator"&&(v+="bottom ",I-=1);for(var L=E;L<I;L++){var B=k[L];B.type==="align"?(g+=Sc[B.align],M&&(w+="none "),M=!0):B.type==="separator"&&M&&(w+=B.separator==="|"?"solid ":"dashed ",M=!1)}d.setAttribute("columnalign",g.trim()),/[sd]/.test(w)&&d.setAttribute("columnlines",w.trim())}if(e.colSeparationType==="align"){for(var q=e.cols||[],H="",F=1;F<q.length;F++)H+=F%2?"0em ":"1em ";d.setAttribute("columnspacing",H.trim())}else e.colSeparationType==="alignat"||e.colSeparationType==="gather"?d.setAttribute("columnspacing","0em"):e.colSeparationType==="small"?d.setAttribute("columnspacing","0.2778em"):e.colSeparationType==="CD"?d.setAttribute("columnspacing","0.5em"):d.setAttribute("columnspacing","1em");var X="",Q=e.hLinesBeforeRow;v+=Q[0].length>0?"left ":"",v+=Q[Q.length-1].length>0?"right ":"";for(var oe=1;oe<Q.length-1;oe++)X+=Q[oe].length===0?"none ":Q[oe][0]?"dashed ":"solid ";return/[sd]/.test(X)&&d.setAttribute("rowlines",X.trim()),v!==""&&(d=new C("menclose",[d]),d.setAttribute("notation",v.trim())),e.arraystretch&&e.arraystretch<1&&(d=new C("mstyle",[d]),d.setAttribute("scriptlevel","1")),d},uo=function(e,r){e.envName.includes("ed")||f0(e);var n=[],i=e.envName.includes("at")?"alignat":"align",a=e.envName==="split",o=zt(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:Yn(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),s=0,l=0,h={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var d="",m=0;m<r[0].body.length;m++){var v=W(r[0].body[m],"textord");d+=v.text}s=Number(d),l=s*2}var g=!l;o.body.forEach(function(E){for(var I=1;I<E.length;I+=2){var L=W(E[I],"styling"),B=W(L.body[0],"ordgroup");B.body.unshift(h)}if(g)l<E.length&&(l=E.length);else{var q=E.length/2;if(s<q)throw new N("Too many math in a row: "+("expected "+s+", but got "+q),E[0])}});for(var k=0;k<l;++k){var w="r",M=0;k%2===1?w="l":k>0&&g&&(M=1),n[k]={type:"align",align:w,pregap:M,postgap:0}}return o.colSeparationType=g?"align":"alignat",o};nt({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=u0(e[0]),n=r?[e[0]]:W(e[0],"ordgroup").body,i=n.map(function(o){var s=l0(o),l=s.text;if("lcr".includes(l))return{type:"align",align:l};if(l==="|")return{type:"separator",separator:"|"};if(l===":")return{type:"separator",separator:":"};throw new N("Unknown column alignment: "+l,o)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return zt(t.parser,a,Xn(t.envName))},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(t){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[t.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(t.envName.charAt(t.envName.length-1)==="*"){var i=t.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,!"lcr".includes(r))throw new N("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=zt(t.parser,n,Xn(t.envName)),o=Math.max(0,...a.body.map(s=>s.length));return a.cols=new Array(o).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=zt(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=u0(e[0]),n=r?[e[0]]:W(e[0],"ordgroup").body,i=n.map(function(s){var l=l0(s),h=l.text;if("lc".includes(h))return{type:"align",align:h};throw new N("Unknown column alignment: "+h,s)});if(i.length>1)throw new N("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5},o=zt(t.parser,a,"script");if(o.body.length>0&&o.body[0].length>1)throw new N("{subarray} can contain only one column");return o},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(t){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=zt(t.parser,e,Xn(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.includes("r")?".":"\\{",right:t.envName.includes("r")?"\\}":".",rightColor:void 0}},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:uo,htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){kc.has(t.envName)&&f0(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Yn(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return zt(t.parser,e,"display")},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:uo,htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){f0(t);var e={autoTag:Yn(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return zt(t.parser,e,"display")},htmlBuilder:it,mathmlBuilder:at});nt({type:"array",names:["CD"],props:{numArgs:0},handler(t){return f0(t),hc(t.parser)},htmlBuilder:it,mathmlBuilder:at});p("\\nonumber","\\gdef\\@eqnsw{0}");p("\\notag","\\nonumber");D({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new N(t.funcName+" valid only within array environment")}});var pa=so;D({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];if(i.type!=="ordgroup")throw new N("Invalid environment name",i);for(var a="",o=0;o<i.body.length;++o)a+=W(i.body[o],"textord").text;if(n==="\\begin"){if(!pa.hasOwnProperty(a))throw new N("No such environment: "+a,i);var s=pa[a],{args:l,optArgs:h}=r.parseArguments("\\begin{"+a+"}",s),d={mode:r.mode,envName:a,parser:r},m=s.handler(d,l,h);r.expect("\\end",!1);var v=r.nextToken,g=W(r.parseFunction(),"environment");if(g.name!==a)throw new N("Mismatch: \\begin{"+a+"} matched by \\end{"+g.name+"}",v);return m}return{type:"environment",mode:r.mode,name:a,nameGroup:i}}});var ho=(t,e)=>{var r=t.font,n=e.withFont(r);return ee(t.body,n)},co=(t,e)=>{var r=t.font,n=e.withFont(r);return re(t.body,n)},va={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak"};D({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=Jr(e[0]),a=n;return a in va&&(a=va[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},htmlBuilder:ho,mathmlBuilder:co});D({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(t,e)=>{var{parser:r}=t,n=e[0];return{type:"mclass",mode:r.mode,mclass:h0(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:ct(n)}}});D({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(t,e)=>{var{parser:r,funcName:n,breakOnTokenText:i}=t,{mode:a}=r,o=r.parseExpression(!0,i);return{type:"font",mode:a,font:"math"+n.slice(1),body:{type:"ordgroup",mode:r.mode,body:o}}},htmlBuilder:ho,mathmlBuilder:co});var Ec=(t,e)=>{var r=e.style,n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var o=ee(t.numer,a,e);if(t.continued){var s=8.5/e.fontMetrics().ptPerEm,l=3.5/e.fontMetrics().ptPerEm;o.height=o.height<s?s:o.height,o.depth=o.depth<l?l:o.depth}a=e.havingStyle(i);var h=ee(t.denom,a,e),d,m,v;t.hasBarLine?(t.barSize?(m=ue(t.barSize,e),d=Yt("frac-line",e,m)):d=Yt("frac-line",e),m=d.height,v=d.height):(d=null,m=0,v=e.fontMetrics().defaultRuleThickness);var g,k,w;r.size===U.DISPLAY.size?(g=e.fontMetrics().num1,m>0?k=3*v:k=7*v,w=e.fontMetrics().denom1):(m>0?(g=e.fontMetrics().num2,k=v):(g=e.fontMetrics().num3,k=3*v),w=e.fontMetrics().denom2);var M;if(d){var I=e.fontMetrics().axisHeight;g-o.depth-(I+.5*m)<k&&(g+=k-(g-o.depth-(I+.5*m))),I-.5*m-(h.height-w)<k&&(w+=k-(I-.5*m-(h.height-w)));var L=-(I-.5*m);M=J({positionType:"individualShift",children:[{type:"elem",elem:h,shift:w},{type:"elem",elem:d,shift:L},{type:"elem",elem:o,shift:-g}]})}else{var E=g-o.depth-(h.height-w);E<k&&(g+=.5*(k-E),w+=.5*(k-E)),M=J({positionType:"individualShift",children:[{type:"elem",elem:h,shift:w},{type:"elem",elem:o,shift:-g}]})}a=e.havingStyle(r),M.height*=a.sizeMultiplier/e.sizeMultiplier,M.depth*=a.sizeMultiplier/e.sizeMultiplier;var B;r.size===U.DISPLAY.size?B=e.fontMetrics().delim1:r.size===U.SCRIPTSCRIPT.size?B=e.havingStyle(U.SCRIPT).fontMetrics().delim2:B=e.fontMetrics().delim2;var q,H;return t.leftDelim==null?q=hr(e,["mopen"]):q=Ln(t.leftDelim,B,!0,e.havingStyle(r),t.mode,["mopen"]),t.continued?H=A([]):t.rightDelim==null?H=hr(e,["mclose"]):H=Ln(t.rightDelim,B,!0,e.havingStyle(r),t.mode,["mclose"]),A(["mord"].concat(a.sizingClasses(e)),[q,A(["mfrac"],[M]),H],e)},Mc=(t,e)=>{var r=new C("mfrac",[re(t.numer,e),re(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=ue(t.barSize,e);r.setAttribute("linethickness",_(n))}if(t.leftDelim!=null||t.rightDelim!=null){var i=[];if(t.leftDelim!=null){var a=new C("mo",[new de(t.leftDelim.replace("\\",""))]);a.setAttribute("fence","true"),i.push(a)}if(i.push(r),t.rightDelim!=null){var o=new C("mo",[new de(t.rightDelim.replace("\\",""))]);o.setAttribute("fence","true"),i.push(o)}return Gn(i)}return r},mo=(t,e)=>{if(!e)return t;var r={type:"styling",mode:t.mode,style:e,body:[t]};return r};D({type:"genfrac",names:["\\cfrac","\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1],o,s=null,l=null;switch(n){case"\\cfrac":case"\\dfrac":case"\\frac":case"\\tfrac":o=!0;break;case"\\\\atopfrac":o=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":o=!1,s="(",l=")";break;case"\\\\bracefrac":o=!1,s="\\{",l="\\}";break;case"\\\\brackfrac":o=!1,s="[",l="]";break;default:throw new Error("Unrecognized genfrac command")}var h=n==="\\cfrac",d=null;return h||n.startsWith("\\d")?d="display":n.startsWith("\\t")&&(d="text"),mo({type:"genfrac",mode:r.mode,numer:i,denom:a,continued:h,hasBarLine:o,leftDelim:s,rightDelim:l,barSize:null},d)},htmlBuilder:Ec,mathmlBuilder:Mc});D({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(t){var{parser:e,funcName:r,token:n}=t,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:n}}});var ga=["display","text","script","scriptscript"],ba=function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r};D({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(t,e){var{parser:r}=t,n=e[4],i=e[5],a=Jr(e[0]),o=a.type==="atom"&&a.family==="open"?ba(a.text):null,s=Jr(e[1]),l=s.type==="atom"&&s.family==="close"?ba(s.text):null,h=W(e[2],"size"),d,m=null;h.isBlank?d=!0:(m=h.value,d=m.number>0);var v=null,g=e[3];if(g.type==="ordgroup"){if(g.body.length>0){var k=W(g.body[0],"textord");v=ga[Number(k.text)]}}else g=W(g,"textord"),v=ga[Number(g.text)];return mo({type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:d,barSize:m,leftDelim:o,rightDelim:l},v)}});D({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(t,e){var{parser:r,funcName:n,token:i}=t;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:W(e[0],"size").value,token:i}}});D({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=W(e[1],"infix").size;if(!a)throw new Error("\\\\abovefrac expected size, but got "+String(a));var o=e[2],s=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:o,continued:!1,hasBarLine:s,barSize:a,leftDelim:null,rightDelim:null}}});var fo=(t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?ee(t.sup,e.havingStyle(r.sup()),e):ee(t.sub,e.havingStyle(r.sub()),e),i=W(t.base,"horizBrace")):i=W(t,"horizBrace");var a=ee(i.base,e.havingBaseStyle(U.DISPLAY)),o=s0(i,e),s;if(i.isOver?s=J({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:o,wrapperClasses:["svg-align"]}]}):s=J({positionType:"bottom",positionData:a.depth+.1+o.height,children:[{type:"elem",elem:o,wrapperClasses:["svg-align"]},{type:"kern",size:.1},{type:"elem",elem:a}]}),n){var l=A(["minner",i.isOver?"mover":"munder"],[s],e);i.isOver?s=J({positionType:"firstBaseline",children:[{type:"elem",elem:l},{type:"kern",size:.2},{type:"elem",elem:n}]}):s=J({positionType:"bottom",positionData:l.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:l}]})}return A(["minner",i.isOver?"mover":"munder"],[s],e)},Tc=(t,e)=>{var r=o0(t.label);return new C(t.isOver?"mover":"munder",[re(t.base,e),r])};D({type:"horizBrace",names:["\\overbrace","\\underbrace","\\overbracket","\\underbracket"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:n.includes("\\over"),base:e[0]}},htmlBuilder:fo,mathmlBuilder:Tc});D({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=e[1],i=W(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:ve(n)}:r.formatUnsupportedCmd("\\href")},htmlBuilder:(t,e)=>{var r=xe(t.body,e,!1);return Fh(t.href,[],r,e)},mathmlBuilder:(t,e)=>{var r=At(t.body,e);return r instanceof C||(r=new C("mrow",[r])),r.setAttribute("href",t.href),r}});D({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=W(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a<n.length;a++){var o=n[a];o==="~"&&(o="\\textasciitilde"),i.push({type:"textord",mode:"text",text:o})}var s={type:"text",mode:r.mode,font:"\\texttt",body:i};return{type:"href",mode:r.mode,href:n,body:ve(s)}}});D({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(t,e){var{parser:r}=t;return{type:"hbox",mode:r.mode,body:ve(e[0])}},htmlBuilder(t,e){var r=xe(t.body,e.withFont(""),!1);return mt(r)},mathmlBuilder(t,e){return new C("mrow",Re(t.body,e.withFont("")))}});D({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(t,e)=>{var{parser:r,funcName:n,token:i}=t,a=W(e[0],"raw").string,o=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var s,l={};switch(n){case"\\htmlClass":l.class=a,s={command:"\\htmlClass",class:a};break;case"\\htmlId":l.id=a,s={command:"\\htmlId",id:a};break;case"\\htmlStyle":l.style=a,s={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),d=0;d<h.length;d++){var m=h[d],v=m.indexOf("=");if(v<0)throw new N("\\htmlData key/value '"+m+"' missing equals sign");var g=m.slice(0,v),k=m.slice(v+1);l["data-"+g.trim()]=k}s={command:"\\htmlData",attributes:l};break}default:throw new Error("Unrecognized html command")}return r.settings.isTrusted(s)?{type:"html",mode:r.mode,attributes:l,body:ve(o)}:r.formatUnsupportedCmd(n)},htmlBuilder:(t,e)=>{var r=xe(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=A(n,r,e);for(var a in t.attributes)a!=="class"&&t.attributes.hasOwnProperty(a)&&i.setAttribute(a,t.attributes[a]);return i},mathmlBuilder:(t,e)=>At(t.body,e)});D({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInArgument:!0,allowedInText:!0},handler:(t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:ve(e[0]),mathml:ve(e[1])}},htmlBuilder:(t,e)=>{var r=xe(t.html,e,!1);return mt(r)},mathmlBuilder:(t,e)=>At(t.mathml,e)});var mn=function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!r)throw new N("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!Ia(n))throw new N("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n};D({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(t,e,r)=>{var{parser:n}=t,i={number:0,unit:"em"},a={number:.9,unit:"em"},o={number:0,unit:"em"},s="";if(r[0])for(var l=W(r[0],"raw").string,h=l.split(","),d=0;d<h.length;d++){var m=h[d].split("=");if(m.length===2){var v=m[1].trim();switch(m[0].trim()){case"alt":s=v;break;case"width":i=mn(v);break;case"height":a=mn(v);break;case"totalheight":o=mn(v);break;default:throw new N("Invalid key: '"+m[0]+"' in \\includegraphics.")}}}var g=W(e[0],"url").url;return s===""&&(s=g,s=s.replace(/^.*[\\/]/,""),s=s.substring(0,s.lastIndexOf("."))),n.settings.isTrusted({command:"\\includegraphics",url:g})?{type:"includegraphics",mode:n.mode,alt:s,width:i,height:a,totalheight:o,src:g}:n.formatUnsupportedCmd("\\includegraphics")},htmlBuilder:(t,e)=>{var r=ue(t.height,e),n=0;t.totalheight.number>0&&(n=ue(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=ue(t.width,e));var a={height:_(r+n)};i>0&&(a.width=_(i)),n>0&&(a.verticalAlign=_(-n));var o=new xn(t.src,t.alt,a);return o.height=r,o.depth=n,o},mathmlBuilder:(t,e)=>{var r=new C("mglyph",[]);r.setAttribute("alt",t.alt);var n=ue(t.height,e),i=0;if(t.totalheight.number>0&&(i=ue(t.totalheight,e)-n,r.setAttribute("valign",_(-i))),r.setAttribute("height",_(n+i)),t.width.number>0){var a=ue(t.width,e);r.setAttribute("width",_(a))}return r.setAttribute("src",t.src),r}});D({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=W(e[0],"size");if(r.settings.strict){var a=n[1]==="m",o=i.value.unit==="mu";a?(o||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):o&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(t,e){return Oa(t.dimension,e)},mathmlBuilder(t,e){var r=ue(t.dimension,e);return new e0(r)}});D({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},htmlBuilder:(t,e)=>{var r;t.alignment==="clap"?(r=A([],[ee(t.body,e)]),r=A(["inner"],[r],e)):r=A(["inner"],[ee(t.body,e)]);var n=A(["fix"],[]),i=A([t.alignment],[r,n],e),a=A(["strut"]);return a.style.height=_(i.height+i.depth),i.depth&&(a.style.verticalAlign=_(-i.depth)),i.children.unshift(a),i=A(["thinbox"],[i],e),A(["mord","vbox"],[i],e)},mathmlBuilder:(t,e)=>{var r=new C("mpadded",[re(t.body,e)]);if(t.alignment!=="rlap"){var n=t.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r}});D({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){var{funcName:r,parser:n}=t,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",o=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",resetFont:!0,body:o}}});D({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new N("Mismatched "+t.funcName)}});var ya=(t,e)=>{switch(e.style.size){case U.DISPLAY.size:return t.display;case U.TEXT.size:return t.text;case U.SCRIPT.size:return t.script;case U.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}};D({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:ve(e[0]),text:ve(e[1]),script:ve(e[2]),scriptscript:ve(e[3])}},htmlBuilder:(t,e)=>{var r=ya(t,e),n=xe(r,e,!1);return mt(n)},mathmlBuilder:(t,e)=>{var r=ya(t,e);return At(r,e)}});var po=(t,e,r,n,i,a,o)=>{t=A([],[t]);var s=r&&ct(r),l,h;if(e){var d=ee(e,n.havingStyle(i.sup()),n);h={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-d.depth)}}if(r){var m=ee(r,n.havingStyle(i.sub()),n);l={elem:m,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-m.height)}}var v;if(h&&l){var g=n.fontMetrics().bigOpSpacing5+l.elem.height+l.elem.depth+l.kern+t.depth+o;v=J({positionType:"bottom",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:l.elem,marginLeft:_(-a)},{type:"kern",size:l.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:_(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]})}else if(l){var k=t.height-o;v=J({positionType:"top",positionData:k,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:l.elem,marginLeft:_(-a)},{type:"kern",size:l.kern},{type:"elem",elem:t}]})}else if(h){var w=t.depth+o;v=J({positionType:"bottom",positionData:w,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:_(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]})}else return t;var M=[v];if(l&&a!==0&&!s){var E=A(["mspace"],[],n);E.style.marginRight=_(a),M.unshift(E)}return A(["mop","op-limits"],M,n)},vo=new Set(["\\smallint"]),Kt=(t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=W(t.base,"op"),i=!0):a=W(t,"op");var o=e.style,s=!1;o.size===U.DISPLAY.size&&a.symbol&&!vo.has(a.name)&&(s=!0);var l,h;if(a.symbol){var d=s?"Size2-Regular":"Size1-Regular",m="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(m=a.name.slice(1),a.name=m==="oiint"?"\\iint":"\\iiint"),l=Ae(a.name,d,"math",e,["mop","op-symbol",s?"large-op":"small-op"]),h=l.italic,m.length>0){var v=Fa(m+"Size"+(s?"2":"1"),e);l=J({positionType:"individualShift",children:[{type:"elem",elem:l,shift:0},{type:"elem",elem:v,shift:s?.08:0}]}),a.name="\\"+m,l.classes.unshift("mop"),l.italic=h}}else if(a.body){var g=xe(a.body,e,!0);g.length===1&&g[0]instanceof Ce?(l=g[0],l.classes[0]="mop"):l=A(["mop"],g,e)}else{for(var k=[],w=1;w<a.name.length;w++)k.push($n(a.name[w],a.mode,e));l=A(["mop"],k,e)}var M=0,E=0;if((l instanceof Ce||a.name==="\\oiint"||a.name==="\\oiiint")&&!a.suppressBaseShift){var I;M=(l.height-l.depth)/2-e.fontMetrics().axisHeight,E=(I=l.italic)!=null?I:0}return i?po(l,r,n,e,o,E,M):(M&&(l.style.position="relative",l.style.top=_(M)),l)},dr=(t,e)=>{var r;if(t.symbol)r=new C("mo",[Pe(t.name,t.mode)]),vo.has(t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new C("mo",Re(t.body,e));else{r=new C("mi",[new de(t.name.slice(1))]);var n=new C("mo",[Pe("\u2061","text")]);t.parentIsSupSub?r=new C("mrow",[r,n]):r=Pa([r,n])}return r},Ac={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};D({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=Ac[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},htmlBuilder:Kt,mathmlBuilder:dr});D({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(t,e)=>{var{parser:r}=t,n=e[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:ve(n)}},htmlBuilder:Kt,mathmlBuilder:dr});var zc={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};D({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:Kt,mathmlBuilder:dr});D({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:Kt,mathmlBuilder:dr});D({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0,allowedInArgument:!0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=zc[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:Kt,mathmlBuilder:dr});var go=(t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=W(t.base,"operatorname"),i=!0):a=W(t,"operatorname");var o;if(a.body.length>0){for(var s=a.body.map(m=>{var v="text"in m?m.text:void 0;return typeof v=="string"?{type:"textord",mode:m.mode,text:v}:m}),l=xe(s,e.withFont("mathrm"),!0),h=0;h<l.length;h++){var d=l[h];d instanceof Ce&&(d.text=d.text.replace(/\u2212/,"-").replace(/\u2217/,"*"))}o=A(["mop"],l,e)}else o=A(["mop"],[],e);return i?po(o,r,n,e,e.style,0,0):o},Cc=(t,e)=>{for(var r=Re(t.body,e.withFont("mathrm")),n=!0,i=0;i<r.length;i++){var a=r[i];if(!(a instanceof e0))if(a instanceof C)switch(a.type){case"mi":case"mn":case"mspace":case"mtext":break;case"mo":{var o=a.children[0];a.children.length===1&&o instanceof de?o.text=o.text.replace(/\u2212/,"-").replace(/\u2217/,"*"):n=!1;break}default:n=!1}else n=!1}if(n){var s=r.map(d=>d.toText()).join("");r=[new de(s)]}var l=new C("mi",r);l.setAttribute("mathvariant","normal");var h=new C("mo",[Pe("\u2061","text")]);return t.parentIsSupSub?new C("mrow",[l,h]):Pa([l,h])};D({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"operatorname",mode:r.mode,body:ve(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:go,mathmlBuilder:Cc});p("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");Dt({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?mt(xe(t.body,e,!1)):A(["mord"],xe(t.body,e,!0),e)},mathmlBuilder(t,e){return At(t.body,e,!0)}});D({type:"overline",names:["\\overline"],props:{numArgs:1},handler(t,e){var{parser:r}=t,n=e[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(t,e){var r=ee(t.body,e.havingCrampedStyle()),n=Yt("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=J({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]});return A(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new C("mo",[new de("\u203E")]);r.setAttribute("stretchy","true");var n=new C("mover",[re(t.body,e),r]);return n.setAttribute("accent","true"),n}});D({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=e[0];return{type:"phantom",mode:r.mode,body:ve(n)}},htmlBuilder:(t,e)=>{var r=xe(t.body,e.withPhantom(),!1);return mt(r)},mathmlBuilder:(t,e)=>{var r=Re(t.body,e);return new C("mphantom",r)}});p("\\hphantom","\\smash{\\phantom{#1}}");D({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=e[0];return{type:"vphantom",mode:r.mode,body:n}},htmlBuilder:(t,e)=>{var r=A(["inner"],[ee(t.body,e.withPhantom())]),n=A(["fix"],[]);return A(["mord","rlap"],[r,n],e)},mathmlBuilder:(t,e)=>{var r=Re(ve(t.body),e),n=new C("mphantom",r),i=new C("mpadded",[n]);return i.setAttribute("width","0px"),i}});D({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=W(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=ee(t.body,e),n=ue(t.dy,e);return J({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]})},mathmlBuilder(t,e){var r=new C("mpadded",[re(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});D({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});D({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=W(e[0],"size"),o=W(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&W(i,"size").value,width:a.value,height:o.value}},htmlBuilder(t,e){var r=A(["mord","rule"],[],e),n=ue(t.width,e),i=ue(t.height,e),a=t.shift?ue(t.shift,e):0;return r.style.borderRightWidth=_(n),r.style.borderTopWidth=_(i),r.style.bottom=_(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=ue(t.width,e),n=ue(t.height,e),i=t.shift?ue(t.shift,e):0,a=e.color&&e.getColor()||"black",o=new C("mspace");o.setAttribute("mathbackground",a),o.setAttribute("width",_(r)),o.setAttribute("height",_(n));var s=new C("mpadded",[o]);return i>=0?s.setAttribute("height",_(i)):(s.setAttribute("height",_(i)),s.setAttribute("depth",_(-i))),s.setAttribute("voffset",_(i)),s}});function bo(t,e,r){for(var n=xe(t,e,!1),i=e.sizeMultiplier/r.sizeMultiplier,a=0;a<n.length;a++){var o=n[a].classes.indexOf("sizing");o<0?Array.prototype.push.apply(n[a].classes,e.sizingClasses(r)):n[a].classes[o+1]==="reset-size"+e.size&&(n[a].classes[o+1]="reset-size"+r.size),n[a].height*=i,n[a].depth*=i}return mt(n)}var xa=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],Nc=(t,e)=>{var r=e.havingSize(t.size);return bo(t.body,r,e)};D({type:"sizing",names:xa,props:{numArgs:0,allowedInText:!0},handler:(t,e)=>{var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:xa.indexOf(n)+1,body:a}},htmlBuilder:Nc,mathmlBuilder:(t,e)=>{var r=e.havingSize(t.size),n=Re(t.body,r),i=new C("mstyle",n);return i.setAttribute("mathsize",_(r.sizeMultiplier)),i}});D({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(t,e,r)=>{var{parser:n}=t,i=!1,a=!1,o=r[0]&&W(r[0],"ordgroup");if(o)for(var s,l=0;l<o.body.length;++l){var h=o.body[l];if(s=l0(h).text,s==="t")i=!0;else if(s==="b")a=!0;else{i=!1,a=!1;break}}else i=!0,a=!0;var d=e[0];return{type:"smash",mode:n.mode,body:d,smashHeight:i,smashDepth:a}},htmlBuilder:(t,e)=>{var r=A([],[ee(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0),t.smashDepth&&(r.depth=0),t.smashHeight&&t.smashDepth)return A(["mord","smash"],[r],e);if(r.children)for(var n=0;n<r.children.length;n++)t.smashHeight&&(r.children[n].height=0),t.smashDepth&&(r.children[n].depth=0);var i=J({positionType:"firstBaseline",children:[{type:"elem",elem:r}]});return A(["mord"],[i],e)},mathmlBuilder:(t,e)=>{var r=new C("mpadded",[re(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r}});D({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n}=t,i=r[0],a=e[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(t,e){var r=ee(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=Xt(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.id<U.TEXT.id&&(a=e.fontMetrics().xHeight);var o=i+a/4,s=r.height+r.depth+o+i,{span:l,ruleWidth:h,advanceWidth:d}=vc(s,e),m=l.height-h;m>r.height+r.depth+o&&(o=(o+m-r.height-r.depth)/2);var v=l.height-r.height-o-h;r.style.paddingLeft=_(d);var g=J({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+v)},{type:"elem",elem:l},{type:"kern",size:h}]});if(t.index){var k=e.havingStyle(U.SCRIPTSCRIPT),w=ee(t.index,k,e),M=.6*(g.height-g.depth),E=J({positionType:"shift",positionData:-M,children:[{type:"elem",elem:w}]}),I=A(["root"],[E]);return A(["mord","sqrt"],[I,g],e)}else return A(["mord","sqrt"],[g],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new C("mroot",[re(r,e),re(n,e)]):new C("msqrt",[re(r,e)])}});var qn={display:U.DISPLAY,text:U.TEXT,script:U.SCRIPT,scriptscript:U.SCRIPTSCRIPT};function Ic(t){return t in qn}D({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t,e){var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!0,r),o=n.slice(1,n.length-5);if(!Ic(o))throw new Error("Unknown style: "+o);return{type:"styling",mode:i.mode,style:o,body:a}},htmlBuilder(t,e){var r=qn[t.style],n=e.havingStyle(r);return t.resetFont&&(n=n.withFont("")),bo(t.body,n,e)},mathmlBuilder(t,e){var r=qn[t.style],n=e.havingStyle(r);t.resetFont&&(n=n.withFont(""));var i=Re(t.body,n),a=new C("mstyle",i),o={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},s=o[t.style];return a.setAttribute("scriptlevel",s[0]),a.setAttribute("displaystyle",s[1]),a}});var _c=function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===U.DISPLAY.size||n.alwaysHandleSupSub);return i?Kt:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===U.DISPLAY.size||n.limits);return a?go:null}else{if(n.type==="accent")return ct(n.base)?Vn:null;if(n.type==="horizBrace"){var o=!e.sub;return o===n.isOver?fo:null}else return null}else return null};Dt({type:"supsub",htmlBuilder(t,e){var r=_c(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,o=ee(n,e),s,l,h=e.fontMetrics(),d=0,m=0,v=n&&ct(n);if(i){var g=e.havingStyle(e.style.sup());s=ee(i,g,e),v||(d=o.height-g.fontMetrics().supDrop*g.sizeMultiplier/e.sizeMultiplier)}if(a){var k=e.havingStyle(e.style.sub());l=ee(a,k,e),v||(m=o.depth+k.fontMetrics().subDrop*k.sizeMultiplier/e.sizeMultiplier)}var w;e.style===U.DISPLAY?w=h.sup1:e.style.cramped?w=h.sup3:w=h.sup2;var M=e.sizeMultiplier,E=_(.5/h.ptPerEm/M),I=null;if(l){var L=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");if(o instanceof Ce||L){var B;I=_(-((B=o.italic)!=null?B:0))}}var q;if(s&&l){d=Math.max(d,w,s.depth+.25*h.xHeight),m=Math.max(m,h.sub2);var H=h.defaultRuleThickness,F=4*H;if(d-s.depth-(l.height-m)<F){m=F-(d-s.depth)+l.height;var X=.8*h.xHeight-(d-s.depth);X>0&&(d+=X,m-=X)}var Q=[{type:"elem",elem:l,shift:m,marginRight:E,marginLeft:I},{type:"elem",elem:s,shift:-d,marginRight:E}];q=J({positionType:"individualShift",children:Q})}else if(l){m=Math.max(m,h.sub1,l.height-.8*h.xHeight);var oe=[{type:"elem",elem:l,marginLeft:I,marginRight:E}];q=J({positionType:"shift",positionData:m,children:oe})}else if(s)d=Math.max(d,w,s.depth+.25*h.xHeight),q=J({positionType:"shift",positionData:-d,children:[{type:"elem",elem:s,marginRight:E}]});else throw new Error("supsub must have either sup or sub.");var ke=Cn(o,"right")||"mord";return A([ke],[o,A(["msupsub"],[q])],e)},mathmlBuilder(t,e){var r=!1,n,i;t.base&&t.base.type==="horizBrace"&&(i=!!t.sup,i===t.base.isOver&&(r=!0,n=t.base.isOver)),t.base&&(t.base.type==="op"||t.base.type==="operatorname")&&(t.base.parentIsSupSub=!0);var a=[re(t.base,e)];t.sub&&a.push(re(t.sub,e)),t.sup&&a.push(re(t.sup,e));var o;if(r)o=n?"mover":"munder";else if(t.sub)if(t.sup){var h=t.base;h&&h.type==="op"&&h.limits&&e.style===U.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(e.style===U.DISPLAY||h.limits)?o="munderover":o="msubsup"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===U.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===U.DISPLAY)?o="munder":o="msub"}else{var s=t.base;s&&s.type==="op"&&s.limits&&(e.style===U.DISPLAY||s.alwaysHandleSupSub)||s&&s.type==="operatorname"&&s.alwaysHandleSupSub&&(s.limits||e.style===U.DISPLAY)?o="mover":o="msup"}return new C(o,a)}});Dt({type:"atom",htmlBuilder(t,e){return $n(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new C("mo",[Pe(t.text,t.mode)]);if(t.family==="bin"){var n=jn(t,e);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else t.family==="punct"?r.setAttribute("separator","true"):(t.family==="open"||t.family==="close")&&r.setAttribute("stretchy","false");return r}});var yo={mi:"italic",mn:"normal",mtext:"normal"};Dt({type:"mathord",htmlBuilder(t,e){return a0(t,e,"mathord")},mathmlBuilder(t,e){var r=new C("mi",[Pe(t.text,t.mode,e)]),n=jn(t,e)||"italic";return n!==yo[r.type]&&r.setAttribute("mathvariant",n),r}});Dt({type:"textord",htmlBuilder(t,e){return a0(t,e,"textord")},mathmlBuilder(t,e){var r=Pe(t.text,t.mode,e),n=jn(t,e)||"normal",i;return t.mode==="text"?i=new C("mtext",[r]):/[0-9]/.test(t.text)?i=new C("mn",[r]):t.text==="\\prime"?i=new C("mo",[r]):i=new C("mi",[r]),n!==yo[i.type]&&i.setAttribute("mathvariant",n),i}});var fn={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},pn={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};Dt({type:"spacing",htmlBuilder(t,e){if(pn.hasOwnProperty(t.text)){var r=pn[t.text].className||"";if(t.mode==="text"){var n=a0(t,e,"textord");return n.classes.push(r),n}else return A(["mspace",r],[$n(t.text,t.mode,e)],e)}else{if(fn.hasOwnProperty(t.text))return A(["mspace",fn[t.text]],[],e);throw new N('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(pn.hasOwnProperty(t.text))r=new C("mtext",[new de("\xA0")]);else{if(fn.hasOwnProperty(t.text))return new C("mspace");throw new N('Unknown type of space "'+t.text+'"')}return r}});var wa=()=>{var t=new C("mtd",[]);return t.setAttribute("width","50%"),t};Dt({type:"tag",mathmlBuilder(t,e){var r=new C("mtable",[new C("mtr",[wa(),new C("mtd",[At(t.body,e)]),wa(),new C("mtd",[At(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});var ka={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Sa={"\\textbf":"textbf","\\textmd":"textmd"},Lc={"\\textit":"textit","\\textup":"textup"},Ea=(t,e)=>{var r=t.font;if(r){if(ka[r])return e.withTextFontFamily(ka[r]);if(Sa[r])return e.withTextFontWeight(Sa[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(Lc[r])};D({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"text",mode:r.mode,body:ve(i),font:n}},htmlBuilder(t,e){var r=Ea(t,e),n=xe(t.body,r,!0);return A(["mord","text"],n,r)},mathmlBuilder(t,e){var r=Ea(t,e);return At(t.body,r)}});D({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"underline",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=ee(t.body,e),n=Yt("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=J({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]});return A(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new C("mo",[new de("\u203E")]);r.setAttribute("stretchy","true");var n=new C("munder",[re(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});D({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"vcenter",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=ee(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return J({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]})},mathmlBuilder(t,e){var r=new C("mpadded",[re(t.body,e)],["vcenter"]);return new C("mrow",[r])}});D({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new N("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=Ma(t),n=[],i=e.havingStyle(e.style.text()),a=0;a<r.length;a++){var o=r[a];o==="~"&&(o="\\textasciitilde"),n.push(Ae(o,"Typewriter-Regular",t.mode,i,["mord","texttt"]))}return A(["mord","text"].concat(i.sizingClasses(e)),Ba(n),i)},mathmlBuilder(t,e){var r=new de(Ma(t)),n=new C("mtext",[r]);return n.setAttribute("mathvariant","monospace"),n}});var Ma=t=>t.body.replace(/ /g,t.star?"\u2423":"\xA0"),kt=Ha,xo=`[ \r
]`,qc="\\\\[a-zA-Z@]+",Dc="\\\\[^\uD800-\uDFFF]",Bc="("+qc+")"+xo+"*",Oc=`\\\\(
|[ \r ]+
?)[ \r ]*`,Dn="[\u0300-\u036F]",Rc=new RegExp(Dn+"+$"),Fc="("+xo+"+)|"+(Oc+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(Dn+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(Dn+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+Bc)+("|"+Dc+")"),r0=class{constructor(e,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=r,this.tokenRegex=new RegExp(Fc,"g"),this.catcodes={"%":14,"~":13}}setCatcode(e,r){this.catcodes[e]=r}lex(){var e=this.input,r=this.tokenRegex.lastIndex;if(r===e.length)return new Be("EOF",new qe(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new N("Unexpected character: '"+e[r]+"'",new Be(e[r],new qe(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=e.indexOf(`
`,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=a+1,this.lex()}return new Be(i,new qe(this,r,this.tokenRegex.lastIndex))}},Bn=class{constructor(e,r){e===void 0&&(e={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new N("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var r in e)e.hasOwnProperty(r)&&(e[r]==null?delete this.current[r]:this.current[r]=e[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i<this.undefStack.length;i++)delete this.undefStack[i][e];this.undefStack.length>0&&(this.undefStack[this.undefStack.length-1][e]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}r==null?delete this.current[e]:this.current[e]=r}},Hc=lo;p("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}});p("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}});p("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}});p("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}});p("\\@ifnextchar",function(t){var e=t.consumeArgs(3);t.consumeSpaces();var r=t.future();return e[0].length===1&&e[0][0].text===r.text?{tokens:e[1],numArgs:0}:{tokens:e[2],numArgs:0}});p("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");p("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});var Ta={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};p("\\char",function(t){var e=t.popToken(),r,n=0;if(e.text==="'")r=8,e=t.popToken();else if(e.text==='"')r=16,e=t.popToken();else if(e.text==="`")if(e=t.popToken(),e.text[0]==="\\")n=e.text.charCodeAt(1);else{if(e.text==="EOF")throw new N("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=Ta[e.text],n==null||n>=r)throw new N("Invalid base-"+r+" digit "+e.text);for(var i;(i=Ta[t.future().text])!=null&&i<r;)n*=r,n+=i,t.popToken()}return"\\@char{"+n+"}"});var Wn=(t,e,r,n)=>{var i=t.consumeArg().tokens;if(i.length!==1)throw new N("\\newcommand's first argument must be a macro name");var a=i[0].text,o=t.isDefined(a);if(o&&!e)throw new N("\\newcommand{"+a+"} attempting to redefine "+(a+"; use \\renewcommand"));if(!o&&!r)throw new N("\\renewcommand{"+a+"} when command "+a+" does not yet exist; use \\newcommand");var s=0;if(i=t.consumeArg().tokens,i.length===1&&i[0].text==="["){for(var l="",h=t.expandNextToken();h.text!=="]"&&h.text!=="EOF";)l+=h.text,h=t.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new N("Invalid number of arguments: "+l);s=parseInt(l),i=t.consumeArg().tokens}return o&&n||t.macros.set(a,{tokens:i,numArgs:s}),""};p("\\newcommand",t=>Wn(t,!1,!0,!1));p("\\renewcommand",t=>Wn(t,!0,!1,!1));p("\\providecommand",t=>Wn(t,!0,!0,!0));p("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""});p("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""});p("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),kt[r],ie.math[r],ie.text[r]),""});p("\\bgroup","{");p("\\egroup","}");p("~","\\nobreakspace");p("\\lq","`");p("\\rq","'");p("\\aa","\\r a");p("\\AA","\\r A");p("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");p("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");p("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");p("\u212C","\\mathscr{B}");p("\u2130","\\mathscr{E}");p("\u2131","\\mathscr{F}");p("\u210B","\\mathscr{H}");p("\u2110","\\mathscr{I}");p("\u2112","\\mathscr{L}");p("\u2133","\\mathscr{M}");p("\u211B","\\mathscr{R}");p("\u212D","\\mathfrak{C}");p("\u210C","\\mathfrak{H}");p("\u2128","\\mathfrak{Z}");p("\\Bbbk","\\Bbb{k}");p("\\llap","\\mathllap{\\textrm{#1}}");p("\\rlap","\\mathrlap{\\textrm{#1}}");p("\\clap","\\mathclap{\\textrm{#1}}");p("\\mathstrut","\\vphantom{(}");p("\\underbar","\\underline{\\text{#1}}");p("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}\\nobreak}{\\char"338}');p("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");p("\\ne","\\neq");p("\u2260","\\neq");p("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");p("\u2209","\\notin");p("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");p("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");p("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");p("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");p("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");p("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");p("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");p("\u27C2","\\perp");p("\u203C","\\mathclose{!\\mkern-0.8mu!}");p("\u220C","\\notni");p("\u231C","\\ulcorner");p("\u231D","\\urcorner");p("\u231E","\\llcorner");p("\u231F","\\lrcorner");p("\xA9","\\copyright");p("\xAE","\\textregistered");p("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');p("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');p("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');p("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');p("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");p("\u22EE","\\vdots");p("\\varGamma","\\mathit{\\Gamma}");p("\\varDelta","\\mathit{\\Delta}");p("\\varTheta","\\mathit{\\Theta}");p("\\varLambda","\\mathit{\\Lambda}");p("\\varXi","\\mathit{\\Xi}");p("\\varPi","\\mathit{\\Pi}");p("\\varSigma","\\mathit{\\Sigma}");p("\\varUpsilon","\\mathit{\\Upsilon}");p("\\varPhi","\\mathit{\\Phi}");p("\\varPsi","\\mathit{\\Psi}");p("\\varOmega","\\mathit{\\Omega}");p("\\substack","\\begin{subarray}{c}#1\\end{subarray}");p("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");p("\\boxed","\\fbox{$\\displaystyle{#1}$}");p("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");p("\\implies","\\DOTSB\\;\\Longrightarrow\\;");p("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");p("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");p("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");var Aa={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"},$c=new Set(["bin","rel"]);p("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in Aa?e=Aa[r]:(r.slice(0,4)==="\\not"||r in ie.math&&$c.has(ie.math[r].group))&&(e="\\dotsb"),e});var Kn={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};p("\\dotso",function(t){var e=t.future().text;return e in Kn?"\\ldots\\,":"\\ldots"});p("\\dotsc",function(t){var e=t.future().text;return e in Kn&&e!==","?"\\ldots\\,":"\\ldots"});p("\\cdots",function(t){var e=t.future().text;return e in Kn?"\\@cdots\\,":"\\@cdots"});p("\\dotsb","\\cdots");p("\\dotsm","\\cdots");p("\\dotsi","\\!\\cdots");p("\\dotsx","\\ldots\\,");p("\\DOTSI","\\relax");p("\\DOTSB","\\relax");p("\\DOTSX","\\relax");p("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");p("\\,","\\tmspace+{3mu}{.1667em}");p("\\thinspace","\\,");p("\\>","\\mskip{4mu}");p("\\:","\\tmspace+{4mu}{.2222em}");p("\\medspace","\\:");p("\\;","\\tmspace+{5mu}{.2777em}");p("\\thickspace","\\;");p("\\!","\\tmspace-{3mu}{.1667em}");p("\\negthinspace","\\!");p("\\negmedspace","\\tmspace-{4mu}{.2222em}");p("\\negthickspace","\\tmspace-{5mu}{.277em}");p("\\enspace","\\kern.5em ");p("\\enskip","\\hskip.5em\\relax");p("\\quad","\\hskip1em\\relax");p("\\qquad","\\hskip2em\\relax");p("\\tag","\\@ifstar\\tag@literal\\tag@paren");p("\\tag@paren","\\tag@literal{({#1})}");p("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new N("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});p("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");p("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");p("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");p("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");p("\\newline","\\\\\\relax");p("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var wo=_(tt["Main-Regular"][84][1]-.7*tt["Main-Regular"][65][1]);p("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+wo+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");p("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+wo+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");p("\\hspace","\\@ifstar\\@hspacer\\@hspace");p("\\@hspace","\\hskip #1\\relax");p("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");p("\\ordinarycolon",":");p("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");p("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');p("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');p("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');p("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');p("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');p("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');p("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');p("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');p("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');p("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');p("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');p("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');p("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');p("\u2237","\\dblcolon");p("\u2239","\\eqcolon");p("\u2254","\\coloneqq");p("\u2255","\\eqqcolon");p("\u2A74","\\Coloneqq");p("\\ratio","\\vcentcolon");p("\\coloncolon","\\dblcolon");p("\\colonequals","\\coloneqq");p("\\coloncolonequals","\\Coloneqq");p("\\equalscolon","\\eqqcolon");p("\\equalscoloncolon","\\Eqqcolon");p("\\colonminus","\\coloneq");p("\\coloncolonminus","\\Coloneq");p("\\minuscolon","\\eqcolon");p("\\minuscoloncolon","\\Eqcolon");p("\\coloncolonapprox","\\Colonapprox");p("\\coloncolonsim","\\Colonsim");p("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");p("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");p("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");p("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");p("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");p("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");p("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");p("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");p("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");p("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");p("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");p("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");p("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");p("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");p("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");p("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");p("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");p("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");p("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");p("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");p("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");p("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");p("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");p("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");p("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");p("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");p("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");p("\\imath","\\html@mathml{\\@imath}{\u0131}");p("\\jmath","\\html@mathml{\\@jmath}{\u0237}");p("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");p("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");p("\u27E6","\\llbracket");p("\u27E7","\\rrbracket");p("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");p("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");p("\u2983","\\lBrace");p("\u2984","\\rBrace");p("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");p("\u29B5","\\minuso");p("\\darr","\\downarrow");p("\\dArr","\\Downarrow");p("\\Darr","\\Downarrow");p("\\lang","\\langle");p("\\rang","\\rangle");p("\\uarr","\\uparrow");p("\\uArr","\\Uparrow");p("\\Uarr","\\Uparrow");p("\\N","\\mathbb{N}");p("\\R","\\mathbb{R}");p("\\Z","\\mathbb{Z}");p("\\alef","\\aleph");p("\\alefsym","\\aleph");p("\\Alpha","\\mathrm{A}");p("\\Beta","\\mathrm{B}");p("\\bull","\\bullet");p("\\Chi","\\mathrm{X}");p("\\clubs","\\clubsuit");p("\\cnums","\\mathbb{C}");p("\\Complex","\\mathbb{C}");p("\\Dagger","\\ddagger");p("\\diamonds","\\diamondsuit");p("\\empty","\\emptyset");p("\\Epsilon","\\mathrm{E}");p("\\Eta","\\mathrm{H}");p("\\exist","\\exists");p("\\harr","\\leftrightarrow");p("\\hArr","\\Leftrightarrow");p("\\Harr","\\Leftrightarrow");p("\\hearts","\\heartsuit");p("\\image","\\Im");p("\\infin","\\infty");p("\\Iota","\\mathrm{I}");p("\\isin","\\in");p("\\Kappa","\\mathrm{K}");p("\\larr","\\leftarrow");p("\\lArr","\\Leftarrow");p("\\Larr","\\Leftarrow");p("\\lrarr","\\leftrightarrow");p("\\lrArr","\\Leftrightarrow");p("\\Lrarr","\\Leftrightarrow");p("\\Mu","\\mathrm{M}");p("\\natnums","\\mathbb{N}");p("\\Nu","\\mathrm{N}");p("\\Omicron","\\mathrm{O}");p("\\plusmn","\\pm");p("\\rarr","\\rightarrow");p("\\rArr","\\Rightarrow");p("\\Rarr","\\Rightarrow");p("\\real","\\Re");p("\\reals","\\mathbb{R}");p("\\Reals","\\mathbb{R}");p("\\Rho","\\mathrm{P}");p("\\sdot","\\cdot");p("\\sect","\\S");p("\\spades","\\spadesuit");p("\\sub","\\subset");p("\\sube","\\subseteq");p("\\supe","\\supseteq");p("\\Tau","\\mathrm{T}");p("\\thetasym","\\vartheta");p("\\weierp","\\wp");p("\\Zeta","\\mathrm{Z}");p("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");p("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");p("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");p("\\bra","\\mathinner{\\langle{#1}|}");p("\\ket","\\mathinner{|{#1}\\rangle}");p("\\braket","\\mathinner{\\langle{#1}\\rangle}");p("\\Bra","\\left\\langle#1\\right|");p("\\Ket","\\left|#1\\right\\rangle");var ko=t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,o=e.macros.get("|"),s=e.macros.get("\\|");e.macros.beginGroup();var l=m=>v=>{t&&(v.macros.set("|",o),i.length&&v.macros.set("\\|",s));var g=m;if(!m&&i.length){var k=v.future();k.text==="|"&&(v.popToken(),g=!0)}return{tokens:g?i:n,numArgs:0}};e.macros.set("|",l(!1)),i.length&&e.macros.set("\\|",l(!0));var h=e.consumeArg().tokens,d=e.expandTokens([...a,...h,...r]);return e.macros.endGroup(),{tokens:d.reverse(),numArgs:0}};p("\\bra@ket",ko(!1));p("\\bra@set",ko(!0));p("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");p("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");p("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");p("\\angln","{\\angl n}");p("\\blue","\\textcolor{##6495ed}{#1}");p("\\orange","\\textcolor{##ffa500}{#1}");p("\\pink","\\textcolor{##ff00af}{#1}");p("\\red","\\textcolor{##df0030}{#1}");p("\\green","\\textcolor{##28ae7b}{#1}");p("\\gray","\\textcolor{gray}{#1}");p("\\purple","\\textcolor{##9d38bd}{#1}");p("\\blueA","\\textcolor{##ccfaff}{#1}");p("\\blueB","\\textcolor{##80f6ff}{#1}");p("\\blueC","\\textcolor{##63d9ea}{#1}");p("\\blueD","\\textcolor{##11accd}{#1}");p("\\blueE","\\textcolor{##0c7f99}{#1}");p("\\tealA","\\textcolor{##94fff5}{#1}");p("\\tealB","\\textcolor{##26edd5}{#1}");p("\\tealC","\\textcolor{##01d1c1}{#1}");p("\\tealD","\\textcolor{##01a995}{#1}");p("\\tealE","\\textcolor{##208170}{#1}");p("\\greenA","\\textcolor{##b6ffb0}{#1}");p("\\greenB","\\textcolor{##8af281}{#1}");p("\\greenC","\\textcolor{##74cf70}{#1}");p("\\greenD","\\textcolor{##1fab54}{#1}");p("\\greenE","\\textcolor{##0d923f}{#1}");p("\\goldA","\\textcolor{##ffd0a9}{#1}");p("\\goldB","\\textcolor{##ffbb71}{#1}");p("\\goldC","\\textcolor{##ff9c39}{#1}");p("\\goldD","\\textcolor{##e07d10}{#1}");p("\\goldE","\\textcolor{##a75a05}{#1}");p("\\redA","\\textcolor{##fca9a9}{#1}");p("\\redB","\\textcolor{##ff8482}{#1}");p("\\redC","\\textcolor{##f9685d}{#1}");p("\\redD","\\textcolor{##e84d39}{#1}");p("\\redE","\\textcolor{##bc2612}{#1}");p("\\maroonA","\\textcolor{##ffbde0}{#1}");p("\\maroonB","\\textcolor{##ff92c6}{#1}");p("\\maroonC","\\textcolor{##ed5fa6}{#1}");p("\\maroonD","\\textcolor{##ca337c}{#1}");p("\\maroonE","\\textcolor{##9e034e}{#1}");p("\\purpleA","\\textcolor{##ddd7ff}{#1}");p("\\purpleB","\\textcolor{##c6b9fc}{#1}");p("\\purpleC","\\textcolor{##aa87ff}{#1}");p("\\purpleD","\\textcolor{##7854ab}{#1}");p("\\purpleE","\\textcolor{##543b78}{#1}");p("\\mintA","\\textcolor{##f5f9e8}{#1}");p("\\mintB","\\textcolor{##edf2df}{#1}");p("\\mintC","\\textcolor{##e0e5cc}{#1}");p("\\grayA","\\textcolor{##f6f7f7}{#1}");p("\\grayB","\\textcolor{##f0f1f2}{#1}");p("\\grayC","\\textcolor{##e3e5e6}{#1}");p("\\grayD","\\textcolor{##d6d8da}{#1}");p("\\grayE","\\textcolor{##babec2}{#1}");p("\\grayF","\\textcolor{##888d93}{#1}");p("\\grayG","\\textcolor{##626569}{#1}");p("\\grayH","\\textcolor{##3b3e40}{#1}");p("\\grayI","\\textcolor{##21242c}{#1}");p("\\kaBlue","\\textcolor{##314453}{#1}");p("\\kaGreen","\\textcolor{##71B307}{#1}");var So={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},On=class{constructor(e,r,n){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=r,this.expansionCount=0,this.feed(e),this.macros=new Bn(Hc,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new r0(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var r,n,i;if(e){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new Be("EOF",n.loc)),this.pushTokens(i),new Be("",qe.range(r,n))}consumeSpaces(){for(;;){var e=this.future();if(e.text===" ")this.stack.pop();else break}}consumeArg(e){var r=[],n=e&&e.length>0;n||this.consumeSpaces();var i=this.future(),a,o=0,s=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++o;else if(a.text==="}"){if(--o,o===-1)throw new N("Extra }",a)}else if(a.text==="EOF")throw new N("Unexpected end of input in a macro argument, expected '"+(e&&n?e[s]:"}")+"'",a);if(e&&n)if((o===0||o===1&&e[s]==="{")&&a.text===e[s]){if(++s,s===e.length){r.splice(-s,s);break}}else s=0}while(o!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(e,r){if(r){if(r.length!==e+1)throw new N("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;i<n.length;i++){var a=this.popToken();if(n[i]!==a.text)throw new N("Use of the macro doesn't match its definition",a)}}for(var o=[],s=0;s<e;s++)o.push(this.consumeArg(r&&r[s+1]).tokens);return o}countExpansion(e){if(this.expansionCount+=e,this.expansionCount>this.settings.maxExpand)throw new N("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||e&&i.unexpandable){if(e&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new N("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,o=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var s=a.length-1;s>=0;--s){var l=a[s];if(l.text==="#"){if(s===0)throw new N("Incomplete placeholder at end of macro body",l);if(l=a[--s],l.text==="#")a.splice(s+1,1);else if(/^[1-9]$/.test(l.text))a.splice(s,2,...o[+l.text-1]);else throw new N("Not a valid argument number",l)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}}expandMacro(e){return this.macros.has(e)?this.expandTokens([new Be(e)]):void 0}expandTokens(e){var r=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(e){var r=this.expandMacro(e);return r&&r.map(n=>n.text).join("")}_getExpansion(e){var r=this.macros.get(e);if(r==null)return r;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.includes("#"))for(var o=i.replace(/##/g,"");o.includes("#"+(a+1));)++a;for(var s=new r0(i,this.settings),l=[],h=s.lex();h.text!=="EOF";)l.push(h),h=s.lex();l.reverse();var d={tokens:l,numArgs:a};return d}return i}isDefined(e){return this.macros.has(e)||kt.hasOwnProperty(e)||ie.math.hasOwnProperty(e)||ie.text.hasOwnProperty(e)||So.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:kt.hasOwnProperty(e)&&!kt[e].primitive}},za=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,Ur=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),vn={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},Ca={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},n0=class t{constructor(e,r){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 On(e,r,this.mode),this.settings=r,this.leftrightDepth=0,this.nextToken=null}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new N("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var r=this.nextToken;this.consume(),this.gullet.pushToken(new Be("}")),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(e,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(t.endOfExpression.has(i.text)||r&&i.text===r||e&&kt[i.text]&&kt[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(e){for(var r=-1,n,i=0;i<e.length;i++){var a=e[i];if(a.type==="infix"){if(r!==-1)throw new N("only one infix operator per group",a.token);r=i,n=a.replaceWith}}if(r!==-1&&n){var o,s,l=e.slice(0,r),h=e.slice(r+1);l.length===1&&l[0].type==="ordgroup"?o=l[0]:o={type:"ordgroup",mode:this.mode,body:l},h.length===1&&h[0].type==="ordgroup"?s=h[0]:s={type:"ordgroup",mode:this.mode,body:h};var d;return n==="\\\\abovefrac"?d=this.callFunction(n,[o,e[r],s],[]):d=this.callFunction(n,[o,s],[]),[d]}else return e}handleSupSubscript(e){var r=this.fetch(),n=r.text;this.consume(),this.consumeSpaces();var i;do{var a;i=this.parseGroup(e)}while(((a=i)==null?void 0:a.type)==="internal");if(!i)throw new N("Expected group after '"+n+"'",r);return i}formatUnsupportedCmd(e){for(var r=[],n=0;n<e.length;n++)r.push({type:"textord",mode:"text",text:e[n]});var i={type:"text",mode:this.mode,body:r},a={type:"color",mode:this.mode,color:this.settings.errorColor,body:[i]};return a}parseAtom(e){var r=this.parseGroup("atom",e);if(r?.type==="internal"||this.mode==="text")return r;for(var n,i;;){this.consumeSpaces();var a=this.fetch();if(a.text==="\\limits"||a.text==="\\nolimits"){if(r&&r.type==="op"){var o=a.text==="\\limits";r.limits=o,r.alwaysHandleSupSub=!0}else if(r&&r.type==="operatorname")r.alwaysHandleSupSub&&(r.limits=a.text==="\\limits");else throw new N("Limit controls must follow a math operator",a);this.consume()}else if(a.text==="^"){if(n)throw new N("Double superscript",a);n=this.handleSupSubscript("superscript")}else if(a.text==="_"){if(i)throw new N("Double subscript",a);i=this.handleSupSubscript("subscript")}else if(a.text==="'"){if(n)throw new N("Double superscript",a);var s={type:"textord",mode:this.mode,text:"\\prime"},l=[s];for(this.consume();this.fetch().text==="'";)l.push(s),this.consume();this.fetch().text==="^"&&l.push(this.handleSupSubscript("superscript")),n={type:"ordgroup",mode:this.mode,body:l}}else if(Ur[a.text]){var h=za.test(a.text),d=[];for(d.push(new Be(Ur[a.text])),this.consume();;){var m=this.fetch().text;if(!Ur[m]||za.test(m)!==h)break;d.unshift(new Be(Ur[m])),this.consume()}var v=this.subparse(d);h?i={type:"ordgroup",mode:"math",body:v}:n={type:"ordgroup",mode:"math",body:v}}else break}return n||i?{type:"supsub",mode:this.mode,base:r,sup:n,sub:i}:r}parseFunction(e,r){var n=this.fetch(),i=n.text,a=kt[i];if(!a)return null;if(this.consume(),r&&r!=="atom"&&!a.allowedInArgument)throw new N("Got function '"+i+"' with no arguments"+(r?" as "+r:""),n);if(this.mode==="text"&&!a.allowedInText)throw new N("Can't use function '"+i+"' in text mode",n);if(this.mode==="math"&&a.allowedInMath===!1)throw new N("Can't use function '"+i+"' in math mode",n);var{args:o,optArgs:s}=this.parseArguments(i,a);return this.callFunction(i,o,s,n,e)}callFunction(e,r,n,i,a){var o={funcName:e,parser:this,token:i,breakOnTokenText:a},s=kt[e];if(s&&s.handler)return s.handler(o,r,n);throw new N("No function handler for "+e)}parseArguments(e,r){var n=r.numArgs+r.numOptionalArgs;if(n===0)return{args:[],optArgs:[]};for(var i=[],a=[],o=0;o<n;o++){var s=r.argTypes&&r.argTypes[o],l=o<r.numOptionalArgs;("primitive"in r&&r.primitive&&s==null||r.type==="sqrt"&&o===1&&a[0]==null)&&(s="primitive");var h=this.parseGroupOfType("argument to '"+e+"'",s,l);if(l)a.push(h);else if(h!=null)i.push(h);else throw new N("Null argument, please report this as a bug")}return{args:i,optArgs:a}}parseGroupOfType(e,r,n){switch(r){case"color":return this.parseColorGroup(n);case"size":return this.parseSizeGroup(n);case"url":return this.parseUrlGroup(n);case"math":case"text":return this.parseArgumentGroup(n,r);case"hbox":{var i=this.parseArgumentGroup(n,"text");return i!=null?{type:"styling",mode:i.mode,body:[i],style:"text",resetFont:!0}:null}case"raw":{var a=this.parseStringGroup("raw",n);return a!=null?{type:"raw",mode:"text",string:a.text}:null}case"primitive":{if(n)throw new N("A primitive argument cannot be optional");var o=this.parseGroup(e);if(o==null)throw new N("Expected group as "+e,this.fetch());return o}case"original":case null:case void 0:return this.parseArgumentGroup(n);default:throw new N("Unknown group type as "+e,this.fetch())}}consumeSpaces(){for(;this.fetch().text===" ";)this.consume()}parseStringGroup(e,r){var n=this.gullet.scanArgument(r);if(n==null)return null;for(var i="",a;(a=this.fetch()).text!=="EOF";)i+=a.text,this.consume();return this.consume(),n.text=i,n}parseRegexGroup(e,r){for(var n=this.fetch(),i=n,a="",o;(o=this.fetch()).text!=="EOF"&&e.test(a+o.text);)i=o,a+=i.text,this.consume();if(a==="")throw new N("Invalid "+r+": '"+n.text+"'",n);return n.range(i,a)}parseColorGroup(e){var r=this.parseStringGroup("color",e);if(r==null)return null;var n=/^(#[a-f0-9]{3,4}|#[a-f0-9]{6}|#[a-f0-9]{8}|[a-f0-9]{6}|[a-z]+)$/i.exec(r.text);if(!n)throw new N("Invalid color: '"+r.text+"'",r);var i=n[0];return/^[0-9a-f]{6}$/i.test(i)&&(i="#"+i),{type:"color-token",mode:this.mode,color:i}}parseSizeGroup(e){var r,n=!1;if(this.gullet.consumeSpaces(),!e&&this.gullet.future().text!=="{"?r=this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size"):r=this.parseStringGroup("size",e),!r)return null;!e&&r.text.length===0&&(r.text="0pt",n=!0);var i=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(r.text);if(!i)throw new N("Invalid size: '"+r.text+"'",r);var a={number:+(i[1]+i[2]),unit:i[3]};if(!Ia(a))throw new N("Invalid unit: '"+a.unit+"'",r);return{type:"size",mode:this.mode,value:a,isBlank:n}}parseUrlGroup(e){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var r=this.parseStringGroup("url",e);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),r==null)return null;var n=r.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:n}}parseArgumentGroup(e,r){var n=this.gullet.scanArgument(e);if(n==null)return null;var i=this.mode;r&&this.switchMode(r),this.gullet.beginGroup();var a=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var o={type:"ordgroup",mode:this.mode,loc:n.loc,body:a};return r&&this.switchMode(i),o}parseGroup(e,r){var n=this.fetch(),i=n.text,a;if(i==="{"||i==="\\begingroup"){this.consume();var o=i==="{"?"}":"\\endgroup";this.gullet.beginGroup();var s=this.parseExpression(!1,o),l=this.fetch();this.expect(o),this.gullet.endGroup(),a={type:"ordgroup",mode:this.mode,loc:qe.range(n,l),body:s,semisimple:i==="\\begingroup"||void 0}}else if(a=this.parseFunction(r,e)||this.parseSymbol(),a==null&&i[0]==="\\"&&!So.hasOwnProperty(i)){if(this.settings.throwOnError)throw new N("Undefined control sequence: "+i,n);a=this.formatUnsupportedCmd(i),this.consume()}return a}formLigatures(e){for(var r=e.length-1,n=0;n<r;++n){var i=e[n];if(i.type==="textord"){var a=i.text,o=e[n+1];if(!(!o||o.type!=="textord")){if(a==="-"&&o.text==="-"){var s=e[n+2];n+1<r&&s&&s.type==="textord"&&s.text==="-"?(e.splice(n,3,{type:"textord",mode:"text",loc:qe.range(i,s),text:"---"}),r-=2):(e.splice(n,2,{type:"textord",mode:"text",loc:qe.range(i,o),text:"--"}),r-=1)}(a==="'"||a==="`")&&o.text===a&&(e.splice(n,2,{type:"textord",mode:"text",loc:qe.range(i,o),text:a+a}),r-=1)}}}}parseSymbol(){var e=this.fetch(),r=e.text;if(/^\\verb[^a-zA-Z]/.test(r)){this.consume();var n=r.slice(5),i=n.charAt(0)==="*";if(i&&(n=n.slice(1)),n.length<2||n.charAt(0)!==n.slice(-1))throw new N(`\\verb assertion failed --
please report what input caused this bug`);return n=n.slice(1,-1),{type:"verb",mode:"text",body:n,star:i}}Ca.hasOwnProperty(r[0])&&!ie[this.mode][r[0]]&&(this.settings.strict&&this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+r[0]+'" used in math mode',e),r=Ca[r[0]]+r.slice(1));var a=Rc.exec(r);a&&(r=r.substring(0,a.index),r==="i"?r="\u0131":r==="j"&&(r="\u0237"));var o;if(ie[this.mode][r]){this.settings.strict&&this.mode==="math"&&wn.includes(r)&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var s=ie[this.mode][r].group,l=qe.range(e),h;ac(s)?h={type:"atom",mode:this.mode,family:s,loc:l,text:r}:h={type:s,mode:this.mode,loc:l,text:r},o=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&(Na(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),e)),o={type:"textord",mode:"text",loc:qe.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d<a[0].length;d++){var m=a[0][d];if(!vn[m])throw new N("Unknown accent ' "+m+"'",e);var v=vn[m][this.mode]||vn[m].text;if(!v)throw new N("Accent "+m+" unsupported in "+this.mode+" mode",e);o={type:"accent",mode:this.mode,loc:qe.range(e),label:v,isStretchy:!1,isShifty:!0,base:o}}return o}};n0.endOfExpression=new Set(["}","\\endgroup","\\end","\\right","&"]);var Qn=function(e,r){if(!(typeof e=="string"||e instanceof String))throw new TypeError("KaTeX can only parse string typed expression");var n=new n0(e,r);delete n.gullet.macros.current["\\df@tag"];var i=n.parse();if(delete n.gullet.macros.current["\\current@color"],delete n.gullet.macros.current["\\color"],n.gullet.macros.get("\\df@tag")){if(!r.displayMode)throw new N("\\tag works only in display equations");i=[{type:"tag",mode:"text",body:i,tag:n.subparse([new Be("\\df@tag")])}]}return i},Eo=function(e,r,n){r.textContent="";var i=Zn(e,n).toNode();r.appendChild(i)};typeof document<"u"&&document.compatMode!=="CSS1Compat"&&(typeof console<"u"&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),Eo=function(){throw new N("KaTeX doesn't work in quirks mode.")});var Pc=function(e,r){var n=Zn(e,r).toMarkup();return n},Gc=function(e,r){var n=new sr(r);return Qn(e,n)},Mo=function(e,r,n){if(n.throwOnError||!(e instanceof N))throw e;var i=A(["katex-error"],[new Ce(r)]);return i.setAttribute("title",e.toString()),i.setAttribute("style","color:"+n.errorColor),i},Zn=function(e,r){var n=new sr(r);try{var i=Qn(e,n);return Qh(i,e,n)}catch(a){return Mo(a,e,n)}},jc=function(e,r){var n=new sr(r);try{var i=Qn(e,n);return Zh(i,e,n)}catch(a){return Mo(a,e,n)}},Vc="0.16.47",Uc={Span:Mt,Anchor:Ut,SymbolNode:Ce,SvgNode:Xe,PathNode:rt,LineNode:ur},p0={version:Vc,render:Eo,renderToString:Pc,ParseError:N,SETTINGS_SCHEMA:gn,__parse:Gc,__renderToDomTree:Zn,__renderToHTMLTree:jc,__setFontMetrics:_h,__defineSymbol:u,__defineFunction:D,__defineMacro:p,__domTree:Uc};var J0=Z1(Xl());var w0="http://www.w3.org/1999/xhtml",yi={svg:"http://www.w3.org/2000/svg",xhtml:w0,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function pt(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),yi.hasOwnProperty(e)?{space:yi[e],local:t}:t}function rf(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===w0&&e.documentElement.namespaceURI===w0?e.createElement(t):e.createElementNS(r,t)}}function nf(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function k0(t){var e=pt(t);return(e.local?nf:rf)(e)}function af(){}function Rt(t){return t==null?af:function(){return this.querySelector(t)}}function Wl(t){typeof t!="function"&&(t=Rt(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i<r;++i)for(var a=e[i],o=a.length,s=n[i]=new Array(o),l,h,d=0;d<o;++d)(l=a[d])&&(h=t.call(l,l.__data__,d,a))&&("__data__"in l&&(h.__data__=l.__data__),s[d]=h);return new me(n,this._parents)}function xi(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function of(){return[]}function vr(t){return t==null?of:function(){return this.querySelectorAll(t)}}function sf(t){return function(){return xi(t.apply(this,arguments))}}function Kl(t){typeof t=="function"?t=sf(t):t=vr(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a<r;++a)for(var o=e[a],s=o.length,l,h=0;h<s;++h)(l=o[h])&&(n.push(t.call(l,l.__data__,h,o)),i.push(l));return new me(n,i)}function gr(t){return function(){return this.matches(t)}}function S0(t){return function(e){return e.matches(t)}}var lf=Array.prototype.find;function uf(t){return function(){return lf.call(this.children,t)}}function hf(){return this.firstElementChild}function Ql(t){return this.select(t==null?hf:uf(typeof t=="function"?t:S0(t)))}var cf=Array.prototype.filter;function df(){return Array.from(this.children)}function mf(t){return function(){return cf.call(this.children,t)}}function Zl(t){return this.selectAll(t==null?df:mf(typeof t=="function"?t:S0(t)))}function Jl(t){typeof t!="function"&&(t=gr(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i<r;++i)for(var a=e[i],o=a.length,s=n[i]=[],l,h=0;h<o;++h)(l=a[h])&&t.call(l,l.__data__,h,a)&&s.push(l);return new me(n,this._parents)}function E0(t){return new Array(t.length)}function eu(){return new me(this._enter||this._groups.map(E0),this._parents)}function br(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}br.prototype={constructor:br,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function tu(t){return function(){return t}}function ff(t,e,r,n,i,a){for(var o=0,s,l=e.length,h=a.length;o<h;++o)(s=e[o])?(s.__data__=a[o],n[o]=s):r[o]=new br(t,a[o]);for(;o<l;++o)(s=e[o])&&(i[o]=s)}function pf(t,e,r,n,i,a,o){var s,l,h=new Map,d=e.length,m=a.length,v=new Array(d),g;for(s=0;s<d;++s)(l=e[s])&&(v[s]=g=o.call(l,l.__data__,s,e)+"",h.has(g)?i[s]=l:h.set(g,l));for(s=0;s<m;++s)g=o.call(t,a[s],s,a)+"",(l=h.get(g))?(n[s]=l,l.__data__=a[s],h.delete(g)):r[s]=new br(t,a[s]);for(s=0;s<d;++s)(l=e[s])&&h.get(v[s])===l&&(i[s]=l)}function vf(t){return t.__data__}function ru(t,e){if(!arguments.length)return Array.from(this,vf);var r=e?pf:ff,n=this._parents,i=this._groups;typeof t!="function"&&(t=tu(t));for(var a=i.length,o=new Array(a),s=new Array(a),l=new Array(a),h=0;h<a;++h){var d=n[h],m=i[h],v=m.length,g=gf(t.call(d,d&&d.__data__,h,n)),k=g.length,w=s[h]=new Array(k),M=o[h]=new Array(k),E=l[h]=new Array(v);r(d,m,w,M,E,g,e);for(var I=0,L=0,B,q;I<k;++I)if(B=w[I]){for(I>=L&&(L=I+1);!(q=M[L])&&++L<k;);B._next=q||null}}return o=new me(o,n),o._enter=s,o._exit=l,o}function gf(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function nu(){return new me(this._exit||this._groups.map(E0),this._parents)}function iu(t,e,r){var n=this.enter(),i=this,a=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(i=e(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}function au(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,i=r.length,a=n.length,o=Math.min(i,a),s=new Array(i),l=0;l<o;++l)for(var h=r[l],d=n[l],m=h.length,v=s[l]=new Array(m),g,k=0;k<m;++k)(g=h[k]||d[k])&&(v[k]=g);for(;l<i;++l)s[l]=r[l];return new me(s,this._parents)}function ou(){for(var t=this._groups,e=-1,r=t.length;++e<r;)for(var n=t[e],i=n.length-1,a=n[i],o;--i>=0;)(o=n[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function su(t){t||(t=bf);function e(m,v){return m&&v?t(m.__data__,v.__data__):!m-!v}for(var r=this._groups,n=r.length,i=new Array(n),a=0;a<n;++a){for(var o=r[a],s=o.length,l=i[a]=new Array(s),h,d=0;d<s;++d)(h=o[d])&&(l[d]=h);l.sort(e)}return new me(i,this._parents).order()}function bf(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function lu(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function uu(){return Array.from(this)}function hu(){for(var t=this._groups,e=0,r=t.length;e<r;++e)for(var n=t[e],i=0,a=n.length;i<a;++i){var o=n[i];if(o)return o}return null}function cu(){let t=0;for(let e of this)++t;return t}function du(){return!this.node()}function mu(t){for(var e=this._groups,r=0,n=e.length;r<n;++r)for(var i=e[r],a=0,o=i.length,s;a<o;++a)(s=i[a])&&t.call(s,s.__data__,a,i);return this}function yf(t){return function(){this.removeAttribute(t)}}function xf(t){return function(){this.removeAttributeNS(t.space,t.local)}}function wf(t,e){return function(){this.setAttribute(t,e)}}function kf(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function Sf(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttribute(t):this.setAttribute(t,r)}}function Ef(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function fu(t,e){var r=pt(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((e==null?r.local?xf:yf:typeof e=="function"?r.local?Ef:Sf:r.local?kf:wf)(r,e))}function M0(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Mf(t){return function(){this.style.removeProperty(t)}}function Tf(t,e,r){return function(){this.style.setProperty(t,e,r)}}function Af(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function pu(t,e,r){return arguments.length>1?this.each((e==null?Mf:typeof e=="function"?Af:Tf)(t,e,r??"")):Ct(this.node(),t)}function Ct(t,e){return t.style.getPropertyValue(e)||M0(t).getComputedStyle(t,null).getPropertyValue(e)}function zf(t){return function(){delete this[t]}}function Cf(t,e){return function(){this[t]=e}}function Nf(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function vu(t,e){return arguments.length>1?this.each((e==null?zf:typeof e=="function"?Nf:Cf)(t,e)):this.node()[t]}function gu(t){return t.trim().split(/^|\s+/)}function wi(t){return t.classList||new bu(t)}function bu(t){this._node=t,this._names=gu(t.getAttribute("class")||"")}bu.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function yu(t,e){for(var r=wi(t),n=-1,i=e.length;++n<i;)r.add(e[n])}function xu(t,e){for(var r=wi(t),n=-1,i=e.length;++n<i;)r.remove(e[n])}function If(t){return function(){yu(this,t)}}function _f(t){return function(){xu(this,t)}}function Lf(t,e){return function(){(e.apply(this,arguments)?yu:xu)(this,t)}}function wu(t,e){var r=gu(t+"");if(arguments.length<2){for(var n=wi(this.node()),i=-1,a=r.length;++i<a;)if(!n.contains(r[i]))return!1;return!0}return this.each((typeof e=="function"?Lf:e?If:_f)(r,e))}function qf(){this.textContent=""}function Df(t){return function(){this.textContent=t}}function Bf(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function ku(t){return arguments.length?this.each(t==null?qf:(typeof t=="function"?Bf:Df)(t)):this.node().textContent}function Of(){this.innerHTML=""}function Rf(t){return function(){this.innerHTML=t}}function Ff(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function Su(t){return arguments.length?this.each(t==null?Of:(typeof t=="function"?Ff:Rf)(t)):this.node().innerHTML}function Hf(){this.nextSibling&&this.parentNode.appendChild(this)}function Eu(){return this.each(Hf)}function $f(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Mu(){return this.each($f)}function Tu(t){var e=typeof t=="function"?t:k0(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function Pf(){return null}function Au(t,e){var r=typeof t=="function"?t:k0(t),n=e==null?Pf:typeof e=="function"?e:Rt(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}function Gf(){var t=this.parentNode;t&&t.removeChild(this)}function zu(){return this.each(Gf)}function jf(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function Vf(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function Cu(t){return this.select(t?Vf:jf)}function Nu(t){return arguments.length?this.property("__data__",t):this.node().__data__}function Uf(t){return function(e){t.call(this,e,this.__data__)}}function Yf(t){return t.trim().split(/^|\s+/).map(function(e){var r="",n=e.indexOf(".");return n>=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function Xf(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r<i;++r)a=e[r],(!t.type||a.type===t.type)&&a.name===t.name?this.removeEventListener(a.type,a.listener,a.options):e[++n]=a;++n?e.length=n:delete this.__on}}}function Wf(t,e,r){return function(){var n=this.__on,i,a=Uf(e);if(n){for(var o=0,s=n.length;o<s;++o)if((i=n[o]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=r),i.value=e;return}}this.addEventListener(t.type,a,r),i={type:t.type,name:t.name,value:e,listener:a,options:r},n?n.push(i):this.__on=[i]}}function Iu(t,e,r){var n=Yf(t+""),i,a=n.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var l=0,h=s.length,d;l<h;++l)for(i=0,d=s[l];i<a;++i)if((o=n[i]).type===d.type&&o.name===d.name)return d.value}return}for(s=e?Wf:Xf,i=0;i<a;++i)this.each(s(n[i],e,r));return this}function _u(t,e,r){var n=M0(t),i=n.CustomEvent;typeof i=="function"?i=new i(e,r):(i=n.document.createEvent("Event"),r?(i.initEvent(e,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function Kf(t,e){return function(){return _u(this,t,e)}}function Qf(t,e){return function(){return _u(this,t,e.apply(this,arguments))}}function Lu(t,e){return this.each((typeof e=="function"?Qf:Kf)(t,e))}function*qu(){for(var t=this._groups,e=0,r=t.length;e<r;++e)for(var n=t[e],i=0,a=n.length,o;i<a;++i)(o=n[i])&&(yield o)}var ki=[null];function me(t,e){this._groups=t,this._parents=e}function Du(){return new me([[document.documentElement]],ki)}function Zf(){return this}me.prototype=Du.prototype={constructor:me,select:Wl,selectAll:Kl,selectChild:Ql,selectChildren:Zl,filter:Jl,data:ru,enter:eu,exit:nu,join:iu,merge:au,selection:Zf,order:ou,sort:su,call:lu,nodes:uu,node:hu,size:cu,empty:du,each:mu,attr:fu,style:pu,property:vu,classed:wu,text:ku,html:Su,raise:Eu,lower:Mu,append:Tu,insert:Au,remove:zu,clone:Cu,datum:Nu,on:Iu,dispatch:Lu,[Symbol.iterator]:qu};var vt=Du;function Ie(t){return typeof t=="string"?new me([[document.querySelector(t)]],[document.documentElement]):new me([[t]],ki)}function Bu(t){let e;for(;e=t.sourceEvent;)t=e;return t}function gt(t,e){if(t=Bu(t),e===void 0&&(e=t.currentTarget),e){var r=e.ownerSVGElement||e;if(r.createSVGPoint){var n=r.createSVGPoint();return n.x=t.clientX,n.y=t.clientY,n=n.matrixTransform(e.getScreenCTM().inverse()),[n.x,n.y]}if(e.getBoundingClientRect){var i=e.getBoundingClientRect();return[t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop]}}return[t.pageX,t.pageY]}var Jf={value:()=>{}};function Ru(){for(var t=0,e=arguments.length,r={},n;t<e;++t){if(!(n=arguments[t]+"")||n in r||/[\s.]/.test(n))throw new Error("illegal type: "+n);r[n]=[]}return new T0(r)}function T0(t){this._=t}function ep(t,e){return t.trim().split(/^|\s+/).map(function(r){var n="",i=r.indexOf(".");if(i>=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!e.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}T0.prototype=Ru.prototype={constructor:T0,on:function(t,e){var r=this._,n=ep(t+"",r),i,a=-1,o=n.length;if(arguments.length<2){for(;++a<o;)if((i=(t=n[a]).type)&&(i=tp(r[i],t.name)))return i;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++a<o;)if(i=(t=n[a]).type)r[i]=Ou(r[i],t.name,e);else if(e==null)for(i in r)r[i]=Ou(r[i],t.name,null);return this},copy:function(){var t={},e=this._;for(var r in e)t[r]=e[r].slice();return new T0(t)},call:function(t,e){if((i=arguments.length-2)>0)for(var r=new Array(i),n=0,i,a;n<i;++n)r[n]=arguments[n+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(a=this._[t],n=0,i=a.length;n<i;++n)a[n].value.apply(e,r)},apply:function(t,e,r){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var n=this._[t],i=0,a=n.length;i<a;++i)n[i].value.apply(e,r)}};function tp(t,e){for(var r=0,n=t.length,i;r<n;++r)if((i=t[r]).name===e)return i.value}function Ou(t,e,r){for(var n=0,i=t.length;n<i;++n)if(t[n].name===e){t[n]=Jf,t=t.slice(0,n).concat(t.slice(n+1));break}return r!=null&&t.push({name:e,value:r}),t}var yr=Ru;var A0={capture:!0,passive:!1};function z0(t){t.preventDefault(),t.stopImmediatePropagation()}function Si(t){var e=t.document.documentElement,r=Ie(t).on("dragstart.drag",z0,A0);"onselectstart"in e?r.on("selectstart.drag",z0,A0):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function Ei(t,e){var r=t.document.documentElement,n=Ie(t).on("dragstart.drag",null);e&&(n.on("click.drag",z0,A0),setTimeout(function(){n.on("click.drag",null)},0)),"onselectstart"in r?n.on("selectstart.drag",null):(r.style.MozUserSelect=r.__noselect,delete r.__noselect)}function C0(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function Mi(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function kr(){}var xr=.7,_0=1/xr,Qt="\\s*([+-]?\\d+)\\s*",wr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",ot="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",rp=/^#([0-9a-f]{3,8})$/,np=new RegExp(`^rgb\\(${Qt},${Qt},${Qt}\\)$`),ip=new RegExp(`^rgb\\(${ot},${ot},${ot}\\)$`),ap=new RegExp(`^rgba\\(${Qt},${Qt},${Qt},${wr}\\)$`),op=new RegExp(`^rgba\\(${ot},${ot},${ot},${wr}\\)$`),sp=new RegExp(`^hsl\\(${wr},${ot},${ot}\\)$`),lp=new RegExp(`^hsla\\(${wr},${ot},${ot},${wr}\\)$`),Fu={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};C0(kr,Nt,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Hu,formatHex:Hu,formatHex8:up,formatHsl:hp,formatRgb:$u,toString:$u});function Hu(){return this.rgb().formatHex()}function up(){return this.rgb().formatHex8()}function hp(){return Yu(this).formatHsl()}function $u(){return this.rgb().formatRgb()}function Nt(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=rp.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?Pu(e):r===3?new De(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?N0(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?N0(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=np.exec(t))?new De(e[1],e[2],e[3],1):(e=ip.exec(t))?new De(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=ap.exec(t))?N0(e[1],e[2],e[3],e[4]):(e=op.exec(t))?N0(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=sp.exec(t))?Vu(e[1],e[2]/100,e[3]/100,1):(e=lp.exec(t))?Vu(e[1],e[2]/100,e[3]/100,e[4]):Fu.hasOwnProperty(t)?Pu(Fu[t]):t==="transparent"?new De(NaN,NaN,NaN,0):null}function Pu(t){return new De(t>>16&255,t>>8&255,t&255,1)}function N0(t,e,r,n){return n<=0&&(t=e=r=NaN),new De(t,e,r,n)}function cp(t){return t instanceof kr||(t=Nt(t)),t?(t=t.rgb(),new De(t.r,t.g,t.b,t.opacity)):new De}function Zt(t,e,r,n){return arguments.length===1?cp(t):new De(t,e,r,n??1)}function De(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}C0(De,Zt,Mi(kr,{brighter(t){return t=t==null?_0:Math.pow(_0,t),new De(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?xr:Math.pow(xr,t),new De(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new De(Ht(this.r),Ht(this.g),Ht(this.b),L0(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Gu,formatHex:Gu,formatHex8:dp,formatRgb:ju,toString:ju}));function Gu(){return`#${Ft(this.r)}${Ft(this.g)}${Ft(this.b)}`}function dp(){return`#${Ft(this.r)}${Ft(this.g)}${Ft(this.b)}${Ft((isNaN(this.opacity)?1:this.opacity)*255)}`}function ju(){let t=L0(this.opacity);return`${t===1?"rgb(":"rgba("}${Ht(this.r)}, ${Ht(this.g)}, ${Ht(this.b)}${t===1?")":`, ${t})`}`}function L0(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ht(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Ft(t){return t=Ht(t),(t<16?"0":"")+t.toString(16)}function Vu(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new We(t,e,r,n)}function Yu(t){if(t instanceof We)return new We(t.h,t.s,t.l,t.opacity);if(t instanceof kr||(t=Nt(t)),!t)return new We;if(t instanceof We)return t;t=t.rgb();var e=t.r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(e===a?o=(r-n)/s+(r<n)*6:r===a?o=(n-e)/s+2:o=(e-r)/s+4,s/=l<.5?a+i:2-a-i,o*=60):s=l>0&&l<1?0:o,new We(o,s,l,t.opacity)}function Xu(t,e,r,n){return arguments.length===1?Yu(t):new We(t,e,r,n??1)}function We(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}C0(We,Xu,Mi(kr,{brighter(t){return t=t==null?_0:Math.pow(_0,t),new We(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?xr:Math.pow(xr,t),new We(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new De(Ti(t>=240?t-240:t+120,i,n),Ti(t,i,n),Ti(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new We(Uu(this.h),I0(this.s),I0(this.l),L0(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=L0(this.opacity);return`${t===1?"hsl(":"hsla("}${Uu(this.h)}, ${I0(this.s)*100}%, ${I0(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Uu(t){return t=(t||0)%360,t<0?t+360:t}function I0(t){return Math.max(0,Math.min(1,t||0))}function Ti(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}function Ai(t,e,r,n,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*r+(1+3*t+3*a-3*o)*n+o*i)/6}function Wu(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],o=n>0?t[n-1]:2*i-a,s=n<e-1?t[n+2]:2*a-i;return Ai((r-n/e)*e,o,i,a,s)}}function Ku(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],o=t[(n+1)%e],s=t[(n+2)%e];return Ai((r-n/e)*e,i,a,o,s)}}var zi=t=>()=>t;function mp(t,e){return function(r){return t+r*e}}function fp(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}function Qu(t){return(t=+t)==1?q0:function(e,r){return r-e?fp(e,r,t):zi(isNaN(e)?r:e)}}function q0(t,e){var r=e-t;return r?mp(t,r):zi(isNaN(t)?e:t)}var D0=function t(e){var r=Qu(e);function n(i,a){var o=r((i=Zt(i)).r,(a=Zt(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),h=q0(i.opacity,a.opacity);return function(d){return i.r=o(d),i.g=s(d),i.b=l(d),i.opacity=h(d),i+""}}return n.gamma=t,n}(1);function Zu(t){return function(e){var r=e.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o<r;++o)s=Zt(e[o]),n[o]=s.r||0,i[o]=s.g||0,a[o]=s.b||0;return n=t(n),i=t(i),a=t(a),s.opacity=1,function(l){return s.r=n(l),s.g=i(l),s.b=a(l),s+""}}}var pp=Zu(Wu),vp=Zu(Ku);function Ve(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var Ni=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ci=new RegExp(Ni.source,"g");function gp(t){return function(){return t}}function bp(t){return function(e){return t(e)+""}}function Ii(t,e){var r=Ni.lastIndex=Ci.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(t=t+"",e=e+"";(n=Ni.exec(t))&&(i=Ci.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:Ve(n,i)})),r=Ci.lastIndex;return r<e.length&&(a=e.slice(r),s[o]?s[o]+=a:s[++o]=a),s.length<2?l[0]?bp(l[0].x):gp(e):(e=l.length,function(h){for(var d=0,m;d<e;++d)s[(m=l[d]).i]=m.x(h);return s.join("")})}var Ju=180/Math.PI,B0={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function _i(t,e,r,n,i,a){var o,s,l;return(o=Math.sqrt(t*t+e*e))&&(t/=o,e/=o),(l=t*r+e*n)&&(r-=t*l,n-=e*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),t*n<e*r&&(t=-t,e=-e,l=-l,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(e,t)*Ju,skewX:Math.atan(l)*Ju,scaleX:o,scaleY:s}}var O0;function e1(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?B0:_i(e.a,e.b,e.c,e.d,e.e,e.f)}function t1(t){return t==null?B0:(O0||(O0=document.createElementNS("http://www.w3.org/2000/svg","g")),O0.setAttribute("transform",t),(t=O0.transform.baseVal.consolidate())?(t=t.matrix,_i(t.a,t.b,t.c,t.d,t.e,t.f)):B0)}function r1(t,e,r,n){function i(h){return h.length?h.pop()+" ":""}function a(h,d,m,v,g,k){if(h!==m||d!==v){var w=g.push("translate(",null,e,null,r);k.push({i:w-4,x:Ve(h,m)},{i:w-2,x:Ve(d,v)})}else(m||v)&&g.push("translate("+m+e+v+r)}function o(h,d,m,v){h!==d?(h-d>180?d+=360:d-h>180&&(h+=360),v.push({i:m.push(i(m)+"rotate(",null,n)-2,x:Ve(h,d)})):d&&m.push(i(m)+"rotate("+d+n)}function s(h,d,m,v){h!==d?v.push({i:m.push(i(m)+"skewX(",null,n)-2,x:Ve(h,d)}):d&&m.push(i(m)+"skewX("+d+n)}function l(h,d,m,v,g,k){if(h!==m||d!==v){var w=g.push(i(g)+"scale(",null,",",null,")");k.push({i:w-4,x:Ve(h,m)},{i:w-2,x:Ve(d,v)})}else(m!==1||v!==1)&&g.push(i(g)+"scale("+m+","+v+")")}return function(h,d){var m=[],v=[];return h=t(h),d=t(d),a(h.translateX,h.translateY,d.translateX,d.translateY,m,v),o(h.rotate,d.rotate,m,v),s(h.skewX,d.skewX,m,v),l(h.scaleX,h.scaleY,d.scaleX,d.scaleY,m,v),h=d=null,function(g){for(var k=-1,w=v.length,M;++k<w;)m[(M=v[k]).i]=M.x(g);return m.join("")}}}var Li=r1(e1,"px, ","px)","deg)"),qi=r1(t1,", ",")",")");var yp=1e-12;function n1(t){return((t=Math.exp(t))+1/t)/2}function xp(t){return((t=Math.exp(t))-1/t)/2}function wp(t){return((t=Math.exp(2*t))-1)/(t+1)}var Di=function t(e,r,n){function i(a,o){var s=a[0],l=a[1],h=a[2],d=o[0],m=o[1],v=o[2],g=d-s,k=m-l,w=g*g+k*k,M,E;if(w<yp)E=Math.log(v/h)/e,M=function(F){return[s+F*g,l+F*k,h*Math.exp(e*F*E)]};else{var I=Math.sqrt(w),L=(v*v-h*h+n*w)/(2*h*r*I),B=(v*v-h*h-n*w)/(2*v*r*I),q=Math.log(Math.sqrt(L*L+1)-L),H=Math.log(Math.sqrt(B*B+1)-B);E=(H-q)/e,M=function(F){var X=F*E,Q=n1(q),oe=h/(r*I)*(Q*wp(e*X+q)-xp(q));return[s+oe*g,l+oe*k,h*Q/n1(e*X+q)]}}return M.duration=E*1e3*e/Math.SQRT2,M}return i.rho=function(a){var o=Math.max(.001,+a),s=o*o,l=s*s;return t(o,s,l)},i}(Math.SQRT2,2,4);var Jt=0,Er=0,Sr=0,a1=1e3,R0,Mr,F0=0,$t=0,H0=0,Tr=typeof performance=="object"&&performance.now?performance:Date,o1=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function zr(){return $t||(o1(kp),$t=Tr.now()+H0)}function kp(){$t=0}function Ar(){this._call=this._time=this._next=null}Ar.prototype=$0.prototype={constructor:Ar,restart:function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?zr():+r)+(e==null?0:+e),!this._next&&Mr!==this&&(Mr?Mr._next=this:R0=this,Mr=this),this._call=t,this._time=r,Bi()},stop:function(){this._call&&(this._call=null,this._time=1/0,Bi())}};function $0(t,e,r){var n=new Ar;return n.restart(t,e,r),n}function s1(){zr(),++Jt;for(var t=R0,e;t;)(e=$t-t._time)>=0&&t._call.call(void 0,e),t=t._next;--Jt}function i1(){$t=(F0=Tr.now())+H0,Jt=Er=0;try{s1()}finally{Jt=0,Ep(),$t=0}}function Sp(){var t=Tr.now(),e=t-F0;e>a1&&(H0-=e,F0=t)}function Ep(){for(var t,e=R0,r,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(r=e._next,e._next=null,e=t?t._next=r:R0=r);Mr=t,Bi(n)}function Bi(t){if(!Jt){Er&&(Er=clearTimeout(Er));var e=t-$t;e>24?(t<1/0&&(Er=setTimeout(i1,t-Tr.now()-H0)),Sr&&(Sr=clearInterval(Sr))):(Sr||(F0=Tr.now(),Sr=setInterval(Sp,a1)),Jt=1,o1(i1))}}function P0(t,e,r){var n=new Ar;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var Mp=yr("start","end","cancel","interrupt"),Tp=[],h1=0,l1=1,j0=2,G0=3,u1=4,V0=5,Cr=6;function It(t,e,r,n,i,a){var o=t.__transition;if(!o)t.__transition={};else if(r in o)return;Ap(t,r,{name:e,index:n,group:i,on:Mp,tween:Tp,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:h1})}function Nr(t,e){var r=we(t,e);if(r.state>h1)throw new Error("too late; already scheduled");return r}function Ee(t,e){var r=we(t,e);if(r.state>G0)throw new Error("too late; already running");return r}function we(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function Ap(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=$0(a,0,r.time);function a(h){r.state=l1,r.timer.restart(o,r.delay,r.time),r.delay<=h&&o(h-r.delay)}function o(h){var d,m,v,g;if(r.state!==l1)return l();for(d in n)if(g=n[d],g.name===r.name){if(g.state===G0)return P0(o);g.state===u1?(g.state=Cr,g.timer.stop(),g.on.call("interrupt",t,t.__data__,g.index,g.group),delete n[d]):+d<e&&(g.state=Cr,g.timer.stop(),g.on.call("cancel",t,t.__data__,g.index,g.group),delete n[d])}if(P0(function(){r.state===G0&&(r.state=u1,r.timer.restart(s,r.delay,r.time),s(h))}),r.state=j0,r.on.call("start",t,t.__data__,r.index,r.group),r.state===j0){for(r.state=G0,i=new Array(v=r.tween.length),d=0,m=-1;d<v;++d)(g=r.tween[d].value.call(t,t.__data__,r.index,r.group))&&(i[++m]=g);i.length=m+1}}function s(h){for(var d=h<r.duration?r.ease.call(null,h/r.duration):(r.timer.restart(l),r.state=V0,1),m=-1,v=i.length;++m<v;)i[m].call(t,d);r.state===V0&&(r.on.call("end",t,t.__data__,r.index,r.group),l())}function l(){r.state=Cr,r.timer.stop(),delete n[e];for(var h in n)return;delete t.__transition}}function Pt(t,e){var r=t.__transition,n,i,a=!0,o;if(r){e=e==null?null:e+"";for(o in r){if((n=r[o]).name!==e){a=!1;continue}i=n.state>j0&&n.state<V0,n.state=Cr,n.timer.stop(),n.on.call(i?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete r[o]}a&&delete t.__transition}}function c1(t){return this.each(function(){Pt(this,t)})}function zp(t,e){var r,n;return function(){var i=Ee(this,t),a=i.tween;if(a!==r){n=r=a;for(var o=0,s=n.length;o<s;++o)if(n[o].name===e){n=n.slice(),n.splice(o,1);break}}i.tween=n}}function Cp(t,e,r){var n,i;if(typeof r!="function")throw new Error;return function(){var a=Ee(this,t),o=a.tween;if(o!==n){i=(n=o).slice();for(var s={name:e,value:r},l=0,h=i.length;l<h;++l)if(i[l].name===e){i[l]=s;break}l===h&&i.push(s)}a.tween=i}}function d1(t,e){var r=this._id;if(t+="",arguments.length<2){for(var n=we(this.node(),r).tween,i=0,a=n.length,o;i<a;++i)if((o=n[i]).name===t)return o.value;return null}return this.each((e==null?zp:Cp)(r,t,e))}function er(t,e,r){var n=t._id;return t.each(function(){var i=Ee(this,n);(i.value||(i.value={}))[e]=r.apply(this,arguments)}),function(i){return we(i,n).value[e]}}function U0(t,e){var r;return(typeof e=="number"?Ve:e instanceof Nt?D0:(r=Nt(e))?(e=r,D0):Ii)(t,e)}function Np(t){return function(){this.removeAttribute(t)}}function Ip(t){return function(){this.removeAttributeNS(t.space,t.local)}}function _p(t,e,r){var n,i=r+"",a;return function(){var o=this.getAttribute(t);return o===i?null:o===n?a:a=e(n=o,r)}}function Lp(t,e,r){var n,i=r+"",a;return function(){var o=this.getAttributeNS(t.space,t.local);return o===i?null:o===n?a:a=e(n=o,r)}}function qp(t,e,r){var n,i,a;return function(){var o,s=r(this),l;return s==null?void this.removeAttribute(t):(o=this.getAttribute(t),l=s+"",o===l?null:o===n&&l===i?a:(i=l,a=e(n=o,s)))}}function Dp(t,e,r){var n,i,a;return function(){var o,s=r(this),l;return s==null?void this.removeAttributeNS(t.space,t.local):(o=this.getAttributeNS(t.space,t.local),l=s+"",o===l?null:o===n&&l===i?a:(i=l,a=e(n=o,s)))}}function m1(t,e){var r=pt(t),n=r==="transform"?qi:U0;return this.attrTween(t,typeof e=="function"?(r.local?Dp:qp)(r,n,er(this,"attr."+t,e)):e==null?(r.local?Ip:Np)(r):(r.local?Lp:_p)(r,n,e))}function Bp(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function Op(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function Rp(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Op(t,a)),r}return i._value=e,i}function Fp(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Bp(t,a)),r}return i._value=e,i}function f1(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;var n=pt(t);return this.tween(r,(n.local?Rp:Fp)(n,e))}function Hp(t,e){return function(){Nr(this,t).delay=+e.apply(this,arguments)}}function $p(t,e){return e=+e,function(){Nr(this,t).delay=e}}function p1(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Hp:$p)(e,t)):we(this.node(),e).delay}function Pp(t,e){return function(){Ee(this,t).duration=+e.apply(this,arguments)}}function Gp(t,e){return e=+e,function(){Ee(this,t).duration=e}}function v1(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Pp:Gp)(e,t)):we(this.node(),e).duration}function jp(t,e){if(typeof e!="function")throw new Error;return function(){Ee(this,t).ease=e}}function g1(t){var e=this._id;return arguments.length?this.each(jp(e,t)):we(this.node(),e).ease}function Vp(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;Ee(this,t).ease=r}}function b1(t){if(typeof t!="function")throw new Error;return this.each(Vp(this._id,t))}function y1(t){typeof t!="function"&&(t=gr(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i<r;++i)for(var a=e[i],o=a.length,s=n[i]=[],l,h=0;h<o;++h)(l=a[h])&&t.call(l,l.__data__,h,a)&&s.push(l);return new _e(n,this._parents,this._name,this._id)}function x1(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,i=r.length,a=Math.min(n,i),o=new Array(n),s=0;s<a;++s)for(var l=e[s],h=r[s],d=l.length,m=o[s]=new Array(d),v,g=0;g<d;++g)(v=l[g]||h[g])&&(m[g]=v);for(;s<n;++s)o[s]=e[s];return new _e(o,this._parents,this._name,this._id)}function Up(t){return(t+"").trim().split(/^|\s+/).every(function(e){var r=e.indexOf(".");return r>=0&&(e=e.slice(0,r)),!e||e==="start"})}function Yp(t,e,r){var n,i,a=Up(e)?Nr:Ee;return function(){var o=a(this,t),s=o.on;s!==n&&(i=(n=s).copy()).on(e,r),o.on=i}}function w1(t,e){var r=this._id;return arguments.length<2?we(this.node(),r).on.on(t):this.each(Yp(r,t,e))}function Xp(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function k1(){return this.on("end.remove",Xp(this._id))}function S1(t){var e=this._name,r=this._id;typeof t!="function"&&(t=Rt(t));for(var n=this._groups,i=n.length,a=new Array(i),o=0;o<i;++o)for(var s=n[o],l=s.length,h=a[o]=new Array(l),d,m,v=0;v<l;++v)(d=s[v])&&(m=t.call(d,d.__data__,v,s))&&("__data__"in d&&(m.__data__=d.__data__),h[v]=m,It(h[v],e,r,v,h,we(d,r)));return new _e(a,this._parents,e,r)}function E1(t){var e=this._name,r=this._id;typeof t!="function"&&(t=vr(t));for(var n=this._groups,i=n.length,a=[],o=[],s=0;s<i;++s)for(var l=n[s],h=l.length,d,m=0;m<h;++m)if(d=l[m]){for(var v=t.call(d,d.__data__,m,l),g,k=we(d,r),w=0,M=v.length;w<M;++w)(g=v[w])&&It(g,e,r,w,v,k);a.push(v),o.push(d)}return new _e(a,o,e,r)}var Wp=vt.prototype.constructor;function M1(){return new Wp(this._groups,this._parents)}function Kp(t,e){var r,n,i;return function(){var a=Ct(this,t),o=(this.style.removeProperty(t),Ct(this,t));return a===o?null:a===r&&o===n?i:i=e(r=a,n=o)}}function T1(t){return function(){this.style.removeProperty(t)}}function Qp(t,e,r){var n,i=r+"",a;return function(){var o=Ct(this,t);return o===i?null:o===n?a:a=e(n=o,r)}}function Zp(t,e,r){var n,i,a;return function(){var o=Ct(this,t),s=r(this),l=s+"";return s==null&&(l=s=(this.style.removeProperty(t),Ct(this,t))),o===l?null:o===n&&l===i?a:(i=l,a=e(n=o,s))}}function Jp(t,e){var r,n,i,a="style."+e,o="end."+a,s;return function(){var l=Ee(this,t),h=l.on,d=l.value[a]==null?s||(s=T1(e)):void 0;(h!==r||i!==d)&&(n=(r=h).copy()).on(o,i=d),l.on=n}}function A1(t,e,r){var n=(t+="")=="transform"?Li:U0;return e==null?this.styleTween(t,Kp(t,n)).on("end.style."+t,T1(t)):typeof e=="function"?this.styleTween(t,Zp(t,n,er(this,"style."+t,e))).each(Jp(this._id,t)):this.styleTween(t,Qp(t,n,e),r).on("end.style."+t,null)}function e2(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function t2(t,e,r){var n,i;function a(){var o=e.apply(this,arguments);return o!==i&&(n=(i=o)&&e2(t,o,r)),n}return a._value=e,a}function z1(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,t2(t,e,r??""))}function r2(t){return function(){this.textContent=t}}function n2(t){return function(){var e=t(this);this.textContent=e??""}}function C1(t){return this.tween("text",typeof t=="function"?n2(er(this,"text",t)):r2(t==null?"":t+""))}function i2(t){return function(e){this.textContent=t.call(this,e)}}function a2(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&i2(i)),e}return n._value=t,n}function N1(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,a2(t))}function I1(){for(var t=this._name,e=this._id,r=Y0(),n=this._groups,i=n.length,a=0;a<i;++a)for(var o=n[a],s=o.length,l,h=0;h<s;++h)if(l=o[h]){var d=we(l,e);It(l,t,r,h,o,{time:d.time+d.delay+d.duration,delay:0,duration:d.duration,ease:d.ease})}return new _e(n,this._parents,t,r)}function _1(){var t,e,r=this,n=r._id,i=r.size();return new Promise(function(a,o){var s={value:o},l={value:function(){--i===0&&a()}};r.each(function(){var h=Ee(this,n),d=h.on;d!==t&&(e=(t=d).copy(),e._.cancel.push(s),e._.interrupt.push(s),e._.end.push(l)),h.on=e}),i===0&&a()})}var o2=0;function _e(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function L1(t){return vt().transition(t)}function Y0(){return++o2}var bt=vt.prototype;_e.prototype=L1.prototype={constructor:_e,select:S1,selectAll:E1,selectChild:bt.selectChild,selectChildren:bt.selectChildren,filter:y1,merge:x1,selection:M1,transition:I1,call:bt.call,nodes:bt.nodes,node:bt.node,size:bt.size,empty:bt.empty,each:bt.each,on:w1,attr:m1,attrTween:f1,style:A1,styleTween:z1,text:C1,textTween:N1,remove:k1,tween:d1,delay:p1,duration:v1,ease:g1,easeVarying:b1,end:_1,[Symbol.iterator]:bt[Symbol.iterator]};function X0(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var s2={time:null,delay:0,duration:250,ease:X0};function l2(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}function q1(t){var e,r;t instanceof _e?(e=t._id,t=t._name):(e=Y0(),(r=s2).time=zr(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a<i;++a)for(var o=n[a],s=o.length,l,h=0;h<s;++h)(l=o[h])&&It(l,t,e,h,o,r||l2(l,e));return new _e(n,this._parents,t,e)}vt.prototype.interrupt=c1;vt.prototype.transition=q1;var Ir=t=>()=>t;function Oi(t,{sourceEvent:e,target:r,transform:n,dispatch:i}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:n,enumerable:!0,configurable:!0},_:{value:i}})}function Ke(t,e,r){this.k=t,this.x=e,this.y=r}Ke.prototype={constructor:Ke,scale:function(t){return t===1?this:new Ke(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Ke(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var _t=new Ke(1,0,0);Ri.prototype=Ke.prototype;function Ri(t){for(;!t.__zoom;)if(!(t=t.parentNode))return _t;return t.__zoom}function W0(t){t.stopImmediatePropagation()}function tr(t){t.preventDefault(),t.stopImmediatePropagation()}function u2(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function h2(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function D1(){return this.__zoom||_t}function c2(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function d2(){return navigator.maxTouchPoints||"ontouchstart"in this}function m2(t,e,r){var n=t.invertX(e[0][0])-r[0][0],i=t.invertX(e[1][0])-r[1][0],a=t.invertY(e[0][1])-r[0][1],o=t.invertY(e[1][1])-r[1][1];return t.translate(i>n?(n+i)/2:Math.min(0,n)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function Fi(){var t=u2,e=h2,r=m2,n=c2,i=d2,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,l=Di,h=yr("start","zoom","end"),d,m,v,g=500,k=150,w=0,M=10;function E(S){S.property("__zoom",D1).on("wheel.zoom",X,{passive:!1}).on("mousedown.zoom",Q).on("dblclick.zoom",oe).filter(i).on("touchstart.zoom",ke).on("touchmove.zoom",ne).on("touchend.zoom touchcancel.zoom",Qe).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}E.transform=function(S,R,z,$){var j=S.selection?S.selection():S;j.property("__zoom",D1),S!==j?q(S,R,z,$):j.interrupt().each(function(){H(this,arguments).event($).start().zoom(null,typeof R=="function"?R.apply(this,arguments):R).end()})},E.scaleBy=function(S,R,z,$){E.scaleTo(S,function(){var j=this.__zoom.k,K=typeof R=="function"?R.apply(this,arguments):R;return j*K},z,$)},E.scaleTo=function(S,R,z,$){E.transform(S,function(){var j=e.apply(this,arguments),K=this.__zoom,Y=z==null?B(j):typeof z=="function"?z.apply(this,arguments):z,Z=K.invert(Y),te=typeof R=="function"?R.apply(this,arguments):R;return r(L(I(K,te),Y,Z),j,o)},z,$)},E.translateBy=function(S,R,z,$){E.transform(S,function(){return r(this.__zoom.translate(typeof R=="function"?R.apply(this,arguments):R,typeof z=="function"?z.apply(this,arguments):z),e.apply(this,arguments),o)},null,$)},E.translateTo=function(S,R,z,$,j){E.transform(S,function(){var K=e.apply(this,arguments),Y=this.__zoom,Z=$==null?B(K):typeof $=="function"?$.apply(this,arguments):$;return r(_t.translate(Z[0],Z[1]).scale(Y.k).translate(typeof R=="function"?-R.apply(this,arguments):-R,typeof z=="function"?-z.apply(this,arguments):-z),K,o)},$,j)};function I(S,R){return R=Math.max(a[0],Math.min(a[1],R)),R===S.k?S:new Ke(R,S.x,S.y)}function L(S,R,z){var $=R[0]-z[0]*S.k,j=R[1]-z[1]*S.k;return $===S.x&&j===S.y?S:new Ke(S.k,$,j)}function B(S){return[(+S[0][0]+ +S[1][0])/2,(+S[0][1]+ +S[1][1])/2]}function q(S,R,z,$){S.on("start.zoom",function(){H(this,arguments).event($).start()}).on("interrupt.zoom end.zoom",function(){H(this,arguments).event($).end()}).tween("zoom",function(){var j=this,K=arguments,Y=H(j,K).event($),Z=e.apply(j,K),te=z==null?B(Z):typeof z=="function"?z.apply(j,K):z,he=Math.max(Z[1][0]-Z[0][0],Z[1][1]-Z[0][1]),ce=j.__zoom,Le=typeof R=="function"?R.apply(j,K):R,Ye=l(ce.invert(te).concat(he/ce.k),Le.invert(te).concat(he/Le.k));return function(Se){if(Se===1)Se=Le;else{var He=Ye(Se),Ze=he/He[2];Se=new Ke(Ze,te[0]-He[0]*Ze,te[1]-He[1]*Ze)}Y.zoom(null,Se)}})}function H(S,R,z){return!z&&S.__zooming||new F(S,R)}function F(S,R){this.that=S,this.args=R,this.active=0,this.sourceEvent=null,this.extent=e.apply(S,R),this.taps=0}F.prototype={event:function(S){return S&&(this.sourceEvent=S),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(S,R){return this.mouse&&S!=="mouse"&&(this.mouse[1]=R.invert(this.mouse[0])),this.touch0&&S!=="touch"&&(this.touch0[1]=R.invert(this.touch0[0])),this.touch1&&S!=="touch"&&(this.touch1[1]=R.invert(this.touch1[0])),this.that.__zoom=R,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(S){var R=Ie(this.that).datum();h.call(S,this.that,new Oi(S,{sourceEvent:this.sourceEvent,target:E,type:S,transform:this.that.__zoom,dispatch:h}),R)}};function X(S,...R){if(!t.apply(this,arguments))return;var z=H(this,R).event(S),$=this.__zoom,j=Math.max(a[0],Math.min(a[1],$.k*Math.pow(2,n.apply(this,arguments)))),K=gt(S);if(z.wheel)(z.mouse[0][0]!==K[0]||z.mouse[0][1]!==K[1])&&(z.mouse[1]=$.invert(z.mouse[0]=K)),clearTimeout(z.wheel);else{if($.k===j)return;z.mouse=[K,$.invert(K)],Pt(this),z.start()}tr(S),z.wheel=setTimeout(Y,k),z.zoom("mouse",r(L(I($,j),z.mouse[0],z.mouse[1]),z.extent,o));function Y(){z.wheel=null,z.end()}}function Q(S,...R){if(v||!t.apply(this,arguments))return;var z=S.currentTarget,$=H(this,R,!0).event(S),j=Ie(S.view).on("mousemove.zoom",te,!0).on("mouseup.zoom",he,!0),K=gt(S,z),Y=S.clientX,Z=S.clientY;Si(S.view),W0(S),$.mouse=[K,this.__zoom.invert(K)],Pt(this),$.start();function te(ce){if(tr(ce),!$.moved){var Le=ce.clientX-Y,Ye=ce.clientY-Z;$.moved=Le*Le+Ye*Ye>w}$.event(ce).zoom("mouse",r(L($.that.__zoom,$.mouse[0]=gt(ce,z),$.mouse[1]),$.extent,o))}function he(ce){j.on("mousemove.zoom mouseup.zoom",null),Ei(ce.view,$.moved),tr(ce),$.event(ce).end()}}function oe(S,...R){if(t.apply(this,arguments)){var z=this.__zoom,$=gt(S.changedTouches?S.changedTouches[0]:S,this),j=z.invert($),K=z.k*(S.shiftKey?.5:2),Y=r(L(I(z,K),$,j),e.apply(this,R),o);tr(S),s>0?Ie(this).transition().duration(s).call(q,Y,$,S):Ie(this).call(E.transform,Y,$,S)}}function ke(S,...R){if(t.apply(this,arguments)){var z=S.touches,$=z.length,j=H(this,R,S.changedTouches.length===$).event(S),K,Y,Z,te;for(W0(S),Y=0;Y<$;++Y)Z=z[Y],te=gt(Z,this),te=[te,this.__zoom.invert(te),Z.identifier],j.touch0?!j.touch1&&j.touch0[2]!==te[2]&&(j.touch1=te,j.taps=0):(j.touch0=te,K=!0,j.taps=1+!!d);d&&(d=clearTimeout(d)),K&&(j.taps<2&&(m=te[0],d=setTimeout(function(){d=null},g)),Pt(this),j.start())}}function ne(S,...R){if(this.__zooming){var z=H(this,R).event(S),$=S.changedTouches,j=$.length,K,Y,Z,te;for(tr(S),K=0;K<j;++K)Y=$[K],Z=gt(Y,this),z.touch0&&z.touch0[2]===Y.identifier?z.touch0[0]=Z:z.touch1&&z.touch1[2]===Y.identifier&&(z.touch1[0]=Z);if(Y=z.that.__zoom,z.touch1){var he=z.touch0[0],ce=z.touch0[1],Le=z.touch1[0],Ye=z.touch1[1],Se=(Se=Le[0]-he[0])*Se+(Se=Le[1]-he[1])*Se,He=(He=Ye[0]-ce[0])*He+(He=Ye[1]-ce[1])*He;Y=I(Y,Math.sqrt(Se/He)),Z=[(he[0]+Le[0])/2,(he[1]+Le[1])/2],te=[(ce[0]+Ye[0])/2,(ce[1]+Ye[1])/2]}else if(z.touch0)Z=z.touch0[0],te=z.touch0[1];else return;z.zoom("touch",r(L(Y,Z,te),z.extent,o))}}function Qe(S,...R){if(this.__zooming){var z=H(this,R).event(S),$=S.changedTouches,j=$.length,K,Y;for(W0(S),v&&clearTimeout(v),v=setTimeout(function(){v=null},g),K=0;K<j;++K)Y=$[K],z.touch0&&z.touch0[2]===Y.identifier?delete z.touch0:z.touch1&&z.touch1[2]===Y.identifier&&delete z.touch1;if(z.touch1&&!z.touch0&&(z.touch0=z.touch1,delete z.touch1),z.touch0)z.touch0[1]=this.__zoom.invert(z.touch0[0]);else if(z.end(),z.taps===2&&(Y=gt(Y,this),Math.hypot(m[0]-Y[0],m[1]-Y[1])<M)){var Z=Ie(this).on("dblclick.zoom");Z&&Z.apply(this,arguments)}}}return E.wheelDelta=function(S){return arguments.length?(n=typeof S=="function"?S:Ir(+S),E):n},E.filter=function(S){return arguments.length?(t=typeof S=="function"?S:Ir(!!S),E):t},E.touchable=function(S){return arguments.length?(i=typeof S=="function"?S:Ir(!!S),E):i},E.extent=function(S){return arguments.length?(e=typeof S=="function"?S:Ir([[+S[0][0],+S[0][1]],[+S[1][0],+S[1][1]]]),E):e},E.scaleExtent=function(S){return arguments.length?(a[0]=+S[0],a[1]=+S[1],E):[a[0],a[1]]},E.translateExtent=function(S){return arguments.length?(o[0][0]=+S[0][0],o[1][0]=+S[1][0],o[0][1]=+S[0][1],o[1][1]=+S[1][1],E):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},E.constrain=function(S){return arguments.length?(r=S,E):r},E.duration=function(S){return arguments.length?(s=+S,E):s},E.interpolate=function(S){return arguments.length?(l=S,E):l},E.on=function(){var S=h.on.apply(h,arguments);return S===h?E:S},E.clickDistance=function(S){return arguments.length?(w=(S=+S)*S,E):Math.sqrt(w)},E.tapDistance=function(S){return arguments.length?(M=+S,E):M},E}function Fe(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function f2(t,e={precision:2,scientificPrecision:1,allowScientific:!0}){if(t==null)return"";let r=Number(t);if(!Number.isFinite(r))return String(t);if(r===0)return"0";let n=Math.abs(r);if(e.allowScientific&&(n<.01||n>=1e5)){let o=e.scientificPrecision!==void 0?e.scientificPrecision:1,s=r.toExponential(o).split("e"),l=s[0].replace(/\.?0+$/,"");(l===""||l==="-")&&(l="0");let h=parseInt(s[1],10);return`${l}e${h}`}if(e.precision===0){let o=Math.round(r);return o===0?"0":String(o)}let a=r.toFixed(e.precision).replace(/\.?0+$/,"");return a==="-0"||a===""?"0":a}function Ue(t,e={precision:2,allowScientific:!0}){let r=f2(t,e);if(r==="inf"||r==="Infinity")return"\\infty";if(r==="-inf"||r==="-Infinity")return"-\\infty";if(r==="nan"||r==="NaN")return"\\mathrm{NaN}";if(r.includes("e")){let[n,i]=r.split("e");return`${n}\\times 10^{${parseInt(i,10)}}`}return r}function xt(t){let e=t.trim(),r={alpha:"\\alpha",beta:"\\beta",gamma:"\\gamma",delta:"\\delta",epsilon:"\\epsilon",theta:"\\theta",lambda:"\\lambda",mu:"\\mu",pi:"\\pi",sigma:"\\sigma",tau:"\\tau",phi:"\\phi",omega:"\\omega",Delta:"\\Delta",Sigma:"\\Sigma",Omega:"\\Omega"};if(r[e])return r[e];let n=e.match(/^([A-Za-z]+)_([A-Za-z0-9]+)$/);if(n){let a=r[n[1]]||(n[1].length===1?n[1]:`\\mathrm{${rr(n[1])}}`),o=/^\d+$/.test(n[2])||n[2].length===1?n[2]:`\\mathrm{${rr(n[2])}}`;return`${a}_{${o}}`}let i=e.match(/^([A-Za-z]+)(\d+)$/);return i?`${r[i[1]]||(i[1].length===1?i[1]:`\\mathrm{${rr(i[1])}}`)}_{${i[2]}}`:/^[A-Za-z]$/.test(e)?e:`\\mathrm{${rr(e)}}`}function rr(t){let e={"\\":"\\textbackslash{}",_:"\\_","&":"\\&","%":"\\%",$:"\\$","#":"\\#","{":"\\{","}":"\\}","~":"\\textasciitilde{}","^":"\\textasciicircum{}"};return Array.from(t).map(r=>e[r]??r).join("")}function st(t,e,r,n=4,i=4){if(!e||e.length===0)return Ue(t,r);if(e.length===1){let a=t,o=a.length,s;return o<=n?s=a.map(l=>Ue(l,r)):s=[Ue(a[0],r),Ue(a[1],r),"\\vdots",Ue(a[o-1],r)],`\\begin{bmatrix}${s.join("\\\\")}\\end{bmatrix}`}if(e.length===2){let a=t,[o,s]=e,l=d=>s<=i?d.map(m=>Ue(m,r)).join(" & "):`${Ue(d[0],r)} & ${Ue(d[1],r)} & \\dots & ${Ue(d[s-1],r)}`,h=[];if(o<=n)for(let d of a)h.push(l(d));else{h.push(l(a[0])),h.push(l(a[1]));let d=s<=i?Array(s).fill("\\vdots").join(" & "):"\\vdots & \\vdots & \\ddots & \\vdots";h.push(d),h.push(l(a[o-1]))}return`\\begin{bmatrix} ${h.join(" \\\\ ")} \\end{bmatrix}`}return`\\mathrm{Tensor}\\left(${e.join("\\times ")}\\right)`}function be(t,e=!1){try{return p0.renderToString(t,{throwOnError:!1,displayMode:e,strict:!1,trust:!1,maxExpand:1e3})}catch{return`<code>${Fe(t)}</code>`}}function yt(t){return!t||t.length===0?"\\mathbb{R}":t.length===1?`\\mathbb{R}^{${t[0]}}`:`\\mathbb{R}^{${t.join("\\times ")}}`}var K0=class{constructor(e,r,n,i="compact"){this.notation=e;this.formatConfig=r;this.customNames=n;this.tensorMode=i}resolveName(e,r){let n=e.startsWith("adjoint:")?e.slice(8):e;return this.customNames.get(n)||r}formatValueLatex(e){if(e==null)return"\\text{\u2014}";if(typeof e=="number"||typeof e=="string")return Ue(e,this.formatConfig);if(Array.isArray(e)){let r=Array.isArray(e[0])?[e.length,e[0].length]:[e.length];return this.tensorMode==="ultra"?yt(r):this.tensorMode==="compact"?r.length===1&&r[0]<=3||r.length===2&&r[0]<=3&&r[1]<=3?`{\\small ${st(e,r,this.formatConfig,3,3)}}`:yt(r):st(e,r,this.formatConfig)}return rr(String(e))}expressionLatex(e){let r=e.kind,n=e.args||[],i=this.notation==="mathbook";if(r==="literal"){if(Array.isArray(e.value)){let a=Array.isArray(e.value[0])?[e.value.length,e.value[0].length]:[e.value.length];return this.tensorMode==="ultra"?yt(a):this.tensorMode==="compact"?a.length===1&&a[0]<=3||a.length===2&&a[0]<=3&&a[1]<=3?`{\\small ${st(e.value,a,this.formatConfig,3,3)}}`:yt(a):st(e.value,a,this.formatConfig,4,4)}return Ue(e.value,this.formatConfig)}if(r==="ref"||r==="slot"){let a=this.resolveName(e.key,e.name);return xt(a)}if(r==="adjoint"){let a=this.resolveName(e.key,e.name),o=xt(a);return i?`\\overline{${o}}`:`${o}_{\\mathrm{bar}}`}if(r==="contribution"){let a=this.expressionLatex(n[0]),o=this.expressionLatex(n[1]),s=e.value!==null&&e.value!==void 0?`,${e.value}`:"";return i?`c_{${a}\\to ${o}${s}}`:`c_{\\mathrm{to\\,}${o}${s}}`}if(r==="partial"||r==="global_derivative"){let a=this.expressionLatex(n[0]),o=this.expressionLatex(n[1]);return i?r==="partial"?`\\frac{\\partial\\left(${a}\\right)}{\\partial ${o}}`:`\\frac{\\partial ${a}}{\\partial ${o}}`:`\\operatorname{diff}\\left(${a}, ${o}\\right)`}if(r==="neg")return`-${this.groupLatex(n[0])}`;if(["add","sub","mul","elementwise","scale","div","matmul"].includes(r)){if(r==="div"&&i)return`\\frac{${this.expressionLatex(n[0])}}{${this.expressionLatex(n[1])}}`;let a={add:" + ",sub:" - ",mul:i?" \\cdot ":" * ",scale:i?" \\cdot ":" * ",elementwise:i?" \\odot ":" * ",div:" / ",matmul:i?" \\, ":" @ "};return n.map(s=>r==="add"&&s.kind!=="neg"?this.expressionLatex(s):this.groupLatex(s)).join(a[r])}if(r==="pow"){let a=this.groupLatex(n[0]),o=this.expressionLatex(n[1]);return`${a}^{${o}}`}if(r==="transpose"){let a=n[0];if(a&&a.kind==="literal"&&Array.isArray(a.value)){if(!Array.isArray(a.value[0])){let v=[1,a.value.length];if(this.tensorMode==="ultra"||this.tensorMode==="compact"&&a.value.length>3)return yt(v);let g=st([a.value],v,this.formatConfig);return this.tensorMode==="compact"?`{\\small ${g}}`:g}let o=a.value,s=o.length,l=o[0]?.length||0,h=[l,s];if(this.tensorMode==="ultra"||this.tensorMode==="compact"&&(l>3||s>3))return yt(h);let d=Array.from({length:l},(v,g)=>Array.from({length:s},(k,w)=>o[w][g])),m=st(d,h,this.formatConfig);return this.tensorMode==="compact"?`{\\small ${m}}`:m}return`${this.groupLatex(a)}^{\\top}`}if(r==="outer"){let a=n.some(o=>o.kind==="literal");return i&&!a?`${this.groupLatex(n[0])}\\,${this.groupLatex(n[1])}^{\\top}`:`\\operatorname{outer}\\left(${n.map(o=>this.expressionLatex(o)).join(", ")}\\right)`}return r==="pick"?`${this.groupLatex(n[0])}[${this.expressionLatex(n[1])}]`:r==="positive"?`\\mathbb{I}\\left(${this.expressionLatex(n[0])} > 0\\right)`:r==="equal"?`\\mathbb{I}\\left(${this.expressionLatex(n[0])} = ${this.expressionLatex(n[1])}\\right)`:r==="sum"&&i?`\\sum\\left(${n.map(a=>this.expressionLatex(a)).join(", ")}\\right)`:`\\operatorname{${rr(r)}}\\left(${n.map(a=>this.expressionLatex(a)).join(", ")}\\right)`}groupLatex(e){let r=this.expressionLatex(e);return["add","sub","mul","elementwise","scale","div","matmul","neg","pow"].includes(e.kind)?`\\left(${r}\\right)`:e.kind==="literal"&&typeof e.value=="number"&&e.value<0?`\\left(${r}\\right)`:r.includes("^")?`\\left(${r}\\right)`:r}renderEquationHtml(e){let r=e.terms.map(n=>this.expressionLatex(n)).join(" = ");return be(r,!1)}renderDerivationHtml(e,r=!1){let n=this.expressionLatex(e.lhs),i=e.stages.map(s=>this.expressionLatex(s));if(i.length===0)return be(n,!1);if(!r&&i.length<=2)return be(`${n} = ${i.join(" = ")}`,!1);let a=be(`${n} = ${i[0]}`,!1),o=i.slice(1).map(s=>`<div class="dvi-deriv-line dvi-deriv-cont">${be(`= ${s}`,!1)}</div>`).join("");return`<div class="dvi-deriv"><div class="dvi-deriv-line">${a}</div>${o}</div>`}tensorIconHtml(e){return e.length===1||e.length===2&&e[1]===1?'<svg class="dvi-badge-icon" width="5" height="12" viewBox="0 0 5 12" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.6" y="0.6" width="3.8" height="10.8" stroke="currentColor" stroke-width="1"/><line x1="0.6" y1="4.2" x2="4.4" y2="4.2" stroke="currentColor" stroke-width="0.9"/><line x1="0.6" y1="7.8" x2="4.4" y2="7.8" stroke="currentColor" stroke-width="0.9"/></svg>':'<svg class="dvi-badge-icon" width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.6" y="0.6" width="10.8" height="10.8" stroke="currentColor" stroke-width="1"/><line x1="4.2" y1="0.6" x2="4.2" y2="11.4" stroke="currentColor" stroke-width="0.9"/><line x1="7.8" y1="0.6" x2="7.8" y2="11.4" stroke="currentColor" stroke-width="0.9"/><line x1="0.6" y1="4.2" x2="11.4" y2="4.2" stroke="currentColor" stroke-width="0.9"/><line x1="0.6" y1="7.8" x2="11.4" y2="7.8" stroke="currentColor" stroke-width="0.9"/></svg>'}renderValueHtml(e,r=""){if(e.kind==="none")return"\u2014";if(e.kind==="scalar")return be(Ue(e.data,this.formatConfig),!1);let n=yt(e.shape),i=this.tensorIconHtml(e.shape);if(this.tensorMode==="ultra")return`<span class="dvi-tensor-badge dvi-tensor-trigger" ${r} title="Hover to inspect tensor">${i}${be(n,!1)}</span>`;if(this.tensorMode==="inline"){let o=st(e.data,e.shape,this.formatConfig,4,4);return`<span class="dvi-tensor-inline dvi-tensor-trigger" ${r}>${be(o,!1)}</span>`}if(e.shape.length===1&&e.shape[0]<=3||e.shape.length===2&&e.shape[0]<=3&&e.shape[1]<=3){let o=st(e.data,e.shape,this.formatConfig,3,3);return`<span class="dvi-tensor-badge dvi-tensor-small dvi-tensor-trigger" ${r} title="Hover to inspect tensor">${be(o,!1)}</span>`}return`<span class="dvi-tensor-badge dvi-tensor-trigger" ${r} title="Hover to inspect tensor">${i}${be(n,!1)}</span>`}};function p2(t){return!t||t.length===0?"\\mathbb{R}":t.length===1?`\\mathbb{R}^{${t[0]}}`:`\\mathbb{R}^{${t.join("\\times ")}}`}function B1(t,e,r){let n=(s,l,h)=>{let d=st(l.data,l.shape,e,10,10),m=be(`${s} = ${d}`,!0);return`
<div class="dvi-insp-section ${h?"dvi-insp-adjoint":"dvi-insp-primal"}">
<div class="dvi-insp-math">${m}</div>
</div>
`},i=t.primal&&t.primal.kind!=="none"?t.primal:t.adjoint&&t.adjoint.kind!=="none"?t.adjoint:null,a=i?`${t.titleLatex} \\in ${p2(i.shape)}`:t.titleLatex,o="";return t.primal&&t.primal.kind!=="none"&&(o+=n(t.titleLatex,t.primal,!!t.isBackward)),t.adjoint&&t.adjoint.kind!=="none"&&(o+=n(`\\overline{${t.titleLatex}}`,t.adjoint,!0)),`
<div class="dvi-insp-header">
<div class="dvi-insp-title">
${be(a,!1)}
<span class="dvi-insp-sub">${Fe(t.subtitle)}</span>
</div>
<div class="dvi-insp-actions">
<button type="button" class="dvi-insp-close" title="Close">\u2715</button>
</div>
</div>
<div class="dvi-insp-body">
${o}
</div>
`}var Z0=class Z0{constructor(e,r){this.currentTransform=_t;this.customNames=new Map;this.uncollapsedCompactSteps=new Set;this.expandedStepDerivations=new Set;this.tensorMode="compact";this.graphMode="full";this.focusedNodeId=null;this.editingNodeUid=null;this.inspectorPinned=!1;this.quantitiesByUid=new Map;this.stepsByUid=new Map;this.stepsBySourceUid=new Map;this.pendingFocusKey=null;this.rootEl=e,this.payload=r;for(let n of r.quantities)this.quantitiesByUid.set(n.uid,n);for(let n of r.steps){this.stepsByUid.set(n.uid,n);let i=this.stepsBySourceUid.get(n.sourceQuantityUid)||[];i.push(n),this.stepsBySourceUid.set(n.sourceQuantityUid,i),r.steps.length<=6&&this.expandedStepDerivations.add(n.uid)}this.buildShell(),this.renderGraph(!0)}buildShell(){this.rootEl.innerHTML="";let e=document.createElement("div");e.className="dvi-toolbar",e.innerHTML=`
<div class="dvi-toolbar-group">
<span class="dvi-tool-label">Graph</span>
<div class="dvi-seg-group" data-group="graph-mode">
<button type="button" class="dvi-seg-btn dvi-active" data-mode="full">Full Autodiff</button>
<button type="button" class="dvi-seg-btn" data-mode="compact">Compact Flow</button>
</div>
<span class="dvi-tool-label" style="margin-left:8px;">Backward Steps</span>
<button type="button" class="dvi-tool-btn" data-action="expand-all-steps">Expand All</button>
<button type="button" class="dvi-tool-btn" data-action="collapse-all-steps">Collapse All</button>
<span class="dvi-tool-label" style="margin-left:8px;">Tensors</span>
<div class="dvi-seg-group" data-group="tensor-mode">
<button type="button" class="dvi-seg-btn" data-tmode="ultra">Ultra-Compact</button>
<button type="button" class="dvi-seg-btn dvi-active" data-tmode="compact">Compact (\u22643\xD73)</button>
<button type="button" class="dvi-seg-btn" data-tmode="inline">Inline Matrices</button>
</div>
</div>
<div class="dvi-toolbar-group">
<button type="button" class="dvi-tool-btn" data-action="reset-names" style="display:none;">\u21BA Reset Names</button>
<button type="button" class="dvi-tool-btn" data-action="fit-view" title="Fit diagram to view">\u22A1 Fit</button>
<button type="button" class="dvi-tool-btn" data-action="fullscreen" title="Toggle fullscreen">\u26F6 Fullscreen</button>
</div>
`,this.rootEl.appendChild(e);let r=document.createElement("div");r.className="dvi-hint-bar",r.innerHTML=`
<span>\u{1F4A1} <b>Interact:</b> Click any <b>backward step</b> or <b>purple edge/compartment</b> to expand/collapse its rule \u2022 Click <b>\u270E</b> (or double-click) to rename variables \u2022 Hover/click <b>tensors</b> for LaTeX matrix & heatmap</span>
<span class="dvi-zoom-readout">100%</span>
`,this.rootEl.appendChild(r);let n=document.createElement("div");n.className="dvi-viewport",this.viewportEl=n;let i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.setAttribute("class","dvi-svg-layer"),i.innerHTML='<g class="dvi-svg-root"></g>',this.svgEl=i,this.svgRootG=Ie(i).select("g.dvi-svg-root"),n.appendChild(i);let a=document.createElement("div");a.className="dvi-html-layer",this.htmlLayerEl=a,this.installKeyboardSupport(),n.appendChild(a);let o=document.createElement("div");o.className="dvi-inspector-popover",o.style.display="none",this.inspectorEl=o,n.appendChild(o),this.rootEl.appendChild(n),this.zoomBehavior=Fi().scaleExtent([.18,3]).filter(s=>{let l=s.target;return l&&(l.closest(".dvi-inspector-popover")||l.closest("input"))?!1:!s.ctrlKey&&!s.button}).on("zoom",s=>{this.currentTransform=s.transform;let{x:l,y:h,k:d}=s.transform;this.svgRootG.attr("transform",`translate(${l},${h}) scale(${d})`),this.htmlLayerEl.style.transform=`translate(${l}px, ${h}px) scale(${d})`;let m=this.rootEl.querySelector(".dvi-zoom-readout");m&&(m.textContent=`${Math.round(d*100)}%`)}),Ie(this.viewportEl).call(this.zoomBehavior).on("dblclick.zoom",null),this.viewportEl.addEventListener("click",s=>{let l=s.target;(l===this.viewportEl||l===this.svgEl)&&(this.focusedNodeId&&(this.focusedNodeId=null,this.applyFocusHighlighting()),this.inspectorPinned&&this.hideInspector(!0))}),e.addEventListener("click",s=>{let l=s.target.closest("button");if(!l)return;let h=l.getAttribute("data-mode");if(h){this.graphMode=h,h==="compact"&&this.uncollapsedCompactSteps.clear(),this.syncModeButtons(),this.renderGraph(!0);return}let d=l.getAttribute("data-tmode");if(d){this.tensorMode=d,e.querySelectorAll('[data-group="tensor-mode"] .dvi-seg-btn').forEach(v=>v.classList.toggle("dvi-active",v===l)),this.renderGraph(!1);return}let m=l.getAttribute("data-action");if(m==="expand-all-steps"){this.graphMode==="compact"&&(this.graphMode="full",this.syncModeButtons());for(let v of this.payload.steps)this.expandedStepDerivations.add(v.uid);this.renderGraph(!1)}else m==="collapse-all-steps"?(this.graphMode==="compact"?this.uncollapsedCompactSteps.clear():this.expandedStepDerivations.clear(),this.renderGraph(!1)):m==="reset-names"?(this.customNames.clear(),l.style.display="none",this.renderGraph(!1)):m==="fit-view"?this.fitToViewport(!0):m==="fullscreen"&&(document.fullscreenElement?document.exitFullscreen?.():this.rootEl.requestFullscreen?.())})}syncModeButtons(){this.rootEl.querySelectorAll('[data-group="graph-mode"] .dvi-seg-btn').forEach(e=>{e.classList.toggle("dvi-active",e.getAttribute("data-mode")===this.graphMode)})}getMathRenderer(){return new K0(this.payload.notation,this.payload.formatConfig,this.customNames,this.tensorMode)}getDisplayName(e){return this.customNames.get(e.uid)||e.name}isStepShownAsNode(e){return this.payload.forwardOnly?!1:this.graphMode==="full"?!0:this.uncollapsedCompactSteps.has(e)}renderGraph(e=!1){let r=this.getMathRenderer();this.htmlLayerEl.innerHTML="",this.svgRootG.selectAll("*").remove();let n=[],i=[];this.buildQuantityNodes(r,n),this.buildOutputNode(n);let a=new Set;this.buildStepAndSigmaNodes(r,n,a),this.buildEdges(r,n,i,a),this.layoutAndDraw(n,i),this.applyFocusHighlighting(),this.applyAccessibility(),e&&requestAnimationFrame(()=>this.fitToViewport(!1))}buildQuantityNodes(e,r){for(let n of this.payload.quantities){let i=document.createElement("div"),a=n.isInput?"inputs":"operations";if(!n.differentiable&&n.isConstant){i.className="dvi-node dvi-node-constant",i.innerHTML=e.renderValueHtml(n.primal),this.htmlLayerEl.appendChild(i),r.push({id:n.uid,kind:"constant",el:i,width:0,height:0,region:a,quantity:n});continue}i.className="dvi-node dvi-node-quantity",i.setAttribute("data-node-id",n.uid);let o=this.getDisplayName(n),s=xt(o),l="";if(this.editingNodeUid===n.uid)l=`
<div class="dvi-q-primal">
<input type="text" class="dvi-rename-input" value="${Fe(o)}" data-rename-uid="${Fe(n.uid)}" />
</div>
`;else if(this.graphMode==="compact")l=`
<div class="dvi-q-primal dvi-tensor-trigger" ${`data-inspect-node="${Fe(n.uid)}"`} title="${n.operation?"Click to highlight paths":"Input node"}">
<span>${be(s,!1)}</span>
</div>
`;else{let d=`data-inspect-node="${Fe(n.uid)}"`,m=e.renderValueHtml(n.primal,d),v=s;if(n.operation){let g=e.expressionLatex(n.operation.formula);v=`${s} = ${g}`}l=`
<div class="dvi-q-primal">
<span>${be(`${v} =`,!1)}</span>
${m}
<button type="button" class="dvi-rename-btn" data-trigger-rename="${Fe(n.uid)}" title="Rename variable (${Fe(o)})">\u270E</button>
</div>
`}let h="";if(this.graphMode==="full"&&!this.payload.forwardOnly&&n.differentiable&&n.adjoint&&n.adjoint.kind!=="none"){let d=this.payload.notation==="mathbook"?`\\overline{${s}} =`:`${s}_{\\mathrm{bar}} =`,m=`data-inspect-node="${Fe(n.uid)}"`,v=e.renderValueHtml(n.adjoint,m),g=this.stepsBySourceUid.get(n.uid)||[];h=`
<div class="dvi-q-divider"></div>
<div class="dvi-q-adjoint" data-toggle-source-steps="${Fe(n.uid)}" title="${g.length>0?"Click to toggle backward step details":""}">
<span>${be(d,!1)}</span>
${v}
</div>
`}i.innerHTML=l+h,this.wireQuantityNodeEvents(i,n),this.htmlLayerEl.appendChild(i),r.push({id:n.uid,kind:"quantity",el:i,width:0,height:0,region:a,quantity:n})}}buildOutputNode(e){if(this.payload.outputStateUid){let r=document.createElement("div");r.className="dvi-node dvi-node-output-circle",r.setAttribute("data-node-id",this.payload.outputStateUid),r.title=`Output: ${this.payload.outputName}`,this.htmlLayerEl.appendChild(r),e.push({id:this.payload.outputStateUid,kind:"output",el:r,width:24,height:24,region:"output"})}}buildStepAndSigmaNodes(e,r,n){if(!this.payload.forwardOnly){for(let i of this.payload.steps){if(!this.isStepShownAsNode(i.uid))continue;n.add(i.uid);let a=document.createElement("div");a.className="dvi-node dvi-node-step",a.setAttribute("data-node-id",i.uid);let o=this.expandedStepDerivations.has(i.uid),s=i.explanation;if(s){let l=s.bindings.length>0?`<div style="font-size:0.75rem;color:#6b21a8;margin-bottom:2px;">${s.bindings.map(g=>e.renderEquationHtml(g)).join(", ")}</div>`:"",h=s.localDerivativeRule?`<div style="margin-bottom:2px;">${e.renderEquationHtml(s.localDerivativeRule)}</div>`:"",d=e.renderEquationHtml(s.localRule),m=this.graphMode==="compact"?"\u2715":o?"\u25BE":"\u25B8",v="";if(o||this.graphMode==="compact"){let g=e.renderDerivationHtml(s.application),k=s.notes&&s.notes.length>0?`<div class="dvi-step-notes">${s.notes.map(Fe).join(" \u2022 ")}</div>`:"";v=`<div class="dvi-step-body">${g}${k}</div>`}a.innerHTML=`
<div class="dvi-step-hdr" title="Click to toggle derivation">
<div>${l}${h}${d}</div>
<span class="dvi-step-toggle">${m}</span>
</div>
${v}
`}a.addEventListener("click",l=>{l.stopPropagation(),this.graphMode==="compact"?this.uncollapsedCompactSteps.delete(i.uid):this.expandedStepDerivations.has(i.uid)?this.expandedStepDerivations.delete(i.uid):this.expandedStepDerivations.add(i.uid),this.renderGraph(!1)}),a.addEventListener("mouseenter",()=>{let l=this.quantitiesByUid.get(i.destinationQuantityUid),h=this.quantitiesByUid.get(i.sourceQuantityUid);if(i.contribution.kind==="tensor"&&l&&h){let d=e.expressionLatex(i.explanation.contribution);this.showInspector(a,{titleLatex:d,subtitle:`Backward contribution from ${this.getDisplayName(h)} to ${this.getDisplayName(l)}`,primal:i.contribution,isBackward:!0},!1)}}),a.addEventListener("mouseleave",()=>this.hideInspector(!1)),this.htmlLayerEl.appendChild(a),r.push({id:i.uid,kind:"step",el:a,width:0,height:0,region:"operations",step:i})}for(let i of this.payload.accumulations){let a=document.createElement("div");a.className="dvi-node dvi-node-sigma",a.setAttribute("data-node-id",i.uid),a.innerHTML=be("\\Sigma",!1),a.title="Accumulates gradient contributions from multiple paths",this.htmlLayerEl.appendChild(a),r.push({id:i.uid,kind:"sigma",el:a,width:32,height:32,region:"operations",accumulation:i})}}}buildEdges(e,r,n,i){if(this.payload.forwardEdges.forEach((a,o)=>{let s=this.quantitiesByUid.get(a.source),l=s?xt(this.getDisplayName(s)):"\\text{val}",h=e.renderValueHtml(a.value),d=a.value.kind==="tensor"?{titleLatex:l,subtitle:"Forward edge value",primal:a.value,isBackward:!1}:void 0;n.push({id:`fwd_${o}`,dagreSource:a.source,dagreTarget:a.destination,semanticSource:a.source,semanticTarget:a.destination,role:"forward",reversedForLayout:!1,labelHtml:h,labelWidth:0,labelHeight:0,inspectorPayload:d})}),!this.payload.forwardOnly){let a=new Map;for(let o of this.payload.accumulations)a.set(o.destinationQuantityUid,o);if(this.graphMode==="full")this.payload.backwardEdges.forEach((o,s)=>{let l="",h="adjoint",d="\\text{grad}";if(o.kind==="contribution")h="contribution",l=`<span>Contribution: </span>${e.renderValueHtml(o.value)}`,d="c";else{let v=o.quantityUid?this.quantitiesByUid.get(o.quantityUid):void 0,g=v?xt(this.getDisplayName(v)):"q",k=this.payload.notation==="mathbook"?`\\overline{${g}}`:`${g}_{\\mathrm{bar}}`;if(d=k,o.kind==="adjoint_propagation")l=`${be(`${k} =`,!1)} ${e.renderValueHtml(o.value)}`;else if(o.adjointEquation){let w=xt(this.payload.outputName),M=this.payload.notation==="mathbook"?`\\frac{\\partial ${w}}{\\partial ${g}}`:`\\operatorname{diff}\\left(${w}, ${g}\\right)`;l=`${be(`${k} = ${M} =`,!1)} ${e.renderValueHtml(o.value)}${o.seed?' <i style="margin-left:3px;">seed</i>':""}`}}let m=o.value.kind==="tensor"?{titleLatex:d,subtitle:o.kind==="contribution"?"Gradient contribution":"Adjoint flow",primal:o.value,isBackward:!0}:void 0;n.push({id:`bwd_${s}`,dagreSource:o.destination,dagreTarget:o.source,semanticSource:o.source,semanticTarget:o.destination,role:h,reversedForLayout:!0,labelHtml:l,labelWidth:0,labelHeight:0,inspectorPayload:m})});else{this.payload.backwardEdges.filter(o=>o.seed).forEach((o,s)=>{let l=`${e.renderValueHtml(o.value)}`;n.push({id:`bwd_seed_${s}`,dagreSource:o.destination,dagreTarget:o.source,semanticSource:o.source,semanticTarget:o.destination,role:"adjoint",reversedForLayout:!0,labelHtml:l,labelWidth:0,labelHeight:0})}),this.payload.steps.forEach((o,s)=>{let l=o.explanation?e.expressionLatex(o.explanation.contribution):"c",h=a.get(o.destinationQuantityUid),d=!!h,m=h?h.uid:o.destinationQuantityUid;if(i.has(o.uid))n.push({id:`bwd_c_in_${s}`,dagreSource:o.uid,dagreTarget:o.sourceQuantityUid,semanticSource:o.sourceQuantityUid,semanticTarget:o.uid,role:"adjoint",reversedForLayout:!0,labelHtml:`${e.renderValueHtml(o.incomingAdjoint)}`,labelWidth:0,labelHeight:0}),n.push({id:`bwd_c_out_${s}`,dagreSource:m,dagreTarget:o.uid,semanticSource:o.uid,semanticTarget:m,role:d?"contribution":"adjoint",reversedForLayout:!0,labelHtml:`${e.renderValueHtml(o.contribution)}`,labelWidth:0,labelHeight:0});else{let v=`${e.renderValueHtml(o.contribution)}`;n.push({id:`bwd_compact_${s}`,dagreSource:m,dagreTarget:o.sourceQuantityUid,semanticSource:o.sourceQuantityUid,semanticTarget:m,role:d?"contribution":"adjoint",reversedForLayout:!0,labelHtml:v,labelWidth:0,labelHeight:0,expandableStepUid:o.uid,inspectorPayload:o.contribution.kind==="tensor"?{titleLatex:l,subtitle:"Backward contribution (click edge label to expand rule)",primal:o.contribution,isBackward:!0}:void 0})}});for(let o of this.payload.accumulations){let s=this.quantitiesByUid.get(o.destinationQuantityUid),l=s?xt(this.getDisplayName(s)):"q",h=this.payload.notation==="mathbook"?`\\overline{${l}}`:`${l}_{\\mathrm{bar}}`;n.push({id:`bwd_acc_out_${o.uid}`,dagreSource:o.destinationQuantityUid,dagreTarget:o.uid,semanticSource:o.uid,semanticTarget:o.destinationQuantityUid,role:"adjoint",reversedForLayout:!0,labelHtml:`${e.renderValueHtml(o.resultingAdjoint)}`,labelWidth:0,labelHeight:0,inspectorPayload:o.resultingAdjoint.kind==="tensor"?{titleLatex:h,subtitle:"Accumulated adjoint",primal:o.resultingAdjoint,isBackward:!0}:void 0})}}}for(let a of n){if(!a.labelHtml||!a.labelHtml.trim())continue;let o=document.createElement("div");o.className=`dvi-edge-label dvi-edge-label-${a.role}${a.expandableStepUid?" dvi-edge-label-expandable":""}`,o.setAttribute("data-edge-id",a.id),o.innerHTML=a.labelHtml,a.expandableStepUid&&(o.title="Click to expand backward step rule & derivation",o.addEventListener("click",s=>{s.stopPropagation(),this.uncollapsedCompactSteps.add(a.expandableStepUid),this.expandedStepDerivations.add(a.expandableStepUid),this.renderGraph(!1)})),a.inspectorPayload&&(o.style.cursor="pointer",o.addEventListener("mouseenter",()=>{this.showInspector(o,a.inspectorPayload,!1)}),o.addEventListener("mouseleave",()=>{this.hideInspector(!1)}),a.expandableStepUid||o.addEventListener("click",s=>{s.stopPropagation(),this.showInspector(o,a.inspectorPayload,!0)})),this.htmlLayerEl.appendChild(o),a.labelEl=o}}layoutAndDraw(e,r){let n=this.htmlLayerEl.style.transform;this.htmlLayerEl.style.transform="translate(0px, 0px) scale(1)";for(let s of e)s.width=Math.max(s.el.offsetWidth+4,24),s.height=Math.max(s.el.offsetHeight+4,24);for(let s of r)s.labelEl?(s.labelWidth=s.labelEl.offsetWidth+4,s.labelHeight=s.labelEl.offsetHeight+2):(s.labelWidth=0,s.labelHeight=0);this.htmlLayerEl.style.transform=n;let i=new J0.graphlib.Graph({multigraph:!0});i.setGraph({rankdir:"BT",nodesep:56,ranksep:72,edgesep:38,marginx:36,marginy:36}),i.setDefaultEdgeLabel(()=>({}));for(let s of e)i.setNode(s.id,{width:s.width,height:s.height});for(let s of r){let l=s.labelWidth>0?Math.round(s.labelWidth*1.45+16):0,h=s.labelHeight>0?Math.round(s.labelHeight+8):0;i.setEdge(s.dagreSource,s.dagreTarget,{width:l,height:h,labelpos:"c",weight:s.role==="forward"?2:1},s.id)}J0.layout(i),this.enforceRegionSeparation(e,r,i),this.drawRegionBands(e,i);for(let s of e){let l=i.node(s.id);l&&(s.el.style.left=`${l.x}px`,s.el.style.top=`${l.y}px`)}let a=this.svgRootG.append("g").attr("class","dvi-edges-group"),o=[];for(let s of r){let l=i.edge(s.dagreSource,s.dagreTarget,s.id);if(!l||!l.points)continue;let h=s.reversedForLayout?[...l.points].reverse():l.points,d=i.node(s.semanticSource),m=i.node(s.semanticTarget);if(!d||!m)continue;let v=this.clipEdgePoints(h,d,m),{linePath:g,tipPath:k,midX:w,midY:M}=this.buildCurveWithCleanArrowTip(v),E=null;if(g&&(E=a.append("path").attr("class",`dvi-edge-path dvi-edge-${s.role}`).attr("data-edge-id",s.id).attr("data-src",s.semanticSource).attr("data-dst",s.semanticTarget).attr("d",g).node()),k&&a.append("path").attr("class",`dvi-edge-tip dvi-edge-tip-${s.role}`).attr("data-edge-id",s.id).attr("data-src",s.semanticSource).attr("data-dst",s.semanticTarget).attr("d",k),s.labelEl){let I=w,L=M,B=.5,q=0;if(E)try{if(q=E.getTotalLength(),q>0){let H=l.y!==void 0&&Number.isFinite(l.y)?l.y:(d.y+m.y)/2,F=E.getPointAtLength(q*.5),X=Math.abs(F.y-H),Q=28;for(let oe=5;oe<=Q-5;oe++){let ke=oe/Q,ne=E.getPointAtLength(q*ke),Qe=Math.abs(ne.y-H);Qe<X&&(X=Qe,F=ne,B=ke)}I=F.x,L=F.y}}catch{}E&&q>0?o.push({edge:s,pathNode:E,totalLen:q,t:B,x:I,y:L,w:s.labelWidth,h:s.labelHeight}):(s.labelEl.style.left=`${I}px`,s.labelEl.style.top=`${L}px`)}}this.deconflictEdgeLabelsAlongCurves(o,e,i);for(let s of o)s.edge.labelEl&&(s.edge.labelEl.style.left=`${s.x}px`,s.edge.labelEl.style.top=`${s.y}px`)}a11yKey(e){let r=e.closest("[data-node-id], [data-edge-id]");if(!r)return null;let n=r.getAttribute("data-node-id")??`edge:${r.getAttribute("data-edge-id")}`;return e===r?n:`${n}|${e.className}`}applyAccessibility(){let e=this.htmlLayerEl;for(let[r,n]of Z0.A11Y_TARGETS)e.querySelectorAll(r).forEach(i=>{i.tabIndex=0,i.setAttribute("role","button");let a=this.quantitiesByUid.get(i.getAttribute("data-node-id")||""),o=a&&i.classList.contains("dvi-node-quantity")?`${this.getDisplayName(a)}. `:"";i.setAttribute("aria-label",o+n(i))});if(e.querySelectorAll("[data-trigger-rename]").forEach(r=>{r.setAttribute("aria-label",r.title||"Rename variable")}),this.pendingFocusKey){let r=this.pendingFocusKey;this.pendingFocusKey=null,Array.from(e.querySelectorAll('[tabindex="0"]')).find(i=>this.a11yKey(i)===r)?.focus({preventScroll:!0})}}installKeyboardSupport(){let e=this.htmlLayerEl,r=n=>n instanceof HTMLElement&&n.getAttribute("role")==="button"&&e.contains(n);e.addEventListener("keydown",n=>{r(n.target)&&(n.key==="Enter"||n.key===" "?(n.preventDefault(),this.pendingFocusKey=this.a11yKey(n.target),n.target.click()):n.key==="F2"&&n.target.classList.contains("dvi-node-quantity")&&(n.preventDefault(),n.target.dispatchEvent(new MouseEvent("dblclick",{bubbles:!0}))))}),e.addEventListener("focusin",n=>{r(n.target)&&n.target.dispatchEvent(new MouseEvent("mouseenter"))}),e.addEventListener("focusout",n=>{r(n.target)&&n.target.dispatchEvent(new MouseEvent("mouseleave"))})}deconflictEdgeLabelsAlongCurves(e,r,n){if(e.length<=1)return;let i=[];for(let l of r){let h=n.node(l.id);h&&i.push({x:h.x,y:h.y,w:l.width,h:l.height})}let a=6,o=(l,h,d,m,v,g,k,w)=>{let M=Math.max(0,(d+k)/2+a-Math.abs(l-v)),E=Math.max(0,(m+w)/2+a-Math.abs(h-g));return M*E},s=[0,-.08,.08,-.16,.16,-.24,.24,-.31,.31];for(let l=0;l<4;l++){let h=!1;for(let d=0;d<e.length;d++){let m=e[d],v=0;for(let I=0;I<e.length;I++){if(d===I)continue;let L=e[I];v+=o(m.x,m.y,m.w,m.h,L.x,L.y,L.w,L.h)}for(let I of i)v+=o(m.x,m.y,m.w,m.h,I.x,I.y,I.w,I.h)*2;if(v<=0)continue;let g=.5,k=m.t,w=m.x,M=m.y,E=v+Math.abs(m.t-g)*40;for(let I of s){let L=Math.max(.16,Math.min(.84,g+I)),B;try{B=m.pathNode.getPointAtLength(m.totalLen*L)}catch{continue}let q=0;for(let F=0;F<e.length;F++){if(d===F)continue;let X=e[F];q+=o(B.x,B.y,m.w,m.h,X.x,X.y,X.w,X.h)}for(let F of i)q+=o(B.x,B.y,m.w,m.h,F.x,F.y,F.w,F.h)*2;let H=q+Math.abs(L-g)*40;H<E-.5&&(E=H,k=L,w=B.x,M=B.y)}k!==m.t&&(m.t=k,m.x=w,m.y=M,h=!0)}if(!h)break}}enforceRegionSeparation(e,r,n){let i=e.filter(m=>m.region==="operations"),a=e.filter(m=>m.region==="inputs"),o=e.filter(m=>m.region==="output");if(i.length===0)return;let s=-1/0,l=1/0;for(let m of i){let v=n.node(m.id);v&&(s=Math.max(s,v.y+m.height/2),l=Math.min(l,v.y-m.height/2))}let h=s+76;for(let m of a){let v=n.node(m.id);if(!v)continue;v.y-m.height/2<h&&(v.y=h+m.height/2)}let d=l-68;for(let m of o){let v=n.node(m.id);if(!v)continue;v.y+m.height/2>d&&(v.y=d-m.height/2)}for(let m of r){let v=n.edge(m.dagreSource,m.dagreTarget,m.id),g=n.node(m.dagreSource),k=n.node(m.dagreTarget);if(!v||!v.points||!g||!k)continue;let w=v.points;if(w.length>=2){let M=Math.min(w[0].y,w[w.length-1].y),I=Math.max(w[0].y,w[w.length-1].y)-M,L=g.y-(g.height??0)/2,B=k.y+(k.height??0)/2;if(L<B||Math.abs(w[0].y-L)>12||Math.abs(w[w.length-1].y-B)>12){w[0]={x:w[0].x,y:L},w[w.length-1]={x:w[w.length-1].x,y:B};for(let q=1;q<w.length-1;q++){let H=I>1?(w[q].y-w[0].y)/(w[w.length-1].y-w[0].y):q/(w.length-1),F=Math.max(.15,Math.min(.85,Number.isFinite(H)?H:q/(w.length-1)));w[q].y=L+(B-L)*F}v.y=(L+B)/2}}}}drawRegionBands(e,r){let n=this.svgRootG.append("g").attr("class","dvi-regions-group"),i={output:[],operations:[],inputs:[]};for(let d of e)i[d.region].push(d);let a=1/0,o=-1/0;for(let d of e){let m=r.node(d.id);m&&(a=Math.min(a,m.x-d.width/2),o=Math.max(o,m.x+d.width/2))}if(!Number.isFinite(a))return;let s=a-36,l=Math.max(o-a+72,280),h=[{key:"output",title:`Output: ${this.payload.outputName} = ${this.payload.formula}`,cssClass:"dvi-region-output"},{key:"operations",title:"Operations",cssClass:"dvi-region-operations"},{key:"inputs",title:"Inputs",cssClass:"dvi-region-inputs",footerTitle:!0}];for(let d of h){let m=i[d.key];if(m.length===0)continue;let v=1/0,g=-1/0;for(let q of m){let H=r.node(q.id);H&&(v=Math.min(v,H.y-q.height/2),g=Math.max(g,H.y+q.height/2))}let k=d.footerTitle?18:28,w=d.footerTitle?30:18,M=v-k,E=g-v+k+w;n.append("rect").attr("class",`dvi-region-rect ${d.cssClass}`).attr("x",s).attr("y",M).attr("width",l).attr("height",E);let I=d.key==="operations"?s+14:s+l/2,L=d.footerTitle?M+E-10:M+18,B=d.key==="operations"?"start":"middle";n.append("text").attr("class",`dvi-region-title dvi-region-title-${d.key}`).attr("x",I).attr("y",L).attr("text-anchor",B).text(d.title)}}clipEdgePoints(e,r,n){if(e.length<2)return e;let i=e.map(a=>({...a}));return r&&i.length>=2&&(i[0]=this.intersectRect(r,i[1])),n&&i.length>=2&&(i[i.length-1]=this.intersectRect(n,i[i.length-2])),i}intersectRect(e,r){let n=r.x-e.x,i=r.y-e.y,a=e.width/2,o=e.height/2;if(n===0&&i===0)return{x:e.x,y:e.y};let s=Math.abs(n)/a,l=Math.abs(i)/o,h=1/Math.max(s,l);return{x:e.x+n*h,y:e.y+i*h}}buildCurveWithCleanArrowTip(e){if(e.length<2)return{linePath:"",tipPath:"",midX:0,midY:0};let r=0,n=0;if(e.length===2)r=.5*(e[0].x+e[1].x),n=.5*(e[0].y+e[1].y);else if(e.length===3)r=.25*e[0].x+.5*e[1].x+.25*e[2].x,n=.25*e[0].y+.5*e[1].y+.25*e[2].y;else{let F=Math.floor(e.length/2);r=.5*(e[F-1].x+e[F].x),n=.5*(e[F-1].y+e[F].y)}let i=e[e.length-1],a=e[e.length-2],o=i.x-a.x,s=i.y-a.y,l=Math.hypot(o,s);if(l<.001)return{linePath:"",tipPath:"",midX:r,midY:n};let h=o/l,d=s/l,m=-d,v=h,g=Math.min(8,l*.6),k=3.6,w={x:i.x-h*g,y:i.y-d*g},M=w.x+m*k,E=w.y+v*k,I=w.x-m*k,L=w.y-v*k,B=`M ${i.x.toFixed(2)} ${i.y.toFixed(2)} L ${M.toFixed(2)} ${E.toFixed(2)} L ${I.toFixed(2)} ${L.toFixed(2)} Z`,q=e.map(F=>({...F}));return q[q.length-1]=w,{linePath:this.buildSmoothSvgPath(q),tipPath:B,midX:r,midY:n}}buildSmoothSvgPath(e){if(e.length===0)return"";if(e.length===1)return`M ${e[0].x.toFixed(2)} ${e[0].y.toFixed(2)}`;if(e.length===2)return`M ${e[0].x.toFixed(2)} ${e[0].y.toFixed(2)} L ${e[1].x.toFixed(2)} ${e[1].y.toFixed(2)}`;if(e.length===3)return`M ${e[0].x.toFixed(2)} ${e[0].y.toFixed(2)} Q ${e[1].x.toFixed(2)} ${e[1].y.toFixed(2)}, ${e[2].x.toFixed(2)} ${e[2].y.toFixed(2)}`;let r=`M ${e[0].x.toFixed(2)} ${e[0].y.toFixed(2)}`;for(let a=1;a<e.length-2;a++){let o=e[a],s=e[a+1],l=(o.x+s.x)/2,h=(o.y+s.y)/2;r+=` Q ${o.x.toFixed(2)} ${o.y.toFixed(2)}, ${l.toFixed(2)} ${h.toFixed(2)}`}let n=e[e.length-2],i=e[e.length-1];return r+=` Q ${n.x.toFixed(2)} ${n.y.toFixed(2)}, ${i.x.toFixed(2)} ${i.y.toFixed(2)}`,r}wireQuantityNodeEvents(e,r){let n=e.querySelector("[data-rename-uid]");if(n){setTimeout(()=>{n.focus(),n.select()},10);let s=!1,l=()=>{if(s)return;s=!0;let h=n.value.trim();if(this.editingNodeUid=null,h&&/^[a-zA-Z][a-zA-Z0-9_]*$/.test(h)){h===r.name?this.customNames.delete(r.uid):this.customNames.set(r.uid,h);let d=this.rootEl.querySelector('[data-action="reset-names"]');d&&(d.style.display=this.customNames.size>0?"inline-flex":"none")}this.renderGraph(!1)};n.addEventListener("keydown",h=>{h.stopPropagation(),h.key==="Enter"?l():h.key==="Escape"&&(s=!0,this.editingNodeUid=null,this.renderGraph(!1))}),n.addEventListener("blur",()=>l());return}if(this.graphMode!=="compact"){let s=e.querySelector("[data-trigger-rename]");s&&s.addEventListener("click",l=>{l.stopPropagation(),this.editingNodeUid=r.uid,this.renderGraph(!1)}),e.addEventListener("dblclick",l=>{l.stopPropagation(),this.editingNodeUid=r.uid,this.renderGraph(!1)})}let i=e.querySelector("[data-toggle-source-steps]");i&&i.addEventListener("click",s=>{let l=this.stepsBySourceUid.get(r.uid)||[];if(l.length!==0){if(s.stopPropagation(),this.graphMode==="compact"){let h=l.some(d=>this.uncollapsedCompactSteps.has(d.uid));for(let d of l)h?this.uncollapsedCompactSteps.delete(d.uid):(this.uncollapsedCompactSteps.add(d.uid),this.expandedStepDerivations.add(d.uid))}else{let h=l.some(d=>this.expandedStepDerivations.has(d.uid));for(let d of l)h?this.expandedStepDerivations.delete(d.uid):this.expandedStepDerivations.add(d.uid)}this.renderGraph(!1)}});let a=()=>{let s=this.getDisplayName(r);return{titleLatex:xt(s),subtitle:r.isInput?"Input quantity":`Operation result (${r.operation?.kind||""})`,primal:r.primal,adjoint:r.adjoint}};e.querySelectorAll(".dvi-tensor-trigger").forEach(s=>{s.addEventListener("mouseenter",()=>{this.showInspector(e,a(),!1)}),s.addEventListener("mouseleave",()=>{this.hideInspector(!1)}),s.addEventListener("click",l=>{l.stopPropagation(),this.showInspector(e,a(),!0)})}),r.shape&&r.shape.length>0&&(e.addEventListener("mouseenter",()=>{this.showInspector(e,a(),!1)}),e.addEventListener("mouseleave",()=>{this.hideInspector(!1)})),e.addEventListener("click",s=>{s.stopPropagation(),this.focusedNodeId=this.focusedNodeId===r.uid?null:r.uid,this.applyFocusHighlighting()})}showInspector(e,r,n){if(this.inspectorPinned&&!n)return;n&&(this.inspectorPinned=!0),this.inspectorEl.innerHTML=B1(r,this.payload.formatConfig,this.inspectorPinned),this.inspectorEl.style.display="block";let i=this.inspectorEl.querySelector(".dvi-insp-close");i&&i.addEventListener("click",d=>{d.stopPropagation(),this.hideInspector(!0)});let a=this.viewportEl.getBoundingClientRect(),o=e.getBoundingClientRect(),s=Math.min(this.inspectorEl.offsetWidth||320,420),l=o.right-a.left+14;l+s>a.width-12&&(l=Math.max(12,o.left-a.left-s-14));let h=Math.max(12,Math.min(o.top-a.top,a.height-260));this.inspectorEl.style.left=`${l}px`,this.inspectorEl.style.top=`${h}px`}hideInspector(e){this.inspectorPinned&&!e||(this.inspectorPinned=!1,this.inspectorEl.style.display="none")}applyFocusHighlighting(){let e=this.htmlLayerEl.querySelectorAll(".dvi-node"),r=this.svgRootG.selectAll(".dvi-edge-path, .dvi-edge-tip"),n=this.htmlLayerEl.querySelectorAll(".dvi-edge-label");if(!this.focusedNodeId){e.forEach(s=>s.classList.remove("dvi-dimmed","dvi-highlighted-node")),r.classed("dvi-dimmed",!1),n.forEach(s=>s.classList.remove("dvi-dimmed"));return}let i=new Set([this.focusedNodeId]),a=new Set,o=[];r.each(function(){o.push({id:this.getAttribute("data-edge-id")||"",src:this.getAttribute("data-src")||"",dst:this.getAttribute("data-dst")||""})});for(let s of["up","down"]){let l=[this.focusedNodeId],h=new Set([this.focusedNodeId]);for(;l.length>0;){let d=l.pop();for(let m of o)s==="down"&&m.src===d?(a.add(m.id),h.has(m.dst)||(h.add(m.dst),i.add(m.dst),l.push(m.dst))):s==="up"&&m.dst===d&&(a.add(m.id),h.has(m.src)||(h.add(m.src),i.add(m.src),l.push(m.src)))}}e.forEach(s=>{let l=s.getAttribute("data-node-id")||"";s.classList.toggle("dvi-dimmed",!i.has(l)),s.classList.toggle("dvi-highlighted-node",l===this.focusedNodeId)}),r.each(function(){let s=this.getAttribute("data-edge-id")||"";Ie(this).classed("dvi-dimmed",!a.has(s))}),n.forEach(s=>{let l=s.getAttribute("data-edge-id")||"";s.classList.toggle("dvi-dimmed",!a.has(l))})}fitToViewport(e=!1){let r=this.svgRootG.node()?.getBBox();if(!r||r.width===0||r.height===0)return;let n=this.viewportEl.clientWidth||800,i=this.viewportEl.clientHeight||600,a=44,o=(n-a*2)/r.width,s=(i-a*2)/r.height,l=Math.max(.22,Math.min(1.15,Math.min(o,s))),h=n/2-(r.x+r.width/2)*l,d=i/2-(r.y+r.height/2)*l,m=_t.translate(h,d).scale(l),v=Ie(this.viewportEl);e?v.transition().duration(250).call(this.zoomBehavior.transform,m):v.call(this.zoomBehavior.transform,m)}};Z0.A11Y_TARGETS=[[".dvi-node-quantity",()=>"Quantity: activate to highlight connections, F2 to rename"],[".dvi-node-step",()=>"Backward step: activate to toggle its derivation"],[".dvi-node-sigma",()=>"Sum of gradient contributions"],[".dvi-q-adjoint[data-toggle-source-steps]",()=>"Adjoint: activate to toggle outgoing backward steps"],[".dvi-tensor-trigger",()=>"Inspect tensor values"],['.dvi-edge-label-expandable, .dvi-edge-label[style*="cursor"]',()=>"Edge value: activate to expand or inspect"]];var Q0=Z0;var Hi=`
.dv-interactive-root {
position: relative;
background: #ffffff;
border: 1px solid #e2e8f0;
border-radius: 12px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
color: #1e293b;
overflow: hidden;
user-select: none;
line-height: 1.3;
}
/* Override Gradio's aggressive .prose / button / hr / span rules inside the graph */
.dv-interactive-root *,
.dv-interactive-root *::before,
.dv-interactive-root *::after {
box-sizing: border-box;
}
.dv-interactive-root .katex {
font-size: 1.02em !important;
line-height: 1.2 !important;
}
.dv-interactive-root .katex-display {
margin: 0.25em 0 !important;
}
.dv-interactive-root:fullscreen {
width: 100vw;
height: 100vh;
border-radius: 0;
display: flex;
flex-direction: column;
}
.dvi-toolbar {
display: flex !important;
flex-wrap: wrap !important;
align-items: center !important;
justify-content: space-between !important;
gap: 8px !important;
padding: 9px 14px !important;
background: #f8fafc !important;
border-bottom: 1px solid #e2e8f0 !important;
font-size: 0.8rem !important;
}
.dvi-toolbar-group {
display: inline-flex !important;
align-items: center !important;
gap: 6px !important;
flex-wrap: wrap !important;
}
.dvi-seg-group {
display: inline-flex !important;
border: 1px solid #cbd5e1 !important;
border-radius: 7px !important;
overflow: hidden !important;
background: #f1f5f9 !important;
padding: 0 !important;
margin: 0 !important;
}
.dv-interactive-root button.dvi-seg-btn {
appearance: none !important;
-webkit-appearance: none !important;
cursor: pointer !important;
padding: 4px 10px !important;
margin: 0 !important;
min-width: 0 !important;
height: auto !important;
font-size: 0.76rem !important;
font-weight: 500 !important;
line-height: 1.3 !important;
color: #475569 !important;
background: transparent !important;
border: none !important;
border-right: 1px solid #cbd5e1 !important;
border-radius: 0 !important;
box-shadow: none !important;
transition: background 0.15s, color 0.15s !important;
}
.dv-interactive-root button.dvi-seg-btn:last-child {
border-right: none !important;
}
.dv-interactive-root button.dvi-seg-btn:hover {
background: #e2e8f0 !important;
color: #0f172a !important;
}
.dv-interactive-root button.dvi-seg-btn.dvi-active {
background: #ffffff !important;
color: #0f172a !important;
font-weight: 600 !important;
box-shadow: 0 1px 2px rgba(0,0,0,0.06) !important;
}
.dv-interactive-root button.dvi-tool-btn {
appearance: none !important;
-webkit-appearance: none !important;
cursor: pointer !important;
padding: 4px 10px !important;
margin: 0 !important;
min-width: 0 !important;
height: auto !important;
font-size: 0.76rem !important;
font-weight: 500 !important;
line-height: 1.3 !important;
color: #334155 !important;
background: #ffffff !important;
border: 1px solid #cbd5e1 !important;
border-radius: 6px !important;
box-shadow: none !important;
display: inline-flex !important;
align-items: center !important;
gap: 4px !important;
transition: background 0.12s, border-color 0.12s !important;
}
.dv-interactive-root button.dvi-tool-btn:hover {
background: #f1f5f9 !important;
border-color: #94a3b8 !important;
}
.dvi-tool-label {
color: #64748b !important;
font-weight: 600 !important;
font-size: 0.72rem !important;
text-transform: uppercase !important;
letter-spacing: 0.03em !important;
margin-right: 2px !important;
}
.dvi-hint-bar {
display: flex !important;
align-items: center !important;
justify-content: space-between !important;
padding: 5px 14px !important;
background: #fdfcfe !important;
border-bottom: 1px solid #f1f5f9 !important;
font-size: 0.75rem !important;
color: #64748b !important;
}
.dvi-viewport {
position: relative !important;
width: 100% !important;
height: 650px !important;
overflow: hidden !important;
background: radial-gradient(#e2e8f0 1px, transparent 1px) !important;
background-size: 18px 18px !important;
cursor: grab !important;
}
.dv-interactive-root:fullscreen .dvi-viewport {
flex: 1 !important;
height: auto !important;
}
.dvi-viewport:active {
cursor: grabbing !important;
}
.dvi-svg-layer {
position: absolute !important;
top: 0 !important;
left: 0 !important;
width: 100% !important;
height: 100% !important;
pointer-events: none !important;
overflow: visible !important;
}
.dvi-html-layer {
position: absolute !important;
top: 0 !important;
left: 0 !important;
transform-origin: 0 0 !important;
pointer-events: none !important;
}
/* Region Band Boxes in SVG */
.dvi-region-rect {
rx: 10px;
ry: 10px;
stroke-width: 1.5px;
}
.dvi-region-output {
fill: rgba(234, 247, 238, 0.55);
stroke: #5aa372;
}
.dvi-region-operations {
fill: rgba(255, 247, 221, 0.5);
stroke: #c4a035;
}
.dvi-region-inputs {
fill: rgba(234, 243, 251, 0.55);
stroke: #5b91bd;
}
.dvi-region-title {
font-size: 12px;
font-weight: 600;
fill: #334155;
}
.dvi-region-title-output {
fill: #5aa372;
}
.dvi-region-title-operations {
fill: #c4a035;
}
.dvi-region-title-inputs {
fill: #5b91bd;
}
/* Edges & Arrow Tips */
.dvi-edge-path {
fill: none;
transition: opacity 0.18s ease, stroke-width 0.18s ease;
}
.dvi-edge-forward {
stroke: #16803a;
stroke-width: 1.8px;
}
.dvi-edge-adjoint {
stroke: #7a3e9d;
stroke-width: 1.8px;
stroke-dasharray: 5 4;
}
.dvi-edge-contribution {
stroke: #c46292;
stroke-width: 1.8px;
stroke-dasharray: 2 3.5;
}
.dvi-edge-tip {
stroke: none;
transition: opacity 0.18s ease;
}
.dvi-edge-tip-forward {
fill: #16803a;
}
.dvi-edge-tip-adjoint {
fill: #7a3e9d;
}
.dvi-edge-tip-contribution {
fill: #c46292;
}
/* Nodes in HTML layer */
.dvi-node {
position: absolute !important;
transform: translate(-50%, -50%) !important;
pointer-events: auto !important;
box-sizing: border-box !important;
transition: box-shadow 0.15s ease, opacity 0.18s ease, border-color 0.15s ease !important;
}
.dvi-node-quantity {
background: #f2f8f3 !important;
border: 1.8px solid #16803a !important;
border-radius: 9px !important;
min-width: 64px !important;
box-shadow: 0 2px 5px rgba(15, 23, 42, 0.06) !important;
overflow: hidden !important;
display: flex !important;
flex-direction: column !important;
padding: 0 !important;
}
.dvi-node-constant {
background: #f4f4f5 !important;
border: 1.5px solid #71717a !important;
border-radius: 6px !important;
padding: 4px 10px !important;
font-size: 0.85rem !important;
}
.dvi-node-output-circle {
width: 22px !important;
height: 22px !important;
border-radius: 50% !important;
background: #f2f8f3 !important;
border: 2.2px solid #16803a !important;
box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
}
.dvi-q-primal {
padding: 5px 10px !important;
margin: 0 !important;
font-size: 0.87rem !important;
color: #1e293b !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
gap: 5px !important;
white-space: nowrap !important;
}
.dvi-q-divider {
height: 1px !important;
width: 100% !important;
background: #796c85 !important;
margin: 0 !important;
padding: 0 !important;
border: none !important;
}
.dvi-q-adjoint {
padding: 4px 10px !important;
margin: 0 !important;
background: #eee8f2 !important;
color: #633a78 !important;
font-size: 0.85rem !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
gap: 5px !important;
white-space: nowrap !important;
cursor: pointer !important;
}
.dvi-q-adjoint:hover {
background: #e5dceb !important;
}
.dvi-adj-step-badge {
font-size: 0.65rem !important;
font-weight: 600 !important;
color: #7a3e9d !important;
background: rgba(122, 62, 157, 0.12) !important;
padding: 1px 5px !important;
border-radius: 4px !important;
margin-left: 3px !important;
}
.dv-interactive-root button.dvi-rename-btn {
appearance: none !important;
-webkit-appearance: none !important;
cursor: pointer !important;
opacity: 0.4 !important;
font-size: 0.72rem !important;
line-height: 1 !important;
padding: 2px 4px !important;
margin: 0 0 0 2px !important;
min-width: 0 !important;
width: auto !important;
height: auto !important;
border: none !important;
border-radius: 4px !important;
background: transparent !important;
color: #16803a !important;
box-shadow: none !important;
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
}
.dvi-node-quantity:hover button.dvi-rename-btn {
opacity: 0.85 !important;
}
.dv-interactive-root button.dvi-rename-btn:hover {
background: rgba(22, 128, 58, 0.14) !important;
opacity: 1 !important;
}
.dv-interactive-root input.dvi-rename-input {
width: 72px !important;
min-width: 0 !important;
height: 22px !important;
font-size: 0.82rem !important;
font-family: ui-monospace, SFMono-Regular, Menlo, monospace !important;
padding: 1px 6px !important;
margin: 0 !important;
border: 1.5px solid #0284c7 !important;
border-radius: 4px !important;
background: #ffffff !important;
color: #0f172a !important;
outline: none !important;
box-shadow: none !important;
}
/* Backward Step Node (Expandable) */
.dvi-node-step {
background: #fbeaf1 !important;
border: 1.6px solid #b83e72 !important;
border-radius: 5px !important;
color: #42254d !important;
box-shadow: 0 2px 5px rgba(184, 62, 114, 0.08) !important;
cursor: pointer !important;
min-width: 110px !important;
display: flex !important;
flex-direction: column !important;
padding: 0 !important;
overflow: hidden !important;
}
.dvi-node-step:hover {
border-color: #932f6d !important;
box-shadow: 0 3px 8px rgba(147, 47, 109, 0.16) !important;
}
.dvi-step-hdr {
padding: 5px 10px !important;
margin: 0 !important;
display: flex !important;
align-items: center !important;
justify-content: space-between !important;
gap: 8px !important;
white-space: nowrap !important;
font-size: 0.84rem !important;
}
.dvi-step-toggle {
font-size: 0.67rem !important;
font-weight: 600 !important;
color: #932f6d !important;
background: rgba(184, 62, 114, 0.12) !important;
padding: 1px 5px !important;
border-radius: 4px !important;
}
.dvi-step-body {
border-top: 1px solid #796c85 !important;
padding: 5px 10px !important;
margin: 0 !important;
background: #fdf4f8 !important;
color: #932f6d !important;
font-size: 0.83rem !important;
white-space: nowrap !important;
}
.dvi-step-notes {
margin-top: 3px !important;
font-size: 0.7rem !important;
color: #6b21a8 !important;
font-style: italic !important;
}
/* Sigma Accumulation Node */
.dvi-node-sigma {
width: 32px !important;
height: 32px !important;
border-radius: 50% !important;
background: #fbeaf1 !important;
border: 1.8px solid #b83e72 !important;
color: #42254d !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
font-weight: 600 !important;
font-size: 0.92rem !important;
box-shadow: 0 1px 4px rgba(184, 62, 114, 0.12) !important;
}
/* Edge Labels in HTML Layer */
.dvi-edge-label {
position: absolute !important;
transform: translate(-50%, -50%) !important;
pointer-events: auto !important;
padding: 2px 6px !important;
border-radius: 5px !important;
font-size: 0.78rem !important;
white-space: nowrap !important;
box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
transition: opacity 0.18s ease, transform 0.12s ease !important;
}
.dvi-edge-label-forward {
background: #edf5ef !important;
color: #16803a !important;
border: 1.5px solid #16803a !important;
}
.dvi-edge-label-adjoint {
background: #f1eaf5 !important;
color: #7a3e9d !important;
border: 1.5px solid #7a3e9d !important;
}
.dvi-edge-label-contribution {
background: #fdf2f7 !important;
color: #b54d7f !important;
border: 1.5px solid #c46292 !important;
}
.dvi-edge-label-expandable {
cursor: pointer !important;
}
.dvi-edge-label-expandable:hover {
box-shadow: 0 2px 6px rgba(147, 47, 109, 0.2) !important;
}
/* Tensor Badge & Trigger (no nested box or border inside nodes/edges) */
.dvi-tensor-badge {
display: inline-flex !important;
align-items: center !important;
gap: 4px !important;
padding: 0 !important;
margin: 0 !important;
border: none !important;
border-radius: 0 !important;
background: transparent !important;
cursor: pointer !important;
font-size: inherit !important;
color: inherit !important;
}
.dvi-tensor-small {
font-size: 0.78em !important;
}
.dvi-tensor-inline {
display: inline-block !important;
padding: 0 !important;
margin: 0 !important;
border: none !important;
background: transparent !important;
cursor: pointer !important;
color: inherit !important;
}
.dvi-shape-pill {
font-family: ui-monospace, SFMono-Regular, Menlo, monospace !important;
font-size: 0.75rem !important;
font-weight: 600 !important;
color: inherit !important;
background: transparent !important;
border: none !important;
padding: 0 !important;
}
.dvi-badge-icon {
display: inline-block !important;
vertical-align: middle !important;
flex-shrink: 0 !important;
color: inherit !important;
}
/* Highlighting / Dimming */
.dvi-dimmed {
opacity: 0.22 !important;
}
.dvi-highlighted-node {
box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.35), 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}
/* Floating Tensor Inspector Popover */
.dvi-inspector-popover {
position: absolute !important;
z-index: 50 !important;
min-width: 260px !important;
max-width: 440px !important;
max-height: 82% !important;
overflow: auto !important;
background: #ffffff !important;
border: 1px solid #cbd5e1 !important;
border-radius: 10px !important;
box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.18), 0 4px 10px -2px rgba(15, 23, 42, 0.08) !important;
padding: 12px 14px !important;
pointer-events: auto !important;
font-size: 0.82rem !important;
}
.dvi-insp-header {
display: flex !important;
align-items: center !important;
justify-content: space-between !important;
gap: 8px !important;
padding-bottom: 8px !important;
border-bottom: 1px solid #e2e8f0 !important;
margin-bottom: 10px !important;
}
.dvi-insp-title {
display: flex !important;
align-items: baseline !important;
gap: 8px !important;
font-size: 0.95rem !important;
font-weight: 600 !important;
}
.dvi-insp-sub {
font-size: 0.75rem !important;
font-weight: 400 !important;
color: #64748b !important;
}
.dvi-insp-actions {
display: flex !important;
align-items: center !important;
gap: 6px !important;
}
.dvi-insp-hint {
font-size: 0.68rem !important;
color: #94a3b8 !important;
}
.dv-interactive-root button.dvi-insp-close {
appearance: none !important;
-webkit-appearance: none !important;
cursor: pointer !important;
padding: 2px 6px !important;
min-width: 0 !important;
height: auto !important;
border: none !important;
border-radius: 4px !important;
font-size: 0.8rem !important;
color: #475569 !important;
background: #f1f5f9 !important;
box-shadow: none !important;
}
.dv-interactive-root button.dvi-insp-close:hover {
background: #e2e8f0 !important;
color: #0f172a !important;
}
.dvi-insp-section {
padding: 8px 10px !important;
border-radius: 8px !important;
margin-bottom: 8px !important;
}
.dvi-insp-section:last-child {
margin-bottom: 0 !important;
}
.dvi-insp-primal {
background: #f2f8f3 !important;
border: 1px solid #cce3d2 !important;
}
.dvi-insp-adjoint {
background: #f5eff8 !important;
border: 1px solid #dac8e6 !important;
}
.dvi-insp-sec-hdr {
display: flex !important;
justify-content: space-between !important;
align-items: center !important;
margin-bottom: 6px !important;
font-size: 0.74rem !important;
font-weight: 600 !important;
color: #334155 !important;
}
.dvi-insp-shape {
font-family: ui-monospace, SFMono-Regular, Menlo, monospace !important;
font-size: 0.7rem !important;
background: rgba(255,255,255,0.8) !important;
padding: 1px 6px !important;
border-radius: 4px !important;
}
.dvi-insp-math {
overflow-x: auto !important;
padding: 4px 0 !important;
}
.dvi-insp-stats {
display: flex !important;
gap: 12px !important;
margin-top: 6px !important;
padding-top: 6px !important;
border-top: 1px dashed rgba(100, 116, 139, 0.25) !important;
font-size: 0.72rem !important;
color: #475569 !important;
}
.dvi-heatmap-wrap {
margin-top: 6px !important;
overflow-x: auto !important;
}
.dvi-heatmap-table {
border-collapse: collapse !important;
margin: 0 auto !important;
}
.dvi-hm-cell {
border: 1px solid #cbd5e1 !important;
padding: 3px 7px !important;
text-align: right !important;
font-family: ui-monospace, SFMono-Regular, Menlo, monospace !important;
font-size: 0.74rem !important;
min-width: 42px !important;
position: relative !important;
}
.dvi-hm-val {
display: block !important;
font-weight: 500 !important;
color: #0f172a !important;
}
.dvi-hm-idx {
display: block !important;
font-size: 0.58rem !important;
color: #64748b !important;
}
.dvi-hm-ellipsis {
text-align: center !important;
padding: 2px 6px !important;
color: #64748b !important;
}
.dvi-deriv {
display: inline-block !important;
text-align: left !important;
}
.dvi-deriv-line {
white-space: nowrap !important;
}
.dvi-deriv-cont {
padding-left: 1.1em !important;
}
`;var v2=`https://cdn.jsdelivr.net/npm/katex@${p0.version}/dist/katex.min.css`,O1=new WeakMap;function g2(){if(!document.getElementById("dvi-katex-css")){let e=document.createElement("link");e.id="dvi-katex-css",e.rel="stylesheet",e.href=v2,document.head.appendChild(e)}let t=document.getElementById("dvi-interactive-css");t||(t=document.createElement("style"),t.id="dvi-interactive-css",document.head.appendChild(t)),t.textContent!==Hi&&(t.textContent=Hi)}function $i(){g2(),document.querySelectorAll(".dv-interactive-root[data-graph]").forEach(e=>{let r=e.getAttribute("data-graph");if(!(!r||O1.get(e)===r)){O1.set(e,r),e.setAttribute("data-dvi-mounted","true");try{let n=JSON.parse(r);new Q0(e,n)}catch(n){console.error("Failed to mount InteractiveGraphWidget:",n);let i=document.createElement("div");i.style.cssText="color:#b91c1c;padding:16px;",i.textContent=`Failed to initialize interactive graph: ${String(n)}`,e.replaceChildren(i)}}})}function b2(){document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>$i()):$i();let t,e=new MutationObserver(()=>{t&&window.clearTimeout(t),t=window.setTimeout(()=>{$i()},60)}),r=()=>{document.body?e.observe(document.body,{childList:!0,subtree:!0}):window.setTimeout(r,50)};r()}b2();})();