(function(Mi,ya){typeof exports=="object"&&typeof module<"u"?module.exports=ya():typeof define=="function"&&define.amd?define(ya):(Mi=typeof globalThis<"u"?globalThis:Mi||self,Mi.mermaid=ya())})(this,function(){"use strict";function Mi(t){for(var e=[],r=1;r=$?X:""+Array($+1-et.length).join(U)+X},V={s:I,z:function(X){var $=-X.utcOffset(),U=Math.abs($),et=Math.floor(U/60),K=U%60;return($<=0?"+":"-")+I(et,2,"0")+":"+I(K,2,"0")},m:function X($,U){if($.date()1)return X(v[0])}else{var st=$.name;L[st]=$,K=st}return!et&&K&&(N=K),K||!et&&N},J=function(X,$){if(G(X))return X.clone();var U=typeof $=="object"?$:{};return U.date=X,U.args=arguments,new P(U)},O=V;O.l=Y,O.i=G,O.w=function(X,$){return J(X,{locale:$.$L,utc:$.$u,x:$.$x,$offset:$.$offset})};var P=function(){function X(U){this.$L=Y(U.locale,null,!0),this.parse(U),this.$x=this.$x||U.x||{},this[q]=!0}var $=X.prototype;return $.parse=function(U){this.$d=function(et){var K=et.date,W=et.utc;if(K===null)return new Date(NaN);if(O.u(K))return new Date;if(K instanceof Date)return new Date(K);if(typeof K=="string"&&!/Z$/i.test(K)){var v=K.match(A);if(v){var st=v[2]-1||0,dt=(v[7]||"0").substring(0,3);return W?new Date(Date.UTC(v[1],st,v[3]||1,v[4]||0,v[5]||0,v[6]||0,dt)):new Date(v[1],st,v[3]||1,v[4]||0,v[5]||0,v[6]||0,dt)}}return new Date(K)}(U),this.init()},$.init=function(){var U=this.$d;this.$y=U.getFullYear(),this.$M=U.getMonth(),this.$D=U.getDate(),this.$W=U.getDay(),this.$H=U.getHours(),this.$m=U.getMinutes(),this.$s=U.getSeconds(),this.$ms=U.getMilliseconds()},$.$utils=function(){return O},$.isValid=function(){return this.$d.toString()!==b},$.isSame=function(U,et){var K=J(U);return this.startOf(et)<=K&&K<=this.endOf(et)},$.isAfter=function(U,et){return J(U){},debug:(...t)=>{},info:(...t)=>{},warn:(...t)=>{},error:(...t)=>{},fatal:(...t)=>{}},Fo=function(t="fatal"){let e=dn.fatal;typeof t=="string"?(t=t.toLowerCase(),t in dn&&(e=dn[t])):typeof t=="number"&&(e=t),E.trace=()=>{},E.debug=()=>{},E.info=()=>{},E.warn=()=>{},E.error=()=>{},E.fatal=()=>{},e<=dn.fatal&&(E.fatal=console.error?console.error.bind(console,br("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",br("FATAL"))),e<=dn.error&&(E.error=console.error?console.error.bind(console,br("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",br("ERROR"))),e<=dn.warn&&(E.warn=console.warn?console.warn.bind(console,br("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",br("WARN"))),e<=dn.info&&(E.info=console.info?console.info.bind(console,br("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",br("INFO"))),e<=dn.debug&&(E.debug=console.debug?console.debug.bind(console,br("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",br("DEBUG"))),e<=dn.trace&&(E.trace=console.debug?console.debug.bind(console,br("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",br("TRACE")))},br=t=>`%c${$m().format("ss.SSS")} : ${t} : `;var _c={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.sanitizeUrl=t.BLANK_URL=void 0;var e=/^([^\w]*)(javascript|data|vbscript)/im,r=/&#(\w+)(^\w|;)?/g,n=/&(newline|tab);/gi,i=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,a=/^.+(:|:)/gim,s=[".","/"];t.BLANK_URL="about:blank";function o(c){return s.indexOf(c[0])>-1}function l(c){var h=c.replace(i,"");return h.replace(r,function(f,p){return String.fromCharCode(p)})}function u(c){if(!c)return t.BLANK_URL;var h=l(c).replace(n,"").replace(i,"").trim();if(!h)return t.BLANK_URL;if(o(h))return h;var f=h.match(a);if(!f)return h;var p=f[0];return e.test(p)?t.BLANK_URL:h}t.sanitizeUrl=u})(_c);var Hm={value:()=>{}};function Sc(){for(var t=0,e=arguments.length,r={},n;t=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}})}vs.prototype=Sc.prototype={constructor:vs,on:function(t,e){var r=this._,n=Vm(t+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a0)for(var r=new Array(i),n=0,i,a;n=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),Ac.hasOwnProperty(e)?{space:Ac[e],local:t}:t}function Um(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===Lo&&e.documentElement.namespaceURI===Lo?e.createElement(t):e.createElementNS(r,t)}}function Gm(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Bc(t){var e=ws(t);return(e.local?Gm:Um)(e)}function jm(){}function Mo(t){return t==null?jm:function(){return this.querySelector(t)}}function Ym(t){typeof t!="function"&&(t=Mo(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i=I&&(I=M+1);!(N=A[I])&&++I=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}function b4(t){t||(t=x4);function e(h,f){return h&&f?t(h.__data__,f.__data__):!h-!f}for(var r=this._groups,n=r.length,i=new Array(n),a=0;ae?1:t>=e?0:NaN}function v4(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function w4(){return Array.from(this)}function C4(){for(var t=this._groups,e=0,r=t.length;e1?this.each((e==null?D4:typeof e=="function"?z4:I4)(t,e,r??"")):Di(this.node(),t)}function Di(t,e){return t.style.getPropertyValue(e)||Ic(t).getComputedStyle(t,null).getPropertyValue(e)}function N4(t){return function(){delete this[t]}}function R4(t,e){return function(){this[t]=e}}function P4(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function q4(t,e){return arguments.length>1?this.each((e==null?N4:typeof e=="function"?P4:R4)(t,e)):this.node()[t]}function zc(t){return t.trim().split(/^|\s+/)}function Do(t){return t.classList||new Oc(t)}function Oc(t){this._node=t,this._names=zc(t.getAttribute("class")||"")}Oc.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 Nc(t,e){for(var r=Do(t),n=-1,i=e.length;++n=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function p3(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?_s(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?_s(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=_3.exec(t))?new Xe(e[1],e[2],e[3],1):(e=S3.exec(t))?new Xe(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=T3.exec(t))?_s(e[1],e[2],e[3],e[4]):(e=A3.exec(t))?_s(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=B3.exec(t))?jc(e[1],e[2]/100,e[3]/100,1):(e=E3.exec(t))?jc(e[1],e[2]/100,e[3]/100,e[4]):$c.hasOwnProperty(t)?Wc($c[t]):t==="transparent"?new Xe(NaN,NaN,NaN,0):null}function Wc(t){return new Xe(t>>16&255,t>>8&255,t&255,1)}function _s(t,e,r,n){return n<=0&&(t=e=r=NaN),new Xe(t,e,r,n)}function M3(t){return t instanceof xa||(t=Ca(t)),t?(t=t.rgb(),new Xe(t.r,t.g,t.b,t.opacity)):new Xe}function Oo(t,e,r,n){return arguments.length===1?M3(t):new Xe(t,e,r,n??1)}function Xe(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}zo(Xe,Oo,qc(xa,{brighter(t){return t=t==null?ks:Math.pow(ks,t),new Xe(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?va:Math.pow(va,t),new Xe(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Xe(ni(this.r),ni(this.g),ni(this.b),Ss(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:Uc,formatHex:Uc,formatHex8:D3,formatRgb:Gc,toString:Gc}));function Uc(){return`#${ii(this.r)}${ii(this.g)}${ii(this.b)}`}function D3(){return`#${ii(this.r)}${ii(this.g)}${ii(this.b)}${ii((isNaN(this.opacity)?1:this.opacity)*255)}`}function Gc(){const t=Ss(this.opacity);return`${t===1?"rgb(":"rgba("}${ni(this.r)}, ${ni(this.g)}, ${ni(this.b)}${t===1?")":`, ${t})`}`}function Ss(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ni(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ii(t){return t=ni(t),(t<16?"0":"")+t.toString(16)}function jc(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new Ir(t,e,r,n)}function Yc(t){if(t instanceof Ir)return new Ir(t.h,t.s,t.l,t.opacity);if(t instanceof xa||(t=Ca(t)),!t)return new Ir;if(t instanceof Ir)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),s=NaN,o=a-i,l=(a+i)/2;return o?(e===a?s=(r-n)/o+(r0&&l<1?0:s,new Ir(s,o,l,t.opacity)}function I3(t,e,r,n){return arguments.length===1?Yc(t):new Ir(t,e,r,n??1)}function Ir(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}zo(Ir,I3,qc(xa,{brighter(t){return t=t==null?ks:Math.pow(ks,t),new Ir(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?va:Math.pow(va,t),new Ir(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 Xe(No(t>=240?t-240:t+120,i,n),No(t,i,n),No(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new Ir(Xc(this.h),Ts(this.s),Ts(this.l),Ss(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(){const t=Ss(this.opacity);return`${t===1?"hsl(":"hsla("}${Xc(this.h)}, ${Ts(this.s)*100}%, ${Ts(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Xc(t){return t=(t||0)%360,t<0?t+360:t}function Ts(t){return Math.max(0,Math.min(1,t||0))}function No(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}const Kc=t=>()=>t;function z3(t,e){return function(r){return t+r*e}}function O3(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 N3(t){return(t=+t)==1?Zc:function(e,r){return r-e?O3(e,r,t):Kc(isNaN(e)?r:e)}}function Zc(t,e){var r=e-t;return r?z3(t,r):Kc(isNaN(t)?e:t)}const Qc=function t(e){var r=N3(e);function n(i,a){var s=r((i=Oo(i)).r,(a=Oo(a)).r),o=r(i.g,a.g),l=r(i.b,a.b),u=Zc(i.opacity,a.opacity);return function(c){return i.r=s(c),i.g=o(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=t,n}(1);function Pn(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var Ro=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Po=new RegExp(Ro.source,"g");function R3(t){return function(){return t}}function P3(t){return function(e){return t(e)+""}}function q3(t,e){var r=Ro.lastIndex=Po.lastIndex=0,n,i,a,s=-1,o=[],l=[];for(t=t+"",e=e+"";(n=Ro.exec(t))&&(i=Po.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),o[s]?o[s]+=a:o[++s]=a),(n=n[0])===(i=i[0])?o[s]?o[s]+=i:o[++s]=i:(o[++s]=null,l.push({i:s,x:Pn(n,i)})),r=Po.lastIndex;return r180?c+=360:c-u>180&&(u+=360),f.push({i:h.push(i(h)+"rotate(",null,n)-2,x:Pn(u,c)})):c&&h.push(i(h)+"rotate("+c+n)}function o(u,c,h,f){u!==c?f.push({i:h.push(i(h)+"skewX(",null,n)-2,x:Pn(u,c)}):c&&h.push(i(h)+"skewX("+c+n)}function l(u,c,h,f,p,y){if(u!==h||c!==f){var b=p.push(i(p)+"scale(",null,",",null,")");y.push({i:b-4,x:Pn(u,h)},{i:b-2,x:Pn(c,f)})}else(h!==1||f!==1)&&p.push(i(p)+"scale("+h+","+f+")")}return function(u,c){var h=[],f=[];return u=t(u),c=t(c),a(u.translateX,u.translateY,c.translateX,c.translateY,h,f),s(u.rotate,c.rotate,h,f),o(u.skewX,c.skewX,h,f),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,h,f),u=c=null,function(p){for(var y=-1,b=f.length,A;++y=0&&t._call.call(void 0,e),t=t._next;--zi}function ah(){ai=(Es=Ta.now())+Fs,zi=ka=0;try{G3()}finally{zi=0,Y3(),ai=0}}function j3(){var t=Ta.now(),e=t-Es;e>rh&&(Fs-=e,Es=t)}function Y3(){for(var t,e=Bs,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:Bs=r);Sa=t,Ho(n)}function Ho(t){if(!zi){ka&&(ka=clearTimeout(ka));var e=t-ai;e>24?(t<1/0&&(ka=setTimeout(ah,t-Ta.now()-Fs)),_a&&(_a=clearInterval(_a))):(_a||(Es=Ta.now(),_a=setInterval(j3,rh)),zi=1,nh(ah))}}function sh(t,e,r){var n=new Ls;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var X3=Sc("start","end","cancel","interrupt"),K3=[],oh=0,lh=1,Vo=2,Ms=3,uh=4,Wo=5,Ds=6;function Is(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;Z3(t,r,{name:e,index:n,group:i,on:X3,tween:K3,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:oh})}function Uo(t,e){var r=zr(t,e);if(r.state>oh)throw new Error("too late; already scheduled");return r}function Qr(t,e){var r=zr(t,e);if(r.state>Ms)throw new Error("too late; already running");return r}function zr(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function Z3(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=ih(a,0,r.time);function a(u){r.state=lh,r.timer.restart(s,r.delay,r.time),r.delay<=u&&s(u-r.delay)}function s(u){var c,h,f,p;if(r.state!==lh)return l();for(c in n)if(p=n[c],p.name===r.name){if(p.state===Ms)return sh(s);p.state===uh?(p.state=Ds,p.timer.stop(),p.on.call("interrupt",t,t.__data__,p.index,p.group),delete n[c]):+cVo&&n.state=0&&(e=e.slice(0,r)),!e||e==="start"})}function B5(t,e,r){var n,i,a=A5(e)?Uo:Qr;return function(){var s=a(this,t),o=s.on;o!==n&&(i=(n=o).copy()).on(e,r),s.on=i}}function E5(t,e){var r=this._id;return arguments.length<2?zr(this.node(),r).on.on(t):this.each(B5(r,t,e))}function F5(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function L5(){return this.on("end.remove",F5(this._id))}function M5(t){var e=this._name,r=this._id;typeof t!="function"&&(t=Mo(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s=0))throw new Error(`invalid digits: ${t}`);if(e>15)return dh;const r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;isi)if(!(Math.abs(h*l-u*c)>si)||!a)this._append`L${this._x1=e},${this._y1=r}`;else{let p=n-s,y=i-o,b=l*l+u*u,A=p*p+y*y,_=Math.sqrt(b),M=Math.sqrt(f),I=a*Math.tan((jo-Math.acos((b+f-A)/(2*_*M)))/2),V=I/M,N=I/_;Math.abs(V-1)>si&&this._append`L${e+V*c},${r+V*h}`,this._append`A${a},${a},0,0,${+(h*p>c*y)},${this._x1=e+N*l},${this._y1=r+N*u}`}}arc(e,r,n,i,a,s){if(e=+e,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let o=n*Math.cos(i),l=n*Math.sin(i),u=e+o,c=r+l,h=1^s,f=s?i-a:a-i;this._x1===null?this._append`M${u},${c}`:(Math.abs(this._x1-u)>si||Math.abs(this._y1-c)>si)&&this._append`L${u},${c}`,n&&(f<0&&(f=f%Yo+Yo),f>ng?this._append`A${n},${n},0,1,${h},${e-o},${r-l}A${n},${n},0,1,${h},${this._x1=u},${this._y1=c}`:f>si&&this._append`A${n},${n},0,${+(f>=jo)},${h},${this._x1=e+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(e,r,n,i){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}}function Oi(t){return function(){return t}}const ph=1e-12;function sg(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(r==null)e=null;else{const n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);e=n}return t},()=>new ag(e)}function og(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function mh(t){this._context=t}mh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}}};function Aa(t){return new mh(t)}function lg(t){return t[0]}function ug(t){return t[1]}function cg(t,e){var r=Oi(!0),n=null,i=Aa,a=null,s=sg(o);t=typeof t=="function"?t:t===void 0?lg:Oi(t),e=typeof e=="function"?e:e===void 0?ug:Oi(e);function o(l){var u,c=(l=og(l)).length,h,f=!1,p;for(n==null&&(a=i(p=s())),u=0;u<=c;++u)!(u0)for(var n=t[0],i=e[0],a=t[r]-n,s=e[r]-i,o=-1,l;++o<=r;)l=o/r,this._basis.point(this._beta*t[o]+(1-this._beta)*(n+l*a),this._beta*e[o]+(1-this._beta)*(i+l*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const mg=function t(e){function r(n){return e===1?new Os(n):new vh(n,e)}return r.beta=function(n){return t(+n)},r}(.85);function Ns(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function Xo(t,e){this._context=t,this._k=(1-e)/6}Xo.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ns(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:Ns(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const gg=function t(e){function r(n){return new Xo(n,e)}return r.tension=function(n){return t(+n)},r}(0);function Ko(t,e){this._context=t,this._k=(1-e)/6}Ko.prototype={areaStart:qn,areaEnd:qn,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Ns(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const yg=function t(e){function r(n){return new Ko(n,e)}return r.tension=function(n){return t(+n)},r}(0);function Zo(t,e){this._context=t,this._k=(1-e)/6}Zo.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ns(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const bg=function t(e){function r(n){return new Zo(n,e)}return r.tension=function(n){return t(+n)},r}(0);function Qo(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>ph){var o=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*o-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,i=(i*o-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>ph){var u=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,c=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*u+t._x1*t._l23_2a-e*t._l12_2a)/c,s=(s*u+t._y1*t._l23_2a-r*t._l12_2a)/c}t._context.bezierCurveTo(n,i,a,s,t._x2,t._y2)}function wh(t,e){this._context=t,this._alpha=e}wh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Qo(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const xg=function t(e){function r(n){return e?new wh(n,e):new Xo(n,0)}return r.alpha=function(n){return t(+n)},r}(.5);function Ch(t,e){this._context=t,this._alpha=e}Ch.prototype={areaStart:qn,areaEnd:qn,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Qo(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const vg=function t(e){function r(n){return e?new Ch(n,e):new Ko(n,0)}return r.alpha=function(n){return t(+n)},r}(.5);function kh(t,e){this._context=t,this._alpha=e}kh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Qo(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const wg=function t(e){function r(n){return e?new kh(n,e):new Zo(n,0)}return r.alpha=function(n){return t(+n)},r}(.5);function _h(t){this._context=t}_h.prototype={areaStart:qn,areaEnd:qn,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}};function Cg(t){return new _h(t)}function Sh(t){return t<0?-1:1}function Th(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),s=(r-t._y1)/(i||n<0&&-0),o=(a*i+s*n)/(n+i);return(Sh(a)+Sh(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(o))||0}function Ah(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function Jo(t,e,r){var n=t._x0,i=t._y0,a=t._x1,s=t._y1,o=(a-n)/3;t._context.bezierCurveTo(n+o,i+o*e,a-o,s-o*r,a,s)}function Rs(t){this._context=t}Rs.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Jo(this,this._t0,Ah(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){var r=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,Jo(this,Ah(this,r=Th(this,t,e)),r);break;default:Jo(this,this._t0,r=Th(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}}};function Bh(t){this._context=new Eh(t)}(Bh.prototype=Object.create(Rs.prototype)).point=function(t,e){Rs.prototype.point.call(this,e,t)};function Eh(t){this._context=t}Eh.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,r,n,i,a){this._context.bezierCurveTo(e,t,n,r,a,i)}};function kg(t){return new Rs(t)}function _g(t){return new Bh(t)}function Fh(t){this._context=t}Fh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),r===2)this._context.lineTo(t[1],e[1]);else for(var n=Lh(t),i=Lh(e),a=0,s=1;s=0;--e)i[e]=(s[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}break}}this._x=t,this._y=e}};function Tg(t){return new Ps(t,.5)}function Ag(t){return new Ps(t,0)}function Bg(t){return new Ps(t,1)}function Ba(t,e,r){this.k=t,this.x=e,this.y=r}Ba.prototype={constructor:Ba,scale:function(t){return t===1?this:new Ba(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Ba(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+")"}},Ba.prototype;/*! @license DOMPurify 3.0.9 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.9/LICENSE */const{entries:Mh,setPrototypeOf:Dh,isFrozen:Eg,getPrototypeOf:Fg,getOwnPropertyDescriptor:Lg}=Object;let{freeze:$e,seal:Or,create:Ih}=Object,{apply:tl,construct:el}=typeof Reflect<"u"&&Reflect;$e||($e=function(e){return e}),Or||(Or=function(e){return e}),tl||(tl=function(e,r,n){return e.apply(r,n)}),el||(el=function(e,r){return new e(...r)});const qs=cr(Array.prototype.forEach),zh=cr(Array.prototype.pop),Ea=cr(Array.prototype.push),$s=cr(String.prototype.toLowerCase),rl=cr(String.prototype.toString),Mg=cr(String.prototype.match),Fa=cr(String.prototype.replace),Dg=cr(String.prototype.indexOf),Ig=cr(String.prototype.trim),Nr=cr(Object.prototype.hasOwnProperty),ur=cr(RegExp.prototype.test),La=zg(TypeError);function cr(t){return function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:$s;Dh&&Dh(t,null);let n=e.length;for(;n--;){let i=e[n];if(typeof i=="string"){const a=r(i);a!==i&&(Eg(e)||(e[n]=a),i=a)}t[i]=!0}return t}function Og(t){for(let e=0;e/gm),$g=Or(/\${[\w\W]*}/gm),Hg=Or(/^data-[\-\w.\u00B7-\uFFFF]/),Vg=Or(/^aria-[\-\w]+$/),qh=Or(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Wg=Or(/^(?:\w+script|data):/i),Ug=Or(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),$h=Or(/^html$/i);var Hh=Object.freeze({__proto__:null,MUSTACHE_EXPR:Pg,ERB_EXPR:qg,TMPLIT_EXPR:$g,DATA_ATTR:Hg,ARIA_ATTR:Vg,IS_ALLOWED_URI:qh,IS_SCRIPT_OR_DATA:Wg,ATTR_WHITESPACE:Ug,DOCTYPE_NAME:$h});const Gg=function(){return typeof window>"u"?null:window},jg=function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null;const i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));const a="dompurify"+(n?"#"+n:"");try{return e.createPolicy(a,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}};function Vh(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Gg();const e=ht=>Vh(ht);if(e.version="3.0.9",e.removed=[],!t||!t.document||t.document.nodeType!==9)return e.isSupported=!1,e;let{document:r}=t;const n=r,i=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:s,Node:o,Element:l,NodeFilter:u,NamedNodeMap:c=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:h,DOMParser:f,trustedTypes:p}=t,y=l.prototype,b=Hs(y,"cloneNode"),A=Hs(y,"nextSibling"),_=Hs(y,"childNodes"),M=Hs(y,"parentNode");if(typeof s=="function"){const ht=r.createElement("template");ht.content&&ht.content.ownerDocument&&(r=ht.content.ownerDocument)}let I,V="";const{implementation:N,createNodeIterator:L,createDocumentFragment:q,getElementsByTagName:G}=r,{importNode:Y}=n;let J={};e.isSupported=typeof Mh=="function"&&typeof M=="function"&&N&&N.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:O,ERB_EXPR:P,TMPLIT_EXPR:ft,DATA_ATTR:X,ARIA_ATTR:$,IS_SCRIPT_OR_DATA:U,ATTR_WHITESPACE:et}=Hh;let{IS_ALLOWED_URI:K}=Hh,W=null;const v=It({},[...Oh,...nl,...il,...al,...Nh]);let st=null;const dt=It({},[...Rh,...sl,...Ph,...Vs]);let w=Object.seal(Ih(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),St=null,zt=null,Ot=!0,Ht=!0,Wt=!1,jt=!0,Ft=!1,Yt=!1,ye=!1,Te=!1,Ae=!1,ir=!1,Kt=!1,fe=!0,yr=!1;const ar="user-content-";let In=!0,Gr=!1,jr={},Yr=null;const Ti=It({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Ai=null;const Bi=It({},["audio","video","img","source","image","track"]);let R=null;const rt=It({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),gt="http://www.w3.org/1998/Math/MathML",Nt="http://www.w3.org/2000/svg",Lt="http://www.w3.org/1999/xhtml";let be=Lt,je=!1,Re=null;const fn=It({},[gt,Nt,Lt],rl);let sr=null;const ne=["application/xhtml+xml","text/html"],ri="text/html";let Ut=null,zn=null;const Ao=r.createElement("form"),gs=function(F){return F instanceof RegExp||F instanceof Function},Ei=function(){let F=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(zn&&zn===F)){if((!F||typeof F!="object")&&(F={}),F=oi(F),sr=ne.indexOf(F.PARSER_MEDIA_TYPE)===-1?ri:F.PARSER_MEDIA_TYPE,Ut=sr==="application/xhtml+xml"?rl:$s,W=Nr(F,"ALLOWED_TAGS")?It({},F.ALLOWED_TAGS,Ut):v,st=Nr(F,"ALLOWED_ATTR")?It({},F.ALLOWED_ATTR,Ut):dt,Re=Nr(F,"ALLOWED_NAMESPACES")?It({},F.ALLOWED_NAMESPACES,rl):fn,R=Nr(F,"ADD_URI_SAFE_ATTR")?It(oi(rt),F.ADD_URI_SAFE_ATTR,Ut):rt,Ai=Nr(F,"ADD_DATA_URI_TAGS")?It(oi(Bi),F.ADD_DATA_URI_TAGS,Ut):Bi,Yr=Nr(F,"FORBID_CONTENTS")?It({},F.FORBID_CONTENTS,Ut):Ti,St=Nr(F,"FORBID_TAGS")?It({},F.FORBID_TAGS,Ut):{},zt=Nr(F,"FORBID_ATTR")?It({},F.FORBID_ATTR,Ut):{},jr=Nr(F,"USE_PROFILES")?F.USE_PROFILES:!1,Ot=F.ALLOW_ARIA_ATTR!==!1,Ht=F.ALLOW_DATA_ATTR!==!1,Wt=F.ALLOW_UNKNOWN_PROTOCOLS||!1,jt=F.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Ft=F.SAFE_FOR_TEMPLATES||!1,Yt=F.WHOLE_DOCUMENT||!1,Ae=F.RETURN_DOM||!1,ir=F.RETURN_DOM_FRAGMENT||!1,Kt=F.RETURN_TRUSTED_TYPE||!1,Te=F.FORCE_BODY||!1,fe=F.SANITIZE_DOM!==!1,yr=F.SANITIZE_NAMED_PROPS||!1,In=F.KEEP_CONTENT!==!1,Gr=F.IN_PLACE||!1,K=F.ALLOWED_URI_REGEXP||qh,be=F.NAMESPACE||Lt,w=F.CUSTOM_ELEMENT_HANDLING||{},F.CUSTOM_ELEMENT_HANDLING&&gs(F.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(w.tagNameCheck=F.CUSTOM_ELEMENT_HANDLING.tagNameCheck),F.CUSTOM_ELEMENT_HANDLING&&gs(F.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(w.attributeNameCheck=F.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),F.CUSTOM_ELEMENT_HANDLING&&typeof F.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(w.allowCustomizedBuiltInElements=F.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Ft&&(Ht=!1),ir&&(Ae=!0),jr&&(W=It({},Nh),st=[],jr.html===!0&&(It(W,Oh),It(st,Rh)),jr.svg===!0&&(It(W,nl),It(st,sl),It(st,Vs)),jr.svgFilters===!0&&(It(W,il),It(st,sl),It(st,Vs)),jr.mathMl===!0&&(It(W,al),It(st,Ph),It(st,Vs))),F.ADD_TAGS&&(W===v&&(W=oi(W)),It(W,F.ADD_TAGS,Ut)),F.ADD_ATTR&&(st===dt&&(st=oi(st)),It(st,F.ADD_ATTR,Ut)),F.ADD_URI_SAFE_ATTR&&It(R,F.ADD_URI_SAFE_ATTR,Ut),F.FORBID_CONTENTS&&(Yr===Ti&&(Yr=oi(Yr)),It(Yr,F.FORBID_CONTENTS,Ut)),In&&(W["#text"]=!0),Yt&&It(W,["html","head","body"]),W.table&&(It(W,["tbody"]),delete St.tbody),F.TRUSTED_TYPES_POLICY){if(typeof F.TRUSTED_TYPES_POLICY.createHTML!="function")throw La('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof F.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw La('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');I=F.TRUSTED_TYPES_POLICY,V=I.createHTML("")}else I===void 0&&(I=jg(p,i)),I!==null&&typeof V=="string"&&(V=I.createHTML(""));$e&&$e(F),zn=F}},ys=It({},["mi","mo","mn","ms","mtext"]),ie=It({},["foreignobject","desc","title","annotation-xml"]),Ye=It({},["title","style","font","a","script"]),Pt=It({},[...nl,...il,...Ng]),Be=It({},[...al,...Rg]),Fe=function(F){let Q=M(F);(!Q||!Q.tagName)&&(Q={namespaceURI:be,tagName:"template"});const ct=$s(F.tagName),Xt=$s(Q.tagName);return Re[F.namespaceURI]?F.namespaceURI===Nt?Q.namespaceURI===Lt?ct==="svg":Q.namespaceURI===gt?ct==="svg"&&(Xt==="annotation-xml"||ys[Xt]):!!Pt[ct]:F.namespaceURI===gt?Q.namespaceURI===Lt?ct==="math":Q.namespaceURI===Nt?ct==="math"&&ie[Xt]:!!Be[ct]:F.namespaceURI===Lt?Q.namespaceURI===Nt&&!ie[Xt]||Q.namespaceURI===gt&&!ys[Xt]?!1:!Be[ct]&&(Ye[ct]||!Pt[ct]):!!(sr==="application/xhtml+xml"&&Re[F.namespaceURI]):!1},Mt=function(F){Ea(e.removed,{element:F});try{F.parentNode.removeChild(F)}catch{F.remove()}},Rt=function(F,Q){try{Ea(e.removed,{attribute:Q.getAttributeNode(F),from:Q})}catch{Ea(e.removed,{attribute:null,from:Q})}if(Q.removeAttribute(F),F==="is"&&!st[F])if(Ae||ir)try{Mt(Q)}catch{}else try{Q.setAttribute(F,"")}catch{}},qt=function(F){let Q=null,ct=null;if(Te)F=""+F;else{const _e=Mg(F,/^[\r\n\t ]+/);ct=_e&&_e[0]}sr==="application/xhtml+xml"&&be===Lt&&(F=''+F+"");const Xt=I?I.createHTML(F):F;if(be===Lt)try{Q=new f().parseFromString(Xt,sr)}catch{}if(!Q||!Q.documentElement){Q=N.createDocument(be,"template",null);try{Q.documentElement.innerHTML=je?V:Xt}catch{}}const Jt=Q.body||Q.documentElement;return F&&ct&&Jt.insertBefore(r.createTextNode(ct),Jt.childNodes[0]||null),be===Lt?G.call(Q,Yt?"html":"body")[0]:Yt?Q.documentElement:Jt},On=function(F){return L.call(F.ownerDocument||F,F,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null)},Zt=function(F){return F instanceof h&&(typeof F.nodeName!="string"||typeof F.textContent!="string"||typeof F.removeChild!="function"||!(F.attributes instanceof c)||typeof F.removeAttribute!="function"||typeof F.setAttribute!="function"||typeof F.namespaceURI!="string"||typeof F.insertBefore!="function"||typeof F.hasChildNodes!="function")},bs=function(F){return typeof o=="function"&&F instanceof o},Le=function(F,Q,ct){J[F]&&qs(J[F],Xt=>{Xt.call(e,Q,ct,zn)})},Br=function(F){let Q=null;if(Le("beforeSanitizeElements",F,null),Zt(F))return Mt(F),!0;const ct=Ut(F.nodeName);if(Le("uponSanitizeElement",F,{tagName:ct,allowedTags:W}),F.hasChildNodes()&&!bs(F.firstElementChild)&&ur(/<[/\w]/g,F.innerHTML)&&ur(/<[/\w]/g,F.textContent))return Mt(F),!0;if(!W[ct]||St[ct]){if(!St[ct]&&Fr(ct)&&(w.tagNameCheck instanceof RegExp&&ur(w.tagNameCheck,ct)||w.tagNameCheck instanceof Function&&w.tagNameCheck(ct)))return!1;if(In&&!Yr[ct]){const Xt=M(F)||F.parentNode,Jt=_(F)||F.childNodes;if(Jt&&Xt){const _e=Jt.length;for(let Pe=_e-1;Pe>=0;--Pe)Xt.insertBefore(b(Jt[Pe],!0),A(F))}}return Mt(F),!0}return F instanceof l&&!Fe(F)||(ct==="noscript"||ct==="noembed"||ct==="noframes")&&ur(/<\/no(script|embed|frames)/i,F.innerHTML)?(Mt(F),!0):(Ft&&F.nodeType===3&&(Q=F.textContent,qs([O,P,ft],Xt=>{Q=Fa(Q,Xt," ")}),F.textContent!==Q&&(Ea(e.removed,{element:F.cloneNode()}),F.textContent=Q)),Le("afterSanitizeElements",F,null),!1)},Er=function(F,Q,ct){if(fe&&(Q==="id"||Q==="name")&&(ct in r||ct in Ao))return!1;if(!(Ht&&!zt[Q]&&ur(X,Q))){if(!(Ot&&ur($,Q))){if(!st[Q]||zt[Q]){if(!(Fr(F)&&(w.tagNameCheck instanceof RegExp&&ur(w.tagNameCheck,F)||w.tagNameCheck instanceof Function&&w.tagNameCheck(F))&&(w.attributeNameCheck instanceof RegExp&&ur(w.attributeNameCheck,Q)||w.attributeNameCheck instanceof Function&&w.attributeNameCheck(Q))||Q==="is"&&w.allowCustomizedBuiltInElements&&(w.tagNameCheck instanceof RegExp&&ur(w.tagNameCheck,ct)||w.tagNameCheck instanceof Function&&w.tagNameCheck(ct))))return!1}else if(!R[Q]){if(!ur(K,Fa(ct,et,""))){if(!((Q==="src"||Q==="xlink:href"||Q==="href")&&F!=="script"&&Dg(ct,"data:")===0&&Ai[F])){if(!(Wt&&!ur(U,Fa(ct,et,"")))){if(ct)return!1}}}}}}return!0},Fr=function(F){return F!=="annotation-xml"&&F.indexOf("-")>0},Lr=function(F){Le("beforeSanitizeAttributes",F,null);const{attributes:Q}=F;if(!Q)return;const ct={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:st};let Xt=Q.length;for(;Xt--;){const Jt=Q[Xt],{name:_e,namespaceURI:Pe,value:Kr}=Jt,or=Ut(_e);let lt=_e==="value"?Kr:Ig(Kr);if(ct.attrName=or,ct.attrValue=lt,ct.keepAttr=!0,ct.forceKeepAttr=void 0,Le("uponSanitizeAttribute",F,ct),lt=ct.attrValue,ct.forceKeepAttr||(Rt(_e,F),!ct.keepAttr))continue;if(!jt&&ur(/\/>/i,lt)){Rt(_e,F);continue}Ft&&qs([O,P,ft],At=>{lt=Fa(lt,At," ")});const yt=Ut(F.nodeName);if(Er(yt,or,lt)){if(yr&&(or==="id"||or==="name")&&(Rt(_e,F),lt=ar+lt),I&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Pe)switch(p.getAttributeType(yt,or)){case"TrustedHTML":{lt=I.createHTML(lt);break}case"TrustedScriptURL":{lt=I.createScriptURL(lt);break}}try{Pe?F.setAttributeNS(Pe,_e,lt):F.setAttribute(_e,lt),zh(e.removed)}catch{}}}Le("afterSanitizeAttributes",F,null)},Xr=function ht(F){let Q=null;const ct=On(F);for(Le("beforeSanitizeShadowDOM",F,null);Q=ct.nextNode();)Le("uponSanitizeShadowNode",Q,null),!Br(Q)&&(Q.content instanceof a&&ht(Q.content),Lr(Q));Le("afterSanitizeShadowDOM",F,null)};return e.sanitize=function(ht){let F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Q=null,ct=null,Xt=null,Jt=null;if(je=!ht,je&&(ht=""),typeof ht!="string"&&!bs(ht))if(typeof ht.toString=="function"){if(ht=ht.toString(),typeof ht!="string")throw La("dirty is not a string, aborting")}else throw La("toString is not a function");if(!e.isSupported)return ht;if(ye||Ei(F),e.removed=[],typeof ht=="string"&&(Gr=!1),Gr){if(ht.nodeName){const Kr=Ut(ht.nodeName);if(!W[Kr]||St[Kr])throw La("root node is forbidden and cannot be sanitized in-place")}}else if(ht instanceof o)Q=qt(""),ct=Q.ownerDocument.importNode(ht,!0),ct.nodeType===1&&ct.nodeName==="BODY"||ct.nodeName==="HTML"?Q=ct:Q.appendChild(ct);else{if(!Ae&&!Ft&&!Yt&&ht.indexOf("<")===-1)return I&&Kt?I.createHTML(ht):ht;if(Q=qt(ht),!Q)return Ae?null:Kt?V:""}Q&&Te&&Mt(Q.firstChild);const _e=On(Gr?ht:Q);for(;Xt=_e.nextNode();)Br(Xt)||(Xt.content instanceof a&&Xr(Xt.content),Lr(Xt));if(Gr)return ht;if(Ae){if(ir)for(Jt=q.call(Q.ownerDocument);Q.firstChild;)Jt.appendChild(Q.firstChild);else Jt=Q;return(st.shadowroot||st.shadowrootmode)&&(Jt=Y.call(n,Jt,!0)),Jt}let Pe=Yt?Q.outerHTML:Q.innerHTML;return Yt&&W["!doctype"]&&Q.ownerDocument&&Q.ownerDocument.doctype&&Q.ownerDocument.doctype.name&&ur($h,Q.ownerDocument.doctype.name)&&(Pe=" `+Pe),Ft&&qs([O,P,ft],Kr=>{Pe=Fa(Pe,Kr," ")}),I&&Kt?I.createHTML(Pe):Pe},e.setConfig=function(){let ht=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ei(ht),ye=!0},e.clearConfig=function(){zn=null,ye=!1},e.isValidAttribute=function(ht,F,Q){zn||Ei({});const ct=Ut(ht),Xt=Ut(F);return Er(ct,Xt,Q)},e.addHook=function(ht,F){typeof F=="function"&&(J[ht]=J[ht]||[],Ea(J[ht],F))},e.removeHook=function(ht){if(J[ht])return zh(J[ht])},e.removeHooks=function(ht){J[ht]&&(J[ht]=[])},e.removeAllHooks=function(){J={}},e}var Ni=Vh();const Ma=//gi,Yg=t=>t?Gh(t).replace(/\\n/g,"#br#").split("#br#"):[""],Xg=(()=>{let t=!1;return()=>{t||(Kg(),t=!0)}})();function Kg(){const t="data-temp-href-target";Ni.addHook("beforeSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")||"")}),Ni.addHook("afterSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)||""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}const Wh=t=>(Xg(),Ni.sanitize(t)),Uh=(t,e)=>{var r;if(((r=e.flowchart)==null?void 0:r.htmlLabels)!==!1){const n=e.securityLevel;n==="antiscript"||n==="strict"?t=Wh(t):n!=="loose"&&(t=Gh(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=t6(t))}return t},li=(t,e)=>t&&(e.dompurifyConfig?t=Ni.sanitize(Uh(t,e),e.dompurifyConfig).toString():t=Ni.sanitize(Uh(t,e),{FORBID_TAGS:["style"]}).toString(),t),Zg=(t,e)=>typeof t=="string"?li(t,e):t.flat().map(r=>li(r,e)),Qg=t=>Ma.test(t),Jg=t=>t.split(Ma),t6=t=>t.replace(/#br#/g,"
"),Gh=t=>t.replace(Ma,"#br#"),e6=t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/\(/g,"\\("),e=e.replaceAll(/\)/g,"\\)")),e},De=t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),r6=function(...t){const e=t.filter(r=>!isNaN(r));return Math.max(...e)},n6=function(...t){const e=t.filter(r=>!isNaN(r));return Math.min(...e)},jh=()=>window.MathMLElement!==void 0,ol=/\$\$(.*)\$\$/g,Yh=t=>{var e;return(((e=t.match(ol))==null?void 0:e.length)??0)>0},Xh=async(t,e)=>{if(!Yh(t))return t;if(!jh()&&!e.legacyMathML)return t.replace(ol,"MathML is unsupported in this environment.");const{default:r}=await Promise.resolve().then(()=>cL);return t.split(Ma).map(n=>Yh(n)?`
${n}
`:`
${n}
`).join("").replace(ol,(n,i)=>r.renderToString(i,{throwOnError:!0,displayMode:!0,output:jh()?"mathml":"htmlAndMathml"}).replace(/\n/g," ").replace(//g,""))},Ri={getRows:Yg,sanitizeText:li,sanitizeTextOrArray:Zg,hasBreaks:Qg,splitBreaks:Jg,lineBreakRegex:Ma,removeScript:Wh,getUrl:e6,evaluate:De,getMax:r6,getMin:n6},Ws={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+(e-t)*6*r:r<1/2?e:r<2/3?t+(e-t)*(2/3-r)*6:t),hsl2rgb:({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;const i=r<.5?r*(1+e):r+e-r*e,a=2*r-i;switch(n){case"r":return Ws.hue2rgb(a,i,t+1/3)*255;case"g":return Ws.hue2rgb(a,i,t)*255;case"b":return Ws.hue2rgb(a,i,t-1/3)*255}},rgb2hsl:({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;const i=Math.max(t,e,r),a=Math.min(t,e,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;const o=i-a,l=s>.5?o/(2-i-a):o/(i+a);if(n==="s")return l*100;switch(i){case t:return((e-r)/o+(ee>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),round:t=>Math.round(t*1e10)/1e10},unit:{dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}}},$n={};for(let t=0;t<=255;t++)$n[t]=wt.unit.dec2hex(t);const ze={ALL:0,RGB:1,HSL:2};class i6{constructor(){this.type=ze.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=ze.ALL}is(e){return this.type===e}}const a6=i6;class s6{constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new a6}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=ze.ALL,this}_ensureHSL(){const e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=wt.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=wt.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=wt.channel.rgb2hsl(e,"l"))}_ensureRGB(){const e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=wt.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=wt.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=wt.channel.hsl2rgb(e,"b"))}get r(){const e=this.data,r=e.r;return!this.type.is(ze.HSL)&&r!==void 0?r:(this._ensureHSL(),wt.channel.hsl2rgb(e,"r"))}get g(){const e=this.data,r=e.g;return!this.type.is(ze.HSL)&&r!==void 0?r:(this._ensureHSL(),wt.channel.hsl2rgb(e,"g"))}get b(){const e=this.data,r=e.b;return!this.type.is(ze.HSL)&&r!==void 0?r:(this._ensureHSL(),wt.channel.hsl2rgb(e,"b"))}get h(){const e=this.data,r=e.h;return!this.type.is(ze.RGB)&&r!==void 0?r:(this._ensureRGB(),wt.channel.rgb2hsl(e,"h"))}get s(){const e=this.data,r=e.s;return!this.type.is(ze.RGB)&&r!==void 0?r:(this._ensureRGB(),wt.channel.rgb2hsl(e,"s"))}get l(){const e=this.data,r=e.l;return!this.type.is(ze.RGB)&&r!==void 0?r:(this._ensureRGB(),wt.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(ze.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(ze.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(ze.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(ze.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(ze.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(ze.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}}const o6=s6,Us=new o6({r:0,g:0,b:0,a:0},"transparent"),Kh={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(t.charCodeAt(0)!==35)return;const e=t.match(Kh.re);if(!e)return;const r=e[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,o=s?1:17,l=s?8:4,u=a?0:-1,c=s?255:15;return Us.set({r:(n>>l*(u+3)&c)*o,g:(n>>l*(u+2)&c)*o,b:(n>>l*(u+1)&c)*o,a:a?(n&c)*o/255:1},t)},stringify:t=>{const{r:e,g:r,b:n,a:i}=t;return i<1?`#${$n[Math.round(e)]}${$n[Math.round(r)]}${$n[Math.round(n)]}${$n[Math.round(i*255)]}`:`#${$n[Math.round(e)]}${$n[Math.round(r)]}${$n[Math.round(n)]}`}},Da=Kh,Gs={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{const e=t.match(Gs.hueRe);if(e){const[,r,n]=e;switch(n){case"grad":return wt.channel.clamp.h(parseFloat(r)*.9);case"rad":return wt.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return wt.channel.clamp.h(parseFloat(r)*360)}}return wt.channel.clamp.h(parseFloat(t))},parse:t=>{const e=t.charCodeAt(0);if(e!==104&&e!==72)return;const r=t.match(Gs.re);if(!r)return;const[,n,i,a,s,o]=r;return Us.set({h:Gs._hue2deg(n),s:wt.channel.clamp.s(parseFloat(i)),l:wt.channel.clamp.l(parseFloat(a)),a:s?wt.channel.clamp.a(o?parseFloat(s)/100:parseFloat(s)):1},t)},stringify:t=>{const{h:e,s:r,l:n,a:i}=t;return i<1?`hsla(${wt.lang.round(e)}, ${wt.lang.round(r)}%, ${wt.lang.round(n)}%, ${i})`:`hsl(${wt.lang.round(e)}, ${wt.lang.round(r)}%, ${wt.lang.round(n)}%)`}},js=Gs,Ys={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();const e=Ys.colors[t];if(e)return Da.parse(e)},stringify:t=>{const e=Da.stringify(t);for(const r in Ys.colors)if(Ys.colors[r]===e)return r}},Zh=Ys,Qh={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{const e=t.charCodeAt(0);if(e!==114&&e!==82)return;const r=t.match(Qh.re);if(!r)return;const[,n,i,a,s,o,l,u,c]=r;return Us.set({r:wt.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:wt.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:wt.channel.clamp.b(l?parseFloat(o)*2.55:parseFloat(o)),a:u?wt.channel.clamp.a(c?parseFloat(u)/100:parseFloat(u)):1},t)},stringify:t=>{const{r:e,g:r,b:n,a:i}=t;return i<1?`rgba(${wt.lang.round(e)}, ${wt.lang.round(r)}, ${wt.lang.round(n)}, ${wt.lang.round(i)})`:`rgb(${wt.lang.round(e)}, ${wt.lang.round(r)}, ${wt.lang.round(n)})`}},Xs=Qh,Rr={format:{keyword:Zh,hex:Da,rgb:Xs,rgba:Xs,hsl:js,hsla:js},parse:t=>{if(typeof t!="string")return t;const e=Da.parse(t)||Xs.parse(t)||js.parse(t)||Zh.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(ze.HSL)||t.data.r===void 0?js.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Xs.stringify(t):Da.stringify(t)},Jh=(t,e)=>{const r=Rr.parse(t);for(const n in e)r[n]=wt.channel.clamp[n](e[n]);return Rr.stringify(r)},Pi=(t,e,r=0,n=1)=>{if(typeof t!="number")return Jh(t,{a:e});const i=Us.set({r:wt.channel.clamp.r(t),g:wt.channel.clamp.g(e),b:wt.channel.clamp.b(r),a:wt.channel.clamp.a(n)});return Rr.stringify(i)},l6=(t,e)=>wt.lang.round(Rr.parse(t)[e]),u6=t=>{const{r:e,g:r,b:n}=Rr.parse(t),i=.2126*wt.channel.toLinear(e)+.7152*wt.channel.toLinear(r)+.0722*wt.channel.toLinear(n);return wt.lang.round(i)},c6=t=>u6(t)>=.5,Ia=t=>!c6(t),t1=(t,e,r)=>{const n=Rr.parse(t),i=n[e],a=wt.channel.clamp[e](i+r);return i!==a&&(n[e]=a),Rr.stringify(n)},pt=(t,e)=>t1(t,"l",e),bt=(t,e)=>t1(t,"l",-e),D=(t,e)=>{const r=Rr.parse(t),n={};for(const i in e)e[i]&&(n[i]=r[i]+e[i]);return Jh(t,n)},h6=(t,e,r=50)=>{const{r:n,g:i,b:a,a:s}=Rr.parse(t),{r:o,g:l,b:u,a:c}=Rr.parse(e),h=r/100,f=h*2-1,p=s-c,b=((f*p===-1?f:(f+p)/(1+f*p))+1)/2,A=1-b,_=n*b+o*A,M=i*b+l*A,I=a*b+u*A,V=s*h+c*(1-h);return Pi(_,M,I,V)},at=(t,e=100)=>{const r=Rr.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,h6(r,t,e)},He=(t,e)=>e?D(t,{s:-40,l:10}):D(t,{s:-40,l:-10}),Ks="#ffffff",Zs="#f2f2f2";let f6=class{constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){var r,n,i,a,s,o,l,u,c,h,f;if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||D(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||D(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||He(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||He(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||He(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||He(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||at(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||at(this.tertiaryColor),this.lineColor=this.lineColor||at(this.background),this.arrowheadColor=this.arrowheadColor||at(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?bt(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||"grey",this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||bt(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||at(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||pt(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||D(this.primaryColor,{h:30}),this.cScale4=this.cScale4||D(this.primaryColor,{h:60}),this.cScale5=this.cScale5||D(this.primaryColor,{h:90}),this.cScale6=this.cScale6||D(this.primaryColor,{h:120}),this.cScale7=this.cScale7||D(this.primaryColor,{h:150}),this.cScale8=this.cScale8||D(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||D(this.primaryColor,{h:270}),this.cScale10=this.cScale10||D(this.primaryColor,{h:300}),this.cScale11=this.cScale11||D(this.primaryColor,{h:330}),this.darkMode)for(let p=0;p{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}};const d6=t=>{const e=new f6;return e.calculate(t),e};let p6=class{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=pt(this.primaryColor,16),this.tertiaryColor=D(this.primaryColor,{h:-160}),this.primaryBorderColor=at(this.background),this.secondaryBorderColor=He(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=He(this.tertiaryColor,this.darkMode),this.primaryTextColor=at(this.primaryColor),this.secondaryTextColor=at(this.secondaryColor),this.tertiaryTextColor=at(this.tertiaryColor),this.lineColor=at(this.background),this.textColor=at(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=pt(at("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=Pi(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=bt("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=bt(this.sectionBkgColor,10),this.taskBorderColor=Pi(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Pi(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){var e,r,n,i,a,s,o,l,u,c,h;this.secondBkg=pt(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=pt(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.mainContrastColor,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=pt(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=D(this.primaryColor,{h:64}),this.fillType3=D(this.secondaryColor,{h:64}),this.fillType4=D(this.primaryColor,{h:-64}),this.fillType5=D(this.secondaryColor,{h:-64}),this.fillType6=D(this.primaryColor,{h:128}),this.fillType7=D(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||D(this.primaryColor,{h:30}),this.cScale4=this.cScale4||D(this.primaryColor,{h:60}),this.cScale5=this.cScale5||D(this.primaryColor,{h:90}),this.cScale6=this.cScale6||D(this.primaryColor,{h:120}),this.cScale7=this.cScale7||D(this.primaryColor,{h:150}),this.cScale8=this.cScale8||D(this.primaryColor,{h:210}),this.cScale9=this.cScale9||D(this.primaryColor,{h:270}),this.cScale10=this.cScale10||D(this.primaryColor,{h:300}),this.cScale11=this.cScale11||D(this.primaryColor,{h:330});for(let f=0;f{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}};const m6=t=>{const e=new p6;return e.calculate(t),e};let g6=class{constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=D(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=D(this.primaryColor,{h:-160}),this.primaryBorderColor=He(this.primaryColor,this.darkMode),this.secondaryBorderColor=He(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=He(this.tertiaryColor,this.darkMode),this.primaryTextColor=at(this.primaryColor),this.secondaryTextColor=at(this.secondaryColor),this.tertiaryTextColor=at(this.tertiaryColor),this.lineColor=at(this.background),this.textColor=at(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#e8e8e8",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=Pi(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){var e,r,n,i,a,s,o,l,u,c,h;this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||D(this.primaryColor,{h:30}),this.cScale4=this.cScale4||D(this.primaryColor,{h:60}),this.cScale5=this.cScale5||D(this.primaryColor,{h:90}),this.cScale6=this.cScale6||D(this.primaryColor,{h:120}),this.cScale7=this.cScale7||D(this.primaryColor,{h:150}),this.cScale8=this.cScale8||D(this.primaryColor,{h:210}),this.cScale9=this.cScale9||D(this.primaryColor,{h:270}),this.cScale10=this.cScale10||D(this.primaryColor,{h:300}),this.cScale11=this.cScale11||D(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||bt(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||bt(this.tertiaryColor,40);for(let f=0;f{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}};const y6=t=>{const e=new g6;return e.calculate(t),e};let b6=class{constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=pt("#cde498",10),this.primaryBorderColor=He(this.primaryColor,this.darkMode),this.secondaryBorderColor=He(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=He(this.tertiaryColor,this.darkMode),this.primaryTextColor=at(this.primaryColor),this.secondaryTextColor=at(this.secondaryColor),this.tertiaryTextColor=at(this.primaryColor),this.lineColor=at(this.background),this.textColor=at(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){var e,r,n,i,a,s,o,l,u,c,h;this.actorBorder=bt(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||D(this.primaryColor,{h:30}),this.cScale4=this.cScale4||D(this.primaryColor,{h:60}),this.cScale5=this.cScale5||D(this.primaryColor,{h:90}),this.cScale6=this.cScale6||D(this.primaryColor,{h:120}),this.cScale7=this.cScale7||D(this.primaryColor,{h:150}),this.cScale8=this.cScale8||D(this.primaryColor,{h:210}),this.cScale9=this.cScale9||D(this.primaryColor,{h:270}),this.cScale10=this.cScale10||D(this.primaryColor,{h:300}),this.cScale11=this.cScale11||D(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||bt(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||bt(this.tertiaryColor,40);for(let f=0;f{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}};const x6=t=>{const e=new b6;return e.calculate(t),e};class v6{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=pt(this.contrast,55),this.background="#ffffff",this.tertiaryColor=D(this.primaryColor,{h:-160}),this.primaryBorderColor=He(this.primaryColor,this.darkMode),this.secondaryBorderColor=He(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=He(this.tertiaryColor,this.darkMode),this.primaryTextColor=at(this.primaryColor),this.secondaryTextColor=at(this.secondaryColor),this.tertiaryTextColor=at(this.tertiaryColor),this.lineColor=at(this.background),this.textColor=at(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){var e,r,n,i,a,s,o,l,u,c,h;this.secondBkg=pt(this.contrast,55),this.border2=this.contrast,this.actorBorder=pt(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.lineColor,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let f=0;f{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}}const gn={base:{getThemeVariables:d6},dark:{getThemeVariables:m6},default:{getThemeVariables:y6},forest:{getThemeVariables:x6},neutral:{getThemeVariables:t=>{const e=new v6;return e.calculate(t),e}}},yn={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},theme:"default",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","maxEdges"],legacyMathML:!1,deterministicIds:!1,fontSize:16},e1={...yn,deterministicIDSeed:void 0,themeCSS:void 0,themeVariables:gn.default.getThemeVariables(),sequence:{...yn.sequence,messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},noteFont:function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},actorFont:function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}},gantt:{...yn.gantt,tickInterval:void 0,useWidth:void 0},c4:{...yn.c4,useWidth:void 0,personFont:function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},external_personFont:function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},systemFont:function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},external_systemFont:function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},system_dbFont:function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},external_system_dbFont:function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},system_queueFont:function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},external_system_queueFont:function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},containerFont:function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},external_containerFont:function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},container_dbFont:function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},external_container_dbFont:function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},container_queueFont:function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},external_container_queueFont:function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},componentFont:function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},external_componentFont:function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},component_dbFont:function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},external_component_dbFont:function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},component_queueFont:function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},external_component_queueFont:function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},boundaryFont:function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}},pie:{...yn.pie,useWidth:984},xyChart:{...yn.xyChart,useWidth:void 0},requirement:{...yn.requirement,useWidth:void 0},gitGraph:{...yn.gitGraph,useMaxWidth:!1},sankey:{...yn.sankey,useMaxWidth:!1}},r1=(t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...r1(t[n],"")]:[...r,e+n],[]),w6=new Set(r1(e1,"")),C6=e1,Qs=t=>{if(E.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>Qs(e));return}for(const e of Object.keys(t)){if(E.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!w6.has(e)||t[e]==null){E.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){E.debug("sanitizing object",e),Qs(t[e]);continue}const r=["themeCSS","fontFamily","altFontFamily"];for(const n of r)e.includes(n)&&(E.debug("sanitizing css option",e),t[e]=k6(t[e]))}if(t.themeVariables)for(const e of Object.keys(t.themeVariables)){const r=t.themeVariables[e];r!=null&&r.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}E.debug("After sanitization",t)}},k6=t=>{let e=0,r=0;for(const n of t){if(e{for(const{id:e,detector:r,loader:n}of t)a1(e,r,n)},a1=(t,e,r)=>{qi[t]?E.error(`Detector with key ${t} already exists`):qi[t]={detector:e,loader:r},E.debug(`Detector with key ${t} added${r?" with loader":""}`)},T6=t=>qi[t].loader,ll=(t,e,{depth:r=2,clobber:n=!1}={})=>{const i={depth:r,clobber:n};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(a=>ll(t,a,i)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(a=>{t.includes(a)||t.push(a)}),t):t===void 0||r<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(a=>{typeof e[a]=="object"&&(t[a]===void 0||typeof t[a]=="object")?(t[a]===void 0&&(t[a]=Array.isArray(e[a])?[]:{}),t[a]=ll(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},Oe=ll;var A6=typeof global=="object"&&global&&global.Object===Object&&global;const s1=A6;var B6=typeof self=="object"&&self&&self.Object===Object&&self,E6=s1||B6||Function("return this")();const Pr=E6;var F6=Pr.Symbol;const xr=F6;var o1=Object.prototype,L6=o1.hasOwnProperty,M6=o1.toString,Oa=xr?xr.toStringTag:void 0;function D6(t){var e=L6.call(t,Oa),r=t[Oa];try{t[Oa]=void 0;var n=!0}catch{}var i=M6.call(t);return n&&(e?t[Oa]=r:delete t[Oa]),i}var I6=Object.prototype,z6=I6.toString;function O6(t){return z6.call(t)}var N6="[object Null]",R6="[object Undefined]",l1=xr?xr.toStringTag:void 0;function ui(t){return t==null?t===void 0?R6:N6:l1&&l1 in Object(t)?D6(t):O6(t)}function hr(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var P6="[object AsyncFunction]",q6="[object Function]",$6="[object GeneratorFunction]",H6="[object Proxy]";function Na(t){if(!hr(t))return!1;var e=ui(t);return e==q6||e==$6||e==P6||e==H6}var V6=Pr["__core-js_shared__"];const ul=V6;var u1=function(){var t=/[^.]+$/.exec(ul&&ul.keys&&ul.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function W6(t){return!!u1&&u1 in t}var U6=Function.prototype,G6=U6.toString;function ci(t){if(t!=null){try{return G6.call(t)}catch{}try{return t+""}catch{}}return""}var j6=/[\\^$.*+?()[\]{}|]/g,Y6=/^\[object .+?Constructor\]$/,X6=Function.prototype,K6=Object.prototype,Z6=X6.toString,Q6=K6.hasOwnProperty,J6=RegExp("^"+Z6.call(Q6).replace(j6,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function t7(t){if(!hr(t)||W6(t))return!1;var e=Na(t)?J6:Y6;return e.test(ci(t))}function e7(t,e){return t==null?void 0:t[e]}function hi(t,e){var r=e7(t,e);return t7(r)?r:void 0}var r7=hi(Object,"create");const Ra=r7;function n7(){this.__data__=Ra?Ra(null):{},this.size=0}function i7(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var a7="__lodash_hash_undefined__",s7=Object.prototype,o7=s7.hasOwnProperty;function l7(t){var e=this.__data__;if(Ra){var r=e[t];return r===a7?void 0:r}return o7.call(e,t)?e[t]:void 0}var u7=Object.prototype,c7=u7.hasOwnProperty;function h7(t){var e=this.__data__;return Ra?e[t]!==void 0:c7.call(e,t)}var f7="__lodash_hash_undefined__";function d7(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Ra&&e===void 0?f7:e,this}function fi(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}function v7(t,e){var r=this.__data__,n=t0(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function bn(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1&&t%1==0&&t<=X7}function Hn(t){return t!=null&&pl(t.length)&&!Na(t)}function C1(t){return Jr(t)&&Hn(t)}function K7(){return!1}var k1=typeof exports=="object"&&exports&&!exports.nodeType&&exports,_1=k1&&typeof module=="object"&&module&&!module.nodeType&&module,Z7=_1&&_1.exports===k1,S1=Z7?Pr.Buffer:void 0,Q7=S1?S1.isBuffer:void 0,J7=Q7||K7;const Wi=J7;var t8="[object Object]",e8=Function.prototype,r8=Object.prototype,T1=e8.toString,n8=r8.hasOwnProperty,i8=T1.call(Object);function a8(t){if(!Jr(t)||ui(t)!=t8)return!1;var e=dl(t);if(e===null)return!0;var r=n8.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&T1.call(r)==i8}var s8="[object Arguments]",o8="[object Array]",l8="[object Boolean]",u8="[object Date]",c8="[object Error]",h8="[object Function]",f8="[object Map]",d8="[object Number]",p8="[object Object]",m8="[object RegExp]",g8="[object Set]",y8="[object String]",b8="[object WeakMap]",x8="[object ArrayBuffer]",v8="[object DataView]",w8="[object Float32Array]",C8="[object Float64Array]",k8="[object Int8Array]",_8="[object Int16Array]",S8="[object Int32Array]",T8="[object Uint8Array]",A8="[object Uint8ClampedArray]",B8="[object Uint16Array]",E8="[object Uint32Array]",ae={};ae[w8]=ae[C8]=ae[k8]=ae[_8]=ae[S8]=ae[T8]=ae[A8]=ae[B8]=ae[E8]=!0,ae[s8]=ae[o8]=ae[x8]=ae[l8]=ae[v8]=ae[u8]=ae[c8]=ae[h8]=ae[f8]=ae[d8]=ae[p8]=ae[m8]=ae[g8]=ae[y8]=ae[b8]=!1;function F8(t){return Jr(t)&&pl(t.length)&&!!ae[ui(t)]}function s0(t){return function(e){return t(e)}}var A1=typeof exports=="object"&&exports&&!exports.nodeType&&exports,qa=A1&&typeof module=="object"&&module&&!module.nodeType&&module,L8=qa&&qa.exports===A1,ml=L8&&s1.process,M8=function(){try{var t=qa&&qa.require&&qa.require("util").types;return t||ml&&ml.binding&&ml.binding("util")}catch{}}();const Ui=M8;var B1=Ui&&Ui.isTypedArray,D8=B1?s0(B1):F8;const o0=D8;function gl(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var I8=Object.prototype,z8=I8.hasOwnProperty;function l0(t,e,r){var n=t[e];(!(z8.call(t,e)&&$i(n,r))||r===void 0&&!(e in t))&&n0(t,e,r)}function $a(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a-1&&t%1==0&&t0){if(++e>=K8)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var ty=J8(X8);const D1=ty;function c0(t,e){return D1(M1(t,e,pi),t+"")}function Ha(t,e,r){if(!hr(r))return!1;var n=typeof e;return(n=="number"?Hn(r)&&u0(e,r.length):n=="string"&&e in r)?$i(r[e],t):!1}function ey(t){return c0(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,s&&Ha(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++no.args);Qs(s),n=Oe(n,[...s])}else n=r.args;if(!n)return;let i=Js(t,e);const a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},I1=function(t,e=null){try{const r=new RegExp(`[%]{2}(?![{]${ay.source})(?=[}][%]{2}).* `,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),E.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n;const i=[];for(;(n=za.exec(t))!==null;)if(n.index===za.lastIndex&&za.lastIndex++,n&&!e||e&&n[1]&&n[1].match(e)||e&&n[2]&&n[2].match(e)){const a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return E.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},oy=function(t){return t.replace(za,"")},ly=function(t,e){for(const[r,n]of e.entries())if(n.match(t))return r;return-1};function f0(t,e){if(!t)return e;const r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return iy[r]??e}function uy(t,e){const r=t.trim();if(r)return e.securityLevel!=="loose"?_c.sanitizeUrl(r):r}const cy=(t,...e)=>{const r=t.split("."),n=r.length-1,i=r[n];let a=window;for(let s=0;s{r+=z1(i,e),e=i});const n=r/2;return yl(t,n)}function fy(t){return t.length===1?t[0]:hy(t)}const O1=(t,e=2)=>{const r=Math.pow(10,e);return Math.round(t*r)/r},yl=(t,e)=>{let r,n=e;for(const i of t){if(r){const a=z1(i,r);if(a=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:O1((1-s)*r.x+s*i.x,5),y:O1((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},dy=(t,e,r)=>{E.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());const i=yl(e,25),a=t?10:5,s=Math.atan2(e[0].y-i.y,e[0].x-i.x),o={x:0,y:0};return o.x=Math.sin(s)*a+(e[0].x+i.x)/2,o.y=-Math.cos(s)*a+(e[0].y+i.y)/2,o};function py(t,e,r){const n=structuredClone(r);E.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();const i=25+t,a=yl(n,i),s=10+t*.5,o=Math.atan2(n[0].y-a.y,n[0].x-a.x),l={x:0,y:0};return e==="start_left"?(l.x=Math.sin(o+Math.PI)*s+(n[0].x+a.x)/2,l.y=-Math.cos(o+Math.PI)*s+(n[0].y+a.y)/2):e==="end_right"?(l.x=Math.sin(o-Math.PI)*s+(n[0].x+a.x)/2-5,l.y=-Math.cos(o-Math.PI)*s+(n[0].y+a.y)/2-5):e==="end_left"?(l.x=Math.sin(o)*s+(n[0].x+a.x)/2-5,l.y=-Math.cos(o)*s+(n[0].y+a.y)/2-5):(l.x=Math.sin(o)*s+(n[0].x+a.x)/2,l.y=-Math.cos(o)*s+(n[0].y+a.y)/2),l}function d0(t){let e="",r="";for(const n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}let N1=0;const my=()=>(N1++,"id-"+Math.random().toString(36).substr(2,12)+"-"+N1);function gy(t){let e="";const r="0123456789abcdef",n=r.length;for(let i=0;igy(t.length),by=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},xy=function(t,e){const r=e.text.replace(Ri.lineBreakRegex," "),[,n]=xl(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);const a=i.append("tspan");return a.attr("x",e.x+e.textMargin*2),a.attr("fill",e.fill),a.text(r),i},vy=Hi((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),Ri.lineBreakRegex.test(t)))return t;const n=t.split(" "),i=[];let a="";return n.forEach((s,o)=>{const l=p0(`${s} `,r),u=p0(a,r);if(l>e){const{hyphenatedStrings:f,remainingWord:p}=wy(s,e,"-",r);i.push(a,...f),a=p}else u+l>=e?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");o+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),wy=Hi((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);const i=[...t],a=[];let s="";return i.forEach((o,l)=>{const u=`${s}${o}`;if(p0(u,n)>=e){const h=l+1,f=i.length===h,p=`${u}${r}`;a.push(f?u:p),s=""}else s=u}),{hyphenatedStrings:a,remainingWord:s}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);function Cy(t,e){return bl(t,e).height}function p0(t,e){return bl(t,e).width}const bl=Hi((t,e)=>{const{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};const[,a]=xl(r),s=["sans-serif",n],o=t.split(Ri.lineBreakRegex),l=[],u=Dt("body");if(!u.remove)return{width:0,height:0,lineHeight:0};const c=u.append("svg");for(const f of s){let p=0;const y={width:0,height:0,lineHeight:0};for(const b of o){const A=by();A.text=b||ny;const _=xy(c,A).style("font-size",a).style("font-weight",i).style("font-family",f),M=(_._groups||_)[0][0].getBBox();if(M.width===0&&M.height===0)throw new Error("svg element not in render tree");y.width=Math.round(Math.max(y.width,M.width)),p=Math.round(M.height),y.height+=p,y.lineHeight=Math.round(Math.max(y.lineHeight,p))}l.push(y)}c.remove();const h=isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1;return l[h]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`);class ky{constructor(e=!1,r){this.count=0,this.count=r?r.length:0,this.next=e?()=>this.count++:()=>Date.now()}}let m0;const _y=function(t){return m0=m0||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),m0.innerHTML=t,unescape(m0.textContent)};function R1(t){return"str"in t}const Sy=(t,e,r,n)=>{var a;if(!n)return;const i=(a=t.node())==null?void 0:a.getBBox();i&&t.append("text").text(n).attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},xl=t=>{if(typeof t=="number")return[t,t+"px"];const e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]};function P1(t,e){return h0({},t,e)}const Ke={assignWithDepth:Oe,wrapLabel:vy,calculateTextHeight:Cy,calculateTextWidth:p0,calculateTextDimensions:bl,cleanAndMerge:P1,detectInit:sy,detectDirective:I1,isSubstringInArray:ly,interpolateToCurve:f0,calcLabelPosition:fy,calcCardinalityPosition:dy,calcTerminalLabelPosition:py,formatUrl:uy,getStylesFromArray:d0,generateId:my,random:yy,runFunc:cy,entityDecode:_y,insertTitle:Sy,parseFontSize:xl,InitIDGenerator:ky},Ty=function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){const n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"fl°°"+n+"¶ß":"fl°"+n+"¶ß"}),e},Va=function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")};var q1="comm",$1="rule",H1="decl",Ay="@import",By="@keyframes",Ey="@layer",V1=Math.abs,vl=String.fromCharCode;function W1(t){return t.trim()}function g0(t,e,r){return t.replace(e,r)}function Fy(t,e,r){return t.indexOf(e,r)}function Wa(t,e){return t.charCodeAt(e)|0}function Ua(t,e,r){return t.slice(e,r)}function vn(t){return t.length}function Ly(t){return t.length}function y0(t,e){return e.push(t),t}var b0=1,ji=1,U1=0,vr=0,ve=0,Yi="";function wl(t,e,r,n,i,a,s,o){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:b0,column:ji,length:s,return:"",siblings:o}}function My(){return ve}function Dy(){return ve=vr>0?Wa(Yi,--vr):0,ji--,ve===10&&(ji=1,b0--),ve}function $r(){return ve=vr2||Cl(ve)>3?"":" "}function Ny(t,e){for(;--e&&$r()&&!(ve<48||ve>102||ve>57&&ve<65||ve>70&&ve<97););return v0(t,x0()+(e<6&&mi()==32&&$r()==32))}function _l(t){for(;$r();)switch(ve){case t:return vr;case 34:case 39:t!==34&&t!==39&&_l(ve);break;case 40:t===41&&_l(t);break;case 92:$r();break}return vr}function Ry(t,e){for(;$r()&&t+ve!==47+10;)if(t+ve===42+42&&mi()===47)break;return"/*"+v0(e,vr-1)+"*"+vl(t===47?t:$r())}function Py(t){for(;!Cl(mi());)$r();return v0(t,vr)}function qy(t){return zy(w0("",null,null,null,[""],t=Iy(t),0,[0],t))}function w0(t,e,r,n,i,a,s,o,l){for(var u=0,c=0,h=s,f=0,p=0,y=0,b=1,A=1,_=1,M=0,I="",V=i,N=a,L=n,q=I;A;)switch(y=M,M=$r()){case 40:if(y!=108&&Wa(q,h-1)==58){Fy(q+=g0(kl(M),"&","&\f"),"&\f",V1(u?o[u-1]:0))!=-1&&(_=-1);break}case 34:case 39:case 91:q+=kl(M);break;case 9:case 10:case 13:case 32:q+=Oy(y);break;case 92:q+=Ny(x0()-1,7);continue;case 47:switch(mi()){case 42:case 47:y0($y(Ry($r(),x0()),e,r,l),l);break;default:q+="/"}break;case 123*b:o[u++]=vn(q)*_;case 125*b:case 59:case 0:switch(M){case 0:case 125:A=0;case 59+c:_==-1&&(q=g0(q,/\f/g,"")),p>0&&vn(q)-h&&y0(p>32?j1(q+";",n,r,h-1,l):j1(g0(q," ","")+";",n,r,h-2,l),l);break;case 59:q+=";";default:if(y0(L=G1(q,e,r,u,c,i,o,I,V=[],N=[],h,a),a),M===123)if(c===0)w0(q,e,L,L,V,a,h,o,N);else switch(f===99&&Wa(q,3)===110?100:f){case 100:case 108:case 109:case 115:w0(t,L,L,n&&y0(G1(t,L,L,0,0,i,o,I,i,V=[],h,N),N),i,N,h,o,n?V:N);break;default:w0(q,L,L,L,[""],N,0,o,N)}}u=c=p=0,b=_=1,I=q="",h=s;break;case 58:h=1+vn(q),p=y;default:if(b<1){if(M==123)--b;else if(M==125&&b++==0&&Dy()==125)continue}switch(q+=vl(M),M*b){case 38:_=c>0?1:(q+="\f",-1);break;case 44:o[u++]=(vn(q)-1)*_,_=1;break;case 64:mi()===45&&(q+=kl($r())),f=mi(),c=h=vn(I=q+=Py(x0())),M++;break;case 45:y===45&&vn(q)==2&&(b=0)}}return a}function G1(t,e,r,n,i,a,s,o,l,u,c,h){for(var f=i-1,p=i===0?a:[""],y=Ly(p),b=0,A=0,_=0;b0?p[M]+" "+I:g0(I,/&\f/g,p[M])))&&(l[_++]=V);return wl(t,e,r,i===0?$1:o,l,u,c,h)}function $y(t,e,r,n){return wl(t,e,r,q1,vl(My()),Ua(t,2,-2),0,n)}function j1(t,e,r,n,i){return wl(t,e,r,H1,Ua(t,0,n),Ua(t,n+1,-1),n,i)}function Sl(t,e){for(var r="",n=0;n{let r=Oe({},t),n={};for(const i of e)Q1(i),n=Oe(n,i);if(r=Oe(r,n),n.theme&&n.theme in gn){const i=Oe({},X1),a=Oe(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in gn&&(r.themeVariables=gn[r.theme].getThemeVariables(a))}return Ga=r,tf(Ga),Ga},Vy=t=>(Ze=Oe({},Xi),Ze=Oe(Ze,t),t.theme&&gn[t.theme]&&(Ze.themeVariables=gn[t.theme].getThemeVariables(t.themeVariables)),C0(Ze,Ki),Ze),Wy=t=>{X1=Oe({},t)},Uy=t=>(Ze=Oe(Ze,t),C0(Ze,Ki),Ze),K1=()=>Oe({},Ze),Z1=t=>(tf(t),Oe(Ga,t),tn()),tn=()=>Oe({},Ga),Q1=t=>{t&&(["secure",...Ze.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(E.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&Q1(t[e])}))},Gy=t=>{Qs(t),t.fontFamily&&(!t.themeVariables||!t.themeVariables.fontFamily)&&(t.themeVariables={fontFamily:t.fontFamily}),Ki.push(t),C0(Ze,Ki)},k0=(t=Ze)=>{Ki=[],C0(t,Ki)},jy={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},J1={},Yy=t=>{J1[t]||(E.warn(jy[t]),J1[t]=!0)},tf=t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&Yy("LAZY_LOAD_DEPRECATED")};var Tl=function(){var t=function(or,lt,yt,At){for(yt=yt||{},At=or.length;At--;yt[or[At]]=lt);return yt},e=[1,4],r=[1,3],n=[1,5],i=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],a=[2,2],s=[1,13],o=[1,14],l=[1,15],u=[1,16],c=[1,23],h=[1,25],f=[1,26],p=[1,27],y=[1,49],b=[1,48],A=[1,29],_=[1,30],M=[1,31],I=[1,32],V=[1,33],N=[1,44],L=[1,46],q=[1,42],G=[1,47],Y=[1,43],J=[1,50],O=[1,45],P=[1,51],ft=[1,52],X=[1,34],$=[1,35],U=[1,36],et=[1,37],K=[1,57],W=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],v=[1,61],st=[1,60],dt=[1,62],w=[8,9,11,73,75],St=[1,88],zt=[1,93],Ot=[1,92],Ht=[1,89],Wt=[1,85],jt=[1,91],Ft=[1,87],Yt=[1,94],ye=[1,90],Te=[1,95],Ae=[1,86],ir=[8,9,10,11,73,75],Kt=[8,9,10,11,44,73,75],fe=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],yr=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],ar=[42,58,86,99,102,103,106,108,111,112,113],In=[1,121],Gr=[1,120],jr=[1,128],Yr=[1,142],Ti=[1,143],Ai=[1,144],Bi=[1,145],R=[1,130],rt=[1,132],gt=[1,136],Nt=[1,137],Lt=[1,138],be=[1,139],je=[1,140],Re=[1,141],fn=[1,146],sr=[1,147],ne=[1,126],ri=[1,127],Ut=[1,134],zn=[1,129],Ao=[1,133],gs=[1,131],Ei=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],ys=[1,149],ie=[8,9,11],Ye=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],Pt=[1,169],Be=[1,165],Fe=[1,166],Mt=[1,170],Rt=[1,167],qt=[1,168],On=[75,113,116],Zt=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],bs=[10,103],Le=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Br=[1,235],Er=[1,233],Fr=[1,237],Lr=[1,231],Xr=[1,232],ht=[1,234],F=[1,236],Q=[1,238],ct=[1,255],Xt=[8,9,11,103],Jt=[8,9,10,11,58,81,102,103,106,107,108,109],_e={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(lt,yt,At,it,de,C,xs){var T=C.length-1;switch(de){case 2:this.$=[];break;case 3:(!Array.isArray(C[T])||C[T].length>0)&&C[T-1].push(C[T]),this.$=C[T-1];break;case 4:case 176:this.$=C[T];break;case 11:it.setDirection("TB"),this.$="TB";break;case 12:it.setDirection(C[T-1]),this.$=C[T-1];break;case 27:this.$=C[T-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=it.addSubGraph(C[T-6],C[T-1],C[T-4]);break;case 34:this.$=it.addSubGraph(C[T-3],C[T-1],C[T-3]);break;case 35:this.$=it.addSubGraph(void 0,C[T-1],void 0);break;case 37:this.$=C[T].trim(),it.setAccTitle(this.$);break;case 38:case 39:this.$=C[T].trim(),it.setAccDescription(this.$);break;case 43:it.addLink(C[T-2].stmt,C[T],C[T-1]),this.$={stmt:C[T],nodes:C[T].concat(C[T-2].nodes)};break;case 44:it.addLink(C[T-3].stmt,C[T-1],C[T-2]),this.$={stmt:C[T-1],nodes:C[T-1].concat(C[T-3].nodes)};break;case 45:this.$={stmt:C[T-1],nodes:C[T-1]};break;case 46:this.$={stmt:C[T],nodes:C[T]};break;case 47:this.$=[C[T]];break;case 48:this.$=C[T-4].concat(C[T]);break;case 49:this.$=C[T];break;case 50:this.$=C[T-2],it.setClass(C[T-2],C[T]);break;case 51:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"square");break;case 52:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"doublecircle");break;case 53:this.$=C[T-5],it.addVertex(C[T-5],C[T-2],"circle");break;case 54:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"ellipse");break;case 55:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"stadium");break;case 56:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"subroutine");break;case 57:this.$=C[T-7],it.addVertex(C[T-7],C[T-1],"rect",void 0,void 0,void 0,Object.fromEntries([[C[T-5],C[T-3]]]));break;case 58:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"cylinder");break;case 59:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"round");break;case 60:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"diamond");break;case 61:this.$=C[T-5],it.addVertex(C[T-5],C[T-2],"hexagon");break;case 62:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"odd");break;case 63:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"trapezoid");break;case 64:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"inv_trapezoid");break;case 65:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"lean_right");break;case 66:this.$=C[T-3],it.addVertex(C[T-3],C[T-1],"lean_left");break;case 67:this.$=C[T],it.addVertex(C[T]);break;case 68:C[T-1].text=C[T],this.$=C[T-1];break;case 69:case 70:C[T-2].text=C[T-1],this.$=C[T-2];break;case 71:this.$=C[T];break;case 72:var Mr=it.destructLink(C[T],C[T-2]);this.$={type:Mr.type,stroke:Mr.stroke,length:Mr.length,text:C[T-1]};break;case 73:this.$={text:C[T],type:"text"};break;case 74:this.$={text:C[T-1].text+""+C[T],type:C[T-1].type};break;case 75:this.$={text:C[T],type:"string"};break;case 76:this.$={text:C[T],type:"markdown"};break;case 77:var Mr=it.destructLink(C[T]);this.$={type:Mr.type,stroke:Mr.stroke,length:Mr.length};break;case 78:this.$=C[T-1];break;case 79:this.$={text:C[T],type:"text"};break;case 80:this.$={text:C[T-1].text+""+C[T],type:C[T-1].type};break;case 81:this.$={text:C[T],type:"string"};break;case 82:case 97:this.$={text:C[T],type:"markdown"};break;case 94:this.$={text:C[T],type:"text"};break;case 95:this.$={text:C[T-1].text+""+C[T],type:C[T-1].type};break;case 96:this.$={text:C[T],type:"text"};break;case 98:this.$=C[T-4],it.addClass(C[T-2],C[T]);break;case 99:this.$=C[T-4],it.setClass(C[T-2],C[T]);break;case 100:case 108:this.$=C[T-1],it.setClickEvent(C[T-1],C[T]);break;case 101:case 109:this.$=C[T-3],it.setClickEvent(C[T-3],C[T-2]),it.setTooltip(C[T-3],C[T]);break;case 102:this.$=C[T-2],it.setClickEvent(C[T-2],C[T-1],C[T]);break;case 103:this.$=C[T-4],it.setClickEvent(C[T-4],C[T-3],C[T-2]),it.setTooltip(C[T-4],C[T]);break;case 104:this.$=C[T-2],it.setLink(C[T-2],C[T]);break;case 105:this.$=C[T-4],it.setLink(C[T-4],C[T-2]),it.setTooltip(C[T-4],C[T]);break;case 106:this.$=C[T-4],it.setLink(C[T-4],C[T-2],C[T]);break;case 107:this.$=C[T-6],it.setLink(C[T-6],C[T-4],C[T]),it.setTooltip(C[T-6],C[T-2]);break;case 110:this.$=C[T-1],it.setLink(C[T-1],C[T]);break;case 111:this.$=C[T-3],it.setLink(C[T-3],C[T-2]),it.setTooltip(C[T-3],C[T]);break;case 112:this.$=C[T-3],it.setLink(C[T-3],C[T-2],C[T]);break;case 113:this.$=C[T-5],it.setLink(C[T-5],C[T-4],C[T]),it.setTooltip(C[T-5],C[T-2]);break;case 114:this.$=C[T-4],it.addVertex(C[T-2],void 0,void 0,C[T]);break;case 115:this.$=C[T-4],it.updateLink([C[T-2]],C[T]);break;case 116:this.$=C[T-4],it.updateLink(C[T-2],C[T]);break;case 117:this.$=C[T-8],it.updateLinkInterpolate([C[T-6]],C[T-2]),it.updateLink([C[T-6]],C[T]);break;case 118:this.$=C[T-8],it.updateLinkInterpolate(C[T-6],C[T-2]),it.updateLink(C[T-6],C[T]);break;case 119:this.$=C[T-6],it.updateLinkInterpolate([C[T-4]],C[T]);break;case 120:this.$=C[T-6],it.updateLinkInterpolate(C[T-4],C[T]);break;case 121:case 123:this.$=[C[T]];break;case 122:case 124:C[T-2].push(C[T]),this.$=C[T-2];break;case 126:this.$=C[T-1]+C[T];break;case 174:this.$=C[T];break;case 175:this.$=C[T-1]+""+C[T];break;case 177:this.$=C[T-1]+""+C[T];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:e,10:r,12:n},{1:[3]},t(i,a,{5:6}),{4:7,9:e,10:r,12:n},{4:8,9:e,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:o,10:l,11:u,20:17,22:18,23:19,24:20,25:21,26:22,27:c,33:24,34:h,36:f,38:p,40:28,41:38,42:y,43:39,45:40,58:b,81:A,82:_,83:M,84:I,85:V,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft,118:X,119:$,120:U,121:et},t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),{8:[1,54],9:[1,55],10:K,15:53,18:56},t(W,[2,3]),t(W,[2,4]),t(W,[2,5]),t(W,[2,6]),t(W,[2,7]),t(W,[2,8]),{8:v,9:st,11:dt,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:v,9:st,11:dt,21:66},{8:v,9:st,11:dt,21:67},{8:v,9:st,11:dt,21:68},{8:v,9:st,11:dt,21:69},{8:v,9:st,11:dt,21:70},{8:v,9:st,10:[1,71],11:dt,21:72},t(W,[2,36]),{35:[1,73]},{37:[1,74]},t(W,[2,39]),t(w,[2,46],{18:75,10:K}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:St,42:zt,58:Ot,77:[1,83],86:Ht,92:[1,80],94:[1,81],98:82,102:Wt,103:jt,106:Ft,108:Yt,111:ye,112:Te,113:Ae,117:84},t(W,[2,178]),t(W,[2,179]),t(W,[2,180]),t(W,[2,181]),t(ir,[2,47]),t(ir,[2,49],{44:[1,96]}),t(Kt,[2,67],{110:109,29:[1,97],42:y,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:b,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:N,99:L,102:q,103:G,106:Y,108:J,111:O,112:P,113:ft}),t(fe,[2,174]),t(fe,[2,135]),t(fe,[2,136]),t(fe,[2,137]),t(fe,[2,138]),t(fe,[2,139]),t(fe,[2,140]),t(fe,[2,141]),t(fe,[2,142]),t(fe,[2,143]),t(fe,[2,144]),t(fe,[2,145]),t(i,[2,12]),t(i,[2,18]),t(i,[2,19]),{9:[1,110]},t(yr,[2,26],{18:111,10:K}),t(W,[2,27]),{40:112,41:38,42:y,43:39,45:40,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},t(W,[2,40]),t(W,[2,41]),t(W,[2,42]),t(ar,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:In,116:Gr},t([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),t(W,[2,28]),t(W,[2,29]),t(W,[2,30]),t(W,[2,31]),t(W,[2,32]),{10:jr,12:Yr,14:Ti,27:Ai,28:122,32:Bi,42:R,58:rt,73:gt,77:[1,124],78:[1,125],80:135,81:Nt,82:Lt,83:be,84:je,85:Re,86:fn,87:sr,88:123,102:ne,106:ri,108:Ut,111:zn,112:Ao,113:gs},t(Ei,a,{5:148}),t(W,[2,37]),t(W,[2,38]),t(w,[2,45],{42:ys}),{42:y,45:150,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},{99:[1,151],100:152,102:[1,153]},{42:y,45:154,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},{42:y,45:155,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},t(ie,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},t(ie,[2,108],{117:160,10:[1,159],14:St,42:zt,58:Ot,86:Ht,102:Wt,103:jt,106:Ft,108:Yt,111:ye,112:Te,113:Ae}),t(ie,[2,110],{10:[1,161]}),t(Ye,[2,176]),t(Ye,[2,163]),t(Ye,[2,164]),t(Ye,[2,165]),t(Ye,[2,166]),t(Ye,[2,167]),t(Ye,[2,168]),t(Ye,[2,169]),t(Ye,[2,170]),t(Ye,[2,171]),t(Ye,[2,172]),t(Ye,[2,173]),{42:y,45:162,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},{30:163,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:171,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:173,48:[1,172],65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:174,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:175,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:176,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{106:[1,177]},{30:178,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:179,63:[1,180],65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:181,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:182,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{30:183,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},t(fe,[2,175]),t(i,[2,20]),t(yr,[2,25]),t(w,[2,43],{18:184,10:K}),t(ar,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{75:[1,188],76:189,113:In,116:Gr},t(On,[2,73]),t(On,[2,75]),t(On,[2,76]),t(On,[2,161]),t(On,[2,162]),{8:v,9:st,10:jr,11:dt,12:Yr,14:Ti,21:191,27:Ai,29:[1,190],32:Bi,42:R,58:rt,73:gt,80:135,81:Nt,82:Lt,83:be,84:je,85:Re,86:fn,87:sr,88:192,102:ne,106:ri,108:Ut,111:zn,112:Ao,113:gs},t(Zt,[2,94]),t(Zt,[2,96]),t(Zt,[2,97]),t(Zt,[2,150]),t(Zt,[2,151]),t(Zt,[2,152]),t(Zt,[2,153]),t(Zt,[2,154]),t(Zt,[2,155]),t(Zt,[2,156]),t(Zt,[2,157]),t(Zt,[2,158]),t(Zt,[2,159]),t(Zt,[2,160]),t(Zt,[2,83]),t(Zt,[2,84]),t(Zt,[2,85]),t(Zt,[2,86]),t(Zt,[2,87]),t(Zt,[2,88]),t(Zt,[2,89]),t(Zt,[2,90]),t(Zt,[2,91]),t(Zt,[2,92]),t(Zt,[2,93]),{6:11,7:12,8:s,9:o,10:l,11:u,20:17,22:18,23:19,24:20,25:21,26:22,27:c,32:[1,193],33:24,34:h,36:f,38:p,40:28,41:38,42:y,43:39,45:40,58:b,81:A,82:_,83:M,84:I,85:V,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft,118:X,119:$,120:U,121:et},{10:K,18:194},{10:[1,195],42:y,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:109,111:O,112:P,113:ft},{10:[1,196]},{10:[1,197],103:[1,198]},t(bs,[2,121]),{10:[1,199],42:y,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:109,111:O,112:P,113:ft},{10:[1,200],42:y,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:109,111:O,112:P,113:ft},{77:[1,201]},t(ie,[2,102],{10:[1,202]}),t(ie,[2,104],{10:[1,203]}),{77:[1,204]},t(Ye,[2,177]),{77:[1,205],95:[1,206]},t(ir,[2,50],{110:109,42:y,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,111:O,112:P,113:ft}),{31:[1,207],65:Pt,79:208,113:Mt,114:Rt,115:qt},t(Le,[2,79]),t(Le,[2,81]),t(Le,[2,82]),t(Le,[2,146]),t(Le,[2,147]),t(Le,[2,148]),t(Le,[2,149]),{47:[1,209],65:Pt,79:208,113:Mt,114:Rt,115:qt},{30:210,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{49:[1,211],65:Pt,79:208,113:Mt,114:Rt,115:qt},{51:[1,212],65:Pt,79:208,113:Mt,114:Rt,115:qt},{53:[1,213],65:Pt,79:208,113:Mt,114:Rt,115:qt},{55:[1,214],65:Pt,79:208,113:Mt,114:Rt,115:qt},{58:[1,215]},{62:[1,216],65:Pt,79:208,113:Mt,114:Rt,115:qt},{64:[1,217],65:Pt,79:208,113:Mt,114:Rt,115:qt},{30:218,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},{31:[1,219],65:Pt,79:208,113:Mt,114:Rt,115:qt},{65:Pt,67:[1,220],69:[1,221],79:208,113:Mt,114:Rt,115:qt},{65:Pt,67:[1,223],69:[1,222],79:208,113:Mt,114:Rt,115:qt},t(w,[2,44],{42:ys}),t(ar,[2,70]),t(ar,[2,69]),{60:[1,224],65:Pt,79:208,113:Mt,114:Rt,115:qt},t(ar,[2,72]),t(On,[2,74]),{30:225,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},t(Ei,a,{5:226}),t(Zt,[2,95]),t(W,[2,35]),{41:227,42:y,43:39,45:40,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},{10:Br,58:Er,81:Fr,89:228,102:Lr,104:229,105:230,106:Xr,107:ht,108:F,109:Q},{10:Br,58:Er,81:Fr,89:239,101:[1,240],102:Lr,104:229,105:230,106:Xr,107:ht,108:F,109:Q},{10:Br,58:Er,81:Fr,89:241,101:[1,242],102:Lr,104:229,105:230,106:Xr,107:ht,108:F,109:Q},{102:[1,243]},{10:Br,58:Er,81:Fr,89:244,102:Lr,104:229,105:230,106:Xr,107:ht,108:F,109:Q},{42:y,45:245,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft},t(ie,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},t(ie,[2,109]),t(ie,[2,111],{10:[1,249]}),t(ie,[2,112]),t(Kt,[2,51]),t(Le,[2,80]),t(Kt,[2,52]),{49:[1,250],65:Pt,79:208,113:Mt,114:Rt,115:qt},t(Kt,[2,59]),t(Kt,[2,54]),t(Kt,[2,55]),t(Kt,[2,56]),{106:[1,251]},t(Kt,[2,58]),t(Kt,[2,60]),{64:[1,252],65:Pt,79:208,113:Mt,114:Rt,115:qt},t(Kt,[2,62]),t(Kt,[2,63]),t(Kt,[2,65]),t(Kt,[2,64]),t(Kt,[2,66]),t([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:Pt,79:208,113:Mt,114:Rt,115:qt},{6:11,7:12,8:s,9:o,10:l,11:u,20:17,22:18,23:19,24:20,25:21,26:22,27:c,32:[1,254],33:24,34:h,36:f,38:p,40:28,41:38,42:y,43:39,45:40,58:b,81:A,82:_,83:M,84:I,85:V,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft,118:X,119:$,120:U,121:et},t(ir,[2,48]),t(ie,[2,114],{103:ct}),t(Xt,[2,123],{105:256,10:Br,58:Er,81:Fr,102:Lr,106:Xr,107:ht,108:F,109:Q}),t(Jt,[2,125]),t(Jt,[2,127]),t(Jt,[2,128]),t(Jt,[2,129]),t(Jt,[2,130]),t(Jt,[2,131]),t(Jt,[2,132]),t(Jt,[2,133]),t(Jt,[2,134]),t(ie,[2,115],{103:ct}),{10:[1,257]},t(ie,[2,116],{103:ct}),{10:[1,258]},t(bs,[2,122]),t(ie,[2,98],{103:ct}),t(ie,[2,99],{110:109,42:y,58:b,86:N,99:L,102:q,103:G,106:Y,108:J,111:O,112:P,113:ft}),t(ie,[2,103]),t(ie,[2,105],{10:[1,259]}),t(ie,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:v,9:st,11:dt,21:264},t(W,[2,34]),{10:Br,58:Er,81:Fr,102:Lr,104:265,105:230,106:Xr,107:ht,108:F,109:Q},t(Jt,[2,126]),{14:St,42:zt,58:Ot,86:Ht,98:266,102:Wt,103:jt,106:Ft,108:Yt,111:ye,112:Te,113:Ae,117:84},{14:St,42:zt,58:Ot,86:Ht,98:267,102:Wt,103:jt,106:Ft,108:Yt,111:ye,112:Te,113:Ae,117:84},{95:[1,268]},t(ie,[2,113]),t(Kt,[2,53]),{30:269,65:Pt,77:Be,78:Fe,79:164,113:Mt,114:Rt,115:qt},t(Kt,[2,61]),t(Ei,a,{5:270}),t(Xt,[2,124],{105:256,10:Br,58:Er,81:Fr,102:Lr,106:Xr,107:ht,108:F,109:Q}),t(ie,[2,119],{117:160,10:[1,271],14:St,42:zt,58:Ot,86:Ht,102:Wt,103:jt,106:Ft,108:Yt,111:ye,112:Te,113:Ae}),t(ie,[2,120],{117:160,10:[1,272],14:St,42:zt,58:Ot,86:Ht,102:Wt,103:jt,106:Ft,108:Yt,111:ye,112:Te,113:Ae}),t(ie,[2,107]),{31:[1,273],65:Pt,79:208,113:Mt,114:Rt,115:qt},{6:11,7:12,8:s,9:o,10:l,11:u,20:17,22:18,23:19,24:20,25:21,26:22,27:c,32:[1,274],33:24,34:h,36:f,38:p,40:28,41:38,42:y,43:39,45:40,58:b,81:A,82:_,83:M,84:I,85:V,86:N,99:L,102:q,103:G,106:Y,108:J,110:41,111:O,112:P,113:ft,118:X,119:$,120:U,121:et},{10:Br,58:Er,81:Fr,89:275,102:Lr,104:229,105:230,106:Xr,107:ht,108:F,109:Q},{10:Br,58:Er,81:Fr,89:276,102:Lr,104:229,105:230,106:Xr,107:ht,108:F,109:Q},t(Kt,[2,57]),t(W,[2,33]),t(ie,[2,117],{103:ct}),t(ie,[2,118],{103:ct})],defaultActions:{},parseError:function(lt,yt){if(yt.recoverable)this.trace(lt);else{var At=new Error(lt);throw At.hash=yt,At}},parse:function(lt){var yt=this,At=[0],it=[],de=[null],C=[],xs=this.table,T="",Mr=0,Om=0,hL=2,Nm=1,fL=C.slice.call(arguments,1),Me=Object.create(this.lexer),Fi={yy:{}};for(var xc in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xc)&&(Fi.yy[xc]=this.yy[xc]);Me.setInput(lt,Fi.yy),Fi.yy.lexer=Me,Fi.yy.parser=this,typeof Me.yylloc>"u"&&(Me.yylloc={});var vc=Me.yylloc;C.push(vc);var dL=Me.options&&Me.options.ranges;typeof Fi.yy.parseError=="function"?this.parseError=Fi.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pL(){var Rn;return Rn=it.pop()||Me.lex()||Nm,typeof Rn!="number"&&(Rn instanceof Array&&(it=Rn,Rn=it.pop()),Rn=yt.symbols_[Rn]||Rn),Rn}for(var lr,Li,Dr,wc,ga={},Bo,Nn,Rm,Eo;;){if(Li=At[At.length-1],this.defaultActions[Li]?Dr=this.defaultActions[Li]:((lr===null||typeof lr>"u")&&(lr=pL()),Dr=xs[Li]&&xs[Li][lr]),typeof Dr>"u"||!Dr.length||!Dr[0]){var Cc="";Eo=[];for(Bo in xs[Li])this.terminals_[Bo]&&Bo>hL&&Eo.push("'"+this.terminals_[Bo]+"'");Me.showPosition?Cc="Parse error on line "+(Mr+1)+`: `+Me.showPosition()+` Expecting `+Eo.join(", ")+", got '"+(this.terminals_[lr]||lr)+"'":Cc="Parse error on line "+(Mr+1)+": Unexpected "+(lr==Nm?"end of input":"'"+(this.terminals_[lr]||lr)+"'"),this.parseError(Cc,{text:Me.match,token:this.terminals_[lr]||lr,line:Me.yylineno,loc:vc,expected:Eo})}if(Dr[0]instanceof Array&&Dr.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Li+", token: "+lr);switch(Dr[0]){case 1:At.push(lr),de.push(Me.yytext),C.push(Me.yylloc),At.push(Dr[1]),lr=null,Om=Me.yyleng,T=Me.yytext,Mr=Me.yylineno,vc=Me.yylloc;break;case 2:if(Nn=this.productions_[Dr[1]][1],ga.$=de[de.length-Nn],ga._$={first_line:C[C.length-(Nn||1)].first_line,last_line:C[C.length-1].last_line,first_column:C[C.length-(Nn||1)].first_column,last_column:C[C.length-1].last_column},dL&&(ga._$.range=[C[C.length-(Nn||1)].range[0],C[C.length-1].range[1]]),wc=this.performAction.apply(ga,[T,Om,Mr,Fi.yy,Dr[1],de,C].concat(fL)),typeof wc<"u")return wc;Nn&&(At=At.slice(0,-1*Nn*2),de=de.slice(0,-1*Nn),C=C.slice(0,-1*Nn)),At.push(this.productions_[Dr[1]][0]),de.push(ga.$),C.push(ga._$),Rm=xs[At[At.length-2]][At[At.length-1]],At.push(Rm);break;case 3:return!0}}return!0}},Pe=function(){var or={EOF:1,parseError:function(yt,At){if(this.yy.parser)this.yy.parser.parseError(yt,At);else throw new Error(yt)},setInput:function(lt,yt){return this.yy=yt||this.yy||{},this._input=lt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var lt=this._input[0];this.yytext+=lt,this.yyleng++,this.offset++,this.match+=lt,this.matched+=lt;var yt=lt.match(/(?:\r\n?|\n).*/g);return yt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),lt},unput:function(lt){var yt=lt.length,At=lt.split(/(?:\r\n?|\n)/g);this._input=lt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yt),this.offset-=yt;var it=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),At.length-1&&(this.yylineno-=At.length-1);var de=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:At?(At.length===it.length?this.yylloc.first_column:0)+it[it.length-At.length].length-At[0].length:this.yylloc.first_column-yt},this.options.ranges&&(this.yylloc.range=[de[0],de[0]+this.yyleng-yt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(lt){this.unput(this.match.slice(lt))},pastInput:function(){var lt=this.matched.substr(0,this.matched.length-this.match.length);return(lt.length>20?"...":"")+lt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var lt=this.match;return lt.length<20&&(lt+=this._input.substr(0,20-lt.length)),(lt.substr(0,20)+(lt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var lt=this.pastInput(),yt=new Array(lt.length+1).join("-");return lt+this.upcomingInput()+` `+yt+"^"},test_match:function(lt,yt){var At,it,de;if(this.options.backtrack_lexer&&(de={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(de.yylloc.range=this.yylloc.range.slice(0))),it=lt[0].match(/(?:\r\n?|\n).*/g),it&&(this.yylineno+=it.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:it?it[it.length-1].length-it[it.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+lt[0].length},this.yytext+=lt[0],this.match+=lt[0],this.matches=lt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(lt[0].length),this.matched+=lt[0],At=this.performAction.call(this,this.yy,this,yt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),At)return At;if(this._backtrack){for(var C in de)this[C]=de[C];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var lt,yt,At,it;this._more||(this.yytext="",this.match="");for(var de=this._currentRules(),C=0;Cyt[0].length)){if(yt=At,it=C,this.options.backtrack_lexer){if(lt=this.test_match(At,de[C]),lt!==!1)return lt;if(this._backtrack){yt=!1;continue}else return!1}else if(!this.options.flex)break}return yt?(lt=this.test_match(yt,de[it]),lt!==!1?lt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var yt=this.next();return yt||this.lex()},begin:function(yt){this.conditionStack.push(yt)},popState:function(){var yt=this.conditionStack.length-1;return yt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(yt){return yt=this.conditionStack.length-1-Math.abs(yt||0),yt>=0?this.conditionStack[yt]:"INITIAL"},pushState:function(yt){this.begin(yt)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(yt,At,it,de){switch(it){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:this.begin("callbackname");break;case 8:this.popState();break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 92;case 11:this.popState();break;case 12:return 93;case 13:return"MD_STR";case 14:this.popState();break;case 15:this.begin("md_string");break;case 16:return"STR";case 17:this.popState();break;case 18:this.pushState("string");break;case 19:return 81;case 20:return 99;case 21:return 82;case 22:return 101;case 23:return 83;case 24:return 84;case 25:return 94;case 26:this.begin("click");break;case 27:this.popState();break;case 28:return 85;case 29:return yt.lex.firstGraph()&&this.begin("dir"),12;case 30:return yt.lex.firstGraph()&&this.begin("dir"),12;case 31:return yt.lex.firstGraph()&&this.begin("dir"),12;case 32:return 27;case 33:return 32;case 34:return 95;case 35:return 95;case 36:return 95;case 37:return 95;case 38:return this.popState(),13;case 39:return this.popState(),14;case 40:return this.popState(),14;case 41:return this.popState(),14;case 42:return this.popState(),14;case 43:return this.popState(),14;case 44:return this.popState(),14;case 45:return this.popState(),14;case 46:return this.popState(),14;case 47:return this.popState(),14;case 48:return this.popState(),14;case 49:return 118;case 50:return 119;case 51:return 120;case 52:return 121;case 53:return 102;case 54:return 108;case 55:return 44;case 56:return 58;case 57:return 42;case 58:return 8;case 59:return 103;case 60:return 112;case 61:return this.popState(),75;case 62:return this.pushState("edgeText"),73;case 63:return 116;case 64:return this.popState(),75;case 65:return this.pushState("thickEdgeText"),73;case 66:return 116;case 67:return this.popState(),75;case 68:return this.pushState("dottedEdgeText"),73;case 69:return 116;case 70:return 75;case 71:return this.popState(),51;case 72:return"TEXT";case 73:return this.pushState("ellipseText"),50;case 74:return this.popState(),53;case 75:return this.pushState("text"),52;case 76:return this.popState(),55;case 77:return this.pushState("text"),54;case 78:return 56;case 79:return this.pushState("text"),65;case 80:return this.popState(),62;case 81:return this.pushState("text"),61;case 82:return this.popState(),47;case 83:return this.pushState("text"),46;case 84:return this.popState(),67;case 85:return this.popState(),69;case 86:return 114;case 87:return this.pushState("trapText"),66;case 88:return this.pushState("trapText"),68;case 89:return 115;case 90:return 65;case 91:return 87;case 92:return"SEP";case 93:return 86;case 94:return 112;case 95:return 108;case 96:return 42;case 97:return 106;case 98:return 111;case 99:return 113;case 100:return this.popState(),60;case 101:return this.pushState("text"),60;case 102:return this.popState(),49;case 103:return this.pushState("text"),48;case 104:return this.popState(),31;case 105:return this.pushState("text"),29;case 106:return this.popState(),64;case 107:return this.pushState("text"),63;case 108:return"TEXT";case 109:return"QUOTE";case 110:return 9;case 111:return 10;case 112:return 11}},rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{callbackargs:{rules:[11,12,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},callbackname:{rules:[8,9,10,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},href:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},click:{rules:[15,18,27,28,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dottedEdgeText:{rules:[15,18,67,69,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},thickEdgeText:{rules:[15,18,64,66,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},edgeText:{rules:[15,18,61,63,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},trapText:{rules:[15,18,70,73,75,77,81,83,84,85,86,87,88,101,103,105,107],inclusive:!1},ellipseText:{rules:[15,18,70,71,72,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},text:{rules:[15,18,70,73,74,75,76,77,80,81,82,83,87,88,100,101,102,103,104,105,106,107,108],inclusive:!1},vertex:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dir:{rules:[15,18,38,39,40,41,42,43,44,45,46,47,48,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr_multiline:{rules:[5,6,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr:{rules:[3,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_title:{rules:[1,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},md_string:{rules:[13,14,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},string:{rules:[15,16,17,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},INITIAL:{rules:[0,2,4,7,15,18,19,20,21,22,23,24,25,26,29,30,31,32,33,34,35,36,37,49,50,51,52,53,54,55,56,57,58,59,60,61,62,64,65,67,68,70,73,75,77,78,79,81,83,87,88,89,90,91,92,93,94,95,96,97,98,99,101,103,105,107,109,110,111,112],inclusive:!0}}};return or}();_e.lexer=Pe;function Kr(){this.yy={}}return Kr.prototype=_e,_e.Parser=Kr,new Kr}();Tl.parser=Tl;const Xy=Tl,Ky=function(t,e){for(let r of e)t.attr(r[0],r[1])},Zy=function(t,e,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${e}px;`)):(n.set("height",t),n.set("width",e)),n},ef=function(t,e,r,n){const i=Zy(e,r,n);Ky(t,i)},rf=function(t,e,r,n){const i=e.node().getBBox(),a=i.width,s=i.height;E.info(`SVG bounds: ${a}x${s}`,i);let o=0,l=0;E.info(`Graph bounds: ${o}x${l}`,t),o=a+r*2,l=s+r*2,E.info(`Calculated bounds: ${o}x${l}`),ef(e,l,o,n);const u=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;e.attr("viewBox",u)},_0={},Qy=(t,e,r)=>{let n="";return t in _0&&_0[t]?n=_0[t](r):E.warn(`No theme found for ${t}`),` & { font-family: ${r.fontFamily}; font-size: ${r.fontSize}; fill: ${r.textColor} } /* Classes common for multiple diagrams */ & .error-icon { fill: ${r.errorBkgColor}; } & .error-text { fill: ${r.errorTextColor}; stroke: ${r.errorTextColor}; } & .edge-thickness-normal { stroke-width: 2px; } & .edge-thickness-thick { stroke-width: 3.5px } & .edge-pattern-solid { stroke-dasharray: 0; } & .edge-pattern-dashed{ stroke-dasharray: 3; } .edge-pattern-dotted { stroke-dasharray: 2; } & .marker { fill: ${r.lineColor}; stroke: ${r.lineColor}; } & .marker.cross { stroke: ${r.lineColor}; } & svg { font-family: ${r.fontFamily}; font-size: ${r.fontSize}; } ${n} ${e} `},Jy=(t,e)=>{e!==void 0&&(_0[t]=e)},tb=Qy;let Al="",Bl="",El="";const Fl=t=>li(t,tn()),nf=()=>{Al="",El="",Bl=""},af=t=>{Al=Fl(t).replace(/^\s+/g,"")},sf=()=>Al,of=t=>{El=Fl(t).replace(/\n\s+/g,` `)},lf=()=>El,uf=t=>{Bl=Fl(t)},cf=()=>Bl,eb=Object.freeze(Object.defineProperty({__proto__:null,clear:nf,getAccDescription:lf,getAccTitle:sf,getDiagramTitle:cf,setAccDescription:of,setAccTitle:af,setDiagramTitle:uf},Symbol.toStringTag,{value:"Module"})),rb=E,nb=Fo,Et=tn,ib=Z1,ab=Xi,sb=t=>li(t,Et()),ob=rf,lb=()=>eb,S0={},Ll=(t,e,r)=>{var n;if(S0[t])throw new Error(`Diagram ${t} already registered.`);S0[t]=e,r&&a1(t,r),Jy(t,e.styles),(n=e.injectUtils)==null||n.call(e,rb,nb,Et,sb,ob,lb(),()=>{})},Ml=t=>{if(t in S0)return S0[t];throw new ub(t)};class ub extends Error{constructor(e){super(`Diagram ${e} not found.`)}}const cb="flowchart-";let hf=0,Zi=Et(),se={},Hr=[],Qi={},wn=[],T0={},A0={},B0=0,Dl=!0,wr,E0,F0=[];const L0=t=>Ri.sanitizeText(t,Zi),M0=function(t){const e=Object.keys(se);for(const r of e)if(se[r].id===t)return se[r].domId;return t},hb=function(t,e,r,n,i,a,s={}){let o,l=t;l!==void 0&&l.trim().length!==0&&(se[l]===void 0&&(se[l]={id:l,labelType:"text",domId:cb+l+"-"+hf,styles:[],classes:[]}),hf++,e!==void 0?(Zi=Et(),o=L0(e.text.trim()),se[l].labelType=e.type,o[0]==='"'&&o[o.length-1]==='"'&&(o=o.substring(1,o.length-1)),se[l].text=o):se[l].text===void 0&&(se[l].text=t),r!==void 0&&(se[l].type=r),n!=null&&n.forEach(function(u){se[l].styles.push(u)}),i!=null&&i.forEach(function(u){se[l].classes.push(u)}),a!==void 0&&(se[l].dir=a),se[l].props===void 0?se[l].props=s:s!==void 0&&Object.assign(se[l].props,s))},fb=function(t,e,r){const a={start:t,end:e,type:void 0,text:"",labelType:"text"};E.info("abc78 Got edge...",a);const s=r.text;if(s!==void 0&&(a.text=L0(s.text.trim()),a.text[0]==='"'&&a.text[a.text.length-1]==='"'&&(a.text=a.text.substring(1,a.text.length-1)),a.labelType=s.type),r!==void 0&&(a.type=r.type,a.stroke=r.stroke,a.length=r.length),(a==null?void 0:a.length)>10&&(a.length=10),Hr.length<(Zi.maxEdges??500))E.info("abc78 pushing edge..."),Hr.push(a);else throw new Error(`Edge limit exceeded. ${Hr.length} edges found, but the limit is ${Zi.maxEdges}. Initialize mermaid with maxEdges set to a higher number to allow more edges. You cannot set this config via configuration inside the diagram as it is a secure config. You have to call mermaid.initialize.`)},db=function(t,e,r){E.info("addLink (abc78)",t,e,r);let n,i;for(n=0;n=Hr.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Hr.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?Hr.defaultStyle=e:(Ke.isSubstringInArray("fill",e)===-1&&e.push("fill:none"),Hr[r].style=e)})},gb=function(t,e){t.split(",").forEach(function(r){Qi[r]===void 0&&(Qi[r]={id:r,styles:[],textStyles:[]}),e!=null&&e.forEach(function(n){if(n.match("color")){const i=n.replace("fill","bgFill").replace("color","fill");Qi[r].textStyles.push(i)}Qi[r].styles.push(n)})})},yb=function(t){wr=t,wr.match(/.*/)&&(wr="LR"),wr.match(/.*v/)&&(wr="TB"),wr==="TD"&&(wr="TB")},Il=function(t,e){t.split(",").forEach(function(r){let n=r;se[n]!==void 0&&se[n].classes.push(e),T0[n]!==void 0&&T0[n].classes.push(e)})},bb=function(t,e){t.split(",").forEach(function(r){e!==void 0&&(A0[E0==="gen-1"?M0(r):r]=L0(e))})},xb=function(t,e,r){let n=M0(t);if(Et().securityLevel!=="loose"||e===void 0)return;let i=[];if(typeof r=="string"){i=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a")),i.classed("hover",!0)}).on("mouseout",function(){e.transition().duration(500).style("opacity",0),Dt(this).classed("hover",!1)})};F0.push(ff);const Bb=function(t="gen-1"){se={},Qi={},Hr=[],F0=[ff],wn=[],T0={},B0=0,A0={},Dl=!0,E0=t,Zi=Et(),nf()},Eb=t=>{E0=t||"gen-2"},Fb=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},Lb=function(t,e,r){let n=t.text.trim(),i=r.text;t===r&&r.text.match(/\s/)&&(n=void 0);function a(c){const h={boolean:{},number:{},string:{}},f=[];let p;return{nodeList:c.filter(function(b){const A=typeof b;return b.stmt&&b.stmt==="dir"?(p=b.value,!1):b.trim()===""?!1:A in h?h[A].hasOwnProperty(b)?!1:h[A][b]=!0:f.includes(b)?!1:f.push(b)}),dir:p}}let s=[];const{nodeList:o,dir:l}=a(s.concat.apply(s,e));if(s=o,E0==="gen-1")for(let c=0;c2e3)return;if(df[ja]=e,wn[e].id===t)return{result:!0,count:0};let n=0,i=1;for(;n=0){const s=pf(t,a);if(s.result)return{result:!0,count:i+s.count};i=i+s.count}n=n+1}return{result:!1,count:i}},Db=function(t){return df[t]},Ib=function(){ja=-1,wn.length>0&&pf("none",wn.length-1)},zb=function(){return wn},Ob=()=>Dl?(Dl=!1,!0):!1,Nb=t=>{let e=t.trim(),r="arrow_open";switch(e[0]){case"<":r="arrow_point",e=e.slice(1);break;case"x":r="arrow_cross",e=e.slice(1);break;case"o":r="arrow_circle",e=e.slice(1);break}let n="normal";return e.includes("=")&&(n="thick"),e.includes(".")&&(n="dotted"),{type:r,stroke:n}},Rb=(t,e)=>{const r=e.length;let n=0;for(let i=0;i{const e=t.trim();let r=e.slice(0,-1),n="arrow_open";switch(e.slice(-1)){case"x":n="arrow_cross",e[0]==="x"&&(n="double_"+n,r=r.slice(1));break;case">":n="arrow_point",e[0]==="<"&&(n="double_"+n,r=r.slice(1));break;case"o":n="arrow_circle",e[0]==="o"&&(n="double_"+n,r=r.slice(1));break}let i="normal",a=r.length-1;r[0]==="="&&(i="thick"),r[0]==="~"&&(i="invisible");let s=Rb(".",r);return s&&(i="dotted",a=s),{type:n,stroke:i,length:a}},qb=(t,e)=>{const r=Pb(t);let n;if(e){if(n=Nb(e),n.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(n.type==="arrow_open")n.type=r.type;else{if(n.type!==r.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return n.type==="double_arrow"&&(n.type="double_arrow_point"),n.length=r.length,n}return r},mf=(t,e)=>{let r=!1;return t.forEach(n=>{n.nodes.indexOf(e)>=0&&(r=!0)}),r},gf=(t,e)=>{const r=[];return t.nodes.forEach((n,i)=>{mf(e,n)||r.push(t.nodes[i])}),{nodes:r}},zl={defaultConfig:()=>ab.flowchart,setAccTitle:af,getAccTitle:sf,getAccDescription:lf,setAccDescription:of,addVertex:hb,lookUpDomId:M0,addLink:db,updateLinkInterpolate:pb,updateLink:mb,addClass:gb,setDirection:yb,setClass:Il,setTooltip:bb,getTooltip:wb,setClickEvent:Cb,setLink:vb,bindFunctions:kb,getDirection:_b,getVertices:Sb,getEdges:Tb,getClasses:Ab,clear:Bb,setGen:Eb,defaultStyle:Fb,addSubGraph:Lb,getDepthFirstPos:Db,indexNodes:Ib,getSubGraphs:zb,destructLink:qb,lex:{firstGraph:Ob},exists:mf,makeUniq:gf,setDiagramTitle:uf,getDiagramTitle:cf};var $b="[object Symbol]";function gi(t){return typeof t=="symbol"||Jr(t)&&ui(t)==$b}function Ji(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r-1}var sx=b1(Object.keys,Object);const ox=sx;var lx=Object.prototype,ux=lx.hasOwnProperty;function _f(t){if(!a0(t))return ox(t);var e=[];for(var r in Object(t))ux.call(t,r)&&r!="constructor"&&e.push(r);return e}function fr(t){return Hn(t)?E1(t):_f(t)}var cx=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,hx=/^\w*$/;function Nl(t,e){if(xe(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||gi(t)?!0:hx.test(t)||!cx.test(t)||e!=null&&t in Object(e)}var fx=500;function dx(t){var e=Hi(t,function(n){return r.size===fx&&r.clear(),n}),r=e.cache;return e}var px=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,mx=/\\(\\)?/g,gx=dx(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(px,function(r,n,i,a){e.push(i?a.replace(mx,"$1"):n||r)}),e});const yx=gx;function Sf(t){return t==null?"":xf(t)}function I0(t,e){return xe(t)?t:Nl(t,e)?[t]:yx(Sf(t))}var bx=1/0;function Ya(t){if(typeof t=="string"||gi(t))return t;var e=t+"";return e=="0"&&1/t==-bx?"-0":e}function z0(t,e){e=I0(e,t);for(var r=0,n=e.length;t!=null&&r0&&r(o)?e>1?O0(o,e-1,r,n,i):Rl(i,o):n||(i[i.length]=o)}return i}function ta(t){var e=t==null?0:t.length;return e?O0(t,1):[]}function wx(t){return D1(M1(t,void 0,ta),t+"")}function Cx(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++io))return!1;var u=a.get(t),c=a.get(e);if(u&&c)return u==e&&c==t;var h=-1,f=!0,p=r&av?new Ka:void 0;for(a.set(t,e),a.set(e,t);++h2?e[2]:void 0;for(i&&Ha(e[0],e[1],i)&&(n=1);++r-1?i[a?e[s]:s]:void 0}}var Xv=Math.max;function Kv(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:Jb(r);return i<0&&(i=Xv(n+i,0)),kf(t,Vn(e),i)}var Zv=Yv(Kv);const Yl=Zv;function rd(t,e){var r=-1,n=Hn(t)?Array(t.length):[];return R0(t,function(i,a,s){n[++r]=e(i,a,s)}),n}function we(t,e){var r=xe(t)?Ji:rd;return r(t,Vn(e))}function Qv(t,e){return t==null?t:hl(t,jl(e),di)}function Jv(t,e){return t&&Gl(t,jl(e))}function tw(t,e){return t>e}var ew=Object.prototype,rw=ew.hasOwnProperty;function nw(t,e){return t!=null&&rw.call(t,e)}function Gt(t,e){return t!=null&&Qf(t,e,nw)}function iw(t,e){return Ji(e,function(r){return t[r]})}function kn(t){return t==null?[]:iw(t,fr(t))}var aw="[object Map]",sw="[object Set]",ow=Object.prototype,lw=ow.hasOwnProperty;function Za(t){if(t==null)return!0;if(Hn(t)&&(xe(t)||typeof t=="string"||typeof t.splice=="function"||Wi(t)||o0(t)||Vi(t)))return!t.length;var e=ra(t);if(e==aw||e==sw)return!t.size;if(a0(t))return!_f(t).length;for(var r in t)if(lw.call(t,r))return!1;return!0}function me(t){return t===void 0}function nd(t,e){return te||a&&s&&l&&!o&&!u||n&&s&&l||!r&&l||!i)return 1;if(!n&&!a&&!u&&t=o)return l;var u=r[n];return l*(u=="desc"?-1:1)}}return t.index-e.index}function pw(t,e,r){e.length?e=Ji(e,function(a){return xe(a)?function(s){return z0(s,a.length===1?a[0]:a)}:a}):e=[pi];var n=-1;e=Ji(e,s0(Vn));var i=rd(t,function(a,s,o){var l=Ji(e,function(u){return u(a)});return{criteria:l,index:++n,value:a}});return hw(i,function(a,s){return dw(a,s,r)})}function mw(t,e){return cw(t,e,function(r,n){return Jf(t,n)})}var gw=wx(function(t,e){return t==null?{}:mw(t,e)});const $0=gw;var yw=Math.ceil,bw=Math.max;function xw(t,e,r,n){for(var i=-1,a=bw(yw((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}function vw(t){return function(e,r,n){return n&&typeof n!="number"&&Ha(e,r,n)&&(r=n=void 0),e=D0(e),r===void 0?(r=e,e=0):r=D0(r),n=n===void 0?e1&&Ha(t,e[0],e[1])?e=[]:r>2&&Ha(e[0],e[1],e[2])&&(e=[e[0]]),pw(t,O0(e,1),[])});const ts=kw;var _w=1/0,Sw=ea&&1/Vl(new ea([,-0]))[1]==_w?function(t){return new ea(t)}:ex;const Tw=Sw;var Aw=200;function Bw(t,e,r){var n=-1,i=ax,a=t.length,s=!0,o=[],l=o;if(r)s=!1,i=Gv;else if(a>=Aw){var u=e?null:Tw(t);if(u)return Vl(u);s=!1,i=Wf,l=new Ka}else l=e?[]:o;t:for(;++n1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Gt(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]=xi,this._children[e]={},this._children[xi][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 Gt(this._nodes,e)}removeNode(e){var r=this;if(Gt(this._nodes,e)){var n=function(i){r.removeEdge(r._edgeObjs[i])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],H(this.children(e),function(i){r.setParent(i)}),delete this._children[e]),H(fr(this._in[e]),n),delete this._in[e],delete this._preds[e],H(fr(this._out[e]),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(me(r))r=xi;else{r+="";for(var n=r;!me(n);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!==xi)return r}}children(e){if(me(e)&&(e=xi),this._isCompound){var r=this._children[e];if(r)return fr(r)}else{if(e===xi)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return fr(r)}successors(e){var r=this._sucs[e];if(r)return fr(r)}neighbors(e){var r=this.predecessors(e);if(r)return Fw(r,this.successors(e))}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;H(this._nodes,function(s,o){e(o)&&r.setNode(o,s)}),H(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var o=n.parent(s);return o===void 0||r.hasNode(o)?(i[s]=o,o):o in i?i[o]:a(o)}return this._isCompound&&H(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return Na(e)||(e=Gi(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return kn(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return Ja(e,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var e,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(e=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,me(n)||(n=""+n);var o=es(this._isDirected,e,r,n);if(Gt(this._edgeLabels,o))return a&&(this._edgeLabels[o]=i),this;if(!me(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[o]=a?i:this._defaultEdgeLabelFn(e,r,n);var l=zw(this._isDirected,e,r,n);return e=l.v,r=l.w,Object.freeze(l),this._edgeObjs[o]=l,ad(this._preds[r],e),ad(this._sucs[e],r),this._in[r][o]=l,this._out[e][o]=l,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?Ql(this._isDirected,arguments[0]):es(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?Ql(this._isDirected,arguments[0]):es(this._isDirected,e,r,n);return Gt(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?Ql(this._isDirected,arguments[0]):es(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],sd(this._preds[r],e),sd(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=kn(n);return r?Cn(i,function(a){return a.v===r}):i}}outEdges(e,r){var n=this._out[e];if(n){var i=kn(n);return r?Cn(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}}Cr.prototype._nodeCount=0,Cr.prototype._edgeCount=0;function ad(t,e){t[e]?t[e]++:t[e]=1}function sd(t,e){--t[e]||delete t[e]}function es(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+id+a+id+(me(n)?Iw:n)}function zw(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}var o={v:i,w:a};return n&&(o.name=n),o}function Ql(t,e){return es(t,e.v,e.w,e.name)}class Ow{constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return od(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&od(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,n=r._prev;n!==r;)e.push(JSON.stringify(n,Nw)),n=n._prev;return"["+e.join(", ")+"]"}}function od(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function Nw(t,e){if(t!=="_next"&&t!=="_prev")return e}var Rw=Gi(1);function Pw(t,e){if(t.nodeCount()<=1)return[];var r=$w(t,e||Rw),n=qw(r.graph,r.buckets,r.zeroIdx);return ta(we(n,function(i){return t.outEdges(i.v,i.w)}))}function qw(t,e,r){for(var n=[],i=e[e.length-1],a=e[0],s;t.nodeCount();){for(;s=a.dequeue();)Jl(t,e,r,s);for(;s=i.dequeue();)Jl(t,e,r,s);if(t.nodeCount()){for(var o=e.length-2;o>0;--o)if(s=e[o].dequeue(),s){n=n.concat(Jl(t,e,r,s,!0));break}}}return n}function Jl(t,e,r,n,i){var a=i?[]:void 0;return H(t.inEdges(n.v),function(s){var o=t.edge(s),l=t.node(s.v);i&&a.push({v:s.v,w:s.w}),l.out-=o,tu(e,r,l)}),H(t.outEdges(n.v),function(s){var o=t.edge(s),l=s.w,u=t.node(l);u.in-=o,tu(e,r,u)}),t.removeNode(n.v),a}function $w(t,e){var r=new Cr,n=0,i=0;H(t.nodes(),function(o){r.setNode(o,{v:o,in:0,out:0})}),H(t.edges(),function(o){var l=r.edge(o.v,o.w)||0,u=e(o),c=l+u;r.setEdge(o.v,o.w,c),i=Math.max(i,r.node(o.v).out+=u),n=Math.max(n,r.node(o.w).in+=u)});var a=na(i+n+3).map(function(){return new Ow}),s=n+1;return H(r.nodes(),function(o){tu(a,s,r.node(o))}),{graph:r,buckets:a,zeroIdx:s}}function tu(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 Hw(t){var e=t.graph().acyclicer==="greedy"?Pw(t,r(t)):Vw(t);H(e,function(n){var i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,Zl("rev"))});function r(n){return function(i){return n.edge(i).weight}}}function Vw(t){var e=[],r={},n={};function i(a){Gt(n,a)||(n[a]=!0,r[a]=!0,H(t.outEdges(a),function(s){Gt(r,s.w)?e.push(s):i(s.w)}),delete r[a])}return H(t.nodes(),i),e}function Ww(t){H(t.edges(),function(e){var r=t.edge(e);if(r.reversed){t.removeEdge(e);var n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}function ia(t,e,r,n){var i;do i=Zl(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function Uw(t){var e=new Cr().setGraph(t.graph());return H(t.nodes(),function(r){e.setNode(r,t.node(r))}),H(t.edges(),function(r){var 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){var e=new Cr({multigraph:t.isMultigraph()}).setGraph(t.graph());return H(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),H(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function ud(t,e){var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,o=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var l,u;return Math.abs(a)*s>Math.abs(i)*o?(a<0&&(o=-o),l=o*i/a,u=o):(i<0&&(s=-s),l=s,u=s*a/i),{x:r+l,y:n+u}}function H0(t){var e=we(na(hd(t)+1),function(){return[]});return H(t.nodes(),function(r){var n=t.node(r),i=n.rank;me(i)||(e[i][n.order]=r)}),e}function Gw(t){var e=Qa(we(t.nodes(),function(r){return t.node(r).rank}));H(t.nodes(),function(r){var n=t.node(r);Gt(n,"rank")&&(n.rank-=e)})}function jw(t){var e=Qa(we(t.nodes(),function(a){return t.node(a).rank})),r=[];H(t.nodes(),function(a){var s=t.node(a).rank-e;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=t.graph().nodeRankFactor;H(r,function(a,s){me(a)&&s%i!==0?--n:n&&H(a,function(o){t.node(o).rank+=n})})}function cd(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),ia(t,"border",i,e)}function hd(t){return bi(we(t.nodes(),function(e){var r=t.node(e).rank;if(!me(r))return r}))}function Yw(t,e){var r={lhs:[],rhs:[]};return H(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function Xw(t,e){var r=td();try{return e()}finally{console.log(t+" time: "+(td()-r)+"ms")}}function Kw(t,e){return e()}function Zw(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&H(n,e),Gt(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;as.lim&&(o=s,l=!0);var u=Cn(e.edges(),function(c){return l===kd(t,t.node(c.v),o)&&l!==kd(t,t.node(c.w),o)});return Kl(u,function(c){return rs(e,c)})}function Cd(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),au(t),iu(t,e),fC(t,e)}function fC(t,e){var r=Yl(t.nodes(),function(i){return!e.node(i).parent}),n=cC(t,r);n=n.slice(1),H(n,function(i){var a=t.node(i).parent,s=e.edge(i,a),o=!1;s||(s=e.edge(a,i),o=!0),e.node(i).rank=e.node(a).rank+(o?s.minlen:-s.minlen)})}function dC(t,e,r){return t.hasEdge(e,r)}function kd(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}function pC(t){switch(t.graph().ranker){case"network-simplex":_d(t);break;case"tight-tree":gC(t);break;case"longest-path":mC(t);break;default:_d(t)}}var mC=nu;function gC(t){nu(t),md(t)}function _d(t){vi(t)}function yC(t){var e=ia(t,"root",{},"_root"),r=bC(t),n=bi(kn(r))-1,i=2*n+1;t.graph().nestingRoot=e,H(t.edges(),function(s){t.edge(s).minlen*=i});var a=xC(t)+1;H(t.children(),function(s){Sd(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function Sd(t,e,r,n,i,a,s){var o=t.children(s);if(!o.length){s!==e&&t.setEdge(e,s,{weight:0,minlen:r});return}var l=cd(t,"_bt"),u=cd(t,"_bb"),c=t.node(s);t.setParent(l,s),c.borderTop=l,t.setParent(u,s),c.borderBottom=u,H(o,function(h){Sd(t,e,r,n,i,a,h);var f=t.node(h),p=f.borderTop?f.borderTop:h,y=f.borderBottom?f.borderBottom:h,b=f.borderTop?n:2*n,A=p!==y?1:i-a[s]+1;t.setEdge(l,p,{weight:b,minlen:A,nestingEdge:!0}),t.setEdge(y,u,{weight:b,minlen:A,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,l,{weight:0,minlen:i+a[s]})}function bC(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&H(a,function(s){r(s,i+1)}),e[n]=i}return H(t.children(),function(n){r(n,1)}),e}function xC(t){return Ja(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function vC(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,H(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}function wC(t,e,r){var n={},i;H(r,function(a){for(var s=t.parent(a),o,l;s;){if(o=t.parent(s),o?(l=n[o],n[o]=s):(l=i,i=s),l&&l!==s){e.setEdge(l,s);return}s=o}})}function CC(t,e,r){var n=kC(t),i=new Cr({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return H(t.nodes(),function(a){var s=t.node(a),o=t.parent(a);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(i.setNode(a),i.setParent(a,o||n),H(t[r](a),function(l){var u=l.v===a?l.w:l.v,c=i.edge(u,a),h=me(c)?0:c.weight;i.setEdge(u,a,{weight:t.edge(l).weight+h})}),Gt(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),i}function kC(t){for(var e;t.hasNode(e=Zl("_root")););return e}function _C(t,e){for(var r=0,n=1;n0;)c%2&&(h+=o[c+1]),c=c-1>>1,o[c]+=u.weight;l+=u.weight*h})),l}function TC(t){var e={},r=Cn(t.nodes(),function(o){return!t.children(o).length}),n=bi(we(r,function(o){return t.node(o).rank})),i=we(na(n+1),function(){return[]});function a(o){if(!Gt(e,o)){e[o]=!0;var l=t.node(o);i[l.rank].push(o),H(t.successors(o),a)}}var s=ts(r,function(o){return t.node(o).rank});return H(s,a),i}function AC(t,e){return we(e,function(r){var n=t.inEdges(r);if(n.length){var i=Ja(n,function(a,s){var o=t.edge(s),l=t.node(s.v);return{sum:a.sum+o.weight*l.order,weight:a.weight+o.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}function BC(t,e){var r={};H(t,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};me(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),H(e.edges(),function(i){var a=r[i.v],s=r[i.w];!me(a)&&!me(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Cn(r,function(i){return!i.indegree});return EC(n)}function EC(t){var e=[];function r(a){return function(s){s.merged||(me(s.barycenter)||me(a.barycenter)||s.barycenter>=a.barycenter)&&FC(a,s)}}function n(a){return function(s){s.in.push(a),--s.indegree===0&&t.push(s)}}for(;t.length;){var i=t.pop();e.push(i),H(i.in.reverse(),r(i)),H(i.out,n(i))}return we(Cn(e,function(a){return!a.merged}),function(a){return $0(a,["vs","i","barycenter","weight"])})}function FC(t,e){var 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}function LC(t,e){var r=Yw(t,function(c){return Gt(c,"barycenter")}),n=r.lhs,i=ts(r.rhs,function(c){return-c.i}),a=[],s=0,o=0,l=0;n.sort(MC(!!e)),l=Td(a,i,l),H(n,function(c){l+=c.vs.length,a.push(c.vs),s+=c.barycenter*c.weight,o+=c.weight,l=Td(a,i,l)});var u={vs:ta(a)};return o&&(u.barycenter=s/o,u.weight=o),u}function Td(t,e,r){for(var n;e.length&&(n=P0(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function MC(t){return function(e,r){return e.barycenterr.barycenter?1:t?r.i-e.i:e.i-r.i}}function Ad(t,e,r,n){var i=t.children(e),a=t.node(e),s=a?a.borderLeft:void 0,o=a?a.borderRight:void 0,l={};s&&(i=Cn(i,function(y){return y!==s&&y!==o}));var u=AC(t,i);H(u,function(y){if(t.children(y.v).length){var b=Ad(t,y.v,r,n);l[y.v]=b,Gt(b,"barycenter")&&IC(y,b)}});var c=BC(u,r);DC(c,l);var h=LC(c,n);if(s&&(h.vs=ta([s,h.vs,o]),t.predecessors(s).length)){var f=t.node(t.predecessors(s)[0]),p=t.node(t.predecessors(o)[0]);Gt(h,"barycenter")||(h.barycenter=0,h.weight=0),h.barycenter=(h.barycenter*h.weight+f.order+p.order)/(h.weight+2),h.weight+=2}return h}function DC(t,e){H(t,function(r){r.vs=ta(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function IC(t,e){me(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}function zC(t){var e=hd(t),r=Bd(t,na(1,e+1),"inEdges"),n=Bd(t,na(e-1,-1,-1),"outEdges"),i=TC(t);Ed(t,i);for(var a=Number.POSITIVE_INFINITY,s,o=0,l=0;l<4;++o,++l){OC(o%2?r:n,o%4>=2),i=H0(t);var u=_C(t,i);us||o>e[l].lim));for(u=l,l=n;(l=t.parent(l))!==u;)a.push(l);return{path:i.concat(a.reverse()),lca:u}}function PC(t){var e={},r=0;function n(i){var a=r;H(t.children(i),n),e[i]={low:a,lim:r++}}return H(t.children(),n),e}function qC(t,e){var r={};function n(i,a){var s=0,o=0,l=i.length,u=P0(a);return H(a,function(c,h){var f=HC(t,c),p=f?t.node(f).order:l;(f||c===u)&&(H(a.slice(o,h+1),function(y){H(t.predecessors(y),function(b){var A=t.node(b),_=A.order;(_u)&&Fd(r,f,c)})})}function i(a,s){var o=-1,l,u=0;return H(s,function(c,h){if(t.node(c).dummy==="border"){var f=t.predecessors(c);f.length&&(l=t.node(f[0]).order,n(s,u,h,o,l),u=h,o=l)}n(s,u,s.length,l,a.length)}),s}return Ja(e,i),r}function HC(t,e){if(t.node(e).dummy)return Yl(t.predecessors(e),function(r){return t.node(r).dummy})}function Fd(t,e,r){if(e>r){var n=e;e=r,r=n}var i=t[e];i||(t[e]=i={}),i[r]=!0}function VC(t,e,r){if(e>r){var n=e;e=r,r=n}return Gt(t[e],r)}function WC(t,e,r,n){var i={},a={},s={};return H(e,function(o){H(o,function(l,u){i[l]=l,a[l]=l,s[l]=u})}),H(e,function(o){var l=-1;H(o,function(u){var c=n(u);if(c.length){c=ts(c,function(b){return s[b]});for(var h=(c.length-1)/2,f=Math.floor(h),p=Math.ceil(h);f<=p;++f){var y=c[f];a[u]===u&&l{e.forEach(i=>{Bk[i](t,r,n)})},Bk={extension:(t,e,r)=>{E.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},point:(t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},Ek=Ak;function Fk(t,e){e&&t.attr("style",e)}function Lk(t){const e=Dt(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=t.label,i=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+n+""),Fk(r,t.labelStyle),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}const Qe=(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),De(Et().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"
"),E.debug("vertexText"+i);const a={isNode:n,label:Va(i).replace(/fa[blrs]?:fa-[\w-]+/g,o=>``),labelStyle:e.replace("fill:","color:")};return Lk(a)}else{const a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|/gi):Array.isArray(i)?s=i:s=[];for(const o of s){const l=document.createElementNS("http://www.w3.org/2000/svg","tspan");l.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),l.setAttribute("dy","1em"),l.setAttribute("x","0"),r?l.setAttribute("class","title-row"):l.setAttribute("class","row"),l.textContent=o.trim(),a.appendChild(l)}return a}},Mk={};function Dk(t,e){const r=e||Mk,n=typeof r.includeImageAlt=="boolean"?r.includeImageAlt:!0,i=typeof r.includeHtml=="boolean"?r.includeHtml:!0;return Ld(t,n,i)}function Ld(t,e,r){if(Ik(t)){if("value"in t)return t.type==="html"&&!r?"":t.value;if(e&&"alt"in t&&t.alt)return t.alt;if("children"in t)return Md(t.children,e,r)}return Array.isArray(t)?Md(t,e,r):""}function Md(t,e,r){const n=[];let i=-1;for(;++ii?0:i+e:e=e>i?i:e,r=r>0?r:0,n.length<1e4)s=Array.from(n),s.unshift(e,r),t.splice(...s);else for(r&&t.splice(e,r);a0?(en(t,t.length,0,e),t):e}const Dd={}.hasOwnProperty;function zk(t){const e={};let r=-1;for(;++rs))return;const q=e.events.length;let G=q,Y,J;for(;G--;)if(e.events[G][0]==="exit"&&e.events[G][1].type==="chunkFlow"){if(Y){J=e.events[G][1].end;break}Y=!0}for(_(n),L=q;LI;){const N=r[V];e.containerState=N[1],N[0].exit.call(e,t)}r.length=I}function M(){i.write([null]),a=void 0,i=void 0,e.containerState._closeFlow=void 0}}function Yk(t,e,r){return ee(t,t.attempt(this.parser.constructs.document,e,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function zd(t){if(t===null||Je(t)||Vk(t))return 1;if(Hk(t))return 2}function cu(t,e,r){const n=[];let i=-1;for(;++i1&&t[r][1].end.offset-t[r][1].start.offset>1?2:1;const h=Object.assign({},t[n][1].end),f=Object.assign({},t[r][1].start);Od(h,-l),Od(f,l),s={type:l>1?"strongSequence":"emphasisSequence",start:h,end:Object.assign({},t[n][1].end)},o={type:l>1?"strongSequence":"emphasisSequence",start:Object.assign({},t[r][1].start),end:f},a={type:l>1?"strongText":"emphasisText",start:Object.assign({},t[n][1].end),end:Object.assign({},t[r][1].start)},i={type:l>1?"strong":"emphasis",start:Object.assign({},s.start),end:Object.assign({},o.end)},t[n][1].end=Object.assign({},s.start),t[r][1].start=Object.assign({},o.end),u=[],t[n][1].end.offset-t[n][1].start.offset&&(u=kr(u,[["enter",t[n][1],e],["exit",t[n][1],e]])),u=kr(u,[["enter",i,e],["enter",s,e],["exit",s,e],["enter",a,e]]),u=kr(u,cu(e.parser.constructs.insideSpan.null,t.slice(n+1,r),e)),u=kr(u,[["exit",a,e],["enter",o,e],["exit",o,e],["exit",i,e]]),t[r][1].end.offset-t[r][1].start.offset?(c=2,u=kr(u,[["enter",t[r][1],e],["exit",t[r][1],e]])):c=0,en(t,n-1,r-n+3,u),r=n+u.length-c-2;break}}for(r=-1;++r0&&Vt(L)?ee(t,M,"linePrefix",a+1)(L):M(L)}function M(L){return L===null||_t(L)?t.check($d,b,V)(L):(t.enter("codeFlowValue"),I(L))}function I(L){return L===null||_t(L)?(t.exit("codeFlowValue"),M(L)):(t.consume(L),I)}function V(L){return t.exit("codeFenced"),e(L)}function N(L,q,G){let Y=0;return J;function J($){return L.enter("lineEnding"),L.consume($),L.exit("lineEnding"),O}function O($){return L.enter("codeFencedFence"),Vt($)?ee(L,P,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)($):P($)}function P($){return $===o?(L.enter("codeFencedFenceSequence"),ft($)):G($)}function ft($){return $===o?(Y++,L.consume($),ft):Y>=s?(L.exit("codeFencedFenceSequence"),Vt($)?ee(L,X,"whitespace")($):X($)):G($)}function X($){return $===null||_t($)?(L.exit("codeFencedFence"),q($)):G($)}}}function s_(t,e,r){const n=this;return i;function i(s){return s===null?r(s):(t.enter("lineEnding"),t.consume(s),t.exit("lineEnding"),a)}function a(s){return n.parser.lazy[n.now().line]?r(s):e(s)}}const du={name:"codeIndented",tokenize:l_},o_={tokenize:u_,partial:!0};function l_(t,e,r){const n=this;return i;function i(u){return t.enter("codeIndented"),ee(t,a,"linePrefix",4+1)(u)}function a(u){const c=n.events[n.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?s(u):r(u)}function s(u){return u===null?l(u):_t(u)?t.attempt(o_,s,l)(u):(t.enter("codeFlowValue"),o(u))}function o(u){return u===null||_t(u)?(t.exit("codeFlowValue"),s(u)):(t.consume(u),o)}function l(u){return t.exit("codeIndented"),e(u)}}function u_(t,e,r){const n=this;return i;function i(s){return n.parser.lazy[n.now().line]?r(s):_t(s)?(t.enter("lineEnding"),t.consume(s),t.exit("lineEnding"),i):ee(t,a,"linePrefix",4+1)(s)}function a(s){const o=n.events[n.events.length-1];return o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?e(s):_t(s)?i(s):r(s)}}const c_={name:"codeText",tokenize:d_,resolve:h_,previous:f_};function h_(t){let e=t.length-4,r=3,n,i;if((t[r][1].type==="lineEnding"||t[r][1].type==="space")&&(t[e][1].type==="lineEnding"||t[e][1].type==="space")){for(n=r;++n=4?e(s):t.interrupt(n.parser.constructs.flow,r,e)(s)}}function Wd(t,e,r,n,i,a,s,o,l){const u=l||Number.POSITIVE_INFINITY;let c=0;return h;function h(_){return _===60?(t.enter(n),t.enter(i),t.enter(a),t.consume(_),t.exit(a),f):_===null||_===32||_===41||lu(_)?r(_):(t.enter(n),t.enter(s),t.enter(o),t.enter("chunkString",{contentType:"string"}),b(_))}function f(_){return _===62?(t.enter(a),t.consume(_),t.exit(a),t.exit(i),t.exit(n),e):(t.enter(o),t.enter("chunkString",{contentType:"string"}),p(_))}function p(_){return _===62?(t.exit("chunkString"),t.exit(o),f(_)):_===null||_===60||_t(_)?r(_):(t.consume(_),_===92?y:p)}function y(_){return _===60||_===62||_===92?(t.consume(_),p):p(_)}function b(_){return!c&&(_===null||_===41||Je(_))?(t.exit("chunkString"),t.exit(o),t.exit(s),t.exit(n),e(_)):c999||p===null||p===91||p===93&&!l||p===94&&!o&&"_hiddenFootnoteSupport"in s.parser.constructs?r(p):p===93?(t.exit(a),t.enter(i),t.consume(p),t.exit(i),t.exit(n),e):_t(p)?(t.enter("lineEnding"),t.consume(p),t.exit("lineEnding"),c):(t.enter("chunkString",{contentType:"string"}),h(p))}function h(p){return p===null||p===91||p===93||_t(p)||o++>999?(t.exit("chunkString"),c(p)):(t.consume(p),l||(l=!Vt(p)),p===92?f:h)}function f(p){return p===91||p===92||p===93?(t.consume(p),o++,h):h(p)}}function Gd(t,e,r,n,i,a){let s;return o;function o(f){return f===34||f===39||f===40?(t.enter(n),t.enter(i),t.consume(f),t.exit(i),s=f===40?41:f,l):r(f)}function l(f){return f===s?(t.enter(i),t.consume(f),t.exit(i),t.exit(n),e):(t.enter(a),u(f))}function u(f){return f===s?(t.exit(a),l(s)):f===null?r(f):_t(f)?(t.enter("lineEnding"),t.consume(f),t.exit("lineEnding"),ee(t,u,"linePrefix")):(t.enter("chunkString",{contentType:"string"}),c(f))}function c(f){return f===s||f===null||_t(f)?(t.exit("chunkString"),u(f)):(t.consume(f),f===92?h:c)}function h(f){return f===s||f===92?(t.consume(f),c):c(f)}}function ns(t,e){let r;return n;function n(i){return _t(i)?(t.enter("lineEnding"),t.consume(i),t.exit("lineEnding"),r=!0,n):Vt(i)?ee(t,n,r?"linePrefix":"lineSuffix")(i):e(i)}}function aa(t){return t.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const v_={name:"definition",tokenize:C_},w_={tokenize:k_,partial:!0};function C_(t,e,r){const n=this;let i;return a;function a(p){return t.enter("definition"),s(p)}function s(p){return Ud.call(n,t,o,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(p)}function o(p){return i=aa(n.sliceSerialize(n.events[n.events.length-1][1]).slice(1,-1)),p===58?(t.enter("definitionMarker"),t.consume(p),t.exit("definitionMarker"),l):r(p)}function l(p){return Je(p)?ns(t,u)(p):u(p)}function u(p){return Wd(t,c,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(p)}function c(p){return t.attempt(w_,h,h)(p)}function h(p){return Vt(p)?ee(t,f,"whitespace")(p):f(p)}function f(p){return p===null||_t(p)?(t.exit("definition"),n.parser.defined.push(i),e(p)):r(p)}}function k_(t,e,r){return n;function n(o){return Je(o)?ns(t,i)(o):r(o)}function i(o){return Gd(t,a,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(o)}function a(o){return Vt(o)?ee(t,s,"whitespace")(o):s(o)}function s(o){return o===null||_t(o)?e(o):r(o)}}const __={name:"hardBreakEscape",tokenize:S_};function S_(t,e,r){return n;function n(a){return t.enter("hardBreakEscape"),t.consume(a),i}function i(a){return _t(a)?(t.exit("hardBreakEscape"),e(a)):r(a)}}const T_={name:"headingAtx",tokenize:B_,resolve:A_};function A_(t,e){let r=t.length-2,n=3,i,a;return t[n][1].type==="whitespace"&&(n+=2),r-2>n&&t[r][1].type==="whitespace"&&(r-=2),t[r][1].type==="atxHeadingSequence"&&(n===r-1||r-4>n&&t[r-2][1].type==="whitespace")&&(r-=n+1===r?2:4),r>n&&(i={type:"atxHeadingText",start:t[n][1].start,end:t[r][1].end},a={type:"chunkText",start:t[n][1].start,end:t[r][1].end,contentType:"text"},en(t,n,r-n+1,[["enter",i,e],["enter",a,e],["exit",a,e],["exit",i,e]])),t}function B_(t,e,r){let n=0;return i;function i(c){return t.enter("atxHeading"),a(c)}function a(c){return t.enter("atxHeadingSequence"),s(c)}function s(c){return c===35&&n++<6?(t.consume(c),s):c===null||Je(c)?(t.exit("atxHeadingSequence"),o(c)):r(c)}function o(c){return c===35?(t.enter("atxHeadingSequence"),l(c)):c===null||_t(c)?(t.exit("atxHeading"),e(c)):Vt(c)?ee(t,o,"whitespace")(c):(t.enter("atxHeadingText"),u(c))}function l(c){return c===35?(t.consume(c),l):(t.exit("atxHeadingSequence"),o(c))}function u(c){return c===null||c===35||Je(c)?(t.exit("atxHeadingText"),o(c)):(t.consume(c),u)}}const E_=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],jd=["pre","script","style","textarea"],F_={name:"htmlFlow",tokenize:I_,resolveTo:D_,concrete:!0},L_={tokenize:O_,partial:!0},M_={tokenize:z_,partial:!0};function D_(t){let e=t.length;for(;e--&&!(t[e][0]==="enter"&&t[e][1].type==="htmlFlow"););return e>1&&t[e-2][1].type==="linePrefix"&&(t[e][1].start=t[e-2][1].start,t[e+1][1].start=t[e-2][1].start,t.splice(e-2,2)),t}function I_(t,e,r){const n=this;let i,a,s,o,l;return u;function u(w){return c(w)}function c(w){return t.enter("htmlFlow"),t.enter("htmlFlowData"),t.consume(w),h}function h(w){return w===33?(t.consume(w),f):w===47?(t.consume(w),a=!0,b):w===63?(t.consume(w),i=3,n.interrupt?e:v):rn(w)?(t.consume(w),s=String.fromCharCode(w),A):r(w)}function f(w){return w===45?(t.consume(w),i=2,p):w===91?(t.consume(w),i=5,o=0,y):rn(w)?(t.consume(w),i=4,n.interrupt?e:v):r(w)}function p(w){return w===45?(t.consume(w),n.interrupt?e:v):r(w)}function y(w){const St="CDATA[";return w===St.charCodeAt(o++)?(t.consume(w),o===St.length?n.interrupt?e:P:y):r(w)}function b(w){return rn(w)?(t.consume(w),s=String.fromCharCode(w),A):r(w)}function A(w){if(w===null||w===47||w===62||Je(w)){const St=w===47,zt=s.toLowerCase();return!St&&!a&&jd.includes(zt)?(i=1,n.interrupt?e(w):P(w)):E_.includes(s.toLowerCase())?(i=6,St?(t.consume(w),_):n.interrupt?e(w):P(w)):(i=7,n.interrupt&&!n.parser.lazy[n.now().line]?r(w):a?M(w):I(w))}return w===45||Vr(w)?(t.consume(w),s+=String.fromCharCode(w),A):r(w)}function _(w){return w===62?(t.consume(w),n.interrupt?e:P):r(w)}function M(w){return Vt(w)?(t.consume(w),M):J(w)}function I(w){return w===47?(t.consume(w),J):w===58||w===95||rn(w)?(t.consume(w),V):Vt(w)?(t.consume(w),I):J(w)}function V(w){return w===45||w===46||w===58||w===95||Vr(w)?(t.consume(w),V):N(w)}function N(w){return w===61?(t.consume(w),L):Vt(w)?(t.consume(w),N):I(w)}function L(w){return w===null||w===60||w===61||w===62||w===96?r(w):w===34||w===39?(t.consume(w),l=w,q):Vt(w)?(t.consume(w),L):G(w)}function q(w){return w===l?(t.consume(w),l=null,Y):w===null||_t(w)?r(w):(t.consume(w),q)}function G(w){return w===null||w===34||w===39||w===47||w===60||w===61||w===62||w===96||Je(w)?N(w):(t.consume(w),G)}function Y(w){return w===47||w===62||Vt(w)?I(w):r(w)}function J(w){return w===62?(t.consume(w),O):r(w)}function O(w){return w===null||_t(w)?P(w):Vt(w)?(t.consume(w),O):r(w)}function P(w){return w===45&&i===2?(t.consume(w),U):w===60&&i===1?(t.consume(w),et):w===62&&i===4?(t.consume(w),st):w===63&&i===3?(t.consume(w),v):w===93&&i===5?(t.consume(w),W):_t(w)&&(i===6||i===7)?(t.exit("htmlFlowData"),t.check(L_,dt,ft)(w)):w===null||_t(w)?(t.exit("htmlFlowData"),ft(w)):(t.consume(w),P)}function ft(w){return t.check(M_,X,dt)(w)}function X(w){return t.enter("lineEnding"),t.consume(w),t.exit("lineEnding"),$}function $(w){return w===null||_t(w)?ft(w):(t.enter("htmlFlowData"),P(w))}function U(w){return w===45?(t.consume(w),v):P(w)}function et(w){return w===47?(t.consume(w),s="",K):P(w)}function K(w){if(w===62){const St=s.toLowerCase();return jd.includes(St)?(t.consume(w),st):P(w)}return rn(w)&&s.length<8?(t.consume(w),s+=String.fromCharCode(w),K):P(w)}function W(w){return w===93?(t.consume(w),v):P(w)}function v(w){return w===62?(t.consume(w),st):w===45&&i===2?(t.consume(w),v):P(w)}function st(w){return w===null||_t(w)?(t.exit("htmlFlowData"),dt(w)):(t.consume(w),st)}function dt(w){return t.exit("htmlFlow"),e(w)}}function z_(t,e,r){const n=this;return i;function i(s){return _t(s)?(t.enter("lineEnding"),t.consume(s),t.exit("lineEnding"),a):r(s)}function a(s){return n.parser.lazy[n.now().line]?r(s):e(s)}}function O_(t,e,r){return n;function n(i){return t.enter("lineEnding"),t.consume(i),t.exit("lineEnding"),t.attempt(V0,e,r)}}const N_={name:"htmlText",tokenize:R_};function R_(t,e,r){const n=this;let i,a,s;return o;function o(v){return t.enter("htmlText"),t.enter("htmlTextData"),t.consume(v),l}function l(v){return v===33?(t.consume(v),u):v===47?(t.consume(v),N):v===63?(t.consume(v),I):rn(v)?(t.consume(v),G):r(v)}function u(v){return v===45?(t.consume(v),c):v===91?(t.consume(v),a=0,y):rn(v)?(t.consume(v),M):r(v)}function c(v){return v===45?(t.consume(v),p):r(v)}function h(v){return v===null?r(v):v===45?(t.consume(v),f):_t(v)?(s=h,et(v)):(t.consume(v),h)}function f(v){return v===45?(t.consume(v),p):h(v)}function p(v){return v===62?U(v):v===45?f(v):h(v)}function y(v){const st="CDATA[";return v===st.charCodeAt(a++)?(t.consume(v),a===st.length?b:y):r(v)}function b(v){return v===null?r(v):v===93?(t.consume(v),A):_t(v)?(s=b,et(v)):(t.consume(v),b)}function A(v){return v===93?(t.consume(v),_):b(v)}function _(v){return v===62?U(v):v===93?(t.consume(v),_):b(v)}function M(v){return v===null||v===62?U(v):_t(v)?(s=M,et(v)):(t.consume(v),M)}function I(v){return v===null?r(v):v===63?(t.consume(v),V):_t(v)?(s=I,et(v)):(t.consume(v),I)}function V(v){return v===62?U(v):I(v)}function N(v){return rn(v)?(t.consume(v),L):r(v)}function L(v){return v===45||Vr(v)?(t.consume(v),L):q(v)}function q(v){return _t(v)?(s=q,et(v)):Vt(v)?(t.consume(v),q):U(v)}function G(v){return v===45||Vr(v)?(t.consume(v),G):v===47||v===62||Je(v)?Y(v):r(v)}function Y(v){return v===47?(t.consume(v),U):v===58||v===95||rn(v)?(t.consume(v),J):_t(v)?(s=Y,et(v)):Vt(v)?(t.consume(v),Y):U(v)}function J(v){return v===45||v===46||v===58||v===95||Vr(v)?(t.consume(v),J):O(v)}function O(v){return v===61?(t.consume(v),P):_t(v)?(s=O,et(v)):Vt(v)?(t.consume(v),O):Y(v)}function P(v){return v===null||v===60||v===61||v===62||v===96?r(v):v===34||v===39?(t.consume(v),i=v,ft):_t(v)?(s=P,et(v)):Vt(v)?(t.consume(v),P):(t.consume(v),X)}function ft(v){return v===i?(t.consume(v),i=void 0,$):v===null?r(v):_t(v)?(s=ft,et(v)):(t.consume(v),ft)}function X(v){return v===null||v===34||v===39||v===60||v===61||v===96?r(v):v===47||v===62||Je(v)?Y(v):(t.consume(v),X)}function $(v){return v===47||v===62||Je(v)?Y(v):r(v)}function U(v){return v===62?(t.consume(v),t.exit("htmlTextData"),t.exit("htmlText"),e):r(v)}function et(v){return t.exit("htmlTextData"),t.enter("lineEnding"),t.consume(v),t.exit("lineEnding"),K}function K(v){return Vt(v)?ee(t,W,"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(v):W(v)}function W(v){return t.enter("htmlTextData"),s(v)}}const pu={name:"labelEnd",tokenize:W_,resolveTo:V_,resolveAll:H_},P_={tokenize:U_},q_={tokenize:G_},$_={tokenize:j_};function H_(t){let e=-1;for(;++e=3&&(u===null||_t(u))?(t.exit("thematicBreak"),e(u)):r(u)}function l(u){return u===i?(t.consume(u),n++,l):(t.exit("thematicBreakSequence"),Vt(u)?ee(t,o,"whitespace")(u):o(u))}}const tr={name:"list",tokenize:rS,continuation:{tokenize:nS},exit:aS},tS={tokenize:sS,partial:!0},eS={tokenize:iS,partial:!0};function rS(t,e,r){const n=this,i=n.events[n.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,s=0;return o;function o(p){const y=n.containerState.type||(p===42||p===43||p===45?"listUnordered":"listOrdered");if(y==="listUnordered"?!n.containerState.marker||p===n.containerState.marker:uu(p)){if(n.containerState.type||(n.containerState.type=y,t.enter(y,{_container:!0})),y==="listUnordered")return t.enter("listItemPrefix"),p===42||p===45?t.check(W0,r,u)(p):u(p);if(!n.interrupt||p===49)return t.enter("listItemPrefix"),t.enter("listItemValue"),l(p)}return r(p)}function l(p){return uu(p)&&++s<10?(t.consume(p),l):(!n.interrupt||s<2)&&(n.containerState.marker?p===n.containerState.marker:p===41||p===46)?(t.exit("listItemValue"),u(p)):r(p)}function u(p){return t.enter("listItemMarker"),t.consume(p),t.exit("listItemMarker"),n.containerState.marker=n.containerState.marker||p,t.check(V0,n.interrupt?r:c,t.attempt(tS,f,h))}function c(p){return n.containerState.initialBlankLine=!0,a++,f(p)}function h(p){return Vt(p)?(t.enter("listItemPrefixWhitespace"),t.consume(p),t.exit("listItemPrefixWhitespace"),f):r(p)}function f(p){return n.containerState.size=a+n.sliceSerialize(t.exit("listItemPrefix"),!0).length,e(p)}}function nS(t,e,r){const n=this;return n.containerState._closeFlow=void 0,t.check(V0,i,a);function i(o){return n.containerState.furtherBlankLines=n.containerState.furtherBlankLines||n.containerState.initialBlankLine,ee(t,e,"listItemIndent",n.containerState.size+1)(o)}function a(o){return n.containerState.furtherBlankLines||!Vt(o)?(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,s(o)):(n.containerState.furtherBlankLines=void 0,n.containerState.initialBlankLine=void 0,t.attempt(eS,e,s)(o))}function s(o){return n.containerState._closeFlow=!0,n.interrupt=void 0,ee(t,t.attempt(tr,e,r),"linePrefix",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}function iS(t,e,r){const n=this;return ee(t,i,"listItemIndent",n.containerState.size+1);function i(a){const s=n.events[n.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===n.containerState.size?e(a):r(a)}}function aS(t){t.exit(this.containerState.type)}function sS(t,e,r){const n=this;return ee(t,i,"listItemPrefixWhitespace",n.parser.constructs.disable.null.includes("codeIndented")?void 0:4+1);function i(a){const s=n.events[n.events.length-1];return!Vt(a)&&s&&s[1].type==="listItemPrefixWhitespace"?e(a):r(a)}}const Yd={name:"setextUnderline",tokenize:lS,resolveTo:oS};function oS(t,e){let r=t.length,n,i,a;for(;r--;)if(t[r][0]==="enter"){if(t[r][1].type==="content"){n=r;break}t[r][1].type==="paragraph"&&(i=r)}else t[r][1].type==="content"&&t.splice(r,1),!a&&t[r][1].type==="definition"&&(a=r);const s={type:"setextHeading",start:Object.assign({},t[i][1].start),end:Object.assign({},t[t.length-1][1].end)};return t[i][1].type="setextHeadingText",a?(t.splice(i,0,["enter",s,e]),t.splice(a+1,0,["exit",t[n][1],e]),t[n][1].end=Object.assign({},t[a][1].end)):t[n][1]=s,t.push(["exit",s,e]),t}function lS(t,e,r){const n=this;let i;return a;function a(u){let c=n.events.length,h;for(;c--;)if(n.events[c][1].type!=="lineEnding"&&n.events[c][1].type!=="linePrefix"&&n.events[c][1].type!=="content"){h=n.events[c][1].type==="paragraph";break}return!n.parser.lazy[n.now().line]&&(n.interrupt||h)?(t.enter("setextHeadingLine"),i=u,s(u)):r(u)}function s(u){return t.enter("setextHeadingLineSequence"),o(u)}function o(u){return u===i?(t.consume(u),o):(t.exit("setextHeadingLineSequence"),Vt(u)?ee(t,l,"lineSuffix")(u):l(u))}function l(u){return u===null||_t(u)?(t.exit("setextHeadingLine"),e(u)):r(u)}}const uS={tokenize:cS};function cS(t){const e=this,r=t.attempt(V0,n,t.attempt(this.parser.constructs.flowInitial,i,ee(t,t.attempt(this.parser.constructs.flow,i,t.attempt(m_,i)),"linePrefix")));return r;function n(a){if(a===null){t.consume(a);return}return t.enter("lineEndingBlank"),t.consume(a),t.exit("lineEndingBlank"),e.currentConstruct=void 0,r}function i(a){if(a===null){t.consume(a);return}return t.enter("lineEnding"),t.consume(a),t.exit("lineEnding"),e.currentConstruct=void 0,r}}const hS={resolveAll:Kd()},fS=Xd("string"),dS=Xd("text");function Xd(t){return{tokenize:e,resolveAll:Kd(t==="text"?pS:void 0)};function e(r){const n=this,i=this.parser.constructs[t],a=r.attempt(i,s,o);return s;function s(c){return u(c)?a(c):o(c)}function o(c){if(c===null){r.consume(c);return}return r.enter("data"),r.consume(c),l}function l(c){return u(c)?(r.exit("data"),a(c)):(r.consume(c),l)}function u(c){if(c===null)return!0;const h=i[c];let f=-1;if(h)for(;++f-1){const o=s[0];typeof o=="string"?s[0]=o.slice(n):s.shift()}a>0&&s.push(t[i].slice(0,a))}return s}function yS(t,e){let r=-1;const n=[];let i;for(;++r13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCharCode(r)}const CS=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function kS(t){return t.replace(CS,_S)}function _S(t,e,r){if(e)return e;if(r.charCodeAt(0)===35){const i=r.charCodeAt(1),a=i===120||i===88;return Qd(r.slice(a?2:1),a?16:10)}return fu(r)||t}function U0(t){return!t||typeof t!="object"?"":"position"in t||"type"in t?Jd(t.position):"start"in t||"end"in t?Jd(t):"line"in t||"column"in t?gu(t):""}function gu(t){return t2(t&&t.line)+":"+t2(t&&t.column)}function Jd(t){return gu(t&&t.start)+"-"+gu(t&&t.end)}function t2(t){return t&&typeof t=="number"?t:1}const e2={}.hasOwnProperty,r2=function(t,e,r){return typeof e!="string"&&(r=e,e=void 0),SS(r)(wS(xS(r).document().write(vS()(t,e,!0))))};function SS(t){const e={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:o(In),autolinkProtocol:O,autolinkEmail:O,atxHeading:o(Kt),blockQuote:o(Yt),characterEscape:O,characterReference:O,codeFenced:o(ye),codeFencedFenceInfo:l,codeFencedFenceMeta:l,codeIndented:o(ye,l),codeText:o(Te,l),codeTextData:O,data:O,codeFlowValue:O,definition:o(Ae),definitionDestinationString:l,definitionLabelString:l,definitionTitleString:l,emphasis:o(ir),hardBreakEscape:o(fe),hardBreakTrailing:o(fe),htmlFlow:o(yr,l),htmlFlowData:O,htmlText:o(yr,l),htmlTextData:O,image:o(ar),label:l,link:o(In),listItem:o(jr),listItemValue:y,listOrdered:o(Gr,p),listUnordered:o(Gr),paragraph:o(Yr),reference:zt,referenceString:l,resourceDestinationString:l,resourceTitleString:l,setextHeading:o(Kt),strong:o(Ti),thematicBreak:o(Bi)},exit:{atxHeading:c(),atxHeadingSequence:q,autolink:c(),autolinkEmail:Ft,autolinkProtocol:jt,blockQuote:c(),characterEscapeValue:P,characterReferenceMarkerHexadecimal:Ht,characterReferenceMarkerNumeric:Ht,characterReferenceValue:Wt,codeFenced:c(M),codeFencedFence:_,codeFencedFenceInfo:b,codeFencedFenceMeta:A,codeFlowValue:P,codeIndented:c(I),codeText:c(et),codeTextData:P,data:P,definition:c(),definitionDestinationString:L,definitionLabelString:V,definitionTitleString:N,emphasis:c(),hardBreakEscape:c(X),hardBreakTrailing:c(X),htmlFlow:c($),htmlFlowData:P,htmlText:c(U),htmlTextData:P,image:c(W),label:st,labelText:v,lineEnding:ft,link:c(K),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:Ot,resourceDestinationString:dt,resourceTitleString:w,resource:St,setextHeading:c(J),setextHeadingLineSequence:Y,setextHeadingText:G,strong:c(),thematicBreak:c()}};n2(e,(t||{}).mdastExtensions||[]);const r={};return n;function n(R){let rt={type:"root",children:[]};const gt={stack:[rt],tokenStack:[],config:e,enter:u,exit:h,buffer:l,resume:f,setData:a,getData:s},Nt=[];let Lt=-1;for(;++Lt0){const be=gt.tokenStack[gt.tokenStack.length-1];(be[1]||i2).call(gt,void 0,be[0])}for(rt.position={start:Un(R.length>0?R[0][1].start:{line:1,column:1,offset:0}),end:Un(R.length>0?R[R.length-2][1].end:{line:1,column:1,offset:0})},Lt=-1;++Lt{c!==0&&(i++,n.push([])),u.split(" ").forEach(h=>{h&&n[i].push({content:h,type:o})})}):(s.type==="strong"||s.type==="emphasis")&&s.children.forEach(l=>{a(l,s.type)})}return r.forEach(s=>{s.type==="paragraph"&&s.children.forEach(o=>{a(o)})}),n}function ES(t){const{children:e}=r2(t);function r(n){return n.type==="text"?n.value.replace(/\n/g,"
"):n.type==="strong"?`${n.children.map(r).join("")}`:n.type==="emphasis"?`${n.children.map(r).join("")}`:n.type==="paragraph"?`

${n.children.map(r).join("")}

`:`Unsupported markdown: ${n.type}`}return e.map(r).join("")}function FS(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function LS(t,e){const r=FS(e.content);return a2(t,[],r,e.type)}function a2(t,e,r,n){if(r.length===0)return[{content:e.join(""),type:n},{content:"",type:n}];const[i,...a]=r,s=[...e,i];return t([{content:s.join(""),type:n}])?a2(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function MS(t,e){if(t.some(({content:r})=>r.includes(` `)))throw new Error("splitLineToFitWidth does not support newlines in the line");return yu(t,e)}function yu(t,e,r=[],n=[]){if(t.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";t[0].content===" "&&(i=" ",t.shift());const a=t.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),e(s))return yu(t,e,r,s);if(n.length>0)r.push(n),t.unshift(a);else if(a.content){const[o,l]=LS(e,a);r.push([o]),l.content&&t.unshift(l)}return yu(t,e,r)}function DS(t,e){e&&t.attr("style",e)}function IS(t,e,r,n,i=!1){const a=t.append("foreignObject"),s=a.append("xhtml:div"),o=e.label,l=e.isNode?"nodeLabel":"edgeLabel";s.html(` "+o+""),DS(s,e.labelStyle),s.style("display","table-cell"),s.style("white-space","nowrap"),s.style("max-width",r+"px"),s.attr("xmlns","http://www.w3.org/1999/xhtml"),i&&s.attr("class","labelBkg");let u=s.node().getBoundingClientRect();return u.width===r&&(s.style("display","table"),s.style("white-space","break-spaces"),s.style("width",r+"px"),u=s.node().getBoundingClientRect()),a.style("width",u.width),a.style("height",u.height),a.node()}function s2(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function zS(t,e,r){const n=t.append("text"),i=s2(n,1,e);o2(i,r);const a=i.node().getComputedTextLength();return n.remove(),a}function OS(t,e,r,n=!1){const a=e.append("g"),s=a.insert("rect").attr("class","background"),o=a.append("text").attr("y","-10.1");let l=0;for(const u of r){const c=f=>zS(a,1.1,f)<=t,h=c(u)?[u]:MS(u,c);for(const f of h){const p=s2(o,l,1.1);o2(p,f),l++}}if(n){const u=o.node().getBBox(),c=2;return s.attr("x",-c).attr("y",-c).attr("width",u.width+2*c).attr("height",u.height+2*c),a.node()}else return o.node()}function o2(t,e){t.text(""),e.forEach((r,n)=>{const i=t.append("tspan").attr("font-style",r.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}const bu=(t,e="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:o=200,addSvgBackground:l=!1}={})=>{if(E.info("createText",e,r,n,i,a,s,l),a){const u=ES(e),c={isNode:s,label:Va(u).replace(/fa[blrs]?:fa-[\w-]+/g,f=>``),labelStyle:r.replace("fill:","color:")};return IS(t,c,o,i,l)}else{const u=BS(e);return OS(o,t,u,l)}},Ee=async(t,e,r,n)=>{let i;const a=e.useHtmlLabels||De(Et().flowchart.htmlLabels);r?i=r:i="node default";const s=t.insert("g").attr("class",i).attr("id",e.domId||e.id),o=s.insert("g").attr("class","label").attr("style",e.labelStyle);let l;e.labelText===void 0?l="":l=typeof e.labelText=="string"?e.labelText:e.labelText[0];const u=o.node();let c;e.labelType==="markdown"?c=bu(o,li(Va(l),Et()),{useHtmlLabels:a,width:e.width||Et().flowchart.wrappingWidth,classes:"markdown-node-label"}):c=u.appendChild(Qe(li(Va(l),Et()),e.labelStyle,!1,n));let h=c.getBBox();const f=e.padding/2;if(De(Et().flowchart.htmlLabels)){const p=c.children[0],y=Dt(c),b=p.getElementsByTagName("img");if(b){const A=l.replace(/]*>/g,"").trim()==="";await Promise.all([...b].map(_=>new Promise(M=>{function I(){if(_.style.display="flex",_.style.flexDirection="column",A){const V=Et().fontSize?Et().fontSize:window.getComputedStyle(document.body).fontSize,N=5,L=parseInt(V,10)*N+"px";_.style.minWidth=L,_.style.maxWidth=L}else _.style.width="100%";M(_)}setTimeout(()=>{_.complete&&I()}),_.addEventListener("error",I),_.addEventListener("load",I)})))}h=p.getBoundingClientRect(),y.attr("width",h.width),y.attr("height",h.height)}return a?o.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):o.attr("transform","translate(0, "+-h.height/2+")"),e.centerLabel&&o.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),o.insert("rect",":first-child"),{shapeSvg:s,bbox:h,halfPadding:f,label:o}},ue=(t,e)=>{const r=e.node().getBBox();t.width=r.width,t.height=r.height};function nn(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}let Tt={},Wr={},l2={};const NS=()=>{Wr={},l2={},Tt={}},G0=(t,e)=>(E.trace("In isDescendant",e," ",t," = ",Wr[e].includes(t)),!!Wr[e].includes(t)),RS=(t,e)=>(E.info("Descendants of ",e," is ",Wr[e]),E.info("Edge is ",t),t.v===e||t.w===e?!1:Wr[e]?Wr[e].includes(t.v)||G0(t.v,e)||G0(t.w,e)||Wr[e].includes(t.w):(E.debug("Tilt, ",e,",not in descendants"),!1)),u2=(t,e,r,n)=>{E.warn("Copying children of ",t,"root",n,"data",e.node(t),n);const i=e.children(t)||[];t!==n&&i.push(t),E.warn("Copying (nodes) clusterId",t,"nodes",i),i.forEach(a=>{if(e.children(a).length>0)u2(a,e,r,n);else{const s=e.node(a);E.info("cp ",a," to ",n," with parent ",t),r.setNode(a,s),n!==e.parent(a)&&(E.warn("Setting parent",a,e.parent(a)),r.setParent(a,e.parent(a))),t!==n&&a!==t?(E.debug("Setting parent",a,t),r.setParent(a,t)):(E.info("In copy ",t,"root",n,"data",e.node(t),n),E.debug("Not Setting parent for node=",a,"cluster!==rootId",t!==n,"node!==clusterId",a!==t));const o=e.edges(a);E.debug("Copying Edges",o),o.forEach(l=>{E.info("Edge",l);const u=e.edge(l.v,l.w,l.name);E.info("Edge data",u,n);try{RS(l,n)?(E.info("Copying as ",l.v,l.w,u,l.name),r.setEdge(l.v,l.w,u,l.name),E.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):E.info("Skipping copy of edge ",l.v,"-->",l.w," rootId: ",n," clusterId:",t)}catch(c){E.error(c)}})}E.debug("Removing node",a),e.removeNode(a)})},c2=(t,e)=>{const r=e.children(t);let n=[...r];for(const i of r)l2[i]=t,n=[...n,...c2(i,e)];return n},is=(t,e)=>{E.trace("Searching",t);const r=e.children(t);if(E.trace("Searching children of id ",t,r),r.length<1)return E.trace("This is a valid node",t),t;for(const n of r){const i=is(n,e);if(i)return E.trace("Found replacement for",t," => ",i),i}},j0=t=>!Tt[t]||!Tt[t].externalConnections?t:Tt[t]?Tt[t].id:t,PS=(t,e)=>{if(!t||e>10){E.debug("Opting out, no graph ");return}else E.debug("Opting in, graph ");t.nodes().forEach(function(r){t.children(r).length>0&&(E.warn("Cluster identified",r," Replacement id in edges: ",is(r,t)),Wr[r]=c2(r,t),Tt[r]={id:is(r,t),clusterData:t.node(r)})}),t.nodes().forEach(function(r){const n=t.children(r),i=t.edges();n.length>0?(E.debug("Cluster identified",r,Wr),i.forEach(a=>{if(a.v!==r&&a.w!==r){const s=G0(a.v,r),o=G0(a.w,r);s^o&&(E.warn("Edge: ",a," leaves cluster ",r),E.warn("Descendants of XXX ",r,": ",Wr[r]),Tt[r].externalConnections=!0)}})):E.debug("Not a cluster ",r,Wr)});for(let r of Object.keys(Tt)){const n=Tt[r].id,i=t.parent(n);i!==r&&Tt[i]&&!Tt[i].externalConnections&&(Tt[r].id=i)}t.edges().forEach(function(r){const n=t.edge(r);E.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),E.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(t.edge(r)));let i=r.v,a=r.w;if(E.warn("Fix XXX",Tt,"ids:",r.v,r.w,"Translating: ",Tt[r.v]," --- ",Tt[r.w]),Tt[r.v]&&Tt[r.w]&&Tt[r.v]===Tt[r.w]){E.warn("Fixing and trixing link to self - removing XXX",r.v,r.w,r.name),E.warn("Fixing and trixing - removing XXX",r.v,r.w,r.name),i=j0(r.v),a=j0(r.w),t.removeEdge(r.v,r.w,r.name);const s=r.w+"---"+r.v;t.setNode(s,{domId:s,id:s,labelStyle:"",labelText:n.label,padding:0,shape:"labelRect",style:""});const o=structuredClone(n),l=structuredClone(n);o.label="",o.arrowTypeEnd="none",l.label="",o.fromCluster=r.v,l.toCluster=r.v,t.setEdge(i,s,o,r.name+"-cyclic-special"),t.setEdge(s,a,l,r.name+"-cyclic-special")}else if(Tt[r.v]||Tt[r.w]){if(E.warn("Fixing and trixing - removing XXX",r.v,r.w,r.name),i=j0(r.v),a=j0(r.w),t.removeEdge(r.v,r.w,r.name),i!==r.v){const s=t.parent(i);Tt[s].externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){const s=t.parent(a);Tt[s].externalConnections=!0,n.toCluster=r.w}E.warn("Fix Replacing with XXX",i,a,r.name),t.setEdge(i,a,n,r.name)}}),E.warn("Adjusted Graph",_n(t)),h2(t,0),E.trace(Tt)},h2=(t,e)=>{if(E.warn("extractor - ",e,_n(t),t.children("D")),e>10){E.error("Bailing out");return}let r=t.nodes(),n=!1;for(const i of r){const a=t.children(i);n=n||a.length>0}if(!n){E.debug("Done, no node has children",t.nodes());return}E.debug("Nodes = ",r,e);for(const i of r)if(E.debug("Extracting node",i,Tt,Tt[i]&&!Tt[i].externalConnections,!t.parent(i),t.node(i),t.children("D")," Depth ",e),!Tt[i])E.debug("Not a cluster",i,e);else if(!Tt[i].externalConnections&&t.children(i)&&t.children(i).length>0){E.warn("Cluster without external connections, without a parent and with children",i,e);let s=t.graph().rankdir==="TB"?"LR":"TB";Tt[i]&&Tt[i].clusterData&&Tt[i].clusterData.dir&&(s=Tt[i].clusterData.dir,E.warn("Fixing dir",Tt[i].clusterData.dir,s));const o=new Cr({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});E.warn("Old graph before copy",_n(t)),u2(i,t,o,i),t.setNode(i,{clusterNode:!0,id:i,clusterData:Tt[i].clusterData,labelText:Tt[i].labelText,graph:o}),E.warn("New graph after copy node: (",i,")",_n(o)),E.debug("Old graph after copy",_n(t))}else E.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!Tt[i].externalConnections," no parent: ",!t.parent(i)," children ",t.children(i)&&t.children(i).length>0,t.children("D"),e),E.debug(Tt);r=t.nodes(),E.warn("New list of nodes",r);for(const i of r){const a=t.node(i);E.warn(" Now next level",i,a),a.clusterNode&&h2(a.graph,e+1)}},f2=(t,e)=>{if(e.length===0)return[];let r=Object.assign(e);return e.forEach(n=>{const i=t.children(n),a=f2(t,i);r=[...r,...a]}),r},qS=t=>f2(t,t.children());function $S(t,e){return t.intersect(e)}function d2(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,o=a-n.y,l=Math.sqrt(e*e*o*o+r*r*s*s),u=Math.abs(e*r*s/l);n.x0}function WS(t,e,r){var n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(y){s=Math.min(s,y.x),o=Math.min(o,y.y)}):(s=Math.min(s,e.x),o=Math.min(o,e.y));for(var l=n-t.width/2-s,u=i-t.height/2-o,c=0;c1&&a.sort(function(y,b){var A=y.x-r.x,_=y.y-r.y,M=Math.sqrt(A*A+_*_),I=b.x-r.x,V=b.y-r.y,N=Math.sqrt(I*I+V*V);return M{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,o=t.height/2,l,u;return Math.abs(a)*s>Math.abs(i)*o?(a<0&&(o=-o),l=a===0?0:o*i/a,u=o):(i<0&&(s=-s),l=s,u=i===0?0:s*a/i),{x:r+l,y:n+u}},oe={node:$S,circle:HS,ellipse:d2,polygon:WS,rect:as},US=async(t,e)=>{e.useHtmlLabels||Et().flowchart.htmlLabels||(e.centerLabel=!0);const{shapeSvg:n,bbox:i,halfPadding:a}=await Ee(t,e,"node "+e.classes,!0);E.info("Classes = ",e.classes);const s=n.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),ue(e,s),e.intersect=function(o){return oe.rect(e,o)},n},GS=t=>{const e=new Set;for(const r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r);break}return e},jS=(t,e,r)=>{const n=GS(t),i=2,a=e.height+2*r.padding,s=a/i,o=e.width+2*s+r.padding,l=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:o/2,y:2*l},{x:o-s,y:0},{x:o,y:0},{x:o,y:-a/3},{x:o+2*l,y:-a/2},{x:o,y:-2*a/3},{x:o,y:-a},{x:o-s,y:-a},{x:o/2,y:-a-2*l},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*l,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{x:s,y:0},{x:o-s,y:0},{x:o,y:-a/2},{x:o-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:o-s,y:-a},{x:o,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:o,y:-s},{x:o,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:o,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:o,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-l},{x:o-s,y:-l},{x:o-s,y:0},{x:o,y:-a/2},{x:o-s,y:-a},{x:o-s,y:-a+l},{x:s,y:-a+l},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:o/2,y:0},{x:0,y:-l},{x:s,y:-l},{x:s,y:-a+l},{x:0,y:-a+l},{x:o/2,y:-a},{x:o,y:-a+l},{x:o-s,y:-a+l},{x:o-s,y:-l},{x:o,y:-l}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:o,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:o,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:o,y:0},{x:0,y:-s},{x:o,y:-a}]:n.has("left")&&n.has("down")?[{x:o,y:0},{x:0,y:0},{x:o,y:-a}]:n.has("right")?[{x:s,y:-l},{x:s,y:-l},{x:o-s,y:-l},{x:o-s,y:0},{x:o,y:-a/2},{x:o-s,y:-a},{x:o-s,y:-a+l},{x:s,y:-a+l},{x:s,y:-a+l}]:n.has("left")?[{x:s,y:0},{x:s,y:-l},{x:o-s,y:-l},{x:o-s,y:-a+l},{x:s,y:-a+l},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-l},{x:s,y:-a+l},{x:0,y:-a+l},{x:o/2,y:-a},{x:o,y:-a+l},{x:o-s,y:-a+l},{x:o-s,y:-l}]:n.has("down")?[{x:o/2,y:0},{x:0,y:-l},{x:s,y:-l},{x:s,y:-a+l},{x:o-s,y:-a+l},{x:o-s,y:-l},{x:o,y:-l}]:[{x:0,y:0}]},m2=t=>t?" "+t:"",dr=(t,e)=>`${e||"node default"}${m2(t.classes)} ${m2(t.class)}`,g2=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=i+a,o=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];E.info("Question main (Circle)");const l=nn(r,s,s,o);return l.attr("style",e.style),ue(e,l),e.intersect=function(u){return E.warn("Intersect called"),oe.polygon(e,o,u)},r},YS=(t,e)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(s){return oe.circle(e,14,s)},r},XS=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=4,a=n.height+e.padding,s=a/i,o=n.width+2*s+e.padding,l=[{x:s,y:0},{x:o-s,y:0},{x:o,y:-a/2},{x:o-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],u=nn(r,o,a,l);return u.attr("style",e.style),ue(e,u),e.intersect=function(c){return oe.polygon(e,l,c)},r},KS=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,o=n.width+2*s+e.padding,l=jS(e.directions,n,e),u=nn(r,o,a,l);return u.attr("style",e.style),ue(e,u),e.intersect=function(c){return oe.polygon(e,l,c)},r},ZS=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return nn(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(l){return oe.polygon(e,s,l)},r},QS=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],o=nn(r,i,a,s);return o.attr("style",e.style),ue(e,o),e.intersect=function(l){return oe.polygon(e,s,l)},r},JS=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],o=nn(r,i,a,s);return o.attr("style",e.style),ue(e,o),e.intersect=function(l){return oe.polygon(e,s,l)},r},tT=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],o=nn(r,i,a,s);return o.attr("style",e.style),ue(e,o),e.intersect=function(l){return oe.polygon(e,s,l)},r},eT=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],o=nn(r,i,a,s);return o.attr("style",e.style),ue(e,o),e.intersect=function(l){return oe.polygon(e,s,l)},r},rT=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],o=nn(r,i,a,s);return o.attr("style",e.style),ue(e,o),e.intersect=function(l){return oe.polygon(e,s,l)},r},nT=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=i/2,s=a/(2.5+i/50),o=n.height+s+e.padding,l="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+o+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-o,u=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",l).attr("transform","translate("+-i/2+","+-(o/2+s)+")");return ue(e,u),e.intersect=function(c){const h=oe.rect(e,c),f=h.x-e.x;if(a!=0&&(Math.abs(f)e.height/2-s)){let p=s*s*(1-f*f/(a*a));p!=0&&(p=Math.sqrt(p)),p=s-p,c.y-e.y>0&&(p=-p),h.y+=p}return h},r},iT=async(t,e)=>{const{shapeSvg:r,bbox:n,halfPadding:i}=await Ee(t,e,"node "+e.classes+" "+e.class,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,o=e.positioned?e.height:n.height+e.padding,l=e.positioned?-s/2:-n.width/2-i,u=e.positioned?-o/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",l).attr("y",u).attr("width",s).attr("height",o),e.props){const c=new Set(Object.keys(e.props));e.props.borders&&(xu(a,e.props.borders,s,o),c.delete("borders")),c.forEach(h=>{E.warn(`Unknown node property ${h}`)})}return ue(e,a),e.intersect=function(c){return oe.rect(e,c)},r},aT=async(t,e)=>{const{shapeSvg:r,bbox:n,halfPadding:i}=await Ee(t,e,"node "+e.classes,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,o=e.positioned?e.height:n.height+e.padding,l=e.positioned?-s/2:-n.width/2-i,u=e.positioned?-o/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",l).attr("y",u).attr("width",s).attr("height",o),e.props){const c=new Set(Object.keys(e.props));e.props.borders&&(xu(a,e.props.borders,s,o),c.delete("borders")),c.forEach(h=>{E.warn(`Unknown node property ${h}`)})}return ue(e,a),e.intersect=function(c){return oe.rect(e,c)},r},sT=async(t,e)=>{const{shapeSvg:r}=await Ee(t,e,"label",!0);E.trace("Classes = ",e.class);const n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),e.props){const s=new Set(Object.keys(e.props));e.props.borders&&(xu(n,e.props.borders,i,a),s.delete("borders")),s.forEach(o=>{E.warn(`Unknown node property ${o}`)})}return ue(e,n),e.intersect=function(s){return oe.rect(e,s)},r};function xu(t,e,r,n){const i=[],a=o=>{i.push(o,0)},s=o=>{i.push(0,o)};e.includes("t")?(E.debug("add top border"),a(r)):s(r),e.includes("r")?(E.debug("add right border"),a(n)):s(n),e.includes("b")?(E.debug("add bottom border"),a(r)):s(r),e.includes("l")?(E.debug("add left border"),a(n)):s(n),t.attr("stroke-dasharray",i.join(" "))}const oT=(t,e)=>{let r;e.classes?r="node "+e.classes:r="node default";const n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),o=e.labelText.flat?e.labelText.flat():e.labelText;let l="";typeof o=="object"?l=o[0]:l=o,E.info("Label text abc79",l,o,typeof o=="object");const u=s.node().appendChild(Qe(l,e.labelStyle,!0,!0));let c={width:0,height:0};if(De(Et().flowchart.htmlLabels)){const b=u.children[0],A=Dt(u);c=b.getBoundingClientRect(),A.attr("width",c.width),A.attr("height",c.height)}E.info("Text 2",o);const h=o.slice(1,o.length);let f=u.getBBox();const p=s.node().appendChild(Qe(h.join?h.join("
"):h,e.labelStyle,!0,!0));if(De(Et().flowchart.htmlLabels)){const b=p.children[0],A=Dt(p);c=b.getBoundingClientRect(),A.attr("width",c.width),A.attr("height",c.height)}const y=e.padding/2;return Dt(p).attr("transform","translate( "+(c.width>f.width?0:(f.width-c.width)/2)+", "+(f.height+y+5)+")"),Dt(u).attr("transform","translate( "+(c.width{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.height+e.padding,a=n.width+i/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return ue(e,s),e.intersect=function(o){return oe.rect(e,o)},r},uT=async(t,e)=>{const{shapeSvg:r,bbox:n,halfPadding:i}=await Ee(t,e,dr(e,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),E.info("Circle main"),ue(e,a),e.intersect=function(s){return E.info("Circle intersect",e,n.width/2+i,s),oe.circle(e,n.width/2+i,s)},r},cT=async(t,e)=>{const{shapeSvg:r,bbox:n,halfPadding:i}=await Ee(t,e,dr(e,void 0),!0),a=5,s=r.insert("g",":first-child"),o=s.insert("circle"),l=s.insert("circle");return s.attr("class",e.class),o.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i+a).attr("width",n.width+e.padding+a*2).attr("height",n.height+e.padding+a*2),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),E.info("DoubleCircle main"),ue(e,o),e.intersect=function(u){return E.info("DoubleCircle intersect",e,n.width/2+i+a,u),oe.circle(e,n.width/2+i+a,u)},r},hT=async(t,e)=>{const{shapeSvg:r,bbox:n}=await Ee(t,e,dr(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],o=nn(r,i,a,s);return o.attr("style",e.style),ue(e,o),e.intersect=function(l){return oe.polygon(e,s,l)},r},fT=(t,e)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),ue(e,n),e.intersect=function(i){return oe.circle(e,7,i)},r},y2=(t,e,r)=>{const n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let i=70,a=10;r==="LR"&&(i=10,a=70);const s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return ue(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(o){return oe.rect(e,o)},n},b2={rhombus:g2,composite:aT,question:g2,rect:iT,labelRect:sT,rectWithTitle:oT,choice:YS,circle:uT,doublecircle:cT,stadium:lT,hexagon:XS,block_arrow:KS,rect_left_inv_arrow:ZS,lean_right:QS,lean_left:JS,trapezoid:tT,inv_trapezoid:eT,rect_right_inv_arrow:rT,cylinder:nT,start:fT,end:(t,e)=>{const r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),ue(e,i),e.intersect=function(a){return oe.circle(e,7,a)},r},note:US,subroutine:hT,fork:y2,join:y2,class_box:(t,e)=>{const r=e.padding/2,n=4,i=8;let a;e.classes?a="node "+e.classes:a="node default";const s=t.insert("g").attr("class",a).attr("id",e.domId||e.id),o=s.insert("rect",":first-child"),l=s.insert("line"),u=s.insert("line");let c=0,h=n;const f=s.insert("g").attr("class","label");let p=0;const y=e.classData.annotations&&e.classData.annotations[0],b=e.classData.annotations[0]?"«"+e.classData.annotations[0]+"»":"",A=f.node().appendChild(Qe(b,e.labelStyle,!0,!0));let _=A.getBBox();if(De(Et().flowchart.htmlLabels)){const G=A.children[0],Y=Dt(A);_=G.getBoundingClientRect(),Y.attr("width",_.width),Y.attr("height",_.height)}e.classData.annotations[0]&&(h+=_.height+n,c+=_.width);let M=e.classData.label;e.classData.type!==void 0&&e.classData.type!==""&&(Et().flowchart.htmlLabels?M+="<"+e.classData.type+">":M+="<"+e.classData.type+">");const I=f.node().appendChild(Qe(M,e.labelStyle,!0,!0));Dt(I).attr("class","classTitle");let V=I.getBBox();if(De(Et().flowchart.htmlLabels)){const G=I.children[0],Y=Dt(I);V=G.getBoundingClientRect(),Y.attr("width",V.width),Y.attr("height",V.height)}h+=V.height+n,V.width>c&&(c=V.width);const N=[];e.classData.members.forEach(G=>{const Y=G.getDisplayDetails();let J=Y.displayText;Et().flowchart.htmlLabels&&(J=J.replace(//g,">"));const O=f.node().appendChild(Qe(J,Y.cssStyle?Y.cssStyle:e.labelStyle,!0,!0));let P=O.getBBox();if(De(Et().flowchart.htmlLabels)){const ft=O.children[0],X=Dt(O);P=ft.getBoundingClientRect(),X.attr("width",P.width),X.attr("height",P.height)}P.width>c&&(c=P.width),h+=P.height+n,N.push(O)}),h+=i;const L=[];if(e.classData.methods.forEach(G=>{const Y=G.getDisplayDetails();let J=Y.displayText;Et().flowchart.htmlLabels&&(J=J.replace(//g,">"));const O=f.node().appendChild(Qe(J,Y.cssStyle?Y.cssStyle:e.labelStyle,!0,!0));let P=O.getBBox();if(De(Et().flowchart.htmlLabels)){const ft=O.children[0],X=Dt(O);P=ft.getBoundingClientRect(),X.attr("width",P.width),X.attr("height",P.height)}P.width>c&&(c=P.width),h+=P.height+n,L.push(O)}),h+=i,y){let G=(c-_.width)/2;Dt(A).attr("transform","translate( "+(-1*c/2+G)+", "+-1*h/2+")"),p=_.height+n}let q=(c-V.width)/2;return Dt(I).attr("transform","translate( "+(-1*c/2+q)+", "+(-1*h/2+p)+")"),p+=V.height+n,l.attr("class","divider").attr("x1",-c/2-r).attr("x2",c/2+r).attr("y1",-h/2-r+i+p).attr("y2",-h/2-r+i+p),p+=i,N.forEach(G=>{Dt(G).attr("transform","translate( "+-c/2+", "+(-1*h/2+p+i/2)+")");const Y=G==null?void 0:G.getBBox();p+=((Y==null?void 0:Y.height)??0)+n}),p+=i,u.attr("class","divider").attr("x1",-c/2-r).attr("x2",c/2+r).attr("y1",-h/2-r+i+p).attr("y2",-h/2-r+i+p),p+=i,L.forEach(G=>{Dt(G).attr("transform","translate( "+-c/2+", "+(-1*h/2+p)+")");const Y=G==null?void 0:G.getBBox();p+=((Y==null?void 0:Y.height)??0)+n}),o.attr("style",e.style).attr("class","outer title-state").attr("x",-c/2-r).attr("y",-(h/2)-r).attr("width",c+e.padding).attr("height",h+e.padding),ue(e,o),e.intersect=function(G){return oe.rect(e,G)},s}};let sa={};const dT=async(t,e,r)=>{let n,i;if(e.link){let a;Et().securityLevel==="sandbox"?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=await b2[e.shape](n,e,r)}else i=await b2[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),n.attr("data-node","true"),n.attr("data-id",e.id),sa[e.id]=n,e.haveCallback&&sa[e.id].attr("class",sa[e.id].attr("class")+" clickable"),n},pT=(t,e)=>{sa[e.id]=t},mT=()=>{sa={}},x2=t=>{const e=sa[t.id];E.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},Y0=({flowchart:t})=>{var i,a;const e=((i=t==null?void 0:t.subGraphTitleMargin)==null?void 0:i.top)??0,r=((a=t==null?void 0:t.subGraphTitleMargin)==null?void 0:a.bottom)??0,n=e+r;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},gT={rect:(t,e)=>{E.info("Creating subgraph rect for ",e.id,e);const r=Et(),n=t.insert("g").attr("class","cluster"+(e.class?" "+e.class:"")).attr("id",e.id),i=n.insert("rect",":first-child"),a=De(r.flowchart.htmlLabels),s=n.insert("g").attr("class","cluster-label"),o=e.labelType==="markdown"?bu(s,e.labelText,{style:e.labelStyle,useHtmlLabels:a}):s.node().appendChild(Qe(e.labelText,e.labelStyle,void 0,!0));let l=o.getBBox();if(De(r.flowchart.htmlLabels)){const y=o.children[0],b=Dt(o);l=y.getBoundingClientRect(),b.attr("width",l.width),b.attr("height",l.height)}const u=0*e.padding,c=u/2,h=e.width<=l.width+u?l.width+u:e.width;e.width<=l.width+u?e.diff=(l.width-e.width)/2-e.padding/2:e.diff=-e.padding/2,E.trace("Data ",e,JSON.stringify(e)),i.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-h/2).attr("y",e.y-e.height/2-c).attr("width",h).attr("height",e.height+u);const{subGraphTitleTopMargin:f}=Y0(r);a?s.attr("transform",`translate(${e.x-l.width/2}, ${e.y-e.height/2+f})`):s.attr("transform",`translate(${e.x}, ${e.y-e.height/2+f})`);const p=i.node().getBBox();return e.width=p.width,e.height=p.height,e.intersect=function(y){return as(e,y)},n},roundedWithTitle:(t,e)=>{const r=Et(),n=t.insert("g").attr("class",e.classes).attr("id",e.id),i=n.insert("rect",":first-child"),a=n.insert("g").attr("class","cluster-label"),s=n.append("rect"),o=a.node().appendChild(Qe(e.labelText,e.labelStyle,void 0,!0));let l=o.getBBox();if(De(r.flowchart.htmlLabels)){const y=o.children[0],b=Dt(o);l=y.getBoundingClientRect(),b.attr("width",l.width),b.attr("height",l.height)}l=o.getBBox();const u=0*e.padding,c=u/2,h=e.width<=l.width+e.padding?l.width+e.padding:e.width;e.width<=l.width+e.padding?e.diff=(l.width+e.padding*0-e.width)/2:e.diff=-e.padding/2,i.attr("class","outer").attr("x",e.x-h/2-c).attr("y",e.y-e.height/2-c).attr("width",h+u).attr("height",e.height+u),s.attr("class","inner").attr("x",e.x-h/2-c).attr("y",e.y-e.height/2-c+l.height-1).attr("width",h+u).attr("height",e.height+u-l.height-3);const{subGraphTitleTopMargin:f}=Y0(r);a.attr("transform",`translate(${e.x-l.width/2}, ${e.y-e.height/2-e.padding/3+(De(r.flowchart.htmlLabels)?5:3)+f})`);const p=i.node().getBBox();return e.height=p.height,e.intersect=function(y){return as(e,y)},n},noteGroup:(t,e)=>{const r=t.insert("g").attr("class","note-cluster").attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");const s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(o){return as(e,o)},r},divider:(t,e)=>{const r=t.insert("g").attr("class",e.classes).attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("class","divider").attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2).attr("width",e.width+i).attr("height",e.height+i);const s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.diff=-e.padding/2,e.intersect=function(o){return as(e,o)},r}};let v2={};const yT=(t,e)=>{E.trace("Inserting cluster");const r=e.shape||"rect";v2[e.id]=gT[r](t,e)},bT=()=>{v2={}},Gn={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function X0(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=K0(t),e=K0(e);const[r,n]=[t.x,t.y],[i,a]=[e.x,e.y],s=i-r,o=a-n;return{angle:Math.atan(o/s),deltaX:s,deltaY:o}}const K0=t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,xT=t=>({x:function(e,r,n){let i=0;if(r===0&&Object.hasOwn(Gn,t.arrowTypeStart)){const{angle:a,deltaX:s}=X0(n[0],n[1]);i=Gn[t.arrowTypeStart]*Math.cos(a)*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Gn,t.arrowTypeEnd)){const{angle:a,deltaX:s}=X0(n[n.length-1],n[n.length-2]);i=Gn[t.arrowTypeEnd]*Math.cos(a)*(s>=0?1:-1)}return K0(e).x+i},y:function(e,r,n){let i=0;if(r===0&&Object.hasOwn(Gn,t.arrowTypeStart)){const{angle:a,deltaY:s}=X0(n[0],n[1]);i=Gn[t.arrowTypeStart]*Math.abs(Math.sin(a))*(s>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Gn,t.arrowTypeEnd)){const{angle:a,deltaY:s}=X0(n[n.length-1],n[n.length-2]);i=Gn[t.arrowTypeEnd]*Math.abs(Math.sin(a))*(s>=0?1:-1)}return K0(e).y+i}}),vT=(t,e,r,n,i)=>{e.arrowTypeStart&&w2(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&w2(t,"end",e.arrowTypeEnd,r,n,i)},wT={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},w2=(t,e,r,n,i,a)=>{const s=wT[r];if(!s){E.warn(`Unknown arrow type: ${r}`);return}const o=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${o})`)};let Z0={},Ie={};const CT=()=>{Z0={},Ie={}},kT=(t,e)=>{const r=De(Et().flowchart.htmlLabels),n=e.labelType==="markdown"?bu(t,e.label,{style:e.labelStyle,useHtmlLabels:r,addSvgBackground:!0}):Qe(e.label,e.labelStyle),i=t.insert("g").attr("class","edgeLabel"),a=i.insert("g").attr("class","label");a.node().appendChild(n);let s=n.getBBox();if(r){const l=n.children[0],u=Dt(n);s=l.getBoundingClientRect(),u.attr("width",s.width),u.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),Z0[e.id]=i,e.width=s.width,e.height=s.height;let o;if(e.startLabelLeft){const l=Qe(e.startLabelLeft,e.labelStyle),u=t.insert("g").attr("class","edgeTerminals"),c=u.insert("g").attr("class","inner");o=c.node().appendChild(l);const h=l.getBBox();c.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),Ie[e.id]||(Ie[e.id]={}),Ie[e.id].startLeft=u,Q0(o,e.startLabelLeft)}if(e.startLabelRight){const l=Qe(e.startLabelRight,e.labelStyle),u=t.insert("g").attr("class","edgeTerminals"),c=u.insert("g").attr("class","inner");o=u.node().appendChild(l),c.node().appendChild(l);const h=l.getBBox();c.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),Ie[e.id]||(Ie[e.id]={}),Ie[e.id].startRight=u,Q0(o,e.startLabelRight)}if(e.endLabelLeft){const l=Qe(e.endLabelLeft,e.labelStyle),u=t.insert("g").attr("class","edgeTerminals"),c=u.insert("g").attr("class","inner");o=c.node().appendChild(l);const h=l.getBBox();c.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),u.node().appendChild(l),Ie[e.id]||(Ie[e.id]={}),Ie[e.id].endLeft=u,Q0(o,e.endLabelLeft)}if(e.endLabelRight){const l=Qe(e.endLabelRight,e.labelStyle),u=t.insert("g").attr("class","edgeTerminals"),c=u.insert("g").attr("class","inner");o=c.node().appendChild(l);const h=l.getBBox();c.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),u.node().appendChild(l),Ie[e.id]||(Ie[e.id]={}),Ie[e.id].endRight=u,Q0(o,e.endLabelRight)}return n};function Q0(t,e){Et().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}const _T=(t,e)=>{E.debug("Moving label abc88 ",t.id,t.label,Z0[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath;const n=Et(),{subGraphTitleTotalMargin:i}=Y0(n);if(t.label){const a=Z0[t.id];let s=t.x,o=t.y;if(r){const l=Ke.calcLabelPosition(r);E.debug("Moving label "+t.label+" from (",s,",",o,") to (",l.x,",",l.y,") abc88"),e.updatedPath&&(s=l.x,o=l.y)}a.attr("transform",`translate(${s}, ${o+i/2})`)}if(t.startLabelLeft){const a=Ie[t.id].startLeft;let s=t.x,o=t.y;if(r){const l=Ke.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=l.x,o=l.y}a.attr("transform",`translate(${s}, ${o})`)}if(t.startLabelRight){const a=Ie[t.id].startRight;let s=t.x,o=t.y;if(r){const l=Ke.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=l.x,o=l.y}a.attr("transform",`translate(${s}, ${o})`)}if(t.endLabelLeft){const a=Ie[t.id].endLeft;let s=t.x,o=t.y;if(r){const l=Ke.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=l.x,o=l.y}a.attr("transform",`translate(${s}, ${o})`)}if(t.endLabelRight){const a=Ie[t.id].endRight;let s=t.x,o=t.y;if(r){const l=Ke.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=l.x,o=l.y}a.attr("transform",`translate(${s}, ${o})`)}},ST=(t,e)=>{const r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,o=t.height/2;return i>=s||a>=o},TT=(t,e,r)=>{E.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(e)} insidePoint : ${JSON.stringify(r)} node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2;let o=r.xMath.abs(n-e.x)*l){let h=r.y{E.debug("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(!ST(e,a)&&!i){const s=TT(e,n,a);let o=!1;r.forEach(l=>{o=o||l.x===s.x&&l.y===s.y}),r.some(l=>l.x===s.x&&l.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},AT=function(t,e,r,n,i,a,s){let o=r.points;E.debug("abc88 InsertEdge: edge=",r,"e=",e);let l=!1;const u=a.node(e.v);var c=a.node(e.w);c!=null&&c.intersect&&(u!=null&&u.intersect)&&(o=o.slice(1,r.points.length-1),o.unshift(u.intersect(o[0])),o.push(c.intersect(o[o.length-1]))),r.toCluster&&(E.debug("to cluster abc88",n[r.toCluster]),o=C2(r.points,n[r.toCluster].node),l=!0),r.fromCluster&&(E.debug("from cluster abc88",n[r.fromCluster]),o=C2(o.reverse(),n[r.fromCluster].node).reverse(),l=!0);const h=o.filter(V=>!Number.isNaN(V.y));let f=yh;r.curve&&(i==="graph"||i==="flowchart")&&(f=r.curve);const{x:p,y}=xT(r),b=cg().x(p).y(y).curve(f);let A;switch(r.thickness){case"normal":A="edge-thickness-normal";break;case"thick":A="edge-thickness-thick";break;case"invisible":A="edge-thickness-thick";break;default:A=""}switch(r.pattern){case"solid":A+=" edge-pattern-solid";break;case"dotted":A+=" edge-pattern-dotted";break;case"dashed":A+=" edge-pattern-dashed";break}const _=t.append("path").attr("d",b(h)).attr("id",r.id).attr("class"," "+A+(r.classes?" "+r.classes:"")).attr("style",r.style);let M="";(Et().flowchart.arrowMarkerAbsolute||Et().state.arrowMarkerAbsolute)&&(M=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,M=M.replace(/\(/g,"\\("),M=M.replace(/\)/g,"\\)")),vT(_,r,M,s,i);let I={};return l&&(I.updatedPath=o),I.originalPath=r.points,I},k2=async(t,e,r,n,i,a)=>{E.info("Graph in recursive render: XXX",_n(e),i);const s=e.graph().rankdir;E.trace("Dir in recursive render - dir:",s);const o=t.insert("g").attr("class","root");e.nodes()?E.info("Recursive render XXX",e.nodes()):E.info("No nodes found for",e),e.edges().length>0&&E.trace("Recursive edges",e.edge(e.edges()[0]));const l=o.insert("g").attr("class","clusters"),u=o.insert("g").attr("class","edgePaths"),c=o.insert("g").attr("class","edgeLabels"),h=o.insert("g").attr("class","nodes");await Promise.all(e.nodes().map(async function(y){const b=e.node(y);if(i!==void 0){const A=JSON.parse(JSON.stringify(i.clusterData));E.info("Setting data for cluster XXX (",y,") ",A,i),e.setNode(i.id,A),e.parent(y)||(E.trace("Setting parent",y,i.id),e.setParent(y,i.id,A))}if(E.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),b&&b.clusterNode){E.info("Cluster identified",y,b.width,e.node(y));const A=await k2(h,b.graph,r,n,e.node(y),a),_=A.elem;ue(b,_),b.diff=A.diff||0,E.info("Node bounds (abc123)",y,b,b.width,b.x,b.y),pT(_,b),E.warn("Recursive render complete ",_,b)}else e.children(y).length>0?(E.info("Cluster - the non recursive path XXX",y,b.id,b,e),E.info(is(b.id,e)),Tt[b.id]={id:is(b.id,e),node:b}):(E.info("Node - the non recursive path",y,b.id,b),await dT(h,e.node(y),s))})),e.edges().forEach(function(y){const b=e.edge(y.v,y.w,y.name);E.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(y)),E.info("Edge "+y.v+" -> "+y.w+": ",y," ",JSON.stringify(e.edge(y))),E.info("Fix",Tt,"ids:",y.v,y.w,"Translating: ",Tt[y.v],Tt[y.w]),kT(c,b)}),e.edges().forEach(function(y){E.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(y))}),E.info("#############################################"),E.info("### Layout ###"),E.info("#############################################"),E.info(e),ek(e),E.info("Graph after layout:",_n(e));let f=0;const{subGraphTitleTotalMargin:p}=Y0(a);return qS(e).forEach(function(y){const b=e.node(y);E.info("Position "+y+": "+JSON.stringify(e.node(y))),E.info("Position "+y+": ("+b.x,","+b.y,") width: ",b.width," height: ",b.height),b&&b.clusterNode?(b.y+=p,x2(b)):e.children(y).length>0?(b.height+=p,yT(l,b),Tt[b.id].node=b):(b.y+=p/2,x2(b))}),e.edges().forEach(function(y){const b=e.edge(y);E.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(b),b),b.points.forEach(_=>_.y+=p/2);const A=AT(u,y,b,Tt,r,e,n);_T(b,A)}),e.nodes().forEach(function(y){const b=e.node(y);E.info(y,b.type,b.diff),b.type==="group"&&(f=b.diff)}),{elem:o,diff:f}},BT=async(t,e,r,n,i)=>{Ek(t,r,n,i),mT(),CT(),bT(),NS(),E.warn("Graph at first:",JSON.stringify(_n(e))),PS(e),E.warn("Graph after:",JSON.stringify(_n(e)));const a=Et();await k2(t,e,n,i,void 0,a)};function ET(t,e){e&&t.attr("style",e)}function FT(t,e){var r=t.append("foreignObject").attr("width","100000"),n=r.append("xhtml:div");n.attr("xmlns","http://www.w3.org/1999/xhtml");var i=e.label;switch(typeof i){case"function":n.insert(i);break;case"object":n.insert(function(){return i});break;default:n.html(i)}ET(n,e.labelStyle),n.style("display","inline-block"),n.style("white-space","nowrap");var a=n.node().getBoundingClientRect();return r.attr("width",a.width).attr("height",a.height),r}const _2={},LT=function(t){const e=Object.keys(t);for(const r of e)_2[r]=t[r]},S2=async function(t,e,r,n,i,a){const s=n.select(`[id="${r}"]`),o=Object.keys(t);for(const l of o){const u=t[l];let c="default";u.classes.length>0&&(c=u.classes.join(" ")),c=c+" flowchart-label";const h=d0(u.styles);let f=u.text!==void 0?u.text:u.id,p;if(E.info("vertex",u,u.labelType),u.labelType==="markdown")E.info("vertex",u,u.labelType);else if(De(Et().flowchart.htmlLabels))p=FT(s,{label:f}).node(),p.parentNode.removeChild(p);else{const _=i.createElementNS("http://www.w3.org/2000/svg","text");_.setAttribute("style",h.labelStyle.replace("color:","fill:"));const M=f.split(Ri.lineBreakRegex);for(const I of M){const V=i.createElementNS("http://www.w3.org/2000/svg","tspan");V.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),V.setAttribute("dy","1em"),V.setAttribute("x","1"),V.textContent=I,_.appendChild(V)}p=_}let y=0,b="";switch(u.type){case"round":y=5,b="rect";break;case"square":b="rect";break;case"diamond":b="question";break;case"hexagon":b="hexagon";break;case"odd":b="rect_left_inv_arrow";break;case"lean_right":b="lean_right";break;case"lean_left":b="lean_left";break;case"trapezoid":b="trapezoid";break;case"inv_trapezoid":b="inv_trapezoid";break;case"odd_right":b="rect_left_inv_arrow";break;case"circle":b="circle";break;case"ellipse":b="ellipse";break;case"stadium":b="stadium";break;case"subroutine":b="subroutine";break;case"cylinder":b="cylinder";break;case"group":b="rect";break;case"doublecircle":b="doublecircle";break;default:b="rect"}const A=await Xh(f,Et());e.setNode(u.id,{labelStyle:h.labelStyle,shape:b,labelText:A,labelType:u.labelType,rx:y,ry:y,class:c,style:h.style,id:u.id,link:u.link,linkTarget:u.linkTarget,tooltip:a.db.getTooltip(u.id)||"",domId:a.db.lookUpDomId(u.id),haveCallback:u.haveCallback,width:u.type==="group"?500:void 0,dir:u.dir,type:u.type,props:u.props,padding:Et().flowchart.padding}),E.info("setNode",{labelStyle:h.labelStyle,labelType:u.labelType,shape:b,labelText:A,rx:y,ry:y,class:c,style:h.style,id:u.id,domId:a.db.lookUpDomId(u.id),width:u.type==="group"?500:void 0,type:u.type,dir:u.dir,props:u.props,padding:Et().flowchart.padding})}},T2=async function(t,e,r){E.info("abc78 edges = ",t);let n=0,i={},a,s;if(t.defaultStyle!==void 0){const o=d0(t.defaultStyle);a=o.style,s=o.labelStyle}for(const o of t){n++;const l="L-"+o.start+"-"+o.end;i[l]===void 0?(i[l]=0,E.info("abc78 new entry",l,i[l])):(i[l]++,E.info("abc78 new entry",l,i[l]));let u=l+"-"+i[l];E.info("abc78 new link id to be used is",l,u,i[l]);const c="LS-"+o.start,h="LE-"+o.end,f={style:"",labelStyle:""};switch(f.minlen=o.length||1,o.type==="arrow_open"?f.arrowhead="none":f.arrowhead="normal",f.arrowTypeStart="arrow_open",f.arrowTypeEnd="arrow_open",o.type){case"double_arrow_cross":f.arrowTypeStart="arrow_cross";case"arrow_cross":f.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":f.arrowTypeStart="arrow_point";case"arrow_point":f.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":f.arrowTypeStart="arrow_circle";case"arrow_circle":f.arrowTypeEnd="arrow_circle";break}let p="",y="";switch(o.stroke){case"normal":p="fill:none;",a!==void 0&&(p=a),s!==void 0&&(y=s),f.thickness="normal",f.pattern="solid";break;case"dotted":f.thickness="normal",f.pattern="dotted",f.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":f.thickness="thick",f.pattern="solid",f.style="stroke-width: 3.5px;fill:none;";break;case"invisible":f.thickness="invisible",f.pattern="solid",f.style="stroke-width: 0;fill:none;";break}if(o.style!==void 0){const b=d0(o.style);p=b.style,y=b.labelStyle}f.style=f.style+=p,f.labelStyle=f.labelStyle+=y,o.interpolate!==void 0?f.curve=f0(o.interpolate,Aa):t.defaultInterpolate!==void 0?f.curve=f0(t.defaultInterpolate,Aa):f.curve=f0(_2.curve,Aa),o.text===void 0?o.style!==void 0&&(f.arrowheadStyle="fill: #333"):(f.arrowheadStyle="fill: #333",f.labelpos="c"),f.labelType=o.labelType,f.label=await Xh(o.text.replace(Ri.lineBreakRegex,` `),Et()),o.style===void 0&&(f.style=f.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),f.labelStyle=f.labelStyle.replace("color:","fill:"),f.id=u,f.classes="flowchart-link "+c+" "+h,e.setEdge(o.start,o.end,f,n)}},A2={setConf:LT,addVertices:S2,addEdges:T2,getClasses:function(t,e){return e.db.getClasses()},draw:async function(t,e,r,n){E.info("Drawing flowchart");let i=n.db.getDirection();i===void 0&&(i="TD");const{securityLevel:a,flowchart:s}=Et(),o=s.nodeSpacing||50,l=s.rankSpacing||50;let u;a==="sandbox"&&(u=Dt("#i"+e));const c=Dt(a==="sandbox"?u.nodes()[0].contentDocument.body:"body"),h=a==="sandbox"?u.nodes()[0].contentDocument:document,f=new Cr({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:o,ranksep:l,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let p;const y=n.db.getSubGraphs();E.info("Subgraphs - ",y);for(let N=y.length-1;N>=0;N--)p=y[N],E.info("Subgraph - ",p),n.db.addVertex(p.id,{text:p.title,type:p.labelType},"group",void 0,p.classes,p.dir);const b=n.db.getVertices(),A=n.db.getEdges();E.info("Edges",A);let _=0;for(_=y.length-1;_>=0;_--){p=y[_],C3("cluster").append("text");for(let N=0;N{const r=l6,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Pi(n,i,a,e)},DT={parser:Xy,db:zl,renderer:A2,styles:t=>`.label { font-family: ${t.fontFamily}; color: ${t.nodeTextColor||t.textColor}; } .cluster-label text { fill: ${t.titleColor}; } .cluster-label span,p { color: ${t.titleColor}; } .label text,span,p { fill: ${t.nodeTextColor||t.textColor}; color: ${t.nodeTextColor||t.textColor}; } .node rect, .node circle, .node ellipse, .node polygon, .node path { fill: ${t.mainBkg}; stroke: ${t.nodeBorder}; stroke-width: 1px; } .flowchart-label text { text-anchor: middle; } // .flowchart-label .text-outer-tspan { // text-anchor: middle; // } // .flowchart-label .text-inner-tspan { // text-anchor: start; // } .node .katex path { fill: #000; stroke: #000; stroke-width: 1px; } .node .label { text-align: center; } .node.clickable { cursor: pointer; } .arrowheadPath { fill: ${t.arrowheadColor}; } .edgePath .path { stroke: ${t.lineColor}; stroke-width: 2.0px; } .flowchart-link { stroke: ${t.lineColor}; fill: none; } .edgeLabel { background-color: ${t.edgeLabelBackground}; rect { opacity: 0.5; background-color: ${t.edgeLabelBackground}; fill: ${t.edgeLabelBackground}; } text-align: center; } /* For html labels only */ .labelBkg { background-color: ${MT(t.edgeLabelBackground,.5)}; // background-color: } .cluster rect { fill: ${t.clusterBkg}; stroke: ${t.clusterBorder}; stroke-width: 1px; } .cluster text { fill: ${t.titleColor}; } .cluster span,p { color: ${t.titleColor}; } /* .cluster div { color: ${t.titleColor}; } */ div.mermaidTooltip { position: absolute; text-align: center; max-width: 200px; padding: 2px; font-family: ${t.fontFamily}; font-size: 12px; background: ${t.tertiaryColor}; border: 1px solid ${t.border2}; border-radius: 2px; pointer-events: none; z-index: 100; } .flowchartTitleText { text-anchor: middle; font-size: 18px; fill: ${t.textColor}; } `,init:t=>{t.flowchart||(t.flowchart={}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,ib({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),A2.setConf(t.flowchart),zl.clear(),zl.setGen("gen-2")}};let B2=!1;const vu=()=>{B2||(B2=!0,Ll("flowchart-v2",DT,()=>!0))};class E2{constructor(e,r={}){this.text=e,this.metadata=r,this.type="graph",this.text=Ty(e),this.text+=` `;const n=tn();try{this.type=Js(e,n)}catch(a){this.type="error",this.detectError=a}const i=Ml(this.type);E.debug("Type "+this.type),this.db=i.db,this.renderer=i.renderer,this.parser=i.parser,this.parser.parser.yy=this.db,this.init=i.init,this.parse()}parse(){var r,n,i,a,s;if(this.detectError)throw this.detectError;(n=(r=this.db).clear)==null||n.call(r);const e=tn();(i=this.init)==null||i.call(this,e),this.metadata.title&&((s=(a=this.db).setDiagramTitle)==null||s.call(a,this.metadata.title)),this.parser.parse(this.text)}async render(e,r){await this.renderer.draw(this.text,e,r,this)}getParser(){return this.parser}getType(){return this.type}}const IT=async(t,e={})=>{const r=Js(t,tn());try{Ml(r)}catch{const i=T6(r);if(!i)throw new i1(`Diagram ${r} not found.`);const{id:a,diagram:s}=await i();Ll(a,s)}return new E2(t,e)},zT=t=>{var i;const{securityLevel:e}=Et();let r=Dt("body");if(e==="sandbox"){const s=((i=Dt(`#i${t}`).node())==null?void 0:i.contentDocument)??document;r=Dt(s.body)}return r.select(`#${t}`)},OT={draw:(t,e,r)=>{E.debug(`rendering svg for syntax error `);const n=zT(e),i=n.append("g");n.attr("viewBox","0 0 2412 512"),ef(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)}};let F2=[];const NT=()=>{F2.forEach(t=>{t()}),F2=[]},RT="graphics-document document";function PT(t,e){t.attr("role",RT),e!==""&&t.attr("aria-roledescription",e)}function qT(t,e,r,n){if(t.insert!==void 0){if(r){const i=`chart-desc-${n}`;t.attr("aria-describedby",i),t.insert("desc",":first-child").attr("id",i).text(r)}if(e){const i=`chart-title-${n}`;t.attr("aria-labelledby",i),t.insert("title",":first-child").attr("id",i).text(e)}}}const $T=t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart();/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function L2(t){return typeof t>"u"||t===null}function HT(t){return typeof t=="object"&&t!==null}function VT(t){return Array.isArray(t)?t:L2(t)?[]:[t]}function WT(t,e){var r,n,i,a;if(e)for(a=Object.keys(e),r=0,n=a.length;ro&&(a=" ... ",e=n-o+a.length),r-n>o&&(s=" ...",r=n+o-s.length),{str:a+t.slice(e,r).replace(/\t/g,"→")+s,pos:n-e+a.length}}function Cu(t,e){return Ve.repeat(" ",e-t.length)+t}function JT(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(t.buffer);)i.push(a.index),n.push(a.index+a[0].length),t.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var o="",l,u,c=Math.min(t.line+e.linesAfter,i.length).toString().length,h=e.maxLength-(e.indent+c+3);for(l=1;l<=e.linesBefore&&!(s-l<0);l++)u=wu(t.buffer,n[s-l],i[s-l],t.position-(n[s]-n[s-l]),h),o=Ve.repeat(" ",e.indent)+Cu((t.line-l+1).toString(),c)+" | "+u.str+` `+o;for(u=wu(t.buffer,n[s],i[s],t.position,h),o+=Ve.repeat(" ",e.indent)+Cu((t.line+1).toString(),c)+" | "+u.str+` `,o+=Ve.repeat("-",e.indent+c+3+u.pos)+`^ `,l=1;l<=e.linesAfter&&!(s+l>=i.length);l++)u=wu(t.buffer,n[s+l],i[s+l],t.position-(n[s]-n[s+l]),h),o+=Ve.repeat(" ",e.indent)+Cu((t.line+l+1).toString(),c)+" | "+u.str+` `;return o.replace(/\n$/,"")}var tA=JT,eA=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],rA=["scalar","sequence","mapping"];function nA(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function iA(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(eA.indexOf(r)===-1)throw new Sn('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=nA(e.styleAliases||null),rA.indexOf(this.kind)===-1)throw new Sn('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}var Ne=iA;function D2(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function aA(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(e=0,r=arguments.length;e=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),TA=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function AA(t){return!(t===null||!TA.test(t)||t[t.length-1]==="_")}function BA(t){var e,r;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}var EA=/^[-+]?[0-9]+e/;function FA(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Ve.isNegativeZero(t))return"-0.0";return r=t.toString(10),EA.test(r)?r.replace("e",".e"):r}function LA(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Ve.isNegativeZero(t))}var MA=new Ne("tag:yaml.org,2002:float",{kind:"scalar",resolve:AA,construct:BA,predicate:LA,represent:FA,defaultStyle:"lowercase"}),I2=cA.extend({implicit:[pA,bA,SA,MA]}),DA=I2,z2=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),O2=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function IA(t){return t===null?!1:z2.exec(t)!==null||O2.exec(t)!==null}function zA(t){var e,r,n,i,a,s,o,l=0,u=null,c,h,f;if(e=z2.exec(t),e===null&&(e=O2.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(r,n,i));if(a=+e[4],s=+e[5],o=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(c=+e[10],h=+(e[11]||0),u=(c*60+h)*6e4,e[9]==="-"&&(u=-u)),f=new Date(Date.UTC(r,n,i,a,s,o,l)),u&&f.setTime(f.getTime()-u),f}function OA(t){return t.toISOString()}var NA=new Ne("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:IA,construct:zA,instanceOf:Date,represent:OA});function RA(t){return t==="<<"||t===null}var PA=new Ne("tag:yaml.org,2002:merge",{kind:"scalar",resolve:RA}),_u=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= \r`;function qA(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=_u;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function $A(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=_u,s=0,o=[];for(e=0;e>16&255),o.push(s>>8&255),o.push(s&255)),s=s<<6|a.indexOf(n.charAt(e));return r=i%4*6,r===0?(o.push(s>>16&255),o.push(s>>8&255),o.push(s&255)):r===18?(o.push(s>>10&255),o.push(s>>2&255)):r===12&&o.push(s>>4&255),new Uint8Array(o)}function HA(t){var e="",r=0,n,i,a=t.length,s=_u;for(n=0;n>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]),r=(r<<8)+t[n];return i=a%3,i===0?(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]):i===2?(e+=s[r>>10&63],e+=s[r>>4&63],e+=s[r<<2&63],e+=s[64]):i===1&&(e+=s[r>>2&63],e+=s[r<<4&63],e+=s[64],e+=s[64]),e}function VA(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var WA=new Ne("tag:yaml.org,2002:binary",{kind:"scalar",resolve:qA,construct:$A,predicate:VA,represent:HA}),UA=Object.prototype.hasOwnProperty,GA=Object.prototype.toString;function jA(t){if(t===null)return!0;var e=[],r,n,i,a,s,o=t;for(r=0,n=o.length;r>10)+55296,(t-65536&1023)+56320)}for(var W2=new Array(256),U2=new Array(256),la=0;la<256;la++)W2[la]=V2(la)?1:0,U2[la]=V2(la);function dB(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||iB,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function G2(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=tA(r),new Sn(e,r)}function mt(t,e){throw G2(t,e)}function eo(t,e){t.onWarning&&t.onWarning.call(null,G2(t,e))}var j2={YAML:function(e,r,n){var i,a,s;e.version!==null&&mt(e,"duplication of %YAML directive"),n.length!==1&&mt(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&mt(e,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&mt(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,s!==1&&s!==2&&eo(e,"unsupported YAML version of the document")},TAG:function(e,r,n){var i,a;n.length!==2&&mt(e,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],q2.test(i)||mt(e,"ill-formed tag handle (first argument) of the TAG directive"),jn.call(e.tagMap,i)&&mt(e,'there is a previously declared suffix for "'+i+'" tag handle'),$2.test(a)||mt(e,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{mt(e,"tag prefix is malformed: "+a)}e.tagMap[i]=a}};function Yn(t,e,r,n){var i,a,s,o;if(e1&&(t.result+=Ve.repeat(` `,e-1))}function pB(t,e,r){var n,i,a,s,o,l,u,c,h=t.kind,f=t.result,p;if(p=t.input.charCodeAt(t.position),er(p)||oa(p)||p===35||p===38||p===42||p===33||p===124||p===62||p===39||p===34||p===37||p===64||p===96||(p===63||p===45)&&(i=t.input.charCodeAt(t.position+1),er(i)||r&&oa(i)))return!1;for(t.kind="scalar",t.result="",a=s=t.position,o=!1;p!==0;){if(p===58){if(i=t.input.charCodeAt(t.position+1),er(i)||r&&oa(i))break}else if(p===35){if(n=t.input.charCodeAt(t.position-1),er(n))break}else{if(t.position===t.lineStart&&ro(t)||r&&oa(p))break;if(an(p))if(l=t.line,u=t.lineStart,c=t.lineIndent,Ce(t,!1,-1),t.lineIndent>=e){o=!0,p=t.input.charCodeAt(t.position);continue}else{t.position=s,t.line=l,t.lineStart=u,t.lineIndent=c;break}}o&&(Yn(t,a,s,!1),Au(t,t.line-l),a=s=t.position,o=!1),wi(p)||(s=t.position+1),p=t.input.charCodeAt(++t.position)}return Yn(t,a,s,!1),t.result?!0:(t.kind=h,t.result=f,!1)}function mB(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Yn(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else an(r)?(Yn(t,n,i,!0),Au(t,Ce(t,!1,e)),n=i=t.position):t.position===t.lineStart&&ro(t)?mt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);mt(t,"unexpected end of the stream within a single quoted scalar")}function gB(t,e){var r,n,i,a,s,o;if(o=t.input.charCodeAt(t.position),o!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(o=t.input.charCodeAt(t.position))!==0;){if(o===34)return Yn(t,r,t.position,!0),t.position++,!0;if(o===92){if(Yn(t,r,t.position,!0),o=t.input.charCodeAt(++t.position),an(o))Ce(t,!1,e);else if(o<256&&W2[o])t.result+=U2[o],t.position++;else if((s=cB(o))>0){for(i=s,a=0;i>0;i--)o=t.input.charCodeAt(++t.position),(s=uB(o))>=0?a=(a<<4)+s:mt(t,"expected hexadecimal character");t.result+=fB(a),t.position++}else mt(t,"unknown escape sequence");r=n=t.position}else an(o)?(Yn(t,r,n,!0),Au(t,Ce(t,!1,e)),r=n=t.position):t.position===t.lineStart&&ro(t)?mt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}mt(t,"unexpected end of the stream within a double quoted scalar")}function yB(t,e){var r=!0,n,i,a,s=t.tag,o,l=t.anchor,u,c,h,f,p,y=Object.create(null),b,A,_,M;if(M=t.input.charCodeAt(t.position),M===91)c=93,p=!1,o=[];else if(M===123)c=125,p=!0,o={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=o),M=t.input.charCodeAt(++t.position);M!==0;){if(Ce(t,!0,e),M=t.input.charCodeAt(t.position),M===c)return t.position++,t.tag=s,t.anchor=l,t.kind=p?"mapping":"sequence",t.result=o,!0;r?M===44&&mt(t,"expected the node content, but found ','"):mt(t,"missed comma between flow collection entries"),A=b=_=null,h=f=!1,M===63&&(u=t.input.charCodeAt(t.position+1),er(u)&&(h=f=!0,t.position++,Ce(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,ca(t,e,J0,!1,!0),A=t.tag,b=t.result,Ce(t,!0,e),M=t.input.charCodeAt(t.position),(f||t.line===n)&&M===58&&(h=!0,M=t.input.charCodeAt(++t.position),Ce(t,!0,e),ca(t,e,J0,!1,!0),_=t.result),p?ua(t,o,y,A,b,_,n,i,a):h?o.push(ua(t,null,y,A,b,_,n,i,a)):o.push(b),Ce(t,!0,e),M=t.input.charCodeAt(t.position),M===44?(r=!0,M=t.input.charCodeAt(++t.position)):r=!1}mt(t,"unexpected end of the stream within a flow collection")}function bB(t,e){var r,n,i=Su,a=!1,s=!1,o=e,l=0,u=!1,c,h;if(h=t.input.charCodeAt(t.position),h===124)n=!1;else if(h===62)n=!0;else return!1;for(t.kind="scalar",t.result="";h!==0;)if(h=t.input.charCodeAt(++t.position),h===43||h===45)Su===i?i=h===43?P2:aB:mt(t,"repeat of a chomping mode identifier");else if((c=hB(h))>=0)c===0?mt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?mt(t,"repeat of an indentation width identifier"):(o=e+c-1,s=!0);else break;if(wi(h)){do h=t.input.charCodeAt(++t.position);while(wi(h));if(h===35)do h=t.input.charCodeAt(++t.position);while(!an(h)&&h!==0)}for(;h!==0;){for(Tu(t),t.lineIndent=0,h=t.input.charCodeAt(t.position);(!s||t.lineIndento&&(o=t.lineIndent),an(h)){l++;continue}if(t.lineIndente)&&l!==0)mt(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(A&&(s=t.line,o=t.lineStart,l=t.position),ca(t,e,to,!0,i)&&(A?y=t.result:b=t.result),A||(ua(t,h,f,p,y,b,s,o,l),p=y=b=null),Ce(t,!0,-1),M=t.input.charCodeAt(t.position)),(t.line===a||t.lineIndent>e)&&M!==0)mt(t,"bad indentation of a mapping entry");else if(t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),h=0,f=t.implicitTypes.length;h"),t.result!==null&&y.kind!==t.kind&&mt(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+y.kind+'", not "'+t.kind+'"'),y.resolve(t.result,t.tag)?(t.result=y.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):mt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||c}function kB(t){var e=t.position,r,n,i,a=!1,s;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(s=t.input.charCodeAt(t.position))!==0&&(Ce(t,!0,-1),s=t.input.charCodeAt(t.position),!(t.lineIndent>0||s!==37));){for(a=!0,s=t.input.charCodeAt(++t.position),r=t.position;s!==0&&!er(s);)s=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),i=[],n.length<1&&mt(t,"directive name must not be less than one character in length");s!==0;){for(;wi(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!an(s));break}if(an(s))break;for(r=t.position;s!==0&&!er(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&Tu(t),jn.call(j2,n)?j2[n](t,n,i):eo(t,'unknown document directive "'+n+'"')}if(Ce(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,Ce(t,!0,-1)):a&&mt(t,"directives end mark is expected"),ca(t,t.lineIndent-1,to,!1,!0),Ce(t,!0,-1),t.checkLineBreaks&&oB.test(t.input.slice(e,t.position))&&eo(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&ro(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Ce(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=K2(t,r);if(typeof e!="function")return n;for(var i=0,a=n.length;it.replace(/\r\n?/g,` `).replace(/<(\w+)([^>]*)>/g,(e,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),DB=t=>{const{text:e,metadata:r}=LB(t),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:e}},IB=t=>{const e=Ke.detectInit(t)??{},r=Ke.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some(({type:n})=>{}):(r==null?void 0:r.type)==="wrap"&&(e.wrap=!0),{text:oy(t),directive:e}};function Z2(t){const e=MB(t),r=DB(e),n=IB(r.text),i=P1(r.config,n.directive);return t=$T(n.text),{code:t,title:r.title,config:i}}const zB=5e4,OB="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",NB="sandbox",RB="loose",PB="http://www.w3.org/2000/svg",qB="http://www.w3.org/1999/xlink",$B="http://www.w3.org/1999/xhtml",HB="100%",VB="100%",WB="border:0;margin:0;",UB="margin:0",GB="allow-top-navigation-by-user-activation allow-popups",jB='The "iframe" tag is not supported by your browser.',YB=["foreignobject"],XB=["dominant-baseline"];function Q2(t){const e=Z2(t);return k0(),Gy(e.config??{}),e}async function KB(t,e){vu(),t=Q2(t).code;try{await Bu(t)}catch(r){if(e!=null&&e.suppressErrors)return!1;throw r}return!0}const J2=(t,e,r=[])=>` .${t} ${e} { ${r.join(" !important; ")} !important; }`,ZB=(t,e={})=>{var n;let r="";if(t.themeCSS!==void 0&&(r+=` ${t.themeCSS}`),t.fontFamily!==void 0&&(r+=` :root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(r+=` :root { --mermaid-alt-font-family: ${t.altFontFamily}}`),!Za(e)){const o=t.htmlLabels||((n=t.flowchart)==null?void 0:n.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const l in e){const u=e[l];Za(u.styles)||o.forEach(c=>{r+=J2(u.id,c,u.styles)}),Za(u.textStyles)||(r+=J2(u.id,"tspan",u.textStyles))}}return r},QB=(t,e,r,n)=>{const i=ZB(t,r),a=tb(e,i,t.themeVariables);return Sl(qy(`${n}{${a}}`),Hy)},JB=(t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=Va(n),n=n.replace(/
/g,"
"),n},tE=(t="",e)=>{var i,a;const r=(a=(i=e==null?void 0:e.viewBox)==null?void 0:i.baseVal)!=null&&a.height?e.viewBox.baseVal.height+"px":VB,n=btoa(''+t+"");return``},tp=(t,e,r,n,i)=>{const a=t.append("div");a.attr("id",r),n&&a.attr("style",n);const s=a.append("svg").attr("id",e).attr("width","100%").attr("xmlns",PB);return i&&s.attr("xmlns:xlink",i),s.append("g"),t};function ep(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const eE=(t,e,r,n)=>{var i,a,s;(i=t.getElementById(e))==null||i.remove(),(a=t.getElementById(r))==null||a.remove(),(s=t.getElementById(n))==null||s.remove()},rE=async function(t,e,r){var ft,X,$,U,et,K;vu();const n=Q2(e);e=n.code;const i=tn();E.debug(i),e.length>((i==null?void 0:i.maxTextSize)??zB)&&(e=OB);const a="#"+t,s="i"+t,o="#"+s,l="d"+t,u="#"+l;let c=Dt("body");const h=i.securityLevel===NB,f=i.securityLevel===RB,p=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),h){const W=ep(Dt(r),s);c=Dt(W.nodes()[0].contentDocument.body),c.node().style.margin=0}else c=Dt(r);tp(c,t,l,`font-family: ${p}`,qB)}else{if(eE(document,t,l,s),h){const W=ep(Dt("body"),s);c=Dt(W.nodes()[0].contentDocument.body),c.node().style.margin=0}else c=Dt("body");tp(c,t,l)}let y,b;try{y=await Bu(e,{title:n.title})}catch(W){y=new E2("error"),b=W}const A=c.select(u).node(),_=y.type,M=A.firstChild,I=M.firstChild,V=(X=(ft=y.renderer).getClasses)==null?void 0:X.call(ft,e,y),N=QB(i,_,V,a),L=document.createElement("style");L.innerHTML=N,M.insertBefore(L,I);try{await y.renderer.draw(e,t,Y1,y)}catch(W){throw OT.draw(e,t,Y1),W}const q=c.select(`${u} svg`),G=(U=($=y.db).getAccTitle)==null?void 0:U.call($),Y=(K=(et=y.db).getAccDescription)==null?void 0:K.call(et);iE(_,q,G,Y),c.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",$B);let J=c.select(u).node().innerHTML;if(E.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),J=JB(J,h,De(i.arrowMarkerAbsolute)),h){const W=c.select(u+" svg").node();J=tE(J,W)}else f||(J=Ni.sanitize(J,{ADD_TAGS:YB,ADD_ATTR:XB}));if(NT(),b)throw b;const P=Dt(h?o:u).node();return P&&"remove"in P&&P.remove(),{svg:J,bindFunctions:y.db.bindFunctions}};function nE(t={}){var r;t!=null&&t.fontFamily&&!((r=t.themeVariables)!=null&&r.fontFamily)&&(t.themeVariables||(t.themeVariables={}),t.themeVariables.fontFamily=t.fontFamily),Wy(t),t!=null&&t.theme&&t.theme in gn?t.themeVariables=gn[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=gn.default.getThemeVariables(t.themeVariables));const e=typeof t=="object"?Vy(t):K1();Fo(e.logLevel),vu()}const Bu=(t,e={})=>{const{code:r}=Z2(t);return IT(r,e)};function iE(t,e,r,n){PT(e,t),qT(e,r,n,e.attr("id"))}const Ci=Object.freeze({render:rE,parse:KB,getDiagramFromText:Bu,initialize:nE,getConfig:tn,setConfig:Z1,getSiteConfig:K1,updateSiteConfig:Uy,reset:()=>{k0()},globalReset:()=>{k0(Xi)},defaultConfig:Xi});Fo(tn().logLevel),k0(tn());const aE=async()=>{E.debug("Loading registered diagrams");const e=(await Promise.allSettled(Object.entries(qi).map(async([r,{detector:n,loader:i}])=>{if(i)try{Ml(r)}catch{try{const{diagram:s,id:o}=await i();Ll(o,s,n)}catch(s){throw E.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete qi[r],s}}}))).filter(r=>r.status==="rejected");if(e.length>0){E.error(`Failed to load ${e.length} external diagrams`);for(const r of e)E.error(r);throw new Error(`Failed to load ${e.length} external diagrams`)}},sE=(t,e,r)=>{E.warn(t),R1(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},rp=async function(t={querySelector:".mermaid"}){try{await oE(t)}catch(e){if(R1(e)&&E.error(e.str),pr.parseError&&pr.parseError(e),!t.suppressErrors)throw E.error("Use the suppressErrors option to suppress these errors"),e}},oE=async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){const n=Ci.getConfig();E.debug(`${t?"":"No "}Callback function found`);let i;if(r)i=r;else if(e)i=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");E.debug(`Found ${i.length} diagrams`),(n==null?void 0:n.startOnLoad)!==void 0&&(E.debug("Start On Load: "+(n==null?void 0:n.startOnLoad)),Ci.updateSiteConfig({startOnLoad:n==null?void 0:n.startOnLoad}));const a=new Ke.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed);let s;const o=[];for(const l of Array.from(i)){E.info("Rendering diagram: "+l.id);/*! Check if previously processed */if(l.getAttribute("data-processed"))continue;l.setAttribute("data-processed","true");const u=`mermaid-${a.next()}`;s=l.innerHTML,s=Mi(Ke.entityDecode(s)).trim().replace(//gi,"
");const c=Ke.detectInit(s);c&&E.debug("Detected early reinit: ",c);try{const{svg:h,bindFunctions:f}=await sp(u,s,l);l.innerHTML=h,t&&await t(u),f&&f(l)}catch(h){sE(h,o,pr.parseError)}}if(o.length>0)throw o[0]},np=function(t){Ci.initialize(t)},lE=async function(t,e,r){E.warn("mermaid.init is deprecated. Please use run instead."),t&&np(t);const n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await rp(n)},uE=async(t,{lazyLoad:e=!0}={})=>{S6(...t),e===!1&&await aE()},ip=function(){if(pr.startOnLoad){const{startOnLoad:t}=Ci.getConfig();t&&pr.run().catch(e=>E.error("Mermaid failed to initialize",e))}};if(typeof document<"u"){/*! * Wait for document loaded before starting the execution */window.addEventListener("load",ip,!1)}const cE=function(t){pr.parseError=t},no=[];let Eu=!1;const ap=async()=>{if(!Eu){for(Eu=!0;no.length>0;){const t=no.shift();if(t)try{await t()}catch(e){E.error("Error executing queue",e)}}Eu=!1}},hE=async(t,e)=>new Promise((r,n)=>{const i=()=>new Promise((a,s)=>{Ci.parse(t,e).then(o=>{a(o),r(o)},o=>{var l;E.error("Error parsing",o),(l=pr.parseError)==null||l.call(pr,o),s(o),n(o)})});no.push(i),ap().catch(n)}),sp=(t,e,r)=>new Promise((n,i)=>{const a=()=>new Promise((s,o)=>{Ci.render(t,e,r).then(l=>{s(l),n(l)},l=>{var u;E.error("Error parsing",l),(u=pr.parseError)==null||u.call(pr,l),o(l),i(l)})});no.push(a),ap().catch(i)}),pr={startOnLoad:!0,mermaidAPI:Ci,parse:hE,render:sp,init:lE,run:rp,registerExternalDiagrams:uE,initialize:np,parseError:void 0,contentLoaded:ip,setParseErrorHandler:cE,detectType:Js};class mr{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 mr(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}}class sn{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 sn(r,mr.range(this,e))}}class tt{constructor(e,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+e,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var o=s.lexer.input;i=s.start,a=s.end,i===o.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var l=o.slice(i,a).replace(/[^]/g,"$&̲"),u;i>15?u="…"+o.slice(i-15,i):u=o.slice(0,i);var c;a+15":">","<":"<",'"':""","'":"'"},yE=/[&><"']/g;function bE(t){return String(t).replace(yE,e=>gE[e])}var op=function t(e){return e.type==="ordgroup"||e.type==="color"?e.body.length===1?t(e.body[0]):e:e.type==="font"?t(e.body):e},xE=function(e){var r=op(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},vE=function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},wE=function(e){var r=/^\s*([^\\/#]*?)(?::|�*58|�*3a)/i.exec(e);return r!=null?r[1]:"_relative"},Ct={contains:fE,deflt:dE,escape:bE,hyphenate:mE,getBaseElem:op,isCharacterBox:xE,protocolFromUrl:wE},io={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 "},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 ",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 ",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 ",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 ",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 ",cliProcessor:t=>t==="Infinity"?1/0:parseInt(t)},globalGroup:{type:"boolean",cli:!1}};function CE(t){if(t.default)return t.default;var e=t.type,r=Array.isArray(e)?e[0]:e;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}class Fu{constructor(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 in io)if(io.hasOwnProperty(r)){var n=io[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:CE(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 tt("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){e.url&&!e.protocol&&(e.protocol=Ct.protocolFromUrl(e.url));var r=typeof this.trust=="function"?this.trust(e):this.trust;return!!r}}class Xn{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 on[kE[this.id]]}sub(){return on[_E[this.id]]}fracNum(){return on[SE[this.id]]}fracDen(){return on[TE[this.id]]}cramp(){return on[AE[this.id]]}text(){return on[BE[this.id]]}isTight(){return this.size>=2}}var Lu=0,ao=1,ha=2,Tn=3,os=4,_r=5,fa=6,We=7,on=[new Xn(Lu,0,!1),new Xn(ao,0,!0),new Xn(ha,1,!1),new Xn(Tn,1,!0),new Xn(os,2,!1),new Xn(_r,2,!0),new Xn(fa,3,!1),new Xn(We,3,!0)],kE=[os,_r,os,_r,fa,We,fa,We],_E=[_r,_r,_r,_r,We,We,We,We],SE=[ha,Tn,os,_r,fa,We,fa,We],TE=[Tn,Tn,_r,_r,We,We,We,We],AE=[ao,ao,Tn,Tn,_r,_r,We,We],BE=[Lu,ao,ha,Tn,ha,Tn,ha,Tn],xt={DISPLAY:on[Lu],TEXT:on[ha],SCRIPT:on[os],SCRIPTSCRIPT:on[fa]},Mu=[{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 EE(t){for(var e=0;e=i[0]&&t<=i[1])return r.name}return null}var so=[];Mu.forEach(t=>t.blocks.forEach(e=>so.push(...e)));function lp(t){for(var e=0;e=so[e]&&t<=so[e+1])return!0;return!1}var da=80,FE=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"},LE=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"},ME=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"},DE=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"},IE=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"},zE=function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},OE=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"},NE=function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=FE(r,da);break;case"sqrtSize1":i=LE(r,da);break;case"sqrtSize2":i=ME(r,da);break;case"sqrtSize3":i=DE(r,da);break;case"sqrtSize4":i=IE(r,da);break;case"sqrtTall":i=OE(r,da,n)}return i},RE=function(e,r){switch(e){case"⎜":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"∣":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"∥":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"⎟":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"⎢":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"⎥":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"⎪":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"⏐":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"‖":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},up={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:`M40 281 V428 H0 V94 H40 V241 H400000 v40z M40 281 V428 H0 V94 H40 V241 H400000 v40z`,leftmapsto:`M40 281 V448H0V74H40V241H400000v40z 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:`M0 50 h400000 v40H0z m0 194h40000v40H0z 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:`M399960 241 V94 h40 V428 h-40 V281 H0 v-40z M399960 241 V94 h40 V428 h-40 V281 H0 v-40z`,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`},PE=function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84 H403z M403 1759 V0 H319 V1759 v`+r+" v1759 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.")}};class ls{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 Ct.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),r=0;rr.toText();return this.children.map(e).join("")}}var ln={"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]}},oo={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]},cp={Å:"A",Ð:"D",Þ:"o",å:"a",ð:"d",þ:"o",А:"A",Б:"B",В:"B",Г:"F",Д:"A",Е:"E",Ж:"K",З:"3",И:"N",Й:"N",К:"K",Л:"N",М:"M",Н:"H",О:"O",П:"N",Р:"P",С:"C",Т:"T",У:"y",Ф:"O",Х:"X",Ц:"U",Ч:"h",Ш:"W",Щ:"W",Ъ:"B",Ы:"X",Ь:"B",Э:"3",Ю:"X",Я:"R",а:"a",б:"b",в:"a",г:"r",д:"y",е:"e",ж:"m",з:"e",и:"n",й:"n",к:"n",л:"n",м:"m",н:"n",о:"o",п:"n",р:"p",с:"c",т:"o",у:"y",ф:"b",х:"x",ц:"n",ч:"n",ш:"w",щ:"w",ъ:"a",ы:"m",ь:"a",э:"e",ю:"m",я:"r"};function qE(t,e){ln[t]=e}function Du(t,e,r){if(!ln[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=ln[e][n];if(!i&&t[0]in cp&&(n=cp[t[0]].charCodeAt(0),i=ln[e][n]),!i&&r==="text"&&lp(n)&&(i=ln[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}var Iu={};function $E(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!Iu[e]){var r=Iu[e]={cssEmPerMu:oo.quad[e]/18};for(var n in oo)oo.hasOwnProperty(n)&&(r[n]=oo[n][e])}return Iu[e]}var HE=[[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]],hp=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],fp=function(e,r){return r.size<2?e:HE[e-1][r.size-1]};class An{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||An.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=hp[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};for(var n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return new An(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:fp(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:hp[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=fp(An.BASESIZE,e);return this.size===r&&this.textSize===An.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!==An.BASESIZE?["sizing","reset-size"+this.size,"size"+An.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=$E(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}}An.BASESIZE=6;var zu={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},VE={ex:!0,em:!0,mu:!0},dp=function(e){return typeof e!="string"&&(e=e.unit),e in zu||e in VE||e==="ex"},ce=function(e,r){var n;if(e.unit in zu)n=zu[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 tt("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},nt=function(e){return+e.toFixed(4)+"em"},Kn=function(e){return e.filter(r=>r).join(" ")},pp=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)}},mp=function(e){var r=document.createElement(e);r.className=Kn(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a",r};class us{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,pp.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return Ct.contains(this.classes,e)}toNode(){return mp.call(this,"span")}toMarkup(){return gp.call(this,"span")}}class Ou{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,pp.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return Ct.contains(this.classes,e)}toNode(){return mp.call(this,"a")}toMarkup(){return gp.call(this,"a")}}class WE{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.style=n}hasClass(e){return Ct.contains(this.classes,e)}toNode(){var e=document.createElement("img");e.src=this.src,e.alt=this.alt,e.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(e.style[r]=this.style[r]);return e}toMarkup(){var e=""+this.alt+"0&&(r=document.createElement("span"),r.style.marginRight=nt(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=Kn(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=Ct.hyphenate(i)+":"+this.style[i]+";");n&&(e=!0,r+=' style="'+Ct.escape(n)+'"');var a=Ct.escape(this.text);return e?(r+=">",r+=a,r+="",r):a}}class Bn{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 in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i":""}}class Nu{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 in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e=" but got "+String(t)+".")}var jE={bin:1,close:1,inner:1,open:1,punct:1,rel:1},YE={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1},re={math:{},text:{}};function d(t,e,r,n,i,a){re[t][i]={font:e,group:r,replace:n},a&&n&&(re[t][n]=re[t][i])}var m="math",j="text",g="main",k="ams",le="accent-token",ut="bin",Ue="close",pa="inner",vt="mathord",ke="op-token",gr="open",lo="punct",S="rel",En="spacing",B="textord";d(m,g,S,"≡","\\equiv",!0),d(m,g,S,"≺","\\prec",!0),d(m,g,S,"≻","\\succ",!0),d(m,g,S,"∼","\\sim",!0),d(m,g,S,"⊥","\\perp"),d(m,g,S,"⪯","\\preceq",!0),d(m,g,S,"⪰","\\succeq",!0),d(m,g,S,"≃","\\simeq",!0),d(m,g,S,"∣","\\mid",!0),d(m,g,S,"≪","\\ll",!0),d(m,g,S,"≫","\\gg",!0),d(m,g,S,"≍","\\asymp",!0),d(m,g,S,"∥","\\parallel"),d(m,g,S,"⋈","\\bowtie",!0),d(m,g,S,"⌣","\\smile",!0),d(m,g,S,"⊑","\\sqsubseteq",!0),d(m,g,S,"⊒","\\sqsupseteq",!0),d(m,g,S,"≐","\\doteq",!0),d(m,g,S,"⌢","\\frown",!0),d(m,g,S,"∋","\\ni",!0),d(m,g,S,"∝","\\propto",!0),d(m,g,S,"⊢","\\vdash",!0),d(m,g,S,"⊣","\\dashv",!0),d(m,g,S,"∋","\\owns"),d(m,g,lo,".","\\ldotp"),d(m,g,lo,"⋅","\\cdotp"),d(m,g,B,"#","\\#"),d(j,g,B,"#","\\#"),d(m,g,B,"&","\\&"),d(j,g,B,"&","\\&"),d(m,g,B,"ℵ","\\aleph",!0),d(m,g,B,"∀","\\forall",!0),d(m,g,B,"ℏ","\\hbar",!0),d(m,g,B,"∃","\\exists",!0),d(m,g,B,"∇","\\nabla",!0),d(m,g,B,"♭","\\flat",!0),d(m,g,B,"ℓ","\\ell",!0),d(m,g,B,"♮","\\natural",!0),d(m,g,B,"♣","\\clubsuit",!0),d(m,g,B,"℘","\\wp",!0),d(m,g,B,"♯","\\sharp",!0),d(m,g,B,"♢","\\diamondsuit",!0),d(m,g,B,"ℜ","\\Re",!0),d(m,g,B,"♡","\\heartsuit",!0),d(m,g,B,"ℑ","\\Im",!0),d(m,g,B,"♠","\\spadesuit",!0),d(m,g,B,"§","\\S",!0),d(j,g,B,"§","\\S"),d(m,g,B,"¶","\\P",!0),d(j,g,B,"¶","\\P"),d(m,g,B,"†","\\dag"),d(j,g,B,"†","\\dag"),d(j,g,B,"†","\\textdagger"),d(m,g,B,"‡","\\ddag"),d(j,g,B,"‡","\\ddag"),d(j,g,B,"‡","\\textdaggerdbl"),d(m,g,Ue,"⎱","\\rmoustache",!0),d(m,g,gr,"⎰","\\lmoustache",!0),d(m,g,Ue,"⟯","\\rgroup",!0),d(m,g,gr,"⟮","\\lgroup",!0),d(m,g,ut,"∓","\\mp",!0),d(m,g,ut,"⊖","\\ominus",!0),d(m,g,ut,"⊎","\\uplus",!0),d(m,g,ut,"⊓","\\sqcap",!0),d(m,g,ut,"∗","\\ast"),d(m,g,ut,"⊔","\\sqcup",!0),d(m,g,ut,"◯","\\bigcirc",!0),d(m,g,ut,"∙","\\bullet",!0),d(m,g,ut,"‡","\\ddagger"),d(m,g,ut,"≀","\\wr",!0),d(m,g,ut,"⨿","\\amalg"),d(m,g,ut,"&","\\And"),d(m,g,S,"⟵","\\longleftarrow",!0),d(m,g,S,"⇐","\\Leftarrow",!0),d(m,g,S,"⟸","\\Longleftarrow",!0),d(m,g,S,"⟶","\\longrightarrow",!0),d(m,g,S,"⇒","\\Rightarrow",!0),d(m,g,S,"⟹","\\Longrightarrow",!0),d(m,g,S,"↔","\\leftrightarrow",!0),d(m,g,S,"⟷","\\longleftrightarrow",!0),d(m,g,S,"⇔","\\Leftrightarrow",!0),d(m,g,S,"⟺","\\Longleftrightarrow",!0),d(m,g,S,"↦","\\mapsto",!0),d(m,g,S,"⟼","\\longmapsto",!0),d(m,g,S,"↗","\\nearrow",!0),d(m,g,S,"↩","\\hookleftarrow",!0),d(m,g,S,"↪","\\hookrightarrow",!0),d(m,g,S,"↘","\\searrow",!0),d(m,g,S,"↼","\\leftharpoonup",!0),d(m,g,S,"⇀","\\rightharpoonup",!0),d(m,g,S,"↙","\\swarrow",!0),d(m,g,S,"↽","\\leftharpoondown",!0),d(m,g,S,"⇁","\\rightharpoondown",!0),d(m,g,S,"↖","\\nwarrow",!0),d(m,g,S,"⇌","\\rightleftharpoons",!0),d(m,k,S,"≮","\\nless",!0),d(m,k,S,"","\\@nleqslant"),d(m,k,S,"","\\@nleqq"),d(m,k,S,"⪇","\\lneq",!0),d(m,k,S,"≨","\\lneqq",!0),d(m,k,S,"","\\@lvertneqq"),d(m,k,S,"⋦","\\lnsim",!0),d(m,k,S,"⪉","\\lnapprox",!0),d(m,k,S,"⊀","\\nprec",!0),d(m,k,S,"⋠","\\npreceq",!0),d(m,k,S,"⋨","\\precnsim",!0),d(m,k,S,"⪹","\\precnapprox",!0),d(m,k,S,"≁","\\nsim",!0),d(m,k,S,"","\\@nshortmid"),d(m,k,S,"∤","\\nmid",!0),d(m,k,S,"⊬","\\nvdash",!0),d(m,k,S,"⊭","\\nvDash",!0),d(m,k,S,"⋪","\\ntriangleleft"),d(m,k,S,"⋬","\\ntrianglelefteq",!0),d(m,k,S,"⊊","\\subsetneq",!0),d(m,k,S,"","\\@varsubsetneq"),d(m,k,S,"⫋","\\subsetneqq",!0),d(m,k,S,"","\\@varsubsetneqq"),d(m,k,S,"≯","\\ngtr",!0),d(m,k,S,"","\\@ngeqslant"),d(m,k,S,"","\\@ngeqq"),d(m,k,S,"⪈","\\gneq",!0),d(m,k,S,"≩","\\gneqq",!0),d(m,k,S,"","\\@gvertneqq"),d(m,k,S,"⋧","\\gnsim",!0),d(m,k,S,"⪊","\\gnapprox",!0),d(m,k,S,"⊁","\\nsucc",!0),d(m,k,S,"⋡","\\nsucceq",!0),d(m,k,S,"⋩","\\succnsim",!0),d(m,k,S,"⪺","\\succnapprox",!0),d(m,k,S,"≆","\\ncong",!0),d(m,k,S,"","\\@nshortparallel"),d(m,k,S,"∦","\\nparallel",!0),d(m,k,S,"⊯","\\nVDash",!0),d(m,k,S,"⋫","\\ntriangleright"),d(m,k,S,"⋭","\\ntrianglerighteq",!0),d(m,k,S,"","\\@nsupseteqq"),d(m,k,S,"⊋","\\supsetneq",!0),d(m,k,S,"","\\@varsupsetneq"),d(m,k,S,"⫌","\\supsetneqq",!0),d(m,k,S,"","\\@varsupsetneqq"),d(m,k,S,"⊮","\\nVdash",!0),d(m,k,S,"⪵","\\precneqq",!0),d(m,k,S,"⪶","\\succneqq",!0),d(m,k,S,"","\\@nsubseteqq"),d(m,k,ut,"⊴","\\unlhd"),d(m,k,ut,"⊵","\\unrhd"),d(m,k,S,"↚","\\nleftarrow",!0),d(m,k,S,"↛","\\nrightarrow",!0),d(m,k,S,"⇍","\\nLeftarrow",!0),d(m,k,S,"⇏","\\nRightarrow",!0),d(m,k,S,"↮","\\nleftrightarrow",!0),d(m,k,S,"⇎","\\nLeftrightarrow",!0),d(m,k,S,"△","\\vartriangle"),d(m,k,B,"ℏ","\\hslash"),d(m,k,B,"▽","\\triangledown"),d(m,k,B,"◊","\\lozenge"),d(m,k,B,"Ⓢ","\\circledS"),d(m,k,B,"®","\\circledR"),d(j,k,B,"®","\\circledR"),d(m,k,B,"∡","\\measuredangle",!0),d(m,k,B,"∄","\\nexists"),d(m,k,B,"℧","\\mho"),d(m,k,B,"Ⅎ","\\Finv",!0),d(m,k,B,"⅁","\\Game",!0),d(m,k,B,"‵","\\backprime"),d(m,k,B,"▲","\\blacktriangle"),d(m,k,B,"▼","\\blacktriangledown"),d(m,k,B,"■","\\blacksquare"),d(m,k,B,"⧫","\\blacklozenge"),d(m,k,B,"★","\\bigstar"),d(m,k,B,"∢","\\sphericalangle",!0),d(m,k,B,"∁","\\complement",!0),d(m,k,B,"ð","\\eth",!0),d(j,g,B,"ð","ð"),d(m,k,B,"╱","\\diagup"),d(m,k,B,"╲","\\diagdown"),d(m,k,B,"□","\\square"),d(m,k,B,"□","\\Box"),d(m,k,B,"◊","\\Diamond"),d(m,k,B,"¥","\\yen",!0),d(j,k,B,"¥","\\yen",!0),d(m,k,B,"✓","\\checkmark",!0),d(j,k,B,"✓","\\checkmark"),d(m,k,B,"ℶ","\\beth",!0),d(m,k,B,"ℸ","\\daleth",!0),d(m,k,B,"ℷ","\\gimel",!0),d(m,k,B,"ϝ","\\digamma",!0),d(m,k,B,"ϰ","\\varkappa"),d(m,k,gr,"┌","\\@ulcorner",!0),d(m,k,Ue,"┐","\\@urcorner",!0),d(m,k,gr,"└","\\@llcorner",!0),d(m,k,Ue,"┘","\\@lrcorner",!0),d(m,k,S,"≦","\\leqq",!0),d(m,k,S,"⩽","\\leqslant",!0),d(m,k,S,"⪕","\\eqslantless",!0),d(m,k,S,"≲","\\lesssim",!0),d(m,k,S,"⪅","\\lessapprox",!0),d(m,k,S,"≊","\\approxeq",!0),d(m,k,ut,"⋖","\\lessdot"),d(m,k,S,"⋘","\\lll",!0),d(m,k,S,"≶","\\lessgtr",!0),d(m,k,S,"⋚","\\lesseqgtr",!0),d(m,k,S,"⪋","\\lesseqqgtr",!0),d(m,k,S,"≑","\\doteqdot"),d(m,k,S,"≓","\\risingdotseq",!0),d(m,k,S,"≒","\\fallingdotseq",!0),d(m,k,S,"∽","\\backsim",!0),d(m,k,S,"⋍","\\backsimeq",!0),d(m,k,S,"⫅","\\subseteqq",!0),d(m,k,S,"⋐","\\Subset",!0),d(m,k,S,"⊏","\\sqsubset",!0),d(m,k,S,"≼","\\preccurlyeq",!0),d(m,k,S,"⋞","\\curlyeqprec",!0),d(m,k,S,"≾","\\precsim",!0),d(m,k,S,"⪷","\\precapprox",!0),d(m,k,S,"⊲","\\vartriangleleft"),d(m,k,S,"⊴","\\trianglelefteq"),d(m,k,S,"⊨","\\vDash",!0),d(m,k,S,"⊪","\\Vvdash",!0),d(m,k,S,"⌣","\\smallsmile"),d(m,k,S,"⌢","\\smallfrown"),d(m,k,S,"≏","\\bumpeq",!0),d(m,k,S,"≎","\\Bumpeq",!0),d(m,k,S,"≧","\\geqq",!0),d(m,k,S,"⩾","\\geqslant",!0),d(m,k,S,"⪖","\\eqslantgtr",!0),d(m,k,S,"≳","\\gtrsim",!0),d(m,k,S,"⪆","\\gtrapprox",!0),d(m,k,ut,"⋗","\\gtrdot"),d(m,k,S,"⋙","\\ggg",!0),d(m,k,S,"≷","\\gtrless",!0),d(m,k,S,"⋛","\\gtreqless",!0),d(m,k,S,"⪌","\\gtreqqless",!0),d(m,k,S,"≖","\\eqcirc",!0),d(m,k,S,"≗","\\circeq",!0),d(m,k,S,"≜","\\triangleq",!0),d(m,k,S,"∼","\\thicksim"),d(m,k,S,"≈","\\thickapprox"),d(m,k,S,"⫆","\\supseteqq",!0),d(m,k,S,"⋑","\\Supset",!0),d(m,k,S,"⊐","\\sqsupset",!0),d(m,k,S,"≽","\\succcurlyeq",!0),d(m,k,S,"⋟","\\curlyeqsucc",!0),d(m,k,S,"≿","\\succsim",!0),d(m,k,S,"⪸","\\succapprox",!0),d(m,k,S,"⊳","\\vartriangleright"),d(m,k,S,"⊵","\\trianglerighteq"),d(m,k,S,"⊩","\\Vdash",!0),d(m,k,S,"∣","\\shortmid"),d(m,k,S,"∥","\\shortparallel"),d(m,k,S,"≬","\\between",!0),d(m,k,S,"⋔","\\pitchfork",!0),d(m,k,S,"∝","\\varpropto"),d(m,k,S,"◀","\\blacktriangleleft"),d(m,k,S,"∴","\\therefore",!0),d(m,k,S,"∍","\\backepsilon"),d(m,k,S,"▶","\\blacktriangleright"),d(m,k,S,"∵","\\because",!0),d(m,k,S,"⋘","\\llless"),d(m,k,S,"⋙","\\gggtr"),d(m,k,ut,"⊲","\\lhd"),d(m,k,ut,"⊳","\\rhd"),d(m,k,S,"≂","\\eqsim",!0),d(m,g,S,"⋈","\\Join"),d(m,k,S,"≑","\\Doteq",!0),d(m,k,ut,"∔","\\dotplus",!0),d(m,k,ut,"∖","\\smallsetminus"),d(m,k,ut,"⋒","\\Cap",!0),d(m,k,ut,"⋓","\\Cup",!0),d(m,k,ut,"⩞","\\doublebarwedge",!0),d(m,k,ut,"⊟","\\boxminus",!0),d(m,k,ut,"⊞","\\boxplus",!0),d(m,k,ut,"⋇","\\divideontimes",!0),d(m,k,ut,"⋉","\\ltimes",!0),d(m,k,ut,"⋊","\\rtimes",!0),d(m,k,ut,"⋋","\\leftthreetimes",!0),d(m,k,ut,"⋌","\\rightthreetimes",!0),d(m,k,ut,"⋏","\\curlywedge",!0),d(m,k,ut,"⋎","\\curlyvee",!0),d(m,k,ut,"⊝","\\circleddash",!0),d(m,k,ut,"⊛","\\circledast",!0),d(m,k,ut,"⋅","\\centerdot"),d(m,k,ut,"⊺","\\intercal",!0),d(m,k,ut,"⋒","\\doublecap"),d(m,k,ut,"⋓","\\doublecup"),d(m,k,ut,"⊠","\\boxtimes",!0),d(m,k,S,"⇢","\\dashrightarrow",!0),d(m,k,S,"⇠","\\dashleftarrow",!0),d(m,k,S,"⇇","\\leftleftarrows",!0),d(m,k,S,"⇆","\\leftrightarrows",!0),d(m,k,S,"⇚","\\Lleftarrow",!0),d(m,k,S,"↞","\\twoheadleftarrow",!0),d(m,k,S,"↢","\\leftarrowtail",!0),d(m,k,S,"↫","\\looparrowleft",!0),d(m,k,S,"⇋","\\leftrightharpoons",!0),d(m,k,S,"↶","\\curvearrowleft",!0),d(m,k,S,"↺","\\circlearrowleft",!0),d(m,k,S,"↰","\\Lsh",!0),d(m,k,S,"⇈","\\upuparrows",!0),d(m,k,S,"↿","\\upharpoonleft",!0),d(m,k,S,"⇃","\\downharpoonleft",!0),d(m,g,S,"⊶","\\origof",!0),d(m,g,S,"⊷","\\imageof",!0),d(m,k,S,"⊸","\\multimap",!0),d(m,k,S,"↭","\\leftrightsquigarrow",!0),d(m,k,S,"⇉","\\rightrightarrows",!0),d(m,k,S,"⇄","\\rightleftarrows",!0),d(m,k,S,"↠","\\twoheadrightarrow",!0),d(m,k,S,"↣","\\rightarrowtail",!0),d(m,k,S,"↬","\\looparrowright",!0),d(m,k,S,"↷","\\curvearrowright",!0),d(m,k,S,"↻","\\circlearrowright",!0),d(m,k,S,"↱","\\Rsh",!0),d(m,k,S,"⇊","\\downdownarrows",!0),d(m,k,S,"↾","\\upharpoonright",!0),d(m,k,S,"⇂","\\downharpoonright",!0),d(m,k,S,"⇝","\\rightsquigarrow",!0),d(m,k,S,"⇝","\\leadsto"),d(m,k,S,"⇛","\\Rrightarrow",!0),d(m,k,S,"↾","\\restriction"),d(m,g,B,"‘","`"),d(m,g,B,"$","\\$"),d(j,g,B,"$","\\$"),d(j,g,B,"$","\\textdollar"),d(m,g,B,"%","\\%"),d(j,g,B,"%","\\%"),d(m,g,B,"_","\\_"),d(j,g,B,"_","\\_"),d(j,g,B,"_","\\textunderscore"),d(m,g,B,"∠","\\angle",!0),d(m,g,B,"∞","\\infty",!0),d(m,g,B,"′","\\prime"),d(m,g,B,"△","\\triangle"),d(m,g,B,"Γ","\\Gamma",!0),d(m,g,B,"Δ","\\Delta",!0),d(m,g,B,"Θ","\\Theta",!0),d(m,g,B,"Λ","\\Lambda",!0),d(m,g,B,"Ξ","\\Xi",!0),d(m,g,B,"Π","\\Pi",!0),d(m,g,B,"Σ","\\Sigma",!0),d(m,g,B,"Υ","\\Upsilon",!0),d(m,g,B,"Φ","\\Phi",!0),d(m,g,B,"Ψ","\\Psi",!0),d(m,g,B,"Ω","\\Omega",!0),d(m,g,B,"A","Α"),d(m,g,B,"B","Β"),d(m,g,B,"E","Ε"),d(m,g,B,"Z","Ζ"),d(m,g,B,"H","Η"),d(m,g,B,"I","Ι"),d(m,g,B,"K","Κ"),d(m,g,B,"M","Μ"),d(m,g,B,"N","Ν"),d(m,g,B,"O","Ο"),d(m,g,B,"P","Ρ"),d(m,g,B,"T","Τ"),d(m,g,B,"X","Χ"),d(m,g,B,"¬","\\neg",!0),d(m,g,B,"¬","\\lnot"),d(m,g,B,"⊤","\\top"),d(m,g,B,"⊥","\\bot"),d(m,g,B,"∅","\\emptyset"),d(m,k,B,"∅","\\varnothing"),d(m,g,vt,"α","\\alpha",!0),d(m,g,vt,"β","\\beta",!0),d(m,g,vt,"γ","\\gamma",!0),d(m,g,vt,"δ","\\delta",!0),d(m,g,vt,"ϵ","\\epsilon",!0),d(m,g,vt,"ζ","\\zeta",!0),d(m,g,vt,"η","\\eta",!0),d(m,g,vt,"θ","\\theta",!0),d(m,g,vt,"ι","\\iota",!0),d(m,g,vt,"κ","\\kappa",!0),d(m,g,vt,"λ","\\lambda",!0),d(m,g,vt,"μ","\\mu",!0),d(m,g,vt,"ν","\\nu",!0),d(m,g,vt,"ξ","\\xi",!0),d(m,g,vt,"ο","\\omicron",!0),d(m,g,vt,"π","\\pi",!0),d(m,g,vt,"ρ","\\rho",!0),d(m,g,vt,"σ","\\sigma",!0),d(m,g,vt,"τ","\\tau",!0),d(m,g,vt,"υ","\\upsilon",!0),d(m,g,vt,"ϕ","\\phi",!0),d(m,g,vt,"χ","\\chi",!0),d(m,g,vt,"ψ","\\psi",!0),d(m,g,vt,"ω","\\omega",!0),d(m,g,vt,"ε","\\varepsilon",!0),d(m,g,vt,"ϑ","\\vartheta",!0),d(m,g,vt,"ϖ","\\varpi",!0),d(m,g,vt,"ϱ","\\varrho",!0),d(m,g,vt,"ς","\\varsigma",!0),d(m,g,vt,"φ","\\varphi",!0),d(m,g,ut,"∗","*",!0),d(m,g,ut,"+","+"),d(m,g,ut,"−","-",!0),d(m,g,ut,"⋅","\\cdot",!0),d(m,g,ut,"∘","\\circ",!0),d(m,g,ut,"÷","\\div",!0),d(m,g,ut,"±","\\pm",!0),d(m,g,ut,"×","\\times",!0),d(m,g,ut,"∩","\\cap",!0),d(m,g,ut,"∪","\\cup",!0),d(m,g,ut,"∖","\\setminus",!0),d(m,g,ut,"∧","\\land"),d(m,g,ut,"∨","\\lor"),d(m,g,ut,"∧","\\wedge",!0),d(m,g,ut,"∨","\\vee",!0),d(m,g,B,"√","\\surd"),d(m,g,gr,"⟨","\\langle",!0),d(m,g,gr,"∣","\\lvert"),d(m,g,gr,"∥","\\lVert"),d(m,g,Ue,"?","?"),d(m,g,Ue,"!","!"),d(m,g,Ue,"⟩","\\rangle",!0),d(m,g,Ue,"∣","\\rvert"),d(m,g,Ue,"∥","\\rVert"),d(m,g,S,"=","="),d(m,g,S,":",":"),d(m,g,S,"≈","\\approx",!0),d(m,g,S,"≅","\\cong",!0),d(m,g,S,"≥","\\ge"),d(m,g,S,"≥","\\geq",!0),d(m,g,S,"←","\\gets"),d(m,g,S,">","\\gt",!0),d(m,g,S,"∈","\\in",!0),d(m,g,S,"","\\@not"),d(m,g,S,"⊂","\\subset",!0),d(m,g,S,"⊃","\\supset",!0),d(m,g,S,"⊆","\\subseteq",!0),d(m,g,S,"⊇","\\supseteq",!0),d(m,k,S,"⊈","\\nsubseteq",!0),d(m,k,S,"⊉","\\nsupseteq",!0),d(m,g,S,"⊨","\\models"),d(m,g,S,"←","\\leftarrow",!0),d(m,g,S,"≤","\\le"),d(m,g,S,"≤","\\leq",!0),d(m,g,S,"<","\\lt",!0),d(m,g,S,"→","\\rightarrow",!0),d(m,g,S,"→","\\to"),d(m,k,S,"≱","\\ngeq",!0),d(m,k,S,"≰","\\nleq",!0),d(m,g,En," ","\\ "),d(m,g,En," ","\\space"),d(m,g,En," ","\\nobreakspace"),d(j,g,En," ","\\ "),d(j,g,En," "," "),d(j,g,En," ","\\space"),d(j,g,En," ","\\nobreakspace"),d(m,g,En,null,"\\nobreak"),d(m,g,En,null,"\\allowbreak"),d(m,g,lo,",",","),d(m,g,lo,";",";"),d(m,k,ut,"⊼","\\barwedge",!0),d(m,k,ut,"⊻","\\veebar",!0),d(m,g,ut,"⊙","\\odot",!0),d(m,g,ut,"⊕","\\oplus",!0),d(m,g,ut,"⊗","\\otimes",!0),d(m,g,B,"∂","\\partial",!0),d(m,g,ut,"⊘","\\oslash",!0),d(m,k,ut,"⊚","\\circledcirc",!0),d(m,k,ut,"⊡","\\boxdot",!0),d(m,g,ut,"△","\\bigtriangleup"),d(m,g,ut,"▽","\\bigtriangledown"),d(m,g,ut,"†","\\dagger"),d(m,g,ut,"⋄","\\diamond"),d(m,g,ut,"⋆","\\star"),d(m,g,ut,"◃","\\triangleleft"),d(m,g,ut,"▹","\\triangleright"),d(m,g,gr,"{","\\{"),d(j,g,B,"{","\\{"),d(j,g,B,"{","\\textbraceleft"),d(m,g,Ue,"}","\\}"),d(j,g,B,"}","\\}"),d(j,g,B,"}","\\textbraceright"),d(m,g,gr,"{","\\lbrace"),d(m,g,Ue,"}","\\rbrace"),d(m,g,gr,"[","\\lbrack",!0),d(j,g,B,"[","\\lbrack",!0),d(m,g,Ue,"]","\\rbrack",!0),d(j,g,B,"]","\\rbrack",!0),d(m,g,gr,"(","\\lparen",!0),d(m,g,Ue,")","\\rparen",!0),d(j,g,B,"<","\\textless",!0),d(j,g,B,">","\\textgreater",!0),d(m,g,gr,"⌊","\\lfloor",!0),d(m,g,Ue,"⌋","\\rfloor",!0),d(m,g,gr,"⌈","\\lceil",!0),d(m,g,Ue,"⌉","\\rceil",!0),d(m,g,B,"\\","\\backslash"),d(m,g,B,"∣","|"),d(m,g,B,"∣","\\vert"),d(j,g,B,"|","\\textbar",!0),d(m,g,B,"∥","\\|"),d(m,g,B,"∥","\\Vert"),d(j,g,B,"∥","\\textbardbl"),d(j,g,B,"~","\\textasciitilde"),d(j,g,B,"\\","\\textbackslash"),d(j,g,B,"^","\\textasciicircum"),d(m,g,S,"↑","\\uparrow",!0),d(m,g,S,"⇑","\\Uparrow",!0),d(m,g,S,"↓","\\downarrow",!0),d(m,g,S,"⇓","\\Downarrow",!0),d(m,g,S,"↕","\\updownarrow",!0),d(m,g,S,"⇕","\\Updownarrow",!0),d(m,g,ke,"∐","\\coprod"),d(m,g,ke,"⋁","\\bigvee"),d(m,g,ke,"⋀","\\bigwedge"),d(m,g,ke,"⨄","\\biguplus"),d(m,g,ke,"⋂","\\bigcap"),d(m,g,ke,"⋃","\\bigcup"),d(m,g,ke,"∫","\\int"),d(m,g,ke,"∫","\\intop"),d(m,g,ke,"∬","\\iint"),d(m,g,ke,"∭","\\iiint"),d(m,g,ke,"∏","\\prod"),d(m,g,ke,"∑","\\sum"),d(m,g,ke,"⨂","\\bigotimes"),d(m,g,ke,"⨁","\\bigoplus"),d(m,g,ke,"⨀","\\bigodot"),d(m,g,ke,"∮","\\oint"),d(m,g,ke,"∯","\\oiint"),d(m,g,ke,"∰","\\oiiint"),d(m,g,ke,"⨆","\\bigsqcup"),d(m,g,ke,"∫","\\smallint"),d(j,g,pa,"…","\\textellipsis"),d(m,g,pa,"…","\\mathellipsis"),d(j,g,pa,"…","\\ldots",!0),d(m,g,pa,"…","\\ldots",!0),d(m,g,pa,"⋯","\\@cdots",!0),d(m,g,pa,"⋱","\\ddots",!0),d(m,g,B,"⋮","\\varvdots"),d(m,g,le,"ˊ","\\acute"),d(m,g,le,"ˋ","\\grave"),d(m,g,le,"¨","\\ddot"),d(m,g,le,"~","\\tilde"),d(m,g,le,"ˉ","\\bar"),d(m,g,le,"˘","\\breve"),d(m,g,le,"ˇ","\\check"),d(m,g,le,"^","\\hat"),d(m,g,le,"⃗","\\vec"),d(m,g,le,"˙","\\dot"),d(m,g,le,"˚","\\mathring"),d(m,g,vt,"","\\@imath"),d(m,g,vt,"","\\@jmath"),d(m,g,B,"ı","ı"),d(m,g,B,"ȷ","ȷ"),d(j,g,B,"ı","\\i",!0),d(j,g,B,"ȷ","\\j",!0),d(j,g,B,"ß","\\ss",!0),d(j,g,B,"æ","\\ae",!0),d(j,g,B,"œ","\\oe",!0),d(j,g,B,"ø","\\o",!0),d(j,g,B,"Æ","\\AE",!0),d(j,g,B,"Œ","\\OE",!0),d(j,g,B,"Ø","\\O",!0),d(j,g,le,"ˊ","\\'"),d(j,g,le,"ˋ","\\`"),d(j,g,le,"ˆ","\\^"),d(j,g,le,"˜","\\~"),d(j,g,le,"ˉ","\\="),d(j,g,le,"˘","\\u"),d(j,g,le,"˙","\\."),d(j,g,le,"¸","\\c"),d(j,g,le,"˚","\\r"),d(j,g,le,"ˇ","\\v"),d(j,g,le,"¨",'\\"'),d(j,g,le,"˝","\\H"),d(j,g,le,"◯","\\textcircled");var bp={"--":!0,"---":!0,"``":!0,"''":!0};d(j,g,B,"–","--",!0),d(j,g,B,"–","\\textendash"),d(j,g,B,"—","---",!0),d(j,g,B,"—","\\textemdash"),d(j,g,B,"‘","`",!0),d(j,g,B,"‘","\\textquoteleft"),d(j,g,B,"’","'",!0),d(j,g,B,"’","\\textquoteright"),d(j,g,B,"“","``",!0),d(j,g,B,"“","\\textquotedblleft"),d(j,g,B,"”","''",!0),d(j,g,B,"”","\\textquotedblright"),d(m,g,B,"°","\\degree",!0),d(j,g,B,"°","\\degree"),d(j,g,B,"°","\\textdegree",!0),d(m,g,B,"£","\\pounds"),d(m,g,B,"£","\\mathsterling",!0),d(j,g,B,"£","\\pounds"),d(j,g,B,"£","\\textsterling",!0),d(m,k,B,"✠","\\maltese"),d(j,k,B,"✠","\\maltese");for(var xp='0123456789/@."',Ru=0;Ru0)return Ur(a,u,i,r,s.concat(c));if(l){var h,f;if(l==="boldsymbol"){var p=ZE(a,i,r,s,n);h=p.fontName,f=[p.fontClass]}else o?(h=Tp[l].fontName,f=[l]):(h=mo(l,r.fontWeight,r.fontShape),f=[l,r.fontWeight,r.fontShape]);if(po(a,h,i).metrics)return Ur(a,h,i,r,s.concat(f));if(bp.hasOwnProperty(a)&&h.slice(0,10)==="Typewriter"){for(var y=[],b=0;b{if(Kn(t.classes)!==Kn(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize)return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in t.style)if(t.style.hasOwnProperty(n)&&t.style[n]!==e.style[n])return!1;for(var i in e.style)if(e.style.hasOwnProperty(i)&&t.style[i]!==e.style[i])return!1;return!0},tF=t=>{for(var e=0;er&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},rr=function(e,r,n,i){var a=new us(e,r,n,i);return Vu(a),a},_p=(t,e,r,n)=>new us(t,e,r,n),eF=function(e,r,n){var i=rr([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=nt(i.height),i.maxFontSize=1,i},rF=function(e,r,n,i){var a=new Ou(e,r,n,i);return Vu(a),a},Sp=function(e){var r=new ls(e);return Vu(r),r},nF=function(e,r){return e instanceof ls?rr([],[e],r):e},iF=function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s{var r=rr(["mspace"],[],e),n=ce(t,e);return r.style.marginRight=nt(n),r},mo=function(e,r,n){var i="";switch(e){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=e}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},Tp={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"},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"}},Ap={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},oF=function(e,r){var[n,i,a]=Ap[e],s=new Zn(n),o=new Bn([s],{width:nt(i),height:nt(a),style:"width:"+nt(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),l=_p(["overlay"],[o],r);return l.height=a,l.style.height=nt(a),l.style.width=nt(i),l},z={fontMap:Tp,makeSymbol:Ur,mathsym:KE,makeSpan:rr,makeSvgSpan:_p,makeLineSpan:eF,makeAnchor:rF,makeFragment:Sp,wrapFragment:nF,makeVList:aF,makeOrd:QE,makeGlue:sF,staticSvg:oF,svgData:Ap,tryCombineChars:tF},he={number:3,unit:"mu"},_i={number:4,unit:"mu"},Fn={number:5,unit:"mu"},lF={mord:{mop:he,mbin:_i,mrel:Fn,minner:he},mop:{mord:he,mop:he,mrel:Fn,minner:he},mbin:{mord:_i,mop:_i,mopen:_i,minner:_i},mrel:{mord:Fn,mop:Fn,mopen:Fn,minner:Fn},mopen:{},mclose:{mop:he,mbin:_i,mrel:Fn,minner:he},mpunct:{mord:he,mop:he,mrel:Fn,mopen:he,mclose:he,mpunct:he,minner:he},minner:{mord:he,mop:he,mbin:_i,mrel:Fn,mopen:he,mpunct:he,minner:he}},uF={mord:{mop:he},mop:{mord:he,mop:he},mbin:{},mrel:{},mopen:{},mclose:{mop:he},mpunct:{},minner:{mop:he}},Bp={},go={},yo={};function ot(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,o={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{var A=b.classes[0],_=y.classes[0];A==="mbin"&&Ct.contains(hF,_)?b.classes[0]="mord":_==="mbin"&&Ct.contains(cF,A)&&(y.classes[0]="mord")},{node:h},f,p),Ep(a,(y,b)=>{var A=Wu(b),_=Wu(y),M=A&&_?y.hasClass("mtight")?uF[A][_]:lF[A][_]:null;if(M)return z.makeGlue(M,u)},{node:h},f,p),a},Ep=function t(e,r,n,i,a){i&&e.push(i);for(var s=0;sf=>{e.splice(h+1,0,f),s++})(s)}i&&e.pop()},Fp=function(e){return e instanceof ls||e instanceof Ou||e instanceof us&&e.hasClass("enclosing")?e:null},pF=function t(e,r){var n=Fp(e);if(n){var i=n.children;if(i.length){if(r==="right")return t(i[i.length-1],"right");if(r==="left")return t(i[0],"left")}}return e},Wu=function(e,r){return e?(r&&(e=pF(e,r)),dF[e.classes[0]]||null):null},cs=function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return Ln(r.concat(n))},$t=function(e,r,n){if(!e)return Ln();if(go[e.type]){var i=go[e.type](e,r);if(n&&r.size!==n.size){i=Ln(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new tt("Got group of unknown type: '"+e.type+"'")};function xo(t,e){var r=Ln(["base"],t,e),n=Ln(["strut"]);return n.style.height=nt(r.height+r.depth),r.depth&&(n.style.verticalAlign=nt(-r.depth)),r.children.unshift(n),r}function Uu(t,e){var r=null;t.length===1&&t[0].type==="tag"&&(r=t[0].tag,t=t[0].body);var n=Se(t,e,"root"),i;n.length===2&&n[1].hasClass("tag")&&(i=n.pop());for(var a=[],s=[],o=0;o0&&(a.push(xo(s,e)),s=[]),a.push(n[o]));s.length>0&&a.push(xo(s,e));var u;r?(u=xo(Se(r,e,!0)),u.classes=["tag"],a.push(u)):i&&a.push(i);var c=Ln(["katex-html"],a);if(c.setAttribute("aria-hidden","true"),u){var h=u.children[0];h.style.height=nt(c.height+c.depth),c.depth&&(h.style.verticalAlign=nt(-c.depth))}return c}function Lp(t){return new ls(t)}class Tr{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=Kn(this.classes));for(var n=0;n0&&(e+=' class ="'+Ct.escape(Kn(this.classes))+'"'),e+=">";for(var n=0;n",e}toText(){return this.children.map(e=>e.toText()).join("")}}class hs{constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return Ct.escape(this.toText())}toText(){return this.text}}class mF{constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character=" ":e>=.1666&&e<=.1667?this.character=" ":e>=.2222&&e<=.2223?this.character=" ":e>=.2777&&e<=.2778?this.character="  ":e>=-.05556&&e<=-.05555?this.character=" ⁣":e>=-.1667&&e<=-.1666?this.character=" ⁣":e>=-.2223&&e<=-.2222?this.character=" ⁣":e>=-.2778&&e<=-.2777?this.character=" ⁣":this.character=null}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",nt(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}}var Z={MathNode:Tr,TextNode:hs,SpaceNode:mF,newDocumentFragment:Lp},Ar=function(e,r,n){return re[r][e]&&re[r][e].replace&&e.charCodeAt(0)!==55349&&!(bp.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=re[r][e].replace),new Z.TextNode(e)},Gu=function(e){return e.length===1?e[0]:new Z.MathNode("mrow",e)},ju=function(e,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=e.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return e.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=e.text;if(Ct.contains(["\\imath","\\jmath"],a))return null;re[i][a]&&re[i][a].replace&&(a=re[i][a].replace);var s=z.fontMap[n].fontName;return Du(a,s,i)?z.fontMap[n].variant:null},nr=function(e,r,n){if(e.length===1){var i=Qt(e[0],r);return n&&i instanceof Tr&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,o=0;o0&&(h.text=h.text.slice(0,1)+"̸"+h.text.slice(1),a.pop())}}}a.push(l),s=l}return a},Jn=function(e,r,n){return Gu(nr(e,r,n))},Qt=function(e,r){if(!e)return new Z.MathNode("mrow");if(yo[e.type]){var n=yo[e.type](e,r);return n}else throw new tt("Got group of unknown type: '"+e.type+"'")};function Mp(t,e,r,n,i){var a=nr(t,r),s;a.length===1&&a[0]instanceof Tr&&Ct.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new Z.MathNode("mrow",a);var o=new Z.MathNode("annotation",[new Z.TextNode(e)]);o.setAttribute("encoding","application/x-tex");var l=new Z.MathNode("semantics",[s,o]),u=new Z.MathNode("math",[l]);u.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&u.setAttribute("display","block");var c=i?"katex":"katex-mathml";return z.makeSpan([c],[u])}var Dp=function(e){return new An({style:e.displayMode?xt.DISPLAY:xt.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},Ip=function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=z.makeSpan(n,[e])}return e},gF=function(e,r,n){var i=Dp(n),a;if(n.output==="mathml")return Mp(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=Uu(e,i);a=z.makeSpan(["katex"],[s])}else{var o=Mp(e,r,i,n.displayMode,!1),l=Uu(e,i);a=z.makeSpan(["katex"],[o,l])}return Ip(a,n)},yF=function(e,r,n){var i=Dp(n),a=Uu(e,i),s=z.makeSpan(["katex"],[a]);return Ip(s,n)},bF={widehat:"^",widecheck:"ˇ",widetilde:"~",utilde:"~",overleftarrow:"←",underleftarrow:"←",xleftarrow:"←",overrightarrow:"→",underrightarrow:"→",xrightarrow:"→",underbrace:"⏟",overbrace:"⏞",overgroup:"⏠",undergroup:"⏡",overleftrightarrow:"↔",underleftrightarrow:"↔",xleftrightarrow:"↔",Overrightarrow:"⇒",xRightarrow:"⇒",overleftharpoon:"↼",xleftharpoonup:"↼",overrightharpoon:"⇀",xrightharpoonup:"⇀",xLeftarrow:"⇐",xLeftrightarrow:"⇔",xhookleftarrow:"↩",xhookrightarrow:"↪",xmapsto:"↦",xrightharpoondown:"⇁",xleftharpoondown:"↽",xrightleftharpoons:"⇌",xleftrightharpoons:"⇋",xtwoheadleftarrow:"↞",xtwoheadrightarrow:"↠",xlongequal:"=",xtofrom:"⇄",xrightleftarrows:"⇄",xrightequilibrium:"⇌",xleftequilibrium:"⇋","\\cdrightarrow":"→","\\cdleftarrow":"←","\\cdlongequal":"="},xF=function(e){var r=new Z.MathNode("mo",[new Z.TextNode(bF[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},vF={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],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]},wF=function(e){return e.type==="ordgroup"?e.body.length:1},CF=function(e,r){function n(){var o=4e5,l=e.label.slice(1);if(Ct.contains(["widehat","widecheck","widetilde","utilde"],l)){var u=e,c=wF(u.base),h,f,p;if(c>5)l==="widehat"||l==="widecheck"?(h=420,o=2364,p=.42,f=l+"4"):(h=312,o=2340,p=.34,f="tilde4");else{var y=[1,1,2,2,3,3][c];l==="widehat"||l==="widecheck"?(o=[0,1062,2364,2364,2364][y],h=[0,239,300,360,420][y],p=[0,.24,.3,.3,.36,.42][y],f=l+y):(o=[0,600,1033,2339,2340][y],h=[0,260,286,306,312][y],p=[0,.26,.286,.3,.306,.34][y],f="tilde"+y)}var b=new Zn(f),A=new Bn([b],{width:"100%",height:nt(p),viewBox:"0 0 "+o+" "+h,preserveAspectRatio:"none"});return{span:z.makeSvgSpan([],[A],r),minWidth:0,height:p}}else{var _=[],M=vF[l],[I,V,N]=M,L=N/1e3,q=I.length,G,Y;if(q===1){var J=M[3];G=["hide-tail"],Y=[J]}else if(q===2)G=["halfarrow-left","halfarrow-right"],Y=["xMinYMin","xMaxYMin"];else if(q===3)G=["brace-left","brace-center","brace-right"],Y=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support `+q+" children.");for(var O=0;O0&&(i.style.minWidth=nt(a)),i},kF=function(e,r,n,i,a){var s,o=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=z.makeSpan(["stretchy",r],[],a),r==="fbox"){var l=a.color&&a.getColor();l&&(s.style.borderColor=l)}}else{var u=[];/^[bx]cancel$/.test(r)&&u.push(new Nu({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&u.push(new Nu({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var c=new Bn(u,{width:"100%",height:nt(o)});s=z.makeSvgSpan([],[c],a)}return s.height=o,s.style.height=nt(o),s},Mn={encloseSpan:kF,mathMLnode:xF,svgSpan:CF};function Bt(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 Yu(t){var e=vo(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 vo(t){return t&&(t.type==="atom"||YE.hasOwnProperty(t.type))?t:null}var Xu=(t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=Bt(t.base,"accent"),r=n.base,t.base=r,i=GE($t(t,e)),t.base=n):(n=Bt(t,"accent"),r=n.base);var a=$t(r,e.havingCrampedStyle()),s=n.isShifty&&Ct.isCharacterBox(r),o=0;if(s){var l=Ct.getBaseElem(r),u=$t(l,e.havingCrampedStyle());o=yp(u).skew}var c=n.label==="\\c",h=c?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),f;if(n.isStretchy)f=Mn.svgSpan(n,e),f=z.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:f,wrapperClasses:["svg-align"],wrapperStyle:o>0?{width:"calc(100% - "+nt(2*o)+")",marginLeft:nt(2*o)}:void 0}]},e);else{var p,y;n.label==="\\vec"?(p=z.staticSvg("vec",e),y=z.svgData.vec[1]):(p=z.makeOrd({mode:n.mode,text:n.label},e,"textord"),p=yp(p),p.italic=0,y=p.width,c&&(h+=p.depth)),f=z.makeSpan(["accent-body"],[p]);var b=n.label==="\\textcircled";b&&(f.classes.push("accent-full"),h=a.height);var A=o;b||(A-=y/2),f.style.left=nt(A),n.label==="\\textcircled"&&(f.style.top=".2em"),f=z.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-h},{type:"elem",elem:f}]},e)}var _=z.makeSpan(["mord","accent"],[f],e);return i?(i.children[0]=_,i.height=Math.max(_.height,i.height),i.classes[0]="mord",i):_},zp=(t,e)=>{var r=t.isStretchy?Mn.mathMLnode(t.label):new Z.MathNode("mo",[Ar(t.label,t.mode)]),n=new Z.MathNode("mover",[Qt(t.base,e),r]);return n.setAttribute("accent","true"),n},_F=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));ot({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=bo(e[0]),n=!_F.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:Xu,mathmlBuilder:zp}),ot({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:Xu,mathmlBuilder:zp}),ot({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=$t(t.base,e),n=Mn.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=z.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return z.makeSpan(["mord","accentunder"],[a],e)},mathmlBuilder:(t,e)=>{var r=Mn.mathMLnode(t.label),n=new Z.MathNode("munder",[Qt(t.base,e),r]);return n.setAttribute("accentunder","true"),n}});var wo=t=>{var e=new Z.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e};ot({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=z.wrapFragment($t(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;t.below&&(n=e.havingStyle(r.sub()),s=z.wrapFragment($t(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var o=Mn.svgSpan(t,e),l=-e.fontMetrics().axisHeight+.5*o.height,u=-e.fontMetrics().axisHeight-.5*o.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(u-=i.depth);var c;if(s){var h=-e.fontMetrics().axisHeight+s.height+.5*o.height+.111;c=z.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:u},{type:"elem",elem:o,shift:l},{type:"elem",elem:s,shift:h}]},e)}else c=z.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:u},{type:"elem",elem:o,shift:l}]},e);return c.children[0].children[0].children[1].classes.push("svg-align"),z.makeSpan(["mrel","x-arrow"],[c],e)},mathmlBuilder(t,e){var r=Mn.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=wo(Qt(t.body,e));if(t.below){var a=wo(Qt(t.below,e));n=new Z.MathNode("munderover",[r,a,i])}else n=new Z.MathNode("mover",[r,i])}else if(t.below){var s=wo(Qt(t.below,e));n=new Z.MathNode("munder",[r,s])}else n=wo(),n=new Z.MathNode("mover",[r,n]);return n}});var SF=z.makeSpan;function Op(t,e){var r=Se(t.body,e,!0);return SF([t.mclass],r,e)}function Np(t,e){var r,n=nr(t.body,e);return t.mclass==="minner"?r=new Z.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new Z.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new Z.MathNode("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}ot({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:ge(i),isCharacterBox:Ct.isCharacterBox(i)}},htmlBuilder:Op,mathmlBuilder:Np});var Co=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"};ot({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:Co(e[0]),body:ge(e[1]),isCharacterBox:Ct.isCharacterBox(e[1])}}}),ot({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],s;n!=="\\stackrel"?s=Co(i):s="mrel";var o={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:ge(i)},l={type:"supsub",mode:a.mode,base:o,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[l],isCharacterBox:Ct.isCharacterBox(l)}},htmlBuilder:Op,mathmlBuilder:Np}),ot({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:Co(e[0]),body:ge(e[0])}},htmlBuilder(t,e){var r=Se(t.body,e,!0),n=z.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=nr(t.body,e),n=new Z.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});var TF={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},Rp=()=>({type:"styling",body:[],mode:"math",style:"display"}),Pp=t=>t.type==="textord"&&t.text==="@",AF=(t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e;function BF(t,e,r){var n=TF[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"},s=r.callFunction("\\Big",[a],[]),o=r.callFunction("\\\\cdright",[e[1]],[]),l={type:"ordgroup",mode:"math",body:[i,s,o]};return r.callFunction("\\\\cdparent",[l],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var u={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[u],[])}default:return{type:"textord",text:" ",mode:"math"}}}function EF(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 tt("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a-1))if("<>AV".indexOf(u)>-1)for(var h=0;h<2;h++){for(var f=!0,p=l+1;pAV=|." after @',s[l]);var y=BF(u,c,t),b={type:"styling",body:[y],mode:"math",style:"display"};n.push(b),o=Rp()}a%2===0?n.push(o):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var A=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:A,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}ot({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=z.wrapFragment($t(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=nt(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new Z.MathNode("mrow",[Qt(t.label,e)]);return r=new Z.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new Z.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}}),ot({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=z.wrapFragment($t(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new Z.MathNode("mrow",[Qt(t.fragment,e)])}}),ot({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=Bt(e[0],"ordgroup"),i=n.body,a="",s=0;s=1114111)throw new tt("\\@char with invalid code point "+a);return l<=65535?u=String.fromCharCode(l):(l-=65536,u=String.fromCharCode((l>>10)+55296,(l&1023)+56320)),{type:"textord",mode:r.mode,text:u}}});var qp=(t,e)=>{var r=Se(t.body,e.withColor(t.color),!1);return z.makeFragment(r)},$p=(t,e)=>{var r=nr(t.body,e.withColor(t.color)),n=new Z.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n};ot({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=Bt(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:ge(i)}},htmlBuilder:qp,mathmlBuilder:$p}),ot({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=Bt(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:qp,mathmlBuilder:$p}),ot({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&&Bt(i,"size").value}},htmlBuilder(t,e){var r=z.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=nt(ce(t.size,e)))),r},mathmlBuilder(t,e){var r=new Z.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",nt(ce(t.size,e)))),r}});var Ku={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},Hp=t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new tt("Expected a control sequence",t);return e},FF=t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},Vp=(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)};ot({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(Ku[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=Ku[n.text]),Bt(e.parseFunction(),"internal");throw new tt("Invalid token after macro prefix",n)}}),ot({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 tt("Expected a control sequence",n);for(var a=0,s,o=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){s=e.gullet.future(),o[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new tt('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new tt('Argument number "'+n.text+'" out of order');a++,o.push([])}else{if(n.text==="EOF")throw new tt("Expected a macro definition");o[a].push(n.text)}var{tokens:l}=e.gullet.consumeArg();return s&&l.unshift(s),(r==="\\edef"||r==="\\xdef")&&(l=e.gullet.expandTokens(l),l.reverse()),e.gullet.macros.set(i,{tokens:l,numArgs:a,delimiters:o},r===Ku[r]),{type:"internal",mode:e.mode}}}),ot({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=Hp(e.gullet.popToken());e.gullet.consumeSpaces();var i=FF(e);return Vp(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}}),ot({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=Hp(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return Vp(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});var fs=function(e,r,n){var i=re.math[e]&&re.math[e].replace,a=Du(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},Zu=function(e,r,n,i){var a=n.havingBaseStyle(r),s=z.makeSpan(i.concat(a.sizingClasses(n)),[e],n),o=a.sizeMultiplier/n.sizeMultiplier;return s.height*=o,s.depth*=o,s.maxFontSize=a.sizeMultiplier,s},Wp=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=nt(a),e.height-=a,e.depth+=a},LF=function(e,r,n,i,a,s){var o=z.makeSymbol(e,"Main-Regular",a,i),l=Zu(o,r,i,s);return n&&Wp(l,i,r),l},MF=function(e,r,n,i){return z.makeSymbol(e,"Size"+r+"-Regular",n,i)},Up=function(e,r,n,i,a,s){var o=MF(e,r,a,i),l=Zu(z.makeSpan(["delimsizing","size"+r],[o],i),xt.TEXT,i,s);return n&&Wp(l,i,xt.TEXT),l},Qu=function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=z.makeSpan(["delimsizinginner",i],[z.makeSpan([],[z.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},Ju=function(e,r,n){var i=ln["Size4-Regular"][e.charCodeAt(0)]?ln["Size4-Regular"][e.charCodeAt(0)][4]:ln["Size1-Regular"][e.charCodeAt(0)][4],a=new Zn("inner",RE(e,Math.round(1e3*r))),s=new Bn([a],{width:nt(i),height:nt(r),style:"width:"+nt(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),o=z.makeSvgSpan([],[s],n);return o.height=r,o.style.height=nt(r),o.style.width=nt(i),{type:"elem",elem:o}},tc=.008,ko={type:"kern",size:-1*tc},DF=["|","\\lvert","\\rvert","\\vert"],IF=["\\|","\\lVert","\\rVert","\\Vert"],Gp=function(e,r,n,i,a,s){var o,l,u,c,h="",f=0;o=u=c=e,l=null;var p="Size1-Regular";e==="\\uparrow"?u=c="⏐":e==="\\Uparrow"?u=c="‖":e==="\\downarrow"?o=u="⏐":e==="\\Downarrow"?o=u="‖":e==="\\updownarrow"?(o="\\uparrow",u="⏐",c="\\downarrow"):e==="\\Updownarrow"?(o="\\Uparrow",u="‖",c="\\Downarrow"):Ct.contains(DF,e)?(u="∣",h="vert",f=333):Ct.contains(IF,e)?(u="∥",h="doublevert",f=556):e==="["||e==="\\lbrack"?(o="⎡",u="⎢",c="⎣",p="Size4-Regular",h="lbrack",f=667):e==="]"||e==="\\rbrack"?(o="⎤",u="⎥",c="⎦",p="Size4-Regular",h="rbrack",f=667):e==="\\lfloor"||e==="⌊"?(u=o="⎢",c="⎣",p="Size4-Regular",h="lfloor",f=667):e==="\\lceil"||e==="⌈"?(o="⎡",u=c="⎢",p="Size4-Regular",h="lceil",f=667):e==="\\rfloor"||e==="⌋"?(u=o="⎥",c="⎦",p="Size4-Regular",h="rfloor",f=667):e==="\\rceil"||e==="⌉"?(o="⎤",u=c="⎥",p="Size4-Regular",h="rceil",f=667):e==="("||e==="\\lparen"?(o="⎛",u="⎜",c="⎝",p="Size4-Regular",h="lparen",f=875):e===")"||e==="\\rparen"?(o="⎞",u="⎟",c="⎠",p="Size4-Regular",h="rparen",f=875):e==="\\{"||e==="\\lbrace"?(o="⎧",l="⎨",c="⎩",u="⎪",p="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(o="⎫",l="⎬",c="⎭",u="⎪",p="Size4-Regular"):e==="\\lgroup"||e==="⟮"?(o="⎧",c="⎩",u="⎪",p="Size4-Regular"):e==="\\rgroup"||e==="⟯"?(o="⎫",c="⎭",u="⎪",p="Size4-Regular"):e==="\\lmoustache"||e==="⎰"?(o="⎧",c="⎭",u="⎪",p="Size4-Regular"):(e==="\\rmoustache"||e==="⎱")&&(o="⎫",c="⎩",u="⎪",p="Size4-Regular");var y=fs(o,p,a),b=y.height+y.depth,A=fs(u,p,a),_=A.height+A.depth,M=fs(c,p,a),I=M.height+M.depth,V=0,N=1;if(l!==null){var L=fs(l,p,a);V=L.height+L.depth,N=2}var q=b+I+V,G=Math.max(0,Math.ceil((r-q)/(N*_))),Y=q+G*N*_,J=i.fontMetrics().axisHeight;n&&(J*=i.sizeMultiplier);var O=Y/2-J,P=[];if(h.length>0){var ft=Y-b-I,X=Math.round(Y*1e3),$=PE(h,Math.round(ft*1e3)),U=new Zn(h,$),et=(f/1e3).toFixed(3)+"em",K=(X/1e3).toFixed(3)+"em",W=new Bn([U],{width:et,height:K,viewBox:"0 0 "+f+" "+X}),v=z.makeSvgSpan([],[W],i);v.height=X/1e3,v.style.width=et,v.style.height=K,P.push({type:"elem",elem:v})}else{if(P.push(Qu(c,p,a)),P.push(ko),l===null){var st=Y-b-I+2*tc;P.push(Ju(u,st,i))}else{var dt=(Y-b-I-V)/2+2*tc;P.push(Ju(u,dt,i)),P.push(ko),P.push(Qu(l,p,a)),P.push(ko),P.push(Ju(u,dt,i))}P.push(ko),P.push(Qu(o,p,a))}var w=i.havingBaseStyle(xt.TEXT),St=z.makeVList({positionType:"bottom",positionData:O,children:P},w);return Zu(z.makeSpan(["delimsizing","mult"],[St],w),xt.TEXT,i,s)},ec=80,rc=.08,nc=function(e,r,n,i,a){var s=NE(e,i,n),o=new Zn(e,s),l=new Bn([o],{width:"400em",height:nt(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return z.makeSvgSpan(["hide-tail"],[l],a)},zF=function(e,r){var n=r.havingBaseSizing(),i=Kp("\\surd",e*n.sizeMultiplier,Xp,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),o,l=0,u=0,c=0,h;return i.type==="small"?(c=1e3+1e3*s+ec,e<1?a=1:e<1.4&&(a=.7),l=(1+s+rc)/a,u=(1+s)/a,o=nc("sqrtMain",l,c,s,r),o.style.minWidth="0.853em",h=.833/a):i.type==="large"?(c=(1e3+ec)*ds[i.size],u=(ds[i.size]+s)/a,l=(ds[i.size]+s+rc)/a,o=nc("sqrtSize"+i.size,l,c,s,r),o.style.minWidth="1.02em",h=1/a):(l=e+s+rc,u=e+s,c=Math.floor(1e3*e+s)+ec,o=nc("sqrtTall",l,c,s,r),o.style.minWidth="0.742em",h=1.056),o.height=u,o.style.height=nt(l),{span:o,advanceWidth:h,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},jp=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"],OF=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"],Yp=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],ds=[0,1.2,1.8,2.4,3],NF=function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="⟨"?e="\\langle":(e===">"||e==="\\gt"||e==="⟩")&&(e="\\rangle"),Ct.contains(jp,e)||Ct.contains(Yp,e))return Up(e,r,!1,n,i,a);if(Ct.contains(OF,e))return Gp(e,ds[r],!1,n,i,a);throw new tt("Illegal delimiter: '"+e+"'")},RF=[{type:"small",style:xt.SCRIPTSCRIPT},{type:"small",style:xt.SCRIPT},{type:"small",style:xt.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],PF=[{type:"small",style:xt.SCRIPTSCRIPT},{type:"small",style:xt.SCRIPT},{type:"small",style:xt.TEXT},{type:"stack"}],Xp=[{type:"small",style:xt.SCRIPTSCRIPT},{type:"small",style:xt.SCRIPT},{type:"small",style:xt.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],qF=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";throw new Error("Add support for delim type '"+e.type+"' here.")},Kp=function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;sr)return n[s]}return n[n.length-1]},Zp=function(e,r,n,i,a,s){e==="<"||e==="\\lt"||e==="⟨"?e="\\langle":(e===">"||e==="\\gt"||e==="⟩")&&(e="\\rangle");var o;Ct.contains(Yp,e)?o=RF:Ct.contains(jp,e)?o=Xp:o=PF;var l=Kp(e,r,o,i);return l.type==="small"?LF(e,l.style,n,i,a,s):l.type==="large"?Up(e,l.size,n,i,a,s):Gp(e,r,n,i,a,s)},$F=function(e,r,n,i,a,s){var o=i.fontMetrics().axisHeight*i.sizeMultiplier,l=901,u=5/i.fontMetrics().ptPerEm,c=Math.max(r-o,n+o),h=Math.max(c/500*l,2*c-u);return Zp(e,h,!0,i,a,s)},Dn={sqrtImage:zF,sizedDelim:NF,sizeToMaxHeight:ds,customSizedDelim:Zp,leftRightDelim:$F},Qp={"\\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}},HF=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","<",">","\\langle","⟨","\\rangle","⟩","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];function _o(t,e){var r=vo(t);if(r&&Ct.contains(HF,r.text))return r;throw r?new tt("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new tt("Invalid delimiter type '"+t.type+"'",t)}ot({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=_o(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:Qp[t.funcName].size,mclass:Qp[t.funcName].mclass,delim:r.text}},htmlBuilder:(t,e)=>t.delim==="."?z.makeSpan([t.mclass]):Dn.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),mathmlBuilder:t=>{var e=[];t.delim!=="."&&e.push(Ar(t.delim,t.mode));var r=new Z.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=nt(Dn.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r}});function Jp(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}ot({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 tt("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:_o(e[0],t).text,color:r}}}),ot({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(t,e)=>{var r=_o(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=Bt(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},htmlBuilder:(t,e)=>{Jp(t);for(var r=Se(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s{Jp(t);var r=nr(t.body,e);if(t.left!=="."){var n=new Z.MathNode("mo",[Ar(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new Z.MathNode("mo",[Ar(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return Gu(r)}}),ot({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(t,e)=>{var r=_o(e[0],t);if(!t.parser.leftrightDepth)throw new tt("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},htmlBuilder:(t,e)=>{var r;if(t.delim===".")r=cs(e,[]);else{r=Dn.sizedDelim(t.delim,1,e,t.mode,[]);var n={delim:t.delim,options:e};r.isMiddle=n}return r},mathmlBuilder:(t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?Ar("|","text"):Ar(t.delim,t.mode),n=new Z.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n}});var ic=(t,e)=>{var r=z.wrapFragment($t(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,o=Ct.isCharacterBox(t.body);if(n==="sout")a=z.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var l=ce({number:.6,unit:"pt"},e),u=ce({number:.35,unit:"ex"},e),c=e.havingBaseSizing();i=i/c.sizeMultiplier;var h=r.height+r.depth+l+u;r.style.paddingLeft=nt(h/2+l);var f=Math.floor(1e3*h*i),p=zE(f),y=new Bn([new Zn("phase",p)],{width:"400em",height:nt(f/1e3),viewBox:"0 0 400000 "+f,preserveAspectRatio:"xMinYMin slice"});a=z.makeSvgSpan(["hide-tail"],[y],e),a.style.height=nt(h),s=r.depth+l+u}else{/cancel/.test(n)?o||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var b=0,A=0,_=0;/box/.test(n)?(_=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),b=e.fontMetrics().fboxsep+(n==="colorbox"?0:_),A=b):n==="angl"?(_=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),b=4*_,A=Math.max(0,.25-r.depth)):(b=o?.2:0,A=b),a=Mn.encloseSpan(r,n,b,A,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=nt(_)):n==="angl"&&_!==.049&&(a.style.borderTopWidth=nt(_),a.style.borderRightWidth=nt(_)),s=r.depth+A,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var M;if(t.backgroundColor)M=z.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},e);else{var I=/cancel|phase/.test(n)?["svg-align"]:[];M=z.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:I}]},e)}return/cancel/.test(n)&&(M.height=r.height,M.depth=r.depth),/cancel/.test(n)&&!o?z.makeSpan(["mord","cancel-lap"],[M],e):z.makeSpan(["mord"],[M],e)},ac=(t,e)=>{var r=0,n=new Z.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[Qt(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+"em solid "+String(t.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n};ot({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=Bt(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:ic,mathmlBuilder:ac}),ot({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=Bt(e[0],"color-token").color,s=Bt(e[1],"color-token").color,o=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:o}},htmlBuilder:ic,mathmlBuilder:ac}),ot({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]}}}),ot({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\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:ic,mathmlBuilder:ac}),ot({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 tm={};function un(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,o={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},l=0;l{var e=t.parser.settings;if(!e.displayMode)throw new tt("{"+t.envName+"} can be used only in display mode.")};function sc(t){if(t.indexOf("ed")===-1)return t.indexOf("*")===-1}function ti(t,e,r){var{hskipBeforeAndAfter:n,addJot:i,cols:a,arraystretch:s,colSeparationType:o,autoTag:l,singleRow:u,emptySingleRow:c,maxNumCols:h,leqno:f}=e;if(t.gullet.beginGroup(),u||t.gullet.macros.set("\\cr","\\\\\\relax"),!s){var p=t.gullet.expandMacroAsText("\\arraystretch");if(p==null)s=1;else if(s=parseFloat(p),!s||s<0)throw new tt("Invalid \\arraystretch: "+p)}t.gullet.beginGroup();var y=[],b=[y],A=[],_=[],M=l!=null?[]:void 0;function I(){l&&t.gullet.macros.set("\\@eqnsw","1",!0)}function V(){M&&(t.gullet.macros.get("\\df@tag")?(M.push(t.subparse([new sn("\\df@tag")])),t.gullet.macros.set("\\df@tag",void 0,!0)):M.push(!!l&&t.gullet.macros.get("\\@eqnsw")==="1"))}for(I(),_.push(rm(t));;){var N=t.parseExpression(!1,u?"\\end":"\\\\");t.gullet.endGroup(),t.gullet.beginGroup(),N={type:"ordgroup",mode:t.mode,body:N},r&&(N={type:"styling",mode:t.mode,style:r,body:[N]}),y.push(N);var L=t.fetch().text;if(L==="&"){if(h&&y.length===h){if(u||o)throw new tt("Too many tab characters: &",t.nextToken);t.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}t.consume()}else if(L==="\\end"){V(),y.length===1&&N.type==="styling"&&N.body[0].body.length===0&&(b.length>1||!c)&&b.pop(),_.length0&&(I+=.25),u.push({pos:I,isDashed:yr[ar]})}for(V(s[0]),n=0;n0&&(O+=M,qyr))for(n=0;n=o)){var Ht=void 0;(i>0||e.hskipBeforeAndAfter)&&(Ht=Ct.deflt(dt.pregap,f),Ht!==0&&($=z.makeSpan(["arraycolsep"],[]),$.style.width=nt(Ht),X.push($)));var Wt=[];for(n=0;n0){for(var ye=z.makeLineSpan("hline",r,c),Te=z.makeLineSpan("hdashline",r,c),Ae=[{type:"elem",elem:l,shift:0}];u.length>0;){var ir=u.pop(),Kt=ir.pos-P;ir.isDashed?Ae.push({type:"elem",elem:Te,shift:Kt}):Ae.push({type:"elem",elem:ye,shift:Kt})}l=z.makeVList({positionType:"individualShift",children:Ae},r)}if(et.length===0)return z.makeSpan(["mord"],[l],r);var fe=z.makeVList({positionType:"individualShift",children:et},r);return fe=z.makeSpan(["tag"],[fe],r),z.makeFragment([l,fe])},VF={c:"center ",l:"left ",r:"right "},hn=function(e,r){for(var n=[],i=new Z.MathNode("mtd",[],["mtr-glue"]),a=new Z.MathNode("mtd",[],["mml-eqn-num"]),s=0;s0){var y=e.cols,b="",A=!1,_=0,M=y.length;y[0].type==="separator"&&(f+="top ",_=1),y[y.length-1].type==="separator"&&(f+="bottom ",M-=1);for(var I=_;I0?"left ":"",f+=G[G.length-1].length>0?"right ":"";for(var Y=1;Y-1?"alignat":"align",a=e.envName==="split",s=ti(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:sc(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),o,l=0,u={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var c="",h=0;h0&&p&&(A=1),n[y]={type:"align",align:b,pregap:A,postgap:0}}return s.colSeparationType=p?"align":"alignat",s};un({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=vo(e[0]),n=r?[e[0]]:Bt(e[0],"ordgroup").body,i=n.map(function(s){var o=Yu(s),l=o.text;if("lcr".indexOf(l)!==-1)return{type:"align",align:l};if(l==="|")return{type:"separator",separator:"|"};if(l===":")return{type:"separator",separator:":"};throw new tt("Unknown column alignment: "+l,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return ti(t.parser,a,oc(t.envName))},htmlBuilder:cn,mathmlBuilder:hn}),un({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".indexOf(r)===-1)throw new tt("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=ti(t.parser,n,oc(t.envName)),s=Math.max(0,...a.body.map(o=>o.length));return a.cols=new Array(s).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=ti(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=vo(e[0]),n=r?[e[0]]:Bt(e[0],"ordgroup").body,i=n.map(function(s){var o=Yu(s),l=o.text;if("lc".indexOf(l)!==-1)return{type:"align",align:l};throw new tt("Unknown column alignment: "+l,s)});if(i.length>1)throw new tt("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=ti(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new tt("{subarray} can contain only one column");return a},htmlBuilder:cn,mathmlBuilder:hn}),un({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=ti(t.parser,e,oc(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.indexOf("r")>-1?".":"\\{",right:t.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:nm,htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){Ct.contains(["gather","gather*"],t.envName)&&So(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:sc(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return ti(t.parser,e,"display")},htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:nm,htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){So(t);var e={autoTag:sc(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return ti(t.parser,e,"display")},htmlBuilder:cn,mathmlBuilder:hn}),un({type:"array",names:["CD"],props:{numArgs:0},handler(t){return So(t),EF(t.parser)},htmlBuilder:cn,mathmlBuilder:hn}),x("\\nonumber","\\gdef\\@eqnsw{0}"),x("\\notag","\\nonumber"),ot({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new tt(t.funcName+" valid only within array environment")}});var im=tm;ot({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 tt("Invalid environment name",i);for(var a="",s=0;s{var r=t.font,n=e.withFont(r);return $t(t.body,n)},sm=(t,e)=>{var r=t.font,n=e.withFont(r);return Qt(t.body,n)},om={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};ot({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=bo(e[0]),a=n;return a in om&&(a=om[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},htmlBuilder:am,mathmlBuilder:sm}),ot({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(t,e)=>{var{parser:r}=t,n=e[0],i=Ct.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:Co(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}}}),ot({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,s=r.parseExpression(!0,i),o="math"+n.slice(1);return{type:"font",mode:a,font:o,body:{type:"ordgroup",mode:r.mode,body:s}}},htmlBuilder:am,mathmlBuilder:sm});var lm=(t,e)=>{var r=e;return t==="display"?r=r.id>=xt.SCRIPT.id?r.text():xt.DISPLAY:t==="text"&&r.size===xt.DISPLAY.size?r=xt.TEXT:t==="script"?r=xt.SCRIPT:t==="scriptscript"&&(r=xt.SCRIPTSCRIPT),r},lc=(t,e)=>{var r=lm(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=$t(t.numer,a,e);if(t.continued){var o=8.5/e.fontMetrics().ptPerEm,l=3.5/e.fontMetrics().ptPerEm;s.height=s.height0?y=3*f:y=7*f,b=e.fontMetrics().denom1):(h>0?(p=e.fontMetrics().num2,y=f):(p=e.fontMetrics().num3,y=3*f),b=e.fontMetrics().denom2);var A;if(c){var M=e.fontMetrics().axisHeight;p-s.depth-(M+.5*h){var r=new Z.MathNode("mfrac",[Qt(t.numer,e),Qt(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=ce(t.barSize,e);r.setAttribute("linethickness",nt(n))}var i=lm(t.size,e.style);if(i.size!==e.style.size){r=new Z.MathNode("mstyle",[r]);var a=i.size===xt.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(t.leftDelim!=null||t.rightDelim!=null){var s=[];if(t.leftDelim!=null){var o=new Z.MathNode("mo",[new Z.TextNode(t.leftDelim.replace("\\",""))]);o.setAttribute("fence","true"),s.push(o)}if(s.push(r),t.rightDelim!=null){var l=new Z.MathNode("mo",[new Z.TextNode(t.rightDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}return Gu(s)}return r};ot({type:"genfrac",names:["\\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],s,o=null,l=null,u="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,o="(",l=")";break;case"\\\\bracefrac":s=!1,o="\\{",l="\\}";break;case"\\\\brackfrac":s=!1,o="[",l="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":u="display";break;case"\\tfrac":case"\\tbinom":u="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:o,rightDelim:l,size:u,barSize:null}},htmlBuilder:lc,mathmlBuilder:uc}),ot({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}}}),ot({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 um=["display","text","script","scriptscript"],cm=function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r};ot({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=bo(e[0]),s=a.type==="atom"&&a.family==="open"?cm(a.text):null,o=bo(e[1]),l=o.type==="atom"&&o.family==="close"?cm(o.text):null,u=Bt(e[2],"size"),c,h=null;u.isBlank?c=!0:(h=u.value,c=h.number>0);var f="auto",p=e[3];if(p.type==="ordgroup"){if(p.body.length>0){var y=Bt(p.body[0],"textord");f=um[Number(y.text)]}}else p=Bt(p,"textord"),f=um[Number(p.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:c,barSize:h,leftDelim:s,rightDelim:l,size:f}},htmlBuilder:lc,mathmlBuilder:uc}),ot({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:Bt(e[0],"size").value,token:i}}}),ot({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=vE(Bt(e[1],"infix").size),s=e[2],o=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:o,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},htmlBuilder:lc,mathmlBuilder:uc});var hm=(t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?$t(t.sup,e.havingStyle(r.sup()),e):$t(t.sub,e.havingStyle(r.sub()),e),i=Bt(t.base,"horizBrace")):i=Bt(t,"horizBrace");var a=$t(i.base,e.havingBaseStyle(xt.DISPLAY)),s=Mn.svgSpan(i,e),o;if(i.isOver?(o=z.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},e),o.children[0].children[0].children[1].classes.push("svg-align")):(o=z.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},e),o.children[0].children[0].children[0].classes.push("svg-align")),n){var l=z.makeSpan(["mord",i.isOver?"mover":"munder"],[o],e);i.isOver?o=z.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:l},{type:"kern",size:.2},{type:"elem",elem:n}]},e):o=z.makeVList({positionType:"bottom",positionData:l.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:l}]},e)}return z.makeSpan(["mord",i.isOver?"mover":"munder"],[o],e)},WF=(t,e)=>{var r=Mn.mathMLnode(t.label);return new Z.MathNode(t.isOver?"mover":"munder",[Qt(t.base,e),r])};ot({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:e[0]}},htmlBuilder:hm,mathmlBuilder:WF}),ot({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=e[1],i=Bt(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:ge(n)}:r.formatUnsupportedCmd("\\href")},htmlBuilder:(t,e)=>{var r=Se(t.body,e,!1);return z.makeAnchor(t.href,[],r,e)},mathmlBuilder:(t,e)=>{var r=Jn(t.body,e);return r instanceof Tr||(r=new Tr("mrow",[r])),r.setAttribute("href",t.href),r}}),ot({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=Bt(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a{var{parser:r,funcName:n,token:i}=t,a=Bt(e[0],"raw").string,s=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var o,l={};switch(n){case"\\htmlClass":l.class=a,o={command:"\\htmlClass",class:a};break;case"\\htmlId":l.id=a,o={command:"\\htmlId",id:a};break;case"\\htmlStyle":l.style=a,o={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var u=a.split(","),c=0;c{var r=Se(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=z.makeSpan(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)=>Jn(t.body,e)}),ot({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:(t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:ge(e[0]),mathml:ge(e[1])}},htmlBuilder:(t,e)=>{var r=Se(t.html,e,!1);return z.makeFragment(r)},mathmlBuilder:(t,e)=>Jn(t.mathml,e)});var cc=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 tt("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!dp(n))throw new tt("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n};ot({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"},s={number:0,unit:"em"},o="";if(r[0])for(var l=Bt(r[0],"raw").string,u=l.split(","),c=0;c{var r=ce(t.height,e),n=0;t.totalheight.number>0&&(n=ce(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=ce(t.width,e));var a={height:nt(r+n)};i>0&&(a.width=nt(i)),n>0&&(a.verticalAlign=nt(-n));var s=new WE(t.src,t.alt,a);return s.height=r,s.depth=n,s},mathmlBuilder:(t,e)=>{var r=new Z.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=ce(t.height,e),i=0;if(t.totalheight.number>0&&(i=ce(t.totalheight,e)-n,r.setAttribute("valign",nt(-i))),r.setAttribute("height",nt(n+i)),t.width.number>0){var a=ce(t.width,e);r.setAttribute("width",nt(a))}return r.setAttribute("src",t.src),r}}),ot({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=Bt(e[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||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")):s&&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 z.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=ce(t.dimension,e);return new Z.SpaceNode(r)}}),ot({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=z.makeSpan([],[$t(t.body,e)]),r=z.makeSpan(["inner"],[r],e)):r=z.makeSpan(["inner"],[$t(t.body,e)]);var n=z.makeSpan(["fix"],[]),i=z.makeSpan([t.alignment],[r,n],e),a=z.makeSpan(["strut"]);return a.style.height=nt(i.height+i.depth),i.depth&&(a.style.verticalAlign=nt(-i.depth)),i.children.unshift(a),i=z.makeSpan(["thinbox"],[i],e),z.makeSpan(["mord","vbox"],[i],e)},mathmlBuilder:(t,e)=>{var r=new Z.MathNode("mpadded",[Qt(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}}),ot({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==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}}),ot({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new tt("Mismatched "+t.funcName)}});var fm=(t,e)=>{switch(e.style.size){case xt.DISPLAY.size:return t.display;case xt.TEXT.size:return t.text;case xt.SCRIPT.size:return t.script;case xt.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}};ot({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:ge(e[0]),text:ge(e[1]),script:ge(e[2]),scriptscript:ge(e[3])}},htmlBuilder:(t,e)=>{var r=fm(t,e),n=Se(r,e,!1);return z.makeFragment(n)},mathmlBuilder:(t,e)=>{var r=fm(t,e);return Jn(r,e)}});var dm=(t,e,r,n,i,a,s)=>{t=z.makeSpan([],[t]);var o=r&&Ct.isCharacterBox(r),l,u;if(e){var c=$t(e,n.havingStyle(i.sup()),n);u={elem:c,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-c.depth)}}if(r){var h=$t(r,n.havingStyle(i.sub()),n);l={elem:h,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-h.height)}}var f;if(u&&l){var p=n.fontMetrics().bigOpSpacing5+l.elem.height+l.elem.depth+l.kern+t.depth+s;f=z.makeVList({positionType:"bottom",positionData:p,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:l.elem,marginLeft:nt(-a)},{type:"kern",size:l.kern},{type:"elem",elem:t},{type:"kern",size:u.kern},{type:"elem",elem:u.elem,marginLeft:nt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(l){var y=t.height-s;f=z.makeVList({positionType:"top",positionData:y,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:l.elem,marginLeft:nt(-a)},{type:"kern",size:l.kern},{type:"elem",elem:t}]},n)}else if(u){var b=t.depth+s;f=z.makeVList({positionType:"bottom",positionData:b,children:[{type:"elem",elem:t},{type:"kern",size:u.kern},{type:"elem",elem:u.elem,marginLeft:nt(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var A=[f];if(l&&a!==0&&!o){var _=z.makeSpan(["mspace"],[],n);_.style.marginRight=nt(a),A.unshift(_)}return z.makeSpan(["mop","op-limits"],A,n)},pm=["\\smallint"],ma=(t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=Bt(t.base,"op"),i=!0):a=Bt(t,"op");var s=e.style,o=!1;s.size===xt.DISPLAY.size&&a.symbol&&!Ct.contains(pm,a.name)&&(o=!0);var l;if(a.symbol){var u=o?"Size2-Regular":"Size1-Regular",c="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(c=a.name.slice(1),a.name=c==="oiint"?"\\iint":"\\iiint"),l=z.makeSymbol(a.name,u,"math",e,["mop","op-symbol",o?"large-op":"small-op"]),c.length>0){var h=l.italic,f=z.staticSvg(c+"Size"+(o?"2":"1"),e);l=z.makeVList({positionType:"individualShift",children:[{type:"elem",elem:l,shift:0},{type:"elem",elem:f,shift:o?.08:0}]},e),a.name="\\"+c,l.classes.unshift("mop"),l.italic=h}}else if(a.body){var p=Se(a.body,e,!0);p.length===1&&p[0]instanceof Sr?(l=p[0],l.classes[0]="mop"):l=z.makeSpan(["mop"],p,e)}else{for(var y=[],b=1;b{var r;if(t.symbol)r=new Tr("mo",[Ar(t.name,t.mode)]),Ct.contains(pm,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new Tr("mo",nr(t.body,e));else{r=new Tr("mi",[new hs(t.name.slice(1))]);var n=new Tr("mo",[Ar("⁡","text")]);t.parentIsSupSub?r=new Tr("mrow",[r,n]):r=Lp([r,n])}return r},UF={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","⋁":"\\bigvee","⋂":"\\bigcap","⋃":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};ot({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","⋁","⋂","⋃","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=UF[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},htmlBuilder:ma,mathmlBuilder:ps}),ot({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:ge(n)}},htmlBuilder:ma,mathmlBuilder:ps});var GF={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};ot({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:ma,mathmlBuilder:ps}),ot({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:ma,mathmlBuilder:ps}),ot({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=GF[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:ma,mathmlBuilder:ps});var mm=(t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=Bt(t.base,"operatorname"),i=!0):a=Bt(t,"operatorname");var s;if(a.body.length>0){for(var o=a.body.map(h=>{var f=h.text;return typeof f=="string"?{type:"textord",mode:h.mode,text:f}:h}),l=Se(o,e.withFont("mathrm"),!0),u=0;u{for(var r=nr(t.body,e.withFont("mathrm")),n=!0,i=0;ic.toText()).join("");r=[new Z.TextNode(o)]}var l=new Z.MathNode("mi",r);l.setAttribute("mathvariant","normal");var u=new Z.MathNode("mo",[Ar("⁡","text")]);return t.parentIsSupSub?new Z.MathNode("mrow",[l,u]):Z.newDocumentFragment([l,u])};ot({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:ge(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:mm,mathmlBuilder:jF}),x("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@"),Si({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?z.makeFragment(Se(t.body,e,!1)):z.makeSpan(["mord"],Se(t.body,e,!0),e)},mathmlBuilder(t,e){return Jn(t.body,e,!0)}}),ot({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=$t(t.body,e.havingCrampedStyle()),n=z.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=z.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return z.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new Z.MathNode("mo",[new Z.TextNode("‾")]);r.setAttribute("stretchy","true");var n=new Z.MathNode("mover",[Qt(t.body,e),r]);return n.setAttribute("accent","true"),n}}),ot({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:ge(n)}},htmlBuilder:(t,e)=>{var r=Se(t.body,e.withPhantom(),!1);return z.makeFragment(r)},mathmlBuilder:(t,e)=>{var r=nr(t.body,e);return new Z.MathNode("mphantom",r)}}),ot({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:(t,e)=>{var{parser:r}=t,n=e[0];return{type:"hphantom",mode:r.mode,body:n}},htmlBuilder:(t,e)=>{var r=z.makeSpan([],[$t(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n{var r=nr(ge(t.body),e),n=new Z.MathNode("mphantom",r),i=new Z.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i}}),ot({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=z.makeSpan(["inner"],[$t(t.body,e.withPhantom())]),n=z.makeSpan(["fix"],[]);return z.makeSpan(["mord","rlap"],[r,n],e)},mathmlBuilder:(t,e)=>{var r=nr(ge(t.body),e),n=new Z.MathNode("mphantom",r),i=new Z.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i}}),ot({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=Bt(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=$t(t.body,e),n=ce(t.dy,e);return z.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new Z.MathNode("mpadded",[Qt(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}}),ot({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}}),ot({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=Bt(e[0],"size"),s=Bt(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&Bt(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=z.makeSpan(["mord","rule"],[],e),n=ce(t.width,e),i=ce(t.height,e),a=t.shift?ce(t.shift,e):0;return r.style.borderRightWidth=nt(n),r.style.borderTopWidth=nt(i),r.style.bottom=nt(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=ce(t.width,e),n=ce(t.height,e),i=t.shift?ce(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new Z.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",nt(r)),s.setAttribute("height",nt(n));var o=new Z.MathNode("mpadded",[s]);return i>=0?o.setAttribute("height",nt(i)):(o.setAttribute("height",nt(i)),o.setAttribute("depth",nt(-i))),o.setAttribute("voffset",nt(i)),o}});function gm(t,e,r){for(var n=Se(t,e,!1),i=e.sizeMultiplier/r.sizeMultiplier,a=0;a{var r=e.havingSize(t.size);return gm(t.body,r,e)};ot({type:"sizing",names:ym,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:ym.indexOf(n)+1,body:a}},htmlBuilder:YF,mathmlBuilder:(t,e)=>{var r=e.havingSize(t.size),n=nr(t.body,r),i=new Z.MathNode("mstyle",n);return i.setAttribute("mathsize",nt(r.sizeMultiplier)),i}}),ot({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(t,e,r)=>{var{parser:n}=t,i=!1,a=!1,s=r[0]&&Bt(r[0],"ordgroup");if(s)for(var o="",l=0;l{var r=z.makeSpan([],[$t(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0,r.children))for(var n=0;n{var r=new Z.MathNode("mpadded",[Qt(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r}}),ot({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=$t(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=z.wrapFragment(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.idr.height+r.depth+s&&(s=(s+h-r.height-r.depth)/2);var f=l.height-r.height-s-u;r.style.paddingLeft=nt(c);var p=z.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+f)},{type:"elem",elem:l},{type:"kern",size:u}]},e);if(t.index){var y=e.havingStyle(xt.SCRIPTSCRIPT),b=$t(t.index,y,e),A=.6*(p.height-p.depth),_=z.makeVList({positionType:"shift",positionData:-A,children:[{type:"elem",elem:b}]},e),M=z.makeSpan(["root"],[_]);return z.makeSpan(["mord","sqrt"],[M,p],e)}else return z.makeSpan(["mord","sqrt"],[p],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new Z.MathNode("mroot",[Qt(r,e),Qt(n,e)]):new Z.MathNode("msqrt",[Qt(r,e)])}});var bm={display:xt.DISPLAY,text:xt.TEXT,script:xt.SCRIPT,scriptscript:xt.SCRIPTSCRIPT};ot({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),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(t,e){var r=bm[t.style],n=e.havingStyle(r).withFont("");return gm(t.body,n,e)},mathmlBuilder(t,e){var r=bm[t.style],n=e.havingStyle(r),i=nr(t.body,n),a=new Z.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},o=s[t.style];return a.setAttribute("scriptlevel",o[0]),a.setAttribute("displaystyle",o[1]),a}});var XF=function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===xt.DISPLAY.size||n.alwaysHandleSupSub);return i?ma:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===xt.DISPLAY.size||n.limits);return a?mm:null}else{if(n.type==="accent")return Ct.isCharacterBox(n.base)?Xu:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?hm:null}else return null}else return null};Si({type:"supsub",htmlBuilder(t,e){var r=XF(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=$t(n,e),o,l,u=e.fontMetrics(),c=0,h=0,f=n&&Ct.isCharacterBox(n);if(i){var p=e.havingStyle(e.style.sup());o=$t(i,p,e),f||(c=s.height-p.fontMetrics().supDrop*p.sizeMultiplier/e.sizeMultiplier)}if(a){var y=e.havingStyle(e.style.sub());l=$t(a,y,e),f||(h=s.depth+y.fontMetrics().subDrop*y.sizeMultiplier/e.sizeMultiplier)}var b;e.style===xt.DISPLAY?b=u.sup1:e.style.cramped?b=u.sup3:b=u.sup2;var A=e.sizeMultiplier,_=nt(.5/u.ptPerEm/A),M=null;if(l){var I=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");(s instanceof Sr||I)&&(M=nt(-s.italic))}var V;if(o&&l){c=Math.max(c,b,o.depth+.25*u.xHeight),h=Math.max(h,u.sub2);var N=u.defaultRuleThickness,L=4*N;if(c-o.depth-(l.height-h)0&&(c+=q,h-=q)}var G=[{type:"elem",elem:l,shift:h,marginRight:_,marginLeft:M},{type:"elem",elem:o,shift:-c,marginRight:_}];V=z.makeVList({positionType:"individualShift",children:G},e)}else if(l){h=Math.max(h,u.sub1,l.height-.8*u.xHeight);var Y=[{type:"elem",elem:l,marginLeft:M,marginRight:_}];V=z.makeVList({positionType:"shift",positionData:h,children:Y},e)}else if(o)c=Math.max(c,b,o.depth+.25*u.xHeight),V=z.makeVList({positionType:"shift",positionData:-c,children:[{type:"elem",elem:o,marginRight:_}]},e);else throw new Error("supsub must have either sup or sub.");var J=Wu(s,"right")||"mord";return z.makeSpan([J],[s,z.makeSpan(["msupsub"],[V])],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=[Qt(t.base,e)];t.sub&&a.push(Qt(t.sub,e)),t.sup&&a.push(Qt(t.sup,e));var s;if(r)s=n?"mover":"munder";else if(t.sub)if(t.sup){var u=t.base;u&&u.type==="op"&&u.limits&&e.style===xt.DISPLAY||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(e.style===xt.DISPLAY||u.limits)?s="munderover":s="msubsup"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===xt.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===xt.DISPLAY)?s="munder":s="msub"}else{var o=t.base;o&&o.type==="op"&&o.limits&&(e.style===xt.DISPLAY||o.alwaysHandleSupSub)||o&&o.type==="operatorname"&&o.alwaysHandleSupSub&&(o.limits||e.style===xt.DISPLAY)?s="mover":s="msup"}return new Z.MathNode(s,a)}}),Si({type:"atom",htmlBuilder(t,e){return z.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new Z.MathNode("mo",[Ar(t.text,t.mode)]);if(t.family==="bin"){var n=ju(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 xm={mi:"italic",mn:"normal",mtext:"normal"};Si({type:"mathord",htmlBuilder(t,e){return z.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new Z.MathNode("mi",[Ar(t.text,t.mode,e)]),n=ju(t,e)||"italic";return n!==xm[r.type]&&r.setAttribute("mathvariant",n),r}}),Si({type:"textord",htmlBuilder(t,e){return z.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=Ar(t.text,t.mode,e),n=ju(t,e)||"normal",i;return t.mode==="text"?i=new Z.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new Z.MathNode("mn",[r]):t.text==="\\prime"?i=new Z.MathNode("mo",[r]):i=new Z.MathNode("mi",[r]),n!==xm[i.type]&&i.setAttribute("mathvariant",n),i}});var hc={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},fc={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};Si({type:"spacing",htmlBuilder(t,e){if(fc.hasOwnProperty(t.text)){var r=fc[t.text].className||"";if(t.mode==="text"){var n=z.makeOrd(t,e,"textord");return n.classes.push(r),n}else return z.makeSpan(["mspace",r],[z.mathsym(t.text,t.mode,e)],e)}else{if(hc.hasOwnProperty(t.text))return z.makeSpan(["mspace",hc[t.text]],[],e);throw new tt('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(fc.hasOwnProperty(t.text))r=new Z.MathNode("mtext",[new Z.TextNode(" ")]);else{if(hc.hasOwnProperty(t.text))return new Z.MathNode("mspace");throw new tt('Unknown type of space "'+t.text+'"')}return r}});var vm=()=>{var t=new Z.MathNode("mtd",[]);return t.setAttribute("width","50%"),t};Si({type:"tag",mathmlBuilder(t,e){var r=new Z.MathNode("mtable",[new Z.MathNode("mtr",[vm(),new Z.MathNode("mtd",[Jn(t.body,e)]),vm(),new Z.MathNode("mtd",[Jn(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});var wm={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Cm={"\\textbf":"textbf","\\textmd":"textmd"},KF={"\\textit":"textit","\\textup":"textup"},km=(t,e)=>{var r=t.font;return r?wm[r]?e.withTextFontFamily(wm[r]):Cm[r]?e.withTextFontWeight(Cm[r]):e.withTextFontShape(KF[r]):e};ot({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup"],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:ge(i),font:n}},htmlBuilder(t,e){var r=km(t,e),n=Se(t.body,r,!0);return z.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=km(t,e);return Jn(t.body,r)}}),ot({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=$t(t.body,e),n=z.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=z.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},e);return z.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new Z.MathNode("mo",[new Z.TextNode("‾")]);r.setAttribute("stretchy","true");var n=new Z.MathNode("munder",[Qt(t.body,e),r]);return n.setAttribute("accentunder","true"),n}}),ot({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=$t(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return z.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new Z.MathNode("mpadded",[Qt(t.body,e)],["vcenter"])}}),ot({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new tt("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=_m(t),n=[],i=e.havingStyle(e.style.text()),a=0;at.body.replace(/ /g,t.star?"␣":" "),ei=Bp,Sm=`[ \r ]`,ZF="\\\\[a-zA-Z@]+",QF="\\\\[^\uD800-\uDFFF]",JF="("+ZF+")"+Sm+"*",tL=`\\\\( |[ \r ]+ ?)[ \r ]*`,dc="[̀-ͯ]",eL=new RegExp(dc+"+$"),rL="("+Sm+"+)|"+(tL+"|")+"([!-\\[\\]-‧‪-퟿豈-￿]"+(dc+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(dc+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+JF)+("|"+QF+")");class Tm{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(rL,"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 sn("EOF",new mr(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new tt("Unexpected character: '"+e[r]+"'",new sn(e[r],new mr(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 sn(i,new mr(this,r,this.tokenRegex.lastIndex))}}class nL{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 tt("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;i0&&(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}}var iL=em;x("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}}),x("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}}),x("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}}),x("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}}),x("\\@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}}),x("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),x("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});var Am={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};x("\\char",function(t){var e=t.popToken(),r,n="";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 tt("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=Am[e.text],n==null||n>=r)throw new tt("Invalid base-"+r+" digit "+e.text);for(var i;(i=Am[t.future().text])!=null&&i{var n=t.consumeArg().tokens;if(n.length!==1)throw new tt("\\newcommand's first argument must be a macro name");var i=n[0].text,a=t.isDefined(i);if(a&&!e)throw new tt("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!a&&!r)throw new tt("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var s=0;if(n=t.consumeArg().tokens,n.length===1&&n[0].text==="["){for(var o="",l=t.expandNextToken();l.text!=="]"&&l.text!=="EOF";)o+=l.text,l=t.expandNextToken();if(!o.match(/^\s*[0-9]+\s*$/))throw new tt("Invalid number of arguments: "+o);s=parseInt(o),n=t.consumeArg().tokens}return t.macros.set(i,{tokens:n,numArgs:s}),""};x("\\newcommand",t=>pc(t,!1,!0)),x("\\renewcommand",t=>pc(t,!0,!1)),x("\\providecommand",t=>pc(t,!0,!0)),x("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""}),x("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""}),x("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),ei[r],re.math[r],re.text[r]),""}),x("\\bgroup","{"),x("\\egroup","}"),x("~","\\nobreakspace"),x("\\lq","`"),x("\\rq","'"),x("\\aa","\\r a"),x("\\AA","\\r A"),x("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}"),x("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"),x("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}"),x("ℬ","\\mathscr{B}"),x("ℰ","\\mathscr{E}"),x("ℱ","\\mathscr{F}"),x("ℋ","\\mathscr{H}"),x("ℐ","\\mathscr{I}"),x("ℒ","\\mathscr{L}"),x("ℳ","\\mathscr{M}"),x("ℛ","\\mathscr{R}"),x("ℭ","\\mathfrak{C}"),x("ℌ","\\mathfrak{H}"),x("ℨ","\\mathfrak{Z}"),x("\\Bbbk","\\Bbb{k}"),x("·","\\cdotp"),x("\\llap","\\mathllap{\\textrm{#1}}"),x("\\rlap","\\mathrlap{\\textrm{#1}}"),x("\\clap","\\mathclap{\\textrm{#1}}"),x("\\mathstrut","\\vphantom{(}"),x("\\underbar","\\underline{\\text{#1}}"),x("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'),x("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}"),x("\\ne","\\neq"),x("≠","\\neq"),x("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`∉}}"),x("∉","\\notin"),x("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`≘}}"),x("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}"),x("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}"),x("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`≛}}"),x("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`≝}}"),x("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`≞}}"),x("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}"),x("⟂","\\perp"),x("‼","\\mathclose{!\\mkern-0.8mu!}"),x("∌","\\notni"),x("⌜","\\ulcorner"),x("⌝","\\urcorner"),x("⌞","\\llcorner"),x("⌟","\\lrcorner"),x("©","\\copyright"),x("®","\\textregistered"),x("️","\\textregistered"),x("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'),x("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'),x("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'),x("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'),x("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}"),x("⋮","\\vdots"),x("\\varGamma","\\mathit{\\Gamma}"),x("\\varDelta","\\mathit{\\Delta}"),x("\\varTheta","\\mathit{\\Theta}"),x("\\varLambda","\\mathit{\\Lambda}"),x("\\varXi","\\mathit{\\Xi}"),x("\\varPi","\\mathit{\\Pi}"),x("\\varSigma","\\mathit{\\Sigma}"),x("\\varUpsilon","\\mathit{\\Upsilon}"),x("\\varPhi","\\mathit{\\Phi}"),x("\\varPsi","\\mathit{\\Psi}"),x("\\varOmega","\\mathit{\\Omega}"),x("\\substack","\\begin{subarray}{c}#1\\end{subarray}"),x("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax"),x("\\boxed","\\fbox{$\\displaystyle{#1}$}"),x("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;"),x("\\implies","\\DOTSB\\;\\Longrightarrow\\;"),x("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");var Bm={",":"\\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"};x("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in Bm?e=Bm[r]:(r.slice(0,4)==="\\not"||r in re.math&&Ct.contains(["bin","rel"],re.math[r].group))&&(e="\\dotsb"),e});var mc={")":!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};x("\\dotso",function(t){var e=t.future().text;return e in mc?"\\ldots\\,":"\\ldots"}),x("\\dotsc",function(t){var e=t.future().text;return e in mc&&e!==","?"\\ldots\\,":"\\ldots"}),x("\\cdots",function(t){var e=t.future().text;return e in mc?"\\@cdots\\,":"\\@cdots"}),x("\\dotsb","\\cdots"),x("\\dotsm","\\cdots"),x("\\dotsi","\\!\\cdots"),x("\\dotsx","\\ldots\\,"),x("\\DOTSI","\\relax"),x("\\DOTSB","\\relax"),x("\\DOTSX","\\relax"),x("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),x("\\,","\\tmspace+{3mu}{.1667em}"),x("\\thinspace","\\,"),x("\\>","\\mskip{4mu}"),x("\\:","\\tmspace+{4mu}{.2222em}"),x("\\medspace","\\:"),x("\\;","\\tmspace+{5mu}{.2777em}"),x("\\thickspace","\\;"),x("\\!","\\tmspace-{3mu}{.1667em}"),x("\\negthinspace","\\!"),x("\\negmedspace","\\tmspace-{4mu}{.2222em}"),x("\\negthickspace","\\tmspace-{5mu}{.277em}"),x("\\enspace","\\kern.5em "),x("\\enskip","\\hskip.5em\\relax"),x("\\quad","\\hskip1em\\relax"),x("\\qquad","\\hskip2em\\relax"),x("\\tag","\\@ifstar\\tag@literal\\tag@paren"),x("\\tag@paren","\\tag@literal{({#1})}"),x("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new tt("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"}),x("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"),x("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"),x("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}"),x("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"),x("\\newline","\\\\\\relax"),x("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var Em=nt(ln["Main-Regular"]["T".charCodeAt(0)][1]-.7*ln["Main-Regular"]["A".charCodeAt(0)][1]);x("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+Em+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}"),x("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+Em+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}"),x("\\hspace","\\@ifstar\\@hspacer\\@hspace"),x("\\@hspace","\\hskip #1\\relax"),x("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax"),x("\\ordinarycolon",":"),x("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}"),x("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'),x("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'),x("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'),x("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'),x("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'),x("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'),x("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'),x("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'),x("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'),x("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'),x("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'),x("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'),x("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'),x("∷","\\dblcolon"),x("∹","\\eqcolon"),x("≔","\\coloneqq"),x("≕","\\eqqcolon"),x("⩴","\\Coloneqq"),x("\\ratio","\\vcentcolon"),x("\\coloncolon","\\dblcolon"),x("\\colonequals","\\coloneqq"),x("\\coloncolonequals","\\Coloneqq"),x("\\equalscolon","\\eqqcolon"),x("\\equalscoloncolon","\\Eqqcolon"),x("\\colonminus","\\coloneq"),x("\\coloncolonminus","\\Coloneq"),x("\\minuscolon","\\eqcolon"),x("\\minuscoloncolon","\\Eqcolon"),x("\\coloncolonapprox","\\Colonapprox"),x("\\coloncolonsim","\\Colonsim"),x("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),x("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"),x("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),x("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"),x("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}"),x("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}"),x("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}"),x("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}"),x("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}"),x("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}"),x("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}"),x("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}"),x("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}"),x("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}"),x("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}"),x("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}"),x("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}"),x("\\nleqq","\\html@mathml{\\@nleqq}{≰}"),x("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}"),x("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}"),x("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}"),x("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}"),x("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}"),x("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}"),x("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}"),x("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}"),x("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}"),x("\\imath","\\html@mathml{\\@imath}{ı}"),x("\\jmath","\\html@mathml{\\@jmath}{ȷ}"),x("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`⟦}}"),x("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`⟧}}"),x("⟦","\\llbracket"),x("⟧","\\rrbracket"),x("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`⦃}}"),x("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`⦄}}"),x("⦃","\\lBrace"),x("⦄","\\rBrace"),x("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`⦵}}"),x("⦵","\\minuso"),x("\\darr","\\downarrow"),x("\\dArr","\\Downarrow"),x("\\Darr","\\Downarrow"),x("\\lang","\\langle"),x("\\rang","\\rangle"),x("\\uarr","\\uparrow"),x("\\uArr","\\Uparrow"),x("\\Uarr","\\Uparrow"),x("\\N","\\mathbb{N}"),x("\\R","\\mathbb{R}"),x("\\Z","\\mathbb{Z}"),x("\\alef","\\aleph"),x("\\alefsym","\\aleph"),x("\\Alpha","\\mathrm{A}"),x("\\Beta","\\mathrm{B}"),x("\\bull","\\bullet"),x("\\Chi","\\mathrm{X}"),x("\\clubs","\\clubsuit"),x("\\cnums","\\mathbb{C}"),x("\\Complex","\\mathbb{C}"),x("\\Dagger","\\ddagger"),x("\\diamonds","\\diamondsuit"),x("\\empty","\\emptyset"),x("\\Epsilon","\\mathrm{E}"),x("\\Eta","\\mathrm{H}"),x("\\exist","\\exists"),x("\\harr","\\leftrightarrow"),x("\\hArr","\\Leftrightarrow"),x("\\Harr","\\Leftrightarrow"),x("\\hearts","\\heartsuit"),x("\\image","\\Im"),x("\\infin","\\infty"),x("\\Iota","\\mathrm{I}"),x("\\isin","\\in"),x("\\Kappa","\\mathrm{K}"),x("\\larr","\\leftarrow"),x("\\lArr","\\Leftarrow"),x("\\Larr","\\Leftarrow"),x("\\lrarr","\\leftrightarrow"),x("\\lrArr","\\Leftrightarrow"),x("\\Lrarr","\\Leftrightarrow"),x("\\Mu","\\mathrm{M}"),x("\\natnums","\\mathbb{N}"),x("\\Nu","\\mathrm{N}"),x("\\Omicron","\\mathrm{O}"),x("\\plusmn","\\pm"),x("\\rarr","\\rightarrow"),x("\\rArr","\\Rightarrow"),x("\\Rarr","\\Rightarrow"),x("\\real","\\Re"),x("\\reals","\\mathbb{R}"),x("\\Reals","\\mathbb{R}"),x("\\Rho","\\mathrm{P}"),x("\\sdot","\\cdot"),x("\\sect","\\S"),x("\\spades","\\spadesuit"),x("\\sub","\\subset"),x("\\sube","\\subseteq"),x("\\supe","\\supseteq"),x("\\Tau","\\mathrm{T}"),x("\\thetasym","\\vartheta"),x("\\weierp","\\wp"),x("\\Zeta","\\mathrm{Z}"),x("\\argmin","\\DOTSB\\operatorname*{arg\\,min}"),x("\\argmax","\\DOTSB\\operatorname*{arg\\,max}"),x("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),x("\\bra","\\mathinner{\\langle{#1}|}"),x("\\ket","\\mathinner{|{#1}\\rangle}"),x("\\braket","\\mathinner{\\langle{#1}\\rangle}"),x("\\Bra","\\left\\langle#1\\right|"),x("\\Ket","\\left|#1\\right\\rangle");var Fm=t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,s=e.macros.get("|"),o=e.macros.get("\\|");e.macros.beginGroup();var l=h=>f=>{t&&(f.macros.set("|",s),i.length&&f.macros.set("\\|",o));var p=h;if(!h&&i.length){var y=f.future();y.text==="|"&&(f.popToken(),p=!0)}return{tokens:p?i:n,numArgs:0}};e.macros.set("|",l(!1)),i.length&&e.macros.set("\\|",l(!0));var u=e.consumeArg().tokens,c=e.expandTokens([...a,...u,...r]);return e.macros.endGroup(),{tokens:c.reverse(),numArgs:0}};x("\\bra@ket",Fm(!1)),x("\\bra@set",Fm(!0)),x("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"),x("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"),x("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"),x("\\angln","{\\angl n}"),x("\\blue","\\textcolor{##6495ed}{#1}"),x("\\orange","\\textcolor{##ffa500}{#1}"),x("\\pink","\\textcolor{##ff00af}{#1}"),x("\\red","\\textcolor{##df0030}{#1}"),x("\\green","\\textcolor{##28ae7b}{#1}"),x("\\gray","\\textcolor{gray}{#1}"),x("\\purple","\\textcolor{##9d38bd}{#1}"),x("\\blueA","\\textcolor{##ccfaff}{#1}"),x("\\blueB","\\textcolor{##80f6ff}{#1}"),x("\\blueC","\\textcolor{##63d9ea}{#1}"),x("\\blueD","\\textcolor{##11accd}{#1}"),x("\\blueE","\\textcolor{##0c7f99}{#1}"),x("\\tealA","\\textcolor{##94fff5}{#1}"),x("\\tealB","\\textcolor{##26edd5}{#1}"),x("\\tealC","\\textcolor{##01d1c1}{#1}"),x("\\tealD","\\textcolor{##01a995}{#1}"),x("\\tealE","\\textcolor{##208170}{#1}"),x("\\greenA","\\textcolor{##b6ffb0}{#1}"),x("\\greenB","\\textcolor{##8af281}{#1}"),x("\\greenC","\\textcolor{##74cf70}{#1}"),x("\\greenD","\\textcolor{##1fab54}{#1}"),x("\\greenE","\\textcolor{##0d923f}{#1}"),x("\\goldA","\\textcolor{##ffd0a9}{#1}"),x("\\goldB","\\textcolor{##ffbb71}{#1}"),x("\\goldC","\\textcolor{##ff9c39}{#1}"),x("\\goldD","\\textcolor{##e07d10}{#1}"),x("\\goldE","\\textcolor{##a75a05}{#1}"),x("\\redA","\\textcolor{##fca9a9}{#1}"),x("\\redB","\\textcolor{##ff8482}{#1}"),x("\\redC","\\textcolor{##f9685d}{#1}"),x("\\redD","\\textcolor{##e84d39}{#1}"),x("\\redE","\\textcolor{##bc2612}{#1}"),x("\\maroonA","\\textcolor{##ffbde0}{#1}"),x("\\maroonB","\\textcolor{##ff92c6}{#1}"),x("\\maroonC","\\textcolor{##ed5fa6}{#1}"),x("\\maroonD","\\textcolor{##ca337c}{#1}"),x("\\maroonE","\\textcolor{##9e034e}{#1}"),x("\\purpleA","\\textcolor{##ddd7ff}{#1}"),x("\\purpleB","\\textcolor{##c6b9fc}{#1}"),x("\\purpleC","\\textcolor{##aa87ff}{#1}"),x("\\purpleD","\\textcolor{##7854ab}{#1}"),x("\\purpleE","\\textcolor{##543b78}{#1}"),x("\\mintA","\\textcolor{##f5f9e8}{#1}"),x("\\mintB","\\textcolor{##edf2df}{#1}"),x("\\mintC","\\textcolor{##e0e5cc}{#1}"),x("\\grayA","\\textcolor{##f6f7f7}{#1}"),x("\\grayB","\\textcolor{##f0f1f2}{#1}"),x("\\grayC","\\textcolor{##e3e5e6}{#1}"),x("\\grayD","\\textcolor{##d6d8da}{#1}"),x("\\grayE","\\textcolor{##babec2}{#1}"),x("\\grayF","\\textcolor{##888d93}{#1}"),x("\\grayG","\\textcolor{##626569}{#1}"),x("\\grayH","\\textcolor{##3b3e40}{#1}"),x("\\grayI","\\textcolor{##21242c}{#1}"),x("\\kaBlue","\\textcolor{##314453}{#1}"),x("\\kaGreen","\\textcolor{##71B307}{#1}");var Lm={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};class aL{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 nL(iL,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new Tm(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 sn("EOF",n.loc)),this.pushTokens(i),r.range(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,s=0,o=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new tt("Extra }",a)}else if(a.text==="EOF")throw new tt("Unexpected end of input in a macro argument, expected '"+(e&&n?e[o]:"}")+"'",a);if(e&&n)if((s===0||s===1&&e[o]==="{")&&a.text===e[o]){if(++o,o===e.length){r.splice(-o,o);break}}else o=0}while(s!==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 tt("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;ithis.settings.maxExpand)throw new tt("Too many expansions: infinite loop or need to increase maxExpand setting");var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var o=a.length-1;o>=0;--o){var l=a[o];if(l.text==="#"){if(o===0)throw new tt("Incomplete placeholder at end of macro body",l);if(l=a[--o],l.text==="#")a.splice(o+1,1);else if(/^[1-9]$/.test(l.text))a.splice(o,2,...s[+l.text-1]);else throw new tt("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}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new sn(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 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.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var o=new Tm(i,this.settings),l=[],u=o.lex();u.text!=="EOF";)l.push(u),u=o.lex();l.reverse();var c={tokens:l,numArgs:a};return c}return i}isDefined(e){return this.macros.has(e)||ei.hasOwnProperty(e)||re.math.hasOwnProperty(e)||re.text.hasOwnProperty(e)||Lm.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:ei.hasOwnProperty(e)&&!ei[e].primitive}}var Mm=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,To=Object.freeze({"₊":"+","₋":"-","₌":"=","₍":"(","₎":")","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9","ₐ":"a","ₑ":"e","ₕ":"h","ᵢ":"i","ⱼ":"j","ₖ":"k","ₗ":"l","ₘ":"m","ₙ":"n","ₒ":"o","ₚ":"p","ᵣ":"r","ₛ":"s","ₜ":"t","ᵤ":"u","ᵥ":"v","ₓ":"x","ᵦ":"β","ᵧ":"γ","ᵨ":"ρ","ᵩ":"ϕ","ᵪ":"χ","⁺":"+","⁻":"-","⁼":"=","⁽":"(","⁾":")","⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","ᴬ":"A","ᴮ":"B","ᴰ":"D","ᴱ":"E","ᴳ":"G","ᴴ":"H","ᴵ":"I","ᴶ":"J","ᴷ":"K","ᴸ":"L","ᴹ":"M","ᴺ":"N","ᴼ":"O","ᴾ":"P","ᴿ":"R","ᵀ":"T","ᵁ":"U","ⱽ":"V","ᵂ":"W","ᵃ":"a","ᵇ":"b","ᶜ":"c","ᵈ":"d","ᵉ":"e","ᶠ":"f","ᵍ":"g",ʰ:"h","ⁱ":"i",ʲ:"j","ᵏ":"k",ˡ:"l","ᵐ":"m",ⁿ:"n","ᵒ":"o","ᵖ":"p",ʳ:"r",ˢ:"s","ᵗ":"t","ᵘ":"u","ᵛ":"v",ʷ:"w",ˣ:"x",ʸ:"y","ᶻ":"z","ᵝ":"β","ᵞ":"γ","ᵟ":"δ","ᵠ":"ϕ","ᵡ":"χ","ᶿ":"θ"}),gc={"́":{text:"\\'",math:"\\acute"},"̀":{text:"\\`",math:"\\grave"},"̈":{text:'\\"',math:"\\ddot"},"̃":{text:"\\~",math:"\\tilde"},"̄":{text:"\\=",math:"\\bar"},"̆":{text:"\\u",math:"\\breve"},"̌":{text:"\\v",math:"\\check"},"̂":{text:"\\^",math:"\\hat"},"̇":{text:"\\.",math:"\\dot"},"̊":{text:"\\r",math:"\\mathring"},"̋":{text:"\\H"},"̧":{text:"\\c"}},Dm={á:"á",à:"à",ä:"ä",ǟ:"ǟ",ã:"ã",ā:"ā",ă:"ă",ắ:"ắ",ằ:"ằ",ẵ:"ẵ",ǎ:"ǎ",â:"â",ấ:"ấ",ầ:"ầ",ẫ:"ẫ",ȧ:"ȧ",ǡ:"ǡ",å:"å",ǻ:"ǻ",ḃ:"ḃ",ć:"ć",ḉ:"ḉ",č:"č",ĉ:"ĉ",ċ:"ċ",ç:"ç",ď:"ď",ḋ:"ḋ",ḑ:"ḑ",é:"é",è:"è",ë:"ë",ẽ:"ẽ",ē:"ē",ḗ:"ḗ",ḕ:"ḕ",ĕ:"ĕ",ḝ:"ḝ",ě:"ě",ê:"ê",ế:"ế",ề:"ề",ễ:"ễ",ė:"ė",ȩ:"ȩ",ḟ:"ḟ",ǵ:"ǵ",ḡ:"ḡ",ğ:"ğ",ǧ:"ǧ",ĝ:"ĝ",ġ:"ġ",ģ:"ģ",ḧ:"ḧ",ȟ:"ȟ",ĥ:"ĥ",ḣ:"ḣ",ḩ:"ḩ",í:"í",ì:"ì",ï:"ï",ḯ:"ḯ",ĩ:"ĩ",ī:"ī",ĭ:"ĭ",ǐ:"ǐ",î:"î",ǰ:"ǰ",ĵ:"ĵ",ḱ:"ḱ",ǩ:"ǩ",ķ:"ķ",ĺ:"ĺ",ľ:"ľ",ļ:"ļ",ḿ:"ḿ",ṁ:"ṁ",ń:"ń",ǹ:"ǹ",ñ:"ñ",ň:"ň",ṅ:"ṅ",ņ:"ņ",ó:"ó",ò:"ò",ö:"ö",ȫ:"ȫ",õ:"õ",ṍ:"ṍ",ṏ:"ṏ",ȭ:"ȭ",ō:"ō",ṓ:"ṓ",ṑ:"ṑ",ŏ:"ŏ",ǒ:"ǒ",ô:"ô",ố:"ố",ồ:"ồ",ỗ:"ỗ",ȯ:"ȯ",ȱ:"ȱ",ő:"ő",ṕ:"ṕ",ṗ:"ṗ",ŕ:"ŕ",ř:"ř",ṙ:"ṙ",ŗ:"ŗ",ś:"ś",ṥ:"ṥ",š:"š",ṧ:"ṧ",ŝ:"ŝ",ṡ:"ṡ",ş:"ş",ẗ:"ẗ",ť:"ť",ṫ:"ṫ",ţ:"ţ",ú:"ú",ù:"ù",ü:"ü",ǘ:"ǘ",ǜ:"ǜ",ǖ:"ǖ",ǚ:"ǚ",ũ:"ũ",ṹ:"ṹ",ū:"ū",ṻ:"ṻ",ŭ:"ŭ",ǔ:"ǔ",û:"û",ů:"ů",ű:"ű",ṽ:"ṽ",ẃ:"ẃ",ẁ:"ẁ",ẅ:"ẅ",ŵ:"ŵ",ẇ:"ẇ",ẘ:"ẘ",ẍ:"ẍ",ẋ:"ẋ",ý:"ý",ỳ:"ỳ",ÿ:"ÿ",ỹ:"ỹ",ȳ:"ȳ",ŷ:"ŷ",ẏ:"ẏ",ẙ:"ẙ",ź:"ź",ž:"ž",ẑ:"ẑ",ż:"ż",Á:"Á",À:"À",Ä:"Ä",Ǟ:"Ǟ",Ã:"Ã",Ā:"Ā",Ă:"Ă",Ắ:"Ắ",Ằ:"Ằ",Ẵ:"Ẵ",Ǎ:"Ǎ",Â:"Â",Ấ:"Ấ",Ầ:"Ầ",Ẫ:"Ẫ",Ȧ:"Ȧ",Ǡ:"Ǡ",Å:"Å",Ǻ:"Ǻ",Ḃ:"Ḃ",Ć:"Ć",Ḉ:"Ḉ",Č:"Č",Ĉ:"Ĉ",Ċ:"Ċ",Ç:"Ç",Ď:"Ď",Ḋ:"Ḋ",Ḑ:"Ḑ",É:"É",È:"È",Ë:"Ë",Ẽ:"Ẽ",Ē:"Ē",Ḗ:"Ḗ",Ḕ:"Ḕ",Ĕ:"Ĕ",Ḝ:"Ḝ",Ě:"Ě",Ê:"Ê",Ế:"Ế",Ề:"Ề",Ễ:"Ễ",Ė:"Ė",Ȩ:"Ȩ",Ḟ:"Ḟ",Ǵ:"Ǵ",Ḡ:"Ḡ",Ğ:"Ğ",Ǧ:"Ǧ",Ĝ:"Ĝ",Ġ:"Ġ",Ģ:"Ģ",Ḧ:"Ḧ",Ȟ:"Ȟ",Ĥ:"Ĥ",Ḣ:"Ḣ",Ḩ:"Ḩ",Í:"Í",Ì:"Ì",Ï:"Ï",Ḯ:"Ḯ",Ĩ:"Ĩ",Ī:"Ī",Ĭ:"Ĭ",Ǐ:"Ǐ",Î:"Î",İ:"İ",Ĵ:"Ĵ",Ḱ:"Ḱ",Ǩ:"Ǩ",Ķ:"Ķ",Ĺ:"Ĺ",Ľ:"Ľ",Ļ:"Ļ",Ḿ:"Ḿ",Ṁ:"Ṁ",Ń:"Ń",Ǹ:"Ǹ",Ñ:"Ñ",Ň:"Ň",Ṅ:"Ṅ",Ņ:"Ņ",Ó:"Ó",Ò:"Ò",Ö:"Ö",Ȫ:"Ȫ",Õ:"Õ",Ṍ:"Ṍ",Ṏ:"Ṏ",Ȭ:"Ȭ",Ō:"Ō",Ṓ:"Ṓ",Ṑ:"Ṑ",Ŏ:"Ŏ",Ǒ:"Ǒ",Ô:"Ô",Ố:"Ố",Ồ:"Ồ",Ỗ:"Ỗ",Ȯ:"Ȯ",Ȱ:"Ȱ",Ő:"Ő",Ṕ:"Ṕ",Ṗ:"Ṗ",Ŕ:"Ŕ",Ř:"Ř",Ṙ:"Ṙ",Ŗ:"Ŗ",Ś:"Ś",Ṥ:"Ṥ",Š:"Š",Ṧ:"Ṧ",Ŝ:"Ŝ",Ṡ:"Ṡ",Ş:"Ş",Ť:"Ť",Ṫ:"Ṫ",Ţ:"Ţ",Ú:"Ú",Ù:"Ù",Ü:"Ü",Ǘ:"Ǘ",Ǜ:"Ǜ",Ǖ:"Ǖ",Ǚ:"Ǚ",Ũ:"Ũ",Ṹ:"Ṹ",Ū:"Ū",Ṻ:"Ṻ",Ŭ:"Ŭ",Ǔ:"Ǔ",Û:"Û",Ů:"Ů",Ű:"Ű",Ṽ:"Ṽ",Ẃ:"Ẃ",Ẁ:"Ẁ",Ẅ:"Ẅ",Ŵ:"Ŵ",Ẇ:"Ẇ",Ẍ:"Ẍ",Ẋ:"Ẋ",Ý:"Ý",Ỳ:"Ỳ",Ÿ:"Ÿ",Ỹ:"Ỹ",Ȳ:"Ȳ",Ŷ:"Ŷ",Ẏ:"Ẏ",Ź:"Ź",Ž:"Ž",Ẑ:"Ẑ",Ż:"Ż",ά:"ά",ὰ:"ὰ",ᾱ:"ᾱ",ᾰ:"ᾰ",έ:"έ",ὲ:"ὲ",ή:"ή",ὴ:"ὴ",ί:"ί",ὶ:"ὶ",ϊ:"ϊ",ΐ:"ΐ",ῒ:"ῒ",ῑ:"ῑ",ῐ:"ῐ",ό:"ό",ὸ:"ὸ",ύ:"ύ",ὺ:"ὺ",ϋ:"ϋ",ΰ:"ΰ",ῢ:"ῢ",ῡ:"ῡ",ῠ:"ῠ",ώ:"ώ",ὼ:"ὼ",Ύ:"Ύ",Ὺ:"Ὺ",Ϋ:"Ϋ",Ῡ:"Ῡ",Ῠ:"Ῠ",Ώ:"Ώ",Ὼ:"Ὼ"};class ms{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 aL(e,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new tt("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 sn("}")),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(ms.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||e&&ei[i.text]&&ei[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=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var o=re[this.mode][r].group,l=mr.range(e),u;if(jE.hasOwnProperty(o)){var c=o;u={type:"atom",mode:this.mode,family:c,loc:l,text:r}}else u={type:o,mode:this.mode,loc:l,text:r};s=u}else if(r.charCodeAt(0)>=128)this.settings.strict&&(lp(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)),s={type:"textord",mode:"text",loc:mr.range(e),text:r};else return null;if(this.consume(),a)for(var h=0;h