=d)&&(u=d);else{let d=-1;for(let p of i)(p=s(p,++d,i))!=null&&(u=p)&&(u=p)}return u}function WAt(i,s){let u;if(s===void 0)for(const d of i)d!=null&&(u>d||u===void 0&&d>=d)&&(u=d);else{let d=-1;for(let p of i)(p=s(p,++d,i))!=null&&(u>p||u===void 0&&p>=p)&&(u=p)}return u}function YAt(i,s,u){i=+i,s=+s,u=(p=arguments.length)<2?(s=i,i=0,1):p<3?1:+u;for(var d=-1,p=Math.max(0,Math.ceil((s-i)/u))|0,v=new Array(p);++d
+i(s)}function eLt(i,s){return s=Math.max(0,i.bandwidth()-s*2)/2,i.round()&&(s=Math.round(s)),u=>+i(u)+s}function tLt(){return!this.__axis}function hBe(i,s){var u=[],d=null,p=null,v=6,b=6,y=3,T=typeof window<"u"&&window.devicePixelRatio>1?0:.5,_=i===OY||i===NY?-1:1,A=i===NY||i===bpe?"x":"y",P=i===OY||i===mpe?QAt:JAt;function R(F){var j=d??(s.ticks?s.ticks.apply(s,u):s.domain()),K=p??(s.tickFormat?s.tickFormat.apply(s,u):XAt),ee=Math.max(v,0)+y,ie=s.range(),oe=+ie[0]+T,pe=+ie[ie.length-1]+T,be=(s.bandwidth?eLt:ZAt)(s.copy(),T),ae=F.selection?F.selection():F,ne=ae.selectAll(".domain").data([null]),se=ae.selectAll(".tick").data(j,s).order(),de=se.exit(),X=se.enter().append("g").attr("class","tick"),ge=se.select("line"),W=se.select("text");ne=ne.merge(ne.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),se=se.merge(X),ge=ge.merge(X.append("line").attr("stroke","currentColor").attr(A+"2",_*v)),W=W.merge(X.append("text").attr("fill","currentColor").attr(A,_*ee).attr("dy",i===OY?"0em":i===mpe?"0.71em":"0.32em")),F!==ae&&(ne=ne.transition(F),se=se.transition(F),ge=ge.transition(F),W=W.transition(F),de=de.transition(F).attr("opacity",lBe).attr("transform",function(xe){return isFinite(xe=be(xe))?P(xe+T):this.getAttribute("transform")}),X.attr("opacity",lBe).attr("transform",function(xe){var U=this.parentNode.__axis;return P((U&&isFinite(U=U(xe))?U:be(xe))+T)})),de.remove(),ne.attr("d",i===NY||i===bpe?b?"M"+_*b+","+oe+"H"+T+"V"+pe+"H"+_*b:"M"+T+","+oe+"V"+pe:b?"M"+oe+","+_*b+"V"+T+"H"+pe+"V"+_*b:"M"+oe+","+T+"H"+pe),se.attr("opacity",1).attr("transform",function(xe){return P(be(xe)+T)}),ge.attr(A+"2",_*v),W.attr(A,_*ee).text(K),ae.filter(tLt).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",i===bpe?"start":i===NY?"end":"middle"),ae.each(function(){this.__axis=be})}return R.scale=function(F){return arguments.length?(s=F,R):s},R.ticks=function(){return u=Array.from(arguments),R},R.tickArguments=function(F){return arguments.length?(u=F==null?[]:Array.from(F),R):u.slice()},R.tickValues=function(F){return arguments.length?(d=F==null?null:Array.from(F),R):d&&d.slice()},R.tickFormat=function(F){return arguments.length?(p=F,R):p},R.tickSize=function(F){return arguments.length?(v=b=+F,R):v},R.tickSizeInner=function(F){return arguments.length?(v=+F,R):v},R.tickSizeOuter=function(F){return arguments.length?(b=+F,R):b},R.tickPadding=function(F){return arguments.length?(y=+F,R):y},R.offset=function(F){return arguments.length?(T=+F,R):T},R}function nLt(i){return hBe(OY,i)}function rLt(i){return hBe(mpe,i)}var iLt={value:()=>{}};function fBe(){for(var i=0,s=arguments.length,u={},d;i=0&&(d=u.slice(p+1),u=u.slice(0,p)),u&&!s.hasOwnProperty(u))throw new Error("unknown type: "+u);return{type:u,name:d}})}PY.prototype=fBe.prototype={constructor:PY,on:function(i,s){var u=this._,d=sLt(i+"",u),p,v=-1,b=d.length;if(arguments.length<2){for(;++v0)for(var u=new Array(p),d=0,p,v;d
=0&&(s=i.slice(0,u))!=="xmlns"&&(i=i.slice(u+1)),gBe.hasOwnProperty(s)?{space:gBe[s],local:i}:i}function oLt(i){return function(){var s=this.ownerDocument,u=this.namespaceURI;return u===vpe&&s.documentElement.namespaceURI===vpe?s.createElement(i):s.createElementNS(u,i)}}function cLt(i){return function(){return this.ownerDocument.createElementNS(i.space,i.local)}}function pBe(i){var s=BY(i);return(s.local?cLt:oLt)(s)}function uLt(){}function wpe(i){return i==null?uLt:function(){return this.querySelector(i)}}function lLt(i){typeof i!="function"&&(i=wpe(i));for(var s=this._groups,u=s.length,d=new Array(u),p=0;p=pe&&(pe=oe+1);!(ae=ee[pe])&&++pe=0;)(b=d[p])&&(v&&b.compareDocumentPosition(v)^4&&v.parentNode.insertBefore(b,v),v=b);return this}function NLt(i){i||(i=PLt);function s(P,R){return P&&R?i(P.__data__,R.__data__):!P-!R}for(var u=this._groups,d=u.length,p=new Array(d),v=0;vs?1:i>=s?0:NaN}function BLt(){var i=arguments[0];return arguments[0]=this,i.apply(null,arguments),this}function FLt(){return Array.from(this)}function RLt(){for(var i=this._groups,s=0,u=i.length;s1?this.each((s==null?YLt:typeof s=="function"?QLt:XLt)(i,s,u??"")):ZM(this.node(),i)}function ZM(i,s){return i.style.getPropertyValue(s)||xBe(i).getComputedStyle(i,null).getPropertyValue(s)}function ZLt(i){return function(){delete this[i]}}function eMt(i,s){return function(){this[i]=s}}function tMt(i,s){return function(){var u=s.apply(this,arguments);u==null?delete this[i]:this[i]=u}}function nMt(i,s){return arguments.length>1?this.each((s==null?ZLt:typeof s=="function"?tMt:eMt)(i,s)):this.node()[i]}function kBe(i){return i.trim().split(/^|\s+/)}function ype(i){return i.classList||new EBe(i)}function EBe(i){this._node=i,this._names=kBe(i.getAttribute("class")||"")}EBe.prototype={add:function(i){var s=this._names.indexOf(i);s<0&&(this._names.push(i),this._node.setAttribute("class",this._names.join(" ")))},remove:function(i){var s=this._names.indexOf(i);s>=0&&(this._names.splice(s,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(i){return this._names.indexOf(i)>=0}};function TBe(i,s){for(var u=ype(i),d=-1,p=s.length;++d=0&&(u=s.slice(d+1),s=s.slice(0,d)),{type:s,name:u}})}function MMt(i){return function(){var s=this.__on;if(s){for(var u=0,d=-1,p=s.length,v;u
>8&15|s>>4&240,s>>4&15|s&240,(s&15)<<4|s&15,1):u===8?$Y(s>>24&255,s>>16&255,s>>8&255,(s&255)/255):u===4?$Y(s>>12&15|s>>8&240,s>>8&15|s>>4&240,s>>4&15|s&240,((s&15)<<4|s&15)/255):null):(s=jMt.exec(i))?new Mg(s[1],s[2],s[3],1):(s=$Mt.exec(i))?new Mg(s[1]*255/100,s[2]*255/100,s[3]*255/100,1):(s=zMt.exec(i))?$Y(s[1],s[2],s[3],s[4]):(s=qMt.exec(i))?$Y(s[1]*255/100,s[2]*255/100,s[3]*255/100,s[4]):(s=HMt.exec(i))?PBe(s[1],s[2]/100,s[3]/100,1):(s=VMt.exec(i))?PBe(s[1],s[2]/100,s[3]/100,s[4]):ABe.hasOwnProperty(i)?DBe(ABe[i]):i==="transparent"?new Mg(NaN,NaN,NaN,0):null}function DBe(i){return new Mg(i>>16&255,i>>8&255,i&255,1)}function $Y(i,s,u,d){return d<=0&&(i=s=u=NaN),new Mg(i,s,u,d)}function IBe(i){return i instanceof fC||(i=dC(i)),i?(i=i.rgb(),new Mg(i.r,i.g,i.b,i.opacity)):new Mg}function kpe(i,s,u,d){return arguments.length===1?IBe(i):new Mg(i,s,u,d??1)}function Mg(i,s,u,d){this.r=+i,this.g=+s,this.b=+u,this.opacity=+d}wF(Mg,kpe,RY(fC,{brighter(i){return i=i==null?jY:Math.pow(jY,i),new Mg(this.r*i,this.g*i,this.b*i,this.opacity)},darker(i){return i=i==null?yF:Math.pow(yF,i),new Mg(this.r*i,this.g*i,this.b*i,this.opacity)},rgb(){return this},clamp(){return new Mg(gC(this.r),gC(this.g),gC(this.b),zY(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:OBe,formatHex:OBe,formatHex8:KMt,formatRgb:NBe,toString:NBe}));function OBe(){return`#${pC(this.r)}${pC(this.g)}${pC(this.b)}`}function KMt(){return`#${pC(this.r)}${pC(this.g)}${pC(this.b)}${pC((isNaN(this.opacity)?1:this.opacity)*255)}`}function NBe(){const i=zY(this.opacity);return`${i===1?"rgb(":"rgba("}${gC(this.r)}, ${gC(this.g)}, ${gC(this.b)}${i===1?")":`, ${i})`}`}function zY(i){return isNaN(i)?1:Math.max(0,Math.min(1,i))}function gC(i){return Math.max(0,Math.min(255,Math.round(i)||0))}function pC(i){return i=gC(i),(i<16?"0":"")+i.toString(16)}function PBe(i,s,u,d){return d<=0?i=s=u=NaN:u<=0||u>=1?i=s=NaN:s<=0&&(i=NaN),new A3(i,s,u,d)}function BBe(i){if(i instanceof A3)return new A3(i.h,i.s,i.l,i.opacity);if(i instanceof fC||(i=dC(i)),!i)return new A3;if(i instanceof A3)return i;i=i.rgb();var s=i.r/255,u=i.g/255,d=i.b/255,p=Math.min(s,u,d),v=Math.max(s,u,d),b=NaN,y=v-p,T=(v+p)/2;return y?(s===v?b=(u-d)/y+(u0&&T<1?0:b,new A3(b,y,T,i.opacity)}function WMt(i,s,u,d){return arguments.length===1?BBe(i):new A3(i,s,u,d??1)}function A3(i,s,u,d){this.h=+i,this.s=+s,this.l=+u,this.opacity=+d}wF(A3,WMt,RY(fC,{brighter(i){return i=i==null?jY:Math.pow(jY,i),new A3(this.h,this.s,this.l*i,this.opacity)},darker(i){return i=i==null?yF:Math.pow(yF,i),new A3(this.h,this.s,this.l*i,this.opacity)},rgb(){var i=this.h%360+(this.h<0)*360,s=isNaN(i)||isNaN(this.s)?0:this.s,u=this.l,d=u+(u<.5?u:1-u)*s,p=2*u-d;return new Mg(Epe(i>=240?i-240:i+120,p,d),Epe(i,p,d),Epe(i<120?i+240:i-120,p,d),this.opacity)},clamp(){return new A3(FBe(this.h),qY(this.s),qY(this.l),zY(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 i=zY(this.opacity);return`${i===1?"hsl(":"hsla("}${FBe(this.h)}, ${qY(this.s)*100}%, ${qY(this.l)*100}%${i===1?")":`, ${i})`}`}}));function FBe(i){return i=(i||0)%360,i<0?i+360:i}function qY(i){return Math.max(0,Math.min(1,i||0))}function Epe(i,s,u){return(i<60?s+(u-s)*i/60:i<180?u:i<240?s+(u-s)*(240-i)/60:s)*255}const YMt=Math.PI/180,XMt=180/Math.PI,HY=18,RBe=.96422,jBe=1,$Be=.82521,zBe=4/29,tD=6/29,qBe=3*tD*tD,QMt=tD*tD*tD;function HBe(i){if(i instanceof j4)return new j4(i.l,i.a,i.b,i.opacity);if(i instanceof p7)return VBe(i);i instanceof Mg||(i=IBe(i));var s=_pe(i.r),u=_pe(i.g),d=_pe(i.b),p=Tpe((.2225045*s+.7168786*u+.0606169*d)/jBe),v,b;return s===u&&u===d?v=b=p:(v=Tpe((.4360747*s+.3850649*u+.1430804*d)/RBe),b=Tpe((.0139322*s+.0971045*u+.7141733*d)/$Be)),new j4(116*p-16,500*(v-p),200*(p-b),i.opacity)}function JMt(i,s,u,d){return arguments.length===1?HBe(i):new j4(i,s,u,d??1)}function j4(i,s,u,d){this.l=+i,this.a=+s,this.b=+u,this.opacity=+d}wF(j4,JMt,RY(fC,{brighter(i){return new j4(this.l+HY*(i??1),this.a,this.b,this.opacity)},darker(i){return new j4(this.l-HY*(i??1),this.a,this.b,this.opacity)},rgb(){var i=(this.l+16)/116,s=isNaN(this.a)?i:i+this.a/500,u=isNaN(this.b)?i:i-this.b/200;return s=RBe*Cpe(s),i=jBe*Cpe(i),u=$Be*Cpe(u),new Mg(Spe(3.1338561*s-1.6168667*i-.4906146*u),Spe(-.9787684*s+1.9161415*i+.033454*u),Spe(.0719453*s-.2289914*i+1.4052427*u),this.opacity)}}));function Tpe(i){return i>QMt?Math.pow(i,1/3):i/qBe+zBe}function Cpe(i){return i>tD?i*i*i:qBe*(i-zBe)}function Spe(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function _pe(i){return(i/=255)<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function ZMt(i){if(i instanceof p7)return new p7(i.h,i.c,i.l,i.opacity);if(i instanceof j4||(i=HBe(i)),i.a===0&&i.b===0)return new p7(NaN,0()=>i;function UBe(i,s){return function(u){return i+u*s}}function eDt(i,s,u){return i=Math.pow(i,u),s=Math.pow(s,u)-i,u=1/u,function(d){return Math.pow(i+d*s,u)}}function tDt(i,s){var u=s-i;return u?UBe(i,u>180||u<-180?u-360*Math.round(u/360):u):VY(isNaN(i)?s:i)}function nDt(i){return(i=+i)==1?kF:function(s,u){return u-s?eDt(s,u,i):VY(isNaN(s)?u:s)}}function kF(i,s){var u=s-i;return u?UBe(i,u):VY(isNaN(i)?s:i)}const UY=function i(s){var u=nDt(s);function d(p,v){var b=u((p=kpe(p)).r,(v=kpe(v)).r),y=u(p.g,v.g),T=u(p.b,v.b),_=kF(p.opacity,v.opacity);return function(A){return p.r=b(A),p.g=y(A),p.b=T(A),p.opacity=_(A),p+""}}return d.gamma=i,d}(1);function rDt(i,s){s||(s=[]);var u=i?Math.min(s.length,i.length):0,d=s.slice(),p;return function(v){for(p=0;pu&&(v=s.slice(u,v),y[b]?y[b]+=v:y[++b]=v),(d=d[0])===(p=p[0])?y[b]?y[b]+=p:y[++b]=p:(y[++b]=null,T.push({i:b,x:L3(d,p)})),u=Mpe.lastIndex;return u180?A+=360:A-_>180&&(_+=360),R.push({i:P.push(p(P)+"rotate(",null,d)-2,x:L3(_,A)})):A&&P.push(p(P)+"rotate("+A+d)}function y(_,A,P,R){_!==A?R.push({i:P.push(p(P)+"skewX(",null,d)-2,x:L3(_,A)}):A&&P.push(p(P)+"skewX("+A+d)}function T(_,A,P,R,F,j){if(_!==P||A!==R){var K=F.push(p(F)+"scale(",null,",",null,")");j.push({i:K-4,x:L3(_,P)},{i:K-2,x:L3(A,R)})}else(P!==1||R!==1)&&F.push(p(F)+"scale("+P+","+R+")")}return function(_,A){var P=[],R=[];return _=i(_),A=i(A),v(_.translateX,_.translateY,A.translateX,A.translateY,P,R),b(_.rotate,A.rotate,P,R),y(_.skewX,A.skewX,P,R),T(_.scaleX,_.scaleY,A.scaleX,A.scaleY,P,R),_=A=null,function(F){for(var j=-1,K=R.length,ee;++j=0&&i._call.call(void 0,s),i=i._next;--nD}function ZBe(){bC=(WY=SF.now())+YY,nD=EF=0;try{vDt()}finally{nD=0,yDt(),bC=0}}function wDt(){var i=SF.now(),s=i-WY;s>XBe&&(YY-=s,WY=i)}function yDt(){for(var i,s=KY,u,d=1/0;s;)s._call?(d>s._time&&(d=s._time),i=s,s=s._next):(u=s._next,s._next=null,s=i?i._next=u:KY=u);CF=i,Npe(d)}function Npe(i){if(!nD){EF&&(EF=clearTimeout(EF));var s=i-bC;s>24?(i<1/0&&(EF=setTimeout(ZBe,i-SF.now()-YY)),TF&&(TF=clearInterval(TF))):(TF||(WY=SF.now(),TF=setInterval(wDt,XBe)),nD=1,QBe(ZBe))}}function eFe(i,s,u){var d=new XY;return s=s==null?0:+s,d.restart(p=>{d.stop(),i(p+s)},s,u),d}var xDt=fBe("start","end","cancel","interrupt"),kDt=[],tFe=0,nFe=1,Ppe=2,QY=3,rFe=4,Bpe=5,JY=6;function ZY(i,s,u,d,p,v){var b=i.__transition;if(!b)i.__transition={};else if(u in b)return;EDt(i,u,{name:s,index:d,group:p,on:xDt,tween:kDt,time:v.time,delay:v.delay,duration:v.duration,ease:v.ease,timer:null,state:tFe})}function Fpe(i,s){var u=M3(i,s);if(u.state>tFe)throw new Error("too late; already scheduled");return u}function $4(i,s){var u=M3(i,s);if(u.state>QY)throw new Error("too late; already running");return u}function M3(i,s){var u=i.__transition;if(!u||!(u=u[s]))throw new Error("transition not found");return u}function EDt(i,s,u){var d=i.__transition,p;d[s]=u,u.timer=JBe(v,0,u.time);function v(_){u.state=nFe,u.timer.restart(b,u.delay,u.time),u.delay<=_&&b(_-u.delay)}function b(_){var A,P,R,F;if(u.state!==nFe)return T();for(A in d)if(F=d[A],F.name===u.name){if(F.state===QY)return eFe(b);F.state===rFe?(F.state=JY,F.timer.stop(),F.on.call("interrupt",i,i.__data__,F.index,F.group),delete d[A]):+APpe&&d.state=0&&(s=s.slice(0,u)),!s||s==="start"})}function eIt(i,s,u){var d,p,v=ZDt(s)?Fpe:$4;return function(){var b=v(this,i),y=b.on;y!==d&&(p=(d=y).copy()).on(s,u),b.on=p}}function tIt(i,s){var u=this._id;return arguments.length<2?M3(this.node(),u).on.on(i):this.each(eIt(u,i,s))}function nIt(i){return function(){var s=this.parentNode;for(var u in this.__transition)if(+u!==i)return;s&&s.removeChild(this)}}function rIt(){return this.on("end.remove",nIt(this._id))}function iIt(i){var s=this._name,u=this._id;typeof i!="function"&&(i=wpe(i));for(var d=this._groups,p=d.length,v=new Array(p),b=0;b=0))throw new Error(`invalid digits: ${i}`);if(s>15)return oFe;const u=10**s;return function(d){this._+=d[0];for(let p=1,v=d.length;pmC)if(!(Math.abs(P*T-_*A)>mC)||!v)this._append`L${this._x1=s},${this._y1=u}`;else{let F=d-b,j=p-y,K=T*T+_*_,ee=F*F+j*j,ie=Math.sqrt(K),oe=Math.sqrt(R),pe=v*Math.tan((jpe-Math.acos((K+R-ee)/(2*ie*oe)))/2),be=pe/oe,ae=pe/ie;Math.abs(be-1)>mC&&this._append`L${s+be*A},${u+be*P}`,this._append`A${v},${v},0,0,${+(P*F>A*j)},${this._x1=s+ae*T},${this._y1=u+ae*_}`}}arc(s,u,d,p,v,b){if(s=+s,u=+u,d=+d,b=!!b,d<0)throw new Error(`negative radius: ${d}`);let y=d*Math.cos(p),T=d*Math.sin(p),_=s+y,A=u+T,P=1^b,R=b?p-v:v-p;this._x1===null?this._append`M${_},${A}`:(Math.abs(this._x1-_)>mC||Math.abs(this._y1-A)>mC)&&this._append`L${_},${A}`,d&&(R<0&&(R=R%$pe+$pe),R>LIt?this._append`A${d},${d},0,1,${P},${s-y},${u-T}A${d},${d},0,1,${P},${this._x1=_},${this._y1=A}`:R>mC&&this._append`A${d},${d},0,${+(R>=jpe)},${P},${this._x1=s+d*Math.cos(v)},${this._y1=u+d*Math.sin(v)}`)}rect(s,u,d,p){this._append`M${this._x0=this._x1=+s},${this._y0=this._y1=+u}h${d=+d}v${+p}h${-d}Z`}toString(){return this._}};function IIt(i){if(!i.ok)throw new Error(i.status+" "+i.statusText);return i.text()}function OIt(i,s){return fetch(i,s).then(IIt)}function NIt(i){return(s,u)=>OIt(s,u).then(d=>new DOMParser().parseFromString(d,i))}var PIt=NIt("image/svg+xml");function BIt(i){return Math.abs(i=Math.round(i))>=1e21?i.toLocaleString("en").replace(/,/g,""):i.toString(10)}function eX(i,s){if((u=(i=s?i.toExponential(s-1):i.toExponential()).indexOf("e"))<0)return null;var u,d=i.slice(0,u);return[d.length>1?d[0]+d.slice(2):d,+i.slice(u+1)]}function rD(i){return i=eX(Math.abs(i)),i?i[1]:NaN}function FIt(i,s){return function(u,d){for(var p=u.length,v=[],b=0,y=i[0],T=0;p>0&&y>0&&(T+y+1>d&&(y=Math.max(1,d-T)),v.push(u.substring(p-=y,p+y)),!((T+=y+1)>d));)y=i[b=(b+1)%i.length];return v.reverse().join(s)}}function RIt(i){return function(s){return s.replace(/[0-9]/g,function(u){return i[+u]})}}var jIt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function tX(i){if(!(s=jIt.exec(i)))throw new Error("invalid format: "+i);var s;return new zpe({fill:s[1],align:s[2],sign:s[3],symbol:s[4],zero:s[5],width:s[6],comma:s[7],precision:s[8]&&s[8].slice(1),trim:s[9],type:s[10]})}tX.prototype=zpe.prototype;function zpe(i){this.fill=i.fill===void 0?" ":i.fill+"",this.align=i.align===void 0?">":i.align+"",this.sign=i.sign===void 0?"-":i.sign+"",this.symbol=i.symbol===void 0?"":i.symbol+"",this.zero=!!i.zero,this.width=i.width===void 0?void 0:+i.width,this.comma=!!i.comma,this.precision=i.precision===void 0?void 0:+i.precision,this.trim=!!i.trim,this.type=i.type===void 0?"":i.type+""}zpe.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function $It(i){e:for(var s=i.length,u=1,d=-1,p;u0&&(d=0);break}return d>0?i.slice(0,d)+i.slice(p+1):i}var cFe;function zIt(i,s){var u=eX(i,s);if(!u)return i+"";var d=u[0],p=u[1],v=p-(cFe=Math.max(-8,Math.min(8,Math.floor(p/3)))*3)+1,b=d.length;return v===b?d:v>b?d+new Array(v-b+1).join("0"):v>0?d.slice(0,v)+"."+d.slice(v):"0."+new Array(1-v).join("0")+eX(i,Math.max(0,s+v-1))[0]}function uFe(i,s){var u=eX(i,s);if(!u)return i+"";var d=u[0],p=u[1];return p<0?"0."+new Array(-p).join("0")+d:d.length>p+1?d.slice(0,p+1)+"."+d.slice(p+1):d+new Array(p-d.length+2).join("0")}const lFe={"%":(i,s)=>(i*100).toFixed(s),b:i=>Math.round(i).toString(2),c:i=>i+"",d:BIt,e:(i,s)=>i.toExponential(s),f:(i,s)=>i.toFixed(s),g:(i,s)=>i.toPrecision(s),o:i=>Math.round(i).toString(8),p:(i,s)=>uFe(i*100,s),r:uFe,s:zIt,X:i=>Math.round(i).toString(16).toUpperCase(),x:i=>Math.round(i).toString(16)};function hFe(i){return i}var fFe=Array.prototype.map,dFe=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function qIt(i){var s=i.grouping===void 0||i.thousands===void 0?hFe:FIt(fFe.call(i.grouping,Number),i.thousands+""),u=i.currency===void 0?"":i.currency[0]+"",d=i.currency===void 0?"":i.currency[1]+"",p=i.decimal===void 0?".":i.decimal+"",v=i.numerals===void 0?hFe:RIt(fFe.call(i.numerals,String)),b=i.percent===void 0?"%":i.percent+"",y=i.minus===void 0?"−":i.minus+"",T=i.nan===void 0?"NaN":i.nan+"";function _(P){P=tX(P);var R=P.fill,F=P.align,j=P.sign,K=P.symbol,ee=P.zero,ie=P.width,oe=P.comma,pe=P.precision,be=P.trim,ae=P.type;ae==="n"?(oe=!0,ae="g"):lFe[ae]||(pe===void 0&&(pe=12),be=!0,ae="g"),(ee||R==="0"&&F==="=")&&(ee=!0,R="0",F="=");var ne=K==="$"?u:K==="#"&&/[boxX]/.test(ae)?"0"+ae.toLowerCase():"",se=K==="$"?d:/[%p]/.test(ae)?b:"",de=lFe[ae],X=/[defgprs%]/.test(ae);pe=pe===void 0?6:/[gprs]/.test(ae)?Math.max(1,Math.min(21,pe)):Math.max(0,Math.min(20,pe));function ge(W){var xe=ne,U=se,Fe,Pe,je;if(ae==="c")U=de(W)+U,W="";else{W=+W;var Ie=W<0||1/W<0;if(W=isNaN(W)?T:de(Math.abs(W),pe),be&&(W=$It(W)),Ie&&+W==0&&j!=="+"&&(Ie=!1),xe=(Ie?j==="("?j:y:j==="-"||j==="("?"":j)+xe,U=(ae==="s"?dFe[8+cFe/3]:"")+U+(Ie&&j==="("?")":""),X){for(Fe=-1,Pe=W.length;++Feje||je>57){U=(je===46?p+W.slice(Fe+1):W.slice(Fe))+U,W=W.slice(0,Fe);break}}}oe&&!ee&&(W=s(W,1/0));var Se=xe.length+W.length+U.length,Ce=Se>1)+xe+W+U+Ce.slice(Se);break;default:W=Ce+xe+W+U;break}return v(W)}return ge.toString=function(){return P+""},ge}function A(P,R){var F=_((P=tX(P),P.type="f",P)),j=Math.max(-8,Math.min(8,Math.floor(rD(R)/3)))*3,K=Math.pow(10,-j),ee=dFe[8+j/3];return function(ie){return F(K*ie)+ee}}return{format:_,formatPrefix:A}}var nX,gFe,pFe;HIt({thousands:",",grouping:[3],currency:["$",""]});function HIt(i){return nX=qIt(i),gFe=nX.format,pFe=nX.formatPrefix,nX}function VIt(i){return Math.max(0,-rD(Math.abs(i)))}function UIt(i,s){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(rD(s)/3)))*3-rD(Math.abs(i)))}function GIt(i,s){return i=Math.abs(i),s=Math.abs(s)-i,Math.max(0,rD(s)-rD(i))+1}function rX(i,s){switch(arguments.length){case 0:break;case 1:this.range(i);break;default:this.range(s).domain(i);break}return this}const bFe=Symbol("implicit");function _F(){var i=new cBe,s=[],u=[],d=bFe;function p(v){let b=i.get(v);if(b===void 0){if(d!==bFe)return d;i.set(v,b=s.push(v)-1)}return u[b%u.length]}return p.domain=function(v){if(!arguments.length)return s.slice();s=[],i=new cBe;for(const b of v)i.has(b)||i.set(b,s.push(b)-1);return p},p.range=function(v){return arguments.length?(u=Array.from(v),p):u.slice()},p.unknown=function(v){return arguments.length?(d=v,p):d},p.copy=function(){return _F(s,u).unknown(d)},rX.apply(p,arguments),p}function qpe(){var i=_F().unknown(void 0),s=i.domain,u=i.range,d=0,p=1,v,b,y=!1,T=0,_=0,A=.5;delete i.unknown;function P(){var R=s().length,F=ps&&(u=i,i=s,s=u),function(d){return Math.max(i,Math.min(s,d))}}function XIt(i,s,u){var d=i[0],p=i[1],v=s[0],b=s[1];return p2?QIt:XIt,T=_=null,P}function P(R){return R==null||isNaN(R=+R)?v:(T||(T=y(i.map(d),s,u)))(d(b(R)))}return P.invert=function(R){return b(p((_||(_=y(s,i.map(d),L3)))(R)))},P.domain=function(R){return arguments.length?(i=Array.from(R,WIt),A()):i.slice()},P.range=function(R){return arguments.length?(s=Array.from(R),A()):s.slice()},P.rangeRound=function(R){return s=Array.from(R),u=lDt,A()},P.clamp=function(R){return arguments.length?(b=R?!0:iD,A()):b!==iD},P.interpolate=function(R){return arguments.length?(u=R,A()):u},P.unknown=function(R){return arguments.length?(v=R,P):v},function(R,F){return d=R,p=F,A()}}function wFe(){return JIt()(iD,iD)}function ZIt(i,s,u,d){var p=ppe(i,s,u),v;switch(d=tX(d??",f"),d.type){case"s":{var b=Math.max(Math.abs(i),Math.abs(s));return d.precision==null&&!isNaN(v=UIt(p,b))&&(d.precision=v),pFe(d,b)}case"":case"e":case"g":case"p":case"r":{d.precision==null&&!isNaN(v=GIt(p,Math.max(Math.abs(i),Math.abs(s))))&&(d.precision=v-(d.type==="e"));break}case"f":case"%":{d.precision==null&&!isNaN(v=VIt(p))&&(d.precision=v-(d.type==="%")*2);break}}return gFe(d)}function eOt(i){var s=i.domain;return i.ticks=function(u){var d=s();return GAt(d[0],d[d.length-1],u??10)},i.tickFormat=function(u,d){var p=s();return ZIt(p[0],p[p.length-1],u??10,d)},i.nice=function(u){u==null&&(u=10);var d=s(),p=0,v=d.length-1,b=d[p],y=d[v],T,_,A=10;for(y0;){if(_=gpe(b,y,u),_===T)return d[p]=b,d[v]=y,s(d);if(_>0)b=Math.floor(b/_)*_,y=Math.ceil(y/_)*_;else if(_<0)b=Math.ceil(b*_)/_,y=Math.floor(y*_)/_;else break;T=_}return i},i}function sD(){var i=wFe();return i.copy=function(){return vFe(i,sD())},rX.apply(i,arguments),eOt(i)}function tOt(i,s){i=i.slice();var u=0,d=i.length-1,p=i[u],v=i[d],b;return v(i(v=new Date(+v)),v),p.ceil=v=>(i(v=new Date(v-1)),s(v,1),i(v),v),p.round=v=>{const b=p(v),y=p.ceil(v);return v-b(s(v=new Date(+v),b==null?1:Math.floor(b)),v),p.range=(v,b,y)=>{const T=[];if(v=p.ceil(v),y=y==null?1:Math.floor(y),!(v0))return T;let _;do T.push(_=new Date(+v)),s(v,y),i(v);while(_h1(b=>{if(b>=b)for(;i(b),!v(b);)b.setTime(b-1)},(b,y)=>{if(b>=b)if(y<0)for(;++y<=0;)for(;s(b,-1),!v(b););else for(;--y>=0;)for(;s(b,1),!v(b););}),u&&(p.count=(v,b)=>(Vpe.setTime(+v),Upe.setTime(+b),i(Vpe),i(Upe),Math.floor(u(Vpe,Upe))),p.every=v=>(v=Math.floor(v),!isFinite(v)||!(v>0)?null:v>1?p.filter(d?b=>d(b)%v===0:b=>p.count(0,b)%v===0):p)),p}const aD=h1(()=>{},(i,s)=>{i.setTime(+i+s)},(i,s)=>s-i);aD.every=i=>(i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?h1(s=>{s.setTime(Math.floor(s/i)*i)},(s,u)=>{s.setTime(+s+u*i)},(s,u)=>(u-s)/i):aD),aD.range;const v7=1e3,Mv=v7*60,w7=Mv*60,y7=w7*24,Gpe=y7*7,yFe=y7*30,Kpe=y7*365,b9=h1(i=>{i.setTime(i-i.getMilliseconds())},(i,s)=>{i.setTime(+i+s*v7)},(i,s)=>(s-i)/v7,i=>i.getUTCSeconds());b9.range;const AF=h1(i=>{i.setTime(i-i.getMilliseconds()-i.getSeconds()*v7)},(i,s)=>{i.setTime(+i+s*Mv)},(i,s)=>(s-i)/Mv,i=>i.getMinutes());AF.range,h1(i=>{i.setUTCSeconds(0,0)},(i,s)=>{i.setTime(+i+s*Mv)},(i,s)=>(s-i)/Mv,i=>i.getUTCMinutes()).range;const LF=h1(i=>{i.setTime(i-i.getMilliseconds()-i.getSeconds()*v7-i.getMinutes()*Mv)},(i,s)=>{i.setTime(+i+s*w7)},(i,s)=>(s-i)/w7,i=>i.getHours());LF.range,h1(i=>{i.setUTCMinutes(0,0,0)},(i,s)=>{i.setTime(+i+s*w7)},(i,s)=>(s-i)/w7,i=>i.getUTCHours()).range;const vC=h1(i=>i.setHours(0,0,0,0),(i,s)=>i.setDate(i.getDate()+s),(i,s)=>(s-i-(s.getTimezoneOffset()-i.getTimezoneOffset())*Mv)/y7,i=>i.getDate()-1);vC.range;const Wpe=h1(i=>{i.setUTCHours(0,0,0,0)},(i,s)=>{i.setUTCDate(i.getUTCDate()+s)},(i,s)=>(s-i)/y7,i=>i.getUTCDate()-1);Wpe.range,h1(i=>{i.setUTCHours(0,0,0,0)},(i,s)=>{i.setUTCDate(i.getUTCDate()+s)},(i,s)=>(s-i)/y7,i=>Math.floor(i/y7)).range;function wC(i){return h1(s=>{s.setDate(s.getDate()-(s.getDay()+7-i)%7),s.setHours(0,0,0,0)},(s,u)=>{s.setDate(s.getDate()+u*7)},(s,u)=>(u-s-(u.getTimezoneOffset()-s.getTimezoneOffset())*Mv)/Gpe)}const MF=wC(0),DF=wC(1),xFe=wC(2),kFe=wC(3),yC=wC(4),EFe=wC(5),TFe=wC(6);MF.range,DF.range,xFe.range,kFe.range,yC.range,EFe.range,TFe.range;function xC(i){return h1(s=>{s.setUTCDate(s.getUTCDate()-(s.getUTCDay()+7-i)%7),s.setUTCHours(0,0,0,0)},(s,u)=>{s.setUTCDate(s.getUTCDate()+u*7)},(s,u)=>(u-s)/Gpe)}const CFe=xC(0),iX=xC(1),nOt=xC(2),rOt=xC(3),oD=xC(4),iOt=xC(5),sOt=xC(6);CFe.range,iX.range,nOt.range,rOt.range,oD.range,iOt.range,sOt.range;const IF=h1(i=>{i.setDate(1),i.setHours(0,0,0,0)},(i,s)=>{i.setMonth(i.getMonth()+s)},(i,s)=>s.getMonth()-i.getMonth()+(s.getFullYear()-i.getFullYear())*12,i=>i.getMonth());IF.range,h1(i=>{i.setUTCDate(1),i.setUTCHours(0,0,0,0)},(i,s)=>{i.setUTCMonth(i.getUTCMonth()+s)},(i,s)=>s.getUTCMonth()-i.getUTCMonth()+(s.getUTCFullYear()-i.getUTCFullYear())*12,i=>i.getUTCMonth()).range;const x7=h1(i=>{i.setMonth(0,1),i.setHours(0,0,0,0)},(i,s)=>{i.setFullYear(i.getFullYear()+s)},(i,s)=>s.getFullYear()-i.getFullYear(),i=>i.getFullYear());x7.every=i=>!isFinite(i=Math.floor(i))||!(i>0)?null:h1(s=>{s.setFullYear(Math.floor(s.getFullYear()/i)*i),s.setMonth(0,1),s.setHours(0,0,0,0)},(s,u)=>{s.setFullYear(s.getFullYear()+u*i)}),x7.range;const kC=h1(i=>{i.setUTCMonth(0,1),i.setUTCHours(0,0,0,0)},(i,s)=>{i.setUTCFullYear(i.getUTCFullYear()+s)},(i,s)=>s.getUTCFullYear()-i.getUTCFullYear(),i=>i.getUTCFullYear());kC.every=i=>!isFinite(i=Math.floor(i))||!(i>0)?null:h1(s=>{s.setUTCFullYear(Math.floor(s.getUTCFullYear()/i)*i),s.setUTCMonth(0,1),s.setUTCHours(0,0,0,0)},(s,u)=>{s.setUTCFullYear(s.getUTCFullYear()+u*i)}),kC.range;function aOt(i,s,u,d,p,v){const b=[[b9,1,v7],[b9,5,5*v7],[b9,15,15*v7],[b9,30,30*v7],[v,1,Mv],[v,5,5*Mv],[v,15,15*Mv],[v,30,30*Mv],[p,1,w7],[p,3,3*w7],[p,6,6*w7],[p,12,12*w7],[d,1,y7],[d,2,2*y7],[u,1,Gpe],[s,1,yFe],[s,3,3*yFe],[i,1,Kpe]];function y(_,A,P){const R=A<_;R&&([_,A]=[A,_]);const F=P&&typeof P.range=="function"?P:T(_,A,P),j=F?F.range(_,+A+1):[];return R?j.reverse():j}function T(_,A,P){const R=Math.abs(A-_)/P,F=dpe(([,,ee])=>ee).right(b,R);if(F===b.length)return i.every(ppe(_/Kpe,A/Kpe,P));if(F===0)return aD.every(Math.max(ppe(_,A,P),1));const[j,K]=b[R/b[F-1][2]53)return null;"w"in Dt||(Dt.w=1),"Z"in Dt?(On=Xpe(OF(Dt.y,0,1)),ht=On.getUTCDay(),On=ht>4||ht===0?iX.ceil(On):iX(On),On=Wpe.offset(On,(Dt.V-1)*7),Dt.y=On.getUTCFullYear(),Dt.m=On.getUTCMonth(),Dt.d=On.getUTCDate()+(Dt.w+6)%7):(On=Ype(OF(Dt.y,0,1)),ht=On.getDay(),On=ht>4||ht===0?DF.ceil(On):DF(On),On=vC.offset(On,(Dt.V-1)*7),Dt.y=On.getFullYear(),Dt.m=On.getMonth(),Dt.d=On.getDate()+(Dt.w+6)%7)}else("W"in Dt||"U"in Dt)&&("w"in Dt||(Dt.w="u"in Dt?Dt.u%7:"W"in Dt?1:0),ht="Z"in Dt?Xpe(OF(Dt.y,0,1)).getUTCDay():Ype(OF(Dt.y,0,1)).getDay(),Dt.m=0,Dt.d="W"in Dt?(Dt.w+6)%7+Dt.W*7-(ht+5)%7:Dt.w+Dt.U*7-(ht+6)%7);return"Z"in Dt?(Dt.H+=Dt.Z/100|0,Dt.M+=Dt.Z%100,Xpe(Dt)):Ype(Dt)}}function de(xt,Pt,Qe,Dt){for(var kt=0,On=Pt.length,ht=Qe.length,zr,yt;kt=ht)return-1;if(zr=Pt.charCodeAt(kt++),zr===37){if(zr=Pt.charAt(kt++),yt=ae[zr in SFe?Pt.charAt(kt++):zr],!yt||(Dt=yt(xt,Qe,Dt))<0)return-1}else if(zr!=Qe.charCodeAt(Dt++))return-1}return Dt}function X(xt,Pt,Qe){var Dt=_.exec(Pt.slice(Qe));return Dt?(xt.p=A.get(Dt[0].toLowerCase()),Qe+Dt[0].length):-1}function ge(xt,Pt,Qe){var Dt=F.exec(Pt.slice(Qe));return Dt?(xt.w=j.get(Dt[0].toLowerCase()),Qe+Dt[0].length):-1}function W(xt,Pt,Qe){var Dt=P.exec(Pt.slice(Qe));return Dt?(xt.w=R.get(Dt[0].toLowerCase()),Qe+Dt[0].length):-1}function xe(xt,Pt,Qe){var Dt=ie.exec(Pt.slice(Qe));return Dt?(xt.m=oe.get(Dt[0].toLowerCase()),Qe+Dt[0].length):-1}function U(xt,Pt,Qe){var Dt=K.exec(Pt.slice(Qe));return Dt?(xt.m=ee.get(Dt[0].toLowerCase()),Qe+Dt[0].length):-1}function Fe(xt,Pt,Qe){return de(xt,s,Pt,Qe)}function Pe(xt,Pt,Qe){return de(xt,u,Pt,Qe)}function je(xt,Pt,Qe){return de(xt,d,Pt,Qe)}function Ie(xt){return b[xt.getDay()]}function Se(xt){return v[xt.getDay()]}function Ce(xt){return T[xt.getMonth()]}function ke(xt){return y[xt.getMonth()]}function Ke(xt){return p[+(xt.getHours()>=12)]}function Ft(xt){return 1+~~(xt.getMonth()/3)}function Ne(xt){return b[xt.getUTCDay()]}function gn(xt){return v[xt.getUTCDay()]}function _t(xt){return T[xt.getUTCMonth()]}function Et(xt){return y[xt.getUTCMonth()]}function Gt(xt){return p[+(xt.getUTCHours()>=12)]}function ln(xt){return 1+~~(xt.getUTCMonth()/3)}return{format:function(xt){var Pt=ne(xt+="",pe);return Pt.toString=function(){return xt},Pt},parse:function(xt){var Pt=se(xt+="",!1);return Pt.toString=function(){return xt},Pt},utcFormat:function(xt){var Pt=ne(xt+="",be);return Pt.toString=function(){return xt},Pt},utcParse:function(xt){var Pt=se(xt+="",!0);return Pt.toString=function(){return xt},Pt}}}var SFe={"-":"",_:" ",0:"0"},rd=/^\s*\d+/,lOt=/^%/,hOt=/[\\^$*+?|[\]().{}]/g;function mu(i,s,u){var d=i<0?"-":"",p=(d?-i:i)+"",v=p.length;return d+(v[s.toLowerCase(),u]))}function dOt(i,s,u){var d=rd.exec(s.slice(u,u+1));return d?(i.w=+d[0],u+d[0].length):-1}function gOt(i,s,u){var d=rd.exec(s.slice(u,u+1));return d?(i.u=+d[0],u+d[0].length):-1}function pOt(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.U=+d[0],u+d[0].length):-1}function bOt(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.V=+d[0],u+d[0].length):-1}function mOt(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.W=+d[0],u+d[0].length):-1}function _Fe(i,s,u){var d=rd.exec(s.slice(u,u+4));return d?(i.y=+d[0],u+d[0].length):-1}function AFe(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.y=+d[0]+(+d[0]>68?1900:2e3),u+d[0].length):-1}function vOt(i,s,u){var d=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(s.slice(u,u+6));return d?(i.Z=d[1]?0:-(d[2]+(d[3]||"00")),u+d[0].length):-1}function wOt(i,s,u){var d=rd.exec(s.slice(u,u+1));return d?(i.q=d[0]*3-3,u+d[0].length):-1}function yOt(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.m=d[0]-1,u+d[0].length):-1}function LFe(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.d=+d[0],u+d[0].length):-1}function xOt(i,s,u){var d=rd.exec(s.slice(u,u+3));return d?(i.m=0,i.d=+d[0],u+d[0].length):-1}function MFe(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.H=+d[0],u+d[0].length):-1}function kOt(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.M=+d[0],u+d[0].length):-1}function EOt(i,s,u){var d=rd.exec(s.slice(u,u+2));return d?(i.S=+d[0],u+d[0].length):-1}function TOt(i,s,u){var d=rd.exec(s.slice(u,u+3));return d?(i.L=+d[0],u+d[0].length):-1}function COt(i,s,u){var d=rd.exec(s.slice(u,u+6));return d?(i.L=Math.floor(d[0]/1e3),u+d[0].length):-1}function SOt(i,s,u){var d=lOt.exec(s.slice(u,u+1));return d?u+d[0].length:-1}function _Ot(i,s,u){var d=rd.exec(s.slice(u));return d?(i.Q=+d[0],u+d[0].length):-1}function AOt(i,s,u){var d=rd.exec(s.slice(u));return d?(i.s=+d[0],u+d[0].length):-1}function DFe(i,s){return mu(i.getDate(),s,2)}function LOt(i,s){return mu(i.getHours(),s,2)}function MOt(i,s){return mu(i.getHours()%12||12,s,2)}function DOt(i,s){return mu(1+vC.count(x7(i),i),s,3)}function IFe(i,s){return mu(i.getMilliseconds(),s,3)}function IOt(i,s){return IFe(i,s)+"000"}function OOt(i,s){return mu(i.getMonth()+1,s,2)}function NOt(i,s){return mu(i.getMinutes(),s,2)}function POt(i,s){return mu(i.getSeconds(),s,2)}function BOt(i){var s=i.getDay();return s===0?7:s}function FOt(i,s){return mu(MF.count(x7(i)-1,i),s,2)}function OFe(i){var s=i.getDay();return s>=4||s===0?yC(i):yC.ceil(i)}function ROt(i,s){return i=OFe(i),mu(yC.count(x7(i),i)+(x7(i).getDay()===4),s,2)}function jOt(i){return i.getDay()}function $Ot(i,s){return mu(DF.count(x7(i)-1,i),s,2)}function zOt(i,s){return mu(i.getFullYear()%100,s,2)}function qOt(i,s){return i=OFe(i),mu(i.getFullYear()%100,s,2)}function HOt(i,s){return mu(i.getFullYear()%1e4,s,4)}function VOt(i,s){var u=i.getDay();return i=u>=4||u===0?yC(i):yC.ceil(i),mu(i.getFullYear()%1e4,s,4)}function UOt(i){var s=i.getTimezoneOffset();return(s>0?"-":(s*=-1,"+"))+mu(s/60|0,"0",2)+mu(s%60,"0",2)}function NFe(i,s){return mu(i.getUTCDate(),s,2)}function GOt(i,s){return mu(i.getUTCHours(),s,2)}function KOt(i,s){return mu(i.getUTCHours()%12||12,s,2)}function WOt(i,s){return mu(1+Wpe.count(kC(i),i),s,3)}function PFe(i,s){return mu(i.getUTCMilliseconds(),s,3)}function YOt(i,s){return PFe(i,s)+"000"}function XOt(i,s){return mu(i.getUTCMonth()+1,s,2)}function QOt(i,s){return mu(i.getUTCMinutes(),s,2)}function JOt(i,s){return mu(i.getUTCSeconds(),s,2)}function ZOt(i){var s=i.getUTCDay();return s===0?7:s}function eNt(i,s){return mu(CFe.count(kC(i)-1,i),s,2)}function BFe(i){var s=i.getUTCDay();return s>=4||s===0?oD(i):oD.ceil(i)}function tNt(i,s){return i=BFe(i),mu(oD.count(kC(i),i)+(kC(i).getUTCDay()===4),s,2)}function nNt(i){return i.getUTCDay()}function rNt(i,s){return mu(iX.count(kC(i)-1,i),s,2)}function iNt(i,s){return mu(i.getUTCFullYear()%100,s,2)}function sNt(i,s){return i=BFe(i),mu(i.getUTCFullYear()%100,s,2)}function aNt(i,s){return mu(i.getUTCFullYear()%1e4,s,4)}function oNt(i,s){var u=i.getUTCDay();return i=u>=4||u===0?oD(i):oD.ceil(i),mu(i.getUTCFullYear()%1e4,s,4)}function cNt(){return"+0000"}function FFe(){return"%"}function RFe(i){return+i}function jFe(i){return Math.floor(+i/1e3)}var cD,sX;uNt({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function uNt(i){return cD=uOt(i),sX=cD.format,cD.parse,cD.utcFormat,cD.utcParse,cD}function lNt(i){return new Date(i)}function hNt(i){return i instanceof Date?+i:+new Date(+i)}function $Fe(i,s,u,d,p,v,b,y,T,_){var A=wFe(),P=A.invert,R=A.domain,F=_(".%L"),j=_(":%S"),K=_("%I:%M"),ee=_("%I %p"),ie=_("%a %d"),oe=_("%b %d"),pe=_("%B"),be=_("%Y");function ae(ne){return(T(ne)1?0:i<-1?BF:Math.acos(i)}function HFe(i){return i>=1?aX:i<=-1?-aX:Math.asin(i)}function VFe(i){let s=3;return i.digits=function(u){if(!arguments.length)return s;if(u==null)s=null;else{const d=Math.floor(u);if(!(d>=0))throw new RangeError(`invalid digits: ${u}`);s=d}return i},()=>new DIt(s)}function bNt(i){return i.innerRadius}function mNt(i){return i.outerRadius}function vNt(i){return i.startAngle}function wNt(i){return i.endAngle}function yNt(i){return i&&i.padAngle}function xNt(i,s,u,d,p,v,b,y){var T=u-i,_=d-s,A=b-p,P=y-v,R=P*T-A*_;if(!(R*RFe*Fe+Pe*Pe&&(de=ge,X=W),{cx:de,cy:X,x01:-A,y01:-P,x11:de*(p/ae-1),y11:X*(p/ae-1)}}function lD(){var i=bNt,s=mNt,u=Wf(0),d=null,p=vNt,v=wNt,b=yNt,y=null,T=VFe(_);function _(){var A,P,R=+i.apply(this,arguments),F=+s.apply(this,arguments),j=p.apply(this,arguments)-aX,K=v.apply(this,arguments)-aX,ee=qFe(K-j),ie=K>j;if(y||(y=A=T()),FIg))y.moveTo(0,0);else if(ee>oX-Ig)y.moveTo(F*EC(j),F*z4(j)),y.arc(0,0,F,j,K,!ie),R>Ig&&(y.moveTo(R*EC(K),R*z4(K)),y.arc(0,0,R,K,j,ie));else{var oe=j,pe=K,be=j,ae=K,ne=ee,se=ee,de=b.apply(this,arguments)/2,X=de>Ig&&(d?+d.apply(this,arguments):uD(R*R+F*F)),ge=Qpe(qFe(F-R)/2,+u.apply(this,arguments)),W=ge,xe=ge,U,Fe;if(X>Ig){var Pe=HFe(X/R*z4(de)),je=HFe(X/F*z4(de));(ne-=Pe*2)>Ig?(Pe*=ie?1:-1,be+=Pe,ae-=Pe):(ne=0,be=ae=(j+K)/2),(se-=je*2)>Ig?(je*=ie?1:-1,oe+=je,pe-=je):(se=0,oe=pe=(j+K)/2)}var Ie=F*EC(oe),Se=F*z4(oe),Ce=R*EC(ae),ke=R*z4(ae);if(ge>Ig){var Ke=F*EC(pe),Ft=F*z4(pe),Ne=R*EC(be),gn=R*z4(be),_t;if(eeIg?xe>Ig?(U=cX(Ne,gn,Ie,Se,F,xe,ie),Fe=cX(Ke,Ft,Ce,ke,F,xe,ie),y.moveTo(U.cx+U.x01,U.cy+U.y01),xeIg)||!(ne>Ig)?y.lineTo(Ce,ke):W>Ig?(U=cX(Ce,ke,Ke,Ft,R,-W,ie),Fe=cX(Ie,Se,Ne,gn,R,-W,ie),y.lineTo(U.cx+U.x01,U.cy+U.y01),Wi?1:s>=i?0:NaN}function CNt(i){return i}function SNt(){var i=CNt,s=TNt,u=null,d=Wf(0),p=Wf(oX),v=Wf(0);function b(y){var T,_=(y=UFe(y)).length,A,P,R=0,F=new Array(_),j=new Array(_),K=+d.apply(this,arguments),ee=Math.min(oX,Math.max(-oX,p.apply(this,arguments)-K)),ie,oe=Math.min(Math.abs(ee)/_,v.apply(this,arguments)),pe=oe*(ee<0?-1:1),be;for(T=0;T<_;++T)(be=j[F[T]=T]=+i(y[T],T,y))>0&&(R+=be);for(s!=null?F.sort(function(ae,ne){return s(j[ae],j[ne])}):u!=null&&F.sort(function(ae,ne){return u(y[ae],y[ne])}),T=0,P=R?(ee-_*pe)/R:0;T<_;++T,K=ie)A=F[T],be=j[A],ie=K+(be>0?be*P:0)+pe,j[A]={data:y[A],index:T,value:be,startAngle:K,endAngle:ie,padAngle:oe};return j}return b.value=function(y){return arguments.length?(i=typeof y=="function"?y:Wf(+y),b):i},b.sortValues=function(y){return arguments.length?(s=y,u=null,b):s},b.sort=function(y){return arguments.length?(u=y,s=null,b):u},b.startAngle=function(y){return arguments.length?(d=typeof y=="function"?y:Wf(+y),b):d},b.endAngle=function(y){return arguments.length?(p=typeof y=="function"?y:Wf(+y),b):p},b.padAngle=function(y){return arguments.length?(v=typeof y=="function"?y:Wf(+y),b):v},b}class KFe{constructor(s,u){this._context=s,this._x=u}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(s,u){switch(s=+s,u=+u,this._point){case 0:{this._point=1,this._line?this._context.lineTo(s,u):this._context.moveTo(s,u);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+s)/2,this._y0,this._x0,u,s,u):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+u)/2,s,this._y0,s,u);break}}this._x0=s,this._y0=u}}function _Nt(i){return new KFe(i,!0)}function ANt(i){return new KFe(i,!1)}function m9(){}function uX(i,s,u){i._context.bezierCurveTo((2*i._x0+i._x1)/3,(2*i._y0+i._y1)/3,(i._x0+2*i._x1)/3,(i._y0+2*i._y1)/3,(i._x0+4*i._x1+s)/6,(i._y0+4*i._y1+u)/6)}function lX(i){this._context=i}lX.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:uX(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,s){switch(i=+i,s=+s,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,s):this._context.moveTo(i,s);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:uX(this,i,s);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=s}};function FF(i){return new lX(i)}function WFe(i){this._context=i}WFe.prototype={areaStart:m9,areaEnd:m9,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(i,s){switch(i=+i,s=+s,this._point){case 0:this._point=1,this._x2=i,this._y2=s;break;case 1:this._point=2,this._x3=i,this._y3=s;break;case 2:this._point=3,this._x4=i,this._y4=s,this._context.moveTo((this._x0+4*this._x1+i)/6,(this._y0+4*this._y1+s)/6);break;default:uX(this,i,s);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=s}};function LNt(i){return new WFe(i)}function YFe(i){this._context=i}YFe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,s){switch(i=+i,s=+s,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var u=(this._x0+4*this._x1+i)/6,d=(this._y0+4*this._y1+s)/6;this._line?this._context.lineTo(u,d):this._context.moveTo(u,d);break;case 3:this._point=4;default:uX(this,i,s);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=s}};function MNt(i){return new YFe(i)}function XFe(i,s){this._basis=new lX(i),this._beta=s}XFe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var i=this._x,s=this._y,u=i.length-1;if(u>0)for(var d=i[0],p=s[0],v=i[u]-d,b=s[u]-p,y=-1,T;++y<=u;)T=y/u,this._basis.point(this._beta*i[y]+(1-this._beta)*(d+T*v),this._beta*s[y]+(1-this._beta)*(p+T*b));this._x=this._y=null,this._basis.lineEnd()},point:function(i,s){this._x.push(+i),this._y.push(+s)}};const DNt=function i(s){function u(d){return s===1?new lX(d):new XFe(d,s)}return u.beta=function(d){return i(+d)},u}(.85);function hX(i,s,u){i._context.bezierCurveTo(i._x1+i._k*(i._x2-i._x0),i._y1+i._k*(i._y2-i._y0),i._x2+i._k*(i._x1-s),i._y2+i._k*(i._y1-u),i._x2,i._y2)}function Jpe(i,s){this._context=i,this._k=(1-s)/6}Jpe.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:hX(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,s){switch(i=+i,s=+s,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,s):this._context.moveTo(i,s);break;case 1:this._point=2,this._x1=i,this._y1=s;break;case 2:this._point=3;default:hX(this,i,s);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=s}};const INt=function i(s){function u(d){return new Jpe(d,s)}return u.tension=function(d){return i(+d)},u}(0);function Zpe(i,s){this._context=i,this._k=(1-s)/6}Zpe.prototype={areaStart:m9,areaEnd:m9,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(i,s){switch(i=+i,s=+s,this._point){case 0:this._point=1,this._x3=i,this._y3=s;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=s);break;case 2:this._point=3,this._x5=i,this._y5=s;break;default:hX(this,i,s);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=s}};const ONt=function i(s){function u(d){return new Zpe(d,s)}return u.tension=function(d){return i(+d)},u}(0);function e2e(i,s){this._context=i,this._k=(1-s)/6}e2e.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(i,s){switch(i=+i,s=+s,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:hX(this,i,s);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=s}};const NNt=function i(s){function u(d){return new e2e(d,s)}return u.tension=function(d){return i(+d)},u}(0);function t2e(i,s,u){var d=i._x1,p=i._y1,v=i._x2,b=i._y2;if(i._l01_a>Ig){var y=2*i._l01_2a+3*i._l01_a*i._l12_a+i._l12_2a,T=3*i._l01_a*(i._l01_a+i._l12_a);d=(d*y-i._x0*i._l12_2a+i._x2*i._l01_2a)/T,p=(p*y-i._y0*i._l12_2a+i._y2*i._l01_2a)/T}if(i._l23_a>Ig){var _=2*i._l23_2a+3*i._l23_a*i._l12_a+i._l12_2a,A=3*i._l23_a*(i._l23_a+i._l12_a);v=(v*_+i._x1*i._l23_2a-s*i._l12_2a)/A,b=(b*_+i._y1*i._l23_2a-u*i._l12_2a)/A}i._context.bezierCurveTo(d,p,v,b,i._x2,i._y2)}function QFe(i,s){this._context=i,this._alpha=s}QFe.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(i,s){if(i=+i,s=+s,this._point){var u=this._x2-i,d=this._y2-s;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(u*u+d*d,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,s):this._context.moveTo(i,s);break;case 1:this._point=2;break;case 2:this._point=3;default:t2e(this,i,s);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=i,this._y0=this._y1,this._y1=this._y2,this._y2=s}};const PNt=function i(s){function u(d){return s?new QFe(d,s):new Jpe(d,0)}return u.alpha=function(d){return i(+d)},u}(.5);function JFe(i,s){this._context=i,this._alpha=s}JFe.prototype={areaStart:m9,areaEnd:m9,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(i,s){if(i=+i,s=+s,this._point){var u=this._x2-i,d=this._y2-s;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(u*u+d*d,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=i,this._y3=s;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=s);break;case 2:this._point=3,this._x5=i,this._y5=s;break;default:t2e(this,i,s);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=i,this._y0=this._y1,this._y1=this._y2,this._y2=s}};const BNt=function i(s){function u(d){return s?new JFe(d,s):new Zpe(d,0)}return u.alpha=function(d){return i(+d)},u}(.5);function ZFe(i,s){this._context=i,this._alpha=s}ZFe.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(i,s){if(i=+i,s=+s,this._point){var u=this._x2-i,d=this._y2-s;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(u*u+d*d,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:t2e(this,i,s);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=i,this._y0=this._y1,this._y1=this._y2,this._y2=s}};const FNt=function i(s){function u(d){return s?new ZFe(d,s):new e2e(d,0)}return u.alpha=function(d){return i(+d)},u}(.5);function eRe(i){this._context=i}eRe.prototype={areaStart:m9,areaEnd:m9,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(i,s){i=+i,s=+s,this._point?this._context.lineTo(i,s):(this._point=1,this._context.moveTo(i,s))}};function RNt(i){return new eRe(i)}function tRe(i){return i<0?-1:1}function nRe(i,s,u){var d=i._x1-i._x0,p=s-i._x1,v=(i._y1-i._y0)/(d||p<0&&-0),b=(u-i._y1)/(p||d<0&&-0),y=(v*p+b*d)/(d+p);return(tRe(v)+tRe(b))*Math.min(Math.abs(v),Math.abs(b),.5*Math.abs(y))||0}function rRe(i,s){var u=i._x1-i._x0;return u?(3*(i._y1-i._y0)/u-s)/2:s}function n2e(i,s,u){var d=i._x0,p=i._y0,v=i._x1,b=i._y1,y=(v-d)/3;i._context.bezierCurveTo(d+y,p+y*s,v-y,b-y*u,v,b)}function fX(i){this._context=i}fX.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:n2e(this,this._t0,rRe(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,s){var u=NaN;if(i=+i,s=+s,!(i===this._x1&&s===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,s):this._context.moveTo(i,s);break;case 1:this._point=2;break;case 2:this._point=3,n2e(this,rRe(this,u=nRe(this,i,s)),u);break;default:n2e(this,this._t0,u=nRe(this,i,s));break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=s,this._t0=u}}};function iRe(i){this._context=new sRe(i)}(iRe.prototype=Object.create(fX.prototype)).point=function(i,s){fX.prototype.point.call(this,s,i)};function sRe(i){this._context=i}sRe.prototype={moveTo:function(i,s){this._context.moveTo(s,i)},closePath:function(){this._context.closePath()},lineTo:function(i,s){this._context.lineTo(s,i)},bezierCurveTo:function(i,s,u,d,p,v){this._context.bezierCurveTo(s,i,d,u,v,p)}};function jNt(i){return new fX(i)}function $Nt(i){return new iRe(i)}function aRe(i){this._context=i}aRe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var i=this._x,s=this._y,u=i.length;if(u)if(this._line?this._context.lineTo(i[0],s[0]):this._context.moveTo(i[0],s[0]),u===2)this._context.lineTo(i[1],s[1]);else for(var d=oRe(i),p=oRe(s),v=0,b=1;b=0;--s)p[s]=(b[s]-p[s+1])/v[s];for(v[u-1]=(i[u]+p[u-1])/2,s=0;s=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(i,s){switch(i=+i,s=+s,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,s):this._context.moveTo(i,s);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,s),this._context.lineTo(i,s);else{var u=this._x*(1-this._t)+i*this._t;this._context.lineTo(u,this._y),this._context.lineTo(u,s)}break}}this._x=i,this._y=s}};function qNt(i){return new dX(i,.5)}function HNt(i){return new dX(i,0)}function VNt(i){return new dX(i,1)}function RF(i,s,u){this.k=i,this.x=s,this.y=u}RF.prototype={constructor:RF,scale:function(i){return i===1?this:new RF(this.k*i,this.x,this.y)},translate:function(i,s){return i===0&s===0?this:new RF(this.k,this.x+this.k*i,this.y+this.k*s)},apply:function(i){return[i[0]*this.k+this.x,i[1]*this.k+this.y]},applyX:function(i){return i*this.k+this.x},applyY:function(i){return i*this.k+this.y},invert:function(i){return[(i[0]-this.x)/this.k,(i[1]-this.y)/this.k]},invertX:function(i){return(i-this.x)/this.k},invertY:function(i){return(i-this.y)/this.k},rescaleX:function(i){return i.copy().domain(i.range().map(this.invertX,this).map(i.invert,i))},rescaleY:function(i){return i.copy().domain(i.range().map(this.invertY,this).map(i.invert,i))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},RF.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:cRe,setPrototypeOf:uRe,isFrozen:UNt,getPrototypeOf:GNt,getOwnPropertyDescriptor:KNt}=Object;let{freeze:Ep,seal:D3,create:lRe}=Object,{apply:r2e,construct:i2e}=typeof Reflect<"u"&&Reflect;Ep||(Ep=function(s){return s}),D3||(D3=function(s){return s}),r2e||(r2e=function(s,u,d){return s.apply(u,d)}),i2e||(i2e=function(s,u){return new s(...u)});const gX=sm(Array.prototype.forEach),hRe=sm(Array.prototype.pop),jF=sm(Array.prototype.push),pX=sm(String.prototype.toLowerCase),s2e=sm(String.prototype.toString),WNt=sm(String.prototype.match),$F=sm(String.prototype.replace),YNt=sm(String.prototype.indexOf),XNt=sm(String.prototype.trim),I3=sm(Object.prototype.hasOwnProperty),im=sm(RegExp.prototype.test),zF=QNt(TypeError);function sm(i){return function(s){for(var u=arguments.length,d=new Array(u>1?u-1:0),p=1;p2&&arguments[2]!==void 0?arguments[2]:pX;uRe&&uRe(i,null);let d=s.length;for(;d--;){let p=s[d];if(typeof p=="string"){const v=u(p);v!==p&&(UNt(s)||(s[d]=v),p=v)}i[p]=!0}return i}function JNt(i){for(let s=0;s/gm),rPt=D3(/\${[\w\W]*}/gm),iPt=D3(/^data-[\-\w.\u00B7-\uFFFF]/),sPt=D3(/^aria-[\-\w]+$/),bRe=D3(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),aPt=D3(/^(?:\w+script|data):/i),oPt=D3(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),mRe=D3(/^html$/i);var vRe=Object.freeze({__proto__:null,MUSTACHE_EXPR:tPt,ERB_EXPR:nPt,TMPLIT_EXPR:rPt,DATA_ATTR:iPt,ARIA_ATTR:sPt,IS_ALLOWED_URI:bRe,IS_SCRIPT_OR_DATA:aPt,ATTR_WHITESPACE:oPt,DOCTYPE_NAME:mRe});const cPt=function(){return typeof window>"u"?null:window},uPt=function(s,u){if(typeof s!="object"||typeof s.createPolicy!="function")return null;let d=null;const p="data-tt-policy-suffix";u&&u.hasAttribute(p)&&(d=u.getAttribute(p));const v="dompurify"+(d?"#"+d:"");try{return s.createPolicy(v,{createHTML(b){return b},createScriptURL(b){return b}})}catch{return console.warn("TrustedTypes policy "+v+" could not be created."),null}};function wRe(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:cPt();const s=as=>wRe(as);if(s.version="3.0.9",s.removed=[],!i||!i.document||i.document.nodeType!==9)return s.isSupported=!1,s;let{document:u}=i;const d=u,p=d.currentScript,{DocumentFragment:v,HTMLTemplateElement:b,Node:y,Element:T,NodeFilter:_,NamedNodeMap:A=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:P,DOMParser:R,trustedTypes:F}=i,j=T.prototype,K=bX(j,"cloneNode"),ee=bX(j,"nextSibling"),ie=bX(j,"childNodes"),oe=bX(j,"parentNode");if(typeof b=="function"){const as=u.createElement("template");as.content&&as.content.ownerDocument&&(u=as.content.ownerDocument)}let pe,be="";const{implementation:ae,createNodeIterator:ne,createDocumentFragment:se,getElementsByTagName:de}=u,{importNode:X}=d;let ge={};s.isSupported=typeof cRe=="function"&&typeof oe=="function"&&ae&&ae.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:W,ERB_EXPR:xe,TMPLIT_EXPR:U,DATA_ATTR:Fe,ARIA_ATTR:Pe,IS_SCRIPT_OR_DATA:je,ATTR_WHITESPACE:Ie}=vRe;let{IS_ALLOWED_URI:Se}=vRe,Ce=null;const ke=Cc({},[...fRe,...a2e,...o2e,...c2e,...dRe]);let Ke=null;const Ft=Cc({},[...gRe,...u2e,...pRe,...mX]);let Ne=Object.seal(lRe(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}})),gn=null,_t=null,Et=!0,Gt=!0,ln=!1,xt=!0,Pt=!1,Qe=!1,Dt=!1,kt=!1,On=!1,ht=!1,zr=!1,yt=!0,ji=!1;const xi="user-content-";let Ma=!0,zs=!1,ao={},Tr=null;const Fn=Cc({},["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 qn=null;const Un=Cc({},["audio","video","img","source","image","track"]);let At=null;const wt=Cc({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),on="http://www.w3.org/1998/Math/MathML",fn="http://www.w3.org/2000/svg",An="http://www.w3.org/1999/xhtml";let oo=An,jo=!1,$o=null;const Pa=Cc({},[on,fn,An],s2e);let wo=null;const _s=["application/xhtml+xml","text/html"],tl="text/html";let da=null,j0=null;const pm=u.createElement("form"),Ml=function(wn){return wn instanceof RegExp||wn instanceof Function},Xc=function(){let wn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(j0&&j0===wn)){if((!wn||typeof wn!="object")&&(wn={}),wn=TC(wn),wo=_s.indexOf(wn.PARSER_MEDIA_TYPE)===-1?tl:wn.PARSER_MEDIA_TYPE,da=wo==="application/xhtml+xml"?s2e:pX,Ce=I3(wn,"ALLOWED_TAGS")?Cc({},wn.ALLOWED_TAGS,da):ke,Ke=I3(wn,"ALLOWED_ATTR")?Cc({},wn.ALLOWED_ATTR,da):Ft,$o=I3(wn,"ALLOWED_NAMESPACES")?Cc({},wn.ALLOWED_NAMESPACES,s2e):Pa,At=I3(wn,"ADD_URI_SAFE_ATTR")?Cc(TC(wt),wn.ADD_URI_SAFE_ATTR,da):wt,qn=I3(wn,"ADD_DATA_URI_TAGS")?Cc(TC(Un),wn.ADD_DATA_URI_TAGS,da):Un,Tr=I3(wn,"FORBID_CONTENTS")?Cc({},wn.FORBID_CONTENTS,da):Fn,gn=I3(wn,"FORBID_TAGS")?Cc({},wn.FORBID_TAGS,da):{},_t=I3(wn,"FORBID_ATTR")?Cc({},wn.FORBID_ATTR,da):{},ao=I3(wn,"USE_PROFILES")?wn.USE_PROFILES:!1,Et=wn.ALLOW_ARIA_ATTR!==!1,Gt=wn.ALLOW_DATA_ATTR!==!1,ln=wn.ALLOW_UNKNOWN_PROTOCOLS||!1,xt=wn.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Pt=wn.SAFE_FOR_TEMPLATES||!1,Qe=wn.WHOLE_DOCUMENT||!1,On=wn.RETURN_DOM||!1,ht=wn.RETURN_DOM_FRAGMENT||!1,zr=wn.RETURN_TRUSTED_TYPE||!1,kt=wn.FORCE_BODY||!1,yt=wn.SANITIZE_DOM!==!1,ji=wn.SANITIZE_NAMED_PROPS||!1,Ma=wn.KEEP_CONTENT!==!1,zs=wn.IN_PLACE||!1,Se=wn.ALLOWED_URI_REGEXP||bRe,oo=wn.NAMESPACE||An,Ne=wn.CUSTOM_ELEMENT_HANDLING||{},wn.CUSTOM_ELEMENT_HANDLING&&Ml(wn.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Ne.tagNameCheck=wn.CUSTOM_ELEMENT_HANDLING.tagNameCheck),wn.CUSTOM_ELEMENT_HANDLING&&Ml(wn.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Ne.attributeNameCheck=wn.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),wn.CUSTOM_ELEMENT_HANDLING&&typeof wn.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Ne.allowCustomizedBuiltInElements=wn.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Pt&&(Gt=!1),ht&&(On=!0),ao&&(Ce=Cc({},dRe),Ke=[],ao.html===!0&&(Cc(Ce,fRe),Cc(Ke,gRe)),ao.svg===!0&&(Cc(Ce,a2e),Cc(Ke,u2e),Cc(Ke,mX)),ao.svgFilters===!0&&(Cc(Ce,o2e),Cc(Ke,u2e),Cc(Ke,mX)),ao.mathMl===!0&&(Cc(Ce,c2e),Cc(Ke,pRe),Cc(Ke,mX))),wn.ADD_TAGS&&(Ce===ke&&(Ce=TC(Ce)),Cc(Ce,wn.ADD_TAGS,da)),wn.ADD_ATTR&&(Ke===Ft&&(Ke=TC(Ke)),Cc(Ke,wn.ADD_ATTR,da)),wn.ADD_URI_SAFE_ATTR&&Cc(At,wn.ADD_URI_SAFE_ATTR,da),wn.FORBID_CONTENTS&&(Tr===Fn&&(Tr=TC(Tr)),Cc(Tr,wn.FORBID_CONTENTS,da)),Ma&&(Ce["#text"]=!0),Qe&&Cc(Ce,["html","head","body"]),Ce.table&&(Cc(Ce,["tbody"]),delete gn.tbody),wn.TRUSTED_TYPES_POLICY){if(typeof wn.TRUSTED_TYPES_POLICY.createHTML!="function")throw zF('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof wn.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw zF('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');pe=wn.TRUSTED_TYPES_POLICY,be=pe.createHTML("")}else pe===void 0&&(pe=uPt(F,p)),pe!==null&&typeof be=="string"&&(be=pe.createHTML(""));Ep&&Ep(wn),j0=wn}},Bc=Cc({},["mi","mo","mn","ms","mtext"]),ja=Cc({},["foreignobject","desc","title","annotation-xml"]),Ou=Cc({},["title","style","font","a","script"]),Sa=Cc({},[...a2e,...o2e,...ZNt]),Po=Cc({},[...c2e,...ePt]),Fc=function(wn){let Zr=oe(wn);(!Zr||!Zr.tagName)&&(Zr={namespaceURI:oo,tagName:"template"});const Zi=pX(wn.tagName),nu=pX(Zr.tagName);return $o[wn.namespaceURI]?wn.namespaceURI===fn?Zr.namespaceURI===An?Zi==="svg":Zr.namespaceURI===on?Zi==="svg"&&(nu==="annotation-xml"||Bc[nu]):!!Sa[Zi]:wn.namespaceURI===on?Zr.namespaceURI===An?Zi==="math":Zr.namespaceURI===fn?Zi==="math"&&ja[nu]:!!Po[Zi]:wn.namespaceURI===An?Zr.namespaceURI===fn&&!ja[nu]||Zr.namespaceURI===on&&!Bc[nu]?!1:!Po[Zi]&&(Ou[Zi]||!Sa[Zi]):!!(wo==="application/xhtml+xml"&&$o[wn.namespaceURI]):!1},xa=function(wn){jF(s.removed,{element:wn});try{wn.parentNode.removeChild(wn)}catch{wn.remove()}},Ba=function(wn,Zr){try{jF(s.removed,{attribute:Zr.getAttributeNode(wn),from:Zr})}catch{jF(s.removed,{attribute:null,from:Zr})}if(Zr.removeAttribute(wn),wn==="is"&&!Ke[wn])if(On||ht)try{xa(Zr)}catch{}else try{Zr.setAttribute(wn,"")}catch{}},ga=function(wn){let Zr=null,Zi=null;if(kt)wn=""+wn;else{const Dl=WNt(wn,/^[\r\n\t ]+/);Zi=Dl&&Dl[0]}wo==="application/xhtml+xml"&&oo===An&&(wn=''+wn+"");const nu=pe?pe.createHTML(wn):wn;if(oo===An)try{Zr=new R().parseFromString(nu,wo)}catch{}if(!Zr||!Zr.documentElement){Zr=ae.createDocument(oo,"template",null);try{Zr.documentElement.innerHTML=jo?be:nu}catch{}}const vu=Zr.body||Zr.documentElement;return wn&&Zi&&vu.insertBefore(u.createTextNode(Zi),vu.childNodes[0]||null),oo===An?de.call(Zr,Qe?"html":"body")[0]:Qe?Zr.documentElement:vu},kh=function(wn){return ne.call(wn.ownerDocument||wn,wn,_.SHOW_ELEMENT|_.SHOW_COMMENT|_.SHOW_TEXT,null)},lu=function(wn){return wn instanceof P&&(typeof wn.nodeName!="string"||typeof wn.textContent!="string"||typeof wn.removeChild!="function"||!(wn.attributes instanceof A)||typeof wn.removeAttribute!="function"||typeof wn.setAttribute!="function"||typeof wn.namespaceURI!="string"||typeof wn.insertBefore!="function"||typeof wn.hasChildNodes!="function")},o5=function(wn){return typeof y=="function"&&wn instanceof y},Wh=function(wn,Zr,Zi){ge[wn]&&gX(ge[wn],nu=>{nu.call(s,Zr,Zi,j0)})},od=function(wn){let Zr=null;if(Wh("beforeSanitizeElements",wn,null),lu(wn))return xa(wn),!0;const Zi=da(wn.nodeName);if(Wh("uponSanitizeElement",wn,{tagName:Zi,allowedTags:Ce}),wn.hasChildNodes()&&!o5(wn.firstElementChild)&&im(/<[/\w]/g,wn.innerHTML)&&im(/<[/\w]/g,wn.textContent))return xa(wn),!0;if(!Ce[Zi]||gn[Zi]){if(!gn[Zi]&&cd(Zi)&&(Ne.tagNameCheck instanceof RegExp&&im(Ne.tagNameCheck,Zi)||Ne.tagNameCheck instanceof Function&&Ne.tagNameCheck(Zi)))return!1;if(Ma&&!Tr[Zi]){const nu=oe(wn)||wn.parentNode,vu=ie(wn)||wn.childNodes;if(vu&&nu){const Dl=vu.length;for(let Yh=Dl-1;Yh>=0;--Yh)nu.insertBefore(K(vu[Yh],!0),ee(wn))}}return xa(wn),!0}return wn instanceof T&&!Fc(wn)||(Zi==="noscript"||Zi==="noembed"||Zi==="noframes")&&im(/<\/no(script|embed|frames)/i,wn.innerHTML)?(xa(wn),!0):(Pt&&wn.nodeType===3&&(Zr=wn.textContent,gX([W,xe,U],nu=>{Zr=$F(Zr,nu," ")}),wn.textContent!==Zr&&(jF(s.removed,{element:wn.cloneNode()}),wn.textContent=Zr)),Wh("afterSanitizeElements",wn,null),!1)},Gd=function(wn,Zr,Zi){if(yt&&(Zr==="id"||Zr==="name")&&(Zi in u||Zi in pm))return!1;if(!(Gt&&!_t[Zr]&&im(Fe,Zr))){if(!(Et&&im(Pe,Zr))){if(!Ke[Zr]||_t[Zr]){if(!(cd(wn)&&(Ne.tagNameCheck instanceof RegExp&&im(Ne.tagNameCheck,wn)||Ne.tagNameCheck instanceof Function&&Ne.tagNameCheck(wn))&&(Ne.attributeNameCheck instanceof RegExp&&im(Ne.attributeNameCheck,Zr)||Ne.attributeNameCheck instanceof Function&&Ne.attributeNameCheck(Zr))||Zr==="is"&&Ne.allowCustomizedBuiltInElements&&(Ne.tagNameCheck instanceof RegExp&&im(Ne.tagNameCheck,Zi)||Ne.tagNameCheck instanceof Function&&Ne.tagNameCheck(Zi))))return!1}else if(!At[Zr]){if(!im(Se,$F(Zi,Ie,""))){if(!((Zr==="src"||Zr==="xlink:href"||Zr==="href")&&wn!=="script"&&YNt(Zi,"data:")===0&&qn[wn])){if(!(ln&&!im(je,$F(Zi,Ie,"")))){if(Zi)return!1}}}}}}return!0},cd=function(wn){return wn!=="annotation-xml"&&wn.indexOf("-")>0},Kd=function(wn){Wh("beforeSanitizeAttributes",wn,null);const{attributes:Zr}=wn;if(!Zr)return;const Zi={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ke};let nu=Zr.length;for(;nu--;){const vu=Zr[nu],{name:Dl,namespaceURI:Yh,value:w1}=vu,$0=da(Dl);let Wi=Dl==="value"?w1:XNt(w1);if(Zi.attrName=$0,Zi.attrValue=Wi,Zi.keepAttr=!0,Zi.forceKeepAttr=void 0,Wh("uponSanitizeAttribute",wn,Zi),Wi=Zi.attrValue,Zi.forceKeepAttr||(Ba(Dl,wn),!Zi.keepAttr))continue;if(!xt&&im(/\/>/i,Wi)){Ba(Dl,wn);continue}Pt&&gX([W,xe,U],Qa=>{Wi=$F(Wi,Qa," ")});const Bs=da(wn.nodeName);if(Gd(Bs,$0,Wi)){if(ji&&($0==="id"||$0==="name")&&(Ba(Dl,wn),Wi=xi+Wi),pe&&typeof F=="object"&&typeof F.getAttributeType=="function"&&!Yh)switch(F.getAttributeType(Bs,$0)){case"TrustedHTML":{Wi=pe.createHTML(Wi);break}case"TrustedScriptURL":{Wi=pe.createScriptURL(Wi);break}}try{Yh?wn.setAttributeNS(Yh,Dl,Wi):wn.setAttribute(Dl,Wi),hRe(s.removed)}catch{}}}Wh("afterSanitizeAttributes",wn,null)},$g=function as(wn){let Zr=null;const Zi=kh(wn);for(Wh("beforeSanitizeShadowDOM",wn,null);Zr=Zi.nextNode();)Wh("uponSanitizeShadowNode",Zr,null),!od(Zr)&&(Zr.content instanceof v&&as(Zr.content),Kd(Zr));Wh("afterSanitizeShadowDOM",wn,null)};return s.sanitize=function(as){let wn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Zr=null,Zi=null,nu=null,vu=null;if(jo=!as,jo&&(as=""),typeof as!="string"&&!o5(as))if(typeof as.toString=="function"){if(as=as.toString(),typeof as!="string")throw zF("dirty is not a string, aborting")}else throw zF("toString is not a function");if(!s.isSupported)return as;if(Dt||Xc(wn),s.removed=[],typeof as=="string"&&(zs=!1),zs){if(as.nodeName){const w1=da(as.nodeName);if(!Ce[w1]||gn[w1])throw zF("root node is forbidden and cannot be sanitized in-place")}}else if(as instanceof y)Zr=ga(""),Zi=Zr.ownerDocument.importNode(as,!0),Zi.nodeType===1&&Zi.nodeName==="BODY"||Zi.nodeName==="HTML"?Zr=Zi:Zr.appendChild(Zi);else{if(!On&&!Pt&&!Qe&&as.indexOf("<")===-1)return pe&&zr?pe.createHTML(as):as;if(Zr=ga(as),!Zr)return On?null:zr?be:""}Zr&&kt&&xa(Zr.firstChild);const Dl=kh(zs?as:Zr);for(;nu=Dl.nextNode();)od(nu)||(nu.content instanceof v&&$g(nu.content),Kd(nu));if(zs)return as;if(On){if(ht)for(vu=se.call(Zr.ownerDocument);Zr.firstChild;)vu.appendChild(Zr.firstChild);else vu=Zr;return(Ke.shadowroot||Ke.shadowrootmode)&&(vu=X.call(d,vu,!0)),vu}let Yh=Qe?Zr.outerHTML:Zr.innerHTML;return Qe&&Ce["!doctype"]&&Zr.ownerDocument&&Zr.ownerDocument.doctype&&Zr.ownerDocument.doctype.name&&im(mRe,Zr.ownerDocument.doctype.name)&&(Yh="
+`+Yh),Pt&&gX([W,xe,U],w1=>{Yh=$F(Yh,w1," ")}),pe&&zr?pe.createHTML(Yh):Yh},s.setConfig=function(){let as=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Xc(as),Dt=!0},s.clearConfig=function(){j0=null,Dt=!1},s.isValidAttribute=function(as,wn,Zr){j0||Xc({});const Zi=da(as),nu=da(wn);return Gd(Zi,nu,Zr)},s.addHook=function(as,wn){typeof wn=="function"&&(ge[as]=ge[as]||[],jF(ge[as],wn))},s.removeHook=function(as){if(ge[as])return hRe(ge[as])},s.removeHooks=function(as){ge[as]&&(ge[as]=[])},s.removeAllHooks=function(){ge={}},s}var hD=wRe();const fD=/
/gi,lPt=i=>i?kRe(i).replace(/\\n/g,"#br#").split("#br#"):[""],hPt=(()=>{let i=!1;return()=>{i||(fPt(),i=!0)}})();function fPt(){const i="data-temp-href-target";hD.addHook("beforeSanitizeAttributes",s=>{s.tagName==="A"&&s.hasAttribute("target")&&s.setAttribute(i,s.getAttribute("target")||"")}),hD.addHook("afterSanitizeAttributes",s=>{s.tagName==="A"&&s.hasAttribute(i)&&(s.setAttribute("target",s.getAttribute(i)||""),s.removeAttribute(i),s.getAttribute("target")==="_blank"&&s.setAttribute("rel","noopener"))})}const yRe=i=>(hPt(),hD.sanitize(i)),xRe=(i,s)=>{var u;if(((u=s.flowchart)==null?void 0:u.htmlLabels)!==!1){const d=s.securityLevel;d==="antiscript"||d==="strict"?i=yRe(i):d!=="loose"&&(i=kRe(i),i=i.replace(//g,">"),i=i.replace(/=/g,"="),i=bPt(i))}return i},Yf=(i,s)=>i&&(s.dompurifyConfig?i=hD.sanitize(xRe(i,s),s.dompurifyConfig).toString():i=hD.sanitize(xRe(i,s),{FORBID_TAGS:["style"]}).toString(),i),dPt=(i,s)=>typeof i=="string"?Yf(i,s):i.flat().map(u=>Yf(u,s)),gPt=i=>fD.test(i),pPt=i=>i.split(fD),bPt=i=>i.replace(/#br#/g,"
"),kRe=i=>i.replace(fD,"#br#"),mPt=i=>{let s="";return i&&(s=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,s=s.replaceAll(/\(/g,"\\("),s=s.replaceAll(/\)/g,"\\)")),s},f1=i=>!(i===!1||["false","null","0"].includes(String(i).trim().toLowerCase())),vPt=function(...i){const s=i.filter(u=>!isNaN(u));return Math.max(...s)},wPt=function(...i){const s=i.filter(u=>!isNaN(u));return Math.min(...s)},qF=function(i){const s=i.split(/(,)/),u=[];for(let d=0;d0&&d+1Math.max(0,i.split(s).length-1),yPt=(i,s)=>{const u=l2e(i,"~"),d=l2e(s,"~");return u===1&&d===1},xPt=i=>{const s=l2e(i,"~");let u=!1;if(s<=1)return i;s%2!==0&&i.startsWith("~")&&(i=i.substring(1),u=!0);const d=[...i];let p=d.indexOf("~"),v=d.lastIndexOf("~");for(;p!==-1&&v!==-1&&p!==v;)d[p]="<",d[v]=">",p=d.indexOf("~"),v=d.lastIndexOf("~");return u&&d.unshift("~"),d.join("")},ERe=()=>window.MathMLElement!==void 0,h2e=/\$\$(.*)\$\$/g,Dv=i=>{var s;return(((s=i.match(h2e))==null?void 0:s.length)??0)>0},HF=async(i,s)=>{i=await CC(i,s);const u=document.createElement("div");u.innerHTML=i,u.id="katex-temp",u.style.visibility="hidden",u.style.position="absolute",u.style.top="0";const d=document.querySelector("body");d==null||d.insertAdjacentElement("beforeend",u);const p={width:u.clientWidth,height:u.clientHeight};return u.remove(),p},CC=async(i,s)=>{if(!Dv(i))return i;if(!ERe()&&!s.legacyMathML)return i.replace(h2e,"MathML is unsupported in this environment.");const{default:u}=await Promise.resolve().then(()=>MVt);return i.split(fD).map(d=>Dv(d)?`
+
+ ${d}
+
+ `:`${d}
`).join("").replace(h2e,(d,p)=>u.renderToString(p,{throwOnError:!0,displayMode:!0,output:ERe()?"mathml":"htmlAndMathml"}).replace(/\n/g," ").replace(//g,""))},ci={getRows:lPt,sanitizeText:Yf,sanitizeTextOrArray:dPt,hasBreaks:gPt,splitBreaks:pPt,lineBreakRegex:fD,removeScript:yRe,getUrl:mPt,evaluate:f1,getMax:vPt,getMin:wPt},vX={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:i=>i>=255?255:i<0?0:i,g:i=>i>=255?255:i<0?0:i,b:i=>i>=255?255:i<0?0:i,h:i=>i%360,s:i=>i>=100?100:i<0?0:i,l:i=>i>=100?100:i<0?0:i,a:i=>i>=1?1:i<0?0:i},toLinear:i=>{const s=i/255;return i>.03928?Math.pow((s+.055)/1.055,2.4):s/12.92},hue2rgb:(i,s,u)=>(u<0&&(u+=1),u>1&&(u-=1),u<1/6?i+(s-i)*6*u:u<1/2?s:u<2/3?i+(s-i)*(2/3-u)*6:i),hsl2rgb:({h:i,s,l:u},d)=>{if(!s)return u*2.55;i/=360,s/=100,u/=100;const p=u<.5?u*(1+s):u+s-u*s,v=2*u-p;switch(d){case"r":return vX.hue2rgb(v,p,i+1/3)*255;case"g":return vX.hue2rgb(v,p,i)*255;case"b":return vX.hue2rgb(v,p,i-1/3)*255}},rgb2hsl:({r:i,g:s,b:u},d)=>{i/=255,s/=255,u/=255;const p=Math.max(i,s,u),v=Math.min(i,s,u),b=(p+v)/2;if(d==="l")return b*100;if(p===v)return 0;const y=p-v,T=b>.5?y/(2-p-v):y/(p+v);if(d==="s")return T*100;switch(p){case i:return((s-u)/y+(ss>u?Math.min(s,Math.max(u,i)):Math.min(u,Math.max(s,i)),round:i=>Math.round(i*1e10)/1e10},unit:{dec2hex:i=>{const s=Math.round(i).toString(16);return s.length>1?s:`0${s}`}}},v9={};for(let i=0;i<=255;i++)v9[i]=Wa.unit.dec2hex(i);const Og={ALL:0,RGB:1,HSL:2};class kPt{constructor(){this.type=Og.ALL}get(){return this.type}set(s){if(this.type&&this.type!==s)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=s}reset(){this.type=Og.ALL}is(s){return this.type===s}}const EPt=kPt;class TPt{constructor(s,u){this.color=u,this.changed=!1,this.data=s,this.type=new EPt}set(s,u){return this.color=u,this.changed=!1,this.data=s,this.type.type=Og.ALL,this}_ensureHSL(){const s=this.data,{h:u,s:d,l:p}=s;u===void 0&&(s.h=Wa.channel.rgb2hsl(s,"h")),d===void 0&&(s.s=Wa.channel.rgb2hsl(s,"s")),p===void 0&&(s.l=Wa.channel.rgb2hsl(s,"l"))}_ensureRGB(){const s=this.data,{r:u,g:d,b:p}=s;u===void 0&&(s.r=Wa.channel.hsl2rgb(s,"r")),d===void 0&&(s.g=Wa.channel.hsl2rgb(s,"g")),p===void 0&&(s.b=Wa.channel.hsl2rgb(s,"b"))}get r(){const s=this.data,u=s.r;return!this.type.is(Og.HSL)&&u!==void 0?u:(this._ensureHSL(),Wa.channel.hsl2rgb(s,"r"))}get g(){const s=this.data,u=s.g;return!this.type.is(Og.HSL)&&u!==void 0?u:(this._ensureHSL(),Wa.channel.hsl2rgb(s,"g"))}get b(){const s=this.data,u=s.b;return!this.type.is(Og.HSL)&&u!==void 0?u:(this._ensureHSL(),Wa.channel.hsl2rgb(s,"b"))}get h(){const s=this.data,u=s.h;return!this.type.is(Og.RGB)&&u!==void 0?u:(this._ensureRGB(),Wa.channel.rgb2hsl(s,"h"))}get s(){const s=this.data,u=s.s;return!this.type.is(Og.RGB)&&u!==void 0?u:(this._ensureRGB(),Wa.channel.rgb2hsl(s,"s"))}get l(){const s=this.data,u=s.l;return!this.type.is(Og.RGB)&&u!==void 0?u:(this._ensureRGB(),Wa.channel.rgb2hsl(s,"l"))}get a(){return this.data.a}set r(s){this.type.set(Og.RGB),this.changed=!0,this.data.r=s}set g(s){this.type.set(Og.RGB),this.changed=!0,this.data.g=s}set b(s){this.type.set(Og.RGB),this.changed=!0,this.data.b=s}set h(s){this.type.set(Og.HSL),this.changed=!0,this.data.h=s}set s(s){this.type.set(Og.HSL),this.changed=!0,this.data.s=s}set l(s){this.type.set(Og.HSL),this.changed=!0,this.data.l=s}set a(s){this.changed=!0,this.data.a=s}}const CPt=TPt,wX=new CPt({r:0,g:0,b:0,a:0},"transparent"),TRe={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:i=>{if(i.charCodeAt(0)!==35)return;const s=i.match(TRe.re);if(!s)return;const u=s[1],d=parseInt(u,16),p=u.length,v=p%4===0,b=p>4,y=b?1:17,T=b?8:4,_=v?0:-1,A=b?255:15;return wX.set({r:(d>>T*(_+3)&A)*y,g:(d>>T*(_+2)&A)*y,b:(d>>T*(_+1)&A)*y,a:v?(d&A)*y/255:1},i)},stringify:i=>{const{r:s,g:u,b:d,a:p}=i;return p<1?`#${v9[Math.round(s)]}${v9[Math.round(u)]}${v9[Math.round(d)]}${v9[Math.round(p*255)]}`:`#${v9[Math.round(s)]}${v9[Math.round(u)]}${v9[Math.round(d)]}`}},VF=TRe,yX={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:i=>{const s=i.match(yX.hueRe);if(s){const[,u,d]=s;switch(d){case"grad":return Wa.channel.clamp.h(parseFloat(u)*.9);case"rad":return Wa.channel.clamp.h(parseFloat(u)*180/Math.PI);case"turn":return Wa.channel.clamp.h(parseFloat(u)*360)}}return Wa.channel.clamp.h(parseFloat(i))},parse:i=>{const s=i.charCodeAt(0);if(s!==104&&s!==72)return;const u=i.match(yX.re);if(!u)return;const[,d,p,v,b,y]=u;return wX.set({h:yX._hue2deg(d),s:Wa.channel.clamp.s(parseFloat(p)),l:Wa.channel.clamp.l(parseFloat(v)),a:b?Wa.channel.clamp.a(y?parseFloat(b)/100:parseFloat(b)):1},i)},stringify:i=>{const{h:s,s:u,l:d,a:p}=i;return p<1?`hsla(${Wa.lang.round(s)}, ${Wa.lang.round(u)}%, ${Wa.lang.round(d)}%, ${p})`:`hsl(${Wa.lang.round(s)}, ${Wa.lang.round(u)}%, ${Wa.lang.round(d)}%)`}},xX=yX,kX={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:i=>{i=i.toLowerCase();const s=kX.colors[i];if(s)return VF.parse(s)},stringify:i=>{const s=VF.stringify(i);for(const u in kX.colors)if(kX.colors[u]===s)return u}},CRe=kX,SRe={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:i=>{const s=i.charCodeAt(0);if(s!==114&&s!==82)return;const u=i.match(SRe.re);if(!u)return;const[,d,p,v,b,y,T,_,A]=u;return wX.set({r:Wa.channel.clamp.r(p?parseFloat(d)*2.55:parseFloat(d)),g:Wa.channel.clamp.g(b?parseFloat(v)*2.55:parseFloat(v)),b:Wa.channel.clamp.b(T?parseFloat(y)*2.55:parseFloat(y)),a:_?Wa.channel.clamp.a(A?parseFloat(_)/100:parseFloat(_)):1},i)},stringify:i=>{const{r:s,g:u,b:d,a:p}=i;return p<1?`rgba(${Wa.lang.round(s)}, ${Wa.lang.round(u)}, ${Wa.lang.round(d)}, ${Wa.lang.round(p)})`:`rgb(${Wa.lang.round(s)}, ${Wa.lang.round(u)}, ${Wa.lang.round(d)})`}},EX=SRe,O3={format:{keyword:CRe,hex:VF,rgb:EX,rgba:EX,hsl:xX,hsla:xX},parse:i=>{if(typeof i!="string")return i;const s=VF.parse(i)||EX.parse(i)||xX.parse(i)||CRe.parse(i);if(s)return s;throw new Error(`Unsupported color format: "${i}"`)},stringify:i=>!i.changed&&i.color?i.color:i.type.is(Og.HSL)||i.data.r===void 0?xX.stringify(i):i.a<1||!Number.isInteger(i.r)||!Number.isInteger(i.g)||!Number.isInteger(i.b)?EX.stringify(i):VF.stringify(i)},_Re=(i,s)=>{const u=O3.parse(i);for(const d in s)u[d]=Wa.channel.clamp[d](s[d]);return O3.stringify(u)},SC=(i,s,u=0,d=1)=>{if(typeof i!="number")return _Re(i,{a:s});const p=wX.set({r:Wa.channel.clamp.r(i),g:Wa.channel.clamp.g(s),b:Wa.channel.clamp.b(u),a:Wa.channel.clamp.a(d)});return O3.stringify(p)},ARe=(i,s)=>Wa.lang.round(O3.parse(i)[s]),SPt=i=>{const{r:s,g:u,b:d}=O3.parse(i),p=.2126*Wa.channel.toLinear(s)+.7152*Wa.channel.toLinear(u)+.0722*Wa.channel.toLinear(d);return Wa.lang.round(p)},_Pt=i=>SPt(i)>=.5,_C=i=>!_Pt(i),LRe=(i,s,u)=>{const d=O3.parse(i),p=d[s],v=Wa.channel.clamp[s](p+u);return p!==v&&(d[s]=v),O3.stringify(d)},Gs=(i,s)=>LRe(i,"l",s),fa=(i,s)=>LRe(i,"l",-s),In=(i,s)=>{const u=O3.parse(i),d={};for(const p in s)s[p]&&(d[p]=u[p]+s[p]);return _Re(i,d)},APt=(i,s,u=50)=>{const{r:d,g:p,b:v,a:b}=O3.parse(i),{r:y,g:T,b:_,a:A}=O3.parse(s),P=u/100,R=P*2-1,F=b-A,K=((R*F===-1?R:(R+F)/(1+R*F))+1)/2,ee=1-K,ie=d*K+y*ee,oe=p*K+T*ee,pe=v*K+_*ee,be=b*P+A*(1-P);return SC(ie,oe,pe,be)},Vi=(i,s=100)=>{const u=O3.parse(i);return u.r=255-u.r,u.g=255-u.g,u.b=255-u.b,APt(u,i,s)},Tp=(i,s)=>s?In(i,{s:-40,l:10}):In(i,{s:-40,l:-10}),TX="#ffffff",CX="#f2f2f2";let LPt=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 u,d,p,v,b,y,T,_,A,P,R;if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||In(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||In(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||Tp(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Tp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Tp(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Tp(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Vi(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Vi(this.tertiaryColor),this.lineColor=this.lineColor||Vi(this.background),this.arrowheadColor=this.arrowheadColor||Vi(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?fa(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||fa(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Vi(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||Gs(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||In(this.primaryColor,{h:30}),this.cScale4=this.cScale4||In(this.primaryColor,{h:60}),this.cScale5=this.cScale5||In(this.primaryColor,{h:90}),this.cScale6=this.cScale6||In(this.primaryColor,{h:120}),this.cScale7=this.cScale7||In(this.primaryColor,{h:150}),this.cScale8=this.cScale8||In(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||In(this.primaryColor,{h:270}),this.cScale10=this.cScale10||In(this.primaryColor,{h:300}),this.cScale11=this.cScale11||In(this.primaryColor,{h:330}),this.darkMode)for(let F=0;F{this[d]=s[d]}),this.updateColors(),u.forEach(d=>{this[d]=s[d]})}};const MPt=i=>{const s=new LPt;return s.calculate(i),s};let DPt=class{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Gs(this.primaryColor,16),this.tertiaryColor=In(this.primaryColor,{h:-160}),this.primaryBorderColor=Vi(this.background),this.secondaryBorderColor=Tp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Tp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Vi(this.primaryColor),this.secondaryTextColor=Vi(this.secondaryColor),this.tertiaryTextColor=Vi(this.tertiaryColor),this.lineColor=Vi(this.background),this.textColor=Vi(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Gs(Vi("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=SC(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=fa("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=fa(this.sectionBkgColor,10),this.taskBorderColor=SC(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=SC(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 s,u,d,p,v,b,y,T,_,A,P;this.secondBkg=Gs(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=Gs(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=Gs(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=In(this.primaryColor,{h:64}),this.fillType3=In(this.secondaryColor,{h:64}),this.fillType4=In(this.primaryColor,{h:-64}),this.fillType5=In(this.secondaryColor,{h:-64}),this.fillType6=In(this.primaryColor,{h:128}),this.fillType7=In(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||In(this.primaryColor,{h:30}),this.cScale4=this.cScale4||In(this.primaryColor,{h:60}),this.cScale5=this.cScale5||In(this.primaryColor,{h:90}),this.cScale6=this.cScale6||In(this.primaryColor,{h:120}),this.cScale7=this.cScale7||In(this.primaryColor,{h:150}),this.cScale8=this.cScale8||In(this.primaryColor,{h:210}),this.cScale9=this.cScale9||In(this.primaryColor,{h:270}),this.cScale10=this.cScale10||In(this.primaryColor,{h:300}),this.cScale11=this.cScale11||In(this.primaryColor,{h:330});for(let R=0;R{this[d]=s[d]}),this.updateColors(),u.forEach(d=>{this[d]=s[d]})}};const IPt=i=>{const s=new DPt;return s.calculate(i),s};let OPt=class{constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=In(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=In(this.primaryColor,{h:-160}),this.primaryBorderColor=Tp(this.primaryColor,this.darkMode),this.secondaryBorderColor=Tp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Tp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Vi(this.primaryColor),this.secondaryTextColor=Vi(this.secondaryColor),this.tertiaryTextColor=Vi(this.tertiaryColor),this.lineColor=Vi(this.background),this.textColor=Vi(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=SC(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 s,u,d,p,v,b,y,T,_,A,P;this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||In(this.primaryColor,{h:30}),this.cScale4=this.cScale4||In(this.primaryColor,{h:60}),this.cScale5=this.cScale5||In(this.primaryColor,{h:90}),this.cScale6=this.cScale6||In(this.primaryColor,{h:120}),this.cScale7=this.cScale7||In(this.primaryColor,{h:150}),this.cScale8=this.cScale8||In(this.primaryColor,{h:210}),this.cScale9=this.cScale9||In(this.primaryColor,{h:270}),this.cScale10=this.cScale10||In(this.primaryColor,{h:300}),this.cScale11=this.cScale11||In(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||fa(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||fa(this.tertiaryColor,40);for(let R=0;R{this[d]=s[d]}),this.updateColors(),u.forEach(d=>{this[d]=s[d]})}};const f2e=i=>{const s=new OPt;return s.calculate(i),s};let NPt=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=Gs("#cde498",10),this.primaryBorderColor=Tp(this.primaryColor,this.darkMode),this.secondaryBorderColor=Tp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Tp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Vi(this.primaryColor),this.secondaryTextColor=Vi(this.secondaryColor),this.tertiaryTextColor=Vi(this.primaryColor),this.lineColor=Vi(this.background),this.textColor=Vi(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 s,u,d,p,v,b,y,T,_,A,P;this.actorBorder=fa(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||In(this.primaryColor,{h:30}),this.cScale4=this.cScale4||In(this.primaryColor,{h:60}),this.cScale5=this.cScale5||In(this.primaryColor,{h:90}),this.cScale6=this.cScale6||In(this.primaryColor,{h:120}),this.cScale7=this.cScale7||In(this.primaryColor,{h:150}),this.cScale8=this.cScale8||In(this.primaryColor,{h:210}),this.cScale9=this.cScale9||In(this.primaryColor,{h:270}),this.cScale10=this.cScale10||In(this.primaryColor,{h:300}),this.cScale11=this.cScale11||In(this.primaryColor,{h:330}),this["cScalePeer1"]=this["cScalePeer1"]||fa(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||fa(this.tertiaryColor,40);for(let R=0;R{this[d]=s[d]}),this.updateColors(),u.forEach(d=>{this[d]=s[d]})}};const PPt=i=>{const s=new NPt;return s.calculate(i),s};class BPt{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Gs(this.contrast,55),this.background="#ffffff",this.tertiaryColor=In(this.primaryColor,{h:-160}),this.primaryBorderColor=Tp(this.primaryColor,this.darkMode),this.secondaryBorderColor=Tp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Tp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Vi(this.primaryColor),this.secondaryTextColor=Vi(this.secondaryColor),this.tertiaryTextColor=Vi(this.tertiaryColor),this.lineColor=Vi(this.background),this.textColor=Vi(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 s,u,d,p,v,b,y,T,_,A,P;this.secondBkg=Gs(this.contrast,55),this.border2=this.contrast,this.actorBorder=Gs(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 R=0;R{this[d]=s[d]}),this.updateColors(),u.forEach(d=>{this[d]=s[d]})}}const E7={base:{getThemeVariables:MPt},dark:{getThemeVariables:IPt},default:{getThemeVariables:f2e},forest:{getThemeVariables:PPt},neutral:{getThemeVariables:i=>{const s=new BPt;return s.calculate(i),s}}},T7={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},MRe={...T7,deterministicIDSeed:void 0,themeCSS:void 0,themeVariables:E7.default.getThemeVariables(),sequence:{...T7.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:{...T7.gantt,tickInterval:void 0,useWidth:void 0},c4:{...T7.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:{...T7.pie,useWidth:984},xyChart:{...T7.xyChart,useWidth:void 0},requirement:{...T7.requirement,useWidth:void 0},gitGraph:{...T7.gitGraph,useMaxWidth:!1},sankey:{...T7.sankey,useMaxWidth:!1}},DRe=(i,s="")=>Object.keys(i).reduce((u,d)=>Array.isArray(i[d])?u:typeof i[d]=="object"&&i[d]!==null?[...u,s+d,...DRe(i[d],"")]:[...u,s+d],[]),FPt=new Set(DRe(MRe,"")),sh=MRe,SX=i=>{if(Xe.debug("sanitizeDirective called with",i),!(typeof i!="object"||i==null)){if(Array.isArray(i)){i.forEach(s=>SX(s));return}for(const s of Object.keys(i)){if(Xe.debug("Checking key",s),s.startsWith("__")||s.includes("proto")||s.includes("constr")||!FPt.has(s)||i[s]==null){Xe.debug("sanitize deleting key: ",s),delete i[s];continue}if(typeof i[s]=="object"){Xe.debug("sanitizing object",s),SX(i[s]);continue}const u=["themeCSS","fontFamily","altFontFamily"];for(const d of u)s.includes(d)&&(Xe.debug("sanitizing css option",s),i[s]=RPt(i[s]))}if(i.themeVariables)for(const s of Object.keys(i.themeVariables)){const u=i.themeVariables[s];u!=null&&u.match&&!u.match(/^[\d "#%(),.;A-Za-z]+$/)&&(i.themeVariables[s]="")}Xe.debug("After sanitization",i)}},RPt=i=>{let s=0,u=0;for(const d of i){if(s{for(const{id:s,detector:u,loader:d}of i)PRe(s,u,d)},PRe=(i,s,u)=>{dD[i]?Xe.error(`Detector with key ${i} already exists`):dD[i]={detector:s,loader:u},Xe.debug(`Detector with key ${i} added${u?" with loader":""}`)},$Pt=i=>dD[i].loader,d2e=(i,s,{depth:u=2,clobber:d=!1}={})=>{const p={depth:u,clobber:d};return Array.isArray(s)&&!Array.isArray(i)?(s.forEach(v=>d2e(i,v,p)),i):Array.isArray(s)&&Array.isArray(i)?(s.forEach(v=>{i.includes(v)||i.push(v)}),i):i===void 0||u<=0?i!=null&&typeof i=="object"&&typeof s=="object"?Object.assign(i,s):s:(s!==void 0&&typeof i=="object"&&typeof s=="object"&&Object.keys(s).forEach(v=>{typeof s[v]=="object"&&(i[v]===void 0||typeof i[v]=="object")?(i[v]===void 0&&(i[v]=Array.isArray(s[v])?[]:{}),i[v]=d2e(i[v],s[v],{depth:u-1,clobber:d})):(d||typeof i[v]!="object"&&typeof s[v]!="object")&&(i[v]=s[v])}),i)},id=d2e;var zPt=typeof global=="object"&&global&&global.Object===Object&&global;const BRe=zPt;var qPt=typeof self=="object"&&self&&self.Object===Object&&self,HPt=BRe||qPt||Function("return this")();const N3=HPt;var VPt=N3.Symbol;const Iv=VPt;var FRe=Object.prototype,UPt=FRe.hasOwnProperty,GPt=FRe.toString,GF=Iv?Iv.toStringTag:void 0;function KPt(i){var s=UPt.call(i,GF),u=i[GF];try{i[GF]=void 0;var d=!0}catch{}var p=GPt.call(i);return d&&(s?i[GF]=u:delete i[GF]),p}var WPt=Object.prototype,YPt=WPt.toString;function XPt(i){return YPt.call(i)}var QPt="[object Null]",JPt="[object Undefined]",RRe=Iv?Iv.toStringTag:void 0;function AC(i){return i==null?i===void 0?JPt:QPt:RRe&&RRe in Object(i)?KPt(i):XPt(i)}function am(i){var s=typeof i;return i!=null&&(s=="object"||s=="function")}var ZPt="[object AsyncFunction]",eBt="[object Function]",tBt="[object GeneratorFunction]",nBt="[object Proxy]";function gD(i){if(!am(i))return!1;var s=AC(i);return s==eBt||s==tBt||s==ZPt||s==nBt}var rBt=N3["__core-js_shared__"];const g2e=rBt;var jRe=function(){var i=/[^.]+$/.exec(g2e&&g2e.keys&&g2e.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function iBt(i){return!!jRe&&jRe in i}var sBt=Function.prototype,aBt=sBt.toString;function LC(i){if(i!=null){try{return aBt.call(i)}catch{}try{return i+""}catch{}}return""}var oBt=/[\\^$.*+?()[\]{}|]/g,cBt=/^\[object .+?Constructor\]$/,uBt=Function.prototype,lBt=Object.prototype,hBt=uBt.toString,fBt=lBt.hasOwnProperty,dBt=RegExp("^"+hBt.call(fBt).replace(oBt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function gBt(i){if(!am(i)||iBt(i))return!1;var s=gD(i)?dBt:cBt;return s.test(LC(i))}function pBt(i,s){return i==null?void 0:i[s]}function MC(i,s){var u=pBt(i,s);return gBt(u)?u:void 0}var bBt=MC(Object,"create");const KF=bBt;function mBt(){this.__data__=KF?KF(null):{},this.size=0}function vBt(i){var s=this.has(i)&&delete this.__data__[i];return this.size-=s?1:0,s}var wBt="__lodash_hash_undefined__",yBt=Object.prototype,xBt=yBt.hasOwnProperty;function kBt(i){var s=this.__data__;if(KF){var u=s[i];return u===wBt?void 0:u}return xBt.call(s,i)?s[i]:void 0}var EBt=Object.prototype,TBt=EBt.hasOwnProperty;function CBt(i){var s=this.__data__;return KF?s[i]!==void 0:TBt.call(s,i)}var SBt="__lodash_hash_undefined__";function _Bt(i,s){var u=this.__data__;return this.size+=this.has(i)?0:1,u[i]=KF&&s===void 0?SBt:s,this}function DC(i){var s=-1,u=i==null?0:i.length;for(this.clear();++s-1}function NBt(i,s){var u=this.__data__,d=AX(u,i);return d<0?(++this.size,u.push([i,s])):u[d][1]=s,this}function C7(i){var s=-1,u=i==null?0:i.length;for(this.clear();++s-1&&i%1==0&&i<=uFt}function w9(i){return i!=null&&w2e(i.length)&&!gD(i)}function JRe(i){return q4(i)&&w9(i)}function lFt(){return!1}var ZRe=typeof exports=="object"&&exports&&!exports.nodeType&&exports,eje=ZRe&&typeof module=="object"&&module&&!module.nodeType&&module,hFt=eje&&eje.exports===ZRe,tje=hFt?N3.Buffer:void 0,fFt=tje?tje.isBuffer:void 0,dFt=fFt||lFt;const vD=dFt;var gFt="[object Object]",pFt=Function.prototype,bFt=Object.prototype,nje=pFt.toString,mFt=bFt.hasOwnProperty,vFt=nje.call(Object);function rje(i){if(!q4(i)||AC(i)!=gFt)return!1;var s=v2e(i);if(s===null)return!0;var u=mFt.call(s,"constructor")&&s.constructor;return typeof u=="function"&&u instanceof u&&nje.call(u)==vFt}var wFt="[object Arguments]",yFt="[object Array]",xFt="[object Boolean]",kFt="[object Date]",EFt="[object Error]",TFt="[object Function]",CFt="[object Map]",SFt="[object Number]",_Ft="[object Object]",AFt="[object RegExp]",LFt="[object Set]",MFt="[object String]",DFt="[object WeakMap]",IFt="[object ArrayBuffer]",OFt="[object DataView]",NFt="[object Float32Array]",PFt="[object Float64Array]",BFt="[object Int8Array]",FFt="[object Int16Array]",RFt="[object Int32Array]",jFt="[object Uint8Array]",$Ft="[object Uint8ClampedArray]",zFt="[object Uint16Array]",qFt="[object Uint32Array]",ah={};ah[NFt]=ah[PFt]=ah[BFt]=ah[FFt]=ah[RFt]=ah[jFt]=ah[$Ft]=ah[zFt]=ah[qFt]=!0,ah[wFt]=ah[yFt]=ah[IFt]=ah[xFt]=ah[OFt]=ah[kFt]=ah[EFt]=ah[TFt]=ah[CFt]=ah[SFt]=ah[_Ft]=ah[AFt]=ah[LFt]=ah[MFt]=ah[DFt]=!1;function HFt(i){return q4(i)&&w2e(i.length)&&!!ah[AC(i)]}function NX(i){return function(s){return i(s)}}var ije=typeof exports=="object"&&exports&&!exports.nodeType&&exports,YF=ije&&typeof module=="object"&&module&&!module.nodeType&&module,VFt=YF&&YF.exports===ije,y2e=VFt&&BRe.process,UFt=function(){try{var i=YF&&YF.require&&YF.require("util").types;return i||y2e&&y2e.binding&&y2e.binding("util")}catch{}}();const wD=UFt;var sje=wD&&wD.isTypedArray,GFt=sje?NX(sje):HFt;const PX=GFt;function x2e(i,s){if(!(s==="constructor"&&typeof i[s]=="function")&&s!="__proto__")return i[s]}var KFt=Object.prototype,WFt=KFt.hasOwnProperty;function BX(i,s,u){var d=i[s];(!(WFt.call(i,s)&&pD(d,u))||u===void 0&&!(s in i))&&DX(i,s,u)}function XF(i,s,u,d){var p=!u;u||(u={});for(var v=-1,b=s.length;++v-1&&i%1==0&&i0){if(++s>=uRt)return arguments[0]}else s=0;return i.apply(void 0,arguments)}}var dRt=fRt(cRt);const lje=dRt;function RX(i,s){return lje(uje(i,s,OC),i+"")}function QF(i,s,u){if(!am(u))return!1;var d=typeof s;return(d=="number"?w9(u)&&FX(s,u.length):d=="string"&&s in u)?pD(u[s],i):!1}function gRt(i){return RX(function(s,u){var d=-1,p=u.length,v=p>1?u[p-1]:void 0,b=p>2?u[2]:void 0;for(v=i.length>3&&typeof v=="function"?(p--,v):void 0,b&&QF(u[0],u[1],b)&&(v=p<3?void 0:v,p=1),s=Object(s);++dy.args);SX(b),d=id(d,[...b])}else d=u.args;if(!d)return;let p=_X(i,s);const v="config";return d[v]!==void 0&&(p==="flowchart-v2"&&(p="flowchart"),d[p]=d[v],delete d[v]),d},fje=function(i,s=null){try{const u=new RegExp(`[%]{2}(?![{]${mRt.source})(?=[}][%]{2}).*
+`,"ig");i=i.trim().replace(u,"").replace(/'/gm,'"'),Xe.debug(`Detecting diagram directive${s!==null?" type:"+s:""} based on the text:${i}`);let d;const p=[];for(;(d=UF.exec(i))!==null;)if(d.index===UF.lastIndex&&UF.lastIndex++,d&&!s||s&&d[1]&&d[1].match(s)||s&&d[2]&&d[2].match(s)){const v=d[1]?d[1]:d[2],b=d[3]?d[3].trim():d[4]?JSON.parse(d[4].trim()):null;p.push({type:v,args:b})}return p.length===0?{type:i,args:null}:p.length===1?p[0]:p}catch(u){return Xe.error(`ERROR: ${u.message} - Unable to parse directive type: '${s}' based on the text: '${i}'`),{type:void 0,args:null}}},wRt=function(i){return i.replace(UF,"")},yRt=function(i,s){for(const[u,d]of s.entries())if(d.match(i))return u;return-1};function Ov(i,s){if(!i)return s;const u=`curve${i.charAt(0).toUpperCase()+i.slice(1)}`;return bRt[u]??s}function xRt(i,s){const u=i.trim();if(u)return s.securityLevel!=="loose"?p9.sanitizeUrl(u):u}const kRt=(i,...s)=>{const u=i.split("."),d=u.length-1,p=u[d];let v=window;for(let b=0;b{u+=dje(p,s),s=p});const d=u/2;return k2e(i,d)}function TRt(i){return i.length===1?i[0]:ERt(i)}const gje=(i,s=2)=>{const u=Math.pow(10,s);return Math.round(i*u)/u},k2e=(i,s)=>{let u,d=s;for(const p of i){if(u){const v=dje(p,u);if(v=1)return{x:p.x,y:p.y};if(b>0&&b<1)return{x:gje((1-b)*u.x+b*p.x,5),y:gje((1-b)*u.y+b*p.y,5)}}}u=p}throw new Error("Could not find a suitable point for the given distance")},CRt=(i,s,u)=>{Xe.info(`our points ${JSON.stringify(s)}`),s[0]!==u&&(s=s.reverse());const p=k2e(s,25),v=i?10:5,b=Math.atan2(s[0].y-p.y,s[0].x-p.x),y={x:0,y:0};return y.x=Math.sin(b)*v+(s[0].x+p.x)/2,y.y=-Math.cos(b)*v+(s[0].y+p.y)/2,y};function SRt(i,s,u){const d=structuredClone(u);Xe.info("our points",d),s!=="start_left"&&s!=="start_right"&&d.reverse();const p=25+i,v=k2e(d,p),b=10+i*.5,y=Math.atan2(d[0].y-v.y,d[0].x-v.x),T={x:0,y:0};return s==="start_left"?(T.x=Math.sin(y+Math.PI)*b+(d[0].x+v.x)/2,T.y=-Math.cos(y+Math.PI)*b+(d[0].y+v.y)/2):s==="end_right"?(T.x=Math.sin(y-Math.PI)*b+(d[0].x+v.x)/2-5,T.y=-Math.cos(y-Math.PI)*b+(d[0].y+v.y)/2-5):s==="end_left"?(T.x=Math.sin(y)*b+(d[0].x+v.x)/2-5,T.y=-Math.cos(y)*b+(d[0].y+v.y)/2-5):(T.x=Math.sin(y)*b+(d[0].x+v.x)/2,T.y=-Math.cos(y)*b+(d[0].y+v.y)/2),T}function om(i){let s="",u="";for(const d of i)d!==void 0&&(d.startsWith("color:")||d.startsWith("text-align:")?u=u+d+";":s=s+d+";");return{style:s,labelStyle:u}}let pje=0;const bje=()=>(pje++,"id-"+Math.random().toString(36).substr(2,12)+"-"+pje);function _Rt(i){let s="";const u="0123456789abcdef",d=u.length;for(let p=0;p_Rt(i.length),ARt=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:""}},LRt=function(i,s){const u=s.text.replace(ci.lineBreakRegex," "),[,d]=NC(s.fontSize),p=i.append("text");p.attr("x",s.x),p.attr("y",s.y),p.style("text-anchor",s.anchor),p.style("font-family",s.fontFamily),p.style("font-size",d),p.style("font-weight",s.fontWeight),p.attr("fill",s.fill),s.class!==void 0&&p.attr("class",s.class);const v=p.append("tspan");return v.attr("x",s.x+s.textMargin*2),v.attr("fill",s.fill),v.text(u),p},vje=bD((i,s,u)=>{if(!i||(u=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},u),ci.lineBreakRegex.test(i)))return i;const d=i.split(" "),p=[];let v="";return d.forEach((b,y)=>{const T=H4(`${b} `,u),_=H4(v,u);if(T>s){const{hyphenatedStrings:R,remainingWord:F}=MRt(b,s,"-",u);p.push(v,...R),v=F}else _+T>=s?(p.push(v),v=b):v=[v,b].filter(Boolean).join(" ");y+1===d.length&&p.push(v)}),p.filter(b=>b!=="").join(u.joinWith)},(i,s,u)=>`${i}${s}${u.fontSize}${u.fontWeight}${u.fontFamily}${u.joinWith}`),MRt=bD((i,s,u="-",d)=>{d=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},d);const p=[...i],v=[];let b="";return p.forEach((y,T)=>{const _=`${b}${y}`;if(H4(_,d)>=s){const P=T+1,R=p.length===P,F=`${_}${u}`;v.push(R?_:F),b=""}else b=_}),{hyphenatedStrings:v,remainingWord:b}},(i,s,u="-",d)=>`${i}${s}${u}${d.fontSize}${d.fontWeight}${d.fontFamily}`);function E2e(i,s){return T2e(i,s).height}function H4(i,s){return T2e(i,s).width}const T2e=bD((i,s)=>{const{fontSize:u=12,fontFamily:d="Arial",fontWeight:p=400}=s;if(!i)return{width:0,height:0};const[,v]=NC(u),b=["sans-serif",d],y=i.split(ci.lineBreakRegex),T=[],_=Ir("body");if(!_.remove)return{width:0,height:0,lineHeight:0};const A=_.append("svg");for(const R of b){let F=0;const j={width:0,height:0,lineHeight:0};for(const K of y){const ee=ARt();ee.text=K||hje;const ie=LRt(A,ee).style("font-size",v).style("font-weight",p).style("font-family",R),oe=(ie._groups||ie)[0][0].getBBox();if(oe.width===0&&oe.height===0)throw new Error("svg element not in render tree");j.width=Math.round(Math.max(j.width,oe.width)),F=Math.round(oe.height),j.height+=F,j.lineHeight=Math.round(Math.max(j.lineHeight,F))}T.push(j)}A.remove();const P=isNaN(T[1].height)||isNaN(T[1].width)||isNaN(T[1].lineHeight)||T[0].height>T[1].height&&T[0].width>T[1].width&&T[0].lineHeight>T[1].lineHeight?0:1;return T[P]},(i,s)=>`${i}${s.fontSize}${s.fontWeight}${s.fontFamily}`);class DRt{constructor(s=!1,u){this.count=0,this.count=u?u.length:0,this.next=s?()=>this.count++:()=>Date.now()}}let $X;const IRt=function(i){return $X=$X||document.createElement("div"),i=escape(i).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),$X.innerHTML=i,unescape($X.textContent)};function wje(i){return"str"in i}const ORt=(i,s,u,d)=>{var v;if(!d)return;const p=(v=i.node())==null?void 0:v.getBBox();p&&i.append("text").text(d).attr("x",p.x+p.width/2).attr("y",-u).attr("class",s)},NC=i=>{if(typeof i=="number")return[i,i+"px"];const s=parseInt(i??"",10);return Number.isNaN(s)?[void 0,void 0]:i===String(s)?[s,i+"px"]:[s,i]};function JF(i,s){return jX({},i,s)}const Ao={assignWithDepth:id,wrapLabel:vje,calculateTextHeight:E2e,calculateTextWidth:H4,calculateTextDimensions:T2e,cleanAndMerge:JF,detectInit:vRt,detectDirective:fje,isSubstringInArray:yRt,interpolateToCurve:Ov,calcLabelPosition:TRt,calcCardinalityPosition:CRt,calcTerminalLabelPosition:SRt,formatUrl:xRt,getStylesFromArray:om,generateId:bje,random:mje,runFunc:kRt,entityDecode:IRt,insertTitle:ORt,parseFontSize:NC,InitIDGenerator:DRt},NRt=function(i){let s=i;return s=s.replace(/style.*:\S*#.*;/g,function(u){return u.substring(0,u.length-1)}),s=s.replace(/classDef.*:\S*#.*;/g,function(u){return u.substring(0,u.length-1)}),s=s.replace(/#\w+;/g,function(u){const d=u.substring(1,u.length-1);return/^\+?\d+$/.test(d)?"fl°°"+d+"¶ß":"fl°"+d+"¶ß"}),s},ZF=function(i){return i.replace(/fl°°/g,"").replace(/fl°/g,"&").replace(/¶ß/g,";")};var yje="comm",xje="rule",kje="decl",PRt="@import",BRt="@keyframes",FRt="@layer",Eje=Math.abs,C2e=String.fromCharCode;function Tje(i){return i.trim()}function zX(i,s,u){return i.replace(s,u)}function RRt(i,s,u){return i.indexOf(s,u)}function eR(i,s){return i.charCodeAt(s)|0}function tR(i,s,u){return i.slice(s,u)}function _7(i){return i.length}function jRt(i){return i.length}function qX(i,s){return s.push(i),i}var HX=1,xD=1,Cje=0,Nv=0,I0=0,kD="";function S2e(i,s,u,d,p,v,b,y){return{value:i,root:s,parent:u,type:d,props:p,children:v,line:HX,column:xD,length:b,return:"",siblings:y}}function $Rt(){return I0}function zRt(){return I0=Nv>0?eR(kD,--Nv):0,xD--,I0===10&&(xD=1,HX--),I0}function B3(){return I0=Nv2||_2e(I0)>3?"":" "}function URt(i,s){for(;--s&&B3()&&!(I0<48||I0>102||I0>57&&I0<65||I0>70&&I0<97););return UX(i,VX()+(s<6&&PC()==32&&B3()==32))}function L2e(i){for(;B3();)switch(I0){case i:return Nv;case 34:case 39:i!==34&&i!==39&&L2e(I0);break;case 40:i===41&&L2e(i);break;case 92:B3();break}return Nv}function GRt(i,s){for(;B3()&&i+I0!==47+10;)if(i+I0===42+42&&PC()===47)break;return"/*"+UX(s,Nv-1)+"*"+C2e(i===47?i:B3())}function KRt(i){for(;!_2e(PC());)B3();return UX(i,Nv)}function WRt(i){return HRt(GX("",null,null,null,[""],i=qRt(i),0,[0],i))}function GX(i,s,u,d,p,v,b,y,T){for(var _=0,A=0,P=b,R=0,F=0,j=0,K=1,ee=1,ie=1,oe=0,pe="",be=p,ae=v,ne=d,se=pe;ee;)switch(j=oe,oe=B3()){case 40:if(j!=108&&eR(se,P-1)==58){RRt(se+=zX(A2e(oe),"&","&\f"),"&\f",Eje(_?y[_-1]:0))!=-1&&(ie=-1);break}case 34:case 39:case 91:se+=A2e(oe);break;case 9:case 10:case 13:case 32:se+=VRt(j);break;case 92:se+=URt(VX()-1,7);continue;case 47:switch(PC()){case 42:case 47:qX(YRt(GRt(B3(),VX()),s,u,T),T);break;default:se+="/"}break;case 123*K:y[_++]=_7(se)*ie;case 125*K:case 59:case 0:switch(oe){case 0:case 125:ee=0;case 59+A:ie==-1&&(se=zX(se,/\f/g,"")),F>0&&_7(se)-P&&qX(F>32?_je(se+";",d,u,P-1,T):_je(zX(se," ","")+";",d,u,P-2,T),T);break;case 59:se+=";";default:if(qX(ne=Sje(se,s,u,_,A,p,y,pe,be=[],ae=[],P,v),v),oe===123)if(A===0)GX(se,s,ne,ne,be,v,P,y,ae);else switch(R===99&&eR(se,3)===110?100:R){case 100:case 108:case 109:case 115:GX(i,ne,ne,d&&qX(Sje(i,ne,ne,0,0,p,y,pe,p,be=[],P,ae),ae),p,ae,P,y,d?be:ae);break;default:GX(se,ne,ne,ne,[""],ae,0,y,ae)}}_=A=F=0,K=ie=1,pe=se="",P=b;break;case 58:P=1+_7(se),F=j;default:if(K<1){if(oe==123)--K;else if(oe==125&&K++==0&&zRt()==125)continue}switch(se+=C2e(oe),oe*K){case 38:ie=A>0?1:(se+="\f",-1);break;case 44:y[_++]=(_7(se)-1)*ie,ie=1;break;case 64:PC()===45&&(se+=A2e(B3())),R=PC(),A=P=_7(pe=se+=KRt(VX())),oe++;break;case 45:j===45&&_7(se)==2&&(K=0)}}return v}function Sje(i,s,u,d,p,v,b,y,T,_,A,P){for(var R=p-1,F=p===0?v:[""],j=jRt(F),K=0,ee=0,ie=0;K0?F[oe]+" "+pe:zX(pe,/&\f/g,F[oe])))&&(T[ie++]=be);return S2e(i,s,u,p===0?xje:y,T,_,A,P)}function YRt(i,s,u,d){return S2e(i,s,u,yje,C2e($Rt()),tR(i,2,-2),0,d)}function _je(i,s,u,d,p){return S2e(i,s,u,kje,tR(i,0,d),tR(i,d+1,-1),d,p)}function M2e(i,s){for(var u="",d=0;d{let u=id({},i),d={};for(const p of s)Ije(p),d=id(d,p);if(u=id(u,d),d.theme&&d.theme in E7){const p=id({},Lje),v=id(p.themeVariables||{},d.themeVariables);u.theme&&u.theme in E7&&(u.themeVariables=E7[u.theme].getThemeVariables(v))}return nR=u,Nje(nR),nR},QRt=i=>(B2=id({},ED),B2=id(B2,i),i.theme&&E7[i.theme]&&(B2.themeVariables=E7[i.theme].getThemeVariables(i.themeVariables)),KX(B2,TD),B2),JRt=i=>{Lje=id({},i)},ZRt=i=>(B2=id(B2,i),KX(B2,TD),B2),Mje=()=>id({},B2),Dje=i=>(Nje(i),id(nR,i),Vh()),Vh=()=>id({},nR),Ije=i=>{i&&(["secure",...B2.secure??[]].forEach(s=>{Object.hasOwn(i,s)&&(Xe.debug(`Denied attempt to modify a secure key ${s}`,i[s]),delete i[s])}),Object.keys(i).forEach(s=>{s.startsWith("__")&&delete i[s]}),Object.keys(i).forEach(s=>{typeof i[s]=="string"&&(i[s].includes("<")||i[s].includes(">")||i[s].includes("url(data:"))&&delete i[s],typeof i[s]=="object"&&Ije(i[s])}))},ejt=i=>{SX(i),i.fontFamily&&(!i.themeVariables||!i.themeVariables.fontFamily)&&(i.themeVariables={fontFamily:i.fontFamily}),TD.push(i),KX(B2,TD)},WX=(i=B2)=>{TD=[],KX(i,TD)},tjt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},Oje={},njt=i=>{Oje[i]||(Xe.warn(tjt[i]),Oje[i]=!0)},Nje=i=>{i&&(i.lazyLoadedDiagrams||i.loadExternalDiagramsAtStartup)&&njt("LAZY_LOAD_DEPRECATED")},Pje="c4",rjt={id:Pje,detector:i=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>wUt);return{id:Pje,diagram:i}}},Bje="flowchart",ijt={id:Bje,detector:(i,s)=>{var u,d;return((u=s==null?void 0:s.flowchart)==null?void 0:u.defaultRenderer)==="dagre-wrapper"||((d=s==null?void 0:s.flowchart)==null?void 0:d.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>_en);return{id:Bje,diagram:i}}},Fje="flowchart-v2",sjt={id:Fje,detector:(i,s)=>{var u,d,p;return((u=s==null?void 0:s.flowchart)==null?void 0:u.defaultRenderer)==="dagre-d3"||((d=s==null?void 0:s.flowchart)==null?void 0:d.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)&&((p=s==null?void 0:s.flowchart)==null?void 0:p.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Aen);return{id:Fje,diagram:i}}},Rje="er",ajt={id:Rje,detector:i=>/^\s*erDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>etn);return{id:Rje,diagram:i}}},jje="gitGraph",ojt={id:jje,detector:i=>/^\s*gitGraph/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Stn);return{id:jje,diagram:i}}},$je="gantt",cjt={id:$je,detector:i=>/^\s*gantt/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>pnn);return{id:$je,diagram:i}}},zje="info",ujt={id:zje,detector:i=>/^\s*info/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>mnn);return{id:zje,diagram:i}}},qje="pie",ljt={id:qje,detector:i=>/^\s*pie/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Enn);return{id:qje,diagram:i}}},Hje="quadrantChart",hjt={id:Hje,detector:i=>/^\s*quadrantChart/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>jnn);return{id:Hje,diagram:i}}},Vje="xychart",fjt={id:Vje,detector:i=>/^\s*xychart-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>urn);return{id:Vje,diagram:i}}},Uje="requirement",djt={id:Uje,detector:i=>/^\s*requirement(Diagram)?/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>wrn);return{id:Uje,diagram:i}}},Gje="sequence",gjt={id:Gje,detector:i=>/^\s*sequenceDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>kin);return{id:Gje,diagram:i}}},Kje="class",pjt={id:Kje,detector:(i,s)=>{var u;return((u=s==null?void 0:s.class)==null?void 0:u.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Gin);return{id:Kje,diagram:i}}},Wje="classDiagram",bjt={id:Wje,detector:(i,s)=>{var u;return/^\s*classDiagram/.test(i)&&((u=s==null?void 0:s.class)==null?void 0:u.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Jin);return{id:Wje,diagram:i}}},Yje="state",mjt={id:Yje,detector:(i,s)=>{var u;return((u=s==null?void 0:s.state)==null?void 0:u.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>jsn);return{id:Yje,diagram:i}}},Xje="stateDiagram",vjt={id:Xje,detector:(i,s)=>{var u;return!!(/^\s*stateDiagram-v2/.test(i)||/^\s*stateDiagram/.test(i)&&((u=s==null?void 0:s.state)==null?void 0:u.defaultRenderer)==="dagre-wrapper")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>ian);return{id:Xje,diagram:i}}},Qje="journey",wjt={id:Qje,detector:i=>/^\s*journey/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Ean);return{id:Qje,diagram:i}}},yjt=function(i,s){for(let u of s)i.attr(u[0],u[1])},xjt=function(i,s,u){let d=new Map;return u?(d.set("width","100%"),d.set("style",`max-width: ${s}px;`)):(d.set("height",i),d.set("width",s)),d},Ng=function(i,s,u,d){const p=xjt(s,u,d);yjt(i,p)},y9=function(i,s,u,d){const p=s.node().getBBox(),v=p.width,b=p.height;Xe.info(`SVG bounds: ${v}x${b}`,p);let y=0,T=0;Xe.info(`Graph bounds: ${y}x${T}`,i),y=v+u*2,T=b+u*2,Xe.info(`Calculated bounds: ${y}x${T}`),Ng(s,T,y,d);const _=`${p.x-u} ${p.y-u} ${p.width+2*u} ${p.height+2*u}`;s.attr("viewBox",_)},YX={},kjt=(i,s,u)=>{let d="";return i in YX&&YX[i]?d=YX[i](u):Xe.warn(`No theme found for ${i}`),` & {
+ font-family: ${u.fontFamily};
+ font-size: ${u.fontSize};
+ fill: ${u.textColor}
+ }
+
+ /* Classes common for multiple diagrams */
+
+ & .error-icon {
+ fill: ${u.errorBkgColor};
+ }
+ & .error-text {
+ fill: ${u.errorTextColor};
+ stroke: ${u.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: ${u.lineColor};
+ stroke: ${u.lineColor};
+ }
+ & .marker.cross {
+ stroke: ${u.lineColor};
+ }
+
+ & svg {
+ font-family: ${u.fontFamily};
+ font-size: ${u.fontSize};
+ }
+
+ ${d}
+
+ ${s}
+`},Ejt=(i,s)=>{s!==void 0&&(YX[i]=s)},Tjt=kjt;let D2e="",I2e="",O2e="";const N2e=i=>Yf(i,Vh()),Pg=()=>{D2e="",O2e="",I2e=""},Bg=i=>{D2e=N2e(i).replace(/^\s+/g,"")},Cp=()=>D2e,Sp=i=>{O2e=N2e(i).replace(/\n\s+/g,`
+`)},_p=()=>O2e,cm=i=>{I2e=N2e(i)},Ap=()=>I2e,Jje=Object.freeze(Object.defineProperty({__proto__:null,clear:Pg,getAccDescription:_p,getAccTitle:Cp,getDiagramTitle:Ap,setAccDescription:Sp,setAccTitle:Bg,setDiagramTitle:cm},Symbol.toStringTag,{value:"Module"})),Cjt=Xe,Sjt=fpe,qt=Vh,_jt=Dje,Zje=ED,Ajt=i=>Yf(i,qt()),e$e=y9,Ljt=()=>Jje,XX={},QX=(i,s,u)=>{var d;if(XX[i])throw new Error(`Diagram ${i} already registered.`);XX[i]=s,u&&PRe(i,u),Ejt(i,s.styles),(d=s.injectUtils)==null||d.call(s,Cjt,Sjt,qt,Ajt,e$e,Ljt(),()=>{})},P2e=i=>{if(i in XX)return XX[i];throw new Mjt(i)};class Mjt extends Error{constructor(s){super(`Diagram ${s} not found.`)}}const rR=i=>{var p;const{securityLevel:s}=qt();let u=Ir("body");if(s==="sandbox"){const b=((p=Ir(`#i${i}`).node())==null?void 0:p.contentDocument)??document;u=Ir(b.body)}return u.select(`#${i}`)},t$e={draw:(i,s,u)=>{Xe.debug(`rendering svg for syntax error
+`);const d=rR(s),p=d.append("g");d.attr("viewBox","0 0 2412 512"),Ng(d,100,512,!0),p.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"),p.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"),p.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"),p.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"),p.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"),p.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"),p.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"),p.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${u}`)}},Djt=t$e,Ijt={db:{},renderer:t$e,parser:{parser:{yy:{}},parse:()=>{}}},n$e="flowchart-elk",Ojt={id:n$e,detector:(i,s)=>{var u;return!!(/^\s*flowchart-elk/.test(i)||/^\s*flowchart|graph/.test(i)&&((u=s==null?void 0:s.flowchart)==null?void 0:u.defaultRenderer)==="elk")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>jan);return{id:n$e,diagram:i}}},r$e="timeline",Njt={id:r$e,detector:i=>/^\s*timeline/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>ion);return{id:r$e,diagram:i}}},i$e="mindmap",Pjt={id:i$e,detector:i=>/^\s*mindmap/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Ion);return{id:i$e,diagram:i}}},s$e="sankey",Bjt={id:s$e,detector:i=>/^\s*sankey-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>ccn);return{id:s$e,diagram:i}}},a$e="block",Fjt={id:a$e,detector:i=>/^\s*block-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Mcn);return{id:a$e,diagram:i}}};let o$e=!1;const B2e=()=>{o$e||(o$e=!0,QX("error",Ijt,i=>i.toLowerCase().trim()==="error"),QX("---",{db:{clear:()=>{}},styles:{},renderer:{draw:()=>{}},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},i=>i.toLowerCase().trimStart().startsWith("---")),NRe(rjt,bjt,pjt,ajt,cjt,ujt,ljt,djt,gjt,Ojt,sjt,ijt,Pjt,Njt,ojt,vjt,mjt,wjt,hjt,Bjt,fjt,Fjt))};class c$e{constructor(s,u={}){this.text=s,this.metadata=u,this.type="graph",this.text=NRt(s),this.text+=`
+`;const d=Vh();try{this.type=_X(s,d)}catch(v){this.type="error",this.detectError=v}const p=P2e(this.type);Xe.debug("Type "+this.type),this.db=p.db,this.renderer=p.renderer,this.parser=p.parser,this.parser.parser.yy=this.db,this.init=p.init,this.parse()}parse(){var u,d,p,v,b;if(this.detectError)throw this.detectError;(d=(u=this.db).clear)==null||d.call(u);const s=Vh();(p=this.init)==null||p.call(this,s),this.metadata.title&&((b=(v=this.db).setDiagramTitle)==null||b.call(v,this.metadata.title)),this.parser.parse(this.text)}async render(s,u){await this.renderer.draw(this.text,s,u,this)}getParser(){return this.parser}getType(){return this.type}}const Rjt=async(i,s={})=>{const u=_X(i,Vh());try{P2e(u)}catch{const p=$Pt(u);if(!p)throw new ORe(`Diagram ${u} not found.`);const{id:v,diagram:b}=await p();QX(v,b)}return new c$e(i,s)};let u$e=[];const jjt=()=>{u$e.forEach(i=>{i()}),u$e=[]};var $jt=WRe(Object.keys,Object);const zjt=$jt;var qjt=Object.prototype,Hjt=qjt.hasOwnProperty;function l$e(i){if(!OX(i))return zjt(i);var s=[];for(var u in Object(i))Hjt.call(i,u)&&u!="constructor"&&s.push(u);return s}var Vjt=MC(N3,"DataView");const F2e=Vjt;var Ujt=MC(N3,"Promise");const R2e=Ujt;var Gjt=MC(N3,"Set");const CD=Gjt;var Kjt=MC(N3,"WeakMap");const j2e=Kjt;var h$e="[object Map]",Wjt="[object Object]",f$e="[object Promise]",d$e="[object Set]",g$e="[object WeakMap]",p$e="[object DataView]",Yjt=LC(F2e),Xjt=LC(WF),Qjt=LC(R2e),Jjt=LC(CD),Zjt=LC(j2e),BC=AC;(F2e&&BC(new F2e(new ArrayBuffer(1)))!=p$e||WF&&BC(new WF)!=h$e||R2e&&BC(R2e.resolve())!=f$e||CD&&BC(new CD)!=d$e||j2e&&BC(new j2e)!=g$e)&&(BC=function(i){var s=AC(i),u=s==Wjt?i.constructor:void 0,d=u?LC(u):"";if(d)switch(d){case Yjt:return p$e;case Xjt:return h$e;case Qjt:return f$e;case Jjt:return d$e;case Zjt:return g$e}return s});const SD=BC;var e$t="[object Map]",t$t="[object Set]",n$t=Object.prototype,r$t=n$t.hasOwnProperty;function iR(i){if(i==null)return!0;if(w9(i)&&(D0(i)||typeof i=="string"||typeof i.splice=="function"||vD(i)||PX(i)||mD(i)))return!i.length;var s=SD(i);if(s==e$t||s==t$t)return!i.size;if(OX(i))return!l$e(i).length;for(var u in i)if(r$t.call(i,u))return!1;return!0}const i$t="graphics-document document";function s$t(i,s){i.attr("role",i$t),s!==""&&i.attr("aria-roledescription",s)}function a$t(i,s,u,d){if(i.insert!==void 0){if(u){const p=`chart-desc-${d}`;i.attr("aria-describedby",p),i.insert("desc",":first-child").attr("id",p).text(u)}if(s){const p=`chart-title-${d}`;i.attr("aria-labelledby",p),i.insert("title",":first-child").attr("id",p).text(s)}}}const o$t=i=>i.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart();/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function b$e(i){return typeof i>"u"||i===null}function c$t(i){return typeof i=="object"&&i!==null}function u$t(i){return Array.isArray(i)?i:b$e(i)?[]:[i]}function l$t(i,s){var u,d,p,v;if(s)for(v=Object.keys(s),u=0,d=v.length;uy&&(v=" ... ",s=d-y+v.length),u-d>y&&(b=" ...",u=d+y-b.length),{str:v+i.slice(s,u).replace(/\t/g,"→")+b,pos:d-s+v.length}}function z2e(i,s){return Lp.repeat(" ",s-i.length)+i}function w$t(i,s){if(s=Object.create(s||null),!i.buffer)return null;s.maxLength||(s.maxLength=79),typeof s.indent!="number"&&(s.indent=1),typeof s.linesBefore!="number"&&(s.linesBefore=3),typeof s.linesAfter!="number"&&(s.linesAfter=2);for(var u=/\r?\n|\r|\0/g,d=[0],p=[],v,b=-1;v=u.exec(i.buffer);)p.push(v.index),d.push(v.index+v[0].length),i.position<=v.index&&b<0&&(b=d.length-2);b<0&&(b=d.length-1);var y="",T,_,A=Math.min(i.line+s.linesAfter,p.length).toString().length,P=s.maxLength-(s.indent+A+3);for(T=1;T<=s.linesBefore&&!(b-T<0);T++)_=$2e(i.buffer,d[b-T],p[b-T],i.position-(d[b]-d[b-T]),P),y=Lp.repeat(" ",s.indent)+z2e((i.line-T+1).toString(),A)+" | "+_.str+`
+`+y;for(_=$2e(i.buffer,d[b],p[b],i.position,P),y+=Lp.repeat(" ",s.indent)+z2e((i.line+1).toString(),A)+" | "+_.str+`
+`,y+=Lp.repeat("-",s.indent+A+3+_.pos)+`^
+`,T=1;T<=s.linesAfter&&!(b+T>=p.length);T++)_=$2e(i.buffer,d[b+T],p[b+T],i.position-(d[b]-d[b+T]),P),y+=Lp.repeat(" ",s.indent)+z2e((i.line+T+1).toString(),A)+" | "+_.str+`
+`;return y.replace(/\n$/,"")}var y$t=w$t,x$t=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],k$t=["scalar","sequence","mapping"];function E$t(i){var s={};return i!==null&&Object.keys(i).forEach(function(u){i[u].forEach(function(d){s[String(d)]=u})}),s}function T$t(i,s){if(s=s||{},Object.keys(s).forEach(function(u){if(x$t.indexOf(u)===-1)throw new A7('Unknown option "'+u+'" is met in definition of "'+i+'" YAML type.')}),this.options=s,this.tag=i,this.kind=s.kind||null,this.resolve=s.resolve||function(){return!0},this.construct=s.construct||function(u){return u},this.instanceOf=s.instanceOf||null,this.predicate=s.predicate||null,this.represent=s.represent||null,this.representName=s.representName||null,this.defaultStyle=s.defaultStyle||null,this.multi=s.multi||!1,this.styleAliases=E$t(s.styleAliases||null),k$t.indexOf(this.kind)===-1)throw new A7('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}var Fg=T$t;function v$e(i,s){var u=[];return i[s].forEach(function(d){var p=u.length;u.forEach(function(v,b){v.tag===d.tag&&v.kind===d.kind&&v.multi===d.multi&&(p=b)}),u[p]=d}),u}function C$t(){var i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},s,u;function d(p){p.multi?(i.multi[p.kind].push(p),i.multi.fallback.push(p)):i[p.kind][p.tag]=i.fallback[p.tag]=p}for(s=0,u=arguments.length;s=0?"0b"+i.toString(2):"-0b"+i.toString(2).slice(1)},octal:function(i){return i>=0?"0o"+i.toString(8):"-0o"+i.toString(8).slice(1)},decimal:function(i){return i.toString(10)},hexadecimal:function(i){return i>=0?"0x"+i.toString(16).toUpperCase():"-0x"+i.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),G$t=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function K$t(i){return!(i===null||!G$t.test(i)||i[i.length-1]==="_")}function W$t(i){var s,u;return s=i.replace(/_/g,"").toLowerCase(),u=s[0]==="-"?-1:1,"+-".indexOf(s[0])>=0&&(s=s.slice(1)),s===".inf"?u===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:s===".nan"?NaN:u*parseFloat(s,10)}var Y$t=/^[-+]?[0-9]+e/;function X$t(i,s){var u;if(isNaN(i))switch(s){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===i)switch(s){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===i)switch(s){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Lp.isNegativeZero(i))return"-0.0";return u=i.toString(10),Y$t.test(u)?u.replace("e",".e"):u}function Q$t(i){return Object.prototype.toString.call(i)==="[object Number]"&&(i%1!==0||Lp.isNegativeZero(i))}var J$t=new Fg("tag:yaml.org,2002:float",{kind:"scalar",resolve:K$t,construct:W$t,predicate:Q$t,represent:X$t,defaultStyle:"lowercase"}),w$e=M$t.extend({implicit:[N$t,R$t,U$t,J$t]}),Z$t=w$e,y$e=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),x$e=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 ezt(i){return i===null?!1:y$e.exec(i)!==null||x$e.exec(i)!==null}function tzt(i){var s,u,d,p,v,b,y,T=0,_=null,A,P,R;if(s=y$e.exec(i),s===null&&(s=x$e.exec(i)),s===null)throw new Error("Date resolve error");if(u=+s[1],d=+s[2]-1,p=+s[3],!s[4])return new Date(Date.UTC(u,d,p));if(v=+s[4],b=+s[5],y=+s[6],s[7]){for(T=s[7].slice(0,3);T.length<3;)T+="0";T=+T}return s[9]&&(A=+s[10],P=+(s[11]||0),_=(A*60+P)*6e4,s[9]==="-"&&(_=-_)),R=new Date(Date.UTC(u,d,p,v,b,y,T)),_&&R.setTime(R.getTime()-_),R}function nzt(i){return i.toISOString()}var rzt=new Fg("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:ezt,construct:tzt,instanceOf:Date,represent:nzt});function izt(i){return i==="<<"||i===null}var szt=new Fg("tag:yaml.org,2002:merge",{kind:"scalar",resolve:izt}),H2e=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
+\r`;function azt(i){if(i===null)return!1;var s,u,d=0,p=i.length,v=H2e;for(u=0;u64)){if(s<0)return!1;d+=6}return d%8===0}function ozt(i){var s,u,d=i.replace(/[\r\n=]/g,""),p=d.length,v=H2e,b=0,y=[];for(s=0;s
>16&255),y.push(b>>8&255),y.push(b&255)),b=b<<6|v.indexOf(d.charAt(s));return u=p%4*6,u===0?(y.push(b>>16&255),y.push(b>>8&255),y.push(b&255)):u===18?(y.push(b>>10&255),y.push(b>>2&255)):u===12&&y.push(b>>4&255),new Uint8Array(y)}function czt(i){var s="",u=0,d,p,v=i.length,b=H2e;for(d=0;d>18&63],s+=b[u>>12&63],s+=b[u>>6&63],s+=b[u&63]),u=(u<<8)+i[d];return p=v%3,p===0?(s+=b[u>>18&63],s+=b[u>>12&63],s+=b[u>>6&63],s+=b[u&63]):p===2?(s+=b[u>>10&63],s+=b[u>>4&63],s+=b[u<<2&63],s+=b[64]):p===1&&(s+=b[u>>2&63],s+=b[u<<4&63],s+=b[64],s+=b[64]),s}function uzt(i){return Object.prototype.toString.call(i)==="[object Uint8Array]"}var lzt=new Fg("tag:yaml.org,2002:binary",{kind:"scalar",resolve:azt,construct:ozt,predicate:uzt,represent:czt}),hzt=Object.prototype.hasOwnProperty,fzt=Object.prototype.toString;function dzt(i){if(i===null)return!0;var s=[],u,d,p,v,b,y=i;for(u=0,d=y.length;u>10)+55296,(i-65536&1023)+56320)}for(var L$e=new Array(256),M$e=new Array(256),AD=0;AD<256;AD++)L$e[AD]=A$e(AD)?1:0,M$e[AD]=A$e(AD);function Ozt(i,s){this.input=i,this.filename=s.filename||null,this.schema=s.schema||Tzt,this.onWarning=s.onWarning||null,this.legacy=s.legacy||!1,this.json=s.json||!1,this.listener=s.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=i.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function D$e(i,s){var u={name:i.filename,buffer:i.input.slice(0,-1),position:i.position,line:i.line,column:i.position-i.lineStart};return u.snippet=y$t(u),new A7(s,u)}function oa(i,s){throw D$e(i,s)}function eQ(i,s){i.onWarning&&i.onWarning.call(null,D$e(i,s))}var I$e={YAML:function(s,u,d){var p,v,b;s.version!==null&&oa(s,"duplication of %YAML directive"),d.length!==1&&oa(s,"YAML directive accepts exactly one argument"),p=/^([0-9]+)\.([0-9]+)$/.exec(d[0]),p===null&&oa(s,"ill-formed argument of the YAML directive"),v=parseInt(p[1],10),b=parseInt(p[2],10),v!==1&&oa(s,"unacceptable YAML version of the document"),s.version=d[0],s.checkLineBreaks=b<2,b!==1&&b!==2&&eQ(s,"unsupported YAML version of the document")},TAG:function(s,u,d){var p,v;d.length!==2&&oa(s,"TAG directive accepts exactly two arguments"),p=d[0],v=d[1],C$e.test(p)||oa(s,"ill-formed tag handle (first argument) of the TAG directive"),x9.call(s.tagMap,p)&&oa(s,'there is a previously declared suffix for "'+p+'" tag handle'),S$e.test(v)||oa(s,"ill-formed tag prefix (second argument) of the TAG directive");try{v=decodeURIComponent(v)}catch{oa(s,"tag prefix is malformed: "+v)}s.tagMap[p]=v}};function k9(i,s,u,d){var p,v,b,y;if(s1&&(i.result+=Lp.repeat(`
+`,s-1))}function Nzt(i,s,u){var d,p,v,b,y,T,_,A,P=i.kind,R=i.result,F;if(F=i.input.charCodeAt(i.position),F2(F)||_D(F)||F===35||F===38||F===42||F===33||F===124||F===62||F===39||F===34||F===37||F===64||F===96||(F===63||F===45)&&(p=i.input.charCodeAt(i.position+1),F2(p)||u&&_D(p)))return!1;for(i.kind="scalar",i.result="",v=b=i.position,y=!1;F!==0;){if(F===58){if(p=i.input.charCodeAt(i.position+1),F2(p)||u&&_D(p))break}else if(F===35){if(d=i.input.charCodeAt(i.position-1),F2(d))break}else{if(i.position===i.lineStart&&tQ(i)||u&&_D(F))break;if(V4(F))if(T=i.line,_=i.lineStart,A=i.lineIndent,O0(i,!1,-1),i.lineIndent>=s){y=!0,F=i.input.charCodeAt(i.position);continue}else{i.position=b,i.line=T,i.lineStart=_,i.lineIndent=A;break}}y&&(k9(i,v,b,!1),G2e(i,i.line-T),v=b=i.position,y=!1),FC(F)||(b=i.position+1),F=i.input.charCodeAt(++i.position)}return k9(i,v,b,!1),i.result?!0:(i.kind=P,i.result=R,!1)}function Pzt(i,s){var u,d,p;if(u=i.input.charCodeAt(i.position),u!==39)return!1;for(i.kind="scalar",i.result="",i.position++,d=p=i.position;(u=i.input.charCodeAt(i.position))!==0;)if(u===39)if(k9(i,d,i.position,!0),u=i.input.charCodeAt(++i.position),u===39)d=i.position,i.position++,p=i.position;else return!0;else V4(u)?(k9(i,d,p,!0),G2e(i,O0(i,!1,s)),d=p=i.position):i.position===i.lineStart&&tQ(i)?oa(i,"unexpected end of the document within a single quoted scalar"):(i.position++,p=i.position);oa(i,"unexpected end of the stream within a single quoted scalar")}function Bzt(i,s){var u,d,p,v,b,y;if(y=i.input.charCodeAt(i.position),y!==34)return!1;for(i.kind="scalar",i.result="",i.position++,u=d=i.position;(y=i.input.charCodeAt(i.position))!==0;){if(y===34)return k9(i,u,i.position,!0),i.position++,!0;if(y===92){if(k9(i,u,i.position,!0),y=i.input.charCodeAt(++i.position),V4(y))O0(i,!1,s);else if(y<256&&L$e[y])i.result+=M$e[y],i.position++;else if((b=Mzt(y))>0){for(p=b,v=0;p>0;p--)y=i.input.charCodeAt(++i.position),(b=Lzt(y))>=0?v=(v<<4)+b:oa(i,"expected hexadecimal character");i.result+=Izt(v),i.position++}else oa(i,"unknown escape sequence");u=d=i.position}else V4(y)?(k9(i,u,d,!0),G2e(i,O0(i,!1,s)),u=d=i.position):i.position===i.lineStart&&tQ(i)?oa(i,"unexpected end of the document within a double quoted scalar"):(i.position++,d=i.position)}oa(i,"unexpected end of the stream within a double quoted scalar")}function Fzt(i,s){var u=!0,d,p,v,b=i.tag,y,T=i.anchor,_,A,P,R,F,j=Object.create(null),K,ee,ie,oe;if(oe=i.input.charCodeAt(i.position),oe===91)A=93,F=!1,y=[];else if(oe===123)A=125,F=!0,y={};else return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=y),oe=i.input.charCodeAt(++i.position);oe!==0;){if(O0(i,!0,s),oe=i.input.charCodeAt(i.position),oe===A)return i.position++,i.tag=b,i.anchor=T,i.kind=F?"mapping":"sequence",i.result=y,!0;u?oe===44&&oa(i,"expected the node content, but found ','"):oa(i,"missed comma between flow collection entries"),ee=K=ie=null,P=R=!1,oe===63&&(_=i.input.charCodeAt(i.position+1),F2(_)&&(P=R=!0,i.position++,O0(i,!0,s))),d=i.line,p=i.lineStart,v=i.position,MD(i,s,JX,!1,!0),ee=i.tag,K=i.result,O0(i,!0,s),oe=i.input.charCodeAt(i.position),(R||i.line===d)&&oe===58&&(P=!0,oe=i.input.charCodeAt(++i.position),O0(i,!0,s),MD(i,s,JX,!1,!0),ie=i.result),F?LD(i,y,j,ee,K,ie,d,p,v):P?y.push(LD(i,null,j,ee,K,ie,d,p,v)):y.push(K),O0(i,!0,s),oe=i.input.charCodeAt(i.position),oe===44?(u=!0,oe=i.input.charCodeAt(++i.position)):u=!1}oa(i,"unexpected end of the stream within a flow collection")}function Rzt(i,s){var u,d,p=V2e,v=!1,b=!1,y=s,T=0,_=!1,A,P;if(P=i.input.charCodeAt(i.position),P===124)d=!1;else if(P===62)d=!0;else return!1;for(i.kind="scalar",i.result="";P!==0;)if(P=i.input.charCodeAt(++i.position),P===43||P===45)V2e===p?p=P===43?T$e:Czt:oa(i,"repeat of a chomping mode identifier");else if((A=Dzt(P))>=0)A===0?oa(i,"bad explicit indentation width of a block scalar; it cannot be less than one"):b?oa(i,"repeat of an indentation width identifier"):(y=s+A-1,b=!0);else break;if(FC(P)){do P=i.input.charCodeAt(++i.position);while(FC(P));if(P===35)do P=i.input.charCodeAt(++i.position);while(!V4(P)&&P!==0)}for(;P!==0;){for(U2e(i),i.lineIndent=0,P=i.input.charCodeAt(i.position);(!b||i.lineIndenty&&(y=i.lineIndent),V4(P)){T++;continue}if(i.lineIndents)&&T!==0)oa(i,"bad indentation of a sequence entry");else if(i.lineIndents)&&(ee&&(b=i.line,y=i.lineStart,T=i.position),MD(i,s,ZX,!0,p)&&(ee?j=i.result:K=i.result),ee||(LD(i,P,R,F,j,K,b,y,T),F=j=K=null),O0(i,!0,-1),oe=i.input.charCodeAt(i.position)),(i.line===v||i.lineIndent>s)&&oe!==0)oa(i,"bad indentation of a mapping entry");else if(i.lineIndents?T=1:i.lineIndent===s?T=0:i.lineIndents?T=1:i.lineIndent===s?T=0:i.lineIndent tag; it should be "scalar", not "'+i.kind+'"'),P=0,R=i.implicitTypes.length;P"),i.result!==null&&j.kind!==i.kind&&oa(i,"unacceptable node kind for !<"+i.tag+'> tag; it should be "'+j.kind+'", not "'+i.kind+'"'),j.resolve(i.result,i.tag)?(i.result=j.construct(i.result,i.tag),i.anchor!==null&&(i.anchorMap[i.anchor]=i.result)):oa(i,"cannot resolve a node with !<"+i.tag+"> explicit tag")}return i.listener!==null&&i.listener("close",i),i.tag!==null||i.anchor!==null||A}function Hzt(i){var s=i.position,u,d,p,v=!1,b;for(i.version=null,i.checkLineBreaks=i.legacy,i.tagMap=Object.create(null),i.anchorMap=Object.create(null);(b=i.input.charCodeAt(i.position))!==0&&(O0(i,!0,-1),b=i.input.charCodeAt(i.position),!(i.lineIndent>0||b!==37));){for(v=!0,b=i.input.charCodeAt(++i.position),u=i.position;b!==0&&!F2(b);)b=i.input.charCodeAt(++i.position);for(d=i.input.slice(u,i.position),p=[],d.length<1&&oa(i,"directive name must not be less than one character in length");b!==0;){for(;FC(b);)b=i.input.charCodeAt(++i.position);if(b===35){do b=i.input.charCodeAt(++i.position);while(b!==0&&!V4(b));break}if(V4(b))break;for(u=i.position;b!==0&&!F2(b);)b=i.input.charCodeAt(++i.position);p.push(i.input.slice(u,i.position))}b!==0&&U2e(i),x9.call(I$e,d)?I$e[d](i,d,p):eQ(i,'unknown document directive "'+d+'"')}if(O0(i,!0,-1),i.lineIndent===0&&i.input.charCodeAt(i.position)===45&&i.input.charCodeAt(i.position+1)===45&&i.input.charCodeAt(i.position+2)===45?(i.position+=3,O0(i,!0,-1)):v&&oa(i,"directives end mark is expected"),MD(i,i.lineIndent-1,ZX,!1,!0),O0(i,!0,-1),i.checkLineBreaks&&_zt.test(i.input.slice(s,i.position))&&eQ(i,"non-ASCII line breaks are interpreted as content"),i.documents.push(i.result),i.position===i.lineStart&&tQ(i)){i.input.charCodeAt(i.position)===46&&(i.position+=3,O0(i,!0,-1));return}if(i.position"u"&&(u=s,s=null);var d=P$e(i,u);if(typeof s!="function")return d;for(var p=0,v=d.length;pi.replace(/\r\n?/g,`
+`).replace(/<(\w+)([^>]*)>/g,(s,u,d)=>"<"+u+d.replace(/="([^"]*)"/g,"='$1'")+">"),Zzt=i=>{const{text:s,metadata:u}=Qzt(i),{displayMode:d,title:p,config:v={}}=u;return d&&(v.gantt||(v.gantt={}),v.gantt.displayMode=d),{title:p,config:v,text:s}},eqt=i=>{const s=Ao.detectInit(i)??{},u=Ao.detectDirective(i,"wrap");return Array.isArray(u)?s.wrap=u.some(({type:d})=>{}):(u==null?void 0:u.type)==="wrap"&&(s.wrap=!0),{text:wRt(i),directive:s}};function B$e(i){const s=Jzt(i),u=Zzt(s),d=eqt(u.text),p=JF(u.config,d.directive);return i=o$t(d.text),{code:i,title:u.title,config:p}}const tqt=5e4,nqt="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",rqt="sandbox",iqt="loose",sqt="http://www.w3.org/2000/svg",aqt="http://www.w3.org/1999/xlink",oqt="http://www.w3.org/1999/xhtml",cqt="100%",uqt="100%",lqt="border:0;margin:0;",hqt="margin:0",fqt="allow-top-navigation-by-user-activation allow-popups",dqt='The "iframe" tag is not supported by your browser.',gqt=["foreignobject"],pqt=["dominant-baseline"];function F$e(i){const s=B$e(i);return WX(),ejt(s.config??{}),s}async function bqt(i,s){B2e(),i=F$e(i).code;try{await K2e(i)}catch(u){if(s!=null&&s.suppressErrors)return!1;throw u}return!0}const R$e=(i,s,u=[])=>`
+.${i} ${s} { ${u.join(" !important; ")} !important; }`,mqt=(i,s={})=>{var d;let u="";if(i.themeCSS!==void 0&&(u+=`
+${i.themeCSS}`),i.fontFamily!==void 0&&(u+=`
+:root { --mermaid-font-family: ${i.fontFamily}}`),i.altFontFamily!==void 0&&(u+=`
+:root { --mermaid-alt-font-family: ${i.altFontFamily}}`),!iR(s)){const y=i.htmlLabels||((d=i.flowchart)==null?void 0:d.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const T in s){const _=s[T];iR(_.styles)||y.forEach(A=>{u+=R$e(_.id,A,_.styles)}),iR(_.textStyles)||(u+=R$e(_.id,"tspan",_.textStyles))}}return u},vqt=(i,s,u,d)=>{const p=mqt(i,u),v=Tjt(s,p,i.themeVariables);return M2e(WRt(`${d}{${v}}`),XRt)},wqt=(i="",s,u)=>{let d=i;return!u&&!s&&(d=d.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),d=ZF(d),d=d.replace(/
/g,"
"),d},yqt=(i="",s)=>{var p,v;const u=(v=(p=s==null?void 0:s.viewBox)==null?void 0:p.baseVal)!=null&&v.height?s.viewBox.baseVal.height+"px":uqt,d=btoa(''+i+"");return``},j$e=(i,s,u,d,p)=>{const v=i.append("div");v.attr("id",u),d&&v.attr("style",d);const b=v.append("svg").attr("id",s).attr("width","100%").attr("xmlns",sqt);return p&&b.attr("xmlns:xlink",p),b.append("g"),i};function $$e(i,s){return i.append("iframe").attr("id",s).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const xqt=(i,s,u,d)=>{var p,v,b;(p=i.getElementById(s))==null||p.remove(),(v=i.getElementById(u))==null||v.remove(),(b=i.getElementById(d))==null||b.remove()},kqt=async function(i,s,u){var U,Fe,Pe,je,Ie,Se;B2e();const d=F$e(s);s=d.code;const p=Vh();Xe.debug(p),s.length>((p==null?void 0:p.maxTextSize)??tqt)&&(s=nqt);const v="#"+i,b="i"+i,y="#"+b,T="d"+i,_="#"+T;let A=Ir("body");const P=p.securityLevel===rqt,R=p.securityLevel===iqt,F=p.fontFamily;if(u!==void 0){if(u&&(u.innerHTML=""),P){const Ce=$$e(Ir(u),b);A=Ir(Ce.nodes()[0].contentDocument.body),A.node().style.margin=0}else A=Ir(u);j$e(A,i,T,`font-family: ${F}`,aqt)}else{if(xqt(document,i,T,b),P){const Ce=$$e(Ir("body"),b);A=Ir(Ce.nodes()[0].contentDocument.body),A.node().style.margin=0}else A=Ir("body");j$e(A,i,T)}let j,K;try{j=await K2e(s,{title:d.title})}catch(Ce){j=new c$e("error"),K=Ce}const ee=A.select(_).node(),ie=j.type,oe=ee.firstChild,pe=oe.firstChild,be=(Fe=(U=j.renderer).getClasses)==null?void 0:Fe.call(U,s,j),ae=vqt(p,ie,be,v),ne=document.createElement("style");ne.innerHTML=ae,oe.insertBefore(ne,pe);try{await j.renderer.draw(s,i,Aje,j)}catch(Ce){throw Djt.draw(s,i,Aje),Ce}const se=A.select(`${_} svg`),de=(je=(Pe=j.db).getAccTitle)==null?void 0:je.call(Pe),X=(Se=(Ie=j.db).getAccDescription)==null?void 0:Se.call(Ie);Tqt(ie,se,de,X),A.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",oqt);let ge=A.select(_).node().innerHTML;if(Xe.debug("config.arrowMarkerAbsolute",p.arrowMarkerAbsolute),ge=wqt(ge,P,f1(p.arrowMarkerAbsolute)),P){const Ce=A.select(_+" svg").node();ge=yqt(ge,Ce)}else R||(ge=hD.sanitize(ge,{ADD_TAGS:gqt,ADD_ATTR:pqt}));if(jjt(),K)throw K;const xe=Ir(P?y:_).node();return xe&&"remove"in xe&&xe.remove(),{svg:ge,bindFunctions:j.db.bindFunctions}};function Eqt(i={}){var u;i!=null&&i.fontFamily&&!((u=i.themeVariables)!=null&&u.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),JRt(i),i!=null&&i.theme&&i.theme in E7?i.themeVariables=E7[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=E7.default.getThemeVariables(i.themeVariables));const s=typeof i=="object"?QRt(i):Mje();fpe(s.logLevel),B2e()}const K2e=(i,s={})=>{const{code:u}=B$e(i);return Rjt(u,s)};function Tqt(i,s,u,d){s$t(s,i),a$t(s,u,d,s.attr("id"))}const RC=Object.freeze({render:kqt,parse:bqt,getDiagramFromText:K2e,initialize:Eqt,getConfig:Vh,setConfig:Dje,getSiteConfig:Mje,updateSiteConfig:ZRt,reset:()=>{WX()},globalReset:()=>{WX(ED)},defaultConfig:ED});fpe(Vh().logLevel),WX(Vh());const Cqt=async()=>{Xe.debug("Loading registered diagrams");const s=(await Promise.allSettled(Object.entries(dD).map(async([u,{detector:d,loader:p}])=>{if(p)try{P2e(u)}catch{try{const{diagram:b,id:y}=await p();QX(y,b,d)}catch(b){throw Xe.error(`Failed to load external diagram with key ${u}. Removing from detectors.`),delete dD[u],b}}}))).filter(u=>u.status==="rejected");if(s.length>0){Xe.error(`Failed to load ${s.length} external diagrams`);for(const u of s)Xe.error(u);throw new Error(`Failed to load ${s.length} external diagrams`)}},Sqt=(i,s,u)=>{Xe.warn(i),wje(i)?(u&&u(i.str,i.hash),s.push({...i,message:i.str,error:i})):(u&&u(i),i instanceof Error&&s.push({str:i.message,message:i.message,hash:i.name,error:i}))},z$e=async function(i={querySelector:".mermaid"}){try{await _qt(i)}catch(s){if(wje(s)&&Xe.error(s.str),um.parseError&&um.parseError(s),!i.suppressErrors)throw Xe.error("Use the suppressErrors option to suppress these errors"),s}},_qt=async function({postRenderCallback:i,querySelector:s,nodes:u}={querySelector:".mermaid"}){const d=RC.getConfig();Xe.debug(`${i?"":"No "}Callback function found`);let p;if(u)p=u;else if(s)p=document.querySelectorAll(s);else throw new Error("Nodes and querySelector are both undefined");Xe.debug(`Found ${p.length} diagrams`),(d==null?void 0:d.startOnLoad)!==void 0&&(Xe.debug("Start On Load: "+(d==null?void 0:d.startOnLoad)),RC.updateSiteConfig({startOnLoad:d==null?void 0:d.startOnLoad}));const v=new Ao.InitIDGenerator(d.deterministicIds,d.deterministicIDSeed);let b;const y=[];for(const T of Array.from(p)){Xe.info("Rendering diagram: "+T.id);/*! Check if previously processed */if(T.getAttribute("data-processed"))continue;T.setAttribute("data-processed","true");const _=`mermaid-${v.next()}`;b=T.innerHTML,b=JM(Ao.entityDecode(b)).trim().replace(/
/gi,"
");const A=Ao.detectInit(b);A&&Xe.debug("Detected early reinit: ",A);try{const{svg:P,bindFunctions:R}=await U$e(_,b,T);T.innerHTML=P,i&&await i(_),R&&R(T)}catch(P){Sqt(P,y,um.parseError)}}if(y.length>0)throw y[0]},q$e=function(i){RC.initialize(i)},Aqt=async function(i,s,u){Xe.warn("mermaid.init is deprecated. Please use run instead."),i&&q$e(i);const d={postRenderCallback:u,querySelector:".mermaid"};typeof s=="string"?d.querySelector=s:s&&(s instanceof HTMLElement?d.nodes=[s]:d.nodes=s),await z$e(d)},Lqt=async(i,{lazyLoad:s=!0}={})=>{NRe(...i),s===!1&&await Cqt()},H$e=function(){if(um.startOnLoad){const{startOnLoad:i}=RC.getConfig();i&&um.run().catch(s=>Xe.error("Mermaid failed to initialize",s))}};if(typeof document<"u"){/*!
+ * Wait for document loaded before starting the execution
+ */window.addEventListener("load",H$e,!1)}const Mqt=function(i){um.parseError=i},nQ=[];let W2e=!1;const V$e=async()=>{if(!W2e){for(W2e=!0;nQ.length>0;){const i=nQ.shift();if(i)try{await i()}catch(s){Xe.error("Error executing queue",s)}}W2e=!1}},Dqt=async(i,s)=>new Promise((u,d)=>{const p=()=>new Promise((v,b)=>{RC.parse(i,s).then(y=>{v(y),u(y)},y=>{var T;Xe.error("Error parsing",y),(T=um.parseError)==null||T.call(um,y),b(y),d(y)})});nQ.push(p),V$e().catch(d)}),U$e=(i,s,u)=>new Promise((d,p)=>{const v=()=>new Promise((b,y)=>{RC.render(i,s,u).then(T=>{b(T),d(T)},T=>{var _;Xe.error("Error parsing",T),(_=um.parseError)==null||_.call(um,T),y(T),p(T)})});nQ.push(v),V$e().catch(p)}),um={startOnLoad:!0,mermaidAPI:RC,parse:Dqt,render:U$e,init:Aqt,run:z$e,registerExternalDiagrams:Lqt,initialize:q$e,parseError:void 0,contentLoaded:H$e,setParseErrorHandler:Mqt,detectType:_X};class lm{constructor(s,u,d){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=s,this.start=u,this.end=d}static range(s,u){return u?!s||!s.loc||!u.loc||s.loc.lexer!==u.loc.lexer?null:new lm(s.loc.lexer,s.loc.start,u.loc.end):s&&s.loc}}class U4{constructor(s,u){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=s,this.loc=u}range(s,u){return new U4(u,lm.range(this,s))}}class Ci{constructor(s,u){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var d="KaTeX parse error: "+s,p,v,b=u&&u.loc;if(b&&b.start<=b.end){var y=b.lexer.input;p=b.start,v=b.end,p===y.length?d+=" at end of input: ":d+=" at position "+(p+1)+": ";var T=y.slice(p,v).replace(/[^]/g,"$&̲"),_;p>15?_="…"+y.slice(p-15,p):_=y.slice(0,p);var A;v+15":">","<":"<",'"':""","'":"'"},Fqt=/[&><"']/g;function Rqt(i){return String(i).replace(Fqt,s=>Bqt[s])}var G$e=function i(s){return s.type==="ordgroup"||s.type==="color"?s.body.length===1?i(s.body[0]):s:s.type==="font"?i(s.body):s},jqt=function(s){var u=G$e(s);return u.type==="mathord"||u.type==="textord"||u.type==="atom"},$qt=function(s){if(!s)throw new Error("Expected non-null, but got "+String(s));return s},zqt=function(s){var u=/^\s*([^\\/#]*?)(?::|*58|*3a)/i.exec(s);return u!=null?u[1]:"_relative"},Ya={contains:Iqt,deflt:Oqt,escape:Rqt,hyphenate:Pqt,getBaseElem:G$e,isCharacterBox:jqt,protocolFromUrl:zqt},rQ={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:i=>"#"+i},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(i,s)=>(s.push(i),s)},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:i=>Math.max(0,i),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:i=>Math.max(0,i),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:i=>Math.max(0,i),cli:"-e, --max-expand ",cliProcessor:i=>i==="Infinity"?1/0:parseInt(i)},globalGroup:{type:"boolean",cli:!1}};function qqt(i){if(i.default)return i.default;var s=i.type,u=Array.isArray(s)?s[0]:s;if(typeof u!="string")return u.enum[0];switch(u){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}class Y2e{constructor(s){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,s=s||{};for(var u in rQ)if(rQ.hasOwnProperty(u)){var d=rQ[u];this[u]=s[u]!==void 0?d.processor?d.processor(s[u]):s[u]:qqt(d)}}reportNonstrict(s,u,d){var p=this.strict;if(typeof p=="function"&&(p=p(s,u,d)),!(!p||p==="ignore")){if(p===!0||p==="error")throw new Ci("LaTeX-incompatible input and strict mode is set to 'error': "+(u+" ["+s+"]"),d);p==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(u+" ["+s+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+p+"': "+u+" ["+s+"]"))}}useStrictBehavior(s,u,d){var p=this.strict;if(typeof p=="function")try{p=p(s,u,d)}catch{p="error"}return!p||p==="ignore"?!1:p===!0||p==="error"?!0:p==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(u+" ["+s+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+p+"': "+u+" ["+s+"]")),!1)}isTrusted(s){s.url&&!s.protocol&&(s.protocol=Ya.protocolFromUrl(s.url));var u=typeof this.trust=="function"?this.trust(s):this.trust;return!!u}}class E9{constructor(s,u,d){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=s,this.size=u,this.cramped=d}sup(){return G4[Hqt[this.id]]}sub(){return G4[Vqt[this.id]]}fracNum(){return G4[Uqt[this.id]]}fracDen(){return G4[Gqt[this.id]]}cramp(){return G4[Kqt[this.id]]}text(){return G4[Wqt[this.id]]}isTight(){return this.size>=2}}var X2e=0,iQ=1,DD=2,L7=3,aR=4,Pv=5,ID=6,Mp=7,G4=[new E9(X2e,0,!1),new E9(iQ,0,!0),new E9(DD,1,!1),new E9(L7,1,!0),new E9(aR,2,!1),new E9(Pv,2,!0),new E9(ID,3,!1),new E9(Mp,3,!0)],Hqt=[aR,Pv,aR,Pv,ID,Mp,ID,Mp],Vqt=[Pv,Pv,Pv,Pv,Mp,Mp,Mp,Mp],Uqt=[DD,L7,aR,Pv,ID,Mp,ID,Mp],Gqt=[L7,L7,Pv,Pv,Mp,Mp,Mp,Mp],Kqt=[iQ,iQ,L7,L7,Pv,Pv,Mp,Mp],Wqt=[X2e,iQ,DD,L7,DD,L7,DD,L7],Ta={DISPLAY:G4[X2e],TEXT:G4[DD],SCRIPT:G4[aR],SCRIPTSCRIPT:G4[ID]},Q2e=[{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 Yqt(i){for(var s=0;s=p[0]&&i<=p[1])return u.name}return null}var sQ=[];Q2e.forEach(i=>i.blocks.forEach(s=>sQ.push(...s)));function K$e(i){for(var s=0;s=sQ[s]&&i<=sQ[s+1])return!0;return!1}var OD=80,Xqt=function(s,u){return"M95,"+(622+s+u)+`
+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`+s/2.075+" -"+s+`
+c5.3,-9.3,12,-14,20,-14
+H400000v`+(40+s)+`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+s)+" "+u+"h400000v"+(40+s)+"h-400000z"},Qqt=function(s,u){return"M263,"+(601+s+u)+`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`+s/2.084+" -"+s+`
+c4.7,-7.3,11,-11,19,-11
+H40000v`+(40+s)+`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+s)+" "+u+"h400000v"+(40+s)+"h-400000z"},Jqt=function(s,u){return"M983 "+(10+s+u)+`
+l`+s/3.13+" -"+s+`
+c4,-6.7,10,-10,18,-10 H400000v`+(40+s)+`
+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+s)+" "+u+"h400000v"+(40+s)+"h-400000z"},Zqt=function(s,u){return"M424,"+(2398+s+u)+`
+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`+s/4.223+" -"+s+`c4,-6.7,10,-10,18,-10 H400000
+v`+(40+s)+`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+s)+" "+u+`
+h400000v`+(40+s)+"h-400000z"},eHt=function(s,u){return"M473,"+(2713+s+u)+`
+c339.3,-1799.3,509.3,-2700,510,-2702 l`+s/5.298+" -"+s+`
+c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+s)+`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+s)+" "+u+"h400000v"+(40+s)+"H1017.7z"},tHt=function(s){var u=s/2;return"M400000 "+s+" H0 L"+u+" 0 l65 45 L145 "+(s-80)+" H400000z"},nHt=function(s,u,d){var p=d-54-u-s;return"M702 "+(s+u)+"H400000"+(40+s)+`
+H742v`+p+`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 `+u+"H400000v"+(40+s)+"H742z"},rHt=function(s,u,d){u=1e3*u;var p="";switch(s){case"sqrtMain":p=Xqt(u,OD);break;case"sqrtSize1":p=Qqt(u,OD);break;case"sqrtSize2":p=Jqt(u,OD);break;case"sqrtSize3":p=Zqt(u,OD);break;case"sqrtSize4":p=eHt(u,OD);break;case"sqrtTall":p=nHt(u,OD,d)}return p},iHt=function(s,u){switch(s){case"⎜":return"M291 0 H417 V"+u+" H291z M291 0 H417 V"+u+" H291z";case"∣":return"M145 0 H188 V"+u+" H145z M145 0 H188 V"+u+" H145z";case"∥":return"M145 0 H188 V"+u+" H145z M145 0 H188 V"+u+" H145z"+("M367 0 H410 V"+u+" H367z M367 0 H410 V"+u+" H367z");case"⎟":return"M457 0 H583 V"+u+" H457z M457 0 H583 V"+u+" H457z";case"⎢":return"M319 0 H403 V"+u+" H319z M319 0 H403 V"+u+" H319z";case"⎥":return"M263 0 H347 V"+u+" H263z M263 0 H347 V"+u+" H263z";case"⎪":return"M384 0 H504 V"+u+" H384z M384 0 H504 V"+u+" H384z";case"⏐":return"M312 0 H355 V"+u+" H312z M312 0 H355 V"+u+" H312z";case"‖":return"M257 0 H300 V"+u+" H257z M257 0 H300 V"+u+" H257z"+("M478 0 H521 V"+u+" H478z M478 0 H521 V"+u+" H478z");default:return""}},W$e={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`},sHt=function(s,u){switch(s){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+u+` v1759 h347 v-84
+H403z M403 1759 V0 H319 V1759 v`+u+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+u+` v1759 H0 v84 H347z
+M347 1759 V0 H263 V1759 v`+u+" v1759 h84z";case"vert":return"M145 15 v585 v"+u+` v585 c2.667,10,9.667,15,21,15
+c10,0,16.667,-5,20,-15 v-585 v`+-u+` v-585 c-2.667,-10,-9.667,-15,-21,-15
+c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+u+" v585 h43z";case"doublevert":return"M145 15 v585 v"+u+` v585 c2.667,10,9.667,15,21,15
+c10,0,16.667,-5,20,-15 v-585 v`+-u+` v-585 c-2.667,-10,-9.667,-15,-21,-15
+c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+u+` v585 h43z
+M367 15 v585 v`+u+` v585 c2.667,10,9.667,15,21,15
+c10,0,16.667,-5,20,-15 v-585 v`+-u+` v-585 c-2.667,-10,-9.667,-15,-21,-15
+c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+u+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+u+` v1715 h263 v84 H319z
+MM319 602 V0 H403 V602 v`+u+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+u+` v1799 H0 v-84 H319z
+MM319 602 V0 H403 V602 v`+u+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+u+` v602 h84z
+M403 1759 V0 H319 V1759 v`+u+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+u+` v602 h84z
+M347 1759 V0 h-84 V1759 v`+u+" 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,`+(u+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,-`+(u+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,`+(u+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,-`+(u+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 oR{constructor(s){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=s,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(s){return Ya.contains(this.classes,s)}toNode(){for(var s=document.createDocumentFragment(),u=0;uu.toText();return this.children.map(s).join("")}}var K4={"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]}},aQ={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]},Y$e={Å:"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 aHt(i,s){K4[i]=s}function J2e(i,s,u){if(!K4[s])throw new Error("Font metrics not found for font: "+s+".");var d=i.charCodeAt(0),p=K4[s][d];if(!p&&i[0]in Y$e&&(d=Y$e[i[0]].charCodeAt(0),p=K4[s][d]),!p&&u==="text"&&K$e(d)&&(p=K4[s][77]),p)return{depth:p[0],height:p[1],italic:p[2],skew:p[3],width:p[4]}}var Z2e={};function oHt(i){var s;if(i>=5?s=0:i>=3?s=1:s=2,!Z2e[s]){var u=Z2e[s]={cssEmPerMu:aQ.quad[s]/18};for(var d in aQ)aQ.hasOwnProperty(d)&&(u[d]=aQ[d][s])}return Z2e[s]}var cHt=[[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]],X$e=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],Q$e=function(s,u){return u.size<2?s:cHt[s-1][u.size-1]};class M7{constructor(s){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=s.style,this.color=s.color,this.size=s.size||M7.BASESIZE,this.textSize=s.textSize||this.size,this.phantom=!!s.phantom,this.font=s.font||"",this.fontFamily=s.fontFamily||"",this.fontWeight=s.fontWeight||"",this.fontShape=s.fontShape||"",this.sizeMultiplier=X$e[this.size-1],this.maxSize=s.maxSize,this.minRuleThickness=s.minRuleThickness,this._fontMetrics=void 0}extend(s){var u={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 d in s)s.hasOwnProperty(d)&&(u[d]=s[d]);return new M7(u)}havingStyle(s){return this.style===s?this:this.extend({style:s,size:Q$e(this.textSize,s)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(s){return this.size===s&&this.textSize===s?this:this.extend({style:this.style.text(),size:s,textSize:s,sizeMultiplier:X$e[s-1]})}havingBaseStyle(s){s=s||this.style.text();var u=Q$e(M7.BASESIZE,s);return this.size===u&&this.textSize===M7.BASESIZE&&this.style===s?this:this.extend({style:s,size:u})}havingBaseSizing(){var s;switch(this.style.id){case 4:case 5:s=3;break;case 6:case 7:s=1;break;default:s=6}return this.extend({style:this.style.text(),size:s})}withColor(s){return this.extend({color:s})}withPhantom(){return this.extend({phantom:!0})}withFont(s){return this.extend({font:s})}withTextFontFamily(s){return this.extend({fontFamily:s,font:""})}withTextFontWeight(s){return this.extend({fontWeight:s,font:""})}withTextFontShape(s){return this.extend({fontShape:s,font:""})}sizingClasses(s){return s.size!==this.size?["sizing","reset-size"+s.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==M7.BASESIZE?["sizing","reset-size"+this.size,"size"+M7.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=oHt(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}}M7.BASESIZE=6;var ebe={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},uHt={ex:!0,em:!0,mu:!0},J$e=function(s){return typeof s!="string"&&(s=s.unit),s in ebe||s in uHt||s==="ex"},Uh=function(s,u){var d;if(s.unit in ebe)d=ebe[s.unit]/u.fontMetrics().ptPerEm/u.sizeMultiplier;else if(s.unit==="mu")d=u.fontMetrics().cssEmPerMu;else{var p;if(u.style.isTight()?p=u.havingStyle(u.style.text()):p=u,s.unit==="ex")d=p.fontMetrics().xHeight;else if(s.unit==="em")d=p.fontMetrics().quad;else throw new Ci("Invalid unit: '"+s.unit+"'");p!==u&&(d*=p.sizeMultiplier/u.sizeMultiplier)}return Math.min(s.number*d,u.maxSize)},Ri=function(s){return+s.toFixed(4)+"em"},T9=function(s){return s.filter(u=>u).join(" ")},Z$e=function(s,u,d){if(this.classes=s||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=d||{},u){u.style.isTight()&&this.classes.push("mtight");var p=u.getColor();p&&(this.style.color=p)}},eze=function(s){var u=document.createElement(s);u.className=T9(this.classes);for(var d in this.style)this.style.hasOwnProperty(d)&&(u.style[d]=this.style[d]);for(var p in this.attributes)this.attributes.hasOwnProperty(p)&&u.setAttribute(p,this.attributes[p]);for(var v=0;v";for(var b=0;b",u};class cR{constructor(s,u,d,p){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,Z$e.call(this,s,d,p),this.children=u||[]}setAttribute(s,u){this.attributes[s]=u}hasClass(s){return Ya.contains(this.classes,s)}toNode(){return eze.call(this,"span")}toMarkup(){return tze.call(this,"span")}}class tbe{constructor(s,u,d,p){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,Z$e.call(this,u,p),this.children=d||[],this.setAttribute("href",s)}setAttribute(s,u){this.attributes[s]=u}hasClass(s){return Ya.contains(this.classes,s)}toNode(){return eze.call(this,"a")}toMarkup(){return tze.call(this,"a")}}class lHt{constructor(s,u,d){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=u,this.src=s,this.classes=["mord"],this.style=d}hasClass(s){return Ya.contains(this.classes,s)}toNode(){var s=document.createElement("img");s.src=this.src,s.alt=this.alt,s.className="mord";for(var u in this.style)this.style.hasOwnProperty(u)&&(s.style[u]=this.style[u]);return s}toMarkup(){var s="
",s}}var hHt={î:"ı̂",ï:"ı̈",í:"ı́",ì:"ı̀"};class Bv{constructor(s,u,d,p,v,b,y,T){this.text=void 0,this.height=void 0,this.depth=void 0,this.italic=void 0,this.skew=void 0,this.width=void 0,this.maxFontSize=void 0,this.classes=void 0,this.style=void 0,this.text=s,this.height=u||0,this.depth=d||0,this.italic=p||0,this.skew=v||0,this.width=b||0,this.classes=y||[],this.style=T||{},this.maxFontSize=0;var _=Yqt(this.text.charCodeAt(0));_&&this.classes.push(_+"_fallback"),/[îïíì]/.test(this.text)&&(this.text=hHt[this.text])}hasClass(s){return Ya.contains(this.classes,s)}toNode(){var s=document.createTextNode(this.text),u=null;this.italic>0&&(u=document.createElement("span"),u.style.marginRight=Ri(this.italic)),this.classes.length>0&&(u=u||document.createElement("span"),u.className=T9(this.classes));for(var d in this.style)this.style.hasOwnProperty(d)&&(u=u||document.createElement("span"),u.style[d]=this.style[d]);return u?(u.appendChild(s),u):s}toMarkup(){var s=!1,u="0&&(d+="margin-right:"+this.italic+"em;");for(var p in this.style)this.style.hasOwnProperty(p)&&(d+=Ya.hyphenate(p)+":"+this.style[p]+";");d&&(s=!0,u+=' style="'+Ya.escape(d)+'"');var v=Ya.escape(this.text);return s?(u+=">",u+=v,u+="",u):v}}class D7{constructor(s,u){this.children=void 0,this.attributes=void 0,this.children=s||[],this.attributes=u||{}}toNode(){var s="http://www.w3.org/2000/svg",u=document.createElementNS(s,"svg");for(var d in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,d)&&u.setAttribute(d,this.attributes[d]);for(var p=0;p";for(var d=0;d",s}}class C9{constructor(s,u){this.pathName=void 0,this.alternate=void 0,this.pathName=s,this.alternate=u}toNode(){var s="http://www.w3.org/2000/svg",u=document.createElementNS(s,"path");return this.alternate?u.setAttribute("d",this.alternate):u.setAttribute("d",W$e[this.pathName]),u}toMarkup(){return this.alternate?"":""}}class nbe{constructor(s){this.attributes=void 0,this.attributes=s||{}}toNode(){var s="http://www.w3.org/2000/svg",u=document.createElementNS(s,"line");for(var d in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,d)&&u.setAttribute(d,this.attributes[d]);return u}toMarkup(){var s="",s}}function nze(i){if(i instanceof Bv)return i;throw new Error("Expected symbolNode but got "+String(i)+".")}function fHt(i){if(i instanceof cR)return i;throw new Error("Expected span but got "+String(i)+".")}var dHt={bin:1,close:1,inner:1,open:1,punct:1,rel:1},gHt={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1},Ul={math:{},text:{}};function we(i,s,u,d,p,v){Ul[i][p]={font:s,group:u,replace:d},v&&d&&(Ul[i][d]=Ul[i][p])}var Ae="math",si="text",Ue="main",$t="ams",wh="accent-token",ls="bin",Dp="close",ND="inner",Ca="mathord",N0="op-token",hm="open",oQ="punct",Ht="rel",I7="spacing",mn="textord";we(Ae,Ue,Ht,"≡","\\equiv",!0),we(Ae,Ue,Ht,"≺","\\prec",!0),we(Ae,Ue,Ht,"≻","\\succ",!0),we(Ae,Ue,Ht,"∼","\\sim",!0),we(Ae,Ue,Ht,"⊥","\\perp"),we(Ae,Ue,Ht,"⪯","\\preceq",!0),we(Ae,Ue,Ht,"⪰","\\succeq",!0),we(Ae,Ue,Ht,"≃","\\simeq",!0),we(Ae,Ue,Ht,"∣","\\mid",!0),we(Ae,Ue,Ht,"≪","\\ll",!0),we(Ae,Ue,Ht,"≫","\\gg",!0),we(Ae,Ue,Ht,"≍","\\asymp",!0),we(Ae,Ue,Ht,"∥","\\parallel"),we(Ae,Ue,Ht,"⋈","\\bowtie",!0),we(Ae,Ue,Ht,"⌣","\\smile",!0),we(Ae,Ue,Ht,"⊑","\\sqsubseteq",!0),we(Ae,Ue,Ht,"⊒","\\sqsupseteq",!0),we(Ae,Ue,Ht,"≐","\\doteq",!0),we(Ae,Ue,Ht,"⌢","\\frown",!0),we(Ae,Ue,Ht,"∋","\\ni",!0),we(Ae,Ue,Ht,"∝","\\propto",!0),we(Ae,Ue,Ht,"⊢","\\vdash",!0),we(Ae,Ue,Ht,"⊣","\\dashv",!0),we(Ae,Ue,Ht,"∋","\\owns"),we(Ae,Ue,oQ,".","\\ldotp"),we(Ae,Ue,oQ,"⋅","\\cdotp"),we(Ae,Ue,mn,"#","\\#"),we(si,Ue,mn,"#","\\#"),we(Ae,Ue,mn,"&","\\&"),we(si,Ue,mn,"&","\\&"),we(Ae,Ue,mn,"ℵ","\\aleph",!0),we(Ae,Ue,mn,"∀","\\forall",!0),we(Ae,Ue,mn,"ℏ","\\hbar",!0),we(Ae,Ue,mn,"∃","\\exists",!0),we(Ae,Ue,mn,"∇","\\nabla",!0),we(Ae,Ue,mn,"♭","\\flat",!0),we(Ae,Ue,mn,"ℓ","\\ell",!0),we(Ae,Ue,mn,"♮","\\natural",!0),we(Ae,Ue,mn,"♣","\\clubsuit",!0),we(Ae,Ue,mn,"℘","\\wp",!0),we(Ae,Ue,mn,"♯","\\sharp",!0),we(Ae,Ue,mn,"♢","\\diamondsuit",!0),we(Ae,Ue,mn,"ℜ","\\Re",!0),we(Ae,Ue,mn,"♡","\\heartsuit",!0),we(Ae,Ue,mn,"ℑ","\\Im",!0),we(Ae,Ue,mn,"♠","\\spadesuit",!0),we(Ae,Ue,mn,"§","\\S",!0),we(si,Ue,mn,"§","\\S"),we(Ae,Ue,mn,"¶","\\P",!0),we(si,Ue,mn,"¶","\\P"),we(Ae,Ue,mn,"†","\\dag"),we(si,Ue,mn,"†","\\dag"),we(si,Ue,mn,"†","\\textdagger"),we(Ae,Ue,mn,"‡","\\ddag"),we(si,Ue,mn,"‡","\\ddag"),we(si,Ue,mn,"‡","\\textdaggerdbl"),we(Ae,Ue,Dp,"⎱","\\rmoustache",!0),we(Ae,Ue,hm,"⎰","\\lmoustache",!0),we(Ae,Ue,Dp,"⟯","\\rgroup",!0),we(Ae,Ue,hm,"⟮","\\lgroup",!0),we(Ae,Ue,ls,"∓","\\mp",!0),we(Ae,Ue,ls,"⊖","\\ominus",!0),we(Ae,Ue,ls,"⊎","\\uplus",!0),we(Ae,Ue,ls,"⊓","\\sqcap",!0),we(Ae,Ue,ls,"∗","\\ast"),we(Ae,Ue,ls,"⊔","\\sqcup",!0),we(Ae,Ue,ls,"◯","\\bigcirc",!0),we(Ae,Ue,ls,"∙","\\bullet",!0),we(Ae,Ue,ls,"‡","\\ddagger"),we(Ae,Ue,ls,"≀","\\wr",!0),we(Ae,Ue,ls,"⨿","\\amalg"),we(Ae,Ue,ls,"&","\\And"),we(Ae,Ue,Ht,"⟵","\\longleftarrow",!0),we(Ae,Ue,Ht,"⇐","\\Leftarrow",!0),we(Ae,Ue,Ht,"⟸","\\Longleftarrow",!0),we(Ae,Ue,Ht,"⟶","\\longrightarrow",!0),we(Ae,Ue,Ht,"⇒","\\Rightarrow",!0),we(Ae,Ue,Ht,"⟹","\\Longrightarrow",!0),we(Ae,Ue,Ht,"↔","\\leftrightarrow",!0),we(Ae,Ue,Ht,"⟷","\\longleftrightarrow",!0),we(Ae,Ue,Ht,"⇔","\\Leftrightarrow",!0),we(Ae,Ue,Ht,"⟺","\\Longleftrightarrow",!0),we(Ae,Ue,Ht,"↦","\\mapsto",!0),we(Ae,Ue,Ht,"⟼","\\longmapsto",!0),we(Ae,Ue,Ht,"↗","\\nearrow",!0),we(Ae,Ue,Ht,"↩","\\hookleftarrow",!0),we(Ae,Ue,Ht,"↪","\\hookrightarrow",!0),we(Ae,Ue,Ht,"↘","\\searrow",!0),we(Ae,Ue,Ht,"↼","\\leftharpoonup",!0),we(Ae,Ue,Ht,"⇀","\\rightharpoonup",!0),we(Ae,Ue,Ht,"↙","\\swarrow",!0),we(Ae,Ue,Ht,"↽","\\leftharpoondown",!0),we(Ae,Ue,Ht,"⇁","\\rightharpoondown",!0),we(Ae,Ue,Ht,"↖","\\nwarrow",!0),we(Ae,Ue,Ht,"⇌","\\rightleftharpoons",!0),we(Ae,$t,Ht,"≮","\\nless",!0),we(Ae,$t,Ht,"","\\@nleqslant"),we(Ae,$t,Ht,"","\\@nleqq"),we(Ae,$t,Ht,"⪇","\\lneq",!0),we(Ae,$t,Ht,"≨","\\lneqq",!0),we(Ae,$t,Ht,"","\\@lvertneqq"),we(Ae,$t,Ht,"⋦","\\lnsim",!0),we(Ae,$t,Ht,"⪉","\\lnapprox",!0),we(Ae,$t,Ht,"⊀","\\nprec",!0),we(Ae,$t,Ht,"⋠","\\npreceq",!0),we(Ae,$t,Ht,"⋨","\\precnsim",!0),we(Ae,$t,Ht,"⪹","\\precnapprox",!0),we(Ae,$t,Ht,"≁","\\nsim",!0),we(Ae,$t,Ht,"","\\@nshortmid"),we(Ae,$t,Ht,"∤","\\nmid",!0),we(Ae,$t,Ht,"⊬","\\nvdash",!0),we(Ae,$t,Ht,"⊭","\\nvDash",!0),we(Ae,$t,Ht,"⋪","\\ntriangleleft"),we(Ae,$t,Ht,"⋬","\\ntrianglelefteq",!0),we(Ae,$t,Ht,"⊊","\\subsetneq",!0),we(Ae,$t,Ht,"","\\@varsubsetneq"),we(Ae,$t,Ht,"⫋","\\subsetneqq",!0),we(Ae,$t,Ht,"","\\@varsubsetneqq"),we(Ae,$t,Ht,"≯","\\ngtr",!0),we(Ae,$t,Ht,"","\\@ngeqslant"),we(Ae,$t,Ht,"","\\@ngeqq"),we(Ae,$t,Ht,"⪈","\\gneq",!0),we(Ae,$t,Ht,"≩","\\gneqq",!0),we(Ae,$t,Ht,"","\\@gvertneqq"),we(Ae,$t,Ht,"⋧","\\gnsim",!0),we(Ae,$t,Ht,"⪊","\\gnapprox",!0),we(Ae,$t,Ht,"⊁","\\nsucc",!0),we(Ae,$t,Ht,"⋡","\\nsucceq",!0),we(Ae,$t,Ht,"⋩","\\succnsim",!0),we(Ae,$t,Ht,"⪺","\\succnapprox",!0),we(Ae,$t,Ht,"≆","\\ncong",!0),we(Ae,$t,Ht,"","\\@nshortparallel"),we(Ae,$t,Ht,"∦","\\nparallel",!0),we(Ae,$t,Ht,"⊯","\\nVDash",!0),we(Ae,$t,Ht,"⋫","\\ntriangleright"),we(Ae,$t,Ht,"⋭","\\ntrianglerighteq",!0),we(Ae,$t,Ht,"","\\@nsupseteqq"),we(Ae,$t,Ht,"⊋","\\supsetneq",!0),we(Ae,$t,Ht,"","\\@varsupsetneq"),we(Ae,$t,Ht,"⫌","\\supsetneqq",!0),we(Ae,$t,Ht,"","\\@varsupsetneqq"),we(Ae,$t,Ht,"⊮","\\nVdash",!0),we(Ae,$t,Ht,"⪵","\\precneqq",!0),we(Ae,$t,Ht,"⪶","\\succneqq",!0),we(Ae,$t,Ht,"","\\@nsubseteqq"),we(Ae,$t,ls,"⊴","\\unlhd"),we(Ae,$t,ls,"⊵","\\unrhd"),we(Ae,$t,Ht,"↚","\\nleftarrow",!0),we(Ae,$t,Ht,"↛","\\nrightarrow",!0),we(Ae,$t,Ht,"⇍","\\nLeftarrow",!0),we(Ae,$t,Ht,"⇏","\\nRightarrow",!0),we(Ae,$t,Ht,"↮","\\nleftrightarrow",!0),we(Ae,$t,Ht,"⇎","\\nLeftrightarrow",!0),we(Ae,$t,Ht,"△","\\vartriangle"),we(Ae,$t,mn,"ℏ","\\hslash"),we(Ae,$t,mn,"▽","\\triangledown"),we(Ae,$t,mn,"◊","\\lozenge"),we(Ae,$t,mn,"Ⓢ","\\circledS"),we(Ae,$t,mn,"®","\\circledR"),we(si,$t,mn,"®","\\circledR"),we(Ae,$t,mn,"∡","\\measuredangle",!0),we(Ae,$t,mn,"∄","\\nexists"),we(Ae,$t,mn,"℧","\\mho"),we(Ae,$t,mn,"Ⅎ","\\Finv",!0),we(Ae,$t,mn,"⅁","\\Game",!0),we(Ae,$t,mn,"‵","\\backprime"),we(Ae,$t,mn,"▲","\\blacktriangle"),we(Ae,$t,mn,"▼","\\blacktriangledown"),we(Ae,$t,mn,"■","\\blacksquare"),we(Ae,$t,mn,"⧫","\\blacklozenge"),we(Ae,$t,mn,"★","\\bigstar"),we(Ae,$t,mn,"∢","\\sphericalangle",!0),we(Ae,$t,mn,"∁","\\complement",!0),we(Ae,$t,mn,"ð","\\eth",!0),we(si,Ue,mn,"ð","ð"),we(Ae,$t,mn,"╱","\\diagup"),we(Ae,$t,mn,"╲","\\diagdown"),we(Ae,$t,mn,"□","\\square"),we(Ae,$t,mn,"□","\\Box"),we(Ae,$t,mn,"◊","\\Diamond"),we(Ae,$t,mn,"¥","\\yen",!0),we(si,$t,mn,"¥","\\yen",!0),we(Ae,$t,mn,"✓","\\checkmark",!0),we(si,$t,mn,"✓","\\checkmark"),we(Ae,$t,mn,"ℶ","\\beth",!0),we(Ae,$t,mn,"ℸ","\\daleth",!0),we(Ae,$t,mn,"ℷ","\\gimel",!0),we(Ae,$t,mn,"ϝ","\\digamma",!0),we(Ae,$t,mn,"ϰ","\\varkappa"),we(Ae,$t,hm,"┌","\\@ulcorner",!0),we(Ae,$t,Dp,"┐","\\@urcorner",!0),we(Ae,$t,hm,"└","\\@llcorner",!0),we(Ae,$t,Dp,"┘","\\@lrcorner",!0),we(Ae,$t,Ht,"≦","\\leqq",!0),we(Ae,$t,Ht,"⩽","\\leqslant",!0),we(Ae,$t,Ht,"⪕","\\eqslantless",!0),we(Ae,$t,Ht,"≲","\\lesssim",!0),we(Ae,$t,Ht,"⪅","\\lessapprox",!0),we(Ae,$t,Ht,"≊","\\approxeq",!0),we(Ae,$t,ls,"⋖","\\lessdot"),we(Ae,$t,Ht,"⋘","\\lll",!0),we(Ae,$t,Ht,"≶","\\lessgtr",!0),we(Ae,$t,Ht,"⋚","\\lesseqgtr",!0),we(Ae,$t,Ht,"⪋","\\lesseqqgtr",!0),we(Ae,$t,Ht,"≑","\\doteqdot"),we(Ae,$t,Ht,"≓","\\risingdotseq",!0),we(Ae,$t,Ht,"≒","\\fallingdotseq",!0),we(Ae,$t,Ht,"∽","\\backsim",!0),we(Ae,$t,Ht,"⋍","\\backsimeq",!0),we(Ae,$t,Ht,"⫅","\\subseteqq",!0),we(Ae,$t,Ht,"⋐","\\Subset",!0),we(Ae,$t,Ht,"⊏","\\sqsubset",!0),we(Ae,$t,Ht,"≼","\\preccurlyeq",!0),we(Ae,$t,Ht,"⋞","\\curlyeqprec",!0),we(Ae,$t,Ht,"≾","\\precsim",!0),we(Ae,$t,Ht,"⪷","\\precapprox",!0),we(Ae,$t,Ht,"⊲","\\vartriangleleft"),we(Ae,$t,Ht,"⊴","\\trianglelefteq"),we(Ae,$t,Ht,"⊨","\\vDash",!0),we(Ae,$t,Ht,"⊪","\\Vvdash",!0),we(Ae,$t,Ht,"⌣","\\smallsmile"),we(Ae,$t,Ht,"⌢","\\smallfrown"),we(Ae,$t,Ht,"≏","\\bumpeq",!0),we(Ae,$t,Ht,"≎","\\Bumpeq",!0),we(Ae,$t,Ht,"≧","\\geqq",!0),we(Ae,$t,Ht,"⩾","\\geqslant",!0),we(Ae,$t,Ht,"⪖","\\eqslantgtr",!0),we(Ae,$t,Ht,"≳","\\gtrsim",!0),we(Ae,$t,Ht,"⪆","\\gtrapprox",!0),we(Ae,$t,ls,"⋗","\\gtrdot"),we(Ae,$t,Ht,"⋙","\\ggg",!0),we(Ae,$t,Ht,"≷","\\gtrless",!0),we(Ae,$t,Ht,"⋛","\\gtreqless",!0),we(Ae,$t,Ht,"⪌","\\gtreqqless",!0),we(Ae,$t,Ht,"≖","\\eqcirc",!0),we(Ae,$t,Ht,"≗","\\circeq",!0),we(Ae,$t,Ht,"≜","\\triangleq",!0),we(Ae,$t,Ht,"∼","\\thicksim"),we(Ae,$t,Ht,"≈","\\thickapprox"),we(Ae,$t,Ht,"⫆","\\supseteqq",!0),we(Ae,$t,Ht,"⋑","\\Supset",!0),we(Ae,$t,Ht,"⊐","\\sqsupset",!0),we(Ae,$t,Ht,"≽","\\succcurlyeq",!0),we(Ae,$t,Ht,"⋟","\\curlyeqsucc",!0),we(Ae,$t,Ht,"≿","\\succsim",!0),we(Ae,$t,Ht,"⪸","\\succapprox",!0),we(Ae,$t,Ht,"⊳","\\vartriangleright"),we(Ae,$t,Ht,"⊵","\\trianglerighteq"),we(Ae,$t,Ht,"⊩","\\Vdash",!0),we(Ae,$t,Ht,"∣","\\shortmid"),we(Ae,$t,Ht,"∥","\\shortparallel"),we(Ae,$t,Ht,"≬","\\between",!0),we(Ae,$t,Ht,"⋔","\\pitchfork",!0),we(Ae,$t,Ht,"∝","\\varpropto"),we(Ae,$t,Ht,"◀","\\blacktriangleleft"),we(Ae,$t,Ht,"∴","\\therefore",!0),we(Ae,$t,Ht,"∍","\\backepsilon"),we(Ae,$t,Ht,"▶","\\blacktriangleright"),we(Ae,$t,Ht,"∵","\\because",!0),we(Ae,$t,Ht,"⋘","\\llless"),we(Ae,$t,Ht,"⋙","\\gggtr"),we(Ae,$t,ls,"⊲","\\lhd"),we(Ae,$t,ls,"⊳","\\rhd"),we(Ae,$t,Ht,"≂","\\eqsim",!0),we(Ae,Ue,Ht,"⋈","\\Join"),we(Ae,$t,Ht,"≑","\\Doteq",!0),we(Ae,$t,ls,"∔","\\dotplus",!0),we(Ae,$t,ls,"∖","\\smallsetminus"),we(Ae,$t,ls,"⋒","\\Cap",!0),we(Ae,$t,ls,"⋓","\\Cup",!0),we(Ae,$t,ls,"⩞","\\doublebarwedge",!0),we(Ae,$t,ls,"⊟","\\boxminus",!0),we(Ae,$t,ls,"⊞","\\boxplus",!0),we(Ae,$t,ls,"⋇","\\divideontimes",!0),we(Ae,$t,ls,"⋉","\\ltimes",!0),we(Ae,$t,ls,"⋊","\\rtimes",!0),we(Ae,$t,ls,"⋋","\\leftthreetimes",!0),we(Ae,$t,ls,"⋌","\\rightthreetimes",!0),we(Ae,$t,ls,"⋏","\\curlywedge",!0),we(Ae,$t,ls,"⋎","\\curlyvee",!0),we(Ae,$t,ls,"⊝","\\circleddash",!0),we(Ae,$t,ls,"⊛","\\circledast",!0),we(Ae,$t,ls,"⋅","\\centerdot"),we(Ae,$t,ls,"⊺","\\intercal",!0),we(Ae,$t,ls,"⋒","\\doublecap"),we(Ae,$t,ls,"⋓","\\doublecup"),we(Ae,$t,ls,"⊠","\\boxtimes",!0),we(Ae,$t,Ht,"⇢","\\dashrightarrow",!0),we(Ae,$t,Ht,"⇠","\\dashleftarrow",!0),we(Ae,$t,Ht,"⇇","\\leftleftarrows",!0),we(Ae,$t,Ht,"⇆","\\leftrightarrows",!0),we(Ae,$t,Ht,"⇚","\\Lleftarrow",!0),we(Ae,$t,Ht,"↞","\\twoheadleftarrow",!0),we(Ae,$t,Ht,"↢","\\leftarrowtail",!0),we(Ae,$t,Ht,"↫","\\looparrowleft",!0),we(Ae,$t,Ht,"⇋","\\leftrightharpoons",!0),we(Ae,$t,Ht,"↶","\\curvearrowleft",!0),we(Ae,$t,Ht,"↺","\\circlearrowleft",!0),we(Ae,$t,Ht,"↰","\\Lsh",!0),we(Ae,$t,Ht,"⇈","\\upuparrows",!0),we(Ae,$t,Ht,"↿","\\upharpoonleft",!0),we(Ae,$t,Ht,"⇃","\\downharpoonleft",!0),we(Ae,Ue,Ht,"⊶","\\origof",!0),we(Ae,Ue,Ht,"⊷","\\imageof",!0),we(Ae,$t,Ht,"⊸","\\multimap",!0),we(Ae,$t,Ht,"↭","\\leftrightsquigarrow",!0),we(Ae,$t,Ht,"⇉","\\rightrightarrows",!0),we(Ae,$t,Ht,"⇄","\\rightleftarrows",!0),we(Ae,$t,Ht,"↠","\\twoheadrightarrow",!0),we(Ae,$t,Ht,"↣","\\rightarrowtail",!0),we(Ae,$t,Ht,"↬","\\looparrowright",!0),we(Ae,$t,Ht,"↷","\\curvearrowright",!0),we(Ae,$t,Ht,"↻","\\circlearrowright",!0),we(Ae,$t,Ht,"↱","\\Rsh",!0),we(Ae,$t,Ht,"⇊","\\downdownarrows",!0),we(Ae,$t,Ht,"↾","\\upharpoonright",!0),we(Ae,$t,Ht,"⇂","\\downharpoonright",!0),we(Ae,$t,Ht,"⇝","\\rightsquigarrow",!0),we(Ae,$t,Ht,"⇝","\\leadsto"),we(Ae,$t,Ht,"⇛","\\Rrightarrow",!0),we(Ae,$t,Ht,"↾","\\restriction"),we(Ae,Ue,mn,"‘","`"),we(Ae,Ue,mn,"$","\\$"),we(si,Ue,mn,"$","\\$"),we(si,Ue,mn,"$","\\textdollar"),we(Ae,Ue,mn,"%","\\%"),we(si,Ue,mn,"%","\\%"),we(Ae,Ue,mn,"_","\\_"),we(si,Ue,mn,"_","\\_"),we(si,Ue,mn,"_","\\textunderscore"),we(Ae,Ue,mn,"∠","\\angle",!0),we(Ae,Ue,mn,"∞","\\infty",!0),we(Ae,Ue,mn,"′","\\prime"),we(Ae,Ue,mn,"△","\\triangle"),we(Ae,Ue,mn,"Γ","\\Gamma",!0),we(Ae,Ue,mn,"Δ","\\Delta",!0),we(Ae,Ue,mn,"Θ","\\Theta",!0),we(Ae,Ue,mn,"Λ","\\Lambda",!0),we(Ae,Ue,mn,"Ξ","\\Xi",!0),we(Ae,Ue,mn,"Π","\\Pi",!0),we(Ae,Ue,mn,"Σ","\\Sigma",!0),we(Ae,Ue,mn,"Υ","\\Upsilon",!0),we(Ae,Ue,mn,"Φ","\\Phi",!0),we(Ae,Ue,mn,"Ψ","\\Psi",!0),we(Ae,Ue,mn,"Ω","\\Omega",!0),we(Ae,Ue,mn,"A","Α"),we(Ae,Ue,mn,"B","Β"),we(Ae,Ue,mn,"E","Ε"),we(Ae,Ue,mn,"Z","Ζ"),we(Ae,Ue,mn,"H","Η"),we(Ae,Ue,mn,"I","Ι"),we(Ae,Ue,mn,"K","Κ"),we(Ae,Ue,mn,"M","Μ"),we(Ae,Ue,mn,"N","Ν"),we(Ae,Ue,mn,"O","Ο"),we(Ae,Ue,mn,"P","Ρ"),we(Ae,Ue,mn,"T","Τ"),we(Ae,Ue,mn,"X","Χ"),we(Ae,Ue,mn,"¬","\\neg",!0),we(Ae,Ue,mn,"¬","\\lnot"),we(Ae,Ue,mn,"⊤","\\top"),we(Ae,Ue,mn,"⊥","\\bot"),we(Ae,Ue,mn,"∅","\\emptyset"),we(Ae,$t,mn,"∅","\\varnothing"),we(Ae,Ue,Ca,"α","\\alpha",!0),we(Ae,Ue,Ca,"β","\\beta",!0),we(Ae,Ue,Ca,"γ","\\gamma",!0),we(Ae,Ue,Ca,"δ","\\delta",!0),we(Ae,Ue,Ca,"ϵ","\\epsilon",!0),we(Ae,Ue,Ca,"ζ","\\zeta",!0),we(Ae,Ue,Ca,"η","\\eta",!0),we(Ae,Ue,Ca,"θ","\\theta",!0),we(Ae,Ue,Ca,"ι","\\iota",!0),we(Ae,Ue,Ca,"κ","\\kappa",!0),we(Ae,Ue,Ca,"λ","\\lambda",!0),we(Ae,Ue,Ca,"μ","\\mu",!0),we(Ae,Ue,Ca,"ν","\\nu",!0),we(Ae,Ue,Ca,"ξ","\\xi",!0),we(Ae,Ue,Ca,"ο","\\omicron",!0),we(Ae,Ue,Ca,"π","\\pi",!0),we(Ae,Ue,Ca,"ρ","\\rho",!0),we(Ae,Ue,Ca,"σ","\\sigma",!0),we(Ae,Ue,Ca,"τ","\\tau",!0),we(Ae,Ue,Ca,"υ","\\upsilon",!0),we(Ae,Ue,Ca,"ϕ","\\phi",!0),we(Ae,Ue,Ca,"χ","\\chi",!0),we(Ae,Ue,Ca,"ψ","\\psi",!0),we(Ae,Ue,Ca,"ω","\\omega",!0),we(Ae,Ue,Ca,"ε","\\varepsilon",!0),we(Ae,Ue,Ca,"ϑ","\\vartheta",!0),we(Ae,Ue,Ca,"ϖ","\\varpi",!0),we(Ae,Ue,Ca,"ϱ","\\varrho",!0),we(Ae,Ue,Ca,"ς","\\varsigma",!0),we(Ae,Ue,Ca,"φ","\\varphi",!0),we(Ae,Ue,ls,"∗","*",!0),we(Ae,Ue,ls,"+","+"),we(Ae,Ue,ls,"−","-",!0),we(Ae,Ue,ls,"⋅","\\cdot",!0),we(Ae,Ue,ls,"∘","\\circ",!0),we(Ae,Ue,ls,"÷","\\div",!0),we(Ae,Ue,ls,"±","\\pm",!0),we(Ae,Ue,ls,"×","\\times",!0),we(Ae,Ue,ls,"∩","\\cap",!0),we(Ae,Ue,ls,"∪","\\cup",!0),we(Ae,Ue,ls,"∖","\\setminus",!0),we(Ae,Ue,ls,"∧","\\land"),we(Ae,Ue,ls,"∨","\\lor"),we(Ae,Ue,ls,"∧","\\wedge",!0),we(Ae,Ue,ls,"∨","\\vee",!0),we(Ae,Ue,mn,"√","\\surd"),we(Ae,Ue,hm,"⟨","\\langle",!0),we(Ae,Ue,hm,"∣","\\lvert"),we(Ae,Ue,hm,"∥","\\lVert"),we(Ae,Ue,Dp,"?","?"),we(Ae,Ue,Dp,"!","!"),we(Ae,Ue,Dp,"⟩","\\rangle",!0),we(Ae,Ue,Dp,"∣","\\rvert"),we(Ae,Ue,Dp,"∥","\\rVert"),we(Ae,Ue,Ht,"=","="),we(Ae,Ue,Ht,":",":"),we(Ae,Ue,Ht,"≈","\\approx",!0),we(Ae,Ue,Ht,"≅","\\cong",!0),we(Ae,Ue,Ht,"≥","\\ge"),we(Ae,Ue,Ht,"≥","\\geq",!0),we(Ae,Ue,Ht,"←","\\gets"),we(Ae,Ue,Ht,">","\\gt",!0),we(Ae,Ue,Ht,"∈","\\in",!0),we(Ae,Ue,Ht,"","\\@not"),we(Ae,Ue,Ht,"⊂","\\subset",!0),we(Ae,Ue,Ht,"⊃","\\supset",!0),we(Ae,Ue,Ht,"⊆","\\subseteq",!0),we(Ae,Ue,Ht,"⊇","\\supseteq",!0),we(Ae,$t,Ht,"⊈","\\nsubseteq",!0),we(Ae,$t,Ht,"⊉","\\nsupseteq",!0),we(Ae,Ue,Ht,"⊨","\\models"),we(Ae,Ue,Ht,"←","\\leftarrow",!0),we(Ae,Ue,Ht,"≤","\\le"),we(Ae,Ue,Ht,"≤","\\leq",!0),we(Ae,Ue,Ht,"<","\\lt",!0),we(Ae,Ue,Ht,"→","\\rightarrow",!0),we(Ae,Ue,Ht,"→","\\to"),we(Ae,$t,Ht,"≱","\\ngeq",!0),we(Ae,$t,Ht,"≰","\\nleq",!0),we(Ae,Ue,I7," ","\\ "),we(Ae,Ue,I7," ","\\space"),we(Ae,Ue,I7," ","\\nobreakspace"),we(si,Ue,I7," ","\\ "),we(si,Ue,I7," "," "),we(si,Ue,I7," ","\\space"),we(si,Ue,I7," ","\\nobreakspace"),we(Ae,Ue,I7,null,"\\nobreak"),we(Ae,Ue,I7,null,"\\allowbreak"),we(Ae,Ue,oQ,",",","),we(Ae,Ue,oQ,";",";"),we(Ae,$t,ls,"⊼","\\barwedge",!0),we(Ae,$t,ls,"⊻","\\veebar",!0),we(Ae,Ue,ls,"⊙","\\odot",!0),we(Ae,Ue,ls,"⊕","\\oplus",!0),we(Ae,Ue,ls,"⊗","\\otimes",!0),we(Ae,Ue,mn,"∂","\\partial",!0),we(Ae,Ue,ls,"⊘","\\oslash",!0),we(Ae,$t,ls,"⊚","\\circledcirc",!0),we(Ae,$t,ls,"⊡","\\boxdot",!0),we(Ae,Ue,ls,"△","\\bigtriangleup"),we(Ae,Ue,ls,"▽","\\bigtriangledown"),we(Ae,Ue,ls,"†","\\dagger"),we(Ae,Ue,ls,"⋄","\\diamond"),we(Ae,Ue,ls,"⋆","\\star"),we(Ae,Ue,ls,"◃","\\triangleleft"),we(Ae,Ue,ls,"▹","\\triangleright"),we(Ae,Ue,hm,"{","\\{"),we(si,Ue,mn,"{","\\{"),we(si,Ue,mn,"{","\\textbraceleft"),we(Ae,Ue,Dp,"}","\\}"),we(si,Ue,mn,"}","\\}"),we(si,Ue,mn,"}","\\textbraceright"),we(Ae,Ue,hm,"{","\\lbrace"),we(Ae,Ue,Dp,"}","\\rbrace"),we(Ae,Ue,hm,"[","\\lbrack",!0),we(si,Ue,mn,"[","\\lbrack",!0),we(Ae,Ue,Dp,"]","\\rbrack",!0),we(si,Ue,mn,"]","\\rbrack",!0),we(Ae,Ue,hm,"(","\\lparen",!0),we(Ae,Ue,Dp,")","\\rparen",!0),we(si,Ue,mn,"<","\\textless",!0),we(si,Ue,mn,">","\\textgreater",!0),we(Ae,Ue,hm,"⌊","\\lfloor",!0),we(Ae,Ue,Dp,"⌋","\\rfloor",!0),we(Ae,Ue,hm,"⌈","\\lceil",!0),we(Ae,Ue,Dp,"⌉","\\rceil",!0),we(Ae,Ue,mn,"\\","\\backslash"),we(Ae,Ue,mn,"∣","|"),we(Ae,Ue,mn,"∣","\\vert"),we(si,Ue,mn,"|","\\textbar",!0),we(Ae,Ue,mn,"∥","\\|"),we(Ae,Ue,mn,"∥","\\Vert"),we(si,Ue,mn,"∥","\\textbardbl"),we(si,Ue,mn,"~","\\textasciitilde"),we(si,Ue,mn,"\\","\\textbackslash"),we(si,Ue,mn,"^","\\textasciicircum"),we(Ae,Ue,Ht,"↑","\\uparrow",!0),we(Ae,Ue,Ht,"⇑","\\Uparrow",!0),we(Ae,Ue,Ht,"↓","\\downarrow",!0),we(Ae,Ue,Ht,"⇓","\\Downarrow",!0),we(Ae,Ue,Ht,"↕","\\updownarrow",!0),we(Ae,Ue,Ht,"⇕","\\Updownarrow",!0),we(Ae,Ue,N0,"∐","\\coprod"),we(Ae,Ue,N0,"⋁","\\bigvee"),we(Ae,Ue,N0,"⋀","\\bigwedge"),we(Ae,Ue,N0,"⨄","\\biguplus"),we(Ae,Ue,N0,"⋂","\\bigcap"),we(Ae,Ue,N0,"⋃","\\bigcup"),we(Ae,Ue,N0,"∫","\\int"),we(Ae,Ue,N0,"∫","\\intop"),we(Ae,Ue,N0,"∬","\\iint"),we(Ae,Ue,N0,"∭","\\iiint"),we(Ae,Ue,N0,"∏","\\prod"),we(Ae,Ue,N0,"∑","\\sum"),we(Ae,Ue,N0,"⨂","\\bigotimes"),we(Ae,Ue,N0,"⨁","\\bigoplus"),we(Ae,Ue,N0,"⨀","\\bigodot"),we(Ae,Ue,N0,"∮","\\oint"),we(Ae,Ue,N0,"∯","\\oiint"),we(Ae,Ue,N0,"∰","\\oiiint"),we(Ae,Ue,N0,"⨆","\\bigsqcup"),we(Ae,Ue,N0,"∫","\\smallint"),we(si,Ue,ND,"…","\\textellipsis"),we(Ae,Ue,ND,"…","\\mathellipsis"),we(si,Ue,ND,"…","\\ldots",!0),we(Ae,Ue,ND,"…","\\ldots",!0),we(Ae,Ue,ND,"⋯","\\@cdots",!0),we(Ae,Ue,ND,"⋱","\\ddots",!0),we(Ae,Ue,mn,"⋮","\\varvdots"),we(Ae,Ue,wh,"ˊ","\\acute"),we(Ae,Ue,wh,"ˋ","\\grave"),we(Ae,Ue,wh,"¨","\\ddot"),we(Ae,Ue,wh,"~","\\tilde"),we(Ae,Ue,wh,"ˉ","\\bar"),we(Ae,Ue,wh,"˘","\\breve"),we(Ae,Ue,wh,"ˇ","\\check"),we(Ae,Ue,wh,"^","\\hat"),we(Ae,Ue,wh,"⃗","\\vec"),we(Ae,Ue,wh,"˙","\\dot"),we(Ae,Ue,wh,"˚","\\mathring"),we(Ae,Ue,Ca,"","\\@imath"),we(Ae,Ue,Ca,"","\\@jmath"),we(Ae,Ue,mn,"ı","ı"),we(Ae,Ue,mn,"ȷ","ȷ"),we(si,Ue,mn,"ı","\\i",!0),we(si,Ue,mn,"ȷ","\\j",!0),we(si,Ue,mn,"ß","\\ss",!0),we(si,Ue,mn,"æ","\\ae",!0),we(si,Ue,mn,"œ","\\oe",!0),we(si,Ue,mn,"ø","\\o",!0),we(si,Ue,mn,"Æ","\\AE",!0),we(si,Ue,mn,"Œ","\\OE",!0),we(si,Ue,mn,"Ø","\\O",!0),we(si,Ue,wh,"ˊ","\\'"),we(si,Ue,wh,"ˋ","\\`"),we(si,Ue,wh,"ˆ","\\^"),we(si,Ue,wh,"˜","\\~"),we(si,Ue,wh,"ˉ","\\="),we(si,Ue,wh,"˘","\\u"),we(si,Ue,wh,"˙","\\."),we(si,Ue,wh,"¸","\\c"),we(si,Ue,wh,"˚","\\r"),we(si,Ue,wh,"ˇ","\\v"),we(si,Ue,wh,"¨",'\\"'),we(si,Ue,wh,"˝","\\H"),we(si,Ue,wh,"◯","\\textcircled");var rze={"--":!0,"---":!0,"``":!0,"''":!0};we(si,Ue,mn,"–","--",!0),we(si,Ue,mn,"–","\\textendash"),we(si,Ue,mn,"—","---",!0),we(si,Ue,mn,"—","\\textemdash"),we(si,Ue,mn,"‘","`",!0),we(si,Ue,mn,"‘","\\textquoteleft"),we(si,Ue,mn,"’","'",!0),we(si,Ue,mn,"’","\\textquoteright"),we(si,Ue,mn,"“","``",!0),we(si,Ue,mn,"“","\\textquotedblleft"),we(si,Ue,mn,"”","''",!0),we(si,Ue,mn,"”","\\textquotedblright"),we(Ae,Ue,mn,"°","\\degree",!0),we(si,Ue,mn,"°","\\degree"),we(si,Ue,mn,"°","\\textdegree",!0),we(Ae,Ue,mn,"£","\\pounds"),we(Ae,Ue,mn,"£","\\mathsterling",!0),we(si,Ue,mn,"£","\\pounds"),we(si,Ue,mn,"£","\\textsterling",!0),we(Ae,$t,mn,"✠","\\maltese"),we(si,$t,mn,"✠","\\maltese");for(var ize='0123456789/@."',rbe=0;rbe0)return F3(v,_,p,u,b.concat(A));if(T){var P,R;if(T==="boldsymbol"){var F=mHt(v,p,u,b,d);P=F.fontName,R=[F.fontClass]}else y?(P=hze[T].fontName,R=[T]):(P=dQ(T,u.fontWeight,u.fontShape),R=[T,u.fontWeight,u.fontShape]);if(fQ(v,P,p).metrics)return F3(v,P,p,u,b.concat(R));if(rze.hasOwnProperty(v)&&P.slice(0,10)==="Typewriter"){for(var j=[],K=0;K{if(T9(i.classes)!==T9(s.classes)||i.skew!==s.skew||i.maxFontSize!==s.maxFontSize)return!1;if(i.classes.length===1){var u=i.classes[0];if(u==="mbin"||u==="mord")return!1}for(var d in i.style)if(i.style.hasOwnProperty(d)&&i.style[d]!==s.style[d])return!1;for(var p in s.style)if(s.style.hasOwnProperty(p)&&i.style[p]!==s.style[p])return!1;return!0},yHt=i=>{for(var s=0;su&&(u=b.height),b.depth>d&&(d=b.depth),b.maxFontSize>p&&(p=b.maxFontSize)}s.height=u,s.depth=d,s.maxFontSize=p},R2=function(s,u,d,p){var v=new cR(s,u,d,p);return cbe(v),v},uze=(i,s,u,d)=>new cR(i,s,u,d),xHt=function(s,u,d){var p=R2([s],[],u);return p.height=Math.max(d||u.fontMetrics().defaultRuleThickness,u.minRuleThickness),p.style.borderBottomWidth=Ri(p.height),p.maxFontSize=1,p},kHt=function(s,u,d,p){var v=new tbe(s,u,d,p);return cbe(v),v},lze=function(s){var u=new oR(s);return cbe(u),u},EHt=function(s,u){return s instanceof oR?R2([],[s],u):s},THt=function(s){if(s.positionType==="individualShift"){for(var u=s.children,d=[u[0]],p=-u[0].shift-u[0].elem.depth,v=p,b=1;b{var u=R2(["mspace"],[],s),d=Uh(i,s);return u.style.marginRight=Ri(d),u},dQ=function(s,u,d){var p="";switch(s){case"amsrm":p="AMS";break;case"textrm":p="Main";break;case"textsf":p="SansSerif";break;case"texttt":p="Typewriter";break;default:p=s}var v;return u==="textbf"&&d==="textit"?v="BoldItalic":u==="textbf"?v="Bold":u==="textit"?v="Italic":v="Regular",p+"-"+v},hze={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"}},fze={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},_Ht=function(s,u){var[d,p,v]=fze[s],b=new C9(d),y=new D7([b],{width:Ri(p),height:Ri(v),style:"width:"+Ri(p),viewBox:"0 0 "+1e3*p+" "+1e3*v,preserveAspectRatio:"xMinYMin"}),T=uze(["overlay"],[y],u);return T.height=v,T.style.height=Ri(v),T.style.width=Ri(p),T},zn={fontMap:hze,makeSymbol:F3,mathsym:bHt,makeSpan:R2,makeSvgSpan:uze,makeLineSpan:xHt,makeAnchor:kHt,makeFragment:lze,wrapFragment:EHt,makeVList:CHt,makeOrd:vHt,makeGlue:SHt,staticSvg:_Ht,svgData:fze,tryCombineChars:yHt},Gh={number:3,unit:"mu"},$C={number:4,unit:"mu"},O7={number:5,unit:"mu"},AHt={mord:{mop:Gh,mbin:$C,mrel:O7,minner:Gh},mop:{mord:Gh,mop:Gh,mrel:O7,minner:Gh},mbin:{mord:$C,mop:$C,mopen:$C,minner:$C},mrel:{mord:O7,mop:O7,mopen:O7,minner:O7},mopen:{},mclose:{mop:Gh,mbin:$C,mrel:O7,minner:Gh},mpunct:{mord:Gh,mop:Gh,mrel:O7,mopen:Gh,mclose:Gh,mpunct:Gh,minner:Gh},minner:{mord:Gh,mop:Gh,mbin:$C,mrel:O7,mopen:Gh,mpunct:Gh,minner:Gh}},LHt={mord:{mop:Gh},mop:{mord:Gh,mop:Gh},mbin:{},mrel:{},mopen:{},mclose:{mop:Gh},mpunct:{},minner:{mop:Gh}},dze={},gQ={},pQ={};function Ji(i){for(var{type:s,names:u,props:d,handler:p,htmlBuilder:v,mathmlBuilder:b}=i,y={type:s,numArgs:d.numArgs,argTypes:d.argTypes,allowedInArgument:!!d.allowedInArgument,allowedInText:!!d.allowedInText,allowedInMath:d.allowedInMath===void 0?!0:d.allowedInMath,numOptionalArgs:d.numOptionalArgs||0,infix:!!d.infix,primitive:!!d.primitive,handler:p},T=0;T{var ee=K.classes[0],ie=j.classes[0];ee==="mbin"&&Ya.contains(DHt,ie)?K.classes[0]="mord":ie==="mbin"&&Ya.contains(MHt,ee)&&(j.classes[0]="mord")},{node:P},R,F),gze(v,(j,K)=>{var ee=ube(K),ie=ube(j),oe=ee&&ie?j.hasClass("mtight")?LHt[ee][ie]:AHt[ee][ie]:null;if(oe)return zn.makeGlue(oe,_)},{node:P},R,F),v},gze=function i(s,u,d,p,v){p&&s.push(p);for(var b=0;bR=>{s.splice(P+1,0,R),b++})(b)}p&&s.pop()},pze=function(s){return s instanceof oR||s instanceof tbe||s instanceof cR&&s.hasClass("enclosing")?s:null},NHt=function i(s,u){var d=pze(s);if(d){var p=d.children;if(p.length){if(u==="right")return i(p[p.length-1],"right");if(u==="left")return i(p[0],"left")}}return s},ube=function(s,u){return s?(u&&(s=NHt(s,u)),OHt[s.classes[0]]||null):null},uR=function(s,u){var d=["nulldelimiter"].concat(s.baseSizingClasses());return N7(u.concat(d))},uu=function(s,u,d){if(!s)return N7();if(gQ[s.type]){var p=gQ[s.type](s,u);if(d&&u.size!==d.size){p=N7(u.sizingClasses(d),[p],u);var v=u.sizeMultiplier/d.sizeMultiplier;p.height*=v,p.depth*=v}return p}else throw new Ci("Got group of unknown type: '"+s.type+"'")};function mQ(i,s){var u=N7(["base"],i,s),d=N7(["strut"]);return d.style.height=Ri(u.height+u.depth),u.depth&&(d.style.verticalAlign=Ri(-u.depth)),u.children.unshift(d),u}function lbe(i,s){var u=null;i.length===1&&i[0].type==="tag"&&(u=i[0].tag,i=i[0].body);var d=d1(i,s,"root"),p;d.length===2&&d[1].hasClass("tag")&&(p=d.pop());for(var v=[],b=[],y=0;y0&&(v.push(mQ(b,s)),b=[]),v.push(d[y]));b.length>0&&v.push(mQ(b,s));var _;u?(_=mQ(d1(u,s,!0)),_.classes=["tag"],v.push(_)):p&&v.push(p);var A=N7(["katex-html"],v);if(A.setAttribute("aria-hidden","true"),_){var P=_.children[0];P.style.height=Ri(A.height+A.depth),A.depth&&(P.style.verticalAlign=Ri(-A.depth))}return A}function bze(i){return new oR(i)}class Fv{constructor(s,u,d){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=s,this.attributes={},this.children=u||[],this.classes=d||[]}setAttribute(s,u){this.attributes[s]=u}getAttribute(s){return this.attributes[s]}toNode(){var s=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var u in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,u)&&s.setAttribute(u,this.attributes[u]);this.classes.length>0&&(s.className=T9(this.classes));for(var d=0;d0&&(s+=' class ="'+Ya.escape(T9(this.classes))+'"'),s+=">";for(var d=0;d",s}toText(){return this.children.map(s=>s.toText()).join("")}}class lR{constructor(s){this.text=void 0,this.text=s}toNode(){return document.createTextNode(this.text)}toMarkup(){return Ya.escape(this.toText())}toText(){return this.text}}class PHt{constructor(s){this.width=void 0,this.character=void 0,this.width=s,s>=.05555&&s<=.05556?this.character=" ":s>=.1666&&s<=.1667?this.character=" ":s>=.2222&&s<=.2223?this.character=" ":s>=.2777&&s<=.2778?this.character=" ":s>=-.05556&&s<=-.05555?this.character=" ":s>=-.1667&&s<=-.1666?this.character=" ":s>=-.2223&&s<=-.2222?this.character=" ":s>=-.2778&&s<=-.2777?this.character=" ":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var s=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return s.setAttribute("width",Ri(this.width)),s}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}}var vi={MathNode:Fv,TextNode:lR,SpaceNode:PHt,newDocumentFragment:bze},Rv=function(s,u,d){return Ul[u][s]&&Ul[u][s].replace&&s.charCodeAt(0)!==55349&&!(rze.hasOwnProperty(s)&&d&&(d.fontFamily&&d.fontFamily.slice(4,6)==="tt"||d.font&&d.font.slice(4,6)==="tt"))&&(s=Ul[u][s].replace),new vi.TextNode(s)},hbe=function(s){return s.length===1?s[0]:new vi.MathNode("mrow",s)},fbe=function(s,u){if(u.fontFamily==="texttt")return"monospace";if(u.fontFamily==="textsf")return u.fontShape==="textit"&&u.fontWeight==="textbf"?"sans-serif-bold-italic":u.fontShape==="textit"?"sans-serif-italic":u.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(u.fontShape==="textit"&&u.fontWeight==="textbf")return"bold-italic";if(u.fontShape==="textit")return"italic";if(u.fontWeight==="textbf")return"bold";var d=u.font;if(!d||d==="mathnormal")return null;var p=s.mode;if(d==="mathit")return"italic";if(d==="boldsymbol")return s.type==="textord"?"bold":"bold-italic";if(d==="mathbf")return"bold";if(d==="mathbb")return"double-struck";if(d==="mathfrak")return"fraktur";if(d==="mathscr"||d==="mathcal")return"script";if(d==="mathsf")return"sans-serif";if(d==="mathtt")return"monospace";var v=s.text;if(Ya.contains(["\\imath","\\jmath"],v))return null;Ul[p][v]&&Ul[p][v].replace&&(v=Ul[p][v].replace);var b=zn.fontMap[d].fontName;return J2e(v,b,p)?zn.fontMap[d].variant:null},j2=function(s,u,d){if(s.length===1){var p=Ll(s[0],u);return d&&p instanceof Fv&&p.type==="mo"&&(p.setAttribute("lspace","0em"),p.setAttribute("rspace","0em")),[p]}for(var v=[],b,y=0;y0&&(P.text=P.text.slice(0,1)+"̸"+P.text.slice(1),v.pop())}}}v.push(T),b=T}return v},_9=function(s,u,d){return hbe(j2(s,u,d))},Ll=function(s,u){if(!s)return new vi.MathNode("mrow");if(pQ[s.type]){var d=pQ[s.type](s,u);return d}else throw new Ci("Got group of unknown type: '"+s.type+"'")};function mze(i,s,u,d,p){var v=j2(i,u),b;v.length===1&&v[0]instanceof Fv&&Ya.contains(["mrow","mtable"],v[0].type)?b=v[0]:b=new vi.MathNode("mrow",v);var y=new vi.MathNode("annotation",[new vi.TextNode(s)]);y.setAttribute("encoding","application/x-tex");var T=new vi.MathNode("semantics",[b,y]),_=new vi.MathNode("math",[T]);_.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),d&&_.setAttribute("display","block");var A=p?"katex":"katex-mathml";return zn.makeSpan([A],[_])}var vze=function(s){return new M7({style:s.displayMode?Ta.DISPLAY:Ta.TEXT,maxSize:s.maxSize,minRuleThickness:s.minRuleThickness})},wze=function(s,u){if(u.displayMode){var d=["katex-display"];u.leqno&&d.push("leqno"),u.fleqn&&d.push("fleqn"),s=zn.makeSpan(d,[s])}return s},BHt=function(s,u,d){var p=vze(d),v;if(d.output==="mathml")return mze(s,u,p,d.displayMode,!0);if(d.output==="html"){var b=lbe(s,p);v=zn.makeSpan(["katex"],[b])}else{var y=mze(s,u,p,d.displayMode,!1),T=lbe(s,p);v=zn.makeSpan(["katex"],[y,T])}return wze(v,d)},FHt=function(s,u,d){var p=vze(d),v=lbe(s,p),b=zn.makeSpan(["katex"],[v]);return wze(b,d)},RHt={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":"="},jHt=function(s){var u=new vi.MathNode("mo",[new vi.TextNode(RHt[s.replace(/^\\/,"")])]);return u.setAttribute("stretchy","true"),u},$Ht={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]},zHt=function(s){return s.type==="ordgroup"?s.body.length:1},qHt=function(s,u){function d(){var y=4e5,T=s.label.slice(1);if(Ya.contains(["widehat","widecheck","widetilde","utilde"],T)){var _=s,A=zHt(_.base),P,R,F;if(A>5)T==="widehat"||T==="widecheck"?(P=420,y=2364,F=.42,R=T+"4"):(P=312,y=2340,F=.34,R="tilde4");else{var j=[1,1,2,2,3,3][A];T==="widehat"||T==="widecheck"?(y=[0,1062,2364,2364,2364][j],P=[0,239,300,360,420][j],F=[0,.24,.3,.3,.36,.42][j],R=T+j):(y=[0,600,1033,2339,2340][j],P=[0,260,286,306,312][j],F=[0,.26,.286,.3,.306,.34][j],R="tilde"+j)}var K=new C9(R),ee=new D7([K],{width:"100%",height:Ri(F),viewBox:"0 0 "+y+" "+P,preserveAspectRatio:"none"});return{span:zn.makeSvgSpan([],[ee],u),minWidth:0,height:F}}else{var ie=[],oe=$Ht[T],[pe,be,ae]=oe,ne=ae/1e3,se=pe.length,de,X;if(se===1){var ge=oe[3];de=["hide-tail"],X=[ge]}else if(se===2)de=["halfarrow-left","halfarrow-right"],X=["xMinYMin","xMaxYMin"];else if(se===3)de=["brace-left","brace-center","brace-right"],X=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support
+ `+se+" children.");for(var W=0;W0&&(p.style.minWidth=Ri(v)),p},HHt=function(s,u,d,p,v){var b,y=s.height+s.depth+d+p;if(/fbox|color|angl/.test(u)){if(b=zn.makeSpan(["stretchy",u],[],v),u==="fbox"){var T=v.color&&v.getColor();T&&(b.style.borderColor=T)}}else{var _=[];/^[bx]cancel$/.test(u)&&_.push(new nbe({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(u)&&_.push(new nbe({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var A=new D7(_,{width:"100%",height:Ri(y)});b=zn.makeSvgSpan([],[A],v)}return b.height=y,b.style.height=Ri(y),b},P7={encloseSpan:HHt,mathMLnode:jHt,svgSpan:qHt};function Yo(i,s){if(!i||i.type!==s)throw new Error("Expected node of type "+s+", but got "+(i?"node of type "+i.type:String(i)));return i}function dbe(i){var s=vQ(i);if(!s)throw new Error("Expected node of symbol group type, but got "+(i?"node of type "+i.type:String(i)));return s}function vQ(i){return i&&(i.type==="atom"||gHt.hasOwnProperty(i.type))?i:null}var gbe=(i,s)=>{var u,d,p;i&&i.type==="supsub"?(d=Yo(i.base,"accent"),u=d.base,i.base=u,p=fHt(uu(i,s)),i.base=d):(d=Yo(i,"accent"),u=d.base);var v=uu(u,s.havingCrampedStyle()),b=d.isShifty&&Ya.isCharacterBox(u),y=0;if(b){var T=Ya.getBaseElem(u),_=uu(T,s.havingCrampedStyle());y=nze(_).skew}var A=d.label==="\\c",P=A?v.height+v.depth:Math.min(v.height,s.fontMetrics().xHeight),R;if(d.isStretchy)R=P7.svgSpan(d,s),R=zn.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:v},{type:"elem",elem:R,wrapperClasses:["svg-align"],wrapperStyle:y>0?{width:"calc(100% - "+Ri(2*y)+")",marginLeft:Ri(2*y)}:void 0}]},s);else{var F,j;d.label==="\\vec"?(F=zn.staticSvg("vec",s),j=zn.svgData.vec[1]):(F=zn.makeOrd({mode:d.mode,text:d.label},s,"textord"),F=nze(F),F.italic=0,j=F.width,A&&(P+=F.depth)),R=zn.makeSpan(["accent-body"],[F]);var K=d.label==="\\textcircled";K&&(R.classes.push("accent-full"),P=v.height);var ee=y;K||(ee-=j/2),R.style.left=Ri(ee),d.label==="\\textcircled"&&(R.style.top=".2em"),R=zn.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:v},{type:"kern",size:-P},{type:"elem",elem:R}]},s)}var ie=zn.makeSpan(["mord","accent"],[R],s);return p?(p.children[0]=ie,p.height=Math.max(ie.height,p.height),p.classes[0]="mord",p):ie},yze=(i,s)=>{var u=i.isStretchy?P7.mathMLnode(i.label):new vi.MathNode("mo",[Rv(i.label,i.mode)]),d=new vi.MathNode("mover",[Ll(i.base,s),u]);return d.setAttribute("accent","true"),d},VHt=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(i=>"\\"+i).join("|"));Ji({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:(i,s)=>{var u=bQ(s[0]),d=!VHt.test(i.funcName),p=!d||i.funcName==="\\widehat"||i.funcName==="\\widetilde"||i.funcName==="\\widecheck";return{type:"accent",mode:i.parser.mode,label:i.funcName,isStretchy:d,isShifty:p,base:u}},htmlBuilder:gbe,mathmlBuilder:yze}),Ji({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(i,s)=>{var u=s[0],d=i.parser.mode;return d==="math"&&(i.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+i.funcName+" works only in text mode"),d="text"),{type:"accent",mode:d,label:i.funcName,isStretchy:!1,isShifty:!0,base:u}},htmlBuilder:gbe,mathmlBuilder:yze}),Ji({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=s[0];return{type:"accentUnder",mode:u.mode,label:d,base:p}},htmlBuilder:(i,s)=>{var u=uu(i.base,s),d=P7.svgSpan(i,s),p=i.label==="\\utilde"?.12:0,v=zn.makeVList({positionType:"top",positionData:u.height,children:[{type:"elem",elem:d,wrapperClasses:["svg-align"]},{type:"kern",size:p},{type:"elem",elem:u}]},s);return zn.makeSpan(["mord","accentunder"],[v],s)},mathmlBuilder:(i,s)=>{var u=P7.mathMLnode(i.label),d=new vi.MathNode("munder",[Ll(i.base,s),u]);return d.setAttribute("accentunder","true"),d}});var wQ=i=>{var s=new vi.MathNode("mpadded",i?[i]:[]);return s.setAttribute("width","+0.6em"),s.setAttribute("lspace","0.3em"),s};Ji({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(i,s,u){var{parser:d,funcName:p}=i;return{type:"xArrow",mode:d.mode,label:p,body:s[0],below:u[0]}},htmlBuilder(i,s){var u=s.style,d=s.havingStyle(u.sup()),p=zn.wrapFragment(uu(i.body,d,s),s),v=i.label.slice(0,2)==="\\x"?"x":"cd";p.classes.push(v+"-arrow-pad");var b;i.below&&(d=s.havingStyle(u.sub()),b=zn.wrapFragment(uu(i.below,d,s),s),b.classes.push(v+"-arrow-pad"));var y=P7.svgSpan(i,s),T=-s.fontMetrics().axisHeight+.5*y.height,_=-s.fontMetrics().axisHeight-.5*y.height-.111;(p.depth>.25||i.label==="\\xleftequilibrium")&&(_-=p.depth);var A;if(b){var P=-s.fontMetrics().axisHeight+b.height+.5*y.height+.111;A=zn.makeVList({positionType:"individualShift",children:[{type:"elem",elem:p,shift:_},{type:"elem",elem:y,shift:T},{type:"elem",elem:b,shift:P}]},s)}else A=zn.makeVList({positionType:"individualShift",children:[{type:"elem",elem:p,shift:_},{type:"elem",elem:y,shift:T}]},s);return A.children[0].children[0].children[1].classes.push("svg-align"),zn.makeSpan(["mrel","x-arrow"],[A],s)},mathmlBuilder(i,s){var u=P7.mathMLnode(i.label);u.setAttribute("minsize",i.label.charAt(0)==="x"?"1.75em":"3.0em");var d;if(i.body){var p=wQ(Ll(i.body,s));if(i.below){var v=wQ(Ll(i.below,s));d=new vi.MathNode("munderover",[u,v,p])}else d=new vi.MathNode("mover",[u,p])}else if(i.below){var b=wQ(Ll(i.below,s));d=new vi.MathNode("munder",[u,b])}else d=wQ(),d=new vi.MathNode("mover",[u,d]);return d}});var UHt=zn.makeSpan;function xze(i,s){var u=d1(i.body,s,!0);return UHt([i.mclass],u,s)}function kze(i,s){var u,d=j2(i.body,s);return i.mclass==="minner"?u=new vi.MathNode("mpadded",d):i.mclass==="mord"?i.isCharacterBox?(u=d[0],u.type="mi"):u=new vi.MathNode("mi",d):(i.isCharacterBox?(u=d[0],u.type="mo"):u=new vi.MathNode("mo",d),i.mclass==="mbin"?(u.attributes.lspace="0.22em",u.attributes.rspace="0.22em"):i.mclass==="mpunct"?(u.attributes.lspace="0em",u.attributes.rspace="0.17em"):i.mclass==="mopen"||i.mclass==="mclose"?(u.attributes.lspace="0em",u.attributes.rspace="0em"):i.mclass==="minner"&&(u.attributes.lspace="0.0556em",u.attributes.width="+0.1111em")),u}Ji({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(i,s){var{parser:u,funcName:d}=i,p=s[0];return{type:"mclass",mode:u.mode,mclass:"m"+d.slice(5),body:Xf(p),isCharacterBox:Ya.isCharacterBox(p)}},htmlBuilder:xze,mathmlBuilder:kze});var yQ=i=>{var s=i.type==="ordgroup"&&i.body.length?i.body[0]:i;return s.type==="atom"&&(s.family==="bin"||s.family==="rel")?"m"+s.family:"mord"};Ji({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(i,s){var{parser:u}=i;return{type:"mclass",mode:u.mode,mclass:yQ(s[0]),body:Xf(s[1]),isCharacterBox:Ya.isCharacterBox(s[1])}}}),Ji({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(i,s){var{parser:u,funcName:d}=i,p=s[1],v=s[0],b;d!=="\\stackrel"?b=yQ(p):b="mrel";var y={type:"op",mode:p.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:d!=="\\stackrel",body:Xf(p)},T={type:"supsub",mode:v.mode,base:y,sup:d==="\\underset"?null:v,sub:d==="\\underset"?v:null};return{type:"mclass",mode:u.mode,mclass:b,body:[T],isCharacterBox:Ya.isCharacterBox(T)}},htmlBuilder:xze,mathmlBuilder:kze}),Ji({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(i,s){var{parser:u}=i;return{type:"pmb",mode:u.mode,mclass:yQ(s[0]),body:Xf(s[0])}},htmlBuilder(i,s){var u=d1(i.body,s,!0),d=zn.makeSpan([i.mclass],u,s);return d.style.textShadow="0.02em 0.01em 0.04px",d},mathmlBuilder(i,s){var u=j2(i.body,s),d=new vi.MathNode("mstyle",u);return d.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),d}});var GHt={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},Eze=()=>({type:"styling",body:[],mode:"math",style:"display"}),Tze=i=>i.type==="textord"&&i.text==="@",KHt=(i,s)=>(i.type==="mathord"||i.type==="atom")&&i.text===s;function WHt(i,s,u){var d=GHt[i];switch(d){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return u.callFunction(d,[s[0]],[s[1]]);case"\\uparrow":case"\\downarrow":{var p=u.callFunction("\\\\cdleft",[s[0]],[]),v={type:"atom",text:d,mode:"math",family:"rel"},b=u.callFunction("\\Big",[v],[]),y=u.callFunction("\\\\cdright",[s[1]],[]),T={type:"ordgroup",mode:"math",body:[p,b,y]};return u.callFunction("\\\\cdparent",[T],[])}case"\\\\cdlongequal":return u.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var _={type:"textord",text:"\\Vert",mode:"math"};return u.callFunction("\\Big",[_],[])}default:return{type:"textord",text:" ",mode:"math"}}}function YHt(i){var s=[];for(i.gullet.beginGroup(),i.gullet.macros.set("\\cr","\\\\\\relax"),i.gullet.beginGroup();;){s.push(i.parseExpression(!1,"\\\\")),i.gullet.endGroup(),i.gullet.beginGroup();var u=i.fetch().text;if(u==="&"||u==="\\\\")i.consume();else if(u==="\\end"){s[s.length-1].length===0&&s.pop();break}else throw new Ci("Expected \\\\ or \\cr or \\end",i.nextToken)}for(var d=[],p=[d],v=0;v-1))if("<>AV".indexOf(_)>-1)for(var P=0;P<2;P++){for(var R=!0,F=T+1;FAV=|." after @',b[T]);var j=WHt(_,A,i),K={type:"styling",body:[j],mode:"math",style:"display"};d.push(K),y=Eze()}v%2===0?d.push(y):d.shift(),d=[],p.push(d)}i.gullet.endGroup(),i.gullet.endGroup();var ee=new Array(p[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:p,arraystretch:1,addJot:!0,rowGaps:[null],cols:ee,colSeparationType:"CD",hLinesBeforeRow:new Array(p.length+1).fill([])}}Ji({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(i,s){var{parser:u,funcName:d}=i;return{type:"cdlabel",mode:u.mode,side:d.slice(4),label:s[0]}},htmlBuilder(i,s){var u=s.havingStyle(s.style.sup()),d=zn.wrapFragment(uu(i.label,u,s),s);return d.classes.push("cd-label-"+i.side),d.style.bottom=Ri(.8-d.depth),d.height=0,d.depth=0,d},mathmlBuilder(i,s){var u=new vi.MathNode("mrow",[Ll(i.label,s)]);return u=new vi.MathNode("mpadded",[u]),u.setAttribute("width","0"),i.side==="left"&&u.setAttribute("lspace","-1width"),u.setAttribute("voffset","0.7em"),u=new vi.MathNode("mstyle",[u]),u.setAttribute("displaystyle","false"),u.setAttribute("scriptlevel","1"),u}}),Ji({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(i,s){var{parser:u}=i;return{type:"cdlabelparent",mode:u.mode,fragment:s[0]}},htmlBuilder(i,s){var u=zn.wrapFragment(uu(i.fragment,s),s);return u.classes.push("cd-vert-arrow"),u},mathmlBuilder(i,s){return new vi.MathNode("mrow",[Ll(i.fragment,s)])}}),Ji({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(i,s){for(var{parser:u}=i,d=Yo(s[0],"ordgroup"),p=d.body,v="",b=0;b=1114111)throw new Ci("\\@char with invalid code point "+v);return T<=65535?_=String.fromCharCode(T):(T-=65536,_=String.fromCharCode((T>>10)+55296,(T&1023)+56320)),{type:"textord",mode:u.mode,text:_}}});var Cze=(i,s)=>{var u=d1(i.body,s.withColor(i.color),!1);return zn.makeFragment(u)},Sze=(i,s)=>{var u=j2(i.body,s.withColor(i.color)),d=new vi.MathNode("mstyle",u);return d.setAttribute("mathcolor",i.color),d};Ji({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(i,s){var{parser:u}=i,d=Yo(s[0],"color-token").color,p=s[1];return{type:"color",mode:u.mode,color:d,body:Xf(p)}},htmlBuilder:Cze,mathmlBuilder:Sze}),Ji({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(i,s){var{parser:u,breakOnTokenText:d}=i,p=Yo(s[0],"color-token").color;u.gullet.macros.set("\\current@color",p);var v=u.parseExpression(!0,d);return{type:"color",mode:u.mode,color:p,body:v}},htmlBuilder:Cze,mathmlBuilder:Sze}),Ji({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(i,s,u){var{parser:d}=i,p=d.gullet.future().text==="["?d.parseSizeGroup(!0):null,v=!d.settings.displayMode||!d.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:d.mode,newLine:v,size:p&&Yo(p,"size").value}},htmlBuilder(i,s){var u=zn.makeSpan(["mspace"],[],s);return i.newLine&&(u.classes.push("newline"),i.size&&(u.style.marginTop=Ri(Uh(i.size,s)))),u},mathmlBuilder(i,s){var u=new vi.MathNode("mspace");return i.newLine&&(u.setAttribute("linebreak","newline"),i.size&&u.setAttribute("height",Ri(Uh(i.size,s)))),u}});var pbe={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},_ze=i=>{var s=i.text;if(/^(?:[\\{}$^_]|EOF)$/.test(s))throw new Ci("Expected a control sequence",i);return s},XHt=i=>{var s=i.gullet.popToken();return s.text==="="&&(s=i.gullet.popToken(),s.text===" "&&(s=i.gullet.popToken())),s},Aze=(i,s,u,d)=>{var p=i.gullet.macros.get(u.text);p==null&&(u.noexpand=!0,p={tokens:[u],numArgs:0,unexpandable:!i.gullet.isExpandable(u.text)}),i.gullet.macros.set(s,p,d)};Ji({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(i){var{parser:s,funcName:u}=i;s.consumeSpaces();var d=s.fetch();if(pbe[d.text])return(u==="\\global"||u==="\\\\globallong")&&(d.text=pbe[d.text]),Yo(s.parseFunction(),"internal");throw new Ci("Invalid token after macro prefix",d)}}),Ji({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i){var{parser:s,funcName:u}=i,d=s.gullet.popToken(),p=d.text;if(/^(?:[\\{}$^_]|EOF)$/.test(p))throw new Ci("Expected a control sequence",d);for(var v=0,b,y=[[]];s.gullet.future().text!=="{";)if(d=s.gullet.popToken(),d.text==="#"){if(s.gullet.future().text==="{"){b=s.gullet.future(),y[v].push("{");break}if(d=s.gullet.popToken(),!/^[1-9]$/.test(d.text))throw new Ci('Invalid argument number "'+d.text+'"');if(parseInt(d.text)!==v+1)throw new Ci('Argument number "'+d.text+'" out of order');v++,y.push([])}else{if(d.text==="EOF")throw new Ci("Expected a macro definition");y[v].push(d.text)}var{tokens:T}=s.gullet.consumeArg();return b&&T.unshift(b),(u==="\\edef"||u==="\\xdef")&&(T=s.gullet.expandTokens(T),T.reverse()),s.gullet.macros.set(p,{tokens:T,numArgs:v,delimiters:y},u===pbe[u]),{type:"internal",mode:s.mode}}}),Ji({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i){var{parser:s,funcName:u}=i,d=_ze(s.gullet.popToken());s.gullet.consumeSpaces();var p=XHt(s);return Aze(s,d,p,u==="\\\\globallet"),{type:"internal",mode:s.mode}}}),Ji({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i){var{parser:s,funcName:u}=i,d=_ze(s.gullet.popToken()),p=s.gullet.popToken(),v=s.gullet.popToken();return Aze(s,d,v,u==="\\\\globalfuture"),s.gullet.pushToken(v),s.gullet.pushToken(p),{type:"internal",mode:s.mode}}});var hR=function(s,u,d){var p=Ul.math[s]&&Ul.math[s].replace,v=J2e(p||s,u,d);if(!v)throw new Error("Unsupported symbol "+s+" and font size "+u+".");return v},bbe=function(s,u,d,p){var v=d.havingBaseStyle(u),b=zn.makeSpan(p.concat(v.sizingClasses(d)),[s],d),y=v.sizeMultiplier/d.sizeMultiplier;return b.height*=y,b.depth*=y,b.maxFontSize=v.sizeMultiplier,b},Lze=function(s,u,d){var p=u.havingBaseStyle(d),v=(1-u.sizeMultiplier/p.sizeMultiplier)*u.fontMetrics().axisHeight;s.classes.push("delimcenter"),s.style.top=Ri(v),s.height-=v,s.depth+=v},QHt=function(s,u,d,p,v,b){var y=zn.makeSymbol(s,"Main-Regular",v,p),T=bbe(y,u,p,b);return d&&Lze(T,p,u),T},JHt=function(s,u,d,p){return zn.makeSymbol(s,"Size"+u+"-Regular",d,p)},Mze=function(s,u,d,p,v,b){var y=JHt(s,u,v,p),T=bbe(zn.makeSpan(["delimsizing","size"+u],[y],p),Ta.TEXT,p,b);return d&&Lze(T,p,Ta.TEXT),T},mbe=function(s,u,d){var p;u==="Size1-Regular"?p="delim-size1":p="delim-size4";var v=zn.makeSpan(["delimsizinginner",p],[zn.makeSpan([],[zn.makeSymbol(s,u,d)])]);return{type:"elem",elem:v}},vbe=function(s,u,d){var p=K4["Size4-Regular"][s.charCodeAt(0)]?K4["Size4-Regular"][s.charCodeAt(0)][4]:K4["Size1-Regular"][s.charCodeAt(0)][4],v=new C9("inner",iHt(s,Math.round(1e3*u))),b=new D7([v],{width:Ri(p),height:Ri(u),style:"width:"+Ri(p),viewBox:"0 0 "+1e3*p+" "+Math.round(1e3*u),preserveAspectRatio:"xMinYMin"}),y=zn.makeSvgSpan([],[b],d);return y.height=u,y.style.height=Ri(u),y.style.width=Ri(p),{type:"elem",elem:y}},wbe=.008,xQ={type:"kern",size:-1*wbe},ZHt=["|","\\lvert","\\rvert","\\vert"],eVt=["\\|","\\lVert","\\rVert","\\Vert"],Dze=function(s,u,d,p,v,b){var y,T,_,A,P="",R=0;y=_=A=s,T=null;var F="Size1-Regular";s==="\\uparrow"?_=A="⏐":s==="\\Uparrow"?_=A="‖":s==="\\downarrow"?y=_="⏐":s==="\\Downarrow"?y=_="‖":s==="\\updownarrow"?(y="\\uparrow",_="⏐",A="\\downarrow"):s==="\\Updownarrow"?(y="\\Uparrow",_="‖",A="\\Downarrow"):Ya.contains(ZHt,s)?(_="∣",P="vert",R=333):Ya.contains(eVt,s)?(_="∥",P="doublevert",R=556):s==="["||s==="\\lbrack"?(y="⎡",_="⎢",A="⎣",F="Size4-Regular",P="lbrack",R=667):s==="]"||s==="\\rbrack"?(y="⎤",_="⎥",A="⎦",F="Size4-Regular",P="rbrack",R=667):s==="\\lfloor"||s==="⌊"?(_=y="⎢",A="⎣",F="Size4-Regular",P="lfloor",R=667):s==="\\lceil"||s==="⌈"?(y="⎡",_=A="⎢",F="Size4-Regular",P="lceil",R=667):s==="\\rfloor"||s==="⌋"?(_=y="⎥",A="⎦",F="Size4-Regular",P="rfloor",R=667):s==="\\rceil"||s==="⌉"?(y="⎤",_=A="⎥",F="Size4-Regular",P="rceil",R=667):s==="("||s==="\\lparen"?(y="⎛",_="⎜",A="⎝",F="Size4-Regular",P="lparen",R=875):s===")"||s==="\\rparen"?(y="⎞",_="⎟",A="⎠",F="Size4-Regular",P="rparen",R=875):s==="\\{"||s==="\\lbrace"?(y="⎧",T="⎨",A="⎩",_="⎪",F="Size4-Regular"):s==="\\}"||s==="\\rbrace"?(y="⎫",T="⎬",A="⎭",_="⎪",F="Size4-Regular"):s==="\\lgroup"||s==="⟮"?(y="⎧",A="⎩",_="⎪",F="Size4-Regular"):s==="\\rgroup"||s==="⟯"?(y="⎫",A="⎭",_="⎪",F="Size4-Regular"):s==="\\lmoustache"||s==="⎰"?(y="⎧",A="⎭",_="⎪",F="Size4-Regular"):(s==="\\rmoustache"||s==="⎱")&&(y="⎫",A="⎩",_="⎪",F="Size4-Regular");var j=hR(y,F,v),K=j.height+j.depth,ee=hR(_,F,v),ie=ee.height+ee.depth,oe=hR(A,F,v),pe=oe.height+oe.depth,be=0,ae=1;if(T!==null){var ne=hR(T,F,v);be=ne.height+ne.depth,ae=2}var se=K+pe+be,de=Math.max(0,Math.ceil((u-se)/(ae*ie))),X=se+de*ae*ie,ge=p.fontMetrics().axisHeight;d&&(ge*=p.sizeMultiplier);var W=X/2-ge,xe=[];if(P.length>0){var U=X-K-pe,Fe=Math.round(X*1e3),Pe=sHt(P,Math.round(U*1e3)),je=new C9(P,Pe),Ie=(R/1e3).toFixed(3)+"em",Se=(Fe/1e3).toFixed(3)+"em",Ce=new D7([je],{width:Ie,height:Se,viewBox:"0 0 "+R+" "+Fe}),ke=zn.makeSvgSpan([],[Ce],p);ke.height=Fe/1e3,ke.style.width=Ie,ke.style.height=Se,xe.push({type:"elem",elem:ke})}else{if(xe.push(mbe(A,F,v)),xe.push(xQ),T===null){var Ke=X-K-pe+2*wbe;xe.push(vbe(_,Ke,p))}else{var Ft=(X-K-pe-be)/2+2*wbe;xe.push(vbe(_,Ft,p)),xe.push(xQ),xe.push(mbe(T,F,v)),xe.push(xQ),xe.push(vbe(_,Ft,p))}xe.push(xQ),xe.push(mbe(y,F,v))}var Ne=p.havingBaseStyle(Ta.TEXT),gn=zn.makeVList({positionType:"bottom",positionData:W,children:xe},Ne);return bbe(zn.makeSpan(["delimsizing","mult"],[gn],Ne),Ta.TEXT,p,b)},ybe=80,xbe=.08,kbe=function(s,u,d,p,v){var b=rHt(s,p,d),y=new C9(s,b),T=new D7([y],{width:"400em",height:Ri(u),viewBox:"0 0 400000 "+d,preserveAspectRatio:"xMinYMin slice"});return zn.makeSvgSpan(["hide-tail"],[T],v)},tVt=function(s,u){var d=u.havingBaseSizing(),p=Pze("\\surd",s*d.sizeMultiplier,Nze,d),v=d.sizeMultiplier,b=Math.max(0,u.minRuleThickness-u.fontMetrics().sqrtRuleThickness),y,T=0,_=0,A=0,P;return p.type==="small"?(A=1e3+1e3*b+ybe,s<1?v=1:s<1.4&&(v=.7),T=(1+b+xbe)/v,_=(1+b)/v,y=kbe("sqrtMain",T,A,b,u),y.style.minWidth="0.853em",P=.833/v):p.type==="large"?(A=(1e3+ybe)*fR[p.size],_=(fR[p.size]+b)/v,T=(fR[p.size]+b+xbe)/v,y=kbe("sqrtSize"+p.size,T,A,b,u),y.style.minWidth="1.02em",P=1/v):(T=s+b+xbe,_=s+b,A=Math.floor(1e3*s+b)+ybe,y=kbe("sqrtTall",T,A,b,u),y.style.minWidth="0.742em",P=1.056),y.height=_,y.style.height=Ri(T),{span:y,advanceWidth:P,ruleWidth:(u.fontMetrics().sqrtRuleThickness+b)*v}},Ize=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"],nVt=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"],Oze=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],fR=[0,1.2,1.8,2.4,3],rVt=function(s,u,d,p,v){if(s==="<"||s==="\\lt"||s==="⟨"?s="\\langle":(s===">"||s==="\\gt"||s==="⟩")&&(s="\\rangle"),Ya.contains(Ize,s)||Ya.contains(Oze,s))return Mze(s,u,!1,d,p,v);if(Ya.contains(nVt,s))return Dze(s,fR[u],!1,d,p,v);throw new Ci("Illegal delimiter: '"+s+"'")},iVt=[{type:"small",style:Ta.SCRIPTSCRIPT},{type:"small",style:Ta.SCRIPT},{type:"small",style:Ta.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],sVt=[{type:"small",style:Ta.SCRIPTSCRIPT},{type:"small",style:Ta.SCRIPT},{type:"small",style:Ta.TEXT},{type:"stack"}],Nze=[{type:"small",style:Ta.SCRIPTSCRIPT},{type:"small",style:Ta.SCRIPT},{type:"small",style:Ta.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],aVt=function(s){if(s.type==="small")return"Main-Regular";if(s.type==="large")return"Size"+s.size+"-Regular";if(s.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+s.type+"' here.")},Pze=function(s,u,d,p){for(var v=Math.min(2,3-p.style.size),b=v;bu)return d[b]}return d[d.length-1]},Bze=function(s,u,d,p,v,b){s==="<"||s==="\\lt"||s==="⟨"?s="\\langle":(s===">"||s==="\\gt"||s==="⟩")&&(s="\\rangle");var y;Ya.contains(Oze,s)?y=iVt:Ya.contains(Ize,s)?y=Nze:y=sVt;var T=Pze(s,u,y,p);return T.type==="small"?QHt(s,T.style,d,p,v,b):T.type==="large"?Mze(s,T.size,d,p,v,b):Dze(s,u,d,p,v,b)},oVt=function(s,u,d,p,v,b){var y=p.fontMetrics().axisHeight*p.sizeMultiplier,T=901,_=5/p.fontMetrics().ptPerEm,A=Math.max(u-y,d+y),P=Math.max(A/500*T,2*A-_);return Bze(s,P,!0,p,v,b)},B7={sqrtImage:tVt,sizedDelim:rVt,sizeToMaxHeight:fR,customSizedDelim:Bze,leftRightDelim:oVt},Fze={"\\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}},cVt=["(","\\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 kQ(i,s){var u=vQ(i);if(u&&Ya.contains(cVt,u.text))return u;throw u?new Ci("Invalid delimiter '"+u.text+"' after '"+s.funcName+"'",i):new Ci("Invalid delimiter type '"+i.type+"'",i)}Ji({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:(i,s)=>{var u=kQ(s[0],i);return{type:"delimsizing",mode:i.parser.mode,size:Fze[i.funcName].size,mclass:Fze[i.funcName].mclass,delim:u.text}},htmlBuilder:(i,s)=>i.delim==="."?zn.makeSpan([i.mclass]):B7.sizedDelim(i.delim,i.size,s,i.mode,[i.mclass]),mathmlBuilder:i=>{var s=[];i.delim!=="."&&s.push(Rv(i.delim,i.mode));var u=new vi.MathNode("mo",s);i.mclass==="mopen"||i.mclass==="mclose"?u.setAttribute("fence","true"):u.setAttribute("fence","false"),u.setAttribute("stretchy","true");var d=Ri(B7.sizeToMaxHeight[i.size]);return u.setAttribute("minsize",d),u.setAttribute("maxsize",d),u}});function Rze(i){if(!i.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}Ji({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(i,s)=>{var u=i.parser.gullet.macros.get("\\current@color");if(u&&typeof u!="string")throw new Ci("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:i.parser.mode,delim:kQ(s[0],i).text,color:u}}}),Ji({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(i,s)=>{var u=kQ(s[0],i),d=i.parser;++d.leftrightDepth;var p=d.parseExpression(!1);--d.leftrightDepth,d.expect("\\right",!1);var v=Yo(d.parseFunction(),"leftright-right");return{type:"leftright",mode:d.mode,body:p,left:u.text,right:v.delim,rightColor:v.color}},htmlBuilder:(i,s)=>{Rze(i);for(var u=d1(i.body,s,!0,["mopen","mclose"]),d=0,p=0,v=!1,b=0;b{Rze(i);var u=j2(i.body,s);if(i.left!=="."){var d=new vi.MathNode("mo",[Rv(i.left,i.mode)]);d.setAttribute("fence","true"),u.unshift(d)}if(i.right!=="."){var p=new vi.MathNode("mo",[Rv(i.right,i.mode)]);p.setAttribute("fence","true"),i.rightColor&&p.setAttribute("mathcolor",i.rightColor),u.push(p)}return hbe(u)}}),Ji({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(i,s)=>{var u=kQ(s[0],i);if(!i.parser.leftrightDepth)throw new Ci("\\middle without preceding \\left",u);return{type:"middle",mode:i.parser.mode,delim:u.text}},htmlBuilder:(i,s)=>{var u;if(i.delim===".")u=uR(s,[]);else{u=B7.sizedDelim(i.delim,1,s,i.mode,[]);var d={delim:i.delim,options:s};u.isMiddle=d}return u},mathmlBuilder:(i,s)=>{var u=i.delim==="\\vert"||i.delim==="|"?Rv("|","text"):Rv(i.delim,i.mode),d=new vi.MathNode("mo",[u]);return d.setAttribute("fence","true"),d.setAttribute("lspace","0.05em"),d.setAttribute("rspace","0.05em"),d}});var Ebe=(i,s)=>{var u=zn.wrapFragment(uu(i.body,s),s),d=i.label.slice(1),p=s.sizeMultiplier,v,b=0,y=Ya.isCharacterBox(i.body);if(d==="sout")v=zn.makeSpan(["stretchy","sout"]),v.height=s.fontMetrics().defaultRuleThickness/p,b=-.5*s.fontMetrics().xHeight;else if(d==="phase"){var T=Uh({number:.6,unit:"pt"},s),_=Uh({number:.35,unit:"ex"},s),A=s.havingBaseSizing();p=p/A.sizeMultiplier;var P=u.height+u.depth+T+_;u.style.paddingLeft=Ri(P/2+T);var R=Math.floor(1e3*P*p),F=tHt(R),j=new D7([new C9("phase",F)],{width:"400em",height:Ri(R/1e3),viewBox:"0 0 400000 "+R,preserveAspectRatio:"xMinYMin slice"});v=zn.makeSvgSpan(["hide-tail"],[j],s),v.style.height=Ri(P),b=u.depth+T+_}else{/cancel/.test(d)?y||u.classes.push("cancel-pad"):d==="angl"?u.classes.push("anglpad"):u.classes.push("boxpad");var K=0,ee=0,ie=0;/box/.test(d)?(ie=Math.max(s.fontMetrics().fboxrule,s.minRuleThickness),K=s.fontMetrics().fboxsep+(d==="colorbox"?0:ie),ee=K):d==="angl"?(ie=Math.max(s.fontMetrics().defaultRuleThickness,s.minRuleThickness),K=4*ie,ee=Math.max(0,.25-u.depth)):(K=y?.2:0,ee=K),v=P7.encloseSpan(u,d,K,ee,s),/fbox|boxed|fcolorbox/.test(d)?(v.style.borderStyle="solid",v.style.borderWidth=Ri(ie)):d==="angl"&&ie!==.049&&(v.style.borderTopWidth=Ri(ie),v.style.borderRightWidth=Ri(ie)),b=u.depth+ee,i.backgroundColor&&(v.style.backgroundColor=i.backgroundColor,i.borderColor&&(v.style.borderColor=i.borderColor))}var oe;if(i.backgroundColor)oe=zn.makeVList({positionType:"individualShift",children:[{type:"elem",elem:v,shift:b},{type:"elem",elem:u,shift:0}]},s);else{var pe=/cancel|phase/.test(d)?["svg-align"]:[];oe=zn.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:v,shift:b,wrapperClasses:pe}]},s)}return/cancel/.test(d)&&(oe.height=u.height,oe.depth=u.depth),/cancel/.test(d)&&!y?zn.makeSpan(["mord","cancel-lap"],[oe],s):zn.makeSpan(["mord"],[oe],s)},Tbe=(i,s)=>{var u=0,d=new vi.MathNode(i.label.indexOf("colorbox")>-1?"mpadded":"menclose",[Ll(i.body,s)]);switch(i.label){case"\\cancel":d.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":d.setAttribute("notation","downdiagonalstrike");break;case"\\phase":d.setAttribute("notation","phasorangle");break;case"\\sout":d.setAttribute("notation","horizontalstrike");break;case"\\fbox":d.setAttribute("notation","box");break;case"\\angl":d.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(u=s.fontMetrics().fboxsep*s.fontMetrics().ptPerEm,d.setAttribute("width","+"+2*u+"pt"),d.setAttribute("height","+"+2*u+"pt"),d.setAttribute("lspace",u+"pt"),d.setAttribute("voffset",u+"pt"),i.label==="\\fcolorbox"){var p=Math.max(s.fontMetrics().fboxrule,s.minRuleThickness);d.setAttribute("style","border: "+p+"em solid "+String(i.borderColor))}break;case"\\xcancel":d.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return i.backgroundColor&&d.setAttribute("mathbackground",i.backgroundColor),d};Ji({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(i,s,u){var{parser:d,funcName:p}=i,v=Yo(s[0],"color-token").color,b=s[1];return{type:"enclose",mode:d.mode,label:p,backgroundColor:v,body:b}},htmlBuilder:Ebe,mathmlBuilder:Tbe}),Ji({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(i,s,u){var{parser:d,funcName:p}=i,v=Yo(s[0],"color-token").color,b=Yo(s[1],"color-token").color,y=s[2];return{type:"enclose",mode:d.mode,label:p,backgroundColor:b,borderColor:v,body:y}},htmlBuilder:Ebe,mathmlBuilder:Tbe}),Ji({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(i,s){var{parser:u}=i;return{type:"enclose",mode:u.mode,label:"\\fbox",body:s[0]}}}),Ji({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(i,s){var{parser:u,funcName:d}=i,p=s[0];return{type:"enclose",mode:u.mode,label:d,body:p}},htmlBuilder:Ebe,mathmlBuilder:Tbe}),Ji({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(i,s){var{parser:u}=i;return{type:"enclose",mode:u.mode,label:"\\angl",body:s[0]}}});var jze={};function W4(i){for(var{type:s,names:u,props:d,handler:p,htmlBuilder:v,mathmlBuilder:b}=i,y={type:s,numArgs:d.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:p},T=0;T{var s=i.parser.settings;if(!s.displayMode)throw new Ci("{"+i.envName+"} can be used only in display mode.")};function Cbe(i){if(i.indexOf("ed")===-1)return i.indexOf("*")===-1}function A9(i,s,u){var{hskipBeforeAndAfter:d,addJot:p,cols:v,arraystretch:b,colSeparationType:y,autoTag:T,singleRow:_,emptySingleRow:A,maxNumCols:P,leqno:R}=s;if(i.gullet.beginGroup(),_||i.gullet.macros.set("\\cr","\\\\\\relax"),!b){var F=i.gullet.expandMacroAsText("\\arraystretch");if(F==null)b=1;else if(b=parseFloat(F),!b||b<0)throw new Ci("Invalid \\arraystretch: "+F)}i.gullet.beginGroup();var j=[],K=[j],ee=[],ie=[],oe=T!=null?[]:void 0;function pe(){T&&i.gullet.macros.set("\\@eqnsw","1",!0)}function be(){oe&&(i.gullet.macros.get("\\df@tag")?(oe.push(i.subparse([new U4("\\df@tag")])),i.gullet.macros.set("\\df@tag",void 0,!0)):oe.push(!!T&&i.gullet.macros.get("\\@eqnsw")==="1"))}for(pe(),ie.push(zze(i));;){var ae=i.parseExpression(!1,_?"\\end":"\\\\");i.gullet.endGroup(),i.gullet.beginGroup(),ae={type:"ordgroup",mode:i.mode,body:ae},u&&(ae={type:"styling",mode:i.mode,style:u,body:[ae]}),j.push(ae);var ne=i.fetch().text;if(ne==="&"){if(P&&j.length===P){if(_||y)throw new Ci("Too many tab characters: &",i.nextToken);i.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}i.consume()}else if(ne==="\\end"){be(),j.length===1&&ae.type==="styling"&&ae.body[0].body.length===0&&(K.length>1||!A)&&K.pop(),ie.length0&&(pe+=.25),_.push({pos:pe,isDashed:ji[xi]})}for(be(b[0]),d=0;d0&&(W+=oe,seji))for(d=0;d=y)){var Gt=void 0;(p>0||s.hskipBeforeAndAfter)&&(Gt=Ya.deflt(Ft.pregap,R),Gt!==0&&(Pe=zn.makeSpan(["arraycolsep"],[]),Pe.style.width=Ri(Gt),Fe.push(Pe)));var ln=[];for(d=0;d0){for(var Dt=zn.makeLineSpan("hline",u,A),kt=zn.makeLineSpan("hdashline",u,A),On=[{type:"elem",elem:T,shift:0}];_.length>0;){var ht=_.pop(),zr=ht.pos-xe;ht.isDashed?On.push({type:"elem",elem:kt,shift:zr}):On.push({type:"elem",elem:Dt,shift:zr})}T=zn.makeVList({positionType:"individualShift",children:On},u)}if(Ie.length===0)return zn.makeSpan(["mord"],[T],u);var yt=zn.makeVList({positionType:"individualShift",children:Ie},u);return yt=zn.makeSpan(["tag"],[yt],u),zn.makeFragment([T,yt])},uVt={c:"center ",l:"left ",r:"right "},X4=function(s,u){for(var d=[],p=new vi.MathNode("mtd",[],["mtr-glue"]),v=new vi.MathNode("mtd",[],["mml-eqn-num"]),b=0;b0){var j=s.cols,K="",ee=!1,ie=0,oe=j.length;j[0].type==="separator"&&(R+="top ",ie=1),j[j.length-1].type==="separator"&&(R+="bottom ",oe-=1);for(var pe=ie;pe0?"left ":"",R+=de[de.length-1].length>0?"right ":"";for(var X=1;X-1?"alignat":"align",v=s.envName==="split",b=A9(s.parser,{cols:d,addJot:!0,autoTag:v?void 0:Cbe(s.envName),emptySingleRow:!0,colSeparationType:p,maxNumCols:v?2:void 0,leqno:s.parser.settings.leqno},"display"),y,T=0,_={type:"ordgroup",mode:s.mode,body:[]};if(u[0]&&u[0].type==="ordgroup"){for(var A="",P=0;P0&&F&&(ee=1),d[j]={type:"align",align:K,pregap:ee,postgap:0}}return b.colSeparationType=F?"align":"alignat",b};W4({type:"array",names:["array","darray"],props:{numArgs:1},handler(i,s){var u=vQ(s[0]),d=u?[s[0]]:Yo(s[0],"ordgroup").body,p=d.map(function(b){var y=dbe(b),T=y.text;if("lcr".indexOf(T)!==-1)return{type:"align",align:T};if(T==="|")return{type:"separator",separator:"|"};if(T===":")return{type:"separator",separator:":"};throw new Ci("Unknown column alignment: "+T,b)}),v={cols:p,hskipBeforeAndAfter:!0,maxNumCols:p.length};return A9(i.parser,v,Sbe(i.envName))},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(i){var s={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[i.envName.replace("*","")],u="c",d={hskipBeforeAndAfter:!1,cols:[{type:"align",align:u}]};if(i.envName.charAt(i.envName.length-1)==="*"){var p=i.parser;if(p.consumeSpaces(),p.fetch().text==="["){if(p.consume(),p.consumeSpaces(),u=p.fetch().text,"lcr".indexOf(u)===-1)throw new Ci("Expected l or c or r",p.nextToken);p.consume(),p.consumeSpaces(),p.expect("]"),p.consume(),d.cols=[{type:"align",align:u}]}}var v=A9(i.parser,d,Sbe(i.envName)),b=Math.max(0,...v.body.map(y=>y.length));return v.cols=new Array(b).fill({type:"align",align:u}),s?{type:"leftright",mode:i.mode,body:[v],left:s[0],right:s[1],rightColor:void 0}:v},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(i){var s={arraystretch:.5},u=A9(i.parser,s,"script");return u.colSeparationType="small",u},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["subarray"],props:{numArgs:1},handler(i,s){var u=vQ(s[0]),d=u?[s[0]]:Yo(s[0],"ordgroup").body,p=d.map(function(b){var y=dbe(b),T=y.text;if("lc".indexOf(T)!==-1)return{type:"align",align:T};throw new Ci("Unknown column alignment: "+T,b)});if(p.length>1)throw new Ci("{subarray} can contain only one column");var v={cols:p,hskipBeforeAndAfter:!1,arraystretch:.5};if(v=A9(i.parser,v,"script"),v.body.length>0&&v.body[0].length>1)throw new Ci("{subarray} can contain only one column");return v},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(i){var s={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},u=A9(i.parser,s,Sbe(i.envName));return{type:"leftright",mode:i.mode,body:[u],left:i.envName.indexOf("r")>-1?".":"\\{",right:i.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:qze,htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(i){Ya.contains(["gather","gather*"],i.envName)&&EQ(i);var s={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Cbe(i.envName),emptySingleRow:!0,leqno:i.parser.settings.leqno};return A9(i.parser,s,"display")},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:qze,htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(i){EQ(i);var s={autoTag:Cbe(i.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:i.parser.settings.leqno};return A9(i.parser,s,"display")},htmlBuilder:Y4,mathmlBuilder:X4}),W4({type:"array",names:["CD"],props:{numArgs:0},handler(i){return EQ(i),YHt(i.parser)},htmlBuilder:Y4,mathmlBuilder:X4}),et("\\nonumber","\\gdef\\@eqnsw{0}"),et("\\notag","\\nonumber"),Ji({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(i,s){throw new Ci(i.funcName+" valid only within array environment")}});var Hze=jze;Ji({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(i,s){var{parser:u,funcName:d}=i,p=s[0];if(p.type!=="ordgroup")throw new Ci("Invalid environment name",p);for(var v="",b=0;b{var u=i.font,d=s.withFont(u);return uu(i.body,d)},Uze=(i,s)=>{var u=i.font,d=s.withFont(u);return Ll(i.body,d)},Gze={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Ji({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=bQ(s[0]),v=d;return v in Gze&&(v=Gze[v]),{type:"font",mode:u.mode,font:v.slice(1),body:p}},htmlBuilder:Vze,mathmlBuilder:Uze}),Ji({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(i,s)=>{var{parser:u}=i,d=s[0],p=Ya.isCharacterBox(d);return{type:"mclass",mode:u.mode,mclass:yQ(d),body:[{type:"font",mode:u.mode,font:"boldsymbol",body:d}],isCharacterBox:p}}}),Ji({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(i,s)=>{var{parser:u,funcName:d,breakOnTokenText:p}=i,{mode:v}=u,b=u.parseExpression(!0,p),y="math"+d.slice(1);return{type:"font",mode:v,font:y,body:{type:"ordgroup",mode:u.mode,body:b}}},htmlBuilder:Vze,mathmlBuilder:Uze});var Kze=(i,s)=>{var u=s;return i==="display"?u=u.id>=Ta.SCRIPT.id?u.text():Ta.DISPLAY:i==="text"&&u.size===Ta.DISPLAY.size?u=Ta.TEXT:i==="script"?u=Ta.SCRIPT:i==="scriptscript"&&(u=Ta.SCRIPTSCRIPT),u},_be=(i,s)=>{var u=Kze(i.size,s.style),d=u.fracNum(),p=u.fracDen(),v;v=s.havingStyle(d);var b=uu(i.numer,v,s);if(i.continued){var y=8.5/s.fontMetrics().ptPerEm,T=3.5/s.fontMetrics().ptPerEm;b.height=b.height0?j=3*R:j=7*R,K=s.fontMetrics().denom1):(P>0?(F=s.fontMetrics().num2,j=R):(F=s.fontMetrics().num3,j=3*R),K=s.fontMetrics().denom2);var ee;if(A){var oe=s.fontMetrics().axisHeight;F-b.depth-(oe+.5*P){var u=new vi.MathNode("mfrac",[Ll(i.numer,s),Ll(i.denom,s)]);if(!i.hasBarLine)u.setAttribute("linethickness","0px");else if(i.barSize){var d=Uh(i.barSize,s);u.setAttribute("linethickness",Ri(d))}var p=Kze(i.size,s.style);if(p.size!==s.style.size){u=new vi.MathNode("mstyle",[u]);var v=p.size===Ta.DISPLAY.size?"true":"false";u.setAttribute("displaystyle",v),u.setAttribute("scriptlevel","0")}if(i.leftDelim!=null||i.rightDelim!=null){var b=[];if(i.leftDelim!=null){var y=new vi.MathNode("mo",[new vi.TextNode(i.leftDelim.replace("\\",""))]);y.setAttribute("fence","true"),b.push(y)}if(b.push(u),i.rightDelim!=null){var T=new vi.MathNode("mo",[new vi.TextNode(i.rightDelim.replace("\\",""))]);T.setAttribute("fence","true"),b.push(T)}return hbe(b)}return u};Ji({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=s[0],v=s[1],b,y=null,T=null,_="auto";switch(d){case"\\dfrac":case"\\frac":case"\\tfrac":b=!0;break;case"\\\\atopfrac":b=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":b=!1,y="(",T=")";break;case"\\\\bracefrac":b=!1,y="\\{",T="\\}";break;case"\\\\brackfrac":b=!1,y="[",T="]";break;default:throw new Error("Unrecognized genfrac command")}switch(d){case"\\dfrac":case"\\dbinom":_="display";break;case"\\tfrac":case"\\tbinom":_="text";break}return{type:"genfrac",mode:u.mode,continued:!1,numer:p,denom:v,hasBarLine:b,leftDelim:y,rightDelim:T,size:_,barSize:null}},htmlBuilder:_be,mathmlBuilder:Abe}),Ji({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=s[0],v=s[1];return{type:"genfrac",mode:u.mode,continued:!0,numer:p,denom:v,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}}}),Ji({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(i){var{parser:s,funcName:u,token:d}=i,p;switch(u){case"\\over":p="\\frac";break;case"\\choose":p="\\binom";break;case"\\atop":p="\\\\atopfrac";break;case"\\brace":p="\\\\bracefrac";break;case"\\brack":p="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:s.mode,replaceWith:p,token:d}}});var Wze=["display","text","script","scriptscript"],Yze=function(s){var u=null;return s.length>0&&(u=s,u=u==="."?null:u),u};Ji({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(i,s){var{parser:u}=i,d=s[4],p=s[5],v=bQ(s[0]),b=v.type==="atom"&&v.family==="open"?Yze(v.text):null,y=bQ(s[1]),T=y.type==="atom"&&y.family==="close"?Yze(y.text):null,_=Yo(s[2],"size"),A,P=null;_.isBlank?A=!0:(P=_.value,A=P.number>0);var R="auto",F=s[3];if(F.type==="ordgroup"){if(F.body.length>0){var j=Yo(F.body[0],"textord");R=Wze[Number(j.text)]}}else F=Yo(F,"textord"),R=Wze[Number(F.text)];return{type:"genfrac",mode:u.mode,numer:d,denom:p,continued:!1,hasBarLine:A,barSize:P,leftDelim:b,rightDelim:T,size:R}},htmlBuilder:_be,mathmlBuilder:Abe}),Ji({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(i,s){var{parser:u,funcName:d,token:p}=i;return{type:"infix",mode:u.mode,replaceWith:"\\\\abovefrac",size:Yo(s[0],"size").value,token:p}}}),Ji({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=s[0],v=$qt(Yo(s[1],"infix").size),b=s[2],y=v.number>0;return{type:"genfrac",mode:u.mode,numer:p,denom:b,continued:!1,hasBarLine:y,barSize:v,leftDelim:null,rightDelim:null,size:"auto"}},htmlBuilder:_be,mathmlBuilder:Abe});var Xze=(i,s)=>{var u=s.style,d,p;i.type==="supsub"?(d=i.sup?uu(i.sup,s.havingStyle(u.sup()),s):uu(i.sub,s.havingStyle(u.sub()),s),p=Yo(i.base,"horizBrace")):p=Yo(i,"horizBrace");var v=uu(p.base,s.havingBaseStyle(Ta.DISPLAY)),b=P7.svgSpan(p,s),y;if(p.isOver?(y=zn.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:v},{type:"kern",size:.1},{type:"elem",elem:b}]},s),y.children[0].children[0].children[1].classes.push("svg-align")):(y=zn.makeVList({positionType:"bottom",positionData:v.depth+.1+b.height,children:[{type:"elem",elem:b},{type:"kern",size:.1},{type:"elem",elem:v}]},s),y.children[0].children[0].children[0].classes.push("svg-align")),d){var T=zn.makeSpan(["mord",p.isOver?"mover":"munder"],[y],s);p.isOver?y=zn.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:T},{type:"kern",size:.2},{type:"elem",elem:d}]},s):y=zn.makeVList({positionType:"bottom",positionData:T.depth+.2+d.height+d.depth,children:[{type:"elem",elem:d},{type:"kern",size:.2},{type:"elem",elem:T}]},s)}return zn.makeSpan(["mord",p.isOver?"mover":"munder"],[y],s)},lVt=(i,s)=>{var u=P7.mathMLnode(i.label);return new vi.MathNode(i.isOver?"mover":"munder",[Ll(i.base,s),u])};Ji({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(i,s){var{parser:u,funcName:d}=i;return{type:"horizBrace",mode:u.mode,label:d,isOver:/^\\over/.test(d),base:s[0]}},htmlBuilder:Xze,mathmlBuilder:lVt}),Ji({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(i,s)=>{var{parser:u}=i,d=s[1],p=Yo(s[0],"url").url;return u.settings.isTrusted({command:"\\href",url:p})?{type:"href",mode:u.mode,href:p,body:Xf(d)}:u.formatUnsupportedCmd("\\href")},htmlBuilder:(i,s)=>{var u=d1(i.body,s,!1);return zn.makeAnchor(i.href,[],u,s)},mathmlBuilder:(i,s)=>{var u=_9(i.body,s);return u instanceof Fv||(u=new Fv("mrow",[u])),u.setAttribute("href",i.href),u}}),Ji({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(i,s)=>{var{parser:u}=i,d=Yo(s[0],"url").url;if(!u.settings.isTrusted({command:"\\url",url:d}))return u.formatUnsupportedCmd("\\url");for(var p=[],v=0;v{var{parser:u,funcName:d,token:p}=i,v=Yo(s[0],"raw").string,b=s[1];u.settings.strict&&u.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var y,T={};switch(d){case"\\htmlClass":T.class=v,y={command:"\\htmlClass",class:v};break;case"\\htmlId":T.id=v,y={command:"\\htmlId",id:v};break;case"\\htmlStyle":T.style=v,y={command:"\\htmlStyle",style:v};break;case"\\htmlData":{for(var _=v.split(","),A=0;A<_.length;A++){var P=_[A].split("=");if(P.length!==2)throw new Ci("Error parsing key-value for \\htmlData");T["data-"+P[0].trim()]=P[1].trim()}y={command:"\\htmlData",attributes:T};break}default:throw new Error("Unrecognized html command")}return u.settings.isTrusted(y)?{type:"html",mode:u.mode,attributes:T,body:Xf(b)}:u.formatUnsupportedCmd(d)},htmlBuilder:(i,s)=>{var u=d1(i.body,s,!1),d=["enclosing"];i.attributes.class&&d.push(...i.attributes.class.trim().split(/\s+/));var p=zn.makeSpan(d,u,s);for(var v in i.attributes)v!=="class"&&i.attributes.hasOwnProperty(v)&&p.setAttribute(v,i.attributes[v]);return p},mathmlBuilder:(i,s)=>_9(i.body,s)}),Ji({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:(i,s)=>{var{parser:u}=i;return{type:"htmlmathml",mode:u.mode,html:Xf(s[0]),mathml:Xf(s[1])}},htmlBuilder:(i,s)=>{var u=d1(i.html,s,!1);return zn.makeFragment(u)},mathmlBuilder:(i,s)=>_9(i.mathml,s)});var Lbe=function(s){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(s))return{number:+s,unit:"bp"};var u=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(s);if(!u)throw new Ci("Invalid size: '"+s+"' in \\includegraphics");var d={number:+(u[1]+u[2]),unit:u[3]};if(!J$e(d))throw new Ci("Invalid unit: '"+d.unit+"' in \\includegraphics.");return d};Ji({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(i,s,u)=>{var{parser:d}=i,p={number:0,unit:"em"},v={number:.9,unit:"em"},b={number:0,unit:"em"},y="";if(u[0])for(var T=Yo(u[0],"raw").string,_=T.split(","),A=0;A<_.length;A++){var P=_[A].split("=");if(P.length===2){var R=P[1].trim();switch(P[0].trim()){case"alt":y=R;break;case"width":p=Lbe(R);break;case"height":v=Lbe(R);break;case"totalheight":b=Lbe(R);break;default:throw new Ci("Invalid key: '"+P[0]+"' in \\includegraphics.")}}}var F=Yo(s[0],"url").url;return y===""&&(y=F,y=y.replace(/^.*[\\/]/,""),y=y.substring(0,y.lastIndexOf("."))),d.settings.isTrusted({command:"\\includegraphics",url:F})?{type:"includegraphics",mode:d.mode,alt:y,width:p,height:v,totalheight:b,src:F}:d.formatUnsupportedCmd("\\includegraphics")},htmlBuilder:(i,s)=>{var u=Uh(i.height,s),d=0;i.totalheight.number>0&&(d=Uh(i.totalheight,s)-u);var p=0;i.width.number>0&&(p=Uh(i.width,s));var v={height:Ri(u+d)};p>0&&(v.width=Ri(p)),d>0&&(v.verticalAlign=Ri(-d));var b=new lHt(i.src,i.alt,v);return b.height=u,b.depth=d,b},mathmlBuilder:(i,s)=>{var u=new vi.MathNode("mglyph",[]);u.setAttribute("alt",i.alt);var d=Uh(i.height,s),p=0;if(i.totalheight.number>0&&(p=Uh(i.totalheight,s)-d,u.setAttribute("valign",Ri(-p))),u.setAttribute("height",Ri(d+p)),i.width.number>0){var v=Uh(i.width,s);u.setAttribute("width",Ri(v))}return u.setAttribute("src",i.src),u}}),Ji({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(i,s){var{parser:u,funcName:d}=i,p=Yo(s[0],"size");if(u.settings.strict){var v=d[1]==="m",b=p.value.unit==="mu";v?(b||u.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+d+" supports only mu units, "+("not "+p.value.unit+" units")),u.mode!=="math"&&u.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+d+" works only in math mode")):b&&u.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+d+" doesn't support mu units")}return{type:"kern",mode:u.mode,dimension:p.value}},htmlBuilder(i,s){return zn.makeGlue(i.dimension,s)},mathmlBuilder(i,s){var u=Uh(i.dimension,s);return new vi.SpaceNode(u)}}),Ji({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=s[0];return{type:"lap",mode:u.mode,alignment:d.slice(5),body:p}},htmlBuilder:(i,s)=>{var u;i.alignment==="clap"?(u=zn.makeSpan([],[uu(i.body,s)]),u=zn.makeSpan(["inner"],[u],s)):u=zn.makeSpan(["inner"],[uu(i.body,s)]);var d=zn.makeSpan(["fix"],[]),p=zn.makeSpan([i.alignment],[u,d],s),v=zn.makeSpan(["strut"]);return v.style.height=Ri(p.height+p.depth),p.depth&&(v.style.verticalAlign=Ri(-p.depth)),p.children.unshift(v),p=zn.makeSpan(["thinbox"],[p],s),zn.makeSpan(["mord","vbox"],[p],s)},mathmlBuilder:(i,s)=>{var u=new vi.MathNode("mpadded",[Ll(i.body,s)]);if(i.alignment!=="rlap"){var d=i.alignment==="llap"?"-1":"-0.5";u.setAttribute("lspace",d+"width")}return u.setAttribute("width","0px"),u}}),Ji({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(i,s){var{funcName:u,parser:d}=i,p=d.mode;d.switchMode("math");var v=u==="\\("?"\\)":"$",b=d.parseExpression(!1,v);return d.expect(v),d.switchMode(p),{type:"styling",mode:d.mode,style:"text",body:b}}}),Ji({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(i,s){throw new Ci("Mismatched "+i.funcName)}});var Qze=(i,s)=>{switch(s.style.size){case Ta.DISPLAY.size:return i.display;case Ta.TEXT.size:return i.text;case Ta.SCRIPT.size:return i.script;case Ta.SCRIPTSCRIPT.size:return i.scriptscript;default:return i.text}};Ji({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(i,s)=>{var{parser:u}=i;return{type:"mathchoice",mode:u.mode,display:Xf(s[0]),text:Xf(s[1]),script:Xf(s[2]),scriptscript:Xf(s[3])}},htmlBuilder:(i,s)=>{var u=Qze(i,s),d=d1(u,s,!1);return zn.makeFragment(d)},mathmlBuilder:(i,s)=>{var u=Qze(i,s);return _9(u,s)}});var Jze=(i,s,u,d,p,v,b)=>{i=zn.makeSpan([],[i]);var y=u&&Ya.isCharacterBox(u),T,_;if(s){var A=uu(s,d.havingStyle(p.sup()),d);_={elem:A,kern:Math.max(d.fontMetrics().bigOpSpacing1,d.fontMetrics().bigOpSpacing3-A.depth)}}if(u){var P=uu(u,d.havingStyle(p.sub()),d);T={elem:P,kern:Math.max(d.fontMetrics().bigOpSpacing2,d.fontMetrics().bigOpSpacing4-P.height)}}var R;if(_&&T){var F=d.fontMetrics().bigOpSpacing5+T.elem.height+T.elem.depth+T.kern+i.depth+b;R=zn.makeVList({positionType:"bottom",positionData:F,children:[{type:"kern",size:d.fontMetrics().bigOpSpacing5},{type:"elem",elem:T.elem,marginLeft:Ri(-v)},{type:"kern",size:T.kern},{type:"elem",elem:i},{type:"kern",size:_.kern},{type:"elem",elem:_.elem,marginLeft:Ri(v)},{type:"kern",size:d.fontMetrics().bigOpSpacing5}]},d)}else if(T){var j=i.height-b;R=zn.makeVList({positionType:"top",positionData:j,children:[{type:"kern",size:d.fontMetrics().bigOpSpacing5},{type:"elem",elem:T.elem,marginLeft:Ri(-v)},{type:"kern",size:T.kern},{type:"elem",elem:i}]},d)}else if(_){var K=i.depth+b;R=zn.makeVList({positionType:"bottom",positionData:K,children:[{type:"elem",elem:i},{type:"kern",size:_.kern},{type:"elem",elem:_.elem,marginLeft:Ri(v)},{type:"kern",size:d.fontMetrics().bigOpSpacing5}]},d)}else return i;var ee=[R];if(T&&v!==0&&!y){var ie=zn.makeSpan(["mspace"],[],d);ie.style.marginRight=Ri(v),ee.unshift(ie)}return zn.makeSpan(["mop","op-limits"],ee,d)},Zze=["\\smallint"],PD=(i,s)=>{var u,d,p=!1,v;i.type==="supsub"?(u=i.sup,d=i.sub,v=Yo(i.base,"op"),p=!0):v=Yo(i,"op");var b=s.style,y=!1;b.size===Ta.DISPLAY.size&&v.symbol&&!Ya.contains(Zze,v.name)&&(y=!0);var T;if(v.symbol){var _=y?"Size2-Regular":"Size1-Regular",A="";if((v.name==="\\oiint"||v.name==="\\oiiint")&&(A=v.name.slice(1),v.name=A==="oiint"?"\\iint":"\\iiint"),T=zn.makeSymbol(v.name,_,"math",s,["mop","op-symbol",y?"large-op":"small-op"]),A.length>0){var P=T.italic,R=zn.staticSvg(A+"Size"+(y?"2":"1"),s);T=zn.makeVList({positionType:"individualShift",children:[{type:"elem",elem:T,shift:0},{type:"elem",elem:R,shift:y?.08:0}]},s),v.name="\\"+A,T.classes.unshift("mop"),T.italic=P}}else if(v.body){var F=d1(v.body,s,!0);F.length===1&&F[0]instanceof Bv?(T=F[0],T.classes[0]="mop"):T=zn.makeSpan(["mop"],F,s)}else{for(var j=[],K=1;K{var u;if(i.symbol)u=new Fv("mo",[Rv(i.name,i.mode)]),Ya.contains(Zze,i.name)&&u.setAttribute("largeop","false");else if(i.body)u=new Fv("mo",j2(i.body,s));else{u=new Fv("mi",[new lR(i.name.slice(1))]);var d=new Fv("mo",[Rv("","text")]);i.parentIsSupSub?u=new Fv("mrow",[u,d]):u=bze([u,d])}return u},hVt={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","⋁":"\\bigvee","⋂":"\\bigcap","⋃":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};Ji({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","⋁","⋂","⋃","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=d;return p.length===1&&(p=hVt[p]),{type:"op",mode:u.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:p}},htmlBuilder:PD,mathmlBuilder:dR}),Ji({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(i,s)=>{var{parser:u}=i,d=s[0];return{type:"op",mode:u.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:Xf(d)}},htmlBuilder:PD,mathmlBuilder:dR});var fVt={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};Ji({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(i){var{parser:s,funcName:u}=i;return{type:"op",mode:s.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:u}},htmlBuilder:PD,mathmlBuilder:dR}),Ji({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(i){var{parser:s,funcName:u}=i;return{type:"op",mode:s.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:u}},htmlBuilder:PD,mathmlBuilder:dR}),Ji({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0},handler(i){var{parser:s,funcName:u}=i,d=u;return d.length===1&&(d=fVt[d]),{type:"op",mode:s.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:d}},htmlBuilder:PD,mathmlBuilder:dR});var eqe=(i,s)=>{var u,d,p=!1,v;i.type==="supsub"?(u=i.sup,d=i.sub,v=Yo(i.base,"operatorname"),p=!0):v=Yo(i,"operatorname");var b;if(v.body.length>0){for(var y=v.body.map(P=>{var R=P.text;return typeof R=="string"?{type:"textord",mode:P.mode,text:R}:P}),T=d1(y,s.withFont("mathrm"),!0),_=0;_{for(var u=j2(i.body,s.withFont("mathrm")),d=!0,p=0;pA.toText()).join("");u=[new vi.TextNode(y)]}var T=new vi.MathNode("mi",u);T.setAttribute("mathvariant","normal");var _=new vi.MathNode("mo",[Rv("","text")]);return i.parentIsSupSub?new vi.MathNode("mrow",[T,_]):vi.newDocumentFragment([T,_])};Ji({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(i,s)=>{var{parser:u,funcName:d}=i,p=s[0];return{type:"operatorname",mode:u.mode,body:Xf(p),alwaysHandleSupSub:d==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:eqe,mathmlBuilder:dVt}),et("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@"),zC({type:"ordgroup",htmlBuilder(i,s){return i.semisimple?zn.makeFragment(d1(i.body,s,!1)):zn.makeSpan(["mord"],d1(i.body,s,!0),s)},mathmlBuilder(i,s){return _9(i.body,s,!0)}}),Ji({type:"overline",names:["\\overline"],props:{numArgs:1},handler(i,s){var{parser:u}=i,d=s[0];return{type:"overline",mode:u.mode,body:d}},htmlBuilder(i,s){var u=uu(i.body,s.havingCrampedStyle()),d=zn.makeLineSpan("overline-line",s),p=s.fontMetrics().defaultRuleThickness,v=zn.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:3*p},{type:"elem",elem:d},{type:"kern",size:p}]},s);return zn.makeSpan(["mord","overline"],[v],s)},mathmlBuilder(i,s){var u=new vi.MathNode("mo",[new vi.TextNode("‾")]);u.setAttribute("stretchy","true");var d=new vi.MathNode("mover",[Ll(i.body,s),u]);return d.setAttribute("accent","true"),d}}),Ji({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(i,s)=>{var{parser:u}=i,d=s[0];return{type:"phantom",mode:u.mode,body:Xf(d)}},htmlBuilder:(i,s)=>{var u=d1(i.body,s.withPhantom(),!1);return zn.makeFragment(u)},mathmlBuilder:(i,s)=>{var u=j2(i.body,s);return new vi.MathNode("mphantom",u)}}),Ji({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:(i,s)=>{var{parser:u}=i,d=s[0];return{type:"hphantom",mode:u.mode,body:d}},htmlBuilder:(i,s)=>{var u=zn.makeSpan([],[uu(i.body,s.withPhantom())]);if(u.height=0,u.depth=0,u.children)for(var d=0;d{var u=j2(Xf(i.body),s),d=new vi.MathNode("mphantom",u),p=new vi.MathNode("mpadded",[d]);return p.setAttribute("height","0px"),p.setAttribute("depth","0px"),p}}),Ji({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(i,s)=>{var{parser:u}=i,d=s[0];return{type:"vphantom",mode:u.mode,body:d}},htmlBuilder:(i,s)=>{var u=zn.makeSpan(["inner"],[uu(i.body,s.withPhantom())]),d=zn.makeSpan(["fix"],[]);return zn.makeSpan(["mord","rlap"],[u,d],s)},mathmlBuilder:(i,s)=>{var u=j2(Xf(i.body),s),d=new vi.MathNode("mphantom",u),p=new vi.MathNode("mpadded",[d]);return p.setAttribute("width","0px"),p}}),Ji({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(i,s){var{parser:u}=i,d=Yo(s[0],"size").value,p=s[1];return{type:"raisebox",mode:u.mode,dy:d,body:p}},htmlBuilder(i,s){var u=uu(i.body,s),d=Uh(i.dy,s);return zn.makeVList({positionType:"shift",positionData:-d,children:[{type:"elem",elem:u}]},s)},mathmlBuilder(i,s){var u=new vi.MathNode("mpadded",[Ll(i.body,s)]),d=i.dy.number+i.dy.unit;return u.setAttribute("voffset",d),u}}),Ji({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(i){var{parser:s}=i;return{type:"internal",mode:s.mode}}}),Ji({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(i,s,u){var{parser:d}=i,p=u[0],v=Yo(s[0],"size"),b=Yo(s[1],"size");return{type:"rule",mode:d.mode,shift:p&&Yo(p,"size").value,width:v.value,height:b.value}},htmlBuilder(i,s){var u=zn.makeSpan(["mord","rule"],[],s),d=Uh(i.width,s),p=Uh(i.height,s),v=i.shift?Uh(i.shift,s):0;return u.style.borderRightWidth=Ri(d),u.style.borderTopWidth=Ri(p),u.style.bottom=Ri(v),u.width=d,u.height=p+v,u.depth=-v,u.maxFontSize=p*1.125*s.sizeMultiplier,u},mathmlBuilder(i,s){var u=Uh(i.width,s),d=Uh(i.height,s),p=i.shift?Uh(i.shift,s):0,v=s.color&&s.getColor()||"black",b=new vi.MathNode("mspace");b.setAttribute("mathbackground",v),b.setAttribute("width",Ri(u)),b.setAttribute("height",Ri(d));var y=new vi.MathNode("mpadded",[b]);return p>=0?y.setAttribute("height",Ri(p)):(y.setAttribute("height",Ri(p)),y.setAttribute("depth",Ri(-p))),y.setAttribute("voffset",Ri(p)),y}});function tqe(i,s,u){for(var d=d1(i,s,!1),p=s.sizeMultiplier/u.sizeMultiplier,v=0;v{var u=s.havingSize(i.size);return tqe(i.body,u,s)};Ji({type:"sizing",names:nqe,props:{numArgs:0,allowedInText:!0},handler:(i,s)=>{var{breakOnTokenText:u,funcName:d,parser:p}=i,v=p.parseExpression(!1,u);return{type:"sizing",mode:p.mode,size:nqe.indexOf(d)+1,body:v}},htmlBuilder:gVt,mathmlBuilder:(i,s)=>{var u=s.havingSize(i.size),d=j2(i.body,u),p=new vi.MathNode("mstyle",d);return p.setAttribute("mathsize",Ri(u.sizeMultiplier)),p}}),Ji({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(i,s,u)=>{var{parser:d}=i,p=!1,v=!1,b=u[0]&&Yo(u[0],"ordgroup");if(b)for(var y="",T=0;T{var u=zn.makeSpan([],[uu(i.body,s)]);if(!i.smashHeight&&!i.smashDepth)return u;if(i.smashHeight&&(u.height=0,u.children))for(var d=0;d{var u=new vi.MathNode("mpadded",[Ll(i.body,s)]);return i.smashHeight&&u.setAttribute("height","0px"),i.smashDepth&&u.setAttribute("depth","0px"),u}}),Ji({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(i,s,u){var{parser:d}=i,p=u[0],v=s[0];return{type:"sqrt",mode:d.mode,body:v,index:p}},htmlBuilder(i,s){var u=uu(i.body,s.havingCrampedStyle());u.height===0&&(u.height=s.fontMetrics().xHeight),u=zn.wrapFragment(u,s);var d=s.fontMetrics(),p=d.defaultRuleThickness,v=p;s.style.idu.height+u.depth+b&&(b=(b+P-u.height-u.depth)/2);var R=T.height-u.height-b-_;u.style.paddingLeft=Ri(A);var F=zn.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u,wrapperClasses:["svg-align"]},{type:"kern",size:-(u.height+R)},{type:"elem",elem:T},{type:"kern",size:_}]},s);if(i.index){var j=s.havingStyle(Ta.SCRIPTSCRIPT),K=uu(i.index,j,s),ee=.6*(F.height-F.depth),ie=zn.makeVList({positionType:"shift",positionData:-ee,children:[{type:"elem",elem:K}]},s),oe=zn.makeSpan(["root"],[ie]);return zn.makeSpan(["mord","sqrt"],[oe,F],s)}else return zn.makeSpan(["mord","sqrt"],[F],s)},mathmlBuilder(i,s){var{body:u,index:d}=i;return d?new vi.MathNode("mroot",[Ll(u,s),Ll(d,s)]):new vi.MathNode("msqrt",[Ll(u,s)])}});var rqe={display:Ta.DISPLAY,text:Ta.TEXT,script:Ta.SCRIPT,scriptscript:Ta.SCRIPTSCRIPT};Ji({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i,s){var{breakOnTokenText:u,funcName:d,parser:p}=i,v=p.parseExpression(!0,u),b=d.slice(1,d.length-5);return{type:"styling",mode:p.mode,style:b,body:v}},htmlBuilder(i,s){var u=rqe[i.style],d=s.havingStyle(u).withFont("");return tqe(i.body,d,s)},mathmlBuilder(i,s){var u=rqe[i.style],d=s.havingStyle(u),p=j2(i.body,d),v=new vi.MathNode("mstyle",p),b={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},y=b[i.style];return v.setAttribute("scriptlevel",y[0]),v.setAttribute("displaystyle",y[1]),v}});var pVt=function(s,u){var d=s.base;if(d)if(d.type==="op"){var p=d.limits&&(u.style.size===Ta.DISPLAY.size||d.alwaysHandleSupSub);return p?PD:null}else if(d.type==="operatorname"){var v=d.alwaysHandleSupSub&&(u.style.size===Ta.DISPLAY.size||d.limits);return v?eqe:null}else{if(d.type==="accent")return Ya.isCharacterBox(d.base)?gbe:null;if(d.type==="horizBrace"){var b=!s.sub;return b===d.isOver?Xze:null}else return null}else return null};zC({type:"supsub",htmlBuilder(i,s){var u=pVt(i,s);if(u)return u(i,s);var{base:d,sup:p,sub:v}=i,b=uu(d,s),y,T,_=s.fontMetrics(),A=0,P=0,R=d&&Ya.isCharacterBox(d);if(p){var F=s.havingStyle(s.style.sup());y=uu(p,F,s),R||(A=b.height-F.fontMetrics().supDrop*F.sizeMultiplier/s.sizeMultiplier)}if(v){var j=s.havingStyle(s.style.sub());T=uu(v,j,s),R||(P=b.depth+j.fontMetrics().subDrop*j.sizeMultiplier/s.sizeMultiplier)}var K;s.style===Ta.DISPLAY?K=_.sup1:s.style.cramped?K=_.sup3:K=_.sup2;var ee=s.sizeMultiplier,ie=Ri(.5/_.ptPerEm/ee),oe=null;if(T){var pe=i.base&&i.base.type==="op"&&i.base.name&&(i.base.name==="\\oiint"||i.base.name==="\\oiiint");(b instanceof Bv||pe)&&(oe=Ri(-b.italic))}var be;if(y&&T){A=Math.max(A,K,y.depth+.25*_.xHeight),P=Math.max(P,_.sub2);var ae=_.defaultRuleThickness,ne=4*ae;if(A-y.depth-(T.height-P)0&&(A+=se,P-=se)}var de=[{type:"elem",elem:T,shift:P,marginRight:ie,marginLeft:oe},{type:"elem",elem:y,shift:-A,marginRight:ie}];be=zn.makeVList({positionType:"individualShift",children:de},s)}else if(T){P=Math.max(P,_.sub1,T.height-.8*_.xHeight);var X=[{type:"elem",elem:T,marginLeft:oe,marginRight:ie}];be=zn.makeVList({positionType:"shift",positionData:P,children:X},s)}else if(y)A=Math.max(A,K,y.depth+.25*_.xHeight),be=zn.makeVList({positionType:"shift",positionData:-A,children:[{type:"elem",elem:y,marginRight:ie}]},s);else throw new Error("supsub must have either sup or sub.");var ge=ube(b,"right")||"mord";return zn.makeSpan([ge],[b,zn.makeSpan(["msupsub"],[be])],s)},mathmlBuilder(i,s){var u=!1,d,p;i.base&&i.base.type==="horizBrace"&&(p=!!i.sup,p===i.base.isOver&&(u=!0,d=i.base.isOver)),i.base&&(i.base.type==="op"||i.base.type==="operatorname")&&(i.base.parentIsSupSub=!0);var v=[Ll(i.base,s)];i.sub&&v.push(Ll(i.sub,s)),i.sup&&v.push(Ll(i.sup,s));var b;if(u)b=d?"mover":"munder";else if(i.sub)if(i.sup){var _=i.base;_&&_.type==="op"&&_.limits&&s.style===Ta.DISPLAY||_&&_.type==="operatorname"&&_.alwaysHandleSupSub&&(s.style===Ta.DISPLAY||_.limits)?b="munderover":b="msubsup"}else{var T=i.base;T&&T.type==="op"&&T.limits&&(s.style===Ta.DISPLAY||T.alwaysHandleSupSub)||T&&T.type==="operatorname"&&T.alwaysHandleSupSub&&(T.limits||s.style===Ta.DISPLAY)?b="munder":b="msub"}else{var y=i.base;y&&y.type==="op"&&y.limits&&(s.style===Ta.DISPLAY||y.alwaysHandleSupSub)||y&&y.type==="operatorname"&&y.alwaysHandleSupSub&&(y.limits||s.style===Ta.DISPLAY)?b="mover":b="msup"}return new vi.MathNode(b,v)}}),zC({type:"atom",htmlBuilder(i,s){return zn.mathsym(i.text,i.mode,s,["m"+i.family])},mathmlBuilder(i,s){var u=new vi.MathNode("mo",[Rv(i.text,i.mode)]);if(i.family==="bin"){var d=fbe(i,s);d==="bold-italic"&&u.setAttribute("mathvariant",d)}else i.family==="punct"?u.setAttribute("separator","true"):(i.family==="open"||i.family==="close")&&u.setAttribute("stretchy","false");return u}});var iqe={mi:"italic",mn:"normal",mtext:"normal"};zC({type:"mathord",htmlBuilder(i,s){return zn.makeOrd(i,s,"mathord")},mathmlBuilder(i,s){var u=new vi.MathNode("mi",[Rv(i.text,i.mode,s)]),d=fbe(i,s)||"italic";return d!==iqe[u.type]&&u.setAttribute("mathvariant",d),u}}),zC({type:"textord",htmlBuilder(i,s){return zn.makeOrd(i,s,"textord")},mathmlBuilder(i,s){var u=Rv(i.text,i.mode,s),d=fbe(i,s)||"normal",p;return i.mode==="text"?p=new vi.MathNode("mtext",[u]):/[0-9]/.test(i.text)?p=new vi.MathNode("mn",[u]):i.text==="\\prime"?p=new vi.MathNode("mo",[u]):p=new vi.MathNode("mi",[u]),d!==iqe[p.type]&&p.setAttribute("mathvariant",d),p}});var Mbe={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Dbe={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};zC({type:"spacing",htmlBuilder(i,s){if(Dbe.hasOwnProperty(i.text)){var u=Dbe[i.text].className||"";if(i.mode==="text"){var d=zn.makeOrd(i,s,"textord");return d.classes.push(u),d}else return zn.makeSpan(["mspace",u],[zn.mathsym(i.text,i.mode,s)],s)}else{if(Mbe.hasOwnProperty(i.text))return zn.makeSpan(["mspace",Mbe[i.text]],[],s);throw new Ci('Unknown type of space "'+i.text+'"')}},mathmlBuilder(i,s){var u;if(Dbe.hasOwnProperty(i.text))u=new vi.MathNode("mtext",[new vi.TextNode(" ")]);else{if(Mbe.hasOwnProperty(i.text))return new vi.MathNode("mspace");throw new Ci('Unknown type of space "'+i.text+'"')}return u}});var sqe=()=>{var i=new vi.MathNode("mtd",[]);return i.setAttribute("width","50%"),i};zC({type:"tag",mathmlBuilder(i,s){var u=new vi.MathNode("mtable",[new vi.MathNode("mtr",[sqe(),new vi.MathNode("mtd",[_9(i.body,s)]),sqe(),new vi.MathNode("mtd",[_9(i.tag,s)])])]);return u.setAttribute("width","100%"),u}});var aqe={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},oqe={"\\textbf":"textbf","\\textmd":"textmd"},bVt={"\\textit":"textit","\\textup":"textup"},cqe=(i,s)=>{var u=i.font;return u?aqe[u]?s.withTextFontFamily(aqe[u]):oqe[u]?s.withTextFontWeight(oqe[u]):s.withTextFontShape(bVt[u]):s};Ji({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(i,s){var{parser:u,funcName:d}=i,p=s[0];return{type:"text",mode:u.mode,body:Xf(p),font:d}},htmlBuilder(i,s){var u=cqe(i,s),d=d1(i.body,u,!0);return zn.makeSpan(["mord","text"],d,u)},mathmlBuilder(i,s){var u=cqe(i,s);return _9(i.body,u)}}),Ji({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(i,s){var{parser:u}=i;return{type:"underline",mode:u.mode,body:s[0]}},htmlBuilder(i,s){var u=uu(i.body,s),d=zn.makeLineSpan("underline-line",s),p=s.fontMetrics().defaultRuleThickness,v=zn.makeVList({positionType:"top",positionData:u.height,children:[{type:"kern",size:p},{type:"elem",elem:d},{type:"kern",size:3*p},{type:"elem",elem:u}]},s);return zn.makeSpan(["mord","underline"],[v],s)},mathmlBuilder(i,s){var u=new vi.MathNode("mo",[new vi.TextNode("‾")]);u.setAttribute("stretchy","true");var d=new vi.MathNode("munder",[Ll(i.body,s),u]);return d.setAttribute("accentunder","true"),d}}),Ji({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(i,s){var{parser:u}=i;return{type:"vcenter",mode:u.mode,body:s[0]}},htmlBuilder(i,s){var u=uu(i.body,s),d=s.fontMetrics().axisHeight,p=.5*(u.height-d-(u.depth+d));return zn.makeVList({positionType:"shift",positionData:p,children:[{type:"elem",elem:u}]},s)},mathmlBuilder(i,s){return new vi.MathNode("mpadded",[Ll(i.body,s)],["vcenter"])}}),Ji({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(i,s,u){throw new Ci("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(i,s){for(var u=uqe(i),d=[],p=s.havingStyle(s.style.text()),v=0;vi.body.replace(/ /g,i.star?"␣":" "),L9=dze,lqe=`[ \r
+ ]`,mVt="\\\\[a-zA-Z@]+",vVt="\\\\[^\uD800-\uDFFF]",wVt="("+mVt+")"+lqe+"*",yVt=`\\\\(
+|[ \r ]+
+?)[ \r ]*`,Ibe="[̀-ͯ]",xVt=new RegExp(Ibe+"+$"),kVt="("+lqe+"+)|"+(yVt+"|")+"([!-\\[\\]-‧-豈-]"+(Ibe+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(Ibe+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+wVt)+("|"+vVt+")");class hqe{constructor(s,u){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=s,this.settings=u,this.tokenRegex=new RegExp(kVt,"g"),this.catcodes={"%":14,"~":13}}setCatcode(s,u){this.catcodes[s]=u}lex(){var s=this.input,u=this.tokenRegex.lastIndex;if(u===s.length)return new U4("EOF",new lm(this,u,u));var d=this.tokenRegex.exec(s);if(d===null||d.index!==u)throw new Ci("Unexpected character: '"+s[u]+"'",new U4(s[u],new lm(this,u,u+1)));var p=d[6]||d[3]||(d[2]?"\\ ":" ");if(this.catcodes[p]===14){var v=s.indexOf(`
+`,this.tokenRegex.lastIndex);return v===-1?(this.tokenRegex.lastIndex=s.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=v+1,this.lex()}return new U4(p,new lm(this,u,this.tokenRegex.lastIndex))}}class EVt{constructor(s,u){s===void 0&&(s={}),u===void 0&&(u={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=u,this.builtins=s,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new Ci("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var s=this.undefStack.pop();for(var u in s)s.hasOwnProperty(u)&&(s[u]==null?delete this.current[u]:this.current[u]=s[u])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(s){return this.current.hasOwnProperty(s)||this.builtins.hasOwnProperty(s)}get(s){return this.current.hasOwnProperty(s)?this.current[s]:this.builtins[s]}set(s,u,d){if(d===void 0&&(d=!1),d){for(var p=0;p0&&(this.undefStack[this.undefStack.length-1][s]=u)}else{var v=this.undefStack[this.undefStack.length-1];v&&!v.hasOwnProperty(s)&&(v[s]=this.current[s])}u==null?delete this.current[s]:this.current[s]=u}}var TVt=$ze;et("\\noexpand",function(i){var s=i.popToken();return i.isExpandable(s.text)&&(s.noexpand=!0,s.treatAsRelax=!0),{tokens:[s],numArgs:0}}),et("\\expandafter",function(i){var s=i.popToken();return i.expandOnce(!0),{tokens:[s],numArgs:0}}),et("\\@firstoftwo",function(i){var s=i.consumeArgs(2);return{tokens:s[0],numArgs:0}}),et("\\@secondoftwo",function(i){var s=i.consumeArgs(2);return{tokens:s[1],numArgs:0}}),et("\\@ifnextchar",function(i){var s=i.consumeArgs(3);i.consumeSpaces();var u=i.future();return s[0].length===1&&s[0][0].text===u.text?{tokens:s[1],numArgs:0}:{tokens:s[2],numArgs:0}}),et("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),et("\\TextOrMath",function(i){var s=i.consumeArgs(2);return i.mode==="text"?{tokens:s[0],numArgs:0}:{tokens:s[1],numArgs:0}});var fqe={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};et("\\char",function(i){var s=i.popToken(),u,d="";if(s.text==="'")u=8,s=i.popToken();else if(s.text==='"')u=16,s=i.popToken();else if(s.text==="`")if(s=i.popToken(),s.text[0]==="\\")d=s.text.charCodeAt(1);else{if(s.text==="EOF")throw new Ci("\\char` missing argument");d=s.text.charCodeAt(0)}else u=10;if(u){if(d=fqe[s.text],d==null||d>=u)throw new Ci("Invalid base-"+u+" digit "+s.text);for(var p;(p=fqe[i.future().text])!=null&&p{var d=i.consumeArg().tokens;if(d.length!==1)throw new Ci("\\newcommand's first argument must be a macro name");var p=d[0].text,v=i.isDefined(p);if(v&&!s)throw new Ci("\\newcommand{"+p+"} attempting to redefine "+(p+"; use \\renewcommand"));if(!v&&!u)throw new Ci("\\renewcommand{"+p+"} when command "+p+" does not yet exist; use \\newcommand");var b=0;if(d=i.consumeArg().tokens,d.length===1&&d[0].text==="["){for(var y="",T=i.expandNextToken();T.text!=="]"&&T.text!=="EOF";)y+=T.text,T=i.expandNextToken();if(!y.match(/^\s*[0-9]+\s*$/))throw new Ci("Invalid number of arguments: "+y);b=parseInt(y),d=i.consumeArg().tokens}return i.macros.set(p,{tokens:d,numArgs:b}),""};et("\\newcommand",i=>Obe(i,!1,!0)),et("\\renewcommand",i=>Obe(i,!0,!1)),et("\\providecommand",i=>Obe(i,!0,!0)),et("\\message",i=>{var s=i.consumeArgs(1)[0];return console.log(s.reverse().map(u=>u.text).join("")),""}),et("\\errmessage",i=>{var s=i.consumeArgs(1)[0];return console.error(s.reverse().map(u=>u.text).join("")),""}),et("\\show",i=>{var s=i.popToken(),u=s.text;return console.log(s,i.macros.get(u),L9[u],Ul.math[u],Ul.text[u]),""}),et("\\bgroup","{"),et("\\egroup","}"),et("~","\\nobreakspace"),et("\\lq","`"),et("\\rq","'"),et("\\aa","\\r a"),et("\\AA","\\r A"),et("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}"),et("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"),et("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}"),et("ℬ","\\mathscr{B}"),et("ℰ","\\mathscr{E}"),et("ℱ","\\mathscr{F}"),et("ℋ","\\mathscr{H}"),et("ℐ","\\mathscr{I}"),et("ℒ","\\mathscr{L}"),et("ℳ","\\mathscr{M}"),et("ℛ","\\mathscr{R}"),et("ℭ","\\mathfrak{C}"),et("ℌ","\\mathfrak{H}"),et("ℨ","\\mathfrak{Z}"),et("\\Bbbk","\\Bbb{k}"),et("·","\\cdotp"),et("\\llap","\\mathllap{\\textrm{#1}}"),et("\\rlap","\\mathrlap{\\textrm{#1}}"),et("\\clap","\\mathclap{\\textrm{#1}}"),et("\\mathstrut","\\vphantom{(}"),et("\\underbar","\\underline{\\text{#1}}"),et("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'),et("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}"),et("\\ne","\\neq"),et("≠","\\neq"),et("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`∉}}"),et("∉","\\notin"),et("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`≘}}"),et("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}"),et("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}"),et("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`≛}}"),et("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`≝}}"),et("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`≞}}"),et("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}"),et("⟂","\\perp"),et("‼","\\mathclose{!\\mkern-0.8mu!}"),et("∌","\\notni"),et("⌜","\\ulcorner"),et("⌝","\\urcorner"),et("⌞","\\llcorner"),et("⌟","\\lrcorner"),et("©","\\copyright"),et("®","\\textregistered"),et("️","\\textregistered"),et("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'),et("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'),et("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'),et("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'),et("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}"),et("⋮","\\vdots"),et("\\varGamma","\\mathit{\\Gamma}"),et("\\varDelta","\\mathit{\\Delta}"),et("\\varTheta","\\mathit{\\Theta}"),et("\\varLambda","\\mathit{\\Lambda}"),et("\\varXi","\\mathit{\\Xi}"),et("\\varPi","\\mathit{\\Pi}"),et("\\varSigma","\\mathit{\\Sigma}"),et("\\varUpsilon","\\mathit{\\Upsilon}"),et("\\varPhi","\\mathit{\\Phi}"),et("\\varPsi","\\mathit{\\Psi}"),et("\\varOmega","\\mathit{\\Omega}"),et("\\substack","\\begin{subarray}{c}#1\\end{subarray}"),et("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax"),et("\\boxed","\\fbox{$\\displaystyle{#1}$}"),et("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;"),et("\\implies","\\DOTSB\\;\\Longrightarrow\\;"),et("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");var dqe={",":"\\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"};et("\\dots",function(i){var s="\\dotso",u=i.expandAfterFuture().text;return u in dqe?s=dqe[u]:(u.slice(0,4)==="\\not"||u in Ul.math&&Ya.contains(["bin","rel"],Ul.math[u].group))&&(s="\\dotsb"),s});var Nbe={")":!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};et("\\dotso",function(i){var s=i.future().text;return s in Nbe?"\\ldots\\,":"\\ldots"}),et("\\dotsc",function(i){var s=i.future().text;return s in Nbe&&s!==","?"\\ldots\\,":"\\ldots"}),et("\\cdots",function(i){var s=i.future().text;return s in Nbe?"\\@cdots\\,":"\\@cdots"}),et("\\dotsb","\\cdots"),et("\\dotsm","\\cdots"),et("\\dotsi","\\!\\cdots"),et("\\dotsx","\\ldots\\,"),et("\\DOTSI","\\relax"),et("\\DOTSB","\\relax"),et("\\DOTSX","\\relax"),et("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),et("\\,","\\tmspace+{3mu}{.1667em}"),et("\\thinspace","\\,"),et("\\>","\\mskip{4mu}"),et("\\:","\\tmspace+{4mu}{.2222em}"),et("\\medspace","\\:"),et("\\;","\\tmspace+{5mu}{.2777em}"),et("\\thickspace","\\;"),et("\\!","\\tmspace-{3mu}{.1667em}"),et("\\negthinspace","\\!"),et("\\negmedspace","\\tmspace-{4mu}{.2222em}"),et("\\negthickspace","\\tmspace-{5mu}{.277em}"),et("\\enspace","\\kern.5em "),et("\\enskip","\\hskip.5em\\relax"),et("\\quad","\\hskip1em\\relax"),et("\\qquad","\\hskip2em\\relax"),et("\\tag","\\@ifstar\\tag@literal\\tag@paren"),et("\\tag@paren","\\tag@literal{({#1})}"),et("\\tag@literal",i=>{if(i.macros.get("\\df@tag"))throw new Ci("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"}),et("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"),et("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"),et("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}"),et("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"),et("\\newline","\\\\\\relax"),et("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var gqe=Ri(K4["Main-Regular"]["T".charCodeAt(0)][1]-.7*K4["Main-Regular"]["A".charCodeAt(0)][1]);et("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+gqe+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}"),et("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+gqe+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}"),et("\\hspace","\\@ifstar\\@hspacer\\@hspace"),et("\\@hspace","\\hskip #1\\relax"),et("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax"),et("\\ordinarycolon",":"),et("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}"),et("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'),et("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'),et("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'),et("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'),et("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'),et("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'),et("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'),et("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'),et("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'),et("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'),et("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'),et("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'),et("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'),et("∷","\\dblcolon"),et("∹","\\eqcolon"),et("≔","\\coloneqq"),et("≕","\\eqqcolon"),et("⩴","\\Coloneqq"),et("\\ratio","\\vcentcolon"),et("\\coloncolon","\\dblcolon"),et("\\colonequals","\\coloneqq"),et("\\coloncolonequals","\\Coloneqq"),et("\\equalscolon","\\eqqcolon"),et("\\equalscoloncolon","\\Eqqcolon"),et("\\colonminus","\\coloneq"),et("\\coloncolonminus","\\Coloneq"),et("\\minuscolon","\\eqcolon"),et("\\minuscoloncolon","\\Eqcolon"),et("\\coloncolonapprox","\\Colonapprox"),et("\\coloncolonsim","\\Colonsim"),et("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),et("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"),et("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),et("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"),et("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}"),et("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}"),et("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}"),et("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}"),et("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}"),et("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}"),et("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}"),et("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}"),et("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}"),et("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}"),et("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}"),et("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}"),et("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}"),et("\\nleqq","\\html@mathml{\\@nleqq}{≰}"),et("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}"),et("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}"),et("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}"),et("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}"),et("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}"),et("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}"),et("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}"),et("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}"),et("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}"),et("\\imath","\\html@mathml{\\@imath}{ı}"),et("\\jmath","\\html@mathml{\\@jmath}{ȷ}"),et("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`⟦}}"),et("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`⟧}}"),et("⟦","\\llbracket"),et("⟧","\\rrbracket"),et("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`⦃}}"),et("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`⦄}}"),et("⦃","\\lBrace"),et("⦄","\\rBrace"),et("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`⦵}}"),et("⦵","\\minuso"),et("\\darr","\\downarrow"),et("\\dArr","\\Downarrow"),et("\\Darr","\\Downarrow"),et("\\lang","\\langle"),et("\\rang","\\rangle"),et("\\uarr","\\uparrow"),et("\\uArr","\\Uparrow"),et("\\Uarr","\\Uparrow"),et("\\N","\\mathbb{N}"),et("\\R","\\mathbb{R}"),et("\\Z","\\mathbb{Z}"),et("\\alef","\\aleph"),et("\\alefsym","\\aleph"),et("\\Alpha","\\mathrm{A}"),et("\\Beta","\\mathrm{B}"),et("\\bull","\\bullet"),et("\\Chi","\\mathrm{X}"),et("\\clubs","\\clubsuit"),et("\\cnums","\\mathbb{C}"),et("\\Complex","\\mathbb{C}"),et("\\Dagger","\\ddagger"),et("\\diamonds","\\diamondsuit"),et("\\empty","\\emptyset"),et("\\Epsilon","\\mathrm{E}"),et("\\Eta","\\mathrm{H}"),et("\\exist","\\exists"),et("\\harr","\\leftrightarrow"),et("\\hArr","\\Leftrightarrow"),et("\\Harr","\\Leftrightarrow"),et("\\hearts","\\heartsuit"),et("\\image","\\Im"),et("\\infin","\\infty"),et("\\Iota","\\mathrm{I}"),et("\\isin","\\in"),et("\\Kappa","\\mathrm{K}"),et("\\larr","\\leftarrow"),et("\\lArr","\\Leftarrow"),et("\\Larr","\\Leftarrow"),et("\\lrarr","\\leftrightarrow"),et("\\lrArr","\\Leftrightarrow"),et("\\Lrarr","\\Leftrightarrow"),et("\\Mu","\\mathrm{M}"),et("\\natnums","\\mathbb{N}"),et("\\Nu","\\mathrm{N}"),et("\\Omicron","\\mathrm{O}"),et("\\plusmn","\\pm"),et("\\rarr","\\rightarrow"),et("\\rArr","\\Rightarrow"),et("\\Rarr","\\Rightarrow"),et("\\real","\\Re"),et("\\reals","\\mathbb{R}"),et("\\Reals","\\mathbb{R}"),et("\\Rho","\\mathrm{P}"),et("\\sdot","\\cdot"),et("\\sect","\\S"),et("\\spades","\\spadesuit"),et("\\sub","\\subset"),et("\\sube","\\subseteq"),et("\\supe","\\supseteq"),et("\\Tau","\\mathrm{T}"),et("\\thetasym","\\vartheta"),et("\\weierp","\\wp"),et("\\Zeta","\\mathrm{Z}"),et("\\argmin","\\DOTSB\\operatorname*{arg\\,min}"),et("\\argmax","\\DOTSB\\operatorname*{arg\\,max}"),et("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),et("\\bra","\\mathinner{\\langle{#1}|}"),et("\\ket","\\mathinner{|{#1}\\rangle}"),et("\\braket","\\mathinner{\\langle{#1}\\rangle}"),et("\\Bra","\\left\\langle#1\\right|"),et("\\Ket","\\left|#1\\right\\rangle");var pqe=i=>s=>{var u=s.consumeArg().tokens,d=s.consumeArg().tokens,p=s.consumeArg().tokens,v=s.consumeArg().tokens,b=s.macros.get("|"),y=s.macros.get("\\|");s.macros.beginGroup();var T=P=>R=>{i&&(R.macros.set("|",b),p.length&&R.macros.set("\\|",y));var F=P;if(!P&&p.length){var j=R.future();j.text==="|"&&(R.popToken(),F=!0)}return{tokens:F?p:d,numArgs:0}};s.macros.set("|",T(!1)),p.length&&s.macros.set("\\|",T(!0));var _=s.consumeArg().tokens,A=s.expandTokens([...v,..._,...u]);return s.macros.endGroup(),{tokens:A.reverse(),numArgs:0}};et("\\bra@ket",pqe(!1)),et("\\bra@set",pqe(!0)),et("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"),et("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"),et("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"),et("\\angln","{\\angl n}"),et("\\blue","\\textcolor{##6495ed}{#1}"),et("\\orange","\\textcolor{##ffa500}{#1}"),et("\\pink","\\textcolor{##ff00af}{#1}"),et("\\red","\\textcolor{##df0030}{#1}"),et("\\green","\\textcolor{##28ae7b}{#1}"),et("\\gray","\\textcolor{gray}{#1}"),et("\\purple","\\textcolor{##9d38bd}{#1}"),et("\\blueA","\\textcolor{##ccfaff}{#1}"),et("\\blueB","\\textcolor{##80f6ff}{#1}"),et("\\blueC","\\textcolor{##63d9ea}{#1}"),et("\\blueD","\\textcolor{##11accd}{#1}"),et("\\blueE","\\textcolor{##0c7f99}{#1}"),et("\\tealA","\\textcolor{##94fff5}{#1}"),et("\\tealB","\\textcolor{##26edd5}{#1}"),et("\\tealC","\\textcolor{##01d1c1}{#1}"),et("\\tealD","\\textcolor{##01a995}{#1}"),et("\\tealE","\\textcolor{##208170}{#1}"),et("\\greenA","\\textcolor{##b6ffb0}{#1}"),et("\\greenB","\\textcolor{##8af281}{#1}"),et("\\greenC","\\textcolor{##74cf70}{#1}"),et("\\greenD","\\textcolor{##1fab54}{#1}"),et("\\greenE","\\textcolor{##0d923f}{#1}"),et("\\goldA","\\textcolor{##ffd0a9}{#1}"),et("\\goldB","\\textcolor{##ffbb71}{#1}"),et("\\goldC","\\textcolor{##ff9c39}{#1}"),et("\\goldD","\\textcolor{##e07d10}{#1}"),et("\\goldE","\\textcolor{##a75a05}{#1}"),et("\\redA","\\textcolor{##fca9a9}{#1}"),et("\\redB","\\textcolor{##ff8482}{#1}"),et("\\redC","\\textcolor{##f9685d}{#1}"),et("\\redD","\\textcolor{##e84d39}{#1}"),et("\\redE","\\textcolor{##bc2612}{#1}"),et("\\maroonA","\\textcolor{##ffbde0}{#1}"),et("\\maroonB","\\textcolor{##ff92c6}{#1}"),et("\\maroonC","\\textcolor{##ed5fa6}{#1}"),et("\\maroonD","\\textcolor{##ca337c}{#1}"),et("\\maroonE","\\textcolor{##9e034e}{#1}"),et("\\purpleA","\\textcolor{##ddd7ff}{#1}"),et("\\purpleB","\\textcolor{##c6b9fc}{#1}"),et("\\purpleC","\\textcolor{##aa87ff}{#1}"),et("\\purpleD","\\textcolor{##7854ab}{#1}"),et("\\purpleE","\\textcolor{##543b78}{#1}"),et("\\mintA","\\textcolor{##f5f9e8}{#1}"),et("\\mintB","\\textcolor{##edf2df}{#1}"),et("\\mintC","\\textcolor{##e0e5cc}{#1}"),et("\\grayA","\\textcolor{##f6f7f7}{#1}"),et("\\grayB","\\textcolor{##f0f1f2}{#1}"),et("\\grayC","\\textcolor{##e3e5e6}{#1}"),et("\\grayD","\\textcolor{##d6d8da}{#1}"),et("\\grayE","\\textcolor{##babec2}{#1}"),et("\\grayF","\\textcolor{##888d93}{#1}"),et("\\grayG","\\textcolor{##626569}{#1}"),et("\\grayH","\\textcolor{##3b3e40}{#1}"),et("\\grayI","\\textcolor{##21242c}{#1}"),et("\\kaBlue","\\textcolor{##314453}{#1}"),et("\\kaGreen","\\textcolor{##71B307}{#1}");var bqe={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};class CVt{constructor(s,u,d){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=u,this.expansionCount=0,this.feed(s),this.macros=new EVt(TVt,u.macros),this.mode=d,this.stack=[]}feed(s){this.lexer=new hqe(s,this.settings)}switchMode(s){this.mode=s}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(s){this.stack.push(s)}pushTokens(s){this.stack.push(...s)}scanArgument(s){var u,d,p;if(s){if(this.consumeSpaces(),this.future().text!=="[")return null;u=this.popToken(),{tokens:p,end:d}=this.consumeArg(["]"])}else({tokens:p,start:u,end:d}=this.consumeArg());return this.pushToken(new U4("EOF",d.loc)),this.pushTokens(p),u.range(d,"")}consumeSpaces(){for(;;){var s=this.future();if(s.text===" ")this.stack.pop();else break}}consumeArg(s){var u=[],d=s&&s.length>0;d||this.consumeSpaces();var p=this.future(),v,b=0,y=0;do{if(v=this.popToken(),u.push(v),v.text==="{")++b;else if(v.text==="}"){if(--b,b===-1)throw new Ci("Extra }",v)}else if(v.text==="EOF")throw new Ci("Unexpected end of input in a macro argument, expected '"+(s&&d?s[y]:"}")+"'",v);if(s&&d)if((b===0||b===1&&s[y]==="{")&&v.text===s[y]){if(++y,y===s.length){u.splice(-y,y);break}}else y=0}while(b!==0||d);return p.text==="{"&&u[u.length-1].text==="}"&&(u.pop(),u.shift()),u.reverse(),{tokens:u,start:p,end:v}}consumeArgs(s,u){if(u){if(u.length!==s+1)throw new Ci("The length of delimiters doesn't match the number of args!");for(var d=u[0],p=0;pthis.settings.maxExpand)throw new Ci("Too many expansions: infinite loop or need to increase maxExpand setting");var v=p.tokens,b=this.consumeArgs(p.numArgs,p.delimiters);if(p.numArgs){v=v.slice();for(var y=v.length-1;y>=0;--y){var T=v[y];if(T.text==="#"){if(y===0)throw new Ci("Incomplete placeholder at end of macro body",T);if(T=v[--y],T.text==="#")v.splice(y+1,1);else if(/^[1-9]$/.test(T.text))v.splice(y,2,...b[+T.text-1]);else throw new Ci("Not a valid argument number",T)}}}return this.pushTokens(v),v.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var s=this.stack.pop();return s.treatAsRelax&&(s.text="\\relax"),s}throw new Error}expandMacro(s){return this.macros.has(s)?this.expandTokens([new U4(s)]):void 0}expandTokens(s){var u=[],d=this.stack.length;for(this.pushTokens(s);this.stack.length>d;)if(this.expandOnce(!0)===!1){var p=this.stack.pop();p.treatAsRelax&&(p.noexpand=!1,p.treatAsRelax=!1),u.push(p)}return u}expandMacroAsText(s){var u=this.expandMacro(s);return u&&u.map(d=>d.text).join("")}_getExpansion(s){var u=this.macros.get(s);if(u==null)return u;if(s.length===1){var d=this.lexer.catcodes[s];if(d!=null&&d!==13)return}var p=typeof u=="function"?u(this):u;if(typeof p=="string"){var v=0;if(p.indexOf("#")!==-1)for(var b=p.replace(/##/g,"");b.indexOf("#"+(v+1))!==-1;)++v;for(var y=new hqe(p,this.settings),T=[],_=y.lex();_.text!=="EOF";)T.push(_),_=y.lex();T.reverse();var A={tokens:T,numArgs:v};return A}return p}isDefined(s){return this.macros.has(s)||L9.hasOwnProperty(s)||Ul.math.hasOwnProperty(s)||Ul.text.hasOwnProperty(s)||bqe.hasOwnProperty(s)}isExpandable(s){var u=this.macros.get(s);return u!=null?typeof u=="string"||typeof u=="function"||!u.unexpandable:L9.hasOwnProperty(s)&&!L9[s].primitive}}var mqe=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,TQ=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","ᵝ":"β","ᵞ":"γ","ᵟ":"δ","ᵠ":"ϕ","ᵡ":"χ","ᶿ":"θ"}),Pbe={"́":{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"}},vqe={á:"á",à:"à",ä:"ä",ǟ:"ǟ",ã:"ã",ā:"ā",ă:"ă",ắ:"ắ",ằ:"ằ",ẵ:"ẵ",ǎ:"ǎ",â:"â",ấ:"ấ",ầ:"ầ",ẫ:"ẫ",ȧ:"ȧ",ǡ:"ǡ",å:"å",ǻ:"ǻ",ḃ:"ḃ",ć:"ć",ḉ:"ḉ",č:"č",ĉ:"ĉ",ċ:"ċ",ç:"ç",ď:"ď",ḋ:"ḋ",ḑ:"ḑ",é:"é",è:"è",ë:"ë",ẽ:"ẽ",ē:"ē",ḗ:"ḗ",ḕ:"ḕ",ĕ:"ĕ",ḝ:"ḝ",ě:"ě",ê:"ê",ế:"ế",ề:"ề",ễ:"ễ",ė:"ė",ȩ:"ȩ",ḟ:"ḟ",ǵ:"ǵ",ḡ:"ḡ",ğ:"ğ",ǧ:"ǧ",ĝ:"ĝ",ġ:"ġ",ģ:"ģ",ḧ:"ḧ",ȟ:"ȟ",ĥ:"ĥ",ḣ:"ḣ",ḩ:"ḩ",í:"í",ì:"ì",ï:"ï",ḯ:"ḯ",ĩ:"ĩ",ī:"ī",ĭ:"ĭ",ǐ:"ǐ",î:"î",ǰ:"ǰ",ĵ:"ĵ",ḱ:"ḱ",ǩ:"ǩ",ķ:"ķ",ĺ:"ĺ",ľ:"ľ",ļ:"ļ",ḿ:"ḿ",ṁ:"ṁ",ń:"ń",ǹ:"ǹ",ñ:"ñ",ň:"ň",ṅ:"ṅ",ņ:"ņ",ó:"ó",ò:"ò",ö:"ö",ȫ:"ȫ",õ:"õ",ṍ:"ṍ",ṏ:"ṏ",ȭ:"ȭ",ō:"ō",ṓ:"ṓ",ṑ:"ṑ",ŏ:"ŏ",ǒ:"ǒ",ô:"ô",ố:"ố",ồ:"ồ",ỗ:"ỗ",ȯ:"ȯ",ȱ:"ȱ",ő:"ő",ṕ:"ṕ",ṗ:"ṗ",ŕ:"ŕ",ř:"ř",ṙ:"ṙ",ŗ:"ŗ",ś:"ś",ṥ:"ṥ",š:"š",ṧ:"ṧ",ŝ:"ŝ",ṡ:"ṡ",ş:"ş",ẗ:"ẗ",ť:"ť",ṫ:"ṫ",ţ:"ţ",ú:"ú",ù:"ù",ü:"ü",ǘ:"ǘ",ǜ:"ǜ",ǖ:"ǖ",ǚ:"ǚ",ũ:"ũ",ṹ:"ṹ",ū:"ū",ṻ:"ṻ",ŭ:"ŭ",ǔ:"ǔ",û:"û",ů:"ů",ű:"ű",ṽ:"ṽ",ẃ:"ẃ",ẁ:"ẁ",ẅ:"ẅ",ŵ:"ŵ",ẇ:"ẇ",ẘ:"ẘ",ẍ:"ẍ",ẋ:"ẋ",ý:"ý",ỳ:"ỳ",ÿ:"ÿ",ỹ:"ỹ",ȳ:"ȳ",ŷ:"ŷ",ẏ:"ẏ",ẙ:"ẙ",ź:"ź",ž:"ž",ẑ:"ẑ",ż:"ż",Á:"Á",À:"À",Ä:"Ä",Ǟ:"Ǟ",Ã:"Ã",Ā:"Ā",Ă:"Ă",Ắ:"Ắ",Ằ:"Ằ",Ẵ:"Ẵ",Ǎ:"Ǎ",Â:"Â",Ấ:"Ấ",Ầ:"Ầ",Ẫ:"Ẫ",Ȧ:"Ȧ",Ǡ:"Ǡ",Å:"Å",Ǻ:"Ǻ",Ḃ:"Ḃ",Ć:"Ć",Ḉ:"Ḉ",Č:"Č",Ĉ:"Ĉ",Ċ:"Ċ",Ç:"Ç",Ď:"Ď",Ḋ:"Ḋ",Ḑ:"Ḑ",É:"É",È:"È",Ë:"Ë",Ẽ:"Ẽ",Ē:"Ē",Ḗ:"Ḗ",Ḕ:"Ḕ",Ĕ:"Ĕ",Ḝ:"Ḝ",Ě:"Ě",Ê:"Ê",Ế:"Ế",Ề:"Ề",Ễ:"Ễ",Ė:"Ė",Ȩ:"Ȩ",Ḟ:"Ḟ",Ǵ:"Ǵ",Ḡ:"Ḡ",Ğ:"Ğ",Ǧ:"Ǧ",Ĝ:"Ĝ",Ġ:"Ġ",Ģ:"Ģ",Ḧ:"Ḧ",Ȟ:"Ȟ",Ĥ:"Ĥ",Ḣ:"Ḣ",Ḩ:"Ḩ",Í:"Í",Ì:"Ì",Ï:"Ï",Ḯ:"Ḯ",Ĩ:"Ĩ",Ī:"Ī",Ĭ:"Ĭ",Ǐ:"Ǐ",Î:"Î",İ:"İ",Ĵ:"Ĵ",Ḱ:"Ḱ",Ǩ:"Ǩ",Ķ:"Ķ",Ĺ:"Ĺ",Ľ:"Ľ",Ļ:"Ļ",Ḿ:"Ḿ",Ṁ:"Ṁ",Ń:"Ń",Ǹ:"Ǹ",Ñ:"Ñ",Ň:"Ň",Ṅ:"Ṅ",Ņ:"Ņ",Ó:"Ó",Ò:"Ò",Ö:"Ö",Ȫ:"Ȫ",Õ:"Õ",Ṍ:"Ṍ",Ṏ:"Ṏ",Ȭ:"Ȭ",Ō:"Ō",Ṓ:"Ṓ",Ṑ:"Ṑ",Ŏ:"Ŏ",Ǒ:"Ǒ",Ô:"Ô",Ố:"Ố",Ồ:"Ồ",Ỗ:"Ỗ",Ȯ:"Ȯ",Ȱ:"Ȱ",Ő:"Ő",Ṕ:"Ṕ",Ṗ:"Ṗ",Ŕ:"Ŕ",Ř:"Ř",Ṙ:"Ṙ",Ŗ:"Ŗ",Ś:"Ś",Ṥ:"Ṥ",Š:"Š",Ṧ:"Ṧ",Ŝ:"Ŝ",Ṡ:"Ṡ",Ş:"Ş",Ť:"Ť",Ṫ:"Ṫ",Ţ:"Ţ",Ú:"Ú",Ù:"Ù",Ü:"Ü",Ǘ:"Ǘ",Ǜ:"Ǜ",Ǖ:"Ǖ",Ǚ:"Ǚ",Ũ:"Ũ",Ṹ:"Ṹ",Ū:"Ū",Ṻ:"Ṻ",Ŭ:"Ŭ",Ǔ:"Ǔ",Û:"Û",Ů:"Ů",Ű:"Ű",Ṽ:"Ṽ",Ẃ:"Ẃ",Ẁ:"Ẁ",Ẅ:"Ẅ",Ŵ:"Ŵ",Ẇ:"Ẇ",Ẍ:"Ẍ",Ẋ:"Ẋ",Ý:"Ý",Ỳ:"Ỳ",Ÿ:"Ÿ",Ỹ:"Ỹ",Ȳ:"Ȳ",Ŷ:"Ŷ",Ẏ:"Ẏ",Ź:"Ź",Ž:"Ž",Ẑ:"Ẑ",Ż:"Ż",ά:"ά",ὰ:"ὰ",ᾱ:"ᾱ",ᾰ:"ᾰ",έ:"έ",ὲ:"ὲ",ή:"ή",ὴ:"ὴ",ί:"ί",ὶ:"ὶ",ϊ:"ϊ",ΐ:"ΐ",ῒ:"ῒ",ῑ:"ῑ",ῐ:"ῐ",ό:"ό",ὸ:"ὸ",ύ:"ύ",ὺ:"ὺ",ϋ:"ϋ",ΰ:"ΰ",ῢ:"ῢ",ῡ:"ῡ",ῠ:"ῠ",ώ:"ώ",ὼ:"ὼ",Ύ:"Ύ",Ὺ:"Ὺ",Ϋ:"Ϋ",Ῡ:"Ῡ",Ῠ:"Ῠ",Ώ:"Ώ",Ὼ:"Ὼ"};class gR{constructor(s,u){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 CVt(s,u,this.mode),this.settings=u,this.leftrightDepth=0}expect(s,u){if(u===void 0&&(u=!0),this.fetch().text!==s)throw new Ci("Expected '"+s+"', got '"+this.fetch().text+"'",this.fetch());u&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(s){this.mode=s,this.gullet.switchMode(s)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var s=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),s}finally{this.gullet.endGroups()}}subparse(s){var u=this.nextToken;this.consume(),this.gullet.pushToken(new U4("}")),this.gullet.pushTokens(s);var d=this.parseExpression(!1);return this.expect("}"),this.nextToken=u,d}parseExpression(s,u){for(var d=[];;){this.mode==="math"&&this.consumeSpaces();var p=this.fetch();if(gR.endOfExpression.indexOf(p.text)!==-1||u&&p.text===u||s&&L9[p.text]&&L9[p.text].infix)break;var v=this.parseAtom(u);if(v){if(v.type==="internal")continue}else break;d.push(v)}return this.mode==="text"&&this.formLigatures(d),this.handleInfixNodes(d)}handleInfixNodes(s){for(var u=-1,d,p=0;p=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+u[0]+'" used in math mode',s);var y=Ul[this.mode][u].group,T=lm.range(s),_;if(dHt.hasOwnProperty(y)){var A=y;_={type:"atom",mode:this.mode,family:A,loc:T,text:u}}else _={type:y,mode:this.mode,loc:T,text:u};b=_}else if(u.charCodeAt(0)>=128)this.settings.strict&&(K$e(u.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+u[0]+'" used in math mode',s):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+u[0]+'"'+(" ("+u.charCodeAt(0)+")"),s)),b={type:"textord",mode:"text",loc:lm.range(s),text:u};else return null;if(this.consume(),v)for(var P=0;P"u"&&(_s.yylloc={});var j0=_s.yylloc;on.push(j0);var pm=_s.options&&_s.options.ranges;typeof tl.yy.parseError=="function"?this.parseError=tl.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ml(){var kh;return kh=At.pop()||_s.lex()||Pa,typeof kh!="number"&&(kh instanceof Array&&(At=kh,kh=At.pop()),kh=qn.symbols_[kh]||kh),kh}for(var Xc,Bc,ja,Ou,Sa={},Po,Fc,xa,Ba;;){if(Bc=Un[Un.length-1],this.defaultActions[Bc]?ja=this.defaultActions[Bc]:((Xc===null||typeof Xc>"u")&&(Xc=Ml()),ja=fn[Bc]&&fn[Bc][Xc]),typeof ja>"u"||!ja.length||!ja[0]){var ga="";Ba=[];for(Po in fn[Bc])this.terminals_[Po]&&Po>$o&&Ba.push("'"+this.terminals_[Po]+"'");_s.showPosition?ga="Parse error on line "+(oo+1)+`:
+`+_s.showPosition()+`
+Expecting `+Ba.join(", ")+", got '"+(this.terminals_[Xc]||Xc)+"'":ga="Parse error on line "+(oo+1)+": Unexpected "+(Xc==Pa?"end of input":"'"+(this.terminals_[Xc]||Xc)+"'"),this.parseError(ga,{text:_s.match,token:this.terminals_[Xc]||Xc,line:_s.yylineno,loc:j0,expected:Ba})}if(ja[0]instanceof Array&&ja.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bc+", token: "+Xc);switch(ja[0]){case 1:Un.push(Xc),wt.push(_s.yytext),on.push(_s.yylloc),Un.push(ja[1]),Xc=null,jo=_s.yyleng,An=_s.yytext,oo=_s.yylineno,j0=_s.yylloc;break;case 2:if(Fc=this.productions_[ja[1]][1],Sa.$=wt[wt.length-Fc],Sa._$={first_line:on[on.length-(Fc||1)].first_line,last_line:on[on.length-1].last_line,first_column:on[on.length-(Fc||1)].first_column,last_column:on[on.length-1].last_column},pm&&(Sa._$.range=[on[on.length-(Fc||1)].range[0],on[on.length-1].range[1]]),Ou=this.performAction.apply(Sa,[An,jo,oo,tl.yy,ja[1],wt,on].concat(wo)),typeof Ou<"u")return Ou;Fc&&(Un=Un.slice(0,-1*Fc*2),wt=wt.slice(0,-1*Fc),on=on.slice(0,-1*Fc)),Un.push(this.productions_[ja[1]][0]),wt.push(Sa.$),on.push(Sa._$),xa=fn[Un[Un.length-2]][Un[Un.length-1]],Un.push(xa);break;case 3:return!0}}return!0}},zs=function(){var Tr={EOF:1,parseError:function(qn,Un){if(this.yy.parser)this.yy.parser.parseError(qn,Un);else throw new Error(qn)},setInput:function(Fn,qn){return this.yy=qn||this.yy||{},this._input=Fn,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 Fn=this._input[0];this.yytext+=Fn,this.yyleng++,this.offset++,this.match+=Fn,this.matched+=Fn;var qn=Fn.match(/(?:\r\n?|\n).*/g);return qn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Fn},unput:function(Fn){var qn=Fn.length,Un=Fn.split(/(?:\r\n?|\n)/g);this._input=Fn+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-qn),this.offset-=qn;var At=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),Un.length-1&&(this.yylineno-=Un.length-1);var wt=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:Un?(Un.length===At.length?this.yylloc.first_column:0)+At[At.length-Un.length].length-Un[0].length:this.yylloc.first_column-qn},this.options.ranges&&(this.yylloc.range=[wt[0],wt[0]+this.yyleng-qn]),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(Fn){this.unput(this.match.slice(Fn))},pastInput:function(){var Fn=this.matched.substr(0,this.matched.length-this.match.length);return(Fn.length>20?"...":"")+Fn.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Fn=this.match;return Fn.length<20&&(Fn+=this._input.substr(0,20-Fn.length)),(Fn.substr(0,20)+(Fn.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Fn=this.pastInput(),qn=new Array(Fn.length+1).join("-");return Fn+this.upcomingInput()+`
+`+qn+"^"},test_match:function(Fn,qn){var Un,At,wt;if(this.options.backtrack_lexer&&(wt={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&&(wt.yylloc.range=this.yylloc.range.slice(0))),At=Fn[0].match(/(?:\r\n?|\n).*/g),At&&(this.yylineno+=At.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:At?At[At.length-1].length-At[At.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Fn[0].length},this.yytext+=Fn[0],this.match+=Fn[0],this.matches=Fn,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(Fn[0].length),this.matched+=Fn[0],Un=this.performAction.call(this,this.yy,this,qn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Un)return Un;if(this._backtrack){for(var on in wt)this[on]=wt[on];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Fn,qn,Un,At;this._more||(this.yytext="",this.match="");for(var wt=this._currentRules(),on=0;onqn[0].length)){if(qn=Un,At=on,this.options.backtrack_lexer){if(Fn=this.test_match(Un,wt[on]),Fn!==!1)return Fn;if(this._backtrack){qn=!1;continue}else return!1}else if(!this.options.flex)break}return qn?(Fn=this.test_match(qn,wt[At]),Fn!==!1?Fn:!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 qn=this.next();return qn||this.lex()},begin:function(qn){this.conditionStack.push(qn)},popState:function(){var qn=this.conditionStack.length-1;return qn>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(qn){return qn=this.conditionStack.length-1-Math.abs(qn||0),qn>=0?this.conditionStack[qn]:"INITIAL"},pushState:function(qn){this.begin(qn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(qn,Un,At,wt){switch(At){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:return this.begin("node"),39;case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:return this.begin("rel_u"),66;case 53:return this.begin("rel_u"),66;case 54:return this.begin("rel_d"),67;case 55:return this.begin("rel_d"),67;case 56:return this.begin("rel_l"),68;case 57:return this.begin("rel_l"),68;case 58:return this.begin("rel_r"),69;case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return Tr}();Ma.lexer=zs;function ao(){this.yy={}}return ao.prototype=Ma,Ma.Parser=ao,new ao}();CQ.parser=CQ;const DVt=CQ;let R3=[],M9=[""],Op="global",j3="",Q4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],pR=[],Rbe="",jbe=!1,SQ=4,_Q=2;var xqe;const IVt=function(){return xqe},OVt=function(i){xqe=Yf(i,qt())},NVt=function(i,s,u,d,p,v,b,y,T){if(i==null||s===void 0||s===null||u===void 0||u===null||d===void 0||d===null)return;let _={};const A=pR.find(P=>P.from===s&&P.to===u);if(A?_=A:pR.push(_),_.type=i,_.from=s,_.to=u,_.label={text:d},p==null)_.techn={text:""};else if(typeof p=="object"){let[P,R]=Object.entries(p)[0];_[P]={text:R}}else _.techn={text:p};if(v==null)_.descr={text:""};else if(typeof v=="object"){let[P,R]=Object.entries(v)[0];_[P]={text:R}}else _.descr={text:v};if(typeof b=="object"){let[P,R]=Object.entries(b)[0];_[P]=R}else _.sprite=b;if(typeof y=="object"){let[P,R]=Object.entries(y)[0];_[P]=R}else _.tags=y;if(typeof T=="object"){let[P,R]=Object.entries(T)[0];_[P]=R}else _.link=T;_.wrap=D9()},PVt=function(i,s,u,d,p,v,b){if(s===null||u===null)return;let y={};const T=R3.find(_=>_.alias===s);if(T&&s===T.alias?y=T:(y.alias=s,R3.push(y)),u==null?y.label={text:""}:y.label={text:u},d==null)y.descr={text:""};else if(typeof d=="object"){let[_,A]=Object.entries(d)[0];y[_]={text:A}}else y.descr={text:d};if(typeof p=="object"){let[_,A]=Object.entries(p)[0];y[_]=A}else y.sprite=p;if(typeof v=="object"){let[_,A]=Object.entries(v)[0];y[_]=A}else y.tags=v;if(typeof b=="object"){let[_,A]=Object.entries(b)[0];y[_]=A}else y.link=b;y.typeC4Shape={text:i},y.parentBoundary=Op,y.wrap=D9()},BVt=function(i,s,u,d,p,v,b,y){if(s===null||u===null)return;let T={};const _=R3.find(A=>A.alias===s);if(_&&s===_.alias?T=_:(T.alias=s,R3.push(T)),u==null?T.label={text:""}:T.label={text:u},d==null)T.techn={text:""};else if(typeof d=="object"){let[A,P]=Object.entries(d)[0];T[A]={text:P}}else T.techn={text:d};if(p==null)T.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];T[A]={text:P}}else T.descr={text:p};if(typeof v=="object"){let[A,P]=Object.entries(v)[0];T[A]=P}else T.sprite=v;if(typeof b=="object"){let[A,P]=Object.entries(b)[0];T[A]=P}else T.tags=b;if(typeof y=="object"){let[A,P]=Object.entries(y)[0];T[A]=P}else T.link=y;T.wrap=D9(),T.typeC4Shape={text:i},T.parentBoundary=Op},FVt=function(i,s,u,d,p,v,b,y){if(s===null||u===null)return;let T={};const _=R3.find(A=>A.alias===s);if(_&&s===_.alias?T=_:(T.alias=s,R3.push(T)),u==null?T.label={text:""}:T.label={text:u},d==null)T.techn={text:""};else if(typeof d=="object"){let[A,P]=Object.entries(d)[0];T[A]={text:P}}else T.techn={text:d};if(p==null)T.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];T[A]={text:P}}else T.descr={text:p};if(typeof v=="object"){let[A,P]=Object.entries(v)[0];T[A]=P}else T.sprite=v;if(typeof b=="object"){let[A,P]=Object.entries(b)[0];T[A]=P}else T.tags=b;if(typeof y=="object"){let[A,P]=Object.entries(y)[0];T[A]=P}else T.link=y;T.wrap=D9(),T.typeC4Shape={text:i},T.parentBoundary=Op},RVt=function(i,s,u,d,p){if(i===null||s===null)return;let v={};const b=Q4.find(y=>y.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,Q4.push(v)),s==null?v.label={text:""}:v.label={text:s},u==null)v.type={text:"system"};else if(typeof u=="object"){let[y,T]=Object.entries(u)[0];v[y]={text:T}}else v.type={text:u};if(typeof d=="object"){let[y,T]=Object.entries(d)[0];v[y]=T}else v.tags=d;if(typeof p=="object"){let[y,T]=Object.entries(p)[0];v[y]=T}else v.link=p;v.parentBoundary=Op,v.wrap=D9(),j3=Op,Op=i,M9.push(j3)},jVt=function(i,s,u,d,p){if(i===null||s===null)return;let v={};const b=Q4.find(y=>y.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,Q4.push(v)),s==null?v.label={text:""}:v.label={text:s},u==null)v.type={text:"container"};else if(typeof u=="object"){let[y,T]=Object.entries(u)[0];v[y]={text:T}}else v.type={text:u};if(typeof d=="object"){let[y,T]=Object.entries(d)[0];v[y]=T}else v.tags=d;if(typeof p=="object"){let[y,T]=Object.entries(p)[0];v[y]=T}else v.link=p;v.parentBoundary=Op,v.wrap=D9(),j3=Op,Op=i,M9.push(j3)},$Vt=function(i,s,u,d,p,v,b,y){if(s===null||u===null)return;let T={};const _=Q4.find(A=>A.alias===s);if(_&&s===_.alias?T=_:(T.alias=s,Q4.push(T)),u==null?T.label={text:""}:T.label={text:u},d==null)T.type={text:"node"};else if(typeof d=="object"){let[A,P]=Object.entries(d)[0];T[A]={text:P}}else T.type={text:d};if(p==null)T.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];T[A]={text:P}}else T.descr={text:p};if(typeof b=="object"){let[A,P]=Object.entries(b)[0];T[A]=P}else T.tags=b;if(typeof y=="object"){let[A,P]=Object.entries(y)[0];T[A]=P}else T.link=y;T.nodeType=i,T.parentBoundary=Op,T.wrap=D9(),j3=Op,Op=s,M9.push(j3)},zVt=function(){Op=j3,M9.pop(),j3=M9.pop(),M9.push(j3)},qVt=function(i,s,u,d,p,v,b,y,T,_,A){let P=R3.find(R=>R.alias===s);if(!(P===void 0&&(P=Q4.find(R=>R.alias===s),P===void 0))){if(u!=null)if(typeof u=="object"){let[R,F]=Object.entries(u)[0];P[R]=F}else P.bgColor=u;if(d!=null)if(typeof d=="object"){let[R,F]=Object.entries(d)[0];P[R]=F}else P.fontColor=d;if(p!=null)if(typeof p=="object"){let[R,F]=Object.entries(p)[0];P[R]=F}else P.borderColor=p;if(v!=null)if(typeof v=="object"){let[R,F]=Object.entries(v)[0];P[R]=F}else P.shadowing=v;if(b!=null)if(typeof b=="object"){let[R,F]=Object.entries(b)[0];P[R]=F}else P.shape=b;if(y!=null)if(typeof y=="object"){let[R,F]=Object.entries(y)[0];P[R]=F}else P.sprite=y;if(T!=null)if(typeof T=="object"){let[R,F]=Object.entries(T)[0];P[R]=F}else P.techn=T;if(_!=null)if(typeof _=="object"){let[R,F]=Object.entries(_)[0];P[R]=F}else P.legendText=_;if(A!=null)if(typeof A=="object"){let[R,F]=Object.entries(A)[0];P[R]=F}else P.legendSprite=A}},HVt=function(i,s,u,d,p,v,b){const y=pR.find(T=>T.from===s&&T.to===u);if(y!==void 0){if(d!=null)if(typeof d=="object"){let[T,_]=Object.entries(d)[0];y[T]=_}else y.textColor=d;if(p!=null)if(typeof p=="object"){let[T,_]=Object.entries(p)[0];y[T]=_}else y.lineColor=p;if(v!=null)if(typeof v=="object"){let[T,_]=Object.entries(v)[0];y[T]=parseInt(_)}else y.offsetX=parseInt(v);if(b!=null)if(typeof b=="object"){let[T,_]=Object.entries(b)[0];y[T]=parseInt(_)}else y.offsetY=parseInt(b)}},VVt=function(i,s,u){let d=SQ,p=_Q;if(typeof s=="object"){const v=Object.values(s)[0];d=parseInt(v)}else d=parseInt(s);if(typeof u=="object"){const v=Object.values(u)[0];p=parseInt(v)}else p=parseInt(u);d>=1&&(SQ=d),p>=1&&(_Q=p)},UVt=function(){return SQ},GVt=function(){return _Q},KVt=function(){return Op},WVt=function(){return j3},kqe=function(i){return i==null?R3:R3.filter(s=>s.parentBoundary===i)},YVt=function(i){return R3.find(s=>s.alias===i)},XVt=function(i){return Object.keys(kqe(i))},Eqe=function(i){return i==null?Q4:Q4.filter(s=>s.parentBoundary===i)},QVt=Eqe,JVt=function(){return pR},ZVt=function(){return Rbe},eUt=function(i){jbe=i},D9=function(){return jbe},$be={addPersonOrSystem:PVt,addPersonOrSystemBoundary:RVt,addContainer:BVt,addContainerBoundary:jVt,addComponent:FVt,addDeploymentNode:$Vt,popBoundaryParseStack:zVt,addRel:NVt,updateElStyle:qVt,updateRelStyle:HVt,updateLayoutConfig:VVt,autoWrap:D9,setWrap:eUt,getC4ShapeArray:kqe,getC4Shape:YVt,getC4ShapeKeys:XVt,getBoundaries:Eqe,getBoundarys:QVt,getCurrentBoundaryParse:KVt,getParentBoundaryParse:WVt,getRels:JVt,getTitle:ZVt,getC4Type:IVt,getC4ShapeInRow:UVt,getC4BoundaryInRow:GVt,setAccTitle:Bg,getAccTitle:Cp,getAccDescription:_p,setAccDescription:Sp,getConfig:()=>qt().c4,clear:function(){R3=[],Q4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],j3="",Op="global",M9=[""],pR=[],M9=[""],Rbe="",jbe=!1,SQ=4,_Q=2},LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(i){Rbe=Yf(i,qt())},setC4Type:OVt},AQ=(i,s)=>{const u=i.append("rect");if(u.attr("x",s.x),u.attr("y",s.y),u.attr("fill",s.fill),u.attr("stroke",s.stroke),u.attr("width",s.width),u.attr("height",s.height),s.name&&u.attr("name",s.name),s.rx!==void 0&&u.attr("rx",s.rx),s.ry!==void 0&&u.attr("ry",s.ry),s.attrs!==void 0)for(const d in s.attrs)u.attr(d,s.attrs[d]);return s.class!==void 0&&u.attr("class",s.class),u},Tqe=(i,s)=>{const u={x:s.startx,y:s.starty,width:s.stopx-s.startx,height:s.stopy-s.starty,fill:s.fill,stroke:s.stroke,class:"rect"};AQ(i,u).lower()},tUt=(i,s)=>{const u=s.text.replace(fD," "),d=i.append("text");d.attr("x",s.x),d.attr("y",s.y),d.attr("class","legend"),d.style("text-anchor",s.anchor),s.class!==void 0&&d.attr("class",s.class);const p=d.append("tspan");return p.attr("x",s.x+s.textMargin*2),p.text(u),d},nUt=(i,s,u,d)=>{const p=i.append("image");p.attr("x",s),p.attr("y",u);const v=p9.sanitizeUrl(d);p.attr("xlink:href",v)},rUt=(i,s,u,d)=>{const p=i.append("use");p.attr("x",s),p.attr("y",u);const v=p9.sanitizeUrl(d);p.attr("xlink:href",`#${v}`)},qC=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),zbe=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),qbe=function(i,s){return AQ(i,s)},Cqe=function(i,s,u,d,p,v){const b=i.append("image");b.attr("width",s),b.attr("height",u),b.attr("x",d),b.attr("y",p);let y=v.startsWith("data:image/png;base64")?v:p9.sanitizeUrl(v);b.attr("xlink:href",y)},iUt=(i,s,u)=>{const d=i.append("g");let p=0;for(let v of s){let b=v.textColor?v.textColor:"#444444",y=v.lineColor?v.lineColor:"#444444",T=v.offsetX?parseInt(v.offsetX):0,_=v.offsetY?parseInt(v.offsetY):0,A="";if(p===0){let R=d.append("line");R.attr("x1",v.startPoint.x),R.attr("y1",v.startPoint.y),R.attr("x2",v.endPoint.x),R.attr("y2",v.endPoint.y),R.attr("stroke-width","1"),R.attr("stroke",y),R.style("fill","none"),v.type!=="rel_b"&&R.attr("marker-end","url("+A+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+A+"#arrowend)"),p=-1}else{let R=d.append("path");R.attr("fill","none").attr("stroke-width","1").attr("stroke",y).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",v.startPoint.x).replaceAll("starty",v.startPoint.y).replaceAll("controlx",v.startPoint.x+(v.endPoint.x-v.startPoint.x)/2-(v.endPoint.x-v.startPoint.x)/4).replaceAll("controly",v.startPoint.y+(v.endPoint.y-v.startPoint.y)/2).replaceAll("stopx",v.endPoint.x).replaceAll("stopy",v.endPoint.y)),v.type!=="rel_b"&&R.attr("marker-end","url("+A+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+A+"#arrowend)")}let P=u.messageFont();F7(u)(v.label.text,d,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+T,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+_,v.label.width,v.label.height,{fill:b},P),v.techn&&v.techn.text!==""&&(P=u.messageFont(),F7(u)("["+v.techn.text+"]",d,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+T,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+u.messageFontSize+5+_,Math.max(v.label.width,v.techn.width),v.techn.height,{fill:b,"font-style":"italic"},P))}},sUt=function(i,s,u){const d=i.append("g");let p=s.bgColor?s.bgColor:"none",v=s.borderColor?s.borderColor:"#444444",b=s.fontColor?s.fontColor:"black",y={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};s.nodeType&&(y={"stroke-width":1});let T={x:s.x,y:s.y,fill:p,stroke:v,width:s.width,height:s.height,rx:2.5,ry:2.5,attrs:y};qbe(d,T);let _=u.boundaryFont();_.fontWeight="bold",_.fontSize=_.fontSize+2,_.fontColor=b,F7(u)(s.label.text,d,s.x,s.y+s.label.Y,s.width,s.height,{fill:"#444444"},_),s.type&&s.type.text!==""&&(_=u.boundaryFont(),_.fontColor=b,F7(u)(s.type.text,d,s.x,s.y+s.type.Y,s.width,s.height,{fill:"#444444"},_)),s.descr&&s.descr.text!==""&&(_=u.boundaryFont(),_.fontSize=_.fontSize-2,_.fontColor=b,F7(u)(s.descr.text,d,s.x,s.y+s.descr.Y,s.width,s.height,{fill:"#444444"},_))},aUt=function(i,s,u){var P;let d=s.bgColor?s.bgColor:u[s.typeC4Shape.text+"_bg_color"],p=s.borderColor?s.borderColor:u[s.typeC4Shape.text+"_border_color"],v=s.fontColor?s.fontColor:"#FFFFFF",b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(s.typeC4Shape.text){case"person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}const y=i.append("g");y.attr("class","person-man");const T=qC();switch(s.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":T.x=s.x,T.y=s.y,T.fill=d,T.width=s.width,T.height=s.height,T.stroke=p,T.rx=2.5,T.ry=2.5,T.attrs={"stroke-width":.5},qbe(y,T);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":y.append("path").attr("fill",d).attr("stroke-width","0.5").attr("stroke",p).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",s.x).replaceAll("starty",s.y).replaceAll("half",s.width/2).replaceAll("height",s.height)),y.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",p).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",s.x).replaceAll("starty",s.y).replaceAll("half",s.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":y.append("path").attr("fill",d).attr("stroke-width","0.5").attr("stroke",p).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",s.x).replaceAll("starty",s.y).replaceAll("width",s.width).replaceAll("half",s.height/2)),y.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",p).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",s.x+s.width).replaceAll("starty",s.y).replaceAll("half",s.height/2));break}let _=pUt(u,s.typeC4Shape.text);switch(y.append("text").attr("fill",v).attr("font-family",_.fontFamily).attr("font-size",_.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",s.typeC4Shape.width).attr("x",s.x+s.width/2-s.typeC4Shape.width/2).attr("y",s.y+s.typeC4Shape.Y).text("<<"+s.typeC4Shape.text+">>"),s.typeC4Shape.text){case"person":case"external_person":Cqe(y,48,48,s.x+s.width/2-24,s.y+s.image.Y,b);break}let A=u[s.typeC4Shape.text+"Font"]();return A.fontWeight="bold",A.fontSize=A.fontSize+2,A.fontColor=v,F7(u)(s.label.text,y,s.x,s.y+s.label.Y,s.width,s.height,{fill:v},A),A=u[s.typeC4Shape.text+"Font"](),A.fontColor=v,s.techn&&((P=s.techn)==null?void 0:P.text)!==""?F7(u)(s.techn.text,y,s.x,s.y+s.techn.Y,s.width,s.height,{fill:v,"font-style":"italic"},A):s.type&&s.type.text!==""&&F7(u)(s.type.text,y,s.x,s.y+s.type.Y,s.width,s.height,{fill:v,"font-style":"italic"},A),s.descr&&s.descr.text!==""&&(A=u.personFont(),A.fontColor=v,F7(u)(s.descr.text,y,s.x,s.y+s.descr.Y,s.width,s.height,{fill:v},A)),s.height},oUt=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},cUt=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},uUt=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},lUt=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).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")},hUt=function(i){i.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},fUt=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",18).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")},dUt=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},gUt=function(i){const u=i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);u.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),u.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},pUt=(i,s)=>({fontFamily:i[s+"FontFamily"],fontSize:i[s+"FontSize"],fontWeight:i[s+"FontWeight"]}),F7=function(){function i(p,v,b,y,T,_,A){const P=v.append("text").attr("x",b+T/2).attr("y",y+_/2+5).style("text-anchor","middle").text(p);d(P,A)}function s(p,v,b,y,T,_,A,P){const{fontSize:R,fontFamily:F,fontWeight:j}=P,K=p.split(ci.lineBreakRegex);for(let ee=0;ee=this.data.widthLimit||d>=this.data.widthLimit||this.nextData.cnt>Sqe)&&(u=this.nextData.startx+s.margin+$s.nextLinePaddingX,p=this.nextData.stopy+s.margin*2,this.nextData.stopx=d=u+s.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=v=p+s.height,this.nextData.cnt=1),s.x=u,s.y=p,this.updateVal(this.data,"startx",u,Math.min),this.updateVal(this.data,"starty",p,Math.min),this.updateVal(this.data,"stopx",d,Math.max),this.updateVal(this.data,"stopy",v,Math.max),this.updateVal(this.nextData,"startx",u,Math.min),this.updateVal(this.nextData,"starty",p,Math.min),this.updateVal(this.nextData,"stopx",d,Math.max),this.updateVal(this.nextData,"stopy",v,Math.max)}init(s){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},Vbe(s.db.getConfig())}bumpLastMargin(s){this.data.stopx+=s,this.data.stopy+=s}}const Vbe=function(i){id($s,i),i.fontFamily&&($s.personFontFamily=$s.systemFontFamily=$s.messageFontFamily=i.fontFamily),i.fontSize&&($s.personFontSize=$s.systemFontSize=$s.messageFontSize=i.fontSize),i.fontWeight&&($s.personFontWeight=$s.systemFontWeight=$s.messageFontWeight=i.fontWeight)},bR=(i,s)=>({fontFamily:i[s+"FontFamily"],fontSize:i[s+"FontSize"],fontWeight:i[s+"FontWeight"]}),DQ=i=>({fontFamily:i.boundaryFontFamily,fontSize:i.boundaryFontSize,fontWeight:i.boundaryFontWeight}),bUt=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight});function $3(i,s,u,d,p){if(!s[i].width)if(u)s[i].text=vje(s[i].text,p,d),s[i].textLines=s[i].text.split(ci.lineBreakRegex).length,s[i].width=p,s[i].height=E2e(s[i].text,d);else{let v=s[i].text.split(ci.lineBreakRegex);s[i].textLines=v.length;let b=0;s[i].height=0,s[i].width=0;for(const y of v)s[i].width=Math.max(H4(y,d),s[i].width),b=E2e(y,d),s[i].height=s[i].height+b}}const Aqe=function(i,s,u){s.x=u.data.startx,s.y=u.data.starty,s.width=u.data.stopx-u.data.startx,s.height=u.data.stopy-u.data.starty,s.label.y=$s.c4ShapeMargin-35;let d=s.wrap&&$s.wrap,p=DQ($s);p.fontSize=p.fontSize+2,p.fontWeight="bold";let v=H4(s.label.text,p);$3("label",s,d,p,v),J4.drawBoundary(i,s,$s)},Lqe=function(i,s,u,d){let p=0;for(const v of d){p=0;const b=u[v];let y=bR($s,b.typeC4Shape.text);switch(y.fontSize=y.fontSize-2,b.typeC4Shape.width=H4("«"+b.typeC4Shape.text+"»",y),b.typeC4Shape.height=y.fontSize+2,b.typeC4Shape.Y=$s.c4ShapePadding,p=b.typeC4Shape.Y+b.typeC4Shape.height-4,b.image={width:0,height:0,Y:0},b.typeC4Shape.text){case"person":case"external_person":b.image.width=48,b.image.height=48,b.image.Y=p,p=b.image.Y+b.image.height;break}b.sprite&&(b.image.width=48,b.image.height=48,b.image.Y=p,p=b.image.Y+b.image.height);let T=b.wrap&&$s.wrap,_=$s.width-$s.c4ShapePadding*2,A=bR($s,b.typeC4Shape.text);if(A.fontSize=A.fontSize+2,A.fontWeight="bold",$3("label",b,T,A,_),b.label.Y=p+8,p=b.label.Y+b.label.height,b.type&&b.type.text!==""){b.type.text="["+b.type.text+"]";let F=bR($s,b.typeC4Shape.text);$3("type",b,T,F,_),b.type.Y=p+5,p=b.type.Y+b.type.height}else if(b.techn&&b.techn.text!==""){b.techn.text="["+b.techn.text+"]";let F=bR($s,b.techn.text);$3("techn",b,T,F,_),b.techn.Y=p+5,p=b.techn.Y+b.techn.height}let P=p,R=b.label.width;if(b.descr&&b.descr.text!==""){let F=bR($s,b.typeC4Shape.text);$3("descr",b,T,F,_),b.descr.Y=p+20,p=b.descr.Y+b.descr.height,R=Math.max(b.label.width,b.descr.width),P=p-b.descr.textLines*5}R=R+$s.c4ShapePadding,b.width=Math.max(b.width||$s.width,R,$s.width),b.height=Math.max(b.height||$s.height,P,$s.height),b.margin=b.margin||$s.c4ShapeMargin,i.insert(b),J4.drawC4Shape(s,b,$s)}i.bumpLastMargin($s.c4ShapeMargin)};let jv=class{constructor(s,u){this.x=s,this.y=u}},Mqe=function(i,s){let u=i.x,d=i.y,p=s.x,v=s.y,b=u+i.width/2,y=d+i.height/2,T=Math.abs(u-p),_=Math.abs(d-v),A=_/T,P=i.height/i.width,R=null;return d==v&&up?R=new jv(u,y):u==p&&dv&&(R=new jv(b,d)),u>p&&d=A?R=new jv(u,y+A*i.width/2):R=new jv(b-T/_*i.height/2,d+i.height):u=A?R=new jv(u+i.width,y+A*i.width/2):R=new jv(b+T/_*i.height/2,d+i.height):u
v?P>=A?R=new jv(u+i.width,y-A*i.width/2):R=new jv(b+i.height/2*T/_,d):u>p&&d>v&&(P>=A?R=new jv(u,y-i.width/2*A):R=new jv(b-i.height/2*T/_,d)),R},mUt=function(i,s){let u={x:0,y:0};u.x=s.x+s.width/2,u.y=s.y+s.height/2;let d=Mqe(i,u);u.x=i.x+i.width/2,u.y=i.y+i.height/2;let p=Mqe(s,u);return{startPoint:d,endPoint:p}};const vUt=function(i,s,u,d){let p=0;for(let v of s){p=p+1;let b=v.wrap&&$s.wrap,y=bUt($s);d.db.getC4Type()==="C4Dynamic"&&(v.label.text=p+": "+v.label.text);let _=H4(v.label.text,y);$3("label",v,b,y,_),v.techn&&v.techn.text!==""&&(_=H4(v.techn.text,y),$3("techn",v,b,y,_)),v.descr&&v.descr.text!==""&&(_=H4(v.descr.text,y),$3("descr",v,b,y,_));let A=u(v.from),P=u(v.to),R=mUt(A,P);v.startPoint=R.startPoint,v.endPoint=R.endPoint}J4.drawRels(i,s,$s)};function Dqe(i,s,u,d,p){let v=new _qe(p);v.data.widthLimit=u.data.widthLimit/Math.min(Hbe,d.length);for(let[b,y]of d.entries()){let T=0;y.image={width:0,height:0,Y:0},y.sprite&&(y.image.width=48,y.image.height=48,y.image.Y=T,T=y.image.Y+y.image.height);let _=y.wrap&&$s.wrap,A=DQ($s);if(A.fontSize=A.fontSize+2,A.fontWeight="bold",$3("label",y,_,A,v.data.widthLimit),y.label.Y=T+8,T=y.label.Y+y.label.height,y.type&&y.type.text!==""){y.type.text="["+y.type.text+"]";let j=DQ($s);$3("type",y,_,j,v.data.widthLimit),y.type.Y=T+5,T=y.type.Y+y.type.height}if(y.descr&&y.descr.text!==""){let j=DQ($s);j.fontSize=j.fontSize-2,$3("descr",y,_,j,v.data.widthLimit),y.descr.Y=T+20,T=y.descr.Y+y.descr.height}if(b==0||b%Hbe===0){let j=u.data.startx+$s.diagramMarginX,K=u.data.stopy+$s.diagramMarginY+T;v.setData(j,j,K,K)}else{let j=v.data.stopx!==v.data.startx?v.data.stopx+$s.diagramMarginX:v.data.startx,K=v.data.starty;v.setData(j,j,K,K)}v.name=y.alias;let P=p.db.getC4ShapeArray(y.alias),R=p.db.getC4ShapeKeys(y.alias);R.length>0&&Lqe(v,i,P,R),s=y.alias;let F=p.db.getBoundarys(s);F.length>0&&Dqe(i,s,v,F,p),y.alias!=="global"&&Aqe(i,y,v),u.data.stopy=Math.max(v.data.stopy+$s.c4ShapeMargin,u.data.stopy),u.data.stopx=Math.max(v.data.stopx+$s.c4ShapeMargin,u.data.stopx),LQ=Math.max(LQ,u.data.stopx),MQ=Math.max(MQ,u.data.stopy)}}const Iqe={drawPersonOrSystemArray:Lqe,drawBoundary:Aqe,setConf:Vbe,draw:function(i,s,u,d){$s=qt().c4;const p=qt().securityLevel;let v;p==="sandbox"&&(v=Ir("#i"+s));const b=Ir(p==="sandbox"?v.nodes()[0].contentDocument.body:"body");let y=d.db;d.db.setWrap($s.wrap),Sqe=y.getC4ShapeInRow(),Hbe=y.getC4BoundaryInRow(),Xe.debug(`C:${JSON.stringify($s,null,2)}`);const T=p==="sandbox"?b.select(`[id="${s}"]`):Ir(`[id="${s}"]`);J4.insertComputerIcon(T),J4.insertDatabaseIcon(T),J4.insertClockIcon(T);let _=new _qe(d);_.setData($s.diagramMarginX,$s.diagramMarginX,$s.diagramMarginY,$s.diagramMarginY),_.data.widthLimit=screen.availWidth,LQ=$s.diagramMarginX,MQ=$s.diagramMarginY;const A=d.db.getTitle();let P=d.db.getBoundarys("");Dqe(T,"",_,P,d),J4.insertArrowHead(T),J4.insertArrowEnd(T),J4.insertArrowCrossHead(T),J4.insertArrowFilledHead(T),vUt(T,d.db.getRels(),d.db.getC4Shape,d),_.data.stopx=LQ,_.data.stopy=MQ;const R=_.data;let j=R.stopy-R.starty+2*$s.diagramMarginY;const ee=R.stopx-R.startx+2*$s.diagramMarginX;A&&T.append("text").text(A).attr("x",(R.stopx-R.startx)/2-4*$s.diagramMarginX).attr("y",R.starty+$s.diagramMarginY),Ng(T,j,ee,$s.useMaxWidth);const ie=A?60:0;T.attr("viewBox",R.startx-$s.diagramMarginX+" -"+($s.diagramMarginY+ie)+" "+ee+" "+(j+ie)),Xe.debug("models:",R)}},wUt=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:DVt,db:$be,renderer:Iqe,styles:i=>`.person {
+ stroke: ${i.personBorder};
+ fill: ${i.personBkg};
+ }
+`,init:({c4:i,wrap:s})=>{Iqe.setConf(i),$be.setWrap(s)}}},Symbol.toStringTag,{value:"Module"}));var Ube=function(){var i=function($0,Wi,Bs,Qa){for(Bs=Bs||{},Qa=$0.length;Qa--;Bs[$0[Qa]]=Wi);return Bs},s=[1,4],u=[1,3],d=[1,5],p=[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],v=[2,2],b=[1,13],y=[1,14],T=[1,15],_=[1,16],A=[1,23],P=[1,25],R=[1,26],F=[1,27],j=[1,49],K=[1,48],ee=[1,29],ie=[1,30],oe=[1,31],pe=[1,32],be=[1,33],ae=[1,44],ne=[1,46],se=[1,42],de=[1,47],X=[1,43],ge=[1,50],W=[1,45],xe=[1,51],U=[1,52],Fe=[1,34],Pe=[1,35],je=[1,36],Ie=[1,37],Se=[1,57],Ce=[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],ke=[1,61],Ke=[1,60],Ft=[1,62],Ne=[8,9,11,73,75],gn=[1,88],_t=[1,93],Et=[1,92],Gt=[1,89],ln=[1,85],xt=[1,91],Pt=[1,87],Qe=[1,94],Dt=[1,90],kt=[1,95],On=[1,86],ht=[8,9,10,11,73,75],zr=[8,9,10,11,44,73,75],yt=[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],ji=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],xi=[42,58,86,99,102,103,106,108,111,112,113],Ma=[1,121],zs=[1,120],ao=[1,128],Tr=[1,142],Fn=[1,143],qn=[1,144],Un=[1,145],At=[1,130],wt=[1,132],on=[1,136],fn=[1,137],An=[1,138],oo=[1,139],jo=[1,140],$o=[1,141],Pa=[1,146],wo=[1,147],_s=[1,126],tl=[1,127],da=[1,134],j0=[1,129],pm=[1,133],Ml=[1,131],Xc=[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],Bc=[1,149],ja=[8,9,11],Ou=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],Sa=[1,169],Po=[1,165],Fc=[1,166],xa=[1,170],Ba=[1,167],ga=[1,168],kh=[75,113,116],lu=[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],o5=[10,103],Wh=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],od=[1,235],Gd=[1,233],cd=[1,237],Kd=[1,231],$g=[1,232],as=[1,234],wn=[1,236],Zr=[1,238],Zi=[1,255],nu=[8,9,11,103],vu=[8,9,10,11,58,81,102,103,106,107,108,109],Dl={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(Wi,Bs,Qa,Bi,Nu,Ot,W3){var Kt=Ot.length-1;switch(Nu){case 2:this.$=[];break;case 3:(!Array.isArray(Ot[Kt])||Ot[Kt].length>0)&&Ot[Kt-1].push(Ot[Kt]),this.$=Ot[Kt-1];break;case 4:case 176:this.$=Ot[Kt];break;case 11:Bi.setDirection("TB"),this.$="TB";break;case 12:Bi.setDirection(Ot[Kt-1]),this.$=Ot[Kt-1];break;case 27:this.$=Ot[Kt-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Bi.addSubGraph(Ot[Kt-6],Ot[Kt-1],Ot[Kt-4]);break;case 34:this.$=Bi.addSubGraph(Ot[Kt-3],Ot[Kt-1],Ot[Kt-3]);break;case 35:this.$=Bi.addSubGraph(void 0,Ot[Kt-1],void 0);break;case 37:this.$=Ot[Kt].trim(),Bi.setAccTitle(this.$);break;case 38:case 39:this.$=Ot[Kt].trim(),Bi.setAccDescription(this.$);break;case 43:Bi.addLink(Ot[Kt-2].stmt,Ot[Kt],Ot[Kt-1]),this.$={stmt:Ot[Kt],nodes:Ot[Kt].concat(Ot[Kt-2].nodes)};break;case 44:Bi.addLink(Ot[Kt-3].stmt,Ot[Kt-1],Ot[Kt-2]),this.$={stmt:Ot[Kt-1],nodes:Ot[Kt-1].concat(Ot[Kt-3].nodes)};break;case 45:this.$={stmt:Ot[Kt-1],nodes:Ot[Kt-1]};break;case 46:this.$={stmt:Ot[Kt],nodes:Ot[Kt]};break;case 47:this.$=[Ot[Kt]];break;case 48:this.$=Ot[Kt-4].concat(Ot[Kt]);break;case 49:this.$=Ot[Kt];break;case 50:this.$=Ot[Kt-2],Bi.setClass(Ot[Kt-2],Ot[Kt]);break;case 51:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"square");break;case 52:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"doublecircle");break;case 53:this.$=Ot[Kt-5],Bi.addVertex(Ot[Kt-5],Ot[Kt-2],"circle");break;case 54:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"ellipse");break;case 55:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"stadium");break;case 56:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"subroutine");break;case 57:this.$=Ot[Kt-7],Bi.addVertex(Ot[Kt-7],Ot[Kt-1],"rect",void 0,void 0,void 0,Object.fromEntries([[Ot[Kt-5],Ot[Kt-3]]]));break;case 58:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"cylinder");break;case 59:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"round");break;case 60:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"diamond");break;case 61:this.$=Ot[Kt-5],Bi.addVertex(Ot[Kt-5],Ot[Kt-2],"hexagon");break;case 62:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"odd");break;case 63:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"trapezoid");break;case 64:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"inv_trapezoid");break;case 65:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"lean_right");break;case 66:this.$=Ot[Kt-3],Bi.addVertex(Ot[Kt-3],Ot[Kt-1],"lean_left");break;case 67:this.$=Ot[Kt],Bi.addVertex(Ot[Kt]);break;case 68:Ot[Kt-1].text=Ot[Kt],this.$=Ot[Kt-1];break;case 69:case 70:Ot[Kt-2].text=Ot[Kt-1],this.$=Ot[Kt-2];break;case 71:this.$=Ot[Kt];break;case 72:var z0=Bi.destructLink(Ot[Kt],Ot[Kt-2]);this.$={type:z0.type,stroke:z0.stroke,length:z0.length,text:Ot[Kt-1]};break;case 73:this.$={text:Ot[Kt],type:"text"};break;case 74:this.$={text:Ot[Kt-1].text+""+Ot[Kt],type:Ot[Kt-1].type};break;case 75:this.$={text:Ot[Kt],type:"string"};break;case 76:this.$={text:Ot[Kt],type:"markdown"};break;case 77:var z0=Bi.destructLink(Ot[Kt]);this.$={type:z0.type,stroke:z0.stroke,length:z0.length};break;case 78:this.$=Ot[Kt-1];break;case 79:this.$={text:Ot[Kt],type:"text"};break;case 80:this.$={text:Ot[Kt-1].text+""+Ot[Kt],type:Ot[Kt-1].type};break;case 81:this.$={text:Ot[Kt],type:"string"};break;case 82:case 97:this.$={text:Ot[Kt],type:"markdown"};break;case 94:this.$={text:Ot[Kt],type:"text"};break;case 95:this.$={text:Ot[Kt-1].text+""+Ot[Kt],type:Ot[Kt-1].type};break;case 96:this.$={text:Ot[Kt],type:"text"};break;case 98:this.$=Ot[Kt-4],Bi.addClass(Ot[Kt-2],Ot[Kt]);break;case 99:this.$=Ot[Kt-4],Bi.setClass(Ot[Kt-2],Ot[Kt]);break;case 100:case 108:this.$=Ot[Kt-1],Bi.setClickEvent(Ot[Kt-1],Ot[Kt]);break;case 101:case 109:this.$=Ot[Kt-3],Bi.setClickEvent(Ot[Kt-3],Ot[Kt-2]),Bi.setTooltip(Ot[Kt-3],Ot[Kt]);break;case 102:this.$=Ot[Kt-2],Bi.setClickEvent(Ot[Kt-2],Ot[Kt-1],Ot[Kt]);break;case 103:this.$=Ot[Kt-4],Bi.setClickEvent(Ot[Kt-4],Ot[Kt-3],Ot[Kt-2]),Bi.setTooltip(Ot[Kt-4],Ot[Kt]);break;case 104:this.$=Ot[Kt-2],Bi.setLink(Ot[Kt-2],Ot[Kt]);break;case 105:this.$=Ot[Kt-4],Bi.setLink(Ot[Kt-4],Ot[Kt-2]),Bi.setTooltip(Ot[Kt-4],Ot[Kt]);break;case 106:this.$=Ot[Kt-4],Bi.setLink(Ot[Kt-4],Ot[Kt-2],Ot[Kt]);break;case 107:this.$=Ot[Kt-6],Bi.setLink(Ot[Kt-6],Ot[Kt-4],Ot[Kt]),Bi.setTooltip(Ot[Kt-6],Ot[Kt-2]);break;case 110:this.$=Ot[Kt-1],Bi.setLink(Ot[Kt-1],Ot[Kt]);break;case 111:this.$=Ot[Kt-3],Bi.setLink(Ot[Kt-3],Ot[Kt-2]),Bi.setTooltip(Ot[Kt-3],Ot[Kt]);break;case 112:this.$=Ot[Kt-3],Bi.setLink(Ot[Kt-3],Ot[Kt-2],Ot[Kt]);break;case 113:this.$=Ot[Kt-5],Bi.setLink(Ot[Kt-5],Ot[Kt-4],Ot[Kt]),Bi.setTooltip(Ot[Kt-5],Ot[Kt-2]);break;case 114:this.$=Ot[Kt-4],Bi.addVertex(Ot[Kt-2],void 0,void 0,Ot[Kt]);break;case 115:this.$=Ot[Kt-4],Bi.updateLink([Ot[Kt-2]],Ot[Kt]);break;case 116:this.$=Ot[Kt-4],Bi.updateLink(Ot[Kt-2],Ot[Kt]);break;case 117:this.$=Ot[Kt-8],Bi.updateLinkInterpolate([Ot[Kt-6]],Ot[Kt-2]),Bi.updateLink([Ot[Kt-6]],Ot[Kt]);break;case 118:this.$=Ot[Kt-8],Bi.updateLinkInterpolate(Ot[Kt-6],Ot[Kt-2]),Bi.updateLink(Ot[Kt-6],Ot[Kt]);break;case 119:this.$=Ot[Kt-6],Bi.updateLinkInterpolate([Ot[Kt-4]],Ot[Kt]);break;case 120:this.$=Ot[Kt-6],Bi.updateLinkInterpolate(Ot[Kt-4],Ot[Kt]);break;case 121:case 123:this.$=[Ot[Kt]];break;case 122:case 124:Ot[Kt-2].push(Ot[Kt]),this.$=Ot[Kt-2];break;case 126:this.$=Ot[Kt-1]+Ot[Kt];break;case 174:this.$=Ot[Kt];break;case 175:this.$=Ot[Kt-1]+""+Ot[Kt];break;case 177:this.$=Ot[Kt-1]+""+Ot[Kt];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:s,10:u,12:d},{1:[3]},i(p,v,{5:6}),{4:7,9:s,10:u,12:d},{4:8,9:s,10:u,12:d},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:b,9:y,10:T,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:A,33:24,34:P,36:R,38:F,40:28,41:38,42:j,43:39,45:40,58:K,81:ee,82:ie,83:oe,84:pe,85:be,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U,118:Fe,119:Pe,120:je,121:Ie},i(p,[2,9]),i(p,[2,10]),i(p,[2,11]),{8:[1,54],9:[1,55],10:Se,15:53,18:56},i(Ce,[2,3]),i(Ce,[2,4]),i(Ce,[2,5]),i(Ce,[2,6]),i(Ce,[2,7]),i(Ce,[2,8]),{8:ke,9:Ke,11:Ft,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:ke,9:Ke,11:Ft,21:66},{8:ke,9:Ke,11:Ft,21:67},{8:ke,9:Ke,11:Ft,21:68},{8:ke,9:Ke,11:Ft,21:69},{8:ke,9:Ke,11:Ft,21:70},{8:ke,9:Ke,10:[1,71],11:Ft,21:72},i(Ce,[2,36]),{35:[1,73]},{37:[1,74]},i(Ce,[2,39]),i(Ne,[2,46],{18:75,10:Se}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:gn,42:_t,58:Et,77:[1,83],86:Gt,92:[1,80],94:[1,81],98:82,102:ln,103:xt,106:Pt,108:Qe,111:Dt,112:kt,113:On,117:84},i(Ce,[2,178]),i(Ce,[2,179]),i(Ce,[2,180]),i(Ce,[2,181]),i(ht,[2,47]),i(ht,[2,49],{44:[1,96]}),i(zr,[2,67],{110:109,29:[1,97],42:j,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:K,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:ae,99:ne,102:se,103:de,106:X,108:ge,111:W,112:xe,113:U}),i(yt,[2,174]),i(yt,[2,135]),i(yt,[2,136]),i(yt,[2,137]),i(yt,[2,138]),i(yt,[2,139]),i(yt,[2,140]),i(yt,[2,141]),i(yt,[2,142]),i(yt,[2,143]),i(yt,[2,144]),i(yt,[2,145]),i(p,[2,12]),i(p,[2,18]),i(p,[2,19]),{9:[1,110]},i(ji,[2,26],{18:111,10:Se}),i(Ce,[2,27]),{40:112,41:38,42:j,43:39,45:40,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},i(Ce,[2,40]),i(Ce,[2,41]),i(Ce,[2,42]),i(xi,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:Ma,116:zs},i([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),i(Ce,[2,28]),i(Ce,[2,29]),i(Ce,[2,30]),i(Ce,[2,31]),i(Ce,[2,32]),{10:ao,12:Tr,14:Fn,27:qn,28:122,32:Un,42:At,58:wt,73:on,77:[1,124],78:[1,125],80:135,81:fn,82:An,83:oo,84:jo,85:$o,86:Pa,87:wo,88:123,102:_s,106:tl,108:da,111:j0,112:pm,113:Ml},i(Xc,v,{5:148}),i(Ce,[2,37]),i(Ce,[2,38]),i(Ne,[2,45],{42:Bc}),{42:j,45:150,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},{99:[1,151],100:152,102:[1,153]},{42:j,45:154,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},{42:j,45:155,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},i(ja,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},i(ja,[2,108],{117:160,10:[1,159],14:gn,42:_t,58:Et,86:Gt,102:ln,103:xt,106:Pt,108:Qe,111:Dt,112:kt,113:On}),i(ja,[2,110],{10:[1,161]}),i(Ou,[2,176]),i(Ou,[2,163]),i(Ou,[2,164]),i(Ou,[2,165]),i(Ou,[2,166]),i(Ou,[2,167]),i(Ou,[2,168]),i(Ou,[2,169]),i(Ou,[2,170]),i(Ou,[2,171]),i(Ou,[2,172]),i(Ou,[2,173]),{42:j,45:162,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},{30:163,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:171,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:173,48:[1,172],65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:174,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:175,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:176,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{106:[1,177]},{30:178,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:179,63:[1,180],65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:181,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:182,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{30:183,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},i(yt,[2,175]),i(p,[2,20]),i(ji,[2,25]),i(Ne,[2,43],{18:184,10:Se}),i(xi,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{75:[1,188],76:189,113:Ma,116:zs},i(kh,[2,73]),i(kh,[2,75]),i(kh,[2,76]),i(kh,[2,161]),i(kh,[2,162]),{8:ke,9:Ke,10:ao,11:Ft,12:Tr,14:Fn,21:191,27:qn,29:[1,190],32:Un,42:At,58:wt,73:on,80:135,81:fn,82:An,83:oo,84:jo,85:$o,86:Pa,87:wo,88:192,102:_s,106:tl,108:da,111:j0,112:pm,113:Ml},i(lu,[2,94]),i(lu,[2,96]),i(lu,[2,97]),i(lu,[2,150]),i(lu,[2,151]),i(lu,[2,152]),i(lu,[2,153]),i(lu,[2,154]),i(lu,[2,155]),i(lu,[2,156]),i(lu,[2,157]),i(lu,[2,158]),i(lu,[2,159]),i(lu,[2,160]),i(lu,[2,83]),i(lu,[2,84]),i(lu,[2,85]),i(lu,[2,86]),i(lu,[2,87]),i(lu,[2,88]),i(lu,[2,89]),i(lu,[2,90]),i(lu,[2,91]),i(lu,[2,92]),i(lu,[2,93]),{6:11,7:12,8:b,9:y,10:T,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:A,32:[1,193],33:24,34:P,36:R,38:F,40:28,41:38,42:j,43:39,45:40,58:K,81:ee,82:ie,83:oe,84:pe,85:be,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U,118:Fe,119:Pe,120:je,121:Ie},{10:Se,18:194},{10:[1,195],42:j,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:109,111:W,112:xe,113:U},{10:[1,196]},{10:[1,197],103:[1,198]},i(o5,[2,121]),{10:[1,199],42:j,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:109,111:W,112:xe,113:U},{10:[1,200],42:j,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:109,111:W,112:xe,113:U},{77:[1,201]},i(ja,[2,102],{10:[1,202]}),i(ja,[2,104],{10:[1,203]}),{77:[1,204]},i(Ou,[2,177]),{77:[1,205],95:[1,206]},i(ht,[2,50],{110:109,42:j,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,111:W,112:xe,113:U}),{31:[1,207],65:Sa,79:208,113:xa,114:Ba,115:ga},i(Wh,[2,79]),i(Wh,[2,81]),i(Wh,[2,82]),i(Wh,[2,146]),i(Wh,[2,147]),i(Wh,[2,148]),i(Wh,[2,149]),{47:[1,209],65:Sa,79:208,113:xa,114:Ba,115:ga},{30:210,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{49:[1,211],65:Sa,79:208,113:xa,114:Ba,115:ga},{51:[1,212],65:Sa,79:208,113:xa,114:Ba,115:ga},{53:[1,213],65:Sa,79:208,113:xa,114:Ba,115:ga},{55:[1,214],65:Sa,79:208,113:xa,114:Ba,115:ga},{58:[1,215]},{62:[1,216],65:Sa,79:208,113:xa,114:Ba,115:ga},{64:[1,217],65:Sa,79:208,113:xa,114:Ba,115:ga},{30:218,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},{31:[1,219],65:Sa,79:208,113:xa,114:Ba,115:ga},{65:Sa,67:[1,220],69:[1,221],79:208,113:xa,114:Ba,115:ga},{65:Sa,67:[1,223],69:[1,222],79:208,113:xa,114:Ba,115:ga},i(Ne,[2,44],{42:Bc}),i(xi,[2,70]),i(xi,[2,69]),{60:[1,224],65:Sa,79:208,113:xa,114:Ba,115:ga},i(xi,[2,72]),i(kh,[2,74]),{30:225,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},i(Xc,v,{5:226}),i(lu,[2,95]),i(Ce,[2,35]),{41:227,42:j,43:39,45:40,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},{10:od,58:Gd,81:cd,89:228,102:Kd,104:229,105:230,106:$g,107:as,108:wn,109:Zr},{10:od,58:Gd,81:cd,89:239,101:[1,240],102:Kd,104:229,105:230,106:$g,107:as,108:wn,109:Zr},{10:od,58:Gd,81:cd,89:241,101:[1,242],102:Kd,104:229,105:230,106:$g,107:as,108:wn,109:Zr},{102:[1,243]},{10:od,58:Gd,81:cd,89:244,102:Kd,104:229,105:230,106:$g,107:as,108:wn,109:Zr},{42:j,45:245,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U},i(ja,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},i(ja,[2,109]),i(ja,[2,111],{10:[1,249]}),i(ja,[2,112]),i(zr,[2,51]),i(Wh,[2,80]),i(zr,[2,52]),{49:[1,250],65:Sa,79:208,113:xa,114:Ba,115:ga},i(zr,[2,59]),i(zr,[2,54]),i(zr,[2,55]),i(zr,[2,56]),{106:[1,251]},i(zr,[2,58]),i(zr,[2,60]),{64:[1,252],65:Sa,79:208,113:xa,114:Ba,115:ga},i(zr,[2,62]),i(zr,[2,63]),i(zr,[2,65]),i(zr,[2,64]),i(zr,[2,66]),i([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:Sa,79:208,113:xa,114:Ba,115:ga},{6:11,7:12,8:b,9:y,10:T,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:A,32:[1,254],33:24,34:P,36:R,38:F,40:28,41:38,42:j,43:39,45:40,58:K,81:ee,82:ie,83:oe,84:pe,85:be,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U,118:Fe,119:Pe,120:je,121:Ie},i(ht,[2,48]),i(ja,[2,114],{103:Zi}),i(nu,[2,123],{105:256,10:od,58:Gd,81:cd,102:Kd,106:$g,107:as,108:wn,109:Zr}),i(vu,[2,125]),i(vu,[2,127]),i(vu,[2,128]),i(vu,[2,129]),i(vu,[2,130]),i(vu,[2,131]),i(vu,[2,132]),i(vu,[2,133]),i(vu,[2,134]),i(ja,[2,115],{103:Zi}),{10:[1,257]},i(ja,[2,116],{103:Zi}),{10:[1,258]},i(o5,[2,122]),i(ja,[2,98],{103:Zi}),i(ja,[2,99],{110:109,42:j,58:K,86:ae,99:ne,102:se,103:de,106:X,108:ge,111:W,112:xe,113:U}),i(ja,[2,103]),i(ja,[2,105],{10:[1,259]}),i(ja,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:ke,9:Ke,11:Ft,21:264},i(Ce,[2,34]),{10:od,58:Gd,81:cd,102:Kd,104:265,105:230,106:$g,107:as,108:wn,109:Zr},i(vu,[2,126]),{14:gn,42:_t,58:Et,86:Gt,98:266,102:ln,103:xt,106:Pt,108:Qe,111:Dt,112:kt,113:On,117:84},{14:gn,42:_t,58:Et,86:Gt,98:267,102:ln,103:xt,106:Pt,108:Qe,111:Dt,112:kt,113:On,117:84},{95:[1,268]},i(ja,[2,113]),i(zr,[2,53]),{30:269,65:Sa,77:Po,78:Fc,79:164,113:xa,114:Ba,115:ga},i(zr,[2,61]),i(Xc,v,{5:270}),i(nu,[2,124],{105:256,10:od,58:Gd,81:cd,102:Kd,106:$g,107:as,108:wn,109:Zr}),i(ja,[2,119],{117:160,10:[1,271],14:gn,42:_t,58:Et,86:Gt,102:ln,103:xt,106:Pt,108:Qe,111:Dt,112:kt,113:On}),i(ja,[2,120],{117:160,10:[1,272],14:gn,42:_t,58:Et,86:Gt,102:ln,103:xt,106:Pt,108:Qe,111:Dt,112:kt,113:On}),i(ja,[2,107]),{31:[1,273],65:Sa,79:208,113:xa,114:Ba,115:ga},{6:11,7:12,8:b,9:y,10:T,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:A,32:[1,274],33:24,34:P,36:R,38:F,40:28,41:38,42:j,43:39,45:40,58:K,81:ee,82:ie,83:oe,84:pe,85:be,86:ae,99:ne,102:se,103:de,106:X,108:ge,110:41,111:W,112:xe,113:U,118:Fe,119:Pe,120:je,121:Ie},{10:od,58:Gd,81:cd,89:275,102:Kd,104:229,105:230,106:$g,107:as,108:wn,109:Zr},{10:od,58:Gd,81:cd,89:276,102:Kd,104:229,105:230,106:$g,107:as,108:wn,109:Zr},i(zr,[2,57]),i(Ce,[2,33]),i(ja,[2,117],{103:Zi}),i(ja,[2,118],{103:Zi})],defaultActions:{},parseError:function(Wi,Bs){if(Bs.recoverable)this.trace(Wi);else{var Qa=new Error(Wi);throw Qa.hash=Bs,Qa}},parse:function(Wi){var Bs=this,Qa=[0],Bi=[],Nu=[null],Ot=[],W3=this.table,Kt="",z0=0,Bp=0,Y3=2,$9=1,c5=Ot.slice.call(arguments,1),Eh=Object.create(this.lexer),zg={yy:{}};for(var bm in this.yy)Object.prototype.hasOwnProperty.call(this.yy,bm)&&(zg.yy[bm]=this.yy[bm]);Eh.setInput(Wi,zg.yy),zg.yy.lexer=Eh,zg.yy.parser=this,typeof Eh.yylloc>"u"&&(Eh.yylloc={});var z9=Eh.yylloc;Ot.push(z9);var mm=Eh.options&&Eh.options.ranges;typeof zg.yy.parseError=="function"?this.parseError=zg.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function u5(){var Fp;return Fp=Bi.pop()||Eh.lex()||$9,typeof Fp!="number"&&(Fp instanceof Array&&(Bi=Fp,Fp=Bi.pop()),Fp=Bs.symbols_[Fp]||Fp),Fp}for(var y1,ud,ld,q9,Vv={},Y7,G2,X7,l5;;){if(ud=Qa[Qa.length-1],this.defaultActions[ud]?ld=this.defaultActions[ud]:((y1===null||typeof y1>"u")&&(y1=u5()),ld=W3[ud]&&W3[ud][y1]),typeof ld>"u"||!ld.length||!ld[0]){var X3="";l5=[];for(Y7 in W3[ud])this.terminals_[Y7]&&Y7>Y3&&l5.push("'"+this.terminals_[Y7]+"'");Eh.showPosition?X3="Parse error on line "+(z0+1)+`:
+`+Eh.showPosition()+`
+Expecting `+l5.join(", ")+", got '"+(this.terminals_[y1]||y1)+"'":X3="Parse error on line "+(z0+1)+": Unexpected "+(y1==$9?"end of input":"'"+(this.terminals_[y1]||y1)+"'"),this.parseError(X3,{text:Eh.match,token:this.terminals_[y1]||y1,line:Eh.yylineno,loc:z9,expected:l5})}if(ld[0]instanceof Array&&ld.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ud+", token: "+y1);switch(ld[0]){case 1:Qa.push(y1),Nu.push(Eh.yytext),Ot.push(Eh.yylloc),Qa.push(ld[1]),y1=null,Bp=Eh.yyleng,Kt=Eh.yytext,z0=Eh.yylineno,z9=Eh.yylloc;break;case 2:if(G2=this.productions_[ld[1]][1],Vv.$=Nu[Nu.length-G2],Vv._$={first_line:Ot[Ot.length-(G2||1)].first_line,last_line:Ot[Ot.length-1].last_line,first_column:Ot[Ot.length-(G2||1)].first_column,last_column:Ot[Ot.length-1].last_column},mm&&(Vv._$.range=[Ot[Ot.length-(G2||1)].range[0],Ot[Ot.length-1].range[1]]),q9=this.performAction.apply(Vv,[Kt,Bp,z0,zg.yy,ld[1],Nu,Ot].concat(c5)),typeof q9<"u")return q9;G2&&(Qa=Qa.slice(0,-1*G2*2),Nu=Nu.slice(0,-1*G2),Ot=Ot.slice(0,-1*G2)),Qa.push(this.productions_[ld[1]][0]),Nu.push(Vv.$),Ot.push(Vv._$),X7=W3[Qa[Qa.length-2]][Qa[Qa.length-1]],Qa.push(X7);break;case 3:return!0}}return!0}},Yh=function(){var $0={EOF:1,parseError:function(Bs,Qa){if(this.yy.parser)this.yy.parser.parseError(Bs,Qa);else throw new Error(Bs)},setInput:function(Wi,Bs){return this.yy=Bs||this.yy||{},this._input=Wi,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 Wi=this._input[0];this.yytext+=Wi,this.yyleng++,this.offset++,this.match+=Wi,this.matched+=Wi;var Bs=Wi.match(/(?:\r\n?|\n).*/g);return Bs?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Wi},unput:function(Wi){var Bs=Wi.length,Qa=Wi.split(/(?:\r\n?|\n)/g);this._input=Wi+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Bs),this.offset-=Bs;var Bi=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),Qa.length-1&&(this.yylineno-=Qa.length-1);var Nu=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:Qa?(Qa.length===Bi.length?this.yylloc.first_column:0)+Bi[Bi.length-Qa.length].length-Qa[0].length:this.yylloc.first_column-Bs},this.options.ranges&&(this.yylloc.range=[Nu[0],Nu[0]+this.yyleng-Bs]),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(Wi){this.unput(this.match.slice(Wi))},pastInput:function(){var Wi=this.matched.substr(0,this.matched.length-this.match.length);return(Wi.length>20?"...":"")+Wi.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Wi=this.match;return Wi.length<20&&(Wi+=this._input.substr(0,20-Wi.length)),(Wi.substr(0,20)+(Wi.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Wi=this.pastInput(),Bs=new Array(Wi.length+1).join("-");return Wi+this.upcomingInput()+`
+`+Bs+"^"},test_match:function(Wi,Bs){var Qa,Bi,Nu;if(this.options.backtrack_lexer&&(Nu={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&&(Nu.yylloc.range=this.yylloc.range.slice(0))),Bi=Wi[0].match(/(?:\r\n?|\n).*/g),Bi&&(this.yylineno+=Bi.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Bi?Bi[Bi.length-1].length-Bi[Bi.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Wi[0].length},this.yytext+=Wi[0],this.match+=Wi[0],this.matches=Wi,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(Wi[0].length),this.matched+=Wi[0],Qa=this.performAction.call(this,this.yy,this,Bs,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Qa)return Qa;if(this._backtrack){for(var Ot in Nu)this[Ot]=Nu[Ot];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Wi,Bs,Qa,Bi;this._more||(this.yytext="",this.match="");for(var Nu=this._currentRules(),Ot=0;OtBs[0].length)){if(Bs=Qa,Bi=Ot,this.options.backtrack_lexer){if(Wi=this.test_match(Qa,Nu[Ot]),Wi!==!1)return Wi;if(this._backtrack){Bs=!1;continue}else return!1}else if(!this.options.flex)break}return Bs?(Wi=this.test_match(Bs,Nu[Bi]),Wi!==!1?Wi:!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 Bs=this.next();return Bs||this.lex()},begin:function(Bs){this.conditionStack.push(Bs)},popState:function(){var Bs=this.conditionStack.length-1;return Bs>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(Bs){return Bs=this.conditionStack.length-1-Math.abs(Bs||0),Bs>=0?this.conditionStack[Bs]:"INITIAL"},pushState:function(Bs){this.begin(Bs)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Bs,Qa,Bi,Nu){switch(Bi){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 Bs.lex.firstGraph()&&this.begin("dir"),12;case 30:return Bs.lex.firstGraph()&&this.begin("dir"),12;case 31:return Bs.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 $0}();Dl.lexer=Yh;function w1(){this.yy={}}return w1.prototype=Dl,Dl.Parser=w1,new w1}();Ube.parser=Ube;const Gbe=Ube,yUt="flowchart-";let Oqe=0,BD=qt(),oh={},z3=[],FD={},R7=[],IQ={},OQ={},NQ=0,Kbe=!0,$v,PQ,BQ=[];const FQ=i=>ci.sanitizeText(i,BD),mR=function(i){const s=Object.keys(oh);for(const u of s)if(oh[u].id===i)return oh[u].domId;return i},Nqe=function(i,s,u,d,p,v,b={}){let y,T=i;T!==void 0&&T.trim().length!==0&&(oh[T]===void 0&&(oh[T]={id:T,labelType:"text",domId:yUt+T+"-"+Oqe,styles:[],classes:[]}),Oqe++,s!==void 0?(BD=qt(),y=FQ(s.text.trim()),oh[T].labelType=s.type,y[0]==='"'&&y[y.length-1]==='"'&&(y=y.substring(1,y.length-1)),oh[T].text=y):oh[T].text===void 0&&(oh[T].text=i),u!==void 0&&(oh[T].type=u),d!=null&&d.forEach(function(_){oh[T].styles.push(_)}),p!=null&&p.forEach(function(_){oh[T].classes.push(_)}),v!==void 0&&(oh[T].dir=v),oh[T].props===void 0?oh[T].props=b:b!==void 0&&Object.assign(oh[T].props,b))},Pqe=function(i,s,u){const v={start:i,end:s,type:void 0,text:"",labelType:"text"};Xe.info("abc78 Got edge...",v);const b=u.text;if(b!==void 0&&(v.text=FQ(b.text.trim()),v.text[0]==='"'&&v.text[v.text.length-1]==='"'&&(v.text=v.text.substring(1,v.text.length-1)),v.labelType=b.type),u!==void 0&&(v.type=u.type,v.stroke=u.stroke,v.length=u.length),(v==null?void 0:v.length)>10&&(v.length=10),z3.length<(BD.maxEdges??500))Xe.info("abc78 pushing edge..."),z3.push(v);else throw new Error(`Edge limit exceeded. ${z3.length} edges found, but the limit is ${BD.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.`)},Bqe=function(i,s,u){Xe.info("addLink (abc78)",i,s,u);let d,p;for(d=0;d=z3.length)throw new Error(`The index ${u} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${z3.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);u==="default"?z3.defaultStyle=s:(Ao.isSubstringInArray("fill",s)===-1&&s.push("fill:none"),z3[u].style=s)})},jqe=function(i,s){i.split(",").forEach(function(u){FD[u]===void 0&&(FD[u]={id:u,styles:[],textStyles:[]}),s!=null&&s.forEach(function(d){if(d.match("color")){const p=d.replace("fill","bgFill").replace("color","fill");FD[u].textStyles.push(p)}FD[u].styles.push(d)})})},$qe=function(i){$v=i,$v.match(/.*)&&($v="RL"),$v.match(/.*\^/)&&($v="BT"),$v.match(/.*>/)&&($v="LR"),$v.match(/.*v/)&&($v="TB"),$v==="TD"&&($v="TB")},RQ=function(i,s){i.split(",").forEach(function(u){let d=u;oh[d]!==void 0&&oh[d].classes.push(s),IQ[d]!==void 0&&IQ[d].classes.push(s)})},xUt=function(i,s){i.split(",").forEach(function(u){s!==void 0&&(OQ[PQ==="gen-1"?mR(u):u]=FQ(s))})},kUt=function(i,s,u){let d=mR(i);if(qt().securityLevel!=="loose"||s===void 0)return;let p=[];if(typeof u=="string"){p=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v")),p.classed("hover",!0)}).on("mouseout",function(){s.transition().duration(500).style("opacity",0),Ir(this).classed("hover",!1)})};BQ.push(Yqe);const Xqe=function(i="gen-1"){oh={},FD={},z3=[],BQ=[Yqe],R7=[],IQ={},NQ=0,OQ={},Kbe=!0,PQ=i,BD=qt(),Pg()},Qqe=i=>{PQ=i||"gen-2"},Jqe=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},Zqe=function(i,s,u){let d=i.text.trim(),p=u.text;i===u&&u.text.match(/\s/)&&(d=void 0);function v(A){const P={boolean:{},number:{},string:{}},R=[];let F;return{nodeList:A.filter(function(K){const ee=typeof K;return K.stmt&&K.stmt==="dir"?(F=K.value,!1):K.trim()===""?!1:ee in P?P[ee].hasOwnProperty(K)?!1:P[ee][K]=!0:R.includes(K)?!1:R.push(K)}),dir:F}}let b=[];const{nodeList:y,dir:T}=v(b.concat.apply(b,s));if(b=y,PQ==="gen-1")for(let A=0;A2e3)return;if(eHe[vR]=s,R7[s].id===i)return{result:!0,count:0};let d=0,p=1;for(;d=0){const b=tHe(i,v);if(b.result)return{result:!0,count:p+b.count};p=p+b.count}d=d+1}return{result:!1,count:p}},nHe=function(i){return eHe[i]},rHe=function(){vR=-1,R7.length>0&&tHe("none",R7.length-1)},iHe=function(){return R7},sHe=()=>Kbe?(Kbe=!1,!0):!1,TUt=i=>{let s=i.trim(),u="arrow_open";switch(s[0]){case"<":u="arrow_point",s=s.slice(1);break;case"x":u="arrow_cross",s=s.slice(1);break;case"o":u="arrow_circle",s=s.slice(1);break}let d="normal";return s.includes("=")&&(d="thick"),s.includes(".")&&(d="dotted"),{type:u,stroke:d}},CUt=(i,s)=>{const u=s.length;let d=0;for(let p=0;p{const s=i.trim();let u=s.slice(0,-1),d="arrow_open";switch(s.slice(-1)){case"x":d="arrow_cross",s[0]==="x"&&(d="double_"+d,u=u.slice(1));break;case">":d="arrow_point",s[0]==="<"&&(d="double_"+d,u=u.slice(1));break;case"o":d="arrow_circle",s[0]==="o"&&(d="double_"+d,u=u.slice(1));break}let p="normal",v=u.length-1;u[0]==="="&&(p="thick"),u[0]==="~"&&(p="invisible");let b=CUt(".",u);return b&&(p="dotted",v=b),{type:d,stroke:p,length:v}},aHe=(i,s)=>{const u=SUt(i);let d;if(s){if(d=TUt(s),d.stroke!==u.stroke)return{type:"INVALID",stroke:"INVALID"};if(d.type==="arrow_open")d.type=u.type;else{if(d.type!==u.type)return{type:"INVALID",stroke:"INVALID"};d.type="double_"+d.type}return d.type==="double_arrow"&&(d.type="double_arrow_point"),d.length=u.length,d}return u},oHe=(i,s)=>{let u=!1;return i.forEach(d=>{d.nodes.indexOf(s)>=0&&(u=!0)}),u},cHe=(i,s)=>{const u=[];return i.nodes.forEach((d,p)=>{oHe(s,d)||u.push(i.nodes[p])}),{nodes:u}},uHe={firstGraph:sHe},HC={defaultConfig:()=>Zje.flowchart,setAccTitle:Bg,getAccTitle:Cp,getAccDescription:_p,setAccDescription:Sp,addVertex:Nqe,lookUpDomId:mR,addLink:Bqe,updateLinkInterpolate:Fqe,updateLink:Rqe,addClass:jqe,setDirection:$qe,setClass:RQ,setTooltip:xUt,getTooltip:qqe,setClickEvent:Hqe,setLink:zqe,bindFunctions:Vqe,getDirection:Uqe,getVertices:Gqe,getEdges:Kqe,getClasses:Wqe,clear:Xqe,setGen:Qqe,defaultStyle:Jqe,addSubGraph:Zqe,getDepthFirstPos:nHe,indexNodes:rHe,getSubGraphs:iHe,destructLink:aHe,lex:uHe,exists:oHe,makeUniq:cHe,setDiagramTitle:cm,getDiagramTitle:Ap},_Ut=Object.freeze(Object.defineProperty({__proto__:null,addClass:jqe,addLink:Bqe,addSingleLink:Pqe,addSubGraph:Zqe,addVertex:Nqe,bindFunctions:Vqe,clear:Xqe,default:HC,defaultStyle:Jqe,destructLink:aHe,firstGraph:sHe,getClasses:Wqe,getDepthFirstPos:nHe,getDirection:Uqe,getEdges:Kqe,getSubGraphs:iHe,getTooltip:qqe,getVertices:Gqe,indexNodes:rHe,lex:uHe,lookUpDomId:mR,setClass:RQ,setClickEvent:Hqe,setDirection:$qe,setGen:Qqe,setLink:zqe,updateLink:Rqe,updateLinkInterpolate:Fqe},Symbol.toStringTag,{value:"Module"}));var AUt="[object Symbol]";function VC(i){return typeof i=="symbol"||q4(i)&&AC(i)==AUt}function RD(i,s){for(var u=-1,d=i==null?0:i.length,p=Array(d);++u-1}function fm(i){return w9(i)?aje(i):l$e(i)}var GUt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,KUt=/^\w*$/;function Wbe(i,s){if(D0(i))return!1;var u=typeof i;return u=="number"||u=="symbol"||u=="boolean"||i==null||VC(i)?!0:KUt.test(i)||!GUt.test(i)||s!=null&&i in Object(s)}var WUt=500;function YUt(i){var s=bD(i,function(d){return u.size===WUt&&u.clear(),d}),u=s.cache;return s}var XUt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,QUt=/\\(\\)?/g,JUt=YUt(function(i){var s=[];return i.charCodeAt(0)===46&&s.push(""),i.replace(XUt,function(u,d,p,v){s.push(p?v.replace(QUt,"$1"):d||u)}),s});const ZUt=JUt;function mHe(i){return i==null?"":fHe(i)}function $Q(i,s){return D0(i)?i:Wbe(i,s)?[i]:ZUt(mHe(i))}var eGt=1/0;function wR(i){if(typeof i=="string"||VC(i))return i;var s=i+"";return s=="0"&&1/i==-eGt?"-0":s}function zQ(i,s){s=$Q(s,i);for(var u=0,d=s.length;i!=null&&u0&&u(y)?s>1?qQ(y,s-1,u,d,p):Ybe(p,y):d||(p[p.length]=y)}return p}function jD(i){var s=i==null?0:i.length;return s?qQ(i,1):[]}function rGt(i){return lje(uje(i,void 0,jD),i+"")}function iGt(i,s,u,d){var p=-1,v=i==null?0:i.length;for(d&&v&&(u=i[++p]);++py))return!1;var _=v.get(i),A=v.get(s);if(_&&A)return _==s&&A==i;var P=-1,R=!0,F=u&DKt?new xR:void 0;for(v.set(i,s),v.set(s,i);++P2?s[2]:void 0;for(p&&QF(s[0],s[1],p)&&(d=1);++u-1?p[v?s[b]:b]:void 0}}var yWt=Math.max;function xWt(i,s,u){var d=i==null?0:i.length;if(!d)return-1;var p=u==null?0:$Ut(u);return p<0&&(p=yWt(d+p,0)),bHe(i,I9(s),p)}var kWt=wWt(xWt);const rme=kWt;function VHe(i,s){var u=-1,d=w9(i)?Array(i.length):[];return VQ(i,function(p,v,b){d[++u]=s(p,v,b)}),d}function P0(i,s){var u=D0(i)?RD:VHe;return u(i,I9(s))}function EWt(i,s){return i==null?i:b2e(i,nme(s),IC)}function TWt(i,s){return i&&tme(i,nme(s))}function CWt(i,s){return i>s}var SWt=Object.prototype,_Wt=SWt.hasOwnProperty;function AWt(i,s){return i!=null&&_Wt.call(i,s)}function Lo(i,s){return i!=null&&$He(i,s,AWt)}function LWt(i,s){return RD(s,function(u){return i[u]})}function $7(i){return i==null?[]:LWt(i,fm(i))}function Qf(i){return i===void 0}function UHe(i,s){return is||v&&b&&T&&!y&&!_||d&&b&&T||!u&&T||!p)return 1;if(!d&&!v&&!_&&i=y)return T;var _=u[d];return T*(_=="desc"?-1:1)}}return i.index-s.index}function PWt(i,s,u){s.length?s=RD(s,function(v){return D0(v)?function(b){return zQ(b,v.length===1?v[0]:v)}:v}):s=[OC];var d=-1;s=RD(s,NX(I9));var p=VHe(i,function(v,b,y){var T=RD(s,function(_){return _(v)});return{criteria:T,index:++d,value:v}});return IWt(p,function(v,b){return NWt(v,b,u)})}function BWt(i,s){return DWt(i,s,function(u,d){return zHe(i,d)})}var FWt=rGt(function(i,s){return i==null?{}:BWt(i,s)});const ER=FWt;var RWt=Math.ceil,jWt=Math.max;function $Wt(i,s,u,d){for(var p=-1,v=jWt(RWt((s-i)/(u||1)),0),b=Array(v);v--;)b[d?v:++p]=i,i+=u;return b}function zWt(i){return function(s,u,d){return d&&typeof d!="number"&&QF(s,u,d)&&(u=d=void 0),s=jQ(s),u===void 0?(u=s,s=0):u=jQ(u),d=d===void 0?s1&&QF(i,s[0],s[1])?s=[]:u>2&&QF(s[0],s[1],s[2])&&(s=[s[0]]),PWt(i,qQ(s,1),[])});const CR=VWt;var UWt=1/0,GWt=CD&&1/Jbe(new CD([,-0]))[1]==UWt?function(i){return new CD(i)}:zUt;const KWt=GWt;var WWt=200;function YWt(i,s,u){var d=-1,p=UUt,v=i.length,b=!0,y=[],T=y;if(u)b=!1,p=mWt;else if(v>=WWt){var _=s?null:KWt(i);if(_)return Jbe(_);b=!1,p=IHe,T=new xR}else T=s?[]:y;e:for(;++d1?p.setNode(v,u):p.setNode(v)}),this}setNode(s,u){return Lo(this._nodes,s)?(arguments.length>1&&(this._nodes[s]=u),this):(this._nodes[s]=arguments.length>1?u:this._defaultNodeLabelFn(s),this._isCompound&&(this._parent[s]=KC,this._children[s]={},this._children[KC][s]=!0),this._in[s]={},this._preds[s]={},this._out[s]={},this._sucs[s]={},++this._nodeCount,this)}node(s){return this._nodes[s]}hasNode(s){return Lo(this._nodes,s)}removeNode(s){var u=this;if(Lo(this._nodes,s)){var d=function(p){u.removeEdge(u._edgeObjs[p])};delete this._nodes[s],this._isCompound&&(this._removeFromParentsChildList(s),delete this._parent[s],Ar(this.children(s),function(p){u.setParent(p)}),delete this._children[s]),Ar(fm(this._in[s]),d),delete this._in[s],delete this._preds[s],Ar(fm(this._out[s]),d),delete this._out[s],delete this._sucs[s],--this._nodeCount}return this}setParent(s,u){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Qf(u))u=KC;else{u+="";for(var d=u;!Qf(d);d=this.parent(d))if(d===s)throw new Error("Setting "+u+" as parent of "+s+" would create a cycle");this.setNode(u)}return this.setNode(s),this._removeFromParentsChildList(s),this._parent[s]=u,this._children[u][s]=!0,this}_removeFromParentsChildList(s){delete this._children[this._parent[s]][s]}parent(s){if(this._isCompound){var u=this._parent[s];if(u!==KC)return u}}children(s){if(Qf(s)&&(s=KC),this._isCompound){var u=this._children[s];if(u)return fm(u)}else{if(s===KC)return this.nodes();if(this.hasNode(s))return[]}}predecessors(s){var u=this._preds[s];if(u)return fm(u)}successors(s){var u=this._sucs[s];if(u)return fm(u)}neighbors(s){var u=this.predecessors(s);if(u)return QWt(u,this.successors(s))}isLeaf(s){var u;return this.isDirected()?u=this.successors(s):u=this.neighbors(s),u.length===0}filterNodes(s){var u=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});u.setGraph(this.graph());var d=this;Ar(this._nodes,function(b,y){s(y)&&u.setNode(y,b)}),Ar(this._edgeObjs,function(b){u.hasNode(b.v)&&u.hasNode(b.w)&&u.setEdge(b,d.edge(b))});var p={};function v(b){var y=d.parent(b);return y===void 0||u.hasNode(y)?(p[b]=y,y):y in p?p[y]:v(y)}return this._isCompound&&Ar(u.nodes(),function(b){u.setParent(b,v(b))}),u}setDefaultEdgeLabel(s){return gD(s)||(s=yD(s)),this._defaultEdgeLabelFn=s,this}edgeCount(){return this._edgeCount}edges(){return $7(this._edgeObjs)}setPath(s,u){var d=this,p=arguments;return TR(s,function(v,b){return p.length>1?d.setEdge(v,b,u):d.setEdge(v,b),b}),this}setEdge(){var s,u,d,p,v=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(s=b.v,u=b.w,d=b.name,arguments.length===2&&(p=arguments[1],v=!0)):(s=b,u=arguments[1],d=arguments[3],arguments.length>2&&(p=arguments[2],v=!0)),s=""+s,u=""+u,Qf(d)||(d=""+d);var y=SR(this._isDirected,s,u,d);if(Lo(this._edgeLabels,y))return v&&(this._edgeLabels[y]=p),this;if(!Qf(d)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(s),this.setNode(u),this._edgeLabels[y]=v?p:this._defaultEdgeLabelFn(s,u,d);var T=nYt(this._isDirected,s,u,d);return s=T.v,u=T.w,Object.freeze(T),this._edgeObjs[y]=T,KHe(this._preds[u],s),KHe(this._sucs[s],u),this._in[u][y]=T,this._out[s][y]=T,this._edgeCount++,this}edge(s,u,d){var p=arguments.length===1?ame(this._isDirected,arguments[0]):SR(this._isDirected,s,u,d);return this._edgeLabels[p]}hasEdge(s,u,d){var p=arguments.length===1?ame(this._isDirected,arguments[0]):SR(this._isDirected,s,u,d);return Lo(this._edgeLabels,p)}removeEdge(s,u,d){var p=arguments.length===1?ame(this._isDirected,arguments[0]):SR(this._isDirected,s,u,d),v=this._edgeObjs[p];return v&&(s=v.v,u=v.w,delete this._edgeLabels[p],delete this._edgeObjs[p],WHe(this._preds[u],s),WHe(this._sucs[s],u),delete this._in[u][p],delete this._out[s][p],this._edgeCount--),this}inEdges(s,u){var d=this._in[s];if(d){var p=$7(d);return u?j7(p,function(v){return v.v===u}):p}}outEdges(s,u){var d=this._out[s];if(d){var p=$7(d);return u?j7(p,function(v){return v.w===u}):p}}nodeEdges(s,u){var d=this.inEdges(s,u);if(d)return d.concat(this.outEdges(s,u))}}B0.prototype._nodeCount=0,B0.prototype._edgeCount=0;function KHe(i,s){i[s]?i[s]++:i[s]=1}function WHe(i,s){--i[s]||delete i[s]}function SR(i,s,u,d){var p=""+s,v=""+u;if(!i&&p>v){var b=p;p=v,v=b}return p+GHe+v+GHe+(Qf(d)?tYt:d)}function nYt(i,s,u,d){var p=""+s,v=""+u;if(!i&&p>v){var b=p;p=v,v=b}var y={v:p,w:v};return d&&(y.name=d),y}function ame(i,s){return SR(i,s.v,s.w,s.name)}class rYt{constructor(){var s={};s._next=s._prev=s,this._sentinel=s}dequeue(){var s=this._sentinel,u=s._prev;if(u!==s)return YHe(u),u}enqueue(s){var u=this._sentinel;s._prev&&s._next&&YHe(s),s._next=u._next,u._next._prev=s,u._next=s,s._prev=u}toString(){for(var s=[],u=this._sentinel,d=u._prev;d!==u;)s.push(JSON.stringify(d,iYt)),d=d._prev;return"["+s.join(", ")+"]"}}function YHe(i){i._prev._next=i._next,i._next._prev=i._prev,delete i._next,delete i._prev}function iYt(i,s){if(i!=="_next"&&i!=="_prev")return s}var sYt=yD(1);function aYt(i,s){if(i.nodeCount()<=1)return[];var u=cYt(i,s||sYt),d=oYt(u.graph,u.buckets,u.zeroIdx);return jD(P0(d,function(p){return i.outEdges(p.v,p.w)}))}function oYt(i,s,u){for(var d=[],p=s[s.length-1],v=s[0],b;i.nodeCount();){for(;b=v.dequeue();)ome(i,s,u,b);for(;b=p.dequeue();)ome(i,s,u,b);if(i.nodeCount()){for(var y=s.length-2;y>0;--y)if(b=s[y].dequeue(),b){d=d.concat(ome(i,s,u,b,!0));break}}}return d}function ome(i,s,u,d,p){var v=p?[]:void 0;return Ar(i.inEdges(d.v),function(b){var y=i.edge(b),T=i.node(b.v);p&&v.push({v:b.v,w:b.w}),T.out-=y,cme(s,u,T)}),Ar(i.outEdges(d.v),function(b){var y=i.edge(b),T=b.w,_=i.node(T);_.in-=y,cme(s,u,_)}),i.removeNode(d.v),v}function cYt(i,s){var u=new B0,d=0,p=0;Ar(i.nodes(),function(y){u.setNode(y,{v:y,in:0,out:0})}),Ar(i.edges(),function(y){var T=u.edge(y.v,y.w)||0,_=s(y),A=T+_;u.setEdge(y.v,y.w,A),p=Math.max(p,u.node(y.v).out+=_),d=Math.max(d,u.node(y.w).in+=_)});var v=GC(p+d+3).map(function(){return new rYt}),b=d+1;return Ar(u.nodes(),function(y){cme(v,b,u.node(y))}),{graph:u,buckets:v,zeroIdx:b}}function cme(i,s,u){u.out?u.in?i[u.out-u.in+s].enqueue(u):i[i.length-1].enqueue(u):i[0].enqueue(u)}function uYt(i){var s=i.graph().acyclicer==="greedy"?aYt(i,u(i)):lYt(i);Ar(s,function(d){var p=i.edge(d);i.removeEdge(d),p.forwardName=d.name,p.reversed=!0,i.setEdge(d.w,d.v,p,KQ("rev"))});function u(d){return function(p){return d.edge(p).weight}}}function lYt(i){var s=[],u={},d={};function p(v){Lo(d,v)||(d[v]=!0,u[v]=!0,Ar(i.outEdges(v),function(b){Lo(u,b.w)?s.push(b):p(b.w)}),delete u[v])}return Ar(i.nodes(),p),s}function hYt(i){Ar(i.edges(),function(s){var u=i.edge(s);if(u.reversed){i.removeEdge(s);var d=u.forwardName;delete u.reversed,delete u.forwardName,i.setEdge(s.w,s.v,u,d)}})}function zD(i,s,u,d){var p;do p=KQ(d);while(i.hasNode(p));return u.dummy=s,i.setNode(p,u),p}function fYt(i){var s=new B0().setGraph(i.graph());return Ar(i.nodes(),function(u){s.setNode(u,i.node(u))}),Ar(i.edges(),function(u){var d=s.edge(u.v,u.w)||{weight:0,minlen:1},p=i.edge(u);s.setEdge(u.v,u.w,{weight:d.weight+p.weight,minlen:Math.max(d.minlen,p.minlen)})}),s}function XHe(i){var s=new B0({multigraph:i.isMultigraph()}).setGraph(i.graph());return Ar(i.nodes(),function(u){i.children(u).length||s.setNode(u,i.node(u))}),Ar(i.edges(),function(u){s.setEdge(u,i.edge(u))}),s}function QHe(i,s){var u=i.x,d=i.y,p=s.x-u,v=s.y-d,b=i.width/2,y=i.height/2;if(!p&&!v)throw new Error("Not possible to find intersection inside of the rectangle");var T,_;return Math.abs(v)*b>Math.abs(p)*y?(v<0&&(y=-y),T=y*p/v,_=y):(p<0&&(b=-b),T=b,_=b*v/p),{x:u+T,y:d+_}}function WQ(i){var s=P0(GC(ZHe(i)+1),function(){return[]});return Ar(i.nodes(),function(u){var d=i.node(u),p=d.rank;Qf(p)||(s[p][d.order]=u)}),s}function dYt(i){var s=kR(P0(i.nodes(),function(u){return i.node(u).rank}));Ar(i.nodes(),function(u){var d=i.node(u);Lo(d,"rank")&&(d.rank-=s)})}function gYt(i){var s=kR(P0(i.nodes(),function(v){return i.node(v).rank})),u=[];Ar(i.nodes(),function(v){var b=i.node(v).rank-s;u[b]||(u[b]=[]),u[b].push(v)});var d=0,p=i.graph().nodeRankFactor;Ar(u,function(v,b){Qf(v)&&b%p!==0?--d:d&&Ar(v,function(y){i.node(y).rank+=d})})}function JHe(i,s,u,d){var p={width:0,height:0};return arguments.length>=4&&(p.rank=u,p.order=d),zD(i,"border",p,s)}function ZHe(i){return UC(P0(i.nodes(),function(s){var u=i.node(s).rank;if(!Qf(u))return u}))}function pYt(i,s){var u={lhs:[],rhs:[]};return Ar(i,function(d){s(d)?u.lhs.push(d):u.rhs.push(d)}),u}function bYt(i,s){var u=qHe();try{return s()}finally{console.log(i+" time: "+(qHe()-u)+"ms")}}function mYt(i,s){return s()}function vYt(i){function s(u){var d=i.children(u),p=i.node(u);if(d.length&&Ar(d,s),Lo(p,"minRank")){p.borderLeft=[],p.borderRight=[];for(var v=p.minRank,b=p.maxRank+1;vb.lim&&(y=b,T=!0);var _=j7(s.edges(),function(A){return T===hVe(i,i.node(A.v),y)&&T!==hVe(i,i.node(A.w),y)});return sme(_,function(A){return _R(s,A)})}function lVe(i,s,u,d){var p=u.v,v=u.w;i.removeEdge(p,v),i.setEdge(d.v,d.w,{}),dme(i),fme(i,s),OYt(i,s)}function OYt(i,s){var u=rme(i.nodes(),function(p){return!s.node(p).parent}),d=DYt(i,u);d=d.slice(1),Ar(d,function(p){var v=i.node(p).parent,b=s.edge(p,v),y=!1;b||(b=s.edge(v,p),y=!0),s.node(p).rank=s.node(v).rank+(y?b.minlen:-b.minlen)})}function NYt(i,s,u){return i.hasEdge(s,u)}function hVe(i,s,u){return u.low<=s.lim&&s.lim<=u.lim}function PYt(i){switch(i.graph().ranker){case"network-simplex":fVe(i);break;case"tight-tree":FYt(i);break;case"longest-path":BYt(i);break;default:fVe(i)}}var BYt=hme;function FYt(i){hme(i),rVe(i)}function fVe(i){WC(i)}function RYt(i){var s=zD(i,"root",{},"_root"),u=jYt(i),d=UC($7(u))-1,p=2*d+1;i.graph().nestingRoot=s,Ar(i.edges(),function(b){i.edge(b).minlen*=p});var v=$Yt(i)+1;Ar(i.children(),function(b){dVe(i,s,p,v,d,u,b)}),i.graph().nodeRankFactor=p}function dVe(i,s,u,d,p,v,b){var y=i.children(b);if(!y.length){b!==s&&i.setEdge(s,b,{weight:0,minlen:u});return}var T=JHe(i,"_bt"),_=JHe(i,"_bb"),A=i.node(b);i.setParent(T,b),A.borderTop=T,i.setParent(_,b),A.borderBottom=_,Ar(y,function(P){dVe(i,s,u,d,p,v,P);var R=i.node(P),F=R.borderTop?R.borderTop:P,j=R.borderBottom?R.borderBottom:P,K=R.borderTop?d:2*d,ee=F!==j?1:p-v[b]+1;i.setEdge(T,F,{weight:K,minlen:ee,nestingEdge:!0}),i.setEdge(j,_,{weight:K,minlen:ee,nestingEdge:!0})}),i.parent(b)||i.setEdge(s,T,{weight:0,minlen:p+v[b]})}function jYt(i){var s={};function u(d,p){var v=i.children(d);v&&v.length&&Ar(v,function(b){u(b,p+1)}),s[d]=p}return Ar(i.children(),function(d){u(d,1)}),s}function $Yt(i){return TR(i.edges(),function(s,u){return s+i.edge(u).weight},0)}function zYt(i){var s=i.graph();i.removeNode(s.nestingRoot),delete s.nestingRoot,Ar(i.edges(),function(u){var d=i.edge(u);d.nestingEdge&&i.removeEdge(u)})}function qYt(i,s,u){var d={},p;Ar(u,function(v){for(var b=i.parent(v),y,T;b;){if(y=i.parent(b),y?(T=d[y],d[y]=b):(T=p,p=b),T&&T!==b){s.setEdge(T,b);return}b=y}})}function HYt(i,s,u){var d=VYt(i),p=new B0({compound:!0}).setGraph({root:d}).setDefaultNodeLabel(function(v){return i.node(v)});return Ar(i.nodes(),function(v){var b=i.node(v),y=i.parent(v);(b.rank===s||b.minRank<=s&&s<=b.maxRank)&&(p.setNode(v),p.setParent(v,y||d),Ar(i[u](v),function(T){var _=T.v===v?T.w:T.v,A=p.edge(_,v),P=Qf(A)?0:A.weight;p.setEdge(_,v,{weight:i.edge(T).weight+P})}),Lo(b,"minRank")&&p.setNode(v,{borderLeft:b.borderLeft[s],borderRight:b.borderRight[s]}))}),p}function VYt(i){for(var s;i.hasNode(s=KQ("_root")););return s}function UYt(i,s){for(var u=0,d=1;d0;)A%2&&(P+=y[A+1]),A=A-1>>1,y[A]+=_.weight;T+=_.weight*P})),T}function KYt(i){var s={},u=j7(i.nodes(),function(y){return!i.children(y).length}),d=UC(P0(u,function(y){return i.node(y).rank})),p=P0(GC(d+1),function(){return[]});function v(y){if(!Lo(s,y)){s[y]=!0;var T=i.node(y);p[T.rank].push(y),Ar(i.successors(y),v)}}var b=CR(u,function(y){return i.node(y).rank});return Ar(b,v),p}function WYt(i,s){return P0(s,function(u){var d=i.inEdges(u);if(d.length){var p=TR(d,function(v,b){var y=i.edge(b),T=i.node(b.v);return{sum:v.sum+y.weight*T.order,weight:v.weight+y.weight}},{sum:0,weight:0});return{v:u,barycenter:p.sum/p.weight,weight:p.weight}}else return{v:u}})}function YYt(i,s){var u={};Ar(i,function(p,v){var b=u[p.v]={indegree:0,in:[],out:[],vs:[p.v],i:v};Qf(p.barycenter)||(b.barycenter=p.barycenter,b.weight=p.weight)}),Ar(s.edges(),function(p){var v=u[p.v],b=u[p.w];!Qf(v)&&!Qf(b)&&(b.indegree++,v.out.push(u[p.w]))});var d=j7(u,function(p){return!p.indegree});return XYt(d)}function XYt(i){var s=[];function u(v){return function(b){b.merged||(Qf(b.barycenter)||Qf(v.barycenter)||b.barycenter>=v.barycenter)&&QYt(v,b)}}function d(v){return function(b){b.in.push(v),--b.indegree===0&&i.push(b)}}for(;i.length;){var p=i.pop();s.push(p),Ar(p.in.reverse(),u(p)),Ar(p.out,d(p))}return P0(j7(s,function(v){return!v.merged}),function(v){return ER(v,["vs","i","barycenter","weight"])})}function QYt(i,s){var u=0,d=0;i.weight&&(u+=i.barycenter*i.weight,d+=i.weight),s.weight&&(u+=s.barycenter*s.weight,d+=s.weight),i.vs=s.vs.concat(i.vs),i.barycenter=u/d,i.weight=d,i.i=Math.min(s.i,i.i),s.merged=!0}function JYt(i,s){var u=pYt(i,function(A){return Lo(A,"barycenter")}),d=u.lhs,p=CR(u.rhs,function(A){return-A.i}),v=[],b=0,y=0,T=0;d.sort(ZYt(!!s)),T=gVe(v,p,T),Ar(d,function(A){T+=A.vs.length,v.push(A.vs),b+=A.barycenter*A.weight,y+=A.weight,T=gVe(v,p,T)});var _={vs:jD(v)};return y&&(_.barycenter=b/y,_.weight=y),_}function gVe(i,s,u){for(var d;s.length&&(d=UQ(s)).i<=u;)s.pop(),i.push(d.vs),u++;return u}function ZYt(i){return function(s,u){return s.barycenteru.barycenter?1:i?u.i-s.i:s.i-u.i}}function pVe(i,s,u,d){var p=i.children(s),v=i.node(s),b=v?v.borderLeft:void 0,y=v?v.borderRight:void 0,T={};b&&(p=j7(p,function(j){return j!==b&&j!==y}));var _=WYt(i,p);Ar(_,function(j){if(i.children(j.v).length){var K=pVe(i,j.v,u,d);T[j.v]=K,Lo(K,"barycenter")&&tXt(j,K)}});var A=YYt(_,u);eXt(A,T);var P=JYt(A,d);if(b&&(P.vs=jD([b,P.vs,y]),i.predecessors(b).length)){var R=i.node(i.predecessors(b)[0]),F=i.node(i.predecessors(y)[0]);Lo(P,"barycenter")||(P.barycenter=0,P.weight=0),P.barycenter=(P.barycenter*P.weight+R.order+F.order)/(P.weight+2),P.weight+=2}return P}function eXt(i,s){Ar(i,function(u){u.vs=jD(u.vs.map(function(d){return s[d]?s[d].vs:d}))})}function tXt(i,s){Qf(i.barycenter)?(i.barycenter=s.barycenter,i.weight=s.weight):(i.barycenter=(i.barycenter*i.weight+s.barycenter*s.weight)/(i.weight+s.weight),i.weight+=s.weight)}function nXt(i){var s=ZHe(i),u=bVe(i,GC(1,s+1),"inEdges"),d=bVe(i,GC(s-1,-1,-1),"outEdges"),p=KYt(i);mVe(i,p);for(var v=Number.POSITIVE_INFINITY,b,y=0,T=0;T<4;++y,++T){rXt(y%2?u:d,y%4>=2),p=WQ(i);var _=UYt(i,p);_b||y>s[T].lim));for(_=T,T=d;(T=i.parent(T))!==_;)v.push(T);return{path:p.concat(v.reverse()),lca:_}}function aXt(i){var s={},u=0;function d(p){var v=u;Ar(i.children(p),d),s[p]={low:v,lim:u++}}return Ar(i.children(),d),s}function oXt(i,s){var u={};function d(p,v){var b=0,y=0,T=p.length,_=UQ(v);return Ar(v,function(A,P){var R=uXt(i,A),F=R?i.node(R).order:T;(R||A===_)&&(Ar(v.slice(y,P+1),function(j){Ar(i.predecessors(j),function(K){var ee=i.node(K),ie=ee.order;(ie_)&&vVe(u,R,A)})})}function p(v,b){var y=-1,T,_=0;return Ar(b,function(A,P){if(i.node(A).dummy==="border"){var R=i.predecessors(A);R.length&&(T=i.node(R[0]).order,d(b,_,P,y,T),_=P,y=T)}d(b,_,b.length,T,v.length)}),b}return TR(s,p),u}function uXt(i,s){if(i.node(s).dummy)return rme(i.predecessors(s),function(u){return i.node(u).dummy})}function vVe(i,s,u){if(s>u){var d=s;s=u,u=d}var p=i[s];p||(i[s]=p={}),p[u]=!0}function lXt(i,s,u){if(s>u){var d=s;s=u,u=d}return Lo(i[s],u)}function hXt(i,s,u,d){var p={},v={},b={};return Ar(s,function(y){Ar(y,function(T,_){p[T]=T,v[T]=T,b[T]=_})}),Ar(s,function(y){var T=-1;Ar(y,function(_){var A=d(_);if(A.length){A=CR(A,function(K){return b[K]});for(var P=(A.length-1)/2,R=Math.floor(P),F=Math.ceil(P);R<=F;++R){var j=A[R];v[_]===_&&T0}function e5(i,s,u){var d=i.x,p=i.y,v=[],b=Number.POSITIVE_INFINITY,y=Number.POSITIVE_INFINITY;s.forEach(function(j){b=Math.min(b,j.x),y=Math.min(y,j.y)});for(var T=d-i.width/2-b,_=p-i.height/2-y,A=0;A1&&v.sort(function(j,K){var ee=j.x-u.x,ie=j.y-u.y,oe=Math.sqrt(ee*ee+ie*ie),pe=K.x-u.x,be=K.y-u.y,ae=Math.sqrt(pe*pe+be*be);return oeMath.abs(p)*y?(v<0&&(y=-y),T=v===0?0:y*p/v,_=y):(p<0&&(b=-b),T=b,_=p===0?0:b*v/p),{x:u+T,y:d+_}}var Cme={rect:gQt,ellipse:pQt,circle:bQt,diamond:mQt};function dQt(i){Cme=i}function gQt(i,s,u){var d=i.insert("rect",":first-child").attr("rx",u.rx).attr("ry",u.ry).attr("x",-s.width/2).attr("y",-s.height/2).attr("width",s.width).attr("height",s.height);return u.intersect=function(p){return Tme(u,p)},d}function pQt(i,s,u){var d=s.width/2,p=s.height/2,v=i.insert("ellipse",":first-child").attr("x",-s.width/2).attr("y",-s.height/2).attr("rx",d).attr("ry",p);return u.intersect=function(b){return TVe(u,d,p,b)},v}function bQt(i,s,u){var d=Math.max(s.width,s.height)/2,p=i.insert("circle",":first-child").attr("x",-s.width/2).attr("y",-s.height/2).attr("r",d);return u.intersect=function(v){return hQt(u,d,v)},p}function mQt(i,s,u){var d=s.width*Math.SQRT2/2,p=s.height*Math.SQRT2/2,v=[{x:0,y:-p},{x:-d,y:0},{x:0,y:p},{x:d,y:0}],b=i.insert("polygon",":first-child").attr("points",v.map(function(y){return y.x+","+y.y}).join(" "));return u.intersect=function(y){return e5(u,v,y)},b}function vQt(){var i=function(s,u){xQt(u);var d=AR(s,"output"),p=AR(d,"clusters"),v=AR(d,"edgePaths"),b=xme(AR(d,"edgeLabels"),u),y=Eme(AR(d,"nodes"),u,Cme);qD(u),lQt(y,u),uQt(b,u),kme(v,u,mme);var T=yme(p,u);cQt(T,u),kQt(u)};return i.createNodes=function(s){return arguments.length?(oQt(s),i):Eme},i.createClusters=function(s){return arguments.length?(ZXt(s),i):yme},i.createEdgeLabels=function(s){return arguments.length?(eQt(s),i):xme},i.createEdgePaths=function(s){return arguments.length?(tQt(s),i):kme},i.shapes=function(s){return arguments.length?(dQt(s),i):Cme},i.arrows=function(s){return arguments.length?(GXt(s),i):mme},i}var wQt={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},yQt={arrowhead:"normal",curve:kp};function xQt(i){i.nodes().forEach(function(s){var u=i.node(s);!Lo(u,"label")&&!i.children(s).length&&(u.label=s),Lo(u,"paddingX")&&$D(u,{paddingLeft:u.paddingX,paddingRight:u.paddingX}),Lo(u,"paddingY")&&$D(u,{paddingTop:u.paddingY,paddingBottom:u.paddingY}),Lo(u,"padding")&&$D(u,{paddingLeft:u.padding,paddingRight:u.padding,paddingTop:u.padding,paddingBottom:u.padding}),$D(u,wQt),Ar(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(d){u[d]=Number(u[d])}),Lo(u,"width")&&(u._prevWidth=u.width),Lo(u,"height")&&(u._prevHeight=u.height)}),i.edges().forEach(function(s){var u=i.edge(s);Lo(u,"label")||(u.label=""),$D(u,yQt)})}function kQt(i){Ar(i.nodes(),function(s){var u=i.node(s);Lo(u,"_prevWidth")?u.width=u._prevWidth:delete u.width,Lo(u,"_prevHeight")?u.height=u._prevHeight:delete u.height,delete u._prevWidth,delete u._prevHeight})}function AR(i,s){var u=i.select("g."+s);return u.empty()&&(u=i.append("g").attr("class",s)),u}function SVe(i,s,u){const d=s.width,p=s.height,v=(d+p)*.9,b=[{x:v/2,y:0},{x:v,y:-v/2},{x:v/2,y:-v},{x:0,y:-v/2}],y=z7(i,v,v,b);return u.intersect=function(T){return e5(u,b,T)},y}function _Ve(i,s,u){const p=s.height,v=p/4,b=s.width+2*v,y=[{x:v,y:0},{x:b-v,y:0},{x:b,y:-p/2},{x:b-v,y:-p},{x:v,y:-p},{x:0,y:-p/2}],T=z7(i,b,p,y);return u.intersect=function(_){return e5(u,y,_)},T}function AVe(i,s,u){const d=s.width,p=s.height,v=[{x:-p/2,y:0},{x:d,y:0},{x:d,y:-p},{x:-p/2,y:-p},{x:0,y:-p/2}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function LVe(i,s,u){const d=s.width,p=s.height,v=[{x:-2*p/6,y:0},{x:d-p/6,y:0},{x:d+2*p/6,y:-p},{x:p/6,y:-p}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function MVe(i,s,u){const d=s.width,p=s.height,v=[{x:2*p/6,y:0},{x:d+p/6,y:0},{x:d-2*p/6,y:-p},{x:-p/6,y:-p}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function DVe(i,s,u){const d=s.width,p=s.height,v=[{x:-2*p/6,y:0},{x:d+2*p/6,y:0},{x:d-p/6,y:-p},{x:p/6,y:-p}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function IVe(i,s,u){const d=s.width,p=s.height,v=[{x:p/6,y:0},{x:d-p/6,y:0},{x:d+2*p/6,y:-p},{x:-2*p/6,y:-p}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function OVe(i,s,u){const d=s.width,p=s.height,v=[{x:0,y:0},{x:d+p/2,y:0},{x:d,y:-p/2},{x:d+p/2,y:-p},{x:0,y:-p}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function NVe(i,s,u){const d=s.height,p=s.width+d/4,v=i.insert("rect",":first-child").attr("rx",d/2).attr("ry",d/2).attr("x",-p/2).attr("y",-d/2).attr("width",p).attr("height",d);return u.intersect=function(b){return Tme(u,b)},v}function PVe(i,s,u){const d=s.width,p=s.height,v=[{x:0,y:0},{x:d,y:0},{x:d,y:-p},{x:0,y:-p},{x:0,y:0},{x:-8,y:0},{x:d+8,y:0},{x:d+8,y:-p},{x:-8,y:-p},{x:-8,y:0}],b=z7(i,d,p,v);return u.intersect=function(y){return e5(u,v,y)},b}function BVe(i,s,u){const d=s.width,p=d/2,v=p/(2.5+d/50),b=s.height+v,y="M 0,"+v+" a "+p+","+v+" 0,0,0 "+d+" 0 a "+p+","+v+" 0,0,0 "+-d+" 0 l 0,"+b+" a "+p+","+v+" 0,0,0 "+d+" 0 l 0,"+-b,T=i.attr("label-offset-y",v).insert("path",":first-child").attr("d",y).attr("transform","translate("+-d/2+","+-(b/2+v)+")");return u.intersect=function(_){const A=Tme(u,_),P=A.x-u.x;if(p!=0&&(Math.abs(P)u.height/2-v)){let R=v*v*(1-P*P/(p*p));R!=0&&(R=Math.sqrt(R)),R=v-R,_.y-u.y>0&&(R=-R),A.y+=R}return A},T}function EQt(i){i.shapes().question=SVe,i.shapes().hexagon=_Ve,i.shapes().stadium=NVe,i.shapes().subroutine=PVe,i.shapes().cylinder=BVe,i.shapes().rect_left_inv_arrow=AVe,i.shapes().lean_right=LVe,i.shapes().lean_left=MVe,i.shapes().trapezoid=DVe,i.shapes().inv_trapezoid=IVe,i.shapes().rect_right_inv_arrow=OVe}function TQt(i){i({question:SVe}),i({hexagon:_Ve}),i({stadium:NVe}),i({subroutine:PVe}),i({cylinder:BVe}),i({rect_left_inv_arrow:AVe}),i({lean_right:LVe}),i({lean_left:MVe}),i({trapezoid:DVe}),i({inv_trapezoid:IVe}),i({rect_right_inv_arrow:OVe})}function z7(i,s,u,d){return i.insert("polygon",":first-child").attr("points",d.map(function(p){return p.x+","+p.y}).join(" ")).attr("transform","translate("+-s/2+","+u/2+")")}const CQt={addToRender:EQt,addToRenderV2:TQt},FVe={},SQt=function(i){const s=Object.keys(i);for(const u of s)FVe[u]=i[u]},RVe=async function(i,s,u,d,p,v){const b=d?d.select(`[id="${u}"]`):Ir(`[id="${u}"]`),y=p||document,T=Object.keys(i);for(const _ of T){const A=i[_];let P="default";A.classes.length>0&&(P=A.classes.join(" "));const R=om(A.styles);let F=A.text!==void 0?A.text:A.id,j;if(f1(qt().flowchart.htmlLabels)){const ie={label:await CC(F.replace(/fa[blrs]?:fa-[\w-]+/g,oe=>``),qt())};j=vme(b,ie).node(),j.parentNode.removeChild(j)}else{const ie=y.createElementNS("http://www.w3.org/2000/svg","text");ie.setAttribute("style",R.labelStyle.replace("color:","fill:"));const oe=F.split(ci.lineBreakRegex);for(const pe of oe){const be=y.createElementNS("http://www.w3.org/2000/svg","tspan");be.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),be.setAttribute("dy","1em"),be.setAttribute("x","1"),be.textContent=pe,ie.appendChild(be)}j=ie}let K=0,ee="";switch(A.type){case"round":K=5,ee="rect";break;case"square":ee="rect";break;case"diamond":ee="question";break;case"hexagon":ee="hexagon";break;case"odd":ee="rect_left_inv_arrow";break;case"lean_right":ee="lean_right";break;case"lean_left":ee="lean_left";break;case"trapezoid":ee="trapezoid";break;case"inv_trapezoid":ee="inv_trapezoid";break;case"odd_right":ee="rect_left_inv_arrow";break;case"circle":ee="circle";break;case"ellipse":ee="ellipse";break;case"stadium":ee="stadium";break;case"subroutine":ee="subroutine";break;case"cylinder":ee="cylinder";break;case"group":ee="rect";break;default:ee="rect"}Xe.warn("Adding node",A.id,A.domId),s.setNode(v.db.lookUpDomId(A.id),{labelType:"svg",labelStyle:R.labelStyle,shape:ee,label:j,rx:K,ry:K,class:P,style:R.style,id:v.db.lookUpDomId(A.id)})}},jVe=async function(i,s,u){let d=0,p,v;if(i.defaultStyle!==void 0){const b=om(i.defaultStyle);p=b.style,v=b.labelStyle}for(const b of i){d++;const y="L-"+b.start+"-"+b.end,T="LS-"+b.start,_="LE-"+b.end,A={};b.type==="arrow_open"?A.arrowhead="none":A.arrowhead="normal";let P="",R="";if(b.style!==void 0){const F=om(b.style);P=F.style,R=F.labelStyle}else switch(b.stroke){case"normal":P="fill:none",p!==void 0&&(P=p),v!==void 0&&(R=v);break;case"dotted":P="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":P=" stroke-width: 3.5px;fill:none";break}A.style=P,A.labelStyle=R,b.interpolate!==void 0?A.curve=Ov(b.interpolate,kp):i.defaultInterpolate!==void 0?A.curve=Ov(i.defaultInterpolate,kp):A.curve=Ov(FVe.curve,kp),b.text===void 0?b.style!==void 0&&(A.arrowheadStyle="fill: #333"):(A.arrowheadStyle="fill: #333",A.labelpos="c",f1(qt().flowchart.htmlLabels)?(A.labelType="html",A.label=`${await CC(b.text.replace(/fa[blrs]?:fa-[\w-]+/g,F=>``),qt())}`):(A.labelType="text",A.label=b.text.replace(ci.lineBreakRegex,`
+`),b.style===void 0&&(A.style=A.style||"stroke: #333; stroke-width: 1.5px;fill:none"),A.labelStyle=A.labelStyle.replace("color:","fill:"))),A.id=y,A.class=T+" "+_,A.minlen=b.length||1,s.setEdge(u.db.lookUpDomId(b.start),u.db.lookUpDomId(b.end),A,d)}},_Qt={setConf:SQt,addVertices:RVe,addEdges:jVe,getClasses:function(i,s){return Xe.info("Extracting classes"),s.db.getClasses()},draw:async function(i,s,u,d){Xe.info("Drawing flowchart");const{securityLevel:p,flowchart:v}=qt();let b;p==="sandbox"&&(b=Ir("#i"+s));const y=Ir(p==="sandbox"?b.nodes()[0].contentDocument.body:"body"),T=p==="sandbox"?b.nodes()[0].contentDocument:document;let _=d.db.getDirection();_===void 0&&(_="TD");const A=v.nodeSpacing||50,P=v.rankSpacing||50,R=new B0({multigraph:!0,compound:!0}).setGraph({rankdir:_,nodesep:A,ranksep:P,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let F;const j=d.db.getSubGraphs();for(let ne=j.length-1;ne>=0;ne--)F=j[ne],d.db.addVertex(F.id,F.title,"group",void 0,F.classes);const K=d.db.getVertices();Xe.warn("Get vertices",K);const ee=d.db.getEdges();let ie=0;for(ie=j.length-1;ie>=0;ie--){F=j[ie],_Be("cluster").append("text");for(let ne=0;ne{s.forEach(p=>{DQt[p](i,u,d)})},DQt={extension:(i,s,u)=>{Xe.trace("Making markers for ",u),i.append("defs").append("marker").attr("id",u+"_"+s+"-extensionStart").attr("class","marker extension "+s).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"),i.append("defs").append("marker").attr("id",u+"_"+s+"-extensionEnd").attr("class","marker extension "+s).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:(i,s,u)=>{i.append("defs").append("marker").attr("id",u+"_"+s+"-compositionStart").attr("class","marker composition "+s).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"),i.append("defs").append("marker").attr("id",u+"_"+s+"-compositionEnd").attr("class","marker composition "+s).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:(i,s,u)=>{i.append("defs").append("marker").attr("id",u+"_"+s+"-aggregationStart").attr("class","marker aggregation "+s).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"),i.append("defs").append("marker").attr("id",u+"_"+s+"-aggregationEnd").attr("class","marker aggregation "+s).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:(i,s,u)=>{i.append("defs").append("marker").attr("id",u+"_"+s+"-dependencyStart").attr("class","marker dependency "+s).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"),i.append("defs").append("marker").attr("id",u+"_"+s+"-dependencyEnd").attr("class","marker dependency "+s).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:(i,s,u)=>{i.append("defs").append("marker").attr("id",u+"_"+s+"-lollipopStart").attr("class","marker lollipop "+s).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),i.append("defs").append("marker").attr("id",u+"_"+s+"-lollipopEnd").attr("class","marker lollipop "+s).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:(i,s,u)=>{i.append("marker").attr("id",u+"_"+s+"-pointEnd").attr("class","marker "+s).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"),i.append("marker").attr("id",u+"_"+s+"-pointStart").attr("class","marker "+s).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:(i,s,u)=>{i.append("marker").attr("id",u+"_"+s+"-circleEnd").attr("class","marker "+s).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"),i.append("marker").attr("id",u+"_"+s+"-circleStart").attr("class","marker "+s).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:(i,s,u)=>{i.append("marker").attr("id",u+"_"+s+"-crossEnd").attr("class","marker cross "+s).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"),i.append("marker").attr("id",u+"_"+s+"-crossStart").attr("class","marker cross "+s).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:(i,s,u)=>{i.append("defs").append("marker").attr("id",u+"_"+s+"-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")}},Sme=MQt;function IQt(i,s){s&&i.attr("style",s)}function OQt(i){const s=Ir(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),u=s.append("xhtml:div"),d=i.label,p=i.isNode?"nodeLabel":"edgeLabel";return u.html('"+d+""),IQt(u,i.labelStyle),u.style("display","inline-block"),u.style("white-space","nowrap"),u.attr("xmlns","http://www.w3.org/1999/xhtml"),s.node()}const $2=(i,s,u,d)=>{let p=i||"";if(typeof p=="object"&&(p=p[0]),f1(qt().flowchart.htmlLabels)){p=p.replace(/\\n|\n/g,"
"),Xe.debug("vertexText"+p);const v={isNode:d,label:ZF(p).replace(/fa[blrs]?:fa-[\w-]+/g,y=>``),labelStyle:s.replace("fill:","color:")};return OQt(v)}else{const v=document.createElementNS("http://www.w3.org/2000/svg","text");v.setAttribute("style",s.replace("color:","fill:"));let b=[];typeof p=="string"?b=p.split(/\\n|\n|
/gi):Array.isArray(p)?b=p:b=[];for(const y of b){const T=document.createElementNS("http://www.w3.org/2000/svg","tspan");T.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),T.setAttribute("dy","1em"),T.setAttribute("x","0"),u?T.setAttribute("class","title-row"):T.setAttribute("class","row"),T.textContent=y.trim(),v.appendChild(T)}return v}},NQt={};function PQt(i,s){const u=s||NQt,d=typeof u.includeImageAlt=="boolean"?u.includeImageAlt:!0,p=typeof u.includeHtml=="boolean"?u.includeHtml:!0;return $Ve(i,d,p)}function $Ve(i,s,u){if(BQt(i)){if("value"in i)return i.type==="html"&&!u?"":i.value;if(s&&"alt"in i&&i.alt)return i.alt;if("children"in i)return zVe(i.children,s,u)}return Array.isArray(i)?zVe(i,s,u):""}function zVe(i,s,u){const d=[];let p=-1;for(;++pp?0:p+s:s=s>p?p:s,u=u>0?u:0,d.length<1e4)b=Array.from(d),b.unshift(s,u),i.splice(...b);else for(u&&i.splice(s,u);v0?(t5(i,i.length,0,s),i):s}const qVe={}.hasOwnProperty;function FQt(i){const s={};let u=-1;for(;++ub))return;const se=s.events.length;let de=se,X,ge;for(;de--;)if(s.events[de][0]==="exit"&&s.events[de][1].type==="chunkFlow"){if(X){ge=s.events[de][1].end;break}X=!0}for(ie(d),ne=se;nepe;){const ae=u[be];s.containerState=ae[1],ae[0].exit.call(s,i)}u.length=pe}function oe(){p.write([null]),v=void 0,p=void 0,s.containerState._closeFlow=void 0}}function XQt(i,s,u){return Kl(i,i.attempt(this.parser.constructs.document,s,u),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function VVe(i){if(i===null||z2(i)||UQt(i))return 1;if(VQt(i))return 2}function Lme(i,s,u){const d=[];let p=-1;for(;++p1&&i[u][1].end.offset-i[u][1].start.offset>1?2:1;const P=Object.assign({},i[d][1].end),R=Object.assign({},i[u][1].start);UVe(P,-T),UVe(R,T),b={type:T>1?"strongSequence":"emphasisSequence",start:P,end:Object.assign({},i[d][1].end)},y={type:T>1?"strongSequence":"emphasisSequence",start:Object.assign({},i[u][1].start),end:R},v={type:T>1?"strongText":"emphasisText",start:Object.assign({},i[d][1].end),end:Object.assign({},i[u][1].start)},p={type:T>1?"strong":"emphasis",start:Object.assign({},b.start),end:Object.assign({},y.end)},i[d][1].end=Object.assign({},b.start),i[u][1].start=Object.assign({},y.end),_=[],i[d][1].end.offset-i[d][1].start.offset&&(_=zv(_,[["enter",i[d][1],s],["exit",i[d][1],s]])),_=zv(_,[["enter",p,s],["enter",b,s],["exit",b,s],["enter",v,s]]),_=zv(_,Lme(s.parser.constructs.insideSpan.null,i.slice(d+1,u),s)),_=zv(_,[["exit",v,s],["enter",y,s],["exit",y,s],["exit",p,s]]),i[u][1].end.offset-i[u][1].start.offset?(A=2,_=zv(_,[["enter",i[u][1],s],["exit",i[u][1],s]])):A=0,t5(i,d-1,u-d+3,_),u=d+_.length-A-2;break}}for(u=-1;++u0&&Iu(ne)?Kl(i,oe,"linePrefix",v+1)(ne):oe(ne)}function oe(ne){return ne===null||so(ne)?i.check(XVe,K,be)(ne):(i.enter("codeFlowValue"),pe(ne))}function pe(ne){return ne===null||so(ne)?(i.exit("codeFlowValue"),oe(ne)):(i.consume(ne),pe)}function be(ne){return i.exit("codeFenced"),s(ne)}function ae(ne,se,de){let X=0;return ge;function ge(Pe){return ne.enter("lineEnding"),ne.consume(Pe),ne.exit("lineEnding"),W}function W(Pe){return ne.enter("codeFencedFence"),Iu(Pe)?Kl(ne,xe,"linePrefix",d.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Pe):xe(Pe)}function xe(Pe){return Pe===y?(ne.enter("codeFencedFenceSequence"),U(Pe)):de(Pe)}function U(Pe){return Pe===y?(X++,ne.consume(Pe),U):X>=b?(ne.exit("codeFencedFenceSequence"),Iu(Pe)?Kl(ne,Fe,"whitespace")(Pe):Fe(Pe)):de(Pe)}function Fe(Pe){return Pe===null||so(Pe)?(ne.exit("codeFencedFence"),se(Pe)):de(Pe)}}}function cJt(i,s,u){const d=this;return p;function p(b){return b===null?u(b):(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v)}function v(b){return d.parser.lazy[d.now().line]?u(b):s(b)}}const Ime={name:"codeIndented",tokenize:lJt},uJt={tokenize:hJt,partial:!0};function lJt(i,s,u){const d=this;return p;function p(_){return i.enter("codeIndented"),Kl(i,v,"linePrefix",4+1)(_)}function v(_){const A=d.events[d.events.length-1];return A&&A[1].type==="linePrefix"&&A[2].sliceSerialize(A[1],!0).length>=4?b(_):u(_)}function b(_){return _===null?T(_):so(_)?i.attempt(uJt,b,T)(_):(i.enter("codeFlowValue"),y(_))}function y(_){return _===null||so(_)?(i.exit("codeFlowValue"),b(_)):(i.consume(_),y)}function T(_){return i.exit("codeIndented"),s(_)}}function hJt(i,s,u){const d=this;return p;function p(b){return d.parser.lazy[d.now().line]?u(b):so(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),p):Kl(i,v,"linePrefix",4+1)(b)}function v(b){const y=d.events[d.events.length-1];return y&&y[1].type==="linePrefix"&&y[2].sliceSerialize(y[1],!0).length>=4?s(b):so(b)?p(b):u(b)}}const fJt={name:"codeText",tokenize:pJt,resolve:dJt,previous:gJt};function dJt(i){let s=i.length-4,u=3,d,p;if((i[u][1].type==="lineEnding"||i[u][1].type==="space")&&(i[s][1].type==="lineEnding"||i[s][1].type==="space")){for(d=u;++d=4?s(b):i.interrupt(d.parser.constructs.flow,u,s)(b)}}function ZVe(i,s,u,d,p,v,b,y,T){const _=T||Number.POSITIVE_INFINITY;let A=0;return P;function P(ie){return ie===60?(i.enter(d),i.enter(p),i.enter(v),i.consume(ie),i.exit(v),R):ie===null||ie===32||ie===41||_me(ie)?u(ie):(i.enter(d),i.enter(b),i.enter(y),i.enter("chunkString",{contentType:"string"}),K(ie))}function R(ie){return ie===62?(i.enter(v),i.consume(ie),i.exit(v),i.exit(p),i.exit(d),s):(i.enter(y),i.enter("chunkString",{contentType:"string"}),F(ie))}function F(ie){return ie===62?(i.exit("chunkString"),i.exit(y),R(ie)):ie===null||ie===60||so(ie)?u(ie):(i.consume(ie),ie===92?j:F)}function j(ie){return ie===60||ie===62||ie===92?(i.consume(ie),F):F(ie)}function K(ie){return!A&&(ie===null||ie===41||z2(ie))?(i.exit("chunkString"),i.exit(y),i.exit(b),i.exit(d),s(ie)):A<_&&ie===40?(i.consume(ie),A++,K):ie===41?(i.consume(ie),A--,K):ie===null||ie===32||ie===40||_me(ie)?u(ie):(i.consume(ie),ie===92?ee:K)}function ee(ie){return ie===40||ie===41||ie===92?(i.consume(ie),K):K(ie)}}function eUe(i,s,u,d,p,v){const b=this;let y=0,T;return _;function _(F){return i.enter(d),i.enter(p),i.consume(F),i.exit(p),i.enter(v),A}function A(F){return y>999||F===null||F===91||F===93&&!T||F===94&&!y&&"_hiddenFootnoteSupport"in b.parser.constructs?u(F):F===93?(i.exit(v),i.enter(p),i.consume(F),i.exit(p),i.exit(d),s):so(F)?(i.enter("lineEnding"),i.consume(F),i.exit("lineEnding"),A):(i.enter("chunkString",{contentType:"string"}),P(F))}function P(F){return F===null||F===91||F===93||so(F)||y++>999?(i.exit("chunkString"),A(F)):(i.consume(F),T||(T=!Iu(F)),F===92?R:P)}function R(F){return F===91||F===92||F===93?(i.consume(F),y++,P):P(F)}}function tUe(i,s,u,d,p,v){let b;return y;function y(R){return R===34||R===39||R===40?(i.enter(d),i.enter(p),i.consume(R),i.exit(p),b=R===40?41:R,T):u(R)}function T(R){return R===b?(i.enter(p),i.consume(R),i.exit(p),i.exit(d),s):(i.enter(v),_(R))}function _(R){return R===b?(i.exit(v),T(b)):R===null?u(R):so(R)?(i.enter("lineEnding"),i.consume(R),i.exit("lineEnding"),Kl(i,_,"linePrefix")):(i.enter("chunkString",{contentType:"string"}),A(R))}function A(R){return R===b||R===null||so(R)?(i.exit("chunkString"),_(R)):(i.consume(R),R===92?P:A)}function P(R){return R===b||R===92?(i.consume(R),A):A(R)}}function LR(i,s){let u;return d;function d(p){return so(p)?(i.enter("lineEnding"),i.consume(p),i.exit("lineEnding"),u=!0,d):Iu(p)?Kl(i,d,u?"linePrefix":"lineSuffix")(p):s(p)}}function HD(i){return i.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const kJt={name:"definition",tokenize:TJt},EJt={tokenize:CJt,partial:!0};function TJt(i,s,u){const d=this;let p;return v;function v(F){return i.enter("definition"),b(F)}function b(F){return eUe.call(d,i,y,u,"definitionLabel","definitionLabelMarker","definitionLabelString")(F)}function y(F){return p=HD(d.sliceSerialize(d.events[d.events.length-1][1]).slice(1,-1)),F===58?(i.enter("definitionMarker"),i.consume(F),i.exit("definitionMarker"),T):u(F)}function T(F){return z2(F)?LR(i,_)(F):_(F)}function _(F){return ZVe(i,A,u,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(F)}function A(F){return i.attempt(EJt,P,P)(F)}function P(F){return Iu(F)?Kl(i,R,"whitespace")(F):R(F)}function R(F){return F===null||so(F)?(i.exit("definition"),d.parser.defined.push(p),s(F)):u(F)}}function CJt(i,s,u){return d;function d(y){return z2(y)?LR(i,p)(y):u(y)}function p(y){return tUe(i,v,u,"definitionTitle","definitionTitleMarker","definitionTitleString")(y)}function v(y){return Iu(y)?Kl(i,b,"whitespace")(y):b(y)}function b(y){return y===null||so(y)?s(y):u(y)}}const SJt={name:"hardBreakEscape",tokenize:_Jt};function _Jt(i,s,u){return d;function d(v){return i.enter("hardBreakEscape"),i.consume(v),p}function p(v){return so(v)?(i.exit("hardBreakEscape"),s(v)):u(v)}}const AJt={name:"headingAtx",tokenize:MJt,resolve:LJt};function LJt(i,s){let u=i.length-2,d=3,p,v;return i[d][1].type==="whitespace"&&(d+=2),u-2>d&&i[u][1].type==="whitespace"&&(u-=2),i[u][1].type==="atxHeadingSequence"&&(d===u-1||u-4>d&&i[u-2][1].type==="whitespace")&&(u-=d+1===u?2:4),u>d&&(p={type:"atxHeadingText",start:i[d][1].start,end:i[u][1].end},v={type:"chunkText",start:i[d][1].start,end:i[u][1].end,contentType:"text"},t5(i,d,u-d+1,[["enter",p,s],["enter",v,s],["exit",v,s],["exit",p,s]])),i}function MJt(i,s,u){let d=0;return p;function p(A){return i.enter("atxHeading"),v(A)}function v(A){return i.enter("atxHeadingSequence"),b(A)}function b(A){return A===35&&d++<6?(i.consume(A),b):A===null||z2(A)?(i.exit("atxHeadingSequence"),y(A)):u(A)}function y(A){return A===35?(i.enter("atxHeadingSequence"),T(A)):A===null||so(A)?(i.exit("atxHeading"),s(A)):Iu(A)?Kl(i,y,"whitespace")(A):(i.enter("atxHeadingText"),_(A))}function T(A){return A===35?(i.consume(A),T):(i.exit("atxHeadingSequence"),y(A))}function _(A){return A===null||A===35||z2(A)?(i.exit("atxHeadingText"),y(A)):(i.consume(A),_)}}const DJt=["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"],nUe=["pre","script","style","textarea"],IJt={name:"htmlFlow",tokenize:BJt,resolveTo:PJt,concrete:!0},OJt={tokenize:RJt,partial:!0},NJt={tokenize:FJt,partial:!0};function PJt(i){let s=i.length;for(;s--&&!(i[s][0]==="enter"&&i[s][1].type==="htmlFlow"););return s>1&&i[s-2][1].type==="linePrefix"&&(i[s][1].start=i[s-2][1].start,i[s+1][1].start=i[s-2][1].start,i.splice(s-2,2)),i}function BJt(i,s,u){const d=this;let p,v,b,y,T;return _;function _(Ne){return A(Ne)}function A(Ne){return i.enter("htmlFlow"),i.enter("htmlFlowData"),i.consume(Ne),P}function P(Ne){return Ne===33?(i.consume(Ne),R):Ne===47?(i.consume(Ne),v=!0,K):Ne===63?(i.consume(Ne),p=3,d.interrupt?s:ke):n5(Ne)?(i.consume(Ne),b=String.fromCharCode(Ne),ee):u(Ne)}function R(Ne){return Ne===45?(i.consume(Ne),p=2,F):Ne===91?(i.consume(Ne),p=5,y=0,j):n5(Ne)?(i.consume(Ne),p=4,d.interrupt?s:ke):u(Ne)}function F(Ne){return Ne===45?(i.consume(Ne),d.interrupt?s:ke):u(Ne)}function j(Ne){const gn="CDATA[";return Ne===gn.charCodeAt(y++)?(i.consume(Ne),y===gn.length?d.interrupt?s:xe:j):u(Ne)}function K(Ne){return n5(Ne)?(i.consume(Ne),b=String.fromCharCode(Ne),ee):u(Ne)}function ee(Ne){if(Ne===null||Ne===47||Ne===62||z2(Ne)){const gn=Ne===47,_t=b.toLowerCase();return!gn&&!v&&nUe.includes(_t)?(p=1,d.interrupt?s(Ne):xe(Ne)):DJt.includes(b.toLowerCase())?(p=6,gn?(i.consume(Ne),ie):d.interrupt?s(Ne):xe(Ne)):(p=7,d.interrupt&&!d.parser.lazy[d.now().line]?u(Ne):v?oe(Ne):pe(Ne))}return Ne===45||H3(Ne)?(i.consume(Ne),b+=String.fromCharCode(Ne),ee):u(Ne)}function ie(Ne){return Ne===62?(i.consume(Ne),d.interrupt?s:xe):u(Ne)}function oe(Ne){return Iu(Ne)?(i.consume(Ne),oe):ge(Ne)}function pe(Ne){return Ne===47?(i.consume(Ne),ge):Ne===58||Ne===95||n5(Ne)?(i.consume(Ne),be):Iu(Ne)?(i.consume(Ne),pe):ge(Ne)}function be(Ne){return Ne===45||Ne===46||Ne===58||Ne===95||H3(Ne)?(i.consume(Ne),be):ae(Ne)}function ae(Ne){return Ne===61?(i.consume(Ne),ne):Iu(Ne)?(i.consume(Ne),ae):pe(Ne)}function ne(Ne){return Ne===null||Ne===60||Ne===61||Ne===62||Ne===96?u(Ne):Ne===34||Ne===39?(i.consume(Ne),T=Ne,se):Iu(Ne)?(i.consume(Ne),ne):de(Ne)}function se(Ne){return Ne===T?(i.consume(Ne),T=null,X):Ne===null||so(Ne)?u(Ne):(i.consume(Ne),se)}function de(Ne){return Ne===null||Ne===34||Ne===39||Ne===47||Ne===60||Ne===61||Ne===62||Ne===96||z2(Ne)?ae(Ne):(i.consume(Ne),de)}function X(Ne){return Ne===47||Ne===62||Iu(Ne)?pe(Ne):u(Ne)}function ge(Ne){return Ne===62?(i.consume(Ne),W):u(Ne)}function W(Ne){return Ne===null||so(Ne)?xe(Ne):Iu(Ne)?(i.consume(Ne),W):u(Ne)}function xe(Ne){return Ne===45&&p===2?(i.consume(Ne),je):Ne===60&&p===1?(i.consume(Ne),Ie):Ne===62&&p===4?(i.consume(Ne),Ke):Ne===63&&p===3?(i.consume(Ne),ke):Ne===93&&p===5?(i.consume(Ne),Ce):so(Ne)&&(p===6||p===7)?(i.exit("htmlFlowData"),i.check(OJt,Ft,U)(Ne)):Ne===null||so(Ne)?(i.exit("htmlFlowData"),U(Ne)):(i.consume(Ne),xe)}function U(Ne){return i.check(NJt,Fe,Ft)(Ne)}function Fe(Ne){return i.enter("lineEnding"),i.consume(Ne),i.exit("lineEnding"),Pe}function Pe(Ne){return Ne===null||so(Ne)?U(Ne):(i.enter("htmlFlowData"),xe(Ne))}function je(Ne){return Ne===45?(i.consume(Ne),ke):xe(Ne)}function Ie(Ne){return Ne===47?(i.consume(Ne),b="",Se):xe(Ne)}function Se(Ne){if(Ne===62){const gn=b.toLowerCase();return nUe.includes(gn)?(i.consume(Ne),Ke):xe(Ne)}return n5(Ne)&&b.length<8?(i.consume(Ne),b+=String.fromCharCode(Ne),Se):xe(Ne)}function Ce(Ne){return Ne===93?(i.consume(Ne),ke):xe(Ne)}function ke(Ne){return Ne===62?(i.consume(Ne),Ke):Ne===45&&p===2?(i.consume(Ne),ke):xe(Ne)}function Ke(Ne){return Ne===null||so(Ne)?(i.exit("htmlFlowData"),Ft(Ne)):(i.consume(Ne),Ke)}function Ft(Ne){return i.exit("htmlFlow"),s(Ne)}}function FJt(i,s,u){const d=this;return p;function p(b){return so(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v):u(b)}function v(b){return d.parser.lazy[d.now().line]?u(b):s(b)}}function RJt(i,s,u){return d;function d(p){return i.enter("lineEnding"),i.consume(p),i.exit("lineEnding"),i.attempt(YQ,s,u)}}const jJt={name:"htmlText",tokenize:$Jt};function $Jt(i,s,u){const d=this;let p,v,b;return y;function y(ke){return i.enter("htmlText"),i.enter("htmlTextData"),i.consume(ke),T}function T(ke){return ke===33?(i.consume(ke),_):ke===47?(i.consume(ke),ae):ke===63?(i.consume(ke),pe):n5(ke)?(i.consume(ke),de):u(ke)}function _(ke){return ke===45?(i.consume(ke),A):ke===91?(i.consume(ke),v=0,j):n5(ke)?(i.consume(ke),oe):u(ke)}function A(ke){return ke===45?(i.consume(ke),F):u(ke)}function P(ke){return ke===null?u(ke):ke===45?(i.consume(ke),R):so(ke)?(b=P,Ie(ke)):(i.consume(ke),P)}function R(ke){return ke===45?(i.consume(ke),F):P(ke)}function F(ke){return ke===62?je(ke):ke===45?R(ke):P(ke)}function j(ke){const Ke="CDATA[";return ke===Ke.charCodeAt(v++)?(i.consume(ke),v===Ke.length?K:j):u(ke)}function K(ke){return ke===null?u(ke):ke===93?(i.consume(ke),ee):so(ke)?(b=K,Ie(ke)):(i.consume(ke),K)}function ee(ke){return ke===93?(i.consume(ke),ie):K(ke)}function ie(ke){return ke===62?je(ke):ke===93?(i.consume(ke),ie):K(ke)}function oe(ke){return ke===null||ke===62?je(ke):so(ke)?(b=oe,Ie(ke)):(i.consume(ke),oe)}function pe(ke){return ke===null?u(ke):ke===63?(i.consume(ke),be):so(ke)?(b=pe,Ie(ke)):(i.consume(ke),pe)}function be(ke){return ke===62?je(ke):pe(ke)}function ae(ke){return n5(ke)?(i.consume(ke),ne):u(ke)}function ne(ke){return ke===45||H3(ke)?(i.consume(ke),ne):se(ke)}function se(ke){return so(ke)?(b=se,Ie(ke)):Iu(ke)?(i.consume(ke),se):je(ke)}function de(ke){return ke===45||H3(ke)?(i.consume(ke),de):ke===47||ke===62||z2(ke)?X(ke):u(ke)}function X(ke){return ke===47?(i.consume(ke),je):ke===58||ke===95||n5(ke)?(i.consume(ke),ge):so(ke)?(b=X,Ie(ke)):Iu(ke)?(i.consume(ke),X):je(ke)}function ge(ke){return ke===45||ke===46||ke===58||ke===95||H3(ke)?(i.consume(ke),ge):W(ke)}function W(ke){return ke===61?(i.consume(ke),xe):so(ke)?(b=W,Ie(ke)):Iu(ke)?(i.consume(ke),W):X(ke)}function xe(ke){return ke===null||ke===60||ke===61||ke===62||ke===96?u(ke):ke===34||ke===39?(i.consume(ke),p=ke,U):so(ke)?(b=xe,Ie(ke)):Iu(ke)?(i.consume(ke),xe):(i.consume(ke),Fe)}function U(ke){return ke===p?(i.consume(ke),p=void 0,Pe):ke===null?u(ke):so(ke)?(b=U,Ie(ke)):(i.consume(ke),U)}function Fe(ke){return ke===null||ke===34||ke===39||ke===60||ke===61||ke===96?u(ke):ke===47||ke===62||z2(ke)?X(ke):(i.consume(ke),Fe)}function Pe(ke){return ke===47||ke===62||z2(ke)?X(ke):u(ke)}function je(ke){return ke===62?(i.consume(ke),i.exit("htmlTextData"),i.exit("htmlText"),s):u(ke)}function Ie(ke){return i.exit("htmlTextData"),i.enter("lineEnding"),i.consume(ke),i.exit("lineEnding"),Se}function Se(ke){return Iu(ke)?Kl(i,Ce,"linePrefix",d.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(ke):Ce(ke)}function Ce(ke){return i.enter("htmlTextData"),b(ke)}}const Ome={name:"labelEnd",tokenize:GJt,resolveTo:UJt,resolveAll:VJt},zJt={tokenize:KJt},qJt={tokenize:WJt},HJt={tokenize:YJt};function VJt(i){let s=-1;for(;++s=3&&(_===null||so(_))?(i.exit("thematicBreak"),s(_)):u(_)}function T(_){return _===p?(i.consume(_),d++,T):(i.exit("thematicBreakSequence"),Iu(_)?Kl(i,y,"whitespace")(_):y(_))}}const q2={name:"list",tokenize:iZt,continuation:{tokenize:sZt},exit:oZt},nZt={tokenize:cZt,partial:!0},rZt={tokenize:aZt,partial:!0};function iZt(i,s,u){const d=this,p=d.events[d.events.length-1];let v=p&&p[1].type==="linePrefix"?p[2].sliceSerialize(p[1],!0).length:0,b=0;return y;function y(F){const j=d.containerState.type||(F===42||F===43||F===45?"listUnordered":"listOrdered");if(j==="listUnordered"?!d.containerState.marker||F===d.containerState.marker:Ame(F)){if(d.containerState.type||(d.containerState.type=j,i.enter(j,{_container:!0})),j==="listUnordered")return i.enter("listItemPrefix"),F===42||F===45?i.check(XQ,u,_)(F):_(F);if(!d.interrupt||F===49)return i.enter("listItemPrefix"),i.enter("listItemValue"),T(F)}return u(F)}function T(F){return Ame(F)&&++b<10?(i.consume(F),T):(!d.interrupt||b<2)&&(d.containerState.marker?F===d.containerState.marker:F===41||F===46)?(i.exit("listItemValue"),_(F)):u(F)}function _(F){return i.enter("listItemMarker"),i.consume(F),i.exit("listItemMarker"),d.containerState.marker=d.containerState.marker||F,i.check(YQ,d.interrupt?u:A,i.attempt(nZt,R,P))}function A(F){return d.containerState.initialBlankLine=!0,v++,R(F)}function P(F){return Iu(F)?(i.enter("listItemPrefixWhitespace"),i.consume(F),i.exit("listItemPrefixWhitespace"),R):u(F)}function R(F){return d.containerState.size=v+d.sliceSerialize(i.exit("listItemPrefix"),!0).length,s(F)}}function sZt(i,s,u){const d=this;return d.containerState._closeFlow=void 0,i.check(YQ,p,v);function p(y){return d.containerState.furtherBlankLines=d.containerState.furtherBlankLines||d.containerState.initialBlankLine,Kl(i,s,"listItemIndent",d.containerState.size+1)(y)}function v(y){return d.containerState.furtherBlankLines||!Iu(y)?(d.containerState.furtherBlankLines=void 0,d.containerState.initialBlankLine=void 0,b(y)):(d.containerState.furtherBlankLines=void 0,d.containerState.initialBlankLine=void 0,i.attempt(rZt,s,b)(y))}function b(y){return d.containerState._closeFlow=!0,d.interrupt=void 0,Kl(i,i.attempt(q2,s,u),"linePrefix",d.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(y)}}function aZt(i,s,u){const d=this;return Kl(i,p,"listItemIndent",d.containerState.size+1);function p(v){const b=d.events[d.events.length-1];return b&&b[1].type==="listItemIndent"&&b[2].sliceSerialize(b[1],!0).length===d.containerState.size?s(v):u(v)}}function oZt(i){i.exit(this.containerState.type)}function cZt(i,s,u){const d=this;return Kl(i,p,"listItemPrefixWhitespace",d.parser.constructs.disable.null.includes("codeIndented")?void 0:4+1);function p(v){const b=d.events[d.events.length-1];return!Iu(v)&&b&&b[1].type==="listItemPrefixWhitespace"?s(v):u(v)}}const rUe={name:"setextUnderline",tokenize:lZt,resolveTo:uZt};function uZt(i,s){let u=i.length,d,p,v;for(;u--;)if(i[u][0]==="enter"){if(i[u][1].type==="content"){d=u;break}i[u][1].type==="paragraph"&&(p=u)}else i[u][1].type==="content"&&i.splice(u,1),!v&&i[u][1].type==="definition"&&(v=u);const b={type:"setextHeading",start:Object.assign({},i[p][1].start),end:Object.assign({},i[i.length-1][1].end)};return i[p][1].type="setextHeadingText",v?(i.splice(p,0,["enter",b,s]),i.splice(v+1,0,["exit",i[d][1],s]),i[d][1].end=Object.assign({},i[v][1].end)):i[d][1]=b,i.push(["exit",b,s]),i}function lZt(i,s,u){const d=this;let p;return v;function v(_){let A=d.events.length,P;for(;A--;)if(d.events[A][1].type!=="lineEnding"&&d.events[A][1].type!=="linePrefix"&&d.events[A][1].type!=="content"){P=d.events[A][1].type==="paragraph";break}return!d.parser.lazy[d.now().line]&&(d.interrupt||P)?(i.enter("setextHeadingLine"),p=_,b(_)):u(_)}function b(_){return i.enter("setextHeadingLineSequence"),y(_)}function y(_){return _===p?(i.consume(_),y):(i.exit("setextHeadingLineSequence"),Iu(_)?Kl(i,T,"lineSuffix")(_):T(_))}function T(_){return _===null||so(_)?(i.exit("setextHeadingLine"),s(_)):u(_)}}const hZt={tokenize:fZt};function fZt(i){const s=this,u=i.attempt(YQ,d,i.attempt(this.parser.constructs.flowInitial,p,Kl(i,i.attempt(this.parser.constructs.flow,p,i.attempt(mJt,p)),"linePrefix")));return u;function d(v){if(v===null){i.consume(v);return}return i.enter("lineEndingBlank"),i.consume(v),i.exit("lineEndingBlank"),s.currentConstruct=void 0,u}function p(v){if(v===null){i.consume(v);return}return i.enter("lineEnding"),i.consume(v),i.exit("lineEnding"),s.currentConstruct=void 0,u}}const dZt={resolveAll:sUe()},gZt=iUe("string"),pZt=iUe("text");function iUe(i){return{tokenize:s,resolveAll:sUe(i==="text"?bZt:void 0)};function s(u){const d=this,p=this.parser.constructs[i],v=u.attempt(p,b,y);return b;function b(A){return _(A)?v(A):y(A)}function y(A){if(A===null){u.consume(A);return}return u.enter("data"),u.consume(A),T}function T(A){return _(A)?(u.exit("data"),v(A)):(u.consume(A),T)}function _(A){if(A===null)return!0;const P=p[A];let R=-1;if(P)for(;++R-1){const y=b[0];typeof y=="string"?b[0]=y.slice(d):b.shift()}v>0&&b.push(i[p].slice(0,v))}return b}function wZt(i,s){let u=-1;const d=[];let p;for(;++u13&&u<32||u>126&&u<160||u>55295&&u<57344||u>64975&&u<65008||(u&65535)===65535||(u&65535)===65534||u>1114111?"�":String.fromCharCode(u)}const TZt=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function CZt(i){return i.replace(TZt,SZt)}function SZt(i,s,u){if(s)return s;if(u.charCodeAt(0)===35){const p=u.charCodeAt(1),v=p===120||p===88;return oUe(u.slice(v?2:1),v?16:10)}return Dme(u)||i}function QQ(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?cUe(i.position):"start"in i||"end"in i?cUe(i):"line"in i||"column"in i?Pme(i):""}function Pme(i){return uUe(i&&i.line)+":"+uUe(i&&i.column)}function cUe(i){return Pme(i&&i.start)+"-"+Pme(i&&i.end)}function uUe(i){return i&&typeof i=="number"?i:1}const lUe={}.hasOwnProperty,hUe=function(i,s,u){return typeof s!="string"&&(u=s,s=void 0),_Zt(u)(EZt(xZt(u).document().write(kZt()(i,s,!0))))};function _Zt(i){const s={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:y(Ma),autolinkProtocol:W,autolinkEmail:W,atxHeading:y(zr),blockQuote:y(Qe),characterEscape:W,characterReference:W,codeFenced:y(Dt),codeFencedFenceInfo:T,codeFencedFenceMeta:T,codeIndented:y(Dt,T),codeText:y(kt,T),codeTextData:W,data:W,codeFlowValue:W,definition:y(On),definitionDestinationString:T,definitionLabelString:T,definitionTitleString:T,emphasis:y(ht),hardBreakEscape:y(yt),hardBreakTrailing:y(yt),htmlFlow:y(ji,T),htmlFlowData:W,htmlText:y(ji,T),htmlTextData:W,image:y(xi),label:T,link:y(Ma),listItem:y(ao),listItemValue:j,listOrdered:y(zs,F),listUnordered:y(zs),paragraph:y(Tr),reference:_t,referenceString:T,resourceDestinationString:T,resourceTitleString:T,setextHeading:y(zr),strong:y(Fn),thematicBreak:y(Un)},exit:{atxHeading:A(),atxHeadingSequence:se,autolink:A(),autolinkEmail:Pt,autolinkProtocol:xt,blockQuote:A(),characterEscapeValue:xe,characterReferenceMarkerHexadecimal:Gt,characterReferenceMarkerNumeric:Gt,characterReferenceValue:ln,codeFenced:A(oe),codeFencedFence:ie,codeFencedFenceInfo:K,codeFencedFenceMeta:ee,codeFlowValue:xe,codeIndented:A(pe),codeText:A(Ie),codeTextData:xe,data:xe,definition:A(),definitionDestinationString:ne,definitionLabelString:be,definitionTitleString:ae,emphasis:A(),hardBreakEscape:A(Fe),hardBreakTrailing:A(Fe),htmlFlow:A(Pe),htmlFlowData:xe,htmlText:A(je),htmlTextData:xe,image:A(Ce),label:Ke,labelText:ke,lineEnding:U,link:A(Se),listItem:A(),listOrdered:A(),listUnordered:A(),paragraph:A(),referenceString:Et,resourceDestinationString:Ft,resourceTitleString:Ne,resource:gn,setextHeading:A(ge),setextHeadingLineSequence:X,setextHeadingText:de,strong:A(),thematicBreak:A()}};fUe(s,(i||{}).mdastExtensions||[]);const u={};return d;function d(At){let wt={type:"root",children:[]};const on={stack:[wt],tokenStack:[],config:s,enter:_,exit:P,buffer:T,resume:R,setData:v,getData:b},fn=[];let An=-1;for(;++An0){const oo=on.tokenStack[on.tokenStack.length-1];(oo[1]||dUe).call(on,void 0,oo[0])}for(wt.position={start:N9(At.length>0?At[0][1].start:{line:1,column:1,offset:0}),end:N9(At.length>0?At[At.length-2][1].end:{line:1,column:1,offset:0})},An=-1;++An{A!==0&&(p++,d.push([])),_.split(" ").forEach(P=>{P&&d[p].push({content:P,type:y})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(T=>{v(T,b.type)})}return u.forEach(b=>{b.type==="paragraph"&&b.children.forEach(y=>{v(y)})}),d}function DZt(i){const{children:s}=hUe(i);function u(d){return d.type==="text"?d.value.replace(/\n/g,"
"):d.type==="strong"?`${d.children.map(u).join("")}`:d.type==="emphasis"?`${d.children.map(u).join("")}`:d.type==="paragraph"?`${d.children.map(u).join("")}
`:`Unsupported markdown: ${d.type}`}return s.map(u).join("")}function IZt(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(s=>s.segment):[...i]}function OZt(i,s){const u=IZt(s.content);return gUe(i,[],u,s.type)}function gUe(i,s,u,d){if(u.length===0)return[{content:s.join(""),type:d},{content:"",type:d}];const[p,...v]=u,b=[...s,p];return i([{content:b.join(""),type:d}])?gUe(i,b,v,d):(s.length===0&&p&&(s.push(p),u.shift()),[{content:s.join(""),type:d},{content:u.join(""),type:d}])}function NZt(i,s){if(i.some(({content:u})=>u.includes(`
+`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return Bme(i,s)}function Bme(i,s,u=[],d=[]){if(i.length===0)return d.length>0&&u.push(d),u.length>0?u:[];let p="";i[0].content===" "&&(p=" ",i.shift());const v=i.shift()??{content:" ",type:"normal"},b=[...d];if(p!==""&&b.push({content:p,type:"normal"}),b.push(v),s(b))return Bme(i,s,u,b);if(d.length>0)u.push(d),i.unshift(v);else if(v.content){const[y,T]=OZt(s,v);u.push([y]),T.content&&i.unshift(T)}return Bme(i,s,u)}function PZt(i,s){s&&i.attr("style",s)}function BZt(i,s,u,d,p=!1){const v=i.append("foreignObject"),b=v.append("xhtml:div"),y=s.label,T=s.isNode?"nodeLabel":"edgeLabel";b.html(`
+ "+y+""),PZt(b,s.labelStyle),b.style("display","table-cell"),b.style("white-space","nowrap"),b.style("max-width",u+"px"),b.attr("xmlns","http://www.w3.org/1999/xhtml"),p&&b.attr("class","labelBkg");let _=b.node().getBoundingClientRect();return _.width===u&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",u+"px"),_=b.node().getBoundingClientRect()),v.style("width",_.width),v.style("height",_.height),v.node()}function Fme(i,s,u){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",s*u-.1+"em").attr("dy",u+"em")}function FZt(i,s,u){const d=i.append("text"),p=Fme(d,1,s);Rme(p,u);const v=p.node().getComputedTextLength();return d.remove(),v}function RZt(i,s,u){var b;const d=i.append("text"),p=Fme(d,1,s);Rme(p,[{content:u,type:"normal"}]);const v=(b=p.node())==null?void 0:b.getBoundingClientRect();return v&&d.remove(),v}function jZt(i,s,u,d=!1){const v=s.append("g"),b=v.insert("rect").attr("class","background"),y=v.append("text").attr("y","-10.1");let T=0;for(const _ of u){const A=R=>FZt(v,1.1,R)<=i,P=A(_)?[_]:NZt(_,A);for(const R of P){const F=Fme(y,T,1.1);Rme(F,R),T++}}if(d){const _=y.node().getBBox(),A=2;return b.attr("x",-A).attr("y",-A).attr("width",_.width+2*A).attr("height",_.height+2*A),v.node()}else return y.node()}function Rme(i,s){i.text(""),s.forEach((u,d)=>{const p=i.append("tspan").attr("font-style",u.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",u.type==="strong"?"bold":"normal");d===0?p.text(u.content):p.text(" "+u.content)})}const JQ=(i,s="",{style:u="",isTitle:d=!1,classes:p="",useHtmlLabels:v=!0,isNode:b=!0,width:y=200,addSvgBackground:T=!1}={})=>{if(Xe.info("createText",s,u,d,p,v,b,T),v){const _=DZt(s),A={isNode:b,label:ZF(_).replace(/fa[blrs]?:fa-[\w-]+/g,R=>``),labelStyle:u.replace("fill:","color:")};return BZt(i,A,y,p,T)}else{const _=MZt(s);return jZt(y,i,_,T)}},g1=async(i,s,u,d)=>{let p;const v=s.useHtmlLabels||f1(qt().flowchart.htmlLabels);u?p=u:p="node default";const b=i.insert("g").attr("class",p).attr("id",s.domId||s.id),y=b.insert("g").attr("class","label").attr("style",s.labelStyle);let T;s.labelText===void 0?T="":T=typeof s.labelText=="string"?s.labelText:s.labelText[0];const _=y.node();let A;s.labelType==="markdown"?A=JQ(y,Yf(ZF(T),qt()),{useHtmlLabels:v,width:s.width||qt().flowchart.wrappingWidth,classes:"markdown-node-label"}):A=_.appendChild($2(Yf(ZF(T),qt()),s.labelStyle,!1,d));let P=A.getBBox();const R=s.padding/2;if(f1(qt().flowchart.htmlLabels)){const F=A.children[0],j=Ir(A),K=F.getElementsByTagName("img");if(K){const ee=T.replace(/
]*>/g,"").trim()==="";await Promise.all([...K].map(ie=>new Promise(oe=>{function pe(){if(ie.style.display="flex",ie.style.flexDirection="column",ee){const be=qt().fontSize?qt().fontSize:window.getComputedStyle(document.body).fontSize,ae=5,ne=parseInt(be,10)*ae+"px";ie.style.minWidth=ne,ie.style.maxWidth=ne}else ie.style.width="100%";oe(ie)}setTimeout(()=>{ie.complete&&pe()}),ie.addEventListener("error",pe),ie.addEventListener("load",pe)})))}P=F.getBoundingClientRect(),j.attr("width",P.width),j.attr("height",P.height)}return v?y.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"):y.attr("transform","translate(0, "+-P.height/2+")"),s.centerLabel&&y.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),y.insert("rect",":first-child"),{shapeSvg:b,bbox:P,halfPadding:R,label:y}},Kh=(i,s)=>{const u=s.node().getBBox();i.width=u.width,i.height=u.height};function r5(i,s,u,d){return i.insert("polygon",":first-child").attr("points",d.map(function(p){return p.x+","+p.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-s/2+","+u/2+")")}let Mo={},V3={},pUe={};const $Zt=()=>{V3={},pUe={},Mo={}},ZQ=(i,s)=>(Xe.trace("In isDescendant",s," ",i," = ",V3[s].includes(i)),!!V3[s].includes(i)),zZt=(i,s)=>(Xe.info("Descendants of ",s," is ",V3[s]),Xe.info("Edge is ",i),i.v===s||i.w===s?!1:V3[s]?V3[s].includes(i.v)||ZQ(i.v,s)||ZQ(i.w,s)||V3[s].includes(i.w):(Xe.debug("Tilt, ",s,",not in descendants"),!1)),bUe=(i,s,u,d)=>{Xe.warn("Copying children of ",i,"root",d,"data",s.node(i),d);const p=s.children(i)||[];i!==d&&p.push(i),Xe.warn("Copying (nodes) clusterId",i,"nodes",p),p.forEach(v=>{if(s.children(v).length>0)bUe(v,s,u,d);else{const b=s.node(v);Xe.info("cp ",v," to ",d," with parent ",i),u.setNode(v,b),d!==s.parent(v)&&(Xe.warn("Setting parent",v,s.parent(v)),u.setParent(v,s.parent(v))),i!==d&&v!==i?(Xe.debug("Setting parent",v,i),u.setParent(v,i)):(Xe.info("In copy ",i,"root",d,"data",s.node(i),d),Xe.debug("Not Setting parent for node=",v,"cluster!==rootId",i!==d,"node!==clusterId",v!==i));const y=s.edges(v);Xe.debug("Copying Edges",y),y.forEach(T=>{Xe.info("Edge",T);const _=s.edge(T.v,T.w,T.name);Xe.info("Edge data",_,d);try{zZt(T,d)?(Xe.info("Copying as ",T.v,T.w,_,T.name),u.setEdge(T.v,T.w,_,T.name),Xe.info("newGraph edges ",u.edges(),u.edge(u.edges()[0]))):Xe.info("Skipping copy of edge ",T.v,"-->",T.w," rootId: ",d," clusterId:",i)}catch(A){Xe.error(A)}})}Xe.debug("Removing node",v),s.removeNode(v)})},mUe=(i,s)=>{const u=s.children(i);let d=[...u];for(const p of u)pUe[p]=i,d=[...d,...mUe(p,s)];return d},MR=(i,s)=>{Xe.trace("Searching",i);const u=s.children(i);if(Xe.trace("Searching children of id ",i,u),u.length<1)return Xe.trace("This is a valid node",i),i;for(const d of u){const p=MR(d,s);if(p)return Xe.trace("Found replacement for",i," => ",p),p}},eJ=i=>!Mo[i]||!Mo[i].externalConnections?i:Mo[i]?Mo[i].id:i,qZt=(i,s)=>{if(!i||s>10){Xe.debug("Opting out, no graph ");return}else Xe.debug("Opting in, graph ");i.nodes().forEach(function(u){i.children(u).length>0&&(Xe.warn("Cluster identified",u," Replacement id in edges: ",MR(u,i)),V3[u]=mUe(u,i),Mo[u]={id:MR(u,i),clusterData:i.node(u)})}),i.nodes().forEach(function(u){const d=i.children(u),p=i.edges();d.length>0?(Xe.debug("Cluster identified",u,V3),p.forEach(v=>{if(v.v!==u&&v.w!==u){const b=ZQ(v.v,u),y=ZQ(v.w,u);b^y&&(Xe.warn("Edge: ",v," leaves cluster ",u),Xe.warn("Descendants of XXX ",u,": ",V3[u]),Mo[u].externalConnections=!0)}})):Xe.debug("Not a cluster ",u,V3)});for(let u of Object.keys(Mo)){const d=Mo[u].id,p=i.parent(d);p!==u&&Mo[p]&&!Mo[p].externalConnections&&(Mo[u].id=p)}i.edges().forEach(function(u){const d=i.edge(u);Xe.warn("Edge "+u.v+" -> "+u.w+": "+JSON.stringify(u)),Xe.warn("Edge "+u.v+" -> "+u.w+": "+JSON.stringify(i.edge(u)));let p=u.v,v=u.w;if(Xe.warn("Fix XXX",Mo,"ids:",u.v,u.w,"Translating: ",Mo[u.v]," --- ",Mo[u.w]),Mo[u.v]&&Mo[u.w]&&Mo[u.v]===Mo[u.w]){Xe.warn("Fixing and trixing link to self - removing XXX",u.v,u.w,u.name),Xe.warn("Fixing and trixing - removing XXX",u.v,u.w,u.name),p=eJ(u.v),v=eJ(u.w),i.removeEdge(u.v,u.w,u.name);const b=u.w+"---"+u.v;i.setNode(b,{domId:b,id:b,labelStyle:"",labelText:d.label,padding:0,shape:"labelRect",style:""});const y=structuredClone(d),T=structuredClone(d);y.label="",y.arrowTypeEnd="none",T.label="",y.fromCluster=u.v,T.toCluster=u.v,i.setEdge(p,b,y,u.name+"-cyclic-special"),i.setEdge(b,v,T,u.name+"-cyclic-special")}else if(Mo[u.v]||Mo[u.w]){if(Xe.warn("Fixing and trixing - removing XXX",u.v,u.w,u.name),p=eJ(u.v),v=eJ(u.w),i.removeEdge(u.v,u.w,u.name),p!==u.v){const b=i.parent(p);Mo[b].externalConnections=!0,d.fromCluster=u.v}if(v!==u.w){const b=i.parent(v);Mo[b].externalConnections=!0,d.toCluster=u.w}Xe.warn("Fix Replacing with XXX",p,v,u.name),i.setEdge(p,v,d,u.name)}}),Xe.warn("Adjusted Graph",q7(i)),vUe(i,0),Xe.trace(Mo)},vUe=(i,s)=>{if(Xe.warn("extractor - ",s,q7(i),i.children("D")),s>10){Xe.error("Bailing out");return}let u=i.nodes(),d=!1;for(const p of u){const v=i.children(p);d=d||v.length>0}if(!d){Xe.debug("Done, no node has children",i.nodes());return}Xe.debug("Nodes = ",u,s);for(const p of u)if(Xe.debug("Extracting node",p,Mo,Mo[p]&&!Mo[p].externalConnections,!i.parent(p),i.node(p),i.children("D")," Depth ",s),!Mo[p])Xe.debug("Not a cluster",p,s);else if(!Mo[p].externalConnections&&i.children(p)&&i.children(p).length>0){Xe.warn("Cluster without external connections, without a parent and with children",p,s);let b=i.graph().rankdir==="TB"?"LR":"TB";Mo[p]&&Mo[p].clusterData&&Mo[p].clusterData.dir&&(b=Mo[p].clusterData.dir,Xe.warn("Fixing dir",Mo[p].clusterData.dir,b));const y=new B0({multigraph:!0,compound:!0}).setGraph({rankdir:b,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Xe.warn("Old graph before copy",q7(i)),bUe(p,i,y,p),i.setNode(p,{clusterNode:!0,id:p,clusterData:Mo[p].clusterData,labelText:Mo[p].labelText,graph:y}),Xe.warn("New graph after copy node: (",p,")",q7(y)),Xe.debug("Old graph after copy",q7(i))}else Xe.warn("Cluster ** ",p," **not meeting the criteria !externalConnections:",!Mo[p].externalConnections," no parent: ",!i.parent(p)," children ",i.children(p)&&i.children(p).length>0,i.children("D"),s),Xe.debug(Mo);u=i.nodes(),Xe.warn("New list of nodes",u);for(const p of u){const v=i.node(p);Xe.warn(" Now next level",p,v),v.clusterNode&&vUe(v.graph,s+1)}},wUe=(i,s)=>{if(s.length===0)return[];let u=Object.assign(s);return s.forEach(d=>{const p=i.children(d),v=wUe(i,p);u=[...u,...v]}),u},HZt=i=>wUe(i,i.children());function VZt(i,s){return i.intersect(s)}function yUe(i,s,u,d){var p=i.x,v=i.y,b=p-d.x,y=v-d.y,T=Math.sqrt(s*s*y*y+u*u*b*b),_=Math.abs(s*u*b/T);d.x0}function KZt(i,s,u){var d=i.x,p=i.y,v=[],b=Number.POSITIVE_INFINITY,y=Number.POSITIVE_INFINITY;typeof s.forEach=="function"?s.forEach(function(j){b=Math.min(b,j.x),y=Math.min(y,j.y)}):(b=Math.min(b,s.x),y=Math.min(y,s.y));for(var T=d-i.width/2-b,_=p-i.height/2-y,A=0;A1&&v.sort(function(j,K){var ee=j.x-u.x,ie=j.y-u.y,oe=Math.sqrt(ee*ee+ie*ie),pe=K.x-u.x,be=K.y-u.y,ae=Math.sqrt(pe*pe+be*be);return oe{var u=i.x,d=i.y,p=s.x-u,v=s.y-d,b=i.width/2,y=i.height/2,T,_;return Math.abs(v)*b>Math.abs(p)*y?(v<0&&(y=-y),T=v===0?0:y*p/v,_=y):(p<0&&(b=-b),T=b,_=p===0?0:b*v/p),{x:u+T,y:d+_}},yh={node:VZt,circle:UZt,ellipse:yUe,polygon:KZt,rect:DR},WZt=async(i,s)=>{s.useHtmlLabels||qt().flowchart.htmlLabels||(s.centerLabel=!0);const{shapeSvg:d,bbox:p,halfPadding:v}=await g1(i,s,"node "+s.classes,!0);Xe.info("Classes = ",s.classes);const b=d.insert("rect",":first-child");return b.attr("rx",s.rx).attr("ry",s.ry).attr("x",-p.width/2-v).attr("y",-p.height/2-v).attr("width",p.width+s.padding).attr("height",p.height+s.padding),Kh(s,b),s.intersect=function(y){return yh.rect(s,y)},d},YZt=i=>{const s=new Set;for(const u of i)switch(u){case"x":s.add("right"),s.add("left");break;case"y":s.add("up"),s.add("down");break;default:s.add(u);break}return s},XZt=(i,s,u)=>{const d=YZt(i),p=2,v=s.height+2*u.padding,b=v/p,y=s.width+2*b+u.padding,T=u.padding/2;return d.has("right")&&d.has("left")&&d.has("up")&&d.has("down")?[{x:0,y:0},{x:b,y:0},{x:y/2,y:2*T},{x:y-b,y:0},{x:y,y:0},{x:y,y:-v/3},{x:y+2*T,y:-v/2},{x:y,y:-2*v/3},{x:y,y:-v},{x:y-b,y:-v},{x:y/2,y:-v-2*T},{x:b,y:-v},{x:0,y:-v},{x:0,y:-2*v/3},{x:-2*T,y:-v/2},{x:0,y:-v/3}]:d.has("right")&&d.has("left")&&d.has("up")?[{x:b,y:0},{x:y-b,y:0},{x:y,y:-v/2},{x:y-b,y:-v},{x:b,y:-v},{x:0,y:-v/2}]:d.has("right")&&d.has("left")&&d.has("down")?[{x:0,y:0},{x:b,y:-v},{x:y-b,y:-v},{x:y,y:0}]:d.has("right")&&d.has("up")&&d.has("down")?[{x:0,y:0},{x:y,y:-b},{x:y,y:-v+b},{x:0,y:-v}]:d.has("left")&&d.has("up")&&d.has("down")?[{x:y,y:0},{x:0,y:-b},{x:0,y:-v+b},{x:y,y:-v}]:d.has("right")&&d.has("left")?[{x:b,y:0},{x:b,y:-T},{x:y-b,y:-T},{x:y-b,y:0},{x:y,y:-v/2},{x:y-b,y:-v},{x:y-b,y:-v+T},{x:b,y:-v+T},{x:b,y:-v},{x:0,y:-v/2}]:d.has("up")&&d.has("down")?[{x:y/2,y:0},{x:0,y:-T},{x:b,y:-T},{x:b,y:-v+T},{x:0,y:-v+T},{x:y/2,y:-v},{x:y,y:-v+T},{x:y-b,y:-v+T},{x:y-b,y:-T},{x:y,y:-T}]:d.has("right")&&d.has("up")?[{x:0,y:0},{x:y,y:-b},{x:0,y:-v}]:d.has("right")&&d.has("down")?[{x:0,y:0},{x:y,y:0},{x:0,y:-v}]:d.has("left")&&d.has("up")?[{x:y,y:0},{x:0,y:-b},{x:y,y:-v}]:d.has("left")&&d.has("down")?[{x:y,y:0},{x:0,y:0},{x:y,y:-v}]:d.has("right")?[{x:b,y:-T},{x:b,y:-T},{x:y-b,y:-T},{x:y-b,y:0},{x:y,y:-v/2},{x:y-b,y:-v},{x:y-b,y:-v+T},{x:b,y:-v+T},{x:b,y:-v+T}]:d.has("left")?[{x:b,y:0},{x:b,y:-T},{x:y-b,y:-T},{x:y-b,y:-v+T},{x:b,y:-v+T},{x:b,y:-v},{x:0,y:-v/2}]:d.has("up")?[{x:b,y:-T},{x:b,y:-v+T},{x:0,y:-v+T},{x:y/2,y:-v},{x:y,y:-v+T},{x:y-b,y:-v+T},{x:y-b,y:-T}]:d.has("down")?[{x:y/2,y:0},{x:0,y:-T},{x:b,y:-T},{x:b,y:-v+T},{x:y-b,y:-v+T},{x:y-b,y:-T},{x:y,y:-T}]:[{x:0,y:0}]},kUe=i=>i?" "+i:"",dm=(i,s)=>`${s||"node default"}${kUe(i.classes)} ${kUe(i.class)}`,EUe=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=p+v,y=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}];Xe.info("Question main (Circle)");const T=r5(u,b,b,y);return T.attr("style",s.style),Kh(s,T),s.intersect=function(_){return Xe.warn("Intersect called"),yh.polygon(s,y,_)},u},QZt=(i,s)=>{const u=i.insert("g").attr("class","node default").attr("id",s.domId||s.id),d=28,p=[{x:0,y:d/2},{x:d/2,y:0},{x:0,y:-d/2},{x:-d/2,y:0}];return u.insert("polygon",":first-child").attr("points",p.map(function(b){return b.x+","+b.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),s.width=28,s.height=28,s.intersect=function(b){return yh.circle(s,14,b)},u},JZt=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=4,v=d.height+s.padding,b=v/p,y=d.width+2*b+s.padding,T=[{x:b,y:0},{x:y-b,y:0},{x:y,y:-v/2},{x:y-b,y:-v},{x:b,y:-v},{x:0,y:-v/2}],_=r5(u,y,v,T);return _.attr("style",s.style),Kh(s,_),s.intersect=function(A){return yh.polygon(s,T,A)},u},ZZt=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,void 0,!0),p=2,v=d.height+2*s.padding,b=v/p,y=d.width+2*b+s.padding,T=XZt(s.directions,d,s),_=r5(u,y,v,T);return _.attr("style",s.style),Kh(s,_),s.intersect=function(A){return yh.polygon(s,T,A)},u},een=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:-v/2,y:0},{x:p,y:0},{x:p,y:-v},{x:-v/2,y:-v},{x:0,y:-v/2}];return r5(u,p,v,b).attr("style",s.style),s.width=p+v,s.height=v,s.intersect=function(T){return yh.polygon(s,b,T)},u},ten=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:-2*v/6,y:0},{x:p-v/6,y:0},{x:p+2*v/6,y:-v},{x:v/6,y:-v}],y=r5(u,p,v,b);return y.attr("style",s.style),Kh(s,y),s.intersect=function(T){return yh.polygon(s,b,T)},u},nen=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:2*v/6,y:0},{x:p+v/6,y:0},{x:p-2*v/6,y:-v},{x:-v/6,y:-v}],y=r5(u,p,v,b);return y.attr("style",s.style),Kh(s,y),s.intersect=function(T){return yh.polygon(s,b,T)},u},ren=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:-2*v/6,y:0},{x:p+2*v/6,y:0},{x:p-v/6,y:-v},{x:v/6,y:-v}],y=r5(u,p,v,b);return y.attr("style",s.style),Kh(s,y),s.intersect=function(T){return yh.polygon(s,b,T)},u},ien=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:v/6,y:0},{x:p-v/6,y:0},{x:p+2*v/6,y:-v},{x:-2*v/6,y:-v}],y=r5(u,p,v,b);return y.attr("style",s.style),Kh(s,y),s.intersect=function(T){return yh.polygon(s,b,T)},u},sen=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:0,y:0},{x:p+v/2,y:0},{x:p,y:-v/2},{x:p+v/2,y:-v},{x:0,y:-v}],y=r5(u,p,v,b);return y.attr("style",s.style),Kh(s,y),s.intersect=function(T){return yh.polygon(s,b,T)},u},aen=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=p/2,b=v/(2.5+p/50),y=d.height+b+s.padding,T="M 0,"+b+" a "+v+","+b+" 0,0,0 "+p+" 0 a "+v+","+b+" 0,0,0 "+-p+" 0 l 0,"+y+" a "+v+","+b+" 0,0,0 "+p+" 0 l 0,"+-y,_=u.attr("label-offset-y",b).insert("path",":first-child").attr("style",s.style).attr("d",T).attr("transform","translate("+-p/2+","+-(y/2+b)+")");return Kh(s,_),s.intersect=function(A){const P=yh.rect(s,A),R=P.x-s.x;if(v!=0&&(Math.abs(R)s.height/2-b)){let F=b*b*(1-R*R/(v*v));F!=0&&(F=Math.sqrt(F)),F=b-F,A.y-s.y>0&&(F=-F),P.y+=F}return P},u},oen=async(i,s)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,s,"node "+s.classes+" "+s.class,!0),v=u.insert("rect",":first-child"),b=s.positioned?s.width:d.width+s.padding,y=s.positioned?s.height:d.height+s.padding,T=s.positioned?-b/2:-d.width/2-p,_=s.positioned?-y/2:-d.height/2-p;if(v.attr("class","basic label-container").attr("style",s.style).attr("rx",s.rx).attr("ry",s.ry).attr("x",T).attr("y",_).attr("width",b).attr("height",y),s.props){const A=new Set(Object.keys(s.props));s.props.borders&&(jme(v,s.props.borders,b,y),A.delete("borders")),A.forEach(P=>{Xe.warn(`Unknown node property ${P}`)})}return Kh(s,v),s.intersect=function(A){return yh.rect(s,A)},u},cen=async(i,s)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,s,"node "+s.classes,!0),v=u.insert("rect",":first-child"),b=s.positioned?s.width:d.width+s.padding,y=s.positioned?s.height:d.height+s.padding,T=s.positioned?-b/2:-d.width/2-p,_=s.positioned?-y/2:-d.height/2-p;if(v.attr("class","basic cluster composite label-container").attr("style",s.style).attr("rx",s.rx).attr("ry",s.ry).attr("x",T).attr("y",_).attr("width",b).attr("height",y),s.props){const A=new Set(Object.keys(s.props));s.props.borders&&(jme(v,s.props.borders,b,y),A.delete("borders")),A.forEach(P=>{Xe.warn(`Unknown node property ${P}`)})}return Kh(s,v),s.intersect=function(A){return yh.rect(s,A)},u},uen=async(i,s)=>{const{shapeSvg:u}=await g1(i,s,"label",!0);Xe.trace("Classes = ",s.class);const d=u.insert("rect",":first-child"),p=0,v=0;if(d.attr("width",p).attr("height",v),u.attr("class","label edgeLabel"),s.props){const b=new Set(Object.keys(s.props));s.props.borders&&(jme(d,s.props.borders,p,v),b.delete("borders")),b.forEach(y=>{Xe.warn(`Unknown node property ${y}`)})}return Kh(s,d),s.intersect=function(b){return yh.rect(s,b)},u};function jme(i,s,u,d){const p=[],v=y=>{p.push(y,0)},b=y=>{p.push(0,y)};s.includes("t")?(Xe.debug("add top border"),v(u)):b(u),s.includes("r")?(Xe.debug("add right border"),v(d)):b(d),s.includes("b")?(Xe.debug("add bottom border"),v(u)):b(u),s.includes("l")?(Xe.debug("add left border"),v(d)):b(d),i.attr("stroke-dasharray",p.join(" "))}const len=(i,s)=>{let u;s.classes?u="node "+s.classes:u="node default";const d=i.insert("g").attr("class",u).attr("id",s.domId||s.id),p=d.insert("rect",":first-child"),v=d.insert("line"),b=d.insert("g").attr("class","label"),y=s.labelText.flat?s.labelText.flat():s.labelText;let T="";typeof y=="object"?T=y[0]:T=y,Xe.info("Label text abc79",T,y,typeof y=="object");const _=b.node().appendChild($2(T,s.labelStyle,!0,!0));let A={width:0,height:0};if(f1(qt().flowchart.htmlLabels)){const K=_.children[0],ee=Ir(_);A=K.getBoundingClientRect(),ee.attr("width",A.width),ee.attr("height",A.height)}Xe.info("Text 2",y);const P=y.slice(1,y.length);let R=_.getBBox();const F=b.node().appendChild($2(P.join?P.join("
"):P,s.labelStyle,!0,!0));if(f1(qt().flowchart.htmlLabels)){const K=F.children[0],ee=Ir(F);A=K.getBoundingClientRect(),ee.attr("width",A.width),ee.attr("height",A.height)}const j=s.padding/2;return Ir(F).attr("transform","translate( "+(A.width>R.width?0:(R.width-A.width)/2)+", "+(R.height+j+5)+")"),Ir(_).attr("transform","translate( "+(A.width{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.height+s.padding,v=d.width+p/4+s.padding,b=u.insert("rect",":first-child").attr("style",s.style).attr("rx",p/2).attr("ry",p/2).attr("x",-v/2).attr("y",-p/2).attr("width",v).attr("height",p);return Kh(s,b),s.intersect=function(y){return yh.rect(s,y)},u},fen=async(i,s)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,s,dm(s,void 0),!0),v=u.insert("circle",":first-child");return v.attr("style",s.style).attr("rx",s.rx).attr("ry",s.ry).attr("r",d.width/2+p).attr("width",d.width+s.padding).attr("height",d.height+s.padding),Xe.info("Circle main"),Kh(s,v),s.intersect=function(b){return Xe.info("Circle intersect",s,d.width/2+p,b),yh.circle(s,d.width/2+p,b)},u},den=async(i,s)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,s,dm(s,void 0),!0),v=5,b=u.insert("g",":first-child"),y=b.insert("circle"),T=b.insert("circle");return b.attr("class",s.class),y.attr("style",s.style).attr("rx",s.rx).attr("ry",s.ry).attr("r",d.width/2+p+v).attr("width",d.width+s.padding+v*2).attr("height",d.height+s.padding+v*2),T.attr("style",s.style).attr("rx",s.rx).attr("ry",s.ry).attr("r",d.width/2+p).attr("width",d.width+s.padding).attr("height",d.height+s.padding),Xe.info("DoubleCircle main"),Kh(s,y),s.intersect=function(_){return Xe.info("DoubleCircle intersect",s,d.width/2+p+v,_),yh.circle(s,d.width/2+p+v,_)},u},gen=async(i,s)=>{const{shapeSvg:u,bbox:d}=await g1(i,s,dm(s,void 0),!0),p=d.width+s.padding,v=d.height+s.padding,b=[{x:0,y:0},{x:p,y:0},{x:p,y:-v},{x:0,y:-v},{x:0,y:0},{x:-8,y:0},{x:p+8,y:0},{x:p+8,y:-v},{x:-8,y:-v},{x:-8,y:0}],y=r5(u,p,v,b);return y.attr("style",s.style),Kh(s,y),s.intersect=function(T){return yh.polygon(s,b,T)},u},pen=(i,s)=>{const u=i.insert("g").attr("class","node default").attr("id",s.domId||s.id),d=u.insert("circle",":first-child");return d.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Kh(s,d),s.intersect=function(p){return yh.circle(s,7,p)},u},TUe=(i,s,u)=>{const d=i.insert("g").attr("class","node default").attr("id",s.domId||s.id);let p=70,v=10;u==="LR"&&(p=10,v=70);const b=d.append("rect").attr("x",-1*p/2).attr("y",-1*v/2).attr("width",p).attr("height",v).attr("class","fork-join");return Kh(s,b),s.height=s.height+s.padding/2,s.width=s.width+s.padding/2,s.intersect=function(y){return yh.rect(s,y)},d},CUe={rhombus:EUe,composite:cen,question:EUe,rect:oen,labelRect:uen,rectWithTitle:len,choice:QZt,circle:fen,doublecircle:den,stadium:hen,hexagon:JZt,block_arrow:ZZt,rect_left_inv_arrow:een,lean_right:ten,lean_left:nen,trapezoid:ren,inv_trapezoid:ien,rect_right_inv_arrow:sen,cylinder:aen,start:pen,end:(i,s)=>{const u=i.insert("g").attr("class","node default").attr("id",s.domId||s.id),d=u.insert("circle",":first-child"),p=u.insert("circle",":first-child");return p.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),d.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),Kh(s,p),s.intersect=function(v){return yh.circle(s,7,v)},u},note:WZt,subroutine:gen,fork:TUe,join:TUe,class_box:(i,s)=>{const u=s.padding/2,d=4,p=8;let v;s.classes?v="node "+s.classes:v="node default";const b=i.insert("g").attr("class",v).attr("id",s.domId||s.id),y=b.insert("rect",":first-child"),T=b.insert("line"),_=b.insert("line");let A=0,P=d;const R=b.insert("g").attr("class","label");let F=0;const j=s.classData.annotations&&s.classData.annotations[0],K=s.classData.annotations[0]?"«"+s.classData.annotations[0]+"»":"",ee=R.node().appendChild($2(K,s.labelStyle,!0,!0));let ie=ee.getBBox();if(f1(qt().flowchart.htmlLabels)){const de=ee.children[0],X=Ir(ee);ie=de.getBoundingClientRect(),X.attr("width",ie.width),X.attr("height",ie.height)}s.classData.annotations[0]&&(P+=ie.height+d,A+=ie.width);let oe=s.classData.label;s.classData.type!==void 0&&s.classData.type!==""&&(qt().flowchart.htmlLabels?oe+="<"+s.classData.type+">":oe+="<"+s.classData.type+">");const pe=R.node().appendChild($2(oe,s.labelStyle,!0,!0));Ir(pe).attr("class","classTitle");let be=pe.getBBox();if(f1(qt().flowchart.htmlLabels)){const de=pe.children[0],X=Ir(pe);be=de.getBoundingClientRect(),X.attr("width",be.width),X.attr("height",be.height)}P+=be.height+d,be.width>A&&(A=be.width);const ae=[];s.classData.members.forEach(de=>{const X=de.getDisplayDetails();let ge=X.displayText;qt().flowchart.htmlLabels&&(ge=ge.replace(//g,">"));const W=R.node().appendChild($2(ge,X.cssStyle?X.cssStyle:s.labelStyle,!0,!0));let xe=W.getBBox();if(f1(qt().flowchart.htmlLabels)){const U=W.children[0],Fe=Ir(W);xe=U.getBoundingClientRect(),Fe.attr("width",xe.width),Fe.attr("height",xe.height)}xe.width>A&&(A=xe.width),P+=xe.height+d,ae.push(W)}),P+=p;const ne=[];if(s.classData.methods.forEach(de=>{const X=de.getDisplayDetails();let ge=X.displayText;qt().flowchart.htmlLabels&&(ge=ge.replace(//g,">"));const W=R.node().appendChild($2(ge,X.cssStyle?X.cssStyle:s.labelStyle,!0,!0));let xe=W.getBBox();if(f1(qt().flowchart.htmlLabels)){const U=W.children[0],Fe=Ir(W);xe=U.getBoundingClientRect(),Fe.attr("width",xe.width),Fe.attr("height",xe.height)}xe.width>A&&(A=xe.width),P+=xe.height+d,ne.push(W)}),P+=p,j){let de=(A-ie.width)/2;Ir(ee).attr("transform","translate( "+(-1*A/2+de)+", "+-1*P/2+")"),F=ie.height+d}let se=(A-be.width)/2;return Ir(pe).attr("transform","translate( "+(-1*A/2+se)+", "+(-1*P/2+F)+")"),F+=be.height+d,T.attr("class","divider").attr("x1",-A/2-u).attr("x2",A/2+u).attr("y1",-P/2-u+p+F).attr("y2",-P/2-u+p+F),F+=p,ae.forEach(de=>{Ir(de).attr("transform","translate( "+-A/2+", "+(-1*P/2+F+p/2)+")");const X=de==null?void 0:de.getBBox();F+=((X==null?void 0:X.height)??0)+d}),F+=p,_.attr("class","divider").attr("x1",-A/2-u).attr("x2",A/2+u).attr("y1",-P/2-u+p+F).attr("y2",-P/2-u+p+F),F+=p,ne.forEach(de=>{Ir(de).attr("transform","translate( "+-A/2+", "+(-1*P/2+F)+")");const X=de==null?void 0:de.getBBox();F+=((X==null?void 0:X.height)??0)+d}),y.attr("style",s.style).attr("class","outer title-state").attr("x",-A/2-u).attr("y",-(P/2)-u).attr("width",A+s.padding).attr("height",P+s.padding),Kh(s,y),s.intersect=function(de){return yh.rect(s,de)},b}};let VD={};const tJ=async(i,s,u)=>{let d,p;if(s.link){let v;qt().securityLevel==="sandbox"?v="_top":s.linkTarget&&(v=s.linkTarget||"_blank"),d=i.insert("svg:a").attr("xlink:href",s.link).attr("target",v),p=await CUe[s.shape](d,s,u)}else p=await CUe[s.shape](i,s,u),d=p;return s.tooltip&&p.attr("title",s.tooltip),s.class&&p.attr("class","node default "+s.class),d.attr("data-node","true"),d.attr("data-id",s.id),VD[s.id]=d,s.haveCallback&&VD[s.id].attr("class",VD[s.id].attr("class")+" clickable"),d},ben=(i,s)=>{VD[s.id]=i},men=()=>{VD={}},$me=i=>{const s=VD[i.id];Xe.trace("Transforming node",i.diff,i,"translate("+(i.x-i.width/2-5)+", "+i.width/2+")");const u=8,d=i.diff||0;return i.clusterNode?s.attr("transform","translate("+(i.x+d-i.width/2)+", "+(i.y-i.height/2-u)+")"):s.attr("transform","translate("+i.x+", "+i.y+")"),d},nJ=({flowchart:i})=>{var p,v;const s=((p=i==null?void 0:i.subGraphTitleMargin)==null?void 0:p.top)??0,u=((v=i==null?void 0:i.subGraphTitleMargin)==null?void 0:v.bottom)??0,d=s+u;return{subGraphTitleTopMargin:s,subGraphTitleBottomMargin:u,subGraphTitleTotalMargin:d}},ven={rect:(i,s)=>{Xe.info("Creating subgraph rect for ",s.id,s);const u=qt(),d=i.insert("g").attr("class","cluster"+(s.class?" "+s.class:"")).attr("id",s.id),p=d.insert("rect",":first-child"),v=f1(u.flowchart.htmlLabels),b=d.insert("g").attr("class","cluster-label"),y=s.labelType==="markdown"?JQ(b,s.labelText,{style:s.labelStyle,useHtmlLabels:v}):b.node().appendChild($2(s.labelText,s.labelStyle,void 0,!0));let T=y.getBBox();if(f1(u.flowchart.htmlLabels)){const j=y.children[0],K=Ir(y);T=j.getBoundingClientRect(),K.attr("width",T.width),K.attr("height",T.height)}const _=0*s.padding,A=_/2,P=s.width<=T.width+_?T.width+_:s.width;s.width<=T.width+_?s.diff=(T.width-s.width)/2-s.padding/2:s.diff=-s.padding/2,Xe.trace("Data ",s,JSON.stringify(s)),p.attr("style",s.style).attr("rx",s.rx).attr("ry",s.ry).attr("x",s.x-P/2).attr("y",s.y-s.height/2-A).attr("width",P).attr("height",s.height+_);const{subGraphTitleTopMargin:R}=nJ(u);v?b.attr("transform",`translate(${s.x-T.width/2}, ${s.y-s.height/2+R})`):b.attr("transform",`translate(${s.x}, ${s.y-s.height/2+R})`);const F=p.node().getBBox();return s.width=F.width,s.height=F.height,s.intersect=function(j){return DR(s,j)},d},roundedWithTitle:(i,s)=>{const u=qt(),d=i.insert("g").attr("class",s.classes).attr("id",s.id),p=d.insert("rect",":first-child"),v=d.insert("g").attr("class","cluster-label"),b=d.append("rect"),y=v.node().appendChild($2(s.labelText,s.labelStyle,void 0,!0));let T=y.getBBox();if(f1(u.flowchart.htmlLabels)){const j=y.children[0],K=Ir(y);T=j.getBoundingClientRect(),K.attr("width",T.width),K.attr("height",T.height)}T=y.getBBox();const _=0*s.padding,A=_/2,P=s.width<=T.width+s.padding?T.width+s.padding:s.width;s.width<=T.width+s.padding?s.diff=(T.width+s.padding*0-s.width)/2:s.diff=-s.padding/2,p.attr("class","outer").attr("x",s.x-P/2-A).attr("y",s.y-s.height/2-A).attr("width",P+_).attr("height",s.height+_),b.attr("class","inner").attr("x",s.x-P/2-A).attr("y",s.y-s.height/2-A+T.height-1).attr("width",P+_).attr("height",s.height+_-T.height-3);const{subGraphTitleTopMargin:R}=nJ(u);v.attr("transform",`translate(${s.x-T.width/2}, ${s.y-s.height/2-s.padding/3+(f1(u.flowchart.htmlLabels)?5:3)+R})`);const F=p.node().getBBox();return s.height=F.height,s.intersect=function(j){return DR(s,j)},d},noteGroup:(i,s)=>{const u=i.insert("g").attr("class","note-cluster").attr("id",s.id),d=u.insert("rect",":first-child"),p=0*s.padding,v=p/2;d.attr("rx",s.rx).attr("ry",s.ry).attr("x",s.x-s.width/2-v).attr("y",s.y-s.height/2-v).attr("width",s.width+p).attr("height",s.height+p).attr("fill","none");const b=d.node().getBBox();return s.width=b.width,s.height=b.height,s.intersect=function(y){return DR(s,y)},u},divider:(i,s)=>{const u=i.insert("g").attr("class",s.classes).attr("id",s.id),d=u.insert("rect",":first-child"),p=0*s.padding,v=p/2;d.attr("class","divider").attr("x",s.x-s.width/2-v).attr("y",s.y-s.height/2).attr("width",s.width+p).attr("height",s.height+p);const b=d.node().getBBox();return s.width=b.width,s.height=b.height,s.diff=-s.padding/2,s.intersect=function(y){return DR(s,y)},u}};let SUe={};const wen=(i,s)=>{Xe.trace("Inserting cluster");const u=s.shape||"rect";SUe[s.id]=ven[u](i,s)},yen=()=>{SUe={}},P9={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function rJ(i,s){if(i===void 0||s===void 0)return{angle:0,deltaX:0,deltaY:0};i=iJ(i),s=iJ(s);const[u,d]=[i.x,i.y],[p,v]=[s.x,s.y],b=p-u,y=v-d;return{angle:Math.atan(y/b),deltaX:b,deltaY:y}}const iJ=i=>Array.isArray(i)?{x:i[0],y:i[1]}:i,_Ue=i=>({x:function(s,u,d){let p=0;if(u===0&&Object.hasOwn(P9,i.arrowTypeStart)){const{angle:v,deltaX:b}=rJ(d[0],d[1]);p=P9[i.arrowTypeStart]*Math.cos(v)*(b>=0?1:-1)}else if(u===d.length-1&&Object.hasOwn(P9,i.arrowTypeEnd)){const{angle:v,deltaX:b}=rJ(d[d.length-1],d[d.length-2]);p=P9[i.arrowTypeEnd]*Math.cos(v)*(b>=0?1:-1)}return iJ(s).x+p},y:function(s,u,d){let p=0;if(u===0&&Object.hasOwn(P9,i.arrowTypeStart)){const{angle:v,deltaY:b}=rJ(d[0],d[1]);p=P9[i.arrowTypeStart]*Math.abs(Math.sin(v))*(b>=0?1:-1)}else if(u===d.length-1&&Object.hasOwn(P9,i.arrowTypeEnd)){const{angle:v,deltaY:b}=rJ(d[d.length-1],d[d.length-2]);p=P9[i.arrowTypeEnd]*Math.abs(Math.sin(v))*(b>=0?1:-1)}return iJ(s).y+p}}),AUe=(i,s,u,d,p)=>{s.arrowTypeStart&&LUe(i,"start",s.arrowTypeStart,u,d,p),s.arrowTypeEnd&&LUe(i,"end",s.arrowTypeEnd,u,d,p)},xen={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},LUe=(i,s,u,d,p,v)=>{const b=xen[u];if(!b){Xe.warn(`Unknown arrow type: ${u}`);return}const y=s==="start"?"Start":"End";i.attr(`marker-${s}`,`url(${d}#${p}_${v}-${b}${y})`)};let sJ={},Vd={};const ken=()=>{sJ={},Vd={}},zme=(i,s)=>{const u=f1(qt().flowchart.htmlLabels),d=s.labelType==="markdown"?JQ(i,s.label,{style:s.labelStyle,useHtmlLabels:u,addSvgBackground:!0}):$2(s.label,s.labelStyle),p=i.insert("g").attr("class","edgeLabel"),v=p.insert("g").attr("class","label");v.node().appendChild(d);let b=d.getBBox();if(u){const T=d.children[0],_=Ir(d);b=T.getBoundingClientRect(),_.attr("width",b.width),_.attr("height",b.height)}v.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),sJ[s.id]=p,s.width=b.width,s.height=b.height;let y;if(s.startLabelLeft){const T=$2(s.startLabelLeft,s.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=A.node().appendChild(T);const P=T.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),Vd[s.id]||(Vd[s.id]={}),Vd[s.id].startLeft=_,aJ(y,s.startLabelLeft)}if(s.startLabelRight){const T=$2(s.startLabelRight,s.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=_.node().appendChild(T),A.node().appendChild(T);const P=T.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),Vd[s.id]||(Vd[s.id]={}),Vd[s.id].startRight=_,aJ(y,s.startLabelRight)}if(s.endLabelLeft){const T=$2(s.endLabelLeft,s.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=A.node().appendChild(T);const P=T.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),_.node().appendChild(T),Vd[s.id]||(Vd[s.id]={}),Vd[s.id].endLeft=_,aJ(y,s.endLabelLeft)}if(s.endLabelRight){const T=$2(s.endLabelRight,s.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=A.node().appendChild(T);const P=T.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),_.node().appendChild(T),Vd[s.id]||(Vd[s.id]={}),Vd[s.id].endRight=_,aJ(y,s.endLabelRight)}return d};function aJ(i,s){qt().flowchart.htmlLabels&&i&&(i.style.width=s.length*9+"px",i.style.height="12px")}const MUe=(i,s)=>{Xe.debug("Moving label abc88 ",i.id,i.label,sJ[i.id],s);let u=s.updatedPath?s.updatedPath:s.originalPath;const d=qt(),{subGraphTitleTotalMargin:p}=nJ(d);if(i.label){const v=sJ[i.id];let b=i.x,y=i.y;if(u){const T=Ao.calcLabelPosition(u);Xe.debug("Moving label "+i.label+" from (",b,",",y,") to (",T.x,",",T.y,") abc88"),s.updatedPath&&(b=T.x,y=T.y)}v.attr("transform",`translate(${b}, ${y+p/2})`)}if(i.startLabelLeft){const v=Vd[i.id].startLeft;let b=i.x,y=i.y;if(u){const T=Ao.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_left",u);b=T.x,y=T.y}v.attr("transform",`translate(${b}, ${y})`)}if(i.startLabelRight){const v=Vd[i.id].startRight;let b=i.x,y=i.y;if(u){const T=Ao.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_right",u);b=T.x,y=T.y}v.attr("transform",`translate(${b}, ${y})`)}if(i.endLabelLeft){const v=Vd[i.id].endLeft;let b=i.x,y=i.y;if(u){const T=Ao.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_left",u);b=T.x,y=T.y}v.attr("transform",`translate(${b}, ${y})`)}if(i.endLabelRight){const v=Vd[i.id].endRight;let b=i.x,y=i.y;if(u){const T=Ao.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_right",u);b=T.x,y=T.y}v.attr("transform",`translate(${b}, ${y})`)}},Een=(i,s)=>{const u=i.x,d=i.y,p=Math.abs(s.x-u),v=Math.abs(s.y-d),b=i.width/2,y=i.height/2;return p>=b||v>=y},Ten=(i,s,u)=>{Xe.debug(`intersection calc abc89:
+ outsidePoint: ${JSON.stringify(s)}
+ insidePoint : ${JSON.stringify(u)}
+ node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const d=i.x,p=i.y,v=Math.abs(d-u.x),b=i.width/2;let y=u.xMath.abs(d-s.x)*T){let P=u.y{Xe.debug("abc88 cutPathAtIntersect",i,s);let u=[],d=i[0],p=!1;return i.forEach(v=>{if(!Een(s,v)&&!p){const b=Ten(s,d,v);let y=!1;u.forEach(T=>{y=y||T.x===b.x&&T.y===b.y}),u.some(T=>T.x===b.x&&T.y===b.y)||u.push(b),p=!0}else d=v,p||u.push(v)}),u},IUe=function(i,s,u,d,p,v,b){let y=u.points;Xe.debug("abc88 InsertEdge: edge=",u,"e=",s);let T=!1;const _=v.node(s.v);var A=v.node(s.w);A!=null&&A.intersect&&(_!=null&&_.intersect)&&(y=y.slice(1,u.points.length-1),y.unshift(_.intersect(y[0])),y.push(A.intersect(y[y.length-1]))),u.toCluster&&(Xe.debug("to cluster abc88",d[u.toCluster]),y=DUe(u.points,d[u.toCluster].node),T=!0),u.fromCluster&&(Xe.debug("from cluster abc88",d[u.fromCluster]),y=DUe(y.reverse(),d[u.fromCluster].node).reverse(),T=!0);const P=y.filter(be=>!Number.isNaN(be.y));let R=FF;u.curve&&(p==="graph"||p==="flowchart")&&(R=u.curve);const{x:F,y:j}=_Ue(u),K=k7().x(F).y(j).curve(R);let ee;switch(u.thickness){case"normal":ee="edge-thickness-normal";break;case"thick":ee="edge-thickness-thick";break;case"invisible":ee="edge-thickness-thick";break;default:ee=""}switch(u.pattern){case"solid":ee+=" edge-pattern-solid";break;case"dotted":ee+=" edge-pattern-dotted";break;case"dashed":ee+=" edge-pattern-dashed";break}const ie=i.append("path").attr("d",K(P)).attr("id",u.id).attr("class"," "+ee+(u.classes?" "+u.classes:"")).attr("style",u.style);let oe="";(qt().flowchart.arrowMarkerAbsolute||qt().state.arrowMarkerAbsolute)&&(oe=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,oe=oe.replace(/\(/g,"\\("),oe=oe.replace(/\)/g,"\\)")),AUe(ie,u,oe,b,p);let pe={};return T&&(pe.updatedPath=y),pe.originalPath=u.points,pe},OUe=async(i,s,u,d,p,v)=>{Xe.info("Graph in recursive render: XXX",q7(s),p);const b=s.graph().rankdir;Xe.trace("Dir in recursive render - dir:",b);const y=i.insert("g").attr("class","root");s.nodes()?Xe.info("Recursive render XXX",s.nodes()):Xe.info("No nodes found for",s),s.edges().length>0&&Xe.trace("Recursive edges",s.edge(s.edges()[0]));const T=y.insert("g").attr("class","clusters"),_=y.insert("g").attr("class","edgePaths"),A=y.insert("g").attr("class","edgeLabels"),P=y.insert("g").attr("class","nodes");await Promise.all(s.nodes().map(async function(j){const K=s.node(j);if(p!==void 0){const ee=JSON.parse(JSON.stringify(p.clusterData));Xe.info("Setting data for cluster XXX (",j,") ",ee,p),s.setNode(p.id,ee),s.parent(j)||(Xe.trace("Setting parent",j,p.id),s.setParent(j,p.id,ee))}if(Xe.info("(Insert) Node XXX"+j+": "+JSON.stringify(s.node(j))),K&&K.clusterNode){Xe.info("Cluster identified",j,K.width,s.node(j));const ee=await OUe(P,K.graph,u,d,s.node(j),v),ie=ee.elem;Kh(K,ie),K.diff=ee.diff||0,Xe.info("Node bounds (abc123)",j,K,K.width,K.x,K.y),ben(ie,K),Xe.warn("Recursive render complete ",ie,K)}else s.children(j).length>0?(Xe.info("Cluster - the non recursive path XXX",j,K.id,K,s),Xe.info(MR(K.id,s)),Mo[K.id]={id:MR(K.id,s),node:K}):(Xe.info("Node - the non recursive path",j,K.id,K),await tJ(P,s.node(j),b))})),s.edges().forEach(function(j){const K=s.edge(j.v,j.w,j.name);Xe.info("Edge "+j.v+" -> "+j.w+": "+JSON.stringify(j)),Xe.info("Edge "+j.v+" -> "+j.w+": ",j," ",JSON.stringify(s.edge(j))),Xe.info("Fix",Mo,"ids:",j.v,j.w,"Translating: ",Mo[j.v],Mo[j.w]),zme(A,K)}),s.edges().forEach(function(j){Xe.info("Edge "+j.v+" -> "+j.w+": "+JSON.stringify(j))}),Xe.info("#############################################"),Xe.info("### Layout ###"),Xe.info("#############################################"),Xe.info(s),qD(s),Xe.info("Graph after layout:",q7(s));let R=0;const{subGraphTitleTotalMargin:F}=nJ(v);return HZt(s).forEach(function(j){const K=s.node(j);Xe.info("Position "+j+": "+JSON.stringify(s.node(j))),Xe.info("Position "+j+": ("+K.x,","+K.y,") width: ",K.width," height: ",K.height),K&&K.clusterNode?(K.y+=F,$me(K)):s.children(j).length>0?(K.height+=F,wen(T,K),Mo[K.id].node=K):(K.y+=F/2,$me(K))}),s.edges().forEach(function(j){const K=s.edge(j);Xe.info("Edge "+j.v+" -> "+j.w+": "+JSON.stringify(K),K),K.points.forEach(ie=>ie.y+=F/2);const ee=IUe(_,j,K,Mo,u,s,d);MUe(K,ee)}),s.nodes().forEach(function(j){const K=s.node(j);Xe.info(j,K.type,K.diff),K.type==="group"&&(R=K.diff)}),{elem:y,diff:R}},qme=async(i,s,u,d,p)=>{Sme(i,u,d,p),men(),ken(),yen(),$Zt(),Xe.warn("Graph at first:",JSON.stringify(q7(s))),qZt(s),Xe.warn("Graph after:",JSON.stringify(q7(s)));const v=qt();await OUe(i,s,d,p,void 0,v)},NUe={},Cen=function(i){const s=Object.keys(i);for(const u of s)NUe[u]=i[u]},PUe=async function(i,s,u,d,p,v){const b=d.select(`[id="${u}"]`),y=Object.keys(i);for(const T of y){const _=i[T];let A="default";_.classes.length>0&&(A=_.classes.join(" ")),A=A+" flowchart-label";const P=om(_.styles);let R=_.text!==void 0?_.text:_.id,F;if(Xe.info("vertex",_,_.labelType),_.labelType==="markdown")Xe.info("vertex",_,_.labelType);else if(f1(qt().flowchart.htmlLabels))F=vme(b,{label:R}).node(),F.parentNode.removeChild(F);else{const ie=p.createElementNS("http://www.w3.org/2000/svg","text");ie.setAttribute("style",P.labelStyle.replace("color:","fill:"));const oe=R.split(ci.lineBreakRegex);for(const pe of oe){const be=p.createElementNS("http://www.w3.org/2000/svg","tspan");be.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),be.setAttribute("dy","1em"),be.setAttribute("x","1"),be.textContent=pe,ie.appendChild(be)}F=ie}let j=0,K="";switch(_.type){case"round":j=5,K="rect";break;case"square":K="rect";break;case"diamond":K="question";break;case"hexagon":K="hexagon";break;case"odd":K="rect_left_inv_arrow";break;case"lean_right":K="lean_right";break;case"lean_left":K="lean_left";break;case"trapezoid":K="trapezoid";break;case"inv_trapezoid":K="inv_trapezoid";break;case"odd_right":K="rect_left_inv_arrow";break;case"circle":K="circle";break;case"ellipse":K="ellipse";break;case"stadium":K="stadium";break;case"subroutine":K="subroutine";break;case"cylinder":K="cylinder";break;case"group":K="rect";break;case"doublecircle":K="doublecircle";break;default:K="rect"}const ee=await CC(R,qt());s.setNode(_.id,{labelStyle:P.labelStyle,shape:K,labelText:ee,labelType:_.labelType,rx:j,ry:j,class:A,style:P.style,id:_.id,link:_.link,linkTarget:_.linkTarget,tooltip:v.db.getTooltip(_.id)||"",domId:v.db.lookUpDomId(_.id),haveCallback:_.haveCallback,width:_.type==="group"?500:void 0,dir:_.dir,type:_.type,props:_.props,padding:qt().flowchart.padding}),Xe.info("setNode",{labelStyle:P.labelStyle,labelType:_.labelType,shape:K,labelText:ee,rx:j,ry:j,class:A,style:P.style,id:_.id,domId:v.db.lookUpDomId(_.id),width:_.type==="group"?500:void 0,type:_.type,dir:_.dir,props:_.props,padding:qt().flowchart.padding})}},BUe=async function(i,s,u){Xe.info("abc78 edges = ",i);let d=0,p={},v,b;if(i.defaultStyle!==void 0){const y=om(i.defaultStyle);v=y.style,b=y.labelStyle}for(const y of i){d++;const T="L-"+y.start+"-"+y.end;p[T]===void 0?(p[T]=0,Xe.info("abc78 new entry",T,p[T])):(p[T]++,Xe.info("abc78 new entry",T,p[T]));let _=T+"-"+p[T];Xe.info("abc78 new link id to be used is",T,_,p[T]);const A="LS-"+y.start,P="LE-"+y.end,R={style:"",labelStyle:""};switch(R.minlen=y.length||1,y.type==="arrow_open"?R.arrowhead="none":R.arrowhead="normal",R.arrowTypeStart="arrow_open",R.arrowTypeEnd="arrow_open",y.type){case"double_arrow_cross":R.arrowTypeStart="arrow_cross";case"arrow_cross":R.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":R.arrowTypeStart="arrow_point";case"arrow_point":R.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":R.arrowTypeStart="arrow_circle";case"arrow_circle":R.arrowTypeEnd="arrow_circle";break}let F="",j="";switch(y.stroke){case"normal":F="fill:none;",v!==void 0&&(F=v),b!==void 0&&(j=b),R.thickness="normal",R.pattern="solid";break;case"dotted":R.thickness="normal",R.pattern="dotted",R.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":R.thickness="thick",R.pattern="solid",R.style="stroke-width: 3.5px;fill:none;";break;case"invisible":R.thickness="invisible",R.pattern="solid",R.style="stroke-width: 0;fill:none;";break}if(y.style!==void 0){const K=om(y.style);F=K.style,j=K.labelStyle}R.style=R.style+=F,R.labelStyle=R.labelStyle+=j,y.interpolate!==void 0?R.curve=Ov(y.interpolate,kp):i.defaultInterpolate!==void 0?R.curve=Ov(i.defaultInterpolate,kp):R.curve=Ov(NUe.curve,kp),y.text===void 0?y.style!==void 0&&(R.arrowheadStyle="fill: #333"):(R.arrowheadStyle="fill: #333",R.labelpos="c"),R.labelType=y.labelType,R.label=await CC(y.text.replace(ci.lineBreakRegex,`
+`),qt()),y.style===void 0&&(R.style=R.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),R.labelStyle=R.labelStyle.replace("color:","fill:"),R.id=_,R.classes="flowchart-link "+A+" "+P,s.setEdge(y.start,y.end,R,d)}},Hme={setConf:Cen,addVertices:PUe,addEdges:BUe,getClasses:function(i,s){return s.db.getClasses()},draw:async function(i,s,u,d){Xe.info("Drawing flowchart");let p=d.db.getDirection();p===void 0&&(p="TD");const{securityLevel:v,flowchart:b}=qt(),y=b.nodeSpacing||50,T=b.rankSpacing||50;let _;v==="sandbox"&&(_=Ir("#i"+s));const A=Ir(v==="sandbox"?_.nodes()[0].contentDocument.body:"body"),P=v==="sandbox"?_.nodes()[0].contentDocument:document,R=new B0({multigraph:!0,compound:!0}).setGraph({rankdir:p,nodesep:y,ranksep:T,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let F;const j=d.db.getSubGraphs();Xe.info("Subgraphs - ",j);for(let ae=j.length-1;ae>=0;ae--)F=j[ae],Xe.info("Subgraph - ",F),d.db.addVertex(F.id,{text:F.title,type:F.labelType},"group",void 0,F.classes,F.dir);const K=d.db.getVertices(),ee=d.db.getEdges();Xe.info("Edges",ee);let ie=0;for(ie=j.length-1;ie>=0;ie--){F=j[ie],_Be("cluster").append("text");for(let ae=0;ae{const u=ARe,d=u(i,"r"),p=u(i,"g"),v=u(i,"b");return SC(d,p,v,s)},FUe=i=>`.label {
+ font-family: ${i.fontFamily};
+ color: ${i.nodeTextColor||i.textColor};
+ }
+ .cluster-label text {
+ fill: ${i.titleColor};
+ }
+ .cluster-label span,p {
+ color: ${i.titleColor};
+ }
+
+ .label text,span,p {
+ fill: ${i.nodeTextColor||i.textColor};
+ color: ${i.nodeTextColor||i.textColor};
+ }
+
+ .node rect,
+ .node circle,
+ .node ellipse,
+ .node polygon,
+ .node path {
+ fill: ${i.mainBkg};
+ stroke: ${i.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: ${i.arrowheadColor};
+ }
+
+ .edgePath .path {
+ stroke: ${i.lineColor};
+ stroke-width: 2.0px;
+ }
+
+ .flowchart-link {
+ stroke: ${i.lineColor};
+ fill: none;
+ }
+
+ .edgeLabel {
+ background-color: ${i.edgeLabelBackground};
+ rect {
+ opacity: 0.5;
+ background-color: ${i.edgeLabelBackground};
+ fill: ${i.edgeLabelBackground};
+ }
+ text-align: center;
+ }
+
+ /* For html labels only */
+ .labelBkg {
+ background-color: ${Sen(i.edgeLabelBackground,.5)};
+ // background-color:
+ }
+
+ .cluster rect {
+ fill: ${i.clusterBkg};
+ stroke: ${i.clusterBorder};
+ stroke-width: 1px;
+ }
+
+ .cluster text {
+ fill: ${i.titleColor};
+ }
+
+ .cluster span,p {
+ color: ${i.titleColor};
+ }
+ /* .cluster div {
+ color: ${i.titleColor};
+ } */
+
+ div.mermaidTooltip {
+ position: absolute;
+ text-align: center;
+ max-width: 200px;
+ padding: 2px;
+ font-family: ${i.fontFamily};
+ font-size: 12px;
+ background: ${i.tertiaryColor};
+ border: 1px solid ${i.border2};
+ border-radius: 2px;
+ pointer-events: none;
+ z-index: 100;
+ }
+
+ .flowchartTitleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: ${i.textColor};
+ }
+`,_en=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Gbe,db:HC,renderer:Hme,styles:FUe,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,_Qt.setConf(i.flowchart),HC.clear(),HC.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),Aen=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Gbe,db:HC,renderer:Hme,styles:FUe,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,_jt({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),Hme.setConf(i.flowchart),HC.clear(),HC.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var Vme=function(){var i=function(de,X,ge,W){for(ge=ge||{},W=de.length;W--;ge[de[W]]=X);return ge},s=[6,8,10,20,22,24,26,27,28],u=[1,10],d=[1,11],p=[1,12],v=[1,13],b=[1,14],y=[1,15],T=[1,21],_=[1,22],A=[1,23],P=[1,24],R=[1,25],F=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],j=[1,34],K=[27,28,46,47],ee=[41,42,43,44,45],ie=[17,34],oe=[1,54],pe=[1,53],be=[17,34,36,38],ae={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(X,ge,W,xe,U,Fe,Pe){var je=Fe.length-1;switch(U){case 1:break;case 2:this.$=[];break;case 3:Fe[je-1].push(Fe[je]),this.$=Fe[je-1];break;case 4:case 5:this.$=Fe[je];break;case 6:case 7:this.$=[];break;case 8:xe.addEntity(Fe[je-4]),xe.addEntity(Fe[je-2]),xe.addRelationship(Fe[je-4],Fe[je],Fe[je-2],Fe[je-3]);break;case 9:xe.addEntity(Fe[je-3]),xe.addAttributes(Fe[je-3],Fe[je-1]);break;case 10:xe.addEntity(Fe[je-2]);break;case 11:xe.addEntity(Fe[je]);break;case 12:xe.addEntity(Fe[je-6],Fe[je-4]),xe.addAttributes(Fe[je-6],Fe[je-1]);break;case 13:xe.addEntity(Fe[je-5],Fe[je-3]);break;case 14:xe.addEntity(Fe[je-3],Fe[je-1]);break;case 15:case 16:this.$=Fe[je].trim(),xe.setAccTitle(this.$);break;case 17:case 18:this.$=Fe[je].trim(),xe.setAccDescription(this.$);break;case 19:case 43:this.$=Fe[je];break;case 20:case 41:case 42:this.$=Fe[je].replace(/"/g,"");break;case 21:case 29:this.$=[Fe[je]];break;case 22:Fe[je].push(Fe[je-1]),this.$=Fe[je];break;case 23:this.$={attributeType:Fe[je-1],attributeName:Fe[je]};break;case 24:this.$={attributeType:Fe[je-2],attributeName:Fe[je-1],attributeKeyTypeList:Fe[je]};break;case 25:this.$={attributeType:Fe[je-2],attributeName:Fe[je-1],attributeComment:Fe[je]};break;case 26:this.$={attributeType:Fe[je-3],attributeName:Fe[je-2],attributeKeyTypeList:Fe[je-1],attributeComment:Fe[je]};break;case 27:case 28:case 31:this.$=Fe[je];break;case 30:Fe[je-2].push(Fe[je]),this.$=Fe[je-2];break;case 32:this.$=Fe[je].replace(/"/g,"");break;case 33:this.$={cardA:Fe[je],relType:Fe[je-1],cardB:Fe[je-2]};break;case 34:this.$=xe.Cardinality.ZERO_OR_ONE;break;case 35:this.$=xe.Cardinality.ZERO_OR_MORE;break;case 36:this.$=xe.Cardinality.ONE_OR_MORE;break;case 37:this.$=xe.Cardinality.ONLY_ONE;break;case 38:this.$=xe.Cardinality.MD_PARENT;break;case 39:this.$=xe.Identification.NON_IDENTIFYING;break;case 40:this.$=xe.Identification.IDENTIFYING;break}},table:[{3:1,4:[1,2]},{1:[3]},i(s,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,20:u,22:d,24:p,26:v,27:b,28:y},i(s,[2,7],{1:[2,1]}),i(s,[2,3]),{9:16,11:9,20:u,22:d,24:p,26:v,27:b,28:y},i(s,[2,5]),i(s,[2,6]),i(s,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:T,42:_,43:A,44:P,45:R}),{21:[1,26]},{23:[1,27]},{25:[1,28]},i(s,[2,18]),i(F,[2,19]),i(F,[2,20]),i(s,[2,4]),{11:29,27:b,28:y},{16:30,17:[1,31],29:32,30:33,34:j},{11:35,27:b,28:y},{40:36,46:[1,37],47:[1,38]},i(K,[2,34]),i(K,[2,35]),i(K,[2,36]),i(K,[2,37]),i(K,[2,38]),i(s,[2,15]),i(s,[2,16]),i(s,[2,17]),{13:[1,39]},{17:[1,40]},i(s,[2,10]),{16:41,17:[2,21],29:32,30:33,34:j},{31:42,34:[1,43]},{34:[2,27]},{19:[1,44]},{39:45,41:T,42:_,43:A,44:P,45:R},i(ee,[2,39]),i(ee,[2,40]),{14:46,27:[1,49],28:[1,48],48:[1,47]},i(s,[2,9]),{17:[2,22]},i(ie,[2,23],{32:50,33:51,35:52,37:oe,38:pe}),i([17,34,37,38],[2,28]),i(s,[2,14],{15:[1,55]}),i([27,28],[2,33]),i(s,[2,8]),i(s,[2,41]),i(s,[2,42]),i(s,[2,43]),i(ie,[2,24],{33:56,36:[1,57],38:pe}),i(ie,[2,25]),i(be,[2,29]),i(ie,[2,32]),i(be,[2,31]),{16:58,17:[1,59],29:32,30:33,34:j},i(ie,[2,26]),{35:60,37:oe},{17:[1,61]},i(s,[2,13]),i(be,[2,30]),i(s,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(X,ge){if(ge.recoverable)this.trace(X);else{var W=new Error(X);throw W.hash=ge,W}},parse:function(X){var ge=this,W=[0],xe=[],U=[null],Fe=[],Pe=this.table,je="",Ie=0,Se=0,Ce=2,ke=1,Ke=Fe.slice.call(arguments,1),Ft=Object.create(this.lexer),Ne={yy:{}};for(var gn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,gn)&&(Ne.yy[gn]=this.yy[gn]);Ft.setInput(X,Ne.yy),Ne.yy.lexer=Ft,Ne.yy.parser=this,typeof Ft.yylloc>"u"&&(Ft.yylloc={});var _t=Ft.yylloc;Fe.push(_t);var Et=Ft.options&&Ft.options.ranges;typeof Ne.yy.parseError=="function"?this.parseError=Ne.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Gt(){var ji;return ji=xe.pop()||Ft.lex()||ke,typeof ji!="number"&&(ji instanceof Array&&(xe=ji,ji=xe.pop()),ji=ge.symbols_[ji]||ji),ji}for(var ln,xt,Pt,Qe,Dt={},kt,On,ht,zr;;){if(xt=W[W.length-1],this.defaultActions[xt]?Pt=this.defaultActions[xt]:((ln===null||typeof ln>"u")&&(ln=Gt()),Pt=Pe[xt]&&Pe[xt][ln]),typeof Pt>"u"||!Pt.length||!Pt[0]){var yt="";zr=[];for(kt in Pe[xt])this.terminals_[kt]&&kt>Ce&&zr.push("'"+this.terminals_[kt]+"'");Ft.showPosition?yt="Parse error on line "+(Ie+1)+`:
+`+Ft.showPosition()+`
+Expecting `+zr.join(", ")+", got '"+(this.terminals_[ln]||ln)+"'":yt="Parse error on line "+(Ie+1)+": Unexpected "+(ln==ke?"end of input":"'"+(this.terminals_[ln]||ln)+"'"),this.parseError(yt,{text:Ft.match,token:this.terminals_[ln]||ln,line:Ft.yylineno,loc:_t,expected:zr})}if(Pt[0]instanceof Array&&Pt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xt+", token: "+ln);switch(Pt[0]){case 1:W.push(ln),U.push(Ft.yytext),Fe.push(Ft.yylloc),W.push(Pt[1]),ln=null,Se=Ft.yyleng,je=Ft.yytext,Ie=Ft.yylineno,_t=Ft.yylloc;break;case 2:if(On=this.productions_[Pt[1]][1],Dt.$=U[U.length-On],Dt._$={first_line:Fe[Fe.length-(On||1)].first_line,last_line:Fe[Fe.length-1].last_line,first_column:Fe[Fe.length-(On||1)].first_column,last_column:Fe[Fe.length-1].last_column},Et&&(Dt._$.range=[Fe[Fe.length-(On||1)].range[0],Fe[Fe.length-1].range[1]]),Qe=this.performAction.apply(Dt,[je,Se,Ie,Ne.yy,Pt[1],U,Fe].concat(Ke)),typeof Qe<"u")return Qe;On&&(W=W.slice(0,-1*On*2),U=U.slice(0,-1*On),Fe=Fe.slice(0,-1*On)),W.push(this.productions_[Pt[1]][0]),U.push(Dt.$),Fe.push(Dt._$),ht=Pe[W[W.length-2]][W[W.length-1]],W.push(ht);break;case 3:return!0}}return!0}},ne=function(){var de={EOF:1,parseError:function(ge,W){if(this.yy.parser)this.yy.parser.parseError(ge,W);else throw new Error(ge)},setInput:function(X,ge){return this.yy=ge||this.yy||{},this._input=X,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 X=this._input[0];this.yytext+=X,this.yyleng++,this.offset++,this.match+=X,this.matched+=X;var ge=X.match(/(?:\r\n?|\n).*/g);return ge?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),X},unput:function(X){var ge=X.length,W=X.split(/(?:\r\n?|\n)/g);this._input=X+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ge),this.offset-=ge;var xe=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),W.length-1&&(this.yylineno-=W.length-1);var U=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:W?(W.length===xe.length?this.yylloc.first_column:0)+xe[xe.length-W.length].length-W[0].length:this.yylloc.first_column-ge},this.options.ranges&&(this.yylloc.range=[U[0],U[0]+this.yyleng-ge]),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(X){this.unput(this.match.slice(X))},pastInput:function(){var X=this.matched.substr(0,this.matched.length-this.match.length);return(X.length>20?"...":"")+X.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var X=this.match;return X.length<20&&(X+=this._input.substr(0,20-X.length)),(X.substr(0,20)+(X.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var X=this.pastInput(),ge=new Array(X.length+1).join("-");return X+this.upcomingInput()+`
+`+ge+"^"},test_match:function(X,ge){var W,xe,U;if(this.options.backtrack_lexer&&(U={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&&(U.yylloc.range=this.yylloc.range.slice(0))),xe=X[0].match(/(?:\r\n?|\n).*/g),xe&&(this.yylineno+=xe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xe?xe[xe.length-1].length-xe[xe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+X[0].length},this.yytext+=X[0],this.match+=X[0],this.matches=X,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(X[0].length),this.matched+=X[0],W=this.performAction.call(this,this.yy,this,ge,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),W)return W;if(this._backtrack){for(var Fe in U)this[Fe]=U[Fe];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var X,ge,W,xe;this._more||(this.yytext="",this.match="");for(var U=this._currentRules(),Fe=0;Fege[0].length)){if(ge=W,xe=Fe,this.options.backtrack_lexer){if(X=this.test_match(W,U[Fe]),X!==!1)return X;if(this._backtrack){ge=!1;continue}else return!1}else if(!this.options.flex)break}return ge?(X=this.test_match(ge,U[xe]),X!==!1?X:!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 ge=this.next();return ge||this.lex()},begin:function(ge){this.conditionStack.push(ge)},popState:function(){var ge=this.conditionStack.length-1;return ge>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(ge){return ge=this.conditionStack.length-1-Math.abs(ge||0),ge>=0?this.conditionStack[ge]:"INITIAL"},pushState:function(ge){this.begin(ge)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ge,W,xe,U){switch(xe){case 0:return this.begin("acc_title"),22;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),24;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:return 10;case 8:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;case 14:return 36;case 15:break;case 16:return 37;case 17:return 34;case 18:return 34;case 19:return 38;case 20:break;case 21:return this.popState(),17;case 22:return W.yytext[0];case 23:return 18;case 24:return 19;case 25:return 41;case 26:return 43;case 27:return 43;case 28:return 43;case 29:return 41;case 30:return 41;case 31:return 42;case 32:return 42;case 33:return 42;case 34:return 42;case 35:return 42;case 36:return 43;case 37:return 42;case 38:return 43;case 39:return 44;case 40:return 44;case 41:return 44;case 42:return 44;case 43:return 41;case 44:return 42;case 45:return 43;case 46:return 45;case 47:return 46;case 48:return 47;case 49:return 47;case 50:return 46;case 51:return 46;case 52:return 46;case 53:return 27;case 54:return W.yytext[0];case 55:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return de}();ae.lexer=ne;function se(){this.yy={}}return se.prototype=ae,ae.Parser=se,new se}();Vme.parser=Vme;const Len=Vme;let B9={},Ume=[];const Men={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},Den={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},RUe=function(i,s=void 0){return B9[i]===void 0?(B9[i]={attributes:[],alias:s},Xe.info("Added new entity :",i)):B9[i]&&!B9[i].alias&&s&&(B9[i].alias=s,Xe.info(`Add alias '${s}' to entity '${i}'`)),B9[i]},Ien={Cardinality:Men,Identification:Den,getConfig:()=>qt().er,addEntity:RUe,addAttributes:function(i,s){let u=RUe(i),d;for(d=s.length-1;d>=0;d--)u.attributes.push(s[d]),Xe.debug("Added attribute ",s[d].attributeName)},getEntities:()=>B9,addRelationship:function(i,s,u,d){let p={entityA:i,roleA:s,entityB:u,relSpec:d};Ume.push(p),Xe.debug("Added new relationship :",p)},getRelationships:()=>Ume,clear:function(){B9={},Ume=[],Pg()},setAccTitle:Bg,getAccTitle:Cp,setAccDescription:Sp,getAccDescription:_p,setDiagramTitle:cm,getDiagramTitle:Ap},U3={ONLY_ONE_START:"ONLY_ONE_START",ONLY_ONE_END:"ONLY_ONE_END",ZERO_OR_ONE_START:"ZERO_OR_ONE_START",ZERO_OR_ONE_END:"ZERO_OR_ONE_END",ONE_OR_MORE_START:"ONE_OR_MORE_START",ONE_OR_MORE_END:"ONE_OR_MORE_END",ZERO_OR_MORE_START:"ZERO_OR_MORE_START",ZERO_OR_MORE_END:"ZERO_OR_MORE_END",MD_PARENT_END:"MD_PARENT_END",MD_PARENT_START:"MD_PARENT_START"},G3={ERMarkers:U3,insertMarkers:function(i,s){let u;i.append("defs").append("marker").attr("id",U3.MD_PARENT_START).attr("refX",0).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"),i.append("defs").append("marker").attr("id",U3.MD_PARENT_END).attr("refX",19).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"),i.append("defs").append("marker").attr("id",U3.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),i.append("defs").append("marker").attr("id",U3.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),u=i.append("defs").append("marker").attr("id",U3.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),u.append("circle").attr("stroke",s.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),u.append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M9,0 L9,18"),u=i.append("defs").append("marker").attr("id",U3.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),u.append("circle").attr("stroke",s.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),u.append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M21,0 L21,18"),i.append("defs").append("marker").attr("id",U3.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),i.append("defs").append("marker").attr("id",U3.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),u=i.append("defs").append("marker").attr("id",U3.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),u.append("circle").attr("stroke",s.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),u.append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),u=i.append("defs").append("marker").attr("id",U3.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),u.append("circle").attr("stroke",s.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),u.append("path").attr("stroke",s.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}},Oen=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Nen(i){return typeof i=="string"&&Oen.test(i)}const Ud=[];for(let i=0;i<256;++i)Ud.push((i+256).toString(16).slice(1));function Pen(i,s=0){return Ud[i[s+0]]+Ud[i[s+1]]+Ud[i[s+2]]+Ud[i[s+3]]+"-"+Ud[i[s+4]]+Ud[i[s+5]]+"-"+Ud[i[s+6]]+Ud[i[s+7]]+"-"+Ud[i[s+8]]+Ud[i[s+9]]+"-"+Ud[i[s+10]]+Ud[i[s+11]]+Ud[i[s+12]]+Ud[i[s+13]]+Ud[i[s+14]]+Ud[i[s+15]]}function Ben(i){if(!Nen(i))throw TypeError("Invalid UUID");let s;const u=new Uint8Array(16);return u[0]=(s=parseInt(i.slice(0,8),16))>>>24,u[1]=s>>>16&255,u[2]=s>>>8&255,u[3]=s&255,u[4]=(s=parseInt(i.slice(9,13),16))>>>8,u[5]=s&255,u[6]=(s=parseInt(i.slice(14,18),16))>>>8,u[7]=s&255,u[8]=(s=parseInt(i.slice(19,23),16))>>>8,u[9]=s&255,u[10]=(s=parseInt(i.slice(24,36),16))/1099511627776&255,u[11]=s/4294967296&255,u[12]=s>>>24&255,u[13]=s>>>16&255,u[14]=s>>>8&255,u[15]=s&255,u}function Fen(i){i=unescape(encodeURIComponent(i));const s=[];for(let u=0;u>>32-s}function qen(i){const s=[1518500249,1859775393,2400959708,3395469782],u=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof i=="string"){const b=unescape(encodeURIComponent(i));i=[];for(let y=0;y>>0;R=P,P=A,A=Gme(_,30)>>>0,_=T,T=K}u[0]=u[0]+T>>>0,u[1]=u[1]+_>>>0,u[2]=u[2]+A>>>0,u[3]=u[3]+P>>>0,u[4]=u[4]+R>>>0}return[u[0]>>24&255,u[0]>>16&255,u[0]>>8&255,u[0]&255,u[1]>>24&255,u[1]>>16&255,u[1]>>8&255,u[1]&255,u[2]>>24&255,u[2]>>16&255,u[2]>>8&255,u[2]&255,u[3]>>24&255,u[3]>>16&255,u[3]>>8&255,u[3]&255,u[4]>>24&255,u[4]>>16&255,u[4]>>8&255,u[4]&255]}const Hen=$en("v5",80,qen),Ven=/[^\dA-Za-z](\W)*/g;let p1={},IR=new Map;const Uen=function(i){const s=Object.keys(i);for(const u of s)p1[u]=i[u]},Gen=(i,s,u)=>{const d=p1.entityPadding/3,p=p1.entityPadding/3,v=p1.fontSize*.85,b=s.node().getBBox(),y=[];let T=!1,_=!1,A=0,P=0,R=0,F=0,j=b.height+d*2,K=1;u.forEach(pe=>{pe.attributeKeyTypeList!==void 0&&pe.attributeKeyTypeList.length>0&&(T=!0),pe.attributeComment!==void 0&&(_=!0)}),u.forEach(pe=>{const be=`${s.node().id}-attr-${K}`;let ae=0;const ne=qF(pe.attributeType),se=i.append("text").classed("er entityLabel",!0).attr("id",`${be}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",qt().fontFamily).style("font-size",v+"px").text(ne),de=i.append("text").classed("er entityLabel",!0).attr("id",`${be}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",qt().fontFamily).style("font-size",v+"px").text(pe.attributeName),X={};X.tn=se,X.nn=de;const ge=se.node().getBBox(),W=de.node().getBBox();if(A=Math.max(A,ge.width),P=Math.max(P,W.width),ae=Math.max(ge.height,W.height),T){const xe=pe.attributeKeyTypeList!==void 0?pe.attributeKeyTypeList.join(","):"",U=i.append("text").classed("er entityLabel",!0).attr("id",`${be}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",qt().fontFamily).style("font-size",v+"px").text(xe);X.kn=U;const Fe=U.node().getBBox();R=Math.max(R,Fe.width),ae=Math.max(ae,Fe.height)}if(_){const xe=i.append("text").classed("er entityLabel",!0).attr("id",`${be}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",qt().fontFamily).style("font-size",v+"px").text(pe.attributeComment||"");X.cn=xe;const U=xe.node().getBBox();F=Math.max(F,U.width),ae=Math.max(ae,U.height)}X.height=ae,y.push(X),j+=ae+d*2,K+=1});let ee=4;T&&(ee+=2),_&&(ee+=2);const ie=A+P+R+F,oe={width:Math.max(p1.minEntityWidth,Math.max(b.width+p1.entityPadding*2,ie+p*ee)),height:u.length>0?j:Math.max(p1.minEntityHeight,b.height+p1.entityPadding*2)};if(u.length>0){const pe=Math.max(0,(oe.width-ie-p*ee)/(ee/2));s.attr("transform","translate("+oe.width/2+","+(d+b.height/2)+")");let be=b.height+d*2,ae="attributeBoxOdd";y.forEach(ne=>{const se=be+d+ne.height/2;ne.tn.attr("transform","translate("+p+","+se+")");const de=i.insert("rect","#"+ne.tn.node().id).classed(`er ${ae}`,!0).attr("x",0).attr("y",be).attr("width",A+p*2+pe).attr("height",ne.height+d*2),X=parseFloat(de.attr("x"))+parseFloat(de.attr("width"));ne.nn.attr("transform","translate("+(X+p)+","+se+")");const ge=i.insert("rect","#"+ne.nn.node().id).classed(`er ${ae}`,!0).attr("x",X).attr("y",be).attr("width",P+p*2+pe).attr("height",ne.height+d*2);let W=parseFloat(ge.attr("x"))+parseFloat(ge.attr("width"));if(T){ne.kn.attr("transform","translate("+(W+p)+","+se+")");const xe=i.insert("rect","#"+ne.kn.node().id).classed(`er ${ae}`,!0).attr("x",W).attr("y",be).attr("width",R+p*2+pe).attr("height",ne.height+d*2);W=parseFloat(xe.attr("x"))+parseFloat(xe.attr("width"))}_&&(ne.cn.attr("transform","translate("+(W+p)+","+se+")"),i.insert("rect","#"+ne.cn.node().id).classed(`er ${ae}`,"true").attr("x",W).attr("y",be).attr("width",F+p*2+pe).attr("height",ne.height+d*2)),be+=ne.height+d*2,ae=ae==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else oe.height=Math.max(p1.minEntityHeight,j),s.attr("transform","translate("+oe.width/2+","+oe.height/2+")");return oe},Ken=function(i,s,u){const d=Object.keys(s);let p;return d.forEach(function(v){const b=Zen(v,"entity");IR.set(v,b);const y=i.append("g").attr("id",b);p=p===void 0?b:p;const T="text-"+b,_=y.append("text").classed("er entityLabel",!0).attr("id",T).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",qt().fontFamily).style("font-size",p1.fontSize+"px").text(s[v].alias??v),{width:A,height:P}=Gen(y,_,s[v].attributes),F=y.insert("rect","#"+T).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",A).attr("height",P).node().getBBox();u.setNode(b,{width:F.width,height:F.height,shape:"rect",id:b})}),p},Wen=function(i,s){s.nodes().forEach(function(u){u!==void 0&&s.node(u)!==void 0&&i.select("#"+u).attr("transform","translate("+(s.node(u).x-s.node(u).width/2)+","+(s.node(u).y-s.node(u).height/2)+" )")})},jUe=function(i){return(i.entityA+i.roleA+i.entityB).replace(/\s/g,"")},Yen=function(i,s){return i.forEach(function(u){s.setEdge(IR.get(u.entityA),IR.get(u.entityB),{relationship:u},jUe(u))}),i};let $Ue=0;const Xen=function(i,s,u,d,p){$Ue++;const v=u.edge(IR.get(s.entityA),IR.get(s.entityB),jUe(s)),b=k7().x(function(j){return j.x}).y(function(j){return j.y}).curve(FF),y=i.insert("path","#"+d).classed("er relationshipLine",!0).attr("d",b(v.points)).style("stroke",p1.stroke).style("fill","none");s.relSpec.relType===p.db.Identification.NON_IDENTIFYING&&y.attr("stroke-dasharray","8,8");let T="";switch(p1.arrowMarkerAbsolute&&(T=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,T=T.replace(/\(/g,"\\("),T=T.replace(/\)/g,"\\)")),s.relSpec.cardA){case p.db.Cardinality.ZERO_OR_ONE:y.attr("marker-end","url("+T+"#"+G3.ERMarkers.ZERO_OR_ONE_END+")");break;case p.db.Cardinality.ZERO_OR_MORE:y.attr("marker-end","url("+T+"#"+G3.ERMarkers.ZERO_OR_MORE_END+")");break;case p.db.Cardinality.ONE_OR_MORE:y.attr("marker-end","url("+T+"#"+G3.ERMarkers.ONE_OR_MORE_END+")");break;case p.db.Cardinality.ONLY_ONE:y.attr("marker-end","url("+T+"#"+G3.ERMarkers.ONLY_ONE_END+")");break;case p.db.Cardinality.MD_PARENT:y.attr("marker-end","url("+T+"#"+G3.ERMarkers.MD_PARENT_END+")");break}switch(s.relSpec.cardB){case p.db.Cardinality.ZERO_OR_ONE:y.attr("marker-start","url("+T+"#"+G3.ERMarkers.ZERO_OR_ONE_START+")");break;case p.db.Cardinality.ZERO_OR_MORE:y.attr("marker-start","url("+T+"#"+G3.ERMarkers.ZERO_OR_MORE_START+")");break;case p.db.Cardinality.ONE_OR_MORE:y.attr("marker-start","url("+T+"#"+G3.ERMarkers.ONE_OR_MORE_START+")");break;case p.db.Cardinality.ONLY_ONE:y.attr("marker-start","url("+T+"#"+G3.ERMarkers.ONLY_ONE_START+")");break;case p.db.Cardinality.MD_PARENT:y.attr("marker-start","url("+T+"#"+G3.ERMarkers.MD_PARENT_START+")");break}const _=y.node().getTotalLength(),A=y.node().getPointAtLength(_*.5),P="rel"+$Ue,F=i.append("text").classed("er relationshipLabel",!0).attr("id",P).attr("x",A.x).attr("y",A.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",qt().fontFamily).style("font-size",p1.fontSize+"px").text(s.roleA).node().getBBox();i.insert("rect","#"+P).classed("er relationshipLabelBox",!0).attr("x",A.x-F.width/2).attr("y",A.y-F.height/2).attr("width",F.width).attr("height",F.height)},Qen=function(i,s,u,d){p1=qt().er,Xe.info("Drawing ER diagram");const p=qt().securityLevel;let v;p==="sandbox"&&(v=Ir("#i"+s));const y=Ir(p==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${s}']`);G3.insertMarkers(y,p1);let T;T=new B0({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:p1.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const _=Ken(y,d.db.getEntities(),T),A=Yen(d.db.getRelationships(),T);qD(T),Wen(y,T),A.forEach(function(K){Xen(y,K,T,_,d)});const P=p1.diagramPadding;Ao.insertTitle(y,"entityTitleText",p1.titleTopMargin,d.db.getDiagramTitle());const R=y.node().getBBox(),F=R.width+P*2,j=R.height+P*2;Ng(y,j,F,p1.useMaxWidth),y.attr("viewBox",`${R.x-P} ${R.y-P} ${F} ${j}`)},Jen="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function Zen(i="",s=""){const u=i.replace(Ven,"");return`${zUe(s)}${zUe(u)}${Hen(i,Jen)}`}function zUe(i=""){return i.length>0?`${i}-`:""}const etn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Len,db:Ien,renderer:{setConf:Uen,draw:Qen},styles:i=>`
+ .entityBox {
+ fill: ${i.mainBkg};
+ stroke: ${i.nodeBorder};
+ }
+
+ .attributeBoxOdd {
+ fill: ${i.attributeBackgroundColorOdd};
+ stroke: ${i.nodeBorder};
+ }
+
+ .attributeBoxEven {
+ fill: ${i.attributeBackgroundColorEven};
+ stroke: ${i.nodeBorder};
+ }
+
+ .relationshipLabelBox {
+ fill: ${i.tertiaryColor};
+ opacity: 0.7;
+ background-color: ${i.tertiaryColor};
+ rect {
+ opacity: 0.5;
+ }
+ }
+
+ .relationshipLine {
+ stroke: ${i.lineColor};
+ }
+
+ .entityTitleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: ${i.textColor};
+ }
+ #MD_PARENT_START {
+ fill: #f5f5f5 !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+ }
+ #MD_PARENT_END {
+ fill: #f5f5f5 !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+ }
+
+`}},Symbol.toStringTag,{value:"Module"}));var Kme=function(){var i=function(ae,ne,se,de){for(se=se||{},de=ae.length;de--;se[ae[de]]=ne);return se},s=[1,3],u=[1,6],d=[1,4],p=[1,5],v=[2,5],b=[1,12],y=[5,7,13,19,21,23,24,26,28,31,37,40,47],T=[7,13,19,21,23,24,26,28,31,37,40],_=[7,12,13,19,21,23,24,26,28,31,37,40],A=[7,13,47],P=[1,42],R=[1,41],F=[7,13,29,32,35,38,47],j=[1,55],K=[1,56],ee=[1,57],ie=[7,13,32,35,42,47],oe={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,GG:5,document:6,EOF:7,":":8,DIR:9,options:10,body:11,OPT:12,NL:13,line:14,statement:15,commitStatement:16,mergeStatement:17,cherryPickStatement:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,section:24,branchStatement:25,CHECKOUT:26,ref:27,BRANCH:28,ORDER:29,NUM:30,CHERRY_PICK:31,COMMIT_ID:32,STR:33,PARENT_COMMIT:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,ID:46,";":47,$accept:0,$end:1},terminals_:{2:"error",5:"GG",7:"EOF",8:":",9:"DIR",12:"OPT",13:"NL",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"section",26:"CHECKOUT",28:"BRANCH",29:"ORDER",30:"NUM",31:"CHERRY_PICK",32:"COMMIT_ID",33:"STR",34:"PARENT_COMMIT",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",46:"ID",47:";"},productions_:[0,[3,2],[3,3],[3,4],[3,5],[6,0],[6,2],[10,2],[10,1],[11,0],[11,2],[14,2],[14,1],[15,1],[15,1],[15,1],[15,2],[15,2],[15,1],[15,1],[15,1],[15,2],[25,2],[25,4],[18,3],[18,5],[18,5],[18,7],[18,7],[18,5],[18,5],[18,5],[18,7],[18,7],[18,7],[18,7],[17,2],[17,4],[17,4],[17,4],[17,6],[17,6],[17,6],[17,6],[17,6],[17,6],[17,8],[17,8],[17,8],[17,8],[17,8],[17,8],[16,2],[16,3],[16,3],[16,5],[16,5],[16,3],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,3],[16,5],[16,5],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[41,0],[41,1],[39,1],[39,1],[39,1],[27,1],[27,1],[4,1],[4,1],[4,1]],performAction:function(ne,se,de,X,ge,W,xe){var U=W.length-1;switch(ge){case 2:return W[U];case 3:return W[U-1];case 4:return X.setDirection(W[U-3]),W[U-1];case 6:X.setOptions(W[U-1]),this.$=W[U];break;case 7:W[U-1]+=W[U],this.$=W[U-1];break;case 9:this.$=[];break;case 10:W[U-1].push(W[U]),this.$=W[U-1];break;case 11:this.$=W[U-1];break;case 16:this.$=W[U].trim(),X.setAccTitle(this.$);break;case 17:case 18:this.$=W[U].trim(),X.setAccDescription(this.$);break;case 19:X.addSection(W[U].substr(8)),this.$=W[U].substr(8);break;case 21:X.checkout(W[U]);break;case 22:X.branch(W[U]);break;case 23:X.branch(W[U-2],W[U]);break;case 24:X.cherryPick(W[U],"",void 0);break;case 25:X.cherryPick(W[U-2],"",void 0,W[U]);break;case 26:X.cherryPick(W[U-2],"",W[U]);break;case 27:X.cherryPick(W[U-4],"",W[U],W[U-2]);break;case 28:X.cherryPick(W[U-4],"",W[U-2],W[U]);break;case 29:X.cherryPick(W[U],"",W[U-2]);break;case 30:X.cherryPick(W[U],"","");break;case 31:X.cherryPick(W[U-2],"","");break;case 32:X.cherryPick(W[U-4],"","",W[U-2]);break;case 33:X.cherryPick(W[U-4],"","",W[U]);break;case 34:X.cherryPick(W[U-2],"",W[U-4],W[U]);break;case 35:X.cherryPick(W[U-2],"","",W[U]);break;case 36:X.merge(W[U],"","","");break;case 37:X.merge(W[U-2],W[U],"","");break;case 38:X.merge(W[U-2],"",W[U],"");break;case 39:X.merge(W[U-2],"","",W[U]);break;case 40:X.merge(W[U-4],W[U],"",W[U-2]);break;case 41:X.merge(W[U-4],"",W[U],W[U-2]);break;case 42:X.merge(W[U-4],"",W[U-2],W[U]);break;case 43:X.merge(W[U-4],W[U-2],W[U],"");break;case 44:X.merge(W[U-4],W[U-2],"",W[U]);break;case 45:X.merge(W[U-4],W[U],W[U-2],"");break;case 46:X.merge(W[U-6],W[U-4],W[U-2],W[U]);break;case 47:X.merge(W[U-6],W[U],W[U-4],W[U-2]);break;case 48:X.merge(W[U-6],W[U-4],W[U],W[U-2]);break;case 49:X.merge(W[U-6],W[U-2],W[U-4],W[U]);break;case 50:X.merge(W[U-6],W[U],W[U-2],W[U-4]);break;case 51:X.merge(W[U-6],W[U-2],W[U],W[U-4]);break;case 52:X.commit(W[U]);break;case 53:X.commit("","",X.commitType.NORMAL,W[U]);break;case 54:X.commit("","",W[U],"");break;case 55:X.commit("","",W[U],W[U-2]);break;case 56:X.commit("","",W[U-2],W[U]);break;case 57:X.commit("",W[U],X.commitType.NORMAL,"");break;case 58:X.commit("",W[U-2],X.commitType.NORMAL,W[U]);break;case 59:X.commit("",W[U],X.commitType.NORMAL,W[U-2]);break;case 60:X.commit("",W[U-2],W[U],"");break;case 61:X.commit("",W[U],W[U-2],"");break;case 62:X.commit("",W[U-4],W[U-2],W[U]);break;case 63:X.commit("",W[U-4],W[U],W[U-2]);break;case 64:X.commit("",W[U-2],W[U-4],W[U]);break;case 65:X.commit("",W[U],W[U-4],W[U-2]);break;case 66:X.commit("",W[U],W[U-2],W[U-4]);break;case 67:X.commit("",W[U-2],W[U],W[U-4]);break;case 68:X.commit(W[U],"",X.commitType.NORMAL,"");break;case 69:X.commit(W[U],"",X.commitType.NORMAL,W[U-2]);break;case 70:X.commit(W[U-2],"",X.commitType.NORMAL,W[U]);break;case 71:X.commit(W[U-2],"",W[U],"");break;case 72:X.commit(W[U],"",W[U-2],"");break;case 73:X.commit(W[U],W[U-2],X.commitType.NORMAL,"");break;case 74:X.commit(W[U-2],W[U],X.commitType.NORMAL,"");break;case 75:X.commit(W[U-4],"",W[U-2],W[U]);break;case 76:X.commit(W[U-4],"",W[U],W[U-2]);break;case 77:X.commit(W[U-2],"",W[U-4],W[U]);break;case 78:X.commit(W[U],"",W[U-4],W[U-2]);break;case 79:X.commit(W[U],"",W[U-2],W[U-4]);break;case 80:X.commit(W[U-2],"",W[U],W[U-4]);break;case 81:X.commit(W[U-4],W[U],W[U-2],"");break;case 82:X.commit(W[U-4],W[U-2],W[U],"");break;case 83:X.commit(W[U-2],W[U],W[U-4],"");break;case 84:X.commit(W[U],W[U-2],W[U-4],"");break;case 85:X.commit(W[U],W[U-4],W[U-2],"");break;case 86:X.commit(W[U-2],W[U-4],W[U],"");break;case 87:X.commit(W[U-4],W[U],X.commitType.NORMAL,W[U-2]);break;case 88:X.commit(W[U-4],W[U-2],X.commitType.NORMAL,W[U]);break;case 89:X.commit(W[U-2],W[U],X.commitType.NORMAL,W[U-4]);break;case 90:X.commit(W[U],W[U-2],X.commitType.NORMAL,W[U-4]);break;case 91:X.commit(W[U],W[U-4],X.commitType.NORMAL,W[U-2]);break;case 92:X.commit(W[U-2],W[U-4],X.commitType.NORMAL,W[U]);break;case 93:X.commit(W[U-6],W[U-4],W[U-2],W[U]);break;case 94:X.commit(W[U-6],W[U-4],W[U],W[U-2]);break;case 95:X.commit(W[U-6],W[U-2],W[U-4],W[U]);break;case 96:X.commit(W[U-6],W[U],W[U-4],W[U-2]);break;case 97:X.commit(W[U-6],W[U-2],W[U],W[U-4]);break;case 98:X.commit(W[U-6],W[U],W[U-2],W[U-4]);break;case 99:X.commit(W[U-4],W[U-6],W[U-2],W[U]);break;case 100:X.commit(W[U-4],W[U-6],W[U],W[U-2]);break;case 101:X.commit(W[U-2],W[U-6],W[U-4],W[U]);break;case 102:X.commit(W[U],W[U-6],W[U-4],W[U-2]);break;case 103:X.commit(W[U-2],W[U-6],W[U],W[U-4]);break;case 104:X.commit(W[U],W[U-6],W[U-2],W[U-4]);break;case 105:X.commit(W[U],W[U-4],W[U-2],W[U-6]);break;case 106:X.commit(W[U-2],W[U-4],W[U],W[U-6]);break;case 107:X.commit(W[U],W[U-2],W[U-4],W[U-6]);break;case 108:X.commit(W[U-2],W[U],W[U-4],W[U-6]);break;case 109:X.commit(W[U-4],W[U-2],W[U],W[U-6]);break;case 110:X.commit(W[U-4],W[U],W[U-2],W[U-6]);break;case 111:X.commit(W[U-2],W[U-4],W[U-6],W[U]);break;case 112:X.commit(W[U],W[U-4],W[U-6],W[U-2]);break;case 113:X.commit(W[U-2],W[U],W[U-6],W[U-4]);break;case 114:X.commit(W[U],W[U-2],W[U-6],W[U-4]);break;case 115:X.commit(W[U-4],W[U-2],W[U-6],W[U]);break;case 116:X.commit(W[U-4],W[U],W[U-6],W[U-2]);break;case 117:this.$="";break;case 118:this.$=W[U];break;case 119:this.$=X.commitType.NORMAL;break;case 120:this.$=X.commitType.REVERSE;break;case 121:this.$=X.commitType.HIGHLIGHT;break}},table:[{3:1,4:2,5:s,7:u,13:d,47:p},{1:[3]},{3:7,4:2,5:s,7:u,13:d,47:p},{6:8,7:v,8:[1,9],9:[1,10],10:11,13:b},i(y,[2,124]),i(y,[2,125]),i(y,[2,126]),{1:[2,1]},{7:[1,13]},{6:14,7:v,10:11,13:b},{8:[1,15]},i(T,[2,9],{11:16,12:[1,17]}),i(_,[2,8]),{1:[2,2]},{7:[1,18]},{6:19,7:v,10:11,13:b},{7:[2,6],13:[1,22],14:20,15:21,16:23,17:24,18:25,19:[1,26],21:[1,27],23:[1,28],24:[1,29],25:30,26:[1,31],28:[1,35],31:[1,34],37:[1,33],40:[1,32]},i(_,[2,7]),{1:[2,3]},{7:[1,36]},i(T,[2,10]),{4:37,7:u,13:d,47:p},i(T,[2,12]),i(A,[2,13]),i(A,[2,14]),i(A,[2,15]),{20:[1,38]},{22:[1,39]},i(A,[2,18]),i(A,[2,19]),i(A,[2,20]),{27:40,33:P,46:R},i(A,[2,117],{41:43,32:[1,46],33:[1,48],35:[1,44],38:[1,45],42:[1,47]}),{27:49,33:P,46:R},{32:[1,50],35:[1,51]},{27:52,33:P,46:R},{1:[2,4]},i(T,[2,11]),i(A,[2,16]),i(A,[2,17]),i(A,[2,21]),i(F,[2,122]),i(F,[2,123]),i(A,[2,52]),{33:[1,53]},{39:54,43:j,44:K,45:ee},{33:[1,58]},{33:[1,59]},i(A,[2,118]),i(A,[2,36],{32:[1,60],35:[1,62],38:[1,61]}),{33:[1,63]},{33:[1,64],36:[1,65]},i(A,[2,22],{29:[1,66]}),i(A,[2,53],{32:[1,68],38:[1,67],42:[1,69]}),i(A,[2,54],{32:[1,71],35:[1,70],42:[1,72]}),i(ie,[2,119]),i(ie,[2,120]),i(ie,[2,121]),i(A,[2,57],{35:[1,73],38:[1,74],42:[1,75]}),i(A,[2,68],{32:[1,78],35:[1,76],38:[1,77]}),{33:[1,79]},{39:80,43:j,44:K,45:ee},{33:[1,81]},i(A,[2,24],{34:[1,82],35:[1,83]}),{32:[1,84]},{32:[1,85]},{30:[1,86]},{39:87,43:j,44:K,45:ee},{33:[1,88]},{33:[1,89]},{33:[1,90]},{33:[1,91]},{33:[1,92]},{33:[1,93]},{39:94,43:j,44:K,45:ee},{33:[1,95]},{33:[1,96]},{39:97,43:j,44:K,45:ee},{33:[1,98]},i(A,[2,37],{35:[1,100],38:[1,99]}),i(A,[2,38],{32:[1,102],35:[1,101]}),i(A,[2,39],{32:[1,103],38:[1,104]}),{33:[1,105]},{33:[1,106],36:[1,107]},{33:[1,108]},{33:[1,109]},i(A,[2,23]),i(A,[2,55],{32:[1,110],42:[1,111]}),i(A,[2,59],{38:[1,112],42:[1,113]}),i(A,[2,69],{32:[1,115],38:[1,114]}),i(A,[2,56],{32:[1,116],42:[1,117]}),i(A,[2,61],{35:[1,118],42:[1,119]}),i(A,[2,72],{32:[1,121],35:[1,120]}),i(A,[2,58],{38:[1,122],42:[1,123]}),i(A,[2,60],{35:[1,124],42:[1,125]}),i(A,[2,73],{35:[1,127],38:[1,126]}),i(A,[2,70],{32:[1,129],38:[1,128]}),i(A,[2,71],{32:[1,131],35:[1,130]}),i(A,[2,74],{35:[1,133],38:[1,132]}),{39:134,43:j,44:K,45:ee},{33:[1,135]},{33:[1,136]},{33:[1,137]},{33:[1,138]},{39:139,43:j,44:K,45:ee},i(A,[2,25],{35:[1,140]}),i(A,[2,26],{34:[1,141]}),i(A,[2,31],{34:[1,142]}),i(A,[2,29],{34:[1,143]}),i(A,[2,30],{34:[1,144]}),{33:[1,145]},{33:[1,146]},{39:147,43:j,44:K,45:ee},{33:[1,148]},{39:149,43:j,44:K,45:ee},{33:[1,150]},{33:[1,151]},{33:[1,152]},{33:[1,153]},{33:[1,154]},{33:[1,155]},{33:[1,156]},{39:157,43:j,44:K,45:ee},{33:[1,158]},{33:[1,159]},{33:[1,160]},{39:161,43:j,44:K,45:ee},{33:[1,162]},{39:163,43:j,44:K,45:ee},{33:[1,164]},{33:[1,165]},{33:[1,166]},{39:167,43:j,44:K,45:ee},{33:[1,168]},i(A,[2,43],{35:[1,169]}),i(A,[2,44],{38:[1,170]}),i(A,[2,42],{32:[1,171]}),i(A,[2,45],{35:[1,172]}),i(A,[2,40],{38:[1,173]}),i(A,[2,41],{32:[1,174]}),{33:[1,175],36:[1,176]},{33:[1,177]},{33:[1,178]},{33:[1,179]},{33:[1,180]},i(A,[2,66],{42:[1,181]}),i(A,[2,79],{32:[1,182]}),i(A,[2,67],{42:[1,183]}),i(A,[2,90],{38:[1,184]}),i(A,[2,80],{32:[1,185]}),i(A,[2,89],{38:[1,186]}),i(A,[2,65],{42:[1,187]}),i(A,[2,78],{32:[1,188]}),i(A,[2,64],{42:[1,189]}),i(A,[2,84],{35:[1,190]}),i(A,[2,77],{32:[1,191]}),i(A,[2,83],{35:[1,192]}),i(A,[2,63],{42:[1,193]}),i(A,[2,91],{38:[1,194]}),i(A,[2,62],{42:[1,195]}),i(A,[2,85],{35:[1,196]}),i(A,[2,86],{35:[1,197]}),i(A,[2,92],{38:[1,198]}),i(A,[2,76],{32:[1,199]}),i(A,[2,87],{38:[1,200]}),i(A,[2,75],{32:[1,201]}),i(A,[2,81],{35:[1,202]}),i(A,[2,82],{35:[1,203]}),i(A,[2,88],{38:[1,204]}),{33:[1,205]},{39:206,43:j,44:K,45:ee},{33:[1,207]},{33:[1,208]},{39:209,43:j,44:K,45:ee},{33:[1,210]},i(A,[2,27]),i(A,[2,32]),i(A,[2,28]),i(A,[2,33]),i(A,[2,34]),i(A,[2,35]),{33:[1,211]},{33:[1,212]},{33:[1,213]},{39:214,43:j,44:K,45:ee},{33:[1,215]},{39:216,43:j,44:K,45:ee},{33:[1,217]},{33:[1,218]},{33:[1,219]},{33:[1,220]},{33:[1,221]},{33:[1,222]},{33:[1,223]},{39:224,43:j,44:K,45:ee},{33:[1,225]},{33:[1,226]},{33:[1,227]},{39:228,43:j,44:K,45:ee},{33:[1,229]},{39:230,43:j,44:K,45:ee},{33:[1,231]},{33:[1,232]},{33:[1,233]},{39:234,43:j,44:K,45:ee},i(A,[2,46]),i(A,[2,48]),i(A,[2,47]),i(A,[2,49]),i(A,[2,51]),i(A,[2,50]),i(A,[2,107]),i(A,[2,108]),i(A,[2,105]),i(A,[2,106]),i(A,[2,110]),i(A,[2,109]),i(A,[2,114]),i(A,[2,113]),i(A,[2,112]),i(A,[2,111]),i(A,[2,116]),i(A,[2,115]),i(A,[2,104]),i(A,[2,103]),i(A,[2,102]),i(A,[2,101]),i(A,[2,99]),i(A,[2,100]),i(A,[2,98]),i(A,[2,97]),i(A,[2,96]),i(A,[2,95]),i(A,[2,93]),i(A,[2,94])],defaultActions:{7:[2,1],13:[2,2],18:[2,3],36:[2,4]},parseError:function(ne,se){if(se.recoverable)this.trace(ne);else{var de=new Error(ne);throw de.hash=se,de}},parse:function(ne){var se=this,de=[0],X=[],ge=[null],W=[],xe=this.table,U="",Fe=0,Pe=0,je=2,Ie=1,Se=W.slice.call(arguments,1),Ce=Object.create(this.lexer),ke={yy:{}};for(var Ke in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ke)&&(ke.yy[Ke]=this.yy[Ke]);Ce.setInput(ne,ke.yy),ke.yy.lexer=Ce,ke.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var Ft=Ce.yylloc;W.push(Ft);var Ne=Ce.options&&Ce.options.ranges;typeof ke.yy.parseError=="function"?this.parseError=ke.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gn(){var ht;return ht=X.pop()||Ce.lex()||Ie,typeof ht!="number"&&(ht instanceof Array&&(X=ht,ht=X.pop()),ht=se.symbols_[ht]||ht),ht}for(var _t,Et,Gt,ln,xt={},Pt,Qe,Dt,kt;;){if(Et=de[de.length-1],this.defaultActions[Et]?Gt=this.defaultActions[Et]:((_t===null||typeof _t>"u")&&(_t=gn()),Gt=xe[Et]&&xe[Et][_t]),typeof Gt>"u"||!Gt.length||!Gt[0]){var On="";kt=[];for(Pt in xe[Et])this.terminals_[Pt]&&Pt>je&&kt.push("'"+this.terminals_[Pt]+"'");Ce.showPosition?On="Parse error on line "+(Fe+1)+`:
+`+Ce.showPosition()+`
+Expecting `+kt.join(", ")+", got '"+(this.terminals_[_t]||_t)+"'":On="Parse error on line "+(Fe+1)+": Unexpected "+(_t==Ie?"end of input":"'"+(this.terminals_[_t]||_t)+"'"),this.parseError(On,{text:Ce.match,token:this.terminals_[_t]||_t,line:Ce.yylineno,loc:Ft,expected:kt})}if(Gt[0]instanceof Array&&Gt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Et+", token: "+_t);switch(Gt[0]){case 1:de.push(_t),ge.push(Ce.yytext),W.push(Ce.yylloc),de.push(Gt[1]),_t=null,Pe=Ce.yyleng,U=Ce.yytext,Fe=Ce.yylineno,Ft=Ce.yylloc;break;case 2:if(Qe=this.productions_[Gt[1]][1],xt.$=ge[ge.length-Qe],xt._$={first_line:W[W.length-(Qe||1)].first_line,last_line:W[W.length-1].last_line,first_column:W[W.length-(Qe||1)].first_column,last_column:W[W.length-1].last_column},Ne&&(xt._$.range=[W[W.length-(Qe||1)].range[0],W[W.length-1].range[1]]),ln=this.performAction.apply(xt,[U,Pe,Fe,ke.yy,Gt[1],ge,W].concat(Se)),typeof ln<"u")return ln;Qe&&(de=de.slice(0,-1*Qe*2),ge=ge.slice(0,-1*Qe),W=W.slice(0,-1*Qe)),de.push(this.productions_[Gt[1]][0]),ge.push(xt.$),W.push(xt._$),Dt=xe[de[de.length-2]][de[de.length-1]],de.push(Dt);break;case 3:return!0}}return!0}},pe=function(){var ae={EOF:1,parseError:function(se,de){if(this.yy.parser)this.yy.parser.parseError(se,de);else throw new Error(se)},setInput:function(ne,se){return this.yy=se||this.yy||{},this._input=ne,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 ne=this._input[0];this.yytext+=ne,this.yyleng++,this.offset++,this.match+=ne,this.matched+=ne;var se=ne.match(/(?:\r\n?|\n).*/g);return se?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ne},unput:function(ne){var se=ne.length,de=ne.split(/(?:\r\n?|\n)/g);this._input=ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-se),this.offset-=se;var X=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),de.length-1&&(this.yylineno-=de.length-1);var ge=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:de?(de.length===X.length?this.yylloc.first_column:0)+X[X.length-de.length].length-de[0].length:this.yylloc.first_column-se},this.options.ranges&&(this.yylloc.range=[ge[0],ge[0]+this.yyleng-se]),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(ne){this.unput(this.match.slice(ne))},pastInput:function(){var ne=this.matched.substr(0,this.matched.length-this.match.length);return(ne.length>20?"...":"")+ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ne=this.match;return ne.length<20&&(ne+=this._input.substr(0,20-ne.length)),(ne.substr(0,20)+(ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ne=this.pastInput(),se=new Array(ne.length+1).join("-");return ne+this.upcomingInput()+`
+`+se+"^"},test_match:function(ne,se){var de,X,ge;if(this.options.backtrack_lexer&&(ge={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&&(ge.yylloc.range=this.yylloc.range.slice(0))),X=ne[0].match(/(?:\r\n?|\n).*/g),X&&(this.yylineno+=X.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:X?X[X.length-1].length-X[X.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ne[0].length},this.yytext+=ne[0],this.match+=ne[0],this.matches=ne,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(ne[0].length),this.matched+=ne[0],de=this.performAction.call(this,this.yy,this,se,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),de)return de;if(this._backtrack){for(var W in ge)this[W]=ge[W];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ne,se,de,X;this._more||(this.yytext="",this.match="");for(var ge=this._currentRules(),W=0;Wse[0].length)){if(se=de,X=W,this.options.backtrack_lexer){if(ne=this.test_match(de,ge[W]),ne!==!1)return ne;if(this._backtrack){se=!1;continue}else return!1}else if(!this.options.flex)break}return se?(ne=this.test_match(se,ge[X]),ne!==!1?ne:!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 se=this.next();return se||this.lex()},begin:function(se){this.conditionStack.push(se)},popState:function(){var se=this.conditionStack.length-1;return se>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(se){return se=this.conditionStack.length-1-Math.abs(se||0),se>=0?this.conditionStack[se]:"INITIAL"},pushState:function(se){this.begin(se)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(se,de,X,ge){switch(X){case 0:return this.begin("acc_title"),19;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),21;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:return 13;case 8:break;case 9:break;case 10:return 5;case 11:return 40;case 12:return 32;case 13:return 38;case 14:return 42;case 15:return 43;case 16:return 44;case 17:return 45;case 18:return 35;case 19:return 28;case 20:return 29;case 21:return 37;case 22:return 31;case 23:return 34;case 24:return 26;case 25:return 9;case 26:return 9;case 27:return 8;case 28:return"CARET";case 29:this.begin("options");break;case 30:this.popState();break;case 31:return 12;case 32:return 36;case 33:this.begin("string");break;case 34:this.popState();break;case 35:return 33;case 36:return 30;case 37:return 46;case 38:return 7}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:parent:)/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},options:{rules:[30,31],inclusive:!1},string:{rules:[34,35],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32,33,36,37,38,39],inclusive:!0}}};return ae}();oe.lexer=pe;function be(){this.yy={}}return be.prototype=oe,oe.Parser=be,new be}();Kme.parser=Kme;const ttn=Kme;let oJ=qt().gitGraph.mainBranchName,ntn=qt().gitGraph.mainBranchOrder,b1={},Np=null,OR={};OR[oJ]={name:oJ,order:ntn};let F0={};F0[oJ]=Np;let sd=oJ,qUe="LR",YC=0;function Wme(){return mje({length:7})}function rtn(i,s){const u=Object.create(null);return i.reduce((d,p)=>{const v=s(p);return u[v]||(u[v]=!0,d.push(p)),d},[])}const itn=function(i){qUe=i};let HUe={};const stn=function(i){Xe.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{HUe=JSON.parse(i)}catch(s){Xe.error("error while parsing gitGraph options",s.message)}},atn=function(){return HUe},otn=function(i,s,u,d){Xe.debug("Entering commit:",i,s,u,d),s=ci.sanitizeText(s,qt()),i=ci.sanitizeText(i,qt()),d=ci.sanitizeText(d,qt());const p={id:s||YC+"-"+Wme(),message:i,seq:YC++,type:u||UD.NORMAL,tag:d||"",parents:Np==null?[]:[Np.id],branch:sd};Np=p,b1[p.id]=p,F0[sd]=p.id,Xe.debug("in pushCommit "+p.id)},ctn=function(i,s){if(i=ci.sanitizeText(i,qt()),F0[i]===void 0)F0[i]=Np!=null?Np.id:null,OR[i]={name:i,order:s?parseInt(s,10):null},VUe(i),Xe.debug("in createBranch");else{let u=new Error('Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout '+i+'")');throw u.hash={text:"branch "+i,token:"branch "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+i+'"']},u}},utn=function(i,s,u,d){i=ci.sanitizeText(i,qt()),s=ci.sanitizeText(s,qt());const p=b1[F0[sd]],v=b1[F0[i]];if(sd===i){let y=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw y.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},y}else if(p===void 0||!p){let y=new Error('Incorrect usage of "merge". Current branch ('+sd+")has no commits");throw y.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},y}else if(F0[i]===void 0){let y=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") does not exist");throw y.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+i]},y}else if(v===void 0||!v){let y=new Error('Incorrect usage of "merge". Branch to be merged ('+i+") has no commits");throw y.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},y}else if(p===v){let y=new Error('Incorrect usage of "merge". Both branches have same head');throw y.hash={text:"merge "+i,token:"merge "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},y}else if(s&&b1[s]!==void 0){let y=new Error('Incorrect usage of "merge". Commit with id:'+s+" already exists, use different custom Id");throw y.hash={text:"merge "+i+s+u+d,token:"merge "+i+s+u+d,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+i+" "+s+"_UNIQUE "+u+" "+d]},y}const b={id:s||YC+"-"+Wme(),message:"merged branch "+i+" into "+sd,seq:YC++,parents:[Np==null?null:Np.id,F0[i]],branch:sd,type:UD.MERGE,customType:u,customId:!!s,tag:d||""};Np=b,b1[b.id]=b,F0[sd]=b.id,Xe.debug(F0),Xe.debug("in mergeBranch")},ltn=function(i,s,u,d){if(Xe.debug("Entering cherryPick:",i,s,u),i=ci.sanitizeText(i,qt()),s=ci.sanitizeText(s,qt()),u=ci.sanitizeText(u,qt()),d=ci.sanitizeText(d,qt()),!i||b1[i]===void 0){let b=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw b.hash={text:"cherryPick "+i+" "+s,token:"cherryPick "+i+" "+s,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},b}let p=b1[i],v=p.branch;if(d&&!(Array.isArray(p.parents)&&p.parents.includes(d)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");if(p.type===UD.MERGE&&!d)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!s||b1[s]===void 0){if(v===sd){let T=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw T.hash={text:"cherryPick "+i+" "+s,token:"cherryPick "+i+" "+s,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},T}const b=b1[F0[sd]];if(b===void 0||!b){let T=new Error('Incorrect usage of "cherry-pick". Current branch ('+sd+")has no commits");throw T.hash={text:"cherryPick "+i+" "+s,token:"cherryPick "+i+" "+s,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},T}const y={id:YC+"-"+Wme(),message:"cherry-picked "+p+" into "+sd,seq:YC++,parents:[Np==null?null:Np.id,p.id],branch:sd,type:UD.CHERRY_PICK,tag:u??`cherry-pick:${p.id}${p.type===UD.MERGE?`|parent:${d}`:""}`};Np=y,b1[y.id]=y,F0[sd]=y.id,Xe.debug(F0),Xe.debug("in cherryPick")}},VUe=function(i){if(i=ci.sanitizeText(i,qt()),F0[i]===void 0){let s=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+i+'")');throw s.hash={text:"checkout "+i,token:"checkout "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+i+'"']},s}else{sd=i;const s=F0[sd];Np=b1[s]}};function UUe(i,s,u){const d=i.indexOf(s);d===-1?i.push(u):i.splice(d,1,u)}function GUe(i){const s=i.reduce((p,v)=>p.seq>v.seq?p:v,i[0]);let u="";i.forEach(function(p){p===s?u+=" *":u+=" |"});const d=[u,s.id,s.seq];for(let p in F0)F0[p]===s.id&&d.push(p);if(Xe.debug(d.join(" ")),s.parents&&s.parents.length==2){const p=b1[s.parents[0]];UUe(i,s,p),i.push(b1[s.parents[1]])}else{if(s.parents.length==0)return;{const p=b1[s.parents];UUe(i,s,p)}}i=rtn(i,p=>p.id),GUe(i)}const htn=function(){Xe.debug(b1);const i=KUe()[0];GUe([i])},ftn=function(){b1={},Np=null;let i=qt().gitGraph.mainBranchName,s=qt().gitGraph.mainBranchOrder;F0={},F0[i]=null,OR={},OR[i]={name:i,order:s},sd=i,YC=0,Pg()},dtn=function(){return Object.values(OR).map((s,u)=>s.order!==null?s:{...s,order:parseFloat(`0.${u}`,10)}).sort((s,u)=>s.order-u.order).map(({name:s})=>({name:s}))},gtn=function(){return F0},ptn=function(){return b1},KUe=function(){const i=Object.keys(b1).map(function(s){return b1[s]});return i.forEach(function(s){Xe.debug(s.id)}),i.sort((s,u)=>s.seq-u.seq),i},btn=function(){return sd},mtn=function(){return qUe},vtn=function(){return Np},UD={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},wtn={getConfig:()=>qt().gitGraph,setDirection:itn,setOptions:stn,getOptions:atn,commit:otn,branch:ctn,merge:utn,cherryPick:ltn,checkout:VUe,prettyPrint:htn,clear:ftn,getBranchesAsObjArray:dtn,getBranches:gtn,getCommits:ptn,getCommitsArray:KUe,getCurrentBranch:btn,getDirection:mtn,getHead:vtn,setAccTitle:Bg,getAccTitle:Cp,getAccDescription:_p,setAccDescription:Sp,setDiagramTitle:cm,getDiagramTitle:Ap,commitType:UD};let NR={};const ad={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},XC=8;let H2={},H7={},cJ=[],PR=0,R0="LR";const ytn=()=>{H2={},H7={},NR={},PR=0,cJ=[],R0="LR"},WUe=i=>{const s=document.createElementNS("http://www.w3.org/2000/svg","text");let u=[];typeof i=="string"?u=i.split(/\\n|\n|
/gi):Array.isArray(i)?u=i:u=[];for(const d of u){const p=document.createElementNS("http://www.w3.org/2000/svg","tspan");p.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),p.setAttribute("dy","1em"),p.setAttribute("x","0"),p.setAttribute("class","row"),p.textContent=d.trim(),s.appendChild(p)}return s},xtn=i=>{let s="",u=0;return i.forEach(d=>{const p=R0==="TB"?H7[d].y:H7[d].x;p>=u&&(s=d,u=p)}),s||void 0},YUe=(i,s,u)=>{const d=qt().gitGraph,p=i.append("g").attr("class","commit-bullets"),v=i.append("g").attr("class","commit-labels");let b=0;R0==="TB"&&(b=30);const T=Object.keys(s).sort((R,F)=>s[R].seq-s[F].seq),_=d.parallelCommits,A=10,P=40;T.forEach(R=>{const F=s[R];if(_)if(F.parents.length){const ie=xtn(F.parents);b=R0==="TB"?H7[ie].y+P:H7[ie].x+P}else b=0,R0==="TB"&&(b=30);const j=b+A,K=R0==="TB"?j:H2[F.branch].pos,ee=R0==="TB"?H2[F.branch].pos:j;if(u){let ie,oe=F.customType!==void 0&&F.customType!==""?F.customType:F.type;switch(oe){case ad.NORMAL:ie="commit-normal";break;case ad.REVERSE:ie="commit-reverse";break;case ad.HIGHLIGHT:ie="commit-highlight";break;case ad.MERGE:ie="commit-merge";break;case ad.CHERRY_PICK:ie="commit-cherry-pick";break;default:ie="commit-normal"}if(oe===ad.HIGHLIGHT){const pe=p.append("rect");pe.attr("x",ee-10),pe.attr("y",K-10),pe.attr("height",20),pe.attr("width",20),pe.attr("class",`commit ${F.id} commit-highlight${H2[F.branch].index%XC} ${ie}-outer`),p.append("rect").attr("x",ee-6).attr("y",K-6).attr("height",12).attr("width",12).attr("class",`commit ${F.id} commit${H2[F.branch].index%XC} ${ie}-inner`)}else if(oe===ad.CHERRY_PICK)p.append("circle").attr("cx",ee).attr("cy",K).attr("r",10).attr("class",`commit ${F.id} ${ie}`),p.append("circle").attr("cx",ee-3).attr("cy",K+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${F.id} ${ie}`),p.append("circle").attr("cx",ee+3).attr("cy",K+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${F.id} ${ie}`),p.append("line").attr("x1",ee+3).attr("y1",K+1).attr("x2",ee).attr("y2",K-5).attr("stroke","#fff").attr("class",`commit ${F.id} ${ie}`),p.append("line").attr("x1",ee-3).attr("y1",K+1).attr("x2",ee).attr("y2",K-5).attr("stroke","#fff").attr("class",`commit ${F.id} ${ie}`);else{const pe=p.append("circle");if(pe.attr("cx",ee),pe.attr("cy",K),pe.attr("r",F.type===ad.MERGE?9:10),pe.attr("class",`commit ${F.id} commit${H2[F.branch].index%XC}`),oe===ad.MERGE){const be=p.append("circle");be.attr("cx",ee),be.attr("cy",K),be.attr("r",6),be.attr("class",`commit ${ie} ${F.id} commit${H2[F.branch].index%XC}`)}oe===ad.REVERSE&&p.append("path").attr("d",`M ${ee-5},${K-5}L${ee+5},${K+5}M${ee-5},${K+5}L${ee+5},${K-5}`).attr("class",`commit ${ie} ${F.id} commit${H2[F.branch].index%XC}`)}}if(R0==="TB"?H7[F.id]={x:ee,y:j}:H7[F.id]={x:j,y:K},u){if(F.type!==ad.CHERRY_PICK&&(F.customId&&F.type===ad.MERGE||F.type!==ad.MERGE)&&d.showCommitLabel){const pe=v.append("g"),be=pe.insert("rect").attr("class","commit-label-bkg"),ae=pe.append("text").attr("x",b).attr("y",K+25).attr("class","commit-label").text(F.id);let ne=ae.node().getBBox();if(be.attr("x",j-ne.width/2-2).attr("y",K+13.5).attr("width",ne.width+2*2).attr("height",ne.height+2*2),R0==="TB"&&(be.attr("x",ee-(ne.width+4*4+5)).attr("y",K-12),ae.attr("x",ee-(ne.width+4*4)).attr("y",K+ne.height-12)),R0!=="TB"&&ae.attr("x",j-ne.width/2),d.rotateCommitLabel)if(R0==="TB")ae.attr("transform","rotate(-45, "+ee+", "+K+")"),be.attr("transform","rotate(-45, "+ee+", "+K+")");else{let se=-7.5-(ne.width+10)/25*9.5,de=10+ne.width/25*8.5;pe.attr("transform","translate("+se+", "+de+") rotate(-45, "+b+", "+K+")")}}if(F.tag){const pe=v.insert("polygon"),be=v.append("circle"),ae=v.append("text").attr("y",K-16).attr("class","tag-label").text(F.tag);let ne=ae.node().getBBox();ae.attr("x",j-ne.width/2);const se=ne.height/2,de=K-19.2;pe.attr("class","tag-label-bkg").attr("points",`
+ ${b-ne.width/2-4/2},${de+2}
+ ${b-ne.width/2-4/2},${de-2}
+ ${j-ne.width/2-4},${de-se-2}
+ ${j+ne.width/2+4},${de-se-2}
+ ${j+ne.width/2+4},${de+se+2}
+ ${j-ne.width/2-4},${de+se+2}`),be.attr("cx",b-ne.width/2+4/2).attr("cy",de).attr("r",1.5).attr("class","tag-hole"),R0==="TB"&&(pe.attr("class","tag-label-bkg").attr("points",`
+ ${ee},${b+2}
+ ${ee},${b-2}
+ ${ee+A},${b-se-2}
+ ${ee+A+ne.width+4},${b-se-2}
+ ${ee+A+ne.width+4},${b+se+2}
+ ${ee+A},${b+se+2}`).attr("transform","translate(12,12) rotate(45, "+ee+","+b+")"),be.attr("cx",ee+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+ee+","+b+")"),ae.attr("x",ee+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+ee+","+b+")"))}}b+=P+A,b>PR&&(PR=b)})},ktn=(i,s,u,d,p)=>{const b=(R0==="TB"?u.x_.branch===b,T=_=>_.seq>i.seq&&_.seqT(_)&&y(_))},BR=(i,s,u=0)=>{const d=i+Math.abs(i-s)/2;if(u>5)return d;if(cJ.every(b=>Math.abs(b-d)>=10))return cJ.push(d),d;const v=Math.abs(i-s);return BR(i,s-v/5,u+1)},Etn=(i,s,u,d)=>{const p=H7[s.id],v=H7[u.id],b=ktn(s,u,p,v,d);let y="",T="",_=0,A=0,P=H2[u.branch].index;u.type===ad.MERGE&&s.id!==u.parents[0]&&(P=H2[s.branch].index);let R;if(b){y="A 10 10, 0, 0, 0,",T="A 10 10, 0, 0, 1,",_=10,A=10;const F=p.yv.x&&(y="A 20 20, 0, 0, 0,",T="A 20 20, 0, 0, 1,",_=20,A=20,u.type===ad.MERGE&&s.id!==u.parents[0]?R=`M ${p.x} ${p.y} L ${p.x} ${v.y-_} ${T} ${p.x-A} ${v.y} L ${v.x} ${v.y}`:R=`M ${p.x} ${p.y} L ${v.x+_} ${p.y} ${y} ${v.x} ${p.y+A} L ${v.x} ${v.y}`),p.x===v.x&&(R=`M ${p.x} ${p.y} L ${v.x} ${v.y}`)):(p.yv.y&&(u.type===ad.MERGE&&s.id!==u.parents[0]?R=`M ${p.x} ${p.y} L ${v.x-_} ${p.y} ${y} ${v.x} ${p.y-A} L ${v.x} ${v.y}`:R=`M ${p.x} ${p.y} L ${p.x} ${v.y+_} ${T} ${p.x+A} ${v.y} L ${v.x} ${v.y}`),p.y===v.y&&(R=`M ${p.x} ${p.y} L ${v.x} ${v.y}`));i.append("path").attr("d",R).attr("class","arrow arrow"+P%XC)},Ttn=(i,s)=>{const u=i.append("g").attr("class","commit-arrows");Object.keys(s).forEach(d=>{const p=s[d];p.parents&&p.parents.length>0&&p.parents.forEach(v=>{Etn(u,s[v],p,s)})})},Ctn=(i,s)=>{const u=qt().gitGraph,d=i.append("g");s.forEach((p,v)=>{const b=v%XC,y=H2[p.name].pos,T=d.append("line");T.attr("x1",0),T.attr("y1",y),T.attr("x2",PR),T.attr("y2",y),T.attr("class","branch branch"+b),R0==="TB"&&(T.attr("y1",30),T.attr("x1",y),T.attr("y2",PR),T.attr("x2",y)),cJ.push(y);let _=p.name;const A=WUe(_),P=d.insert("rect"),F=d.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);F.node().appendChild(A);let j=A.getBBox();P.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-j.width-4-(u.rotateCommitLabel===!0?30:0)).attr("y",-j.height/2+8).attr("width",j.width+18).attr("height",j.height+4),F.attr("transform","translate("+(-j.width-14-(u.rotateCommitLabel===!0?30:0))+", "+(y-j.height/2-1)+")"),R0==="TB"&&(P.attr("x",y-j.width/2-10).attr("y",0),F.attr("transform","translate("+(y-j.width/2-5)+", 0)")),R0!=="TB"&&P.attr("transform","translate(-19, "+(y-j.height/2)+")")})},Stn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ttn,db:wtn,renderer:{draw:function(i,s,u,d){ytn();const p=qt(),v=p.gitGraph;Xe.debug("in gitgraph renderer",i+`
+`,"id:",s,u),NR=d.db.getCommits();const b=d.db.getBranchesAsObjArray();R0=d.db.getDirection();const y=Ir(`[id="${s}"]`);let T=0;b.forEach((_,A)=>{const P=WUe(_.name),R=y.append("g"),F=R.insert("g").attr("class","branchLabel"),j=F.insert("g").attr("class","label branch-label");j.node().appendChild(P);let K=P.getBBox();H2[_.name]={pos:T,index:A},T+=50+(v.rotateCommitLabel?40:0)+(R0==="TB"?K.width/2:0),j.remove(),F.remove(),R.remove()}),YUe(y,NR,!1),v.showBranches&&Ctn(y,b),Ttn(y,NR),YUe(y,NR,!0),Ao.insertTitle(y,"gitTitleText",v.titleTopMargin,d.db.getDiagramTitle()),e$e(void 0,y,v.diagramPadding,v.useMaxWidth??p.useMaxWidth)}},styles:i=>`
+ .commit-id,
+ .commit-msg,
+ .branch-label {
+ fill: lightgrey;
+ color: lightgrey;
+ font-family: 'trebuchet ms', verdana, arial, sans-serif;
+ font-family: var(--mermaid-font-family);
+ }
+ ${[0,1,2,3,4,5,6,7].map(s=>`
+ .branch-label${s} { fill: ${i["gitBranchLabel"+s]}; }
+ .commit${s} { stroke: ${i["git"+s]}; fill: ${i["git"+s]}; }
+ .commit-highlight${s} { stroke: ${i["gitInv"+s]}; fill: ${i["gitInv"+s]}; }
+ .label${s} { fill: ${i["git"+s]}; }
+ .arrow${s} { stroke: ${i["git"+s]}; }
+ `).join(`
+`)}
+
+ .branch {
+ stroke-width: 1;
+ stroke: ${i.lineColor};
+ stroke-dasharray: 2;
+ }
+ .commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};}
+ .commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; }
+ .tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};}
+ .tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; }
+ .tag-hole { fill: ${i.textColor}; }
+
+ .commit-merge {
+ stroke: ${i.primaryColor};
+ fill: ${i.primaryColor};
+ }
+ .commit-reverse {
+ stroke: ${i.primaryColor};
+ fill: ${i.primaryColor};
+ stroke-width: 3;
+ }
+ .commit-highlight-outer {
+ }
+ .commit-highlight-inner {
+ stroke: ${i.primaryColor};
+ fill: ${i.primaryColor};
+ }
+
+ .arrow { stroke-width: 8; stroke-linecap: round; fill: none}
+ .gitTitleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: ${i.textColor};
+ }
+`}},Symbol.toStringTag,{value:"Module"}));var Yme=function(){var i=function(W,xe,U,Fe){for(U=U||{},Fe=W.length;Fe--;U[W[Fe]]=xe);return U},s=[6,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,30,32,33,35,37],u=[1,25],d=[1,26],p=[1,27],v=[1,28],b=[1,29],y=[1,30],T=[1,31],_=[1,9],A=[1,10],P=[1,11],R=[1,12],F=[1,13],j=[1,14],K=[1,15],ee=[1,16],ie=[1,18],oe=[1,19],pe=[1,20],be=[1,21],ae=[1,22],ne=[1,24],se=[1,32],de={trace:function(){},yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,dateFormat:19,inclusiveEndDates:20,topAxis:21,axisFormat:22,tickInterval:23,excludes:24,includes:25,todayMarker:26,title:27,acc_title:28,acc_title_value:29,acc_descr:30,acc_descr_value:31,acc_descr_multiline_value:32,section:33,clickStatement:34,taskTxt:35,taskData:36,click:37,callbackname:38,callbackargs:39,href:40,clickStatementDebug:41,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",19:"dateFormat",20:"inclusiveEndDates",21:"topAxis",22:"axisFormat",23:"tickInterval",24:"excludes",25:"includes",26:"todayMarker",27:"title",28:"acc_title",29:"acc_title_value",30:"acc_descr",31:"acc_descr_value",32:"acc_descr_multiline_value",33:"section",35:"taskTxt",36:"taskData",37:"click",38:"callbackname",39:"callbackargs",40:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[34,2],[34,3],[34,3],[34,4],[34,3],[34,4],[34,2],[41,2],[41,3],[41,3],[41,4],[41,3],[41,4],[41,2]],performAction:function(xe,U,Fe,Pe,je,Ie,Se){var Ce=Ie.length-1;switch(je){case 1:return Ie[Ce-1];case 2:this.$=[];break;case 3:Ie[Ce-1].push(Ie[Ce]),this.$=Ie[Ce-1];break;case 4:case 5:this.$=Ie[Ce];break;case 6:case 7:this.$=[];break;case 8:Pe.setWeekday("monday");break;case 9:Pe.setWeekday("tuesday");break;case 10:Pe.setWeekday("wednesday");break;case 11:Pe.setWeekday("thursday");break;case 12:Pe.setWeekday("friday");break;case 13:Pe.setWeekday("saturday");break;case 14:Pe.setWeekday("sunday");break;case 15:Pe.setDateFormat(Ie[Ce].substr(11)),this.$=Ie[Ce].substr(11);break;case 16:Pe.enableInclusiveEndDates(),this.$=Ie[Ce].substr(18);break;case 17:Pe.TopAxis(),this.$=Ie[Ce].substr(8);break;case 18:Pe.setAxisFormat(Ie[Ce].substr(11)),this.$=Ie[Ce].substr(11);break;case 19:Pe.setTickInterval(Ie[Ce].substr(13)),this.$=Ie[Ce].substr(13);break;case 20:Pe.setExcludes(Ie[Ce].substr(9)),this.$=Ie[Ce].substr(9);break;case 21:Pe.setIncludes(Ie[Ce].substr(9)),this.$=Ie[Ce].substr(9);break;case 22:Pe.setTodayMarker(Ie[Ce].substr(12)),this.$=Ie[Ce].substr(12);break;case 24:Pe.setDiagramTitle(Ie[Ce].substr(6)),this.$=Ie[Ce].substr(6);break;case 25:this.$=Ie[Ce].trim(),Pe.setAccTitle(this.$);break;case 26:case 27:this.$=Ie[Ce].trim(),Pe.setAccDescription(this.$);break;case 28:Pe.addSection(Ie[Ce].substr(8)),this.$=Ie[Ce].substr(8);break;case 30:Pe.addTask(Ie[Ce-1],Ie[Ce]),this.$="task";break;case 31:this.$=Ie[Ce-1],Pe.setClickEvent(Ie[Ce-1],Ie[Ce],null);break;case 32:this.$=Ie[Ce-2],Pe.setClickEvent(Ie[Ce-2],Ie[Ce-1],Ie[Ce]);break;case 33:this.$=Ie[Ce-2],Pe.setClickEvent(Ie[Ce-2],Ie[Ce-1],null),Pe.setLink(Ie[Ce-2],Ie[Ce]);break;case 34:this.$=Ie[Ce-3],Pe.setClickEvent(Ie[Ce-3],Ie[Ce-2],Ie[Ce-1]),Pe.setLink(Ie[Ce-3],Ie[Ce]);break;case 35:this.$=Ie[Ce-2],Pe.setClickEvent(Ie[Ce-2],Ie[Ce],null),Pe.setLink(Ie[Ce-2],Ie[Ce-1]);break;case 36:this.$=Ie[Ce-3],Pe.setClickEvent(Ie[Ce-3],Ie[Ce-1],Ie[Ce]),Pe.setLink(Ie[Ce-3],Ie[Ce-2]);break;case 37:this.$=Ie[Ce-1],Pe.setLink(Ie[Ce-1],Ie[Ce]);break;case 38:case 44:this.$=Ie[Ce-1]+" "+Ie[Ce];break;case 39:case 40:case 42:this.$=Ie[Ce-2]+" "+Ie[Ce-1]+" "+Ie[Ce];break;case 41:case 43:this.$=Ie[Ce-3]+" "+Ie[Ce-2]+" "+Ie[Ce-1]+" "+Ie[Ce];break}},table:[{3:1,4:[1,2]},{1:[3]},i(s,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:u,13:d,14:p,15:v,16:b,17:y,18:T,19:_,20:A,21:P,22:R,23:F,24:j,25:K,26:ee,27:ie,28:oe,30:pe,32:be,33:ae,34:23,35:ne,37:se},i(s,[2,7],{1:[2,1]}),i(s,[2,3]),{9:33,11:17,12:u,13:d,14:p,15:v,16:b,17:y,18:T,19:_,20:A,21:P,22:R,23:F,24:j,25:K,26:ee,27:ie,28:oe,30:pe,32:be,33:ae,34:23,35:ne,37:se},i(s,[2,5]),i(s,[2,6]),i(s,[2,15]),i(s,[2,16]),i(s,[2,17]),i(s,[2,18]),i(s,[2,19]),i(s,[2,20]),i(s,[2,21]),i(s,[2,22]),i(s,[2,23]),i(s,[2,24]),{29:[1,34]},{31:[1,35]},i(s,[2,27]),i(s,[2,28]),i(s,[2,29]),{36:[1,36]},i(s,[2,8]),i(s,[2,9]),i(s,[2,10]),i(s,[2,11]),i(s,[2,12]),i(s,[2,13]),i(s,[2,14]),{38:[1,37],40:[1,38]},i(s,[2,4]),i(s,[2,25]),i(s,[2,26]),i(s,[2,30]),i(s,[2,31],{39:[1,39],40:[1,40]}),i(s,[2,37],{38:[1,41]}),i(s,[2,32],{40:[1,42]}),i(s,[2,33]),i(s,[2,35],{39:[1,43]}),i(s,[2,34]),i(s,[2,36])],defaultActions:{},parseError:function(xe,U){if(U.recoverable)this.trace(xe);else{var Fe=new Error(xe);throw Fe.hash=U,Fe}},parse:function(xe){var U=this,Fe=[0],Pe=[],je=[null],Ie=[],Se=this.table,Ce="",ke=0,Ke=0,Ft=2,Ne=1,gn=Ie.slice.call(arguments,1),_t=Object.create(this.lexer),Et={yy:{}};for(var Gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Gt)&&(Et.yy[Gt]=this.yy[Gt]);_t.setInput(xe,Et.yy),Et.yy.lexer=_t,Et.yy.parser=this,typeof _t.yylloc>"u"&&(_t.yylloc={});var ln=_t.yylloc;Ie.push(ln);var xt=_t.options&&_t.options.ranges;typeof Et.yy.parseError=="function"?this.parseError=Et.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pt(){var zs;return zs=Pe.pop()||_t.lex()||Ne,typeof zs!="number"&&(zs instanceof Array&&(Pe=zs,zs=Pe.pop()),zs=U.symbols_[zs]||zs),zs}for(var Qe,Dt,kt,On,ht={},zr,yt,ji,xi;;){if(Dt=Fe[Fe.length-1],this.defaultActions[Dt]?kt=this.defaultActions[Dt]:((Qe===null||typeof Qe>"u")&&(Qe=Pt()),kt=Se[Dt]&&Se[Dt][Qe]),typeof kt>"u"||!kt.length||!kt[0]){var Ma="";xi=[];for(zr in Se[Dt])this.terminals_[zr]&&zr>Ft&&xi.push("'"+this.terminals_[zr]+"'");_t.showPosition?Ma="Parse error on line "+(ke+1)+`:
+`+_t.showPosition()+`
+Expecting `+xi.join(", ")+", got '"+(this.terminals_[Qe]||Qe)+"'":Ma="Parse error on line "+(ke+1)+": Unexpected "+(Qe==Ne?"end of input":"'"+(this.terminals_[Qe]||Qe)+"'"),this.parseError(Ma,{text:_t.match,token:this.terminals_[Qe]||Qe,line:_t.yylineno,loc:ln,expected:xi})}if(kt[0]instanceof Array&&kt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Dt+", token: "+Qe);switch(kt[0]){case 1:Fe.push(Qe),je.push(_t.yytext),Ie.push(_t.yylloc),Fe.push(kt[1]),Qe=null,Ke=_t.yyleng,Ce=_t.yytext,ke=_t.yylineno,ln=_t.yylloc;break;case 2:if(yt=this.productions_[kt[1]][1],ht.$=je[je.length-yt],ht._$={first_line:Ie[Ie.length-(yt||1)].first_line,last_line:Ie[Ie.length-1].last_line,first_column:Ie[Ie.length-(yt||1)].first_column,last_column:Ie[Ie.length-1].last_column},xt&&(ht._$.range=[Ie[Ie.length-(yt||1)].range[0],Ie[Ie.length-1].range[1]]),On=this.performAction.apply(ht,[Ce,Ke,ke,Et.yy,kt[1],je,Ie].concat(gn)),typeof On<"u")return On;yt&&(Fe=Fe.slice(0,-1*yt*2),je=je.slice(0,-1*yt),Ie=Ie.slice(0,-1*yt)),Fe.push(this.productions_[kt[1]][0]),je.push(ht.$),Ie.push(ht._$),ji=Se[Fe[Fe.length-2]][Fe[Fe.length-1]],Fe.push(ji);break;case 3:return!0}}return!0}},X=function(){var W={EOF:1,parseError:function(U,Fe){if(this.yy.parser)this.yy.parser.parseError(U,Fe);else throw new Error(U)},setInput:function(xe,U){return this.yy=U||this.yy||{},this._input=xe,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 xe=this._input[0];this.yytext+=xe,this.yyleng++,this.offset++,this.match+=xe,this.matched+=xe;var U=xe.match(/(?:\r\n?|\n).*/g);return U?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),xe},unput:function(xe){var U=xe.length,Fe=xe.split(/(?:\r\n?|\n)/g);this._input=xe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-U),this.offset-=U;var Pe=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),Fe.length-1&&(this.yylineno-=Fe.length-1);var je=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:Fe?(Fe.length===Pe.length?this.yylloc.first_column:0)+Pe[Pe.length-Fe.length].length-Fe[0].length:this.yylloc.first_column-U},this.options.ranges&&(this.yylloc.range=[je[0],je[0]+this.yyleng-U]),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(xe){this.unput(this.match.slice(xe))},pastInput:function(){var xe=this.matched.substr(0,this.matched.length-this.match.length);return(xe.length>20?"...":"")+xe.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var xe=this.match;return xe.length<20&&(xe+=this._input.substr(0,20-xe.length)),(xe.substr(0,20)+(xe.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var xe=this.pastInput(),U=new Array(xe.length+1).join("-");return xe+this.upcomingInput()+`
+`+U+"^"},test_match:function(xe,U){var Fe,Pe,je;if(this.options.backtrack_lexer&&(je={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&&(je.yylloc.range=this.yylloc.range.slice(0))),Pe=xe[0].match(/(?:\r\n?|\n).*/g),Pe&&(this.yylineno+=Pe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Pe?Pe[Pe.length-1].length-Pe[Pe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+xe[0].length},this.yytext+=xe[0],this.match+=xe[0],this.matches=xe,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(xe[0].length),this.matched+=xe[0],Fe=this.performAction.call(this,this.yy,this,U,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Fe)return Fe;if(this._backtrack){for(var Ie in je)this[Ie]=je[Ie];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var xe,U,Fe,Pe;this._more||(this.yytext="",this.match="");for(var je=this._currentRules(),Ie=0;IeU[0].length)){if(U=Fe,Pe=Ie,this.options.backtrack_lexer){if(xe=this.test_match(Fe,je[Ie]),xe!==!1)return xe;if(this._backtrack){U=!1;continue}else return!1}else if(!this.options.flex)break}return U?(xe=this.test_match(U,je[Pe]),xe!==!1?xe:!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 U=this.next();return U||this.lex()},begin:function(U){this.conditionStack.push(U)},popState:function(){var U=this.conditionStack.length-1;return U>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(U){return U=this.conditionStack.length-1-Math.abs(U||0),U>=0?this.conditionStack[U]:"INITIAL"},pushState:function(U){this.begin(U)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(U,Fe,Pe,je){switch(Pe){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),28;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),30;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 40;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 38;case 21:this.popState();break;case 22:return 39;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 37;case 26:return 4;case 27:return 19;case 28:return 20;case 29:return 21;case 30:return 22;case 31:return 23;case 32:return 25;case 33:return 24;case 34:return 26;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return"date";case 43:return 27;case 44:return"accDescription";case 45:return 33;case 46:return 35;case 47:return 36;case 48:return":";case 49:return 6;case 50:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50],inclusive:!0}}};return W}();de.lexer=X;function ge(){this.yy={}}return ge.prototype=de,de.Parser=ge,new ge}();Yme.parser=Yme;const _tn=Yme;var XUe={exports:{}};(function(i,s){(function(u,d){i.exports=d()})(Ag,function(){var u="day";return function(d,p,v){var b=function(_){return _.add(4-_.isoWeekday(),u)},y=p.prototype;y.isoWeekYear=function(){return b(this).year()},y.isoWeek=function(_){if(!this.$utils().u(_))return this.add(7*(_-this.isoWeek()),u);var A,P,R,F,j=b(this),K=(A=this.isoWeekYear(),P=this.$u,R=(P?v.utc:v)().year(A).startOf("year"),F=4-R.isoWeekday(),R.isoWeekday()>4&&(F+=7),R.add(F,u));return j.diff(K,"week")+1},y.isoWeekday=function(_){return this.$utils().u(_)?this.day()||7:this.day(this.day()%7?_:_-7)};var T=y.startOf;y.startOf=function(_,A){var P=this.$utils(),R=!!P.u(A)||A;return P.p(_)==="isoweek"?R?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):T.bind(this)(_,A)}}})})(XUe);var Atn=XUe.exports;const Ltn=hC(Atn);var QUe={exports:{}};(function(i,s){(function(u,d){i.exports=d()})(Ag,function(){var u={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},d=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,p=/\d\d/,v=/\d\d?/,b=/\d*[^-_:/,()\s\d]+/,y={},T=function(K){return(K=+K)+(K>68?1900:2e3)},_=function(K){return function(ee){this[K]=+ee}},A=[/[+-]\d\d:?(\d\d)?|Z/,function(K){(this.zone||(this.zone={})).offset=function(ee){if(!ee||ee==="Z")return 0;var ie=ee.match(/([+-]|\d\d)/g),oe=60*ie[1]+(+ie[2]||0);return oe===0?0:ie[0]==="+"?-oe:oe}(K)}],P=function(K){var ee=y[K];return ee&&(ee.indexOf?ee:ee.s.concat(ee.f))},R=function(K,ee){var ie,oe=y.meridiem;if(oe){for(var pe=1;pe<=24;pe+=1)if(K.indexOf(oe(pe,0,ee))>-1){ie=pe>12;break}}else ie=K===(ee?"pm":"PM");return ie},F={A:[b,function(K){this.afternoon=R(K,!1)}],a:[b,function(K){this.afternoon=R(K,!0)}],S:[/\d/,function(K){this.milliseconds=100*+K}],SS:[p,function(K){this.milliseconds=10*+K}],SSS:[/\d{3}/,function(K){this.milliseconds=+K}],s:[v,_("seconds")],ss:[v,_("seconds")],m:[v,_("minutes")],mm:[v,_("minutes")],H:[v,_("hours")],h:[v,_("hours")],HH:[v,_("hours")],hh:[v,_("hours")],D:[v,_("day")],DD:[p,_("day")],Do:[b,function(K){var ee=y.ordinal,ie=K.match(/\d+/);if(this.day=ie[0],ee)for(var oe=1;oe<=31;oe+=1)ee(oe).replace(/\[|\]/g,"")===K&&(this.day=oe)}],M:[v,_("month")],MM:[p,_("month")],MMM:[b,function(K){var ee=P("months"),ie=(P("monthsShort")||ee.map(function(oe){return oe.slice(0,3)})).indexOf(K)+1;if(ie<1)throw new Error;this.month=ie%12||ie}],MMMM:[b,function(K){var ee=P("months").indexOf(K)+1;if(ee<1)throw new Error;this.month=ee%12||ee}],Y:[/[+-]?\d+/,_("year")],YY:[p,function(K){this.year=T(K)}],YYYY:[/\d{4}/,_("year")],Z:A,ZZ:A};function j(K){var ee,ie;ee=K,ie=y&&y.formats;for(var oe=(K=ee.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(X,ge,W){var xe=W&&W.toUpperCase();return ge||ie[W]||u[W]||ie[xe].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(U,Fe,Pe){return Fe||Pe.slice(1)})})).match(d),pe=oe.length,be=0;be-1)return new Date((Ie==="X"?1e3:1)*je);var Ce=j(Ie)(je),ke=Ce.year,Ke=Ce.month,Ft=Ce.day,Ne=Ce.hours,gn=Ce.minutes,_t=Ce.seconds,Et=Ce.milliseconds,Gt=Ce.zone,ln=new Date,xt=Ft||(ke||Ke?1:ln.getDate()),Pt=ke||ln.getFullYear(),Qe=0;ke&&!Ke||(Qe=Ke>0?Ke-1:ln.getMonth());var Dt=Ne||0,kt=gn||0,On=_t||0,ht=Et||0;return Gt?new Date(Date.UTC(Pt,Qe,xt,Dt,kt,On,ht+60*Gt.offset*1e3)):Se?new Date(Date.UTC(Pt,Qe,xt,Dt,kt,On,ht)):new Date(Pt,Qe,xt,Dt,kt,On,ht)}catch{return new Date("")}}(ae,de,ne),this.init(),xe&&xe!==!0&&(this.$L=this.locale(xe).$L),W&&ae!=this.format(de)&&(this.$d=new Date("")),y={}}else if(de instanceof Array)for(var U=de.length,Fe=1;Fe<=U;Fe+=1){se[1]=de[Fe-1];var Pe=ie.apply(this,se);if(Pe.isValid()){this.$d=Pe.$d,this.$L=Pe.$L,this.init();break}Fe===U&&(this.$d=new Date(""))}else pe.call(this,be)}}})})(QUe);var Mtn=QUe.exports;const Dtn=hC(Mtn);var JUe={exports:{}};(function(i,s){(function(u,d){i.exports=d()})(Ag,function(){return function(u,d){var p=d.prototype,v=p.format;p.format=function(b){var y=this,T=this.$locale();if(!this.isValid())return v.bind(this)(b);var _=this.$utils(),A=(b||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(P){switch(P){case"Q":return Math.ceil((y.$M+1)/3);case"Do":return T.ordinal(y.$D);case"gggg":return y.weekYear();case"GGGG":return y.isoWeekYear();case"wo":return T.ordinal(y.week(),"W");case"w":case"ww":return _.s(y.week(),P==="w"?1:2,"0");case"W":case"WW":return _.s(y.isoWeek(),P==="W"?1:2,"0");case"k":case"kk":return _.s(String(y.$H===0?24:y.$H),P==="k"?1:2,"0");case"X":return Math.floor(y.$d.getTime()/1e3);case"x":return y.$d.getTime();case"z":return"["+y.offsetName()+"]";case"zzz":return"["+y.offsetName("long")+"]";default:return P}});return v.bind(this)(A)}}})})(JUe);var Itn=JUe.exports;const Otn=hC(Itn);Lg.extend(Ltn),Lg.extend(Dtn),Lg.extend(Otn);let i5="",Xme="",Qme,Jme="",FR=[],RR=[],Zme={},eve=[],uJ=[],GD="",tve="";const ZUe=["active","done","crit","milestone"];let nve=[],jR=!1,rve=!1,ive="sunday",sve=0;const Ntn=function(){eve=[],uJ=[],GD="",nve=[],lJ=0,ove=void 0,hJ=void 0,m1=[],i5="",Xme="",tve="",Qme=void 0,Jme="",FR=[],RR=[],jR=!1,rve=!1,sve=0,Zme={},Pg(),ive="sunday"},Ptn=function(i){Xme=i},Btn=function(){return Xme},Ftn=function(i){Qme=i},Rtn=function(){return Qme},jtn=function(i){Jme=i},$tn=function(){return Jme},ztn=function(i){i5=i},qtn=function(){jR=!0},Htn=function(){return jR},Vtn=function(){rve=!0},Utn=function(){return rve},Gtn=function(i){tve=i},Ktn=function(){return tve},Wtn=function(){return i5},Ytn=function(i){FR=i.toLowerCase().split(/[\s,]+/)},Xtn=function(){return FR},Qtn=function(i){RR=i.toLowerCase().split(/[\s,]+/)},Jtn=function(){return RR},Ztn=function(){return Zme},enn=function(i){GD=i,eve.push(i)},tnn=function(){return eve},nnn=function(){let i=sGe();const s=10;let u=0;for(;!i&&u=6&&u.includes("weekends")||u.includes(i.format("dddd").toLowerCase())?!0:u.includes(i.format(s.trim()))},rnn=function(i){ive=i},inn=function(){return ive},tGe=function(i,s,u,d){if(!u.length||i.manualEndTime)return;let p;i.startTime instanceof Date?p=Lg(i.startTime):p=Lg(i.startTime,s,!0),p=p.add(1,"d");let v;i.endTime instanceof Date?v=Lg(i.endTime):v=Lg(i.endTime,s,!0);const[b,y]=snn(p,v,s,u,d);i.endTime=b.toDate(),i.renderEndTime=y},snn=function(i,s,u,d,p){let v=!1,b=null;for(;i<=s;)v||(b=s.toDate()),v=eGe(i,u,d,p),v&&(s=s.add(1,"d")),i=i.add(1,"d");return[s,b]},ave=function(i,s,u){u=u.trim();const p=/^after\s+(?[\d\w- ]+)/.exec(u);if(p!==null){let b=null;for(const T of p.groups.ids.split(" ")){let _=QC(T);_!==void 0&&(!b||_.endTime>b.endTime)&&(b=_)}if(b)return b.endTime;const y=new Date;return y.setHours(0,0,0,0),y}let v=Lg(u,s.trim(),!0);if(v.isValid())return v.toDate();{Xe.debug("Invalid date:"+u),Xe.debug("With date format:"+s.trim());const b=new Date(u);if(b===void 0||isNaN(b.getTime())||b.getFullYear()<-1e4||b.getFullYear()>1e4)throw new Error("Invalid date:"+u);return b}},nGe=function(i){const s=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(i.trim());return s!==null?[Number.parseFloat(s[1]),s[2]]:[NaN,"ms"]},rGe=function(i,s,u,d=!1){u=u.trim();const v=/^until\s+(?[\d\w- ]+)/.exec(u);if(v!==null){let A=null;for(const R of v.groups.ids.split(" ")){let F=QC(R);F!==void 0&&(!A||F.startTime{window.open(u,"_self")}),Zme[d]=u)}),aGe(i,"clickable")},aGe=function(i,s){i.split(",").forEach(function(u){let d=QC(u);d!==void 0&&d.classes.push(s)})},hnn=function(i,s,u){if(qt().securityLevel!=="loose"||s===void 0)return;let d=[];if(typeof u=="string"){d=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v{Ao.runFunc(s,...d)})},oGe=function(i,s){nve.push(function(){const u=document.querySelector(`[id="${i}"]`);u!==null&&u.addEventListener("click",function(){s()})},function(){const u=document.querySelector(`[id="${i}-text"]`);u!==null&&u.addEventListener("click",function(){s()})})},fnn={getConfig:()=>qt().gantt,clear:Ntn,setDateFormat:ztn,getDateFormat:Wtn,enableInclusiveEndDates:qtn,endDatesAreInclusive:Htn,enableTopAxis:Vtn,topAxisEnabled:Utn,setAxisFormat:Ptn,getAxisFormat:Btn,setTickInterval:Ftn,getTickInterval:Rtn,setTodayMarker:jtn,getTodayMarker:$tn,setAccTitle:Bg,getAccTitle:Cp,setDiagramTitle:cm,getDiagramTitle:Ap,setDisplayMode:Gtn,getDisplayMode:Ktn,setAccDescription:Sp,getAccDescription:_p,addSection:enn,getSections:tnn,getTasks:nnn,addTask:cnn,findTaskById:QC,addTaskOrg:unn,setIncludes:Ytn,getIncludes:Xtn,setExcludes:Qtn,getExcludes:Jtn,setClickEvent:function(i,s,u){i.split(",").forEach(function(d){hnn(d,s,u)}),aGe(i,"clickable")},setLink:lnn,getLinks:Ztn,bindFunctions:function(i){nve.forEach(function(s){s(i)})},parseDuration:nGe,isInvalidDate:eGe,setWeekday:rnn,getWeekday:inn};function cGe(i,s,u){let d=!0;for(;d;)d=!1,u.forEach(function(p){const v="^\\s*"+p+"\\s*$",b=new RegExp(v);i[0].match(b)&&(s[p]=!0,i.shift(1),d=!0)})}const dnn=function(){Xe.debug("Something is calling, setConf, remove the call")},uGe={monday:DF,tuesday:xFe,wednesday:kFe,thursday:yC,friday:EFe,saturday:TFe,sunday:MF},gnn=(i,s)=>{let u=[...i].map(()=>-1/0),d=[...i].sort((v,b)=>v.startTime-b.startTime||v.order-b.order),p=0;for(const v of d)for(let b=0;b=u[b]){u[b]=v.endTime,v.order=b+s,b>p&&(p=b);break}return p};let V7;const pnn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:_tn,db:fnn,renderer:{setConf:dnn,draw:function(i,s,u,d){const p=qt().gantt,v=qt().securityLevel;let b;v==="sandbox"&&(b=Ir("#i"+s));const y=Ir(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),T=v==="sandbox"?b.nodes()[0].contentDocument:document,_=T.getElementById(s);V7=_.parentElement.offsetWidth,V7===void 0&&(V7=1200),p.useWidth!==void 0&&(V7=p.useWidth);const A=d.db.getTasks();let P=[];for(const de of A)P.push(de.type);P=se(P);const R={};let F=2*p.topPadding;if(d.db.getDisplayMode()==="compact"||p.displayMode==="compact"){const de={};for(const ge of A)de[ge.section]===void 0?de[ge.section]=[ge]:de[ge.section].push(ge);let X=0;for(const ge of Object.keys(de)){const W=gnn(de[ge],X)+1;X+=W,F+=W*(p.barHeight+p.barGap),R[ge]=W}}else{F+=A.length*(p.barHeight+p.barGap);for(const de of P)R[de]=A.filter(X=>X.type===de).length}_.setAttribute("viewBox","0 0 "+V7+" "+F);const j=y.select(`[id="${s}"]`),K=fNt().domain([WAt(A,function(de){return de.startTime}),KAt(A,function(de){return de.endTime})]).rangeRound([0,V7-p.leftPadding-p.rightPadding]);function ee(de,X){const ge=de.startTime,W=X.startTime;let xe=0;return ge>W?xe=1:geke.order))].map(ke=>de.find(Ke=>Ke.order===ke));j.append("g").selectAll("rect").data(je).enter().append("rect").attr("x",0).attr("y",function(ke,Ke){return Ke=ke.order,Ke*X+ge-2}).attr("width",function(){return Fe-p.rightPadding/2}).attr("height",X).attr("class",function(ke){for(const[Ke,Ft]of P.entries())if(ke.type===Ft)return"section section"+Ke%p.numberSectionStyles;return"section section0"});const Ie=j.append("g").selectAll("rect").data(de).enter(),Se=d.db.getLinks();if(Ie.append("rect").attr("id",function(ke){return ke.id}).attr("rx",3).attr("ry",3).attr("x",function(ke){return ke.milestone?K(ke.startTime)+W+.5*(K(ke.endTime)-K(ke.startTime))-.5*xe:K(ke.startTime)+W}).attr("y",function(ke,Ke){return Ke=ke.order,Ke*X+ge}).attr("width",function(ke){return ke.milestone?xe:K(ke.renderEndTime||ke.endTime)-K(ke.startTime)}).attr("height",xe).attr("transform-origin",function(ke,Ke){return Ke=ke.order,(K(ke.startTime)+W+.5*(K(ke.endTime)-K(ke.startTime))).toString()+"px "+(Ke*X+ge+.5*xe).toString()+"px"}).attr("class",function(ke){const Ke="task";let Ft="";ke.classes.length>0&&(Ft=ke.classes.join(" "));let Ne=0;for(const[_t,Et]of P.entries())ke.type===Et&&(Ne=_t%p.numberSectionStyles);let gn="";return ke.active?ke.crit?gn+=" activeCrit":gn=" active":ke.done?ke.crit?gn=" doneCrit":gn=" done":ke.crit&&(gn+=" crit"),gn.length===0&&(gn=" task"),ke.milestone&&(gn=" milestone "+gn),gn+=Ne,gn+=" "+Ft,Ke+gn}),Ie.append("text").attr("id",function(ke){return ke.id+"-text"}).text(function(ke){return ke.task}).attr("font-size",p.fontSize).attr("x",function(ke){let Ke=K(ke.startTime),Ft=K(ke.renderEndTime||ke.endTime);ke.milestone&&(Ke+=.5*(K(ke.endTime)-K(ke.startTime))-.5*xe),ke.milestone&&(Ft=Ke+xe);const Ne=this.getBBox().width;return Ne>Ft-Ke?Ft+Ne+1.5*p.leftPadding>Fe?Ke+W-5:Ft+W+5:(Ft-Ke)/2+Ke+W}).attr("y",function(ke,Ke){return Ke=ke.order,Ke*X+p.barHeight/2+(p.fontSize/2-2)+ge}).attr("text-height",xe).attr("class",function(ke){const Ke=K(ke.startTime);let Ft=K(ke.endTime);ke.milestone&&(Ft=Ke+xe);const Ne=this.getBBox().width;let gn="";ke.classes.length>0&&(gn=ke.classes.join(" "));let _t=0;for(const[Gt,ln]of P.entries())ke.type===ln&&(_t=Gt%p.numberSectionStyles);let Et="";return ke.active&&(ke.crit?Et="activeCritText"+_t:Et="activeText"+_t),ke.done?ke.crit?Et=Et+" doneCritText"+_t:Et=Et+" doneText"+_t:ke.crit&&(Et=Et+" critText"+_t),ke.milestone&&(Et+=" milestoneText"),Ne>Ft-Ke?Ft+Ne+1.5*p.leftPadding>Fe?gn+" taskTextOutsideLeft taskTextOutside"+_t+" "+Et:gn+" taskTextOutsideRight taskTextOutside"+_t+" "+Et+" width-"+Ne:gn+" taskText taskText"+_t+" "+Et+" width-"+Ne}),qt().securityLevel==="sandbox"){let ke;ke=Ir("#i"+s);const Ke=ke.nodes()[0].contentDocument;Ie.filter(function(Ft){return Se[Ft.id]!==void 0}).each(function(Ft){var Ne=Ke.querySelector("#"+Ft.id),gn=Ke.querySelector("#"+Ft.id+"-text");const _t=Ne.parentNode;var Et=Ke.createElement("a");Et.setAttribute("xlink:href",Se[Ft.id]),Et.setAttribute("target","_top"),_t.appendChild(Et),Et.appendChild(Ne),Et.appendChild(gn)})}}function pe(de,X,ge,W,xe,U,Fe,Pe){if(Fe.length===0&&Pe.length===0)return;let je,Ie;for(const{startTime:Ne,endTime:gn}of U)(je===void 0||NeIe)&&(Ie=gn);if(!je||!Ie)return;if(Lg(Ie).diff(Lg(je),"year")>5){Xe.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}const Se=d.db.getDateFormat(),Ce=[];let ke=null,Ke=Lg(je);for(;Ke.valueOf()<=Ie;)d.db.isInvalidDate(Ke,Se,Fe,Pe)?ke?ke.end=Ke:ke={start:Ke,end:Ke}:ke&&(Ce.push(ke),ke=null),Ke=Ke.add(1,"d");j.append("g").selectAll("rect").data(Ce).enter().append("rect").attr("id",function(Ne){return"exclude-"+Ne.start.format("YYYY-MM-DD")}).attr("x",function(Ne){return K(Ne.start)+ge}).attr("y",p.gridLineStartPadding).attr("width",function(Ne){const gn=Ne.end.add(1,"day");return K(gn)-K(Ne.start)}).attr("height",xe-X-p.gridLineStartPadding).attr("transform-origin",function(Ne,gn){return(K(Ne.start)+ge+.5*(K(Ne.end)-K(Ne.start))).toString()+"px "+(gn*de+.5*xe).toString()+"px"}).attr("class","exclude-range")}function be(de,X,ge,W){let xe=rLt(K).tickSize(-W+X+p.gridLineStartPadding).tickFormat(sX(d.db.getAxisFormat()||p.axisFormat||"%Y-%m-%d"));const Fe=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(d.db.getTickInterval()||p.tickInterval);if(Fe!==null){const Pe=Fe[1],je=Fe[2],Ie=d.db.getWeekday()||p.weekday;switch(je){case"millisecond":xe.ticks(aD.every(Pe));break;case"second":xe.ticks(b9.every(Pe));break;case"minute":xe.ticks(AF.every(Pe));break;case"hour":xe.ticks(LF.every(Pe));break;case"day":xe.ticks(vC.every(Pe));break;case"week":xe.ticks(uGe[Ie].every(Pe));break;case"month":xe.ticks(IF.every(Pe));break}}if(j.append("g").attr("class","grid").attr("transform","translate("+de+", "+(W-50)+")").call(xe).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),d.db.topAxisEnabled()||p.topAxis){let Pe=nLt(K).tickSize(-W+X+p.gridLineStartPadding).tickFormat(sX(d.db.getAxisFormat()||p.axisFormat||"%Y-%m-%d"));if(Fe!==null){const je=Fe[1],Ie=Fe[2],Se=d.db.getWeekday()||p.weekday;switch(Ie){case"millisecond":Pe.ticks(aD.every(je));break;case"second":Pe.ticks(b9.every(je));break;case"minute":Pe.ticks(AF.every(je));break;case"hour":Pe.ticks(LF.every(je));break;case"day":Pe.ticks(vC.every(je));break;case"week":Pe.ticks(uGe[Se].every(je));break;case"month":Pe.ticks(IF.every(je));break}}j.append("g").attr("class","grid").attr("transform","translate("+de+", "+X+")").call(Pe).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function ae(de,X){let ge=0;const W=Object.keys(R).map(xe=>[xe,R[xe]]);j.append("g").selectAll("text").data(W).enter().append(function(xe){const U=xe[0].split(ci.lineBreakRegex),Fe=-(U.length-1)/2,Pe=T.createElementNS("http://www.w3.org/2000/svg","text");Pe.setAttribute("dy",Fe+"em");for(const[je,Ie]of U.entries()){const Se=T.createElementNS("http://www.w3.org/2000/svg","tspan");Se.setAttribute("alignment-baseline","central"),Se.setAttribute("x","10"),je>0&&Se.setAttribute("dy","1em"),Se.textContent=Ie,Pe.appendChild(Se)}return Pe}).attr("x",10).attr("y",function(xe,U){if(U>0)for(let Fe=0;Fe`
+ .mermaid-main-font {
+ font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
+ }
+
+ .exclude-range {
+ fill: ${i.excludeBkgColor};
+ }
+
+ .section {
+ stroke: none;
+ opacity: 0.2;
+ }
+
+ .section0 {
+ fill: ${i.sectionBkgColor};
+ }
+
+ .section2 {
+ fill: ${i.sectionBkgColor2};
+ }
+
+ .section1,
+ .section3 {
+ fill: ${i.altSectionBkgColor};
+ opacity: 0.2;
+ }
+
+ .sectionTitle0 {
+ fill: ${i.titleColor};
+ }
+
+ .sectionTitle1 {
+ fill: ${i.titleColor};
+ }
+
+ .sectionTitle2 {
+ fill: ${i.titleColor};
+ }
+
+ .sectionTitle3 {
+ fill: ${i.titleColor};
+ }
+
+ .sectionTitle {
+ text-anchor: start;
+ font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
+ }
+
+
+ /* Grid and axis */
+
+ .grid .tick {
+ stroke: ${i.gridColor};
+ opacity: 0.8;
+ shape-rendering: crispEdges;
+ }
+
+ .grid .tick text {
+ font-family: ${i.fontFamily};
+ fill: ${i.textColor};
+ }
+
+ .grid path {
+ stroke-width: 0;
+ }
+
+
+ /* Today line */
+
+ .today {
+ fill: none;
+ stroke: ${i.todayLineColor};
+ stroke-width: 2px;
+ }
+
+
+ /* Task styling */
+
+ /* Default task */
+
+ .task {
+ stroke-width: 2;
+ }
+
+ .taskText {
+ text-anchor: middle;
+ font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
+ }
+
+ .taskTextOutsideRight {
+ fill: ${i.taskTextDarkColor};
+ text-anchor: start;
+ font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
+ }
+
+ .taskTextOutsideLeft {
+ fill: ${i.taskTextDarkColor};
+ text-anchor: end;
+ }
+
+
+ /* Special case clickable */
+
+ .task.clickable {
+ cursor: pointer;
+ }
+
+ .taskText.clickable {
+ cursor: pointer;
+ fill: ${i.taskTextClickableColor} !important;
+ font-weight: bold;
+ }
+
+ .taskTextOutsideLeft.clickable {
+ cursor: pointer;
+ fill: ${i.taskTextClickableColor} !important;
+ font-weight: bold;
+ }
+
+ .taskTextOutsideRight.clickable {
+ cursor: pointer;
+ fill: ${i.taskTextClickableColor} !important;
+ font-weight: bold;
+ }
+
+
+ /* Specific task settings for the sections*/
+
+ .taskText0,
+ .taskText1,
+ .taskText2,
+ .taskText3 {
+ fill: ${i.taskTextColor};
+ }
+
+ .task0,
+ .task1,
+ .task2,
+ .task3 {
+ fill: ${i.taskBkgColor};
+ stroke: ${i.taskBorderColor};
+ }
+
+ .taskTextOutside0,
+ .taskTextOutside2
+ {
+ fill: ${i.taskTextOutsideColor};
+ }
+
+ .taskTextOutside1,
+ .taskTextOutside3 {
+ fill: ${i.taskTextOutsideColor};
+ }
+
+
+ /* Active task */
+
+ .active0,
+ .active1,
+ .active2,
+ .active3 {
+ fill: ${i.activeTaskBkgColor};
+ stroke: ${i.activeTaskBorderColor};
+ }
+
+ .activeText0,
+ .activeText1,
+ .activeText2,
+ .activeText3 {
+ fill: ${i.taskTextDarkColor} !important;
+ }
+
+
+ /* Completed task */
+
+ .done0,
+ .done1,
+ .done2,
+ .done3 {
+ stroke: ${i.doneTaskBorderColor};
+ fill: ${i.doneTaskBkgColor};
+ stroke-width: 2;
+ }
+
+ .doneText0,
+ .doneText1,
+ .doneText2,
+ .doneText3 {
+ fill: ${i.taskTextDarkColor} !important;
+ }
+
+
+ /* Tasks on the critical line */
+
+ .crit0,
+ .crit1,
+ .crit2,
+ .crit3 {
+ stroke: ${i.critBorderColor};
+ fill: ${i.critBkgColor};
+ stroke-width: 2;
+ }
+
+ .activeCrit0,
+ .activeCrit1,
+ .activeCrit2,
+ .activeCrit3 {
+ stroke: ${i.critBorderColor};
+ fill: ${i.activeTaskBkgColor};
+ stroke-width: 2;
+ }
+
+ .doneCrit0,
+ .doneCrit1,
+ .doneCrit2,
+ .doneCrit3 {
+ stroke: ${i.critBorderColor};
+ fill: ${i.doneTaskBkgColor};
+ stroke-width: 2;
+ cursor: pointer;
+ shape-rendering: crispEdges;
+ }
+
+ .milestone {
+ transform: rotate(45deg) scale(0.8,0.8);
+ }
+
+ .milestoneText {
+ font-style: italic;
+ }
+ .doneCritText0,
+ .doneCritText1,
+ .doneCritText2,
+ .doneCritText3 {
+ fill: ${i.taskTextDarkColor} !important;
+ }
+
+ .activeCritText0,
+ .activeCritText1,
+ .activeCritText2,
+ .activeCritText3 {
+ fill: ${i.taskTextDarkColor} !important;
+ }
+
+ .titleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: ${i.titleColor||i.textColor};
+ font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
+ }
+`}},Symbol.toStringTag,{value:"Module"}));var cve=function(){var i=function(v,b,y,T){for(y=y||{},T=v.length;T--;y[v[T]]=b);return y},s=[6,9,10],u={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(b,y,T,_,A,P,R){switch(P.length-1,A){case 1:return _;case 4:break;case 6:_.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},i(s,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(s,[2,3]),i(s,[2,4]),i(s,[2,5]),i(s,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,y){if(y.recoverable)this.trace(b);else{var T=new Error(b);throw T.hash=y,T}},parse:function(b){var y=this,T=[0],_=[],A=[null],P=[],R=this.table,F="",j=0,K=0,ee=2,ie=1,oe=P.slice.call(arguments,1),pe=Object.create(this.lexer),be={yy:{}};for(var ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ae)&&(be.yy[ae]=this.yy[ae]);pe.setInput(b,be.yy),be.yy.lexer=pe,be.yy.parser=this,typeof pe.yylloc>"u"&&(pe.yylloc={});var ne=pe.yylloc;P.push(ne);var se=pe.options&&pe.options.ranges;typeof be.yy.parseError=="function"?this.parseError=be.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function de(){var Ce;return Ce=_.pop()||pe.lex()||ie,typeof Ce!="number"&&(Ce instanceof Array&&(_=Ce,Ce=_.pop()),Ce=y.symbols_[Ce]||Ce),Ce}for(var X,ge,W,xe,U={},Fe,Pe,je,Ie;;){if(ge=T[T.length-1],this.defaultActions[ge]?W=this.defaultActions[ge]:((X===null||typeof X>"u")&&(X=de()),W=R[ge]&&R[ge][X]),typeof W>"u"||!W.length||!W[0]){var Se="";Ie=[];for(Fe in R[ge])this.terminals_[Fe]&&Fe>ee&&Ie.push("'"+this.terminals_[Fe]+"'");pe.showPosition?Se="Parse error on line "+(j+1)+`:
+`+pe.showPosition()+`
+Expecting `+Ie.join(", ")+", got '"+(this.terminals_[X]||X)+"'":Se="Parse error on line "+(j+1)+": Unexpected "+(X==ie?"end of input":"'"+(this.terminals_[X]||X)+"'"),this.parseError(Se,{text:pe.match,token:this.terminals_[X]||X,line:pe.yylineno,loc:ne,expected:Ie})}if(W[0]instanceof Array&&W.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ge+", token: "+X);switch(W[0]){case 1:T.push(X),A.push(pe.yytext),P.push(pe.yylloc),T.push(W[1]),X=null,K=pe.yyleng,F=pe.yytext,j=pe.yylineno,ne=pe.yylloc;break;case 2:if(Pe=this.productions_[W[1]][1],U.$=A[A.length-Pe],U._$={first_line:P[P.length-(Pe||1)].first_line,last_line:P[P.length-1].last_line,first_column:P[P.length-(Pe||1)].first_column,last_column:P[P.length-1].last_column},se&&(U._$.range=[P[P.length-(Pe||1)].range[0],P[P.length-1].range[1]]),xe=this.performAction.apply(U,[F,K,j,be.yy,W[1],A,P].concat(oe)),typeof xe<"u")return xe;Pe&&(T=T.slice(0,-1*Pe*2),A=A.slice(0,-1*Pe),P=P.slice(0,-1*Pe)),T.push(this.productions_[W[1]][0]),A.push(U.$),P.push(U._$),je=R[T[T.length-2]][T[T.length-1]],T.push(je);break;case 3:return!0}}return!0}},d=function(){var v={EOF:1,parseError:function(y,T){if(this.yy.parser)this.yy.parser.parseError(y,T);else throw new Error(y)},setInput:function(b,y){return this.yy=y||this.yy||{},this._input=b,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 b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var y=b.match(/(?:\r\n?|\n).*/g);return y?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},unput:function(b){var y=b.length,T=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-y),this.offset-=y;var _=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),T.length-1&&(this.yylineno-=T.length-1);var A=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:T?(T.length===_.length?this.yylloc.first_column:0)+_[_.length-T.length].length-T[0].length:this.yylloc.first_column-y},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-y]),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(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var b=this.pastInput(),y=new Array(b.length+1).join("-");return b+this.upcomingInput()+`
+`+y+"^"},test_match:function(b,y){var T,_,A;if(this.options.backtrack_lexer&&(A={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&&(A.yylloc.range=this.yylloc.range.slice(0))),_=b[0].match(/(?:\r\n?|\n).*/g),_&&(this.yylineno+=_.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:_?_[_.length-1].length-_[_.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,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(b[0].length),this.matched+=b[0],T=this.performAction.call(this,this.yy,this,y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),T)return T;if(this._backtrack){for(var P in A)this[P]=A[P];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,y,T,_;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),P=0;Py[0].length)){if(y=T,_=P,this.options.backtrack_lexer){if(b=this.test_match(T,A[P]),b!==!1)return b;if(this._backtrack){y=!1;continue}else return!1}else if(!this.options.flex)break}return y?(b=this.test_match(y,A[_]),b!==!1?b:!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 y=this.next();return y||this.lex()},begin:function(y){this.conditionStack.push(y)},popState:function(){var y=this.conditionStack.length-1;return y>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(y){return y=this.conditionStack.length-1-Math.abs(y||0),y>=0?this.conditionStack[y]:"INITIAL"},pushState:function(y){this.begin(y)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(y,T,_,A){switch(_){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};return v}();u.lexer=d;function p(){this.yy={}}return p.prototype=u,u.Parser=p,new p}();cve.parser=cve;const bnn=cve,lGe={info:!1};let uve=lGe.info;const mnn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:bnn,db:{clear:()=>{uve=lGe.info},setInfo:i=>{uve=i},getInfo:()=>uve},renderer:{draw:(i,s,u)=>{Xe.debug(`rendering info diagram
+`+i);const d=rR(s);Ng(d,100,400,!0),d.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${u}`)}}}},Symbol.toStringTag,{value:"Module"}));var lve=function(){var i=function(pe,be,ae,ne){for(ae=ae||{},ne=pe.length;ne--;ae[pe[ne]]=be);return ae},s=[1,3],u=[1,4],d=[1,5],p=[1,6],v=[1,10,12,14,16,18,19,20,21,22],b=[2,4],y=[1,5,10,12,14,16,18,19,20,21,22],T=[20,21,22],_=[2,7],A=[1,12],P=[1,13],R=[1,14],F=[1,15],j=[1,16],K=[1,17],ee={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",10:"txt",11:"value",12:"title",13:"title_value",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"section",20:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(be,ae,ne,se,de,X,ge){var W=X.length-1;switch(de){case 3:se.setShowData(!0);break;case 6:this.$=X[W-1];break;case 8:se.addSection(X[W-1],se.cleanupValue(X[W]));break;case 9:this.$=X[W].trim(),se.setDiagramTitle(this.$);break;case 10:this.$=X[W].trim(),se.setAccTitle(this.$);break;case 11:case 12:this.$=X[W].trim(),se.setAccDescription(this.$);break;case 13:se.addSection(X[W].substr(8)),this.$=X[W].substr(8);break}},table:[{3:1,4:2,5:s,20:u,21:d,22:p},{1:[3]},{3:7,4:2,5:s,20:u,21:d,22:p},i(v,b,{6:8,7:[1,9]}),i(y,[2,14]),i(y,[2,15]),i(y,[2,16]),{1:[2,1]},i(T,_,{8:10,9:11,1:[2,2],10:A,12:P,14:R,16:F,18:j,19:K}),i(v,b,{6:18}),i(v,[2,5]),{4:19,20:u,21:d,22:p},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},i(T,[2,12]),i(T,[2,13]),i(T,_,{8:10,9:11,1:[2,3],10:A,12:P,14:R,16:F,18:j,19:K}),i(v,[2,6]),i(T,[2,8]),i(T,[2,9]),i(T,[2,10]),i(T,[2,11])],defaultActions:{7:[2,1]},parseError:function(be,ae){if(ae.recoverable)this.trace(be);else{var ne=new Error(be);throw ne.hash=ae,ne}},parse:function(be){var ae=this,ne=[0],se=[],de=[null],X=[],ge=this.table,W="",xe=0,U=0,Fe=2,Pe=1,je=X.slice.call(arguments,1),Ie=Object.create(this.lexer),Se={yy:{}};for(var Ce in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ce)&&(Se.yy[Ce]=this.yy[Ce]);Ie.setInput(be,Se.yy),Se.yy.lexer=Ie,Se.yy.parser=this,typeof Ie.yylloc>"u"&&(Ie.yylloc={});var ke=Ie.yylloc;X.push(ke);var Ke=Ie.options&&Ie.options.ranges;typeof Se.yy.parseError=="function"?this.parseError=Se.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ft(){var kt;return kt=se.pop()||Ie.lex()||Pe,typeof kt!="number"&&(kt instanceof Array&&(se=kt,kt=se.pop()),kt=ae.symbols_[kt]||kt),kt}for(var Ne,gn,_t,Et,Gt={},ln,xt,Pt,Qe;;){if(gn=ne[ne.length-1],this.defaultActions[gn]?_t=this.defaultActions[gn]:((Ne===null||typeof Ne>"u")&&(Ne=Ft()),_t=ge[gn]&&ge[gn][Ne]),typeof _t>"u"||!_t.length||!_t[0]){var Dt="";Qe=[];for(ln in ge[gn])this.terminals_[ln]&&ln>Fe&&Qe.push("'"+this.terminals_[ln]+"'");Ie.showPosition?Dt="Parse error on line "+(xe+1)+`:
+`+Ie.showPosition()+`
+Expecting `+Qe.join(", ")+", got '"+(this.terminals_[Ne]||Ne)+"'":Dt="Parse error on line "+(xe+1)+": Unexpected "+(Ne==Pe?"end of input":"'"+(this.terminals_[Ne]||Ne)+"'"),this.parseError(Dt,{text:Ie.match,token:this.terminals_[Ne]||Ne,line:Ie.yylineno,loc:ke,expected:Qe})}if(_t[0]instanceof Array&&_t.length>1)throw new Error("Parse Error: multiple actions possible at state: "+gn+", token: "+Ne);switch(_t[0]){case 1:ne.push(Ne),de.push(Ie.yytext),X.push(Ie.yylloc),ne.push(_t[1]),Ne=null,U=Ie.yyleng,W=Ie.yytext,xe=Ie.yylineno,ke=Ie.yylloc;break;case 2:if(xt=this.productions_[_t[1]][1],Gt.$=de[de.length-xt],Gt._$={first_line:X[X.length-(xt||1)].first_line,last_line:X[X.length-1].last_line,first_column:X[X.length-(xt||1)].first_column,last_column:X[X.length-1].last_column},Ke&&(Gt._$.range=[X[X.length-(xt||1)].range[0],X[X.length-1].range[1]]),Et=this.performAction.apply(Gt,[W,U,xe,Se.yy,_t[1],de,X].concat(je)),typeof Et<"u")return Et;xt&&(ne=ne.slice(0,-1*xt*2),de=de.slice(0,-1*xt),X=X.slice(0,-1*xt)),ne.push(this.productions_[_t[1]][0]),de.push(Gt.$),X.push(Gt._$),Pt=ge[ne[ne.length-2]][ne[ne.length-1]],ne.push(Pt);break;case 3:return!0}}return!0}},ie=function(){var pe={EOF:1,parseError:function(ae,ne){if(this.yy.parser)this.yy.parser.parseError(ae,ne);else throw new Error(ae)},setInput:function(be,ae){return this.yy=ae||this.yy||{},this._input=be,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 be=this._input[0];this.yytext+=be,this.yyleng++,this.offset++,this.match+=be,this.matched+=be;var ae=be.match(/(?:\r\n?|\n).*/g);return ae?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),be},unput:function(be){var ae=be.length,ne=be.split(/(?:\r\n?|\n)/g);this._input=be+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ae),this.offset-=ae;var se=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),ne.length-1&&(this.yylineno-=ne.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:ne?(ne.length===se.length?this.yylloc.first_column:0)+se[se.length-ne.length].length-ne[0].length:this.yylloc.first_column-ae},this.options.ranges&&(this.yylloc.range=[de[0],de[0]+this.yyleng-ae]),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(be){this.unput(this.match.slice(be))},pastInput:function(){var be=this.matched.substr(0,this.matched.length-this.match.length);return(be.length>20?"...":"")+be.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var be=this.match;return be.length<20&&(be+=this._input.substr(0,20-be.length)),(be.substr(0,20)+(be.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var be=this.pastInput(),ae=new Array(be.length+1).join("-");return be+this.upcomingInput()+`
+`+ae+"^"},test_match:function(be,ae){var ne,se,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))),se=be[0].match(/(?:\r\n?|\n).*/g),se&&(this.yylineno+=se.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:se?se[se.length-1].length-se[se.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+be[0].length},this.yytext+=be[0],this.match+=be[0],this.matches=be,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(be[0].length),this.matched+=be[0],ne=this.performAction.call(this,this.yy,this,ae,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ne)return ne;if(this._backtrack){for(var X in de)this[X]=de[X];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var be,ae,ne,se;this._more||(this.yytext="",this.match="");for(var de=this._currentRules(),X=0;Xae[0].length)){if(ae=ne,se=X,this.options.backtrack_lexer){if(be=this.test_match(ne,de[X]),be!==!1)return be;if(this._backtrack){ae=!1;continue}else return!1}else if(!this.options.flex)break}return ae?(be=this.test_match(ae,de[se]),be!==!1?be:!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 ae=this.next();return ae||this.lex()},begin:function(ae){this.conditionStack.push(ae)},popState:function(){var ae=this.conditionStack.length-1;return ae>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(ae){return ae=this.conditionStack.length-1-Math.abs(ae||0),ae>=0?this.conditionStack[ae]:"INITIAL"},pushState:function(ae){this.begin(ae)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ae,ne,se,de){switch(se){case 0:break;case 1:break;case 2:return 20;case 3:break;case 4:break;case 5:return this.begin("title"),12;case 6:return this.popState(),"title_value";case 7:return this.begin("acc_title"),14;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),16;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:this.begin("string");break;case 15:this.popState();break;case 16:return"txt";case 17:return 5;case 18:return 7;case 19:return"value";case 20:return 22}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[6],inclusive:!1},string:{rules:[15,16],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,7,9,11,14,17,18,19,20],inclusive:!0}}};return pe}();ee.lexer=ie;function oe(){this.yy={}}return oe.prototype=ee,ee.Parser=oe,new oe}();lve.parser=lve;const vnn=lve,hGe=sh.pie,fJ={sections:{},showData:!1,config:hGe};let dJ=fJ.sections,hve=fJ.showData;const wnn=structuredClone(hGe),ynn={getConfig:()=>structuredClone(wnn),clear:()=>{dJ=structuredClone(fJ.sections),hve=fJ.showData,Pg()},setDiagramTitle:cm,getDiagramTitle:Ap,setAccTitle:Bg,getAccTitle:Cp,setAccDescription:Sp,getAccDescription:_p,addSection:(i,s)=>{i=Yf(i,qt()),dJ[i]===void 0&&(dJ[i]=s,Xe.debug(`added new section: ${i}, with value: ${s}`))},getSections:()=>dJ,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{hve=i},getShowData:()=>hve},xnn=i=>`
+ .pieCircle{
+ stroke: ${i.pieStrokeColor};
+ stroke-width : ${i.pieStrokeWidth};
+ opacity : ${i.pieOpacity};
+ }
+ .pieOuterCircle{
+ stroke: ${i.pieOuterStrokeColor};
+ stroke-width: ${i.pieOuterStrokeWidth};
+ fill: none;
+ }
+ .pieTitleText {
+ text-anchor: middle;
+ font-size: ${i.pieTitleTextSize};
+ fill: ${i.pieTitleTextColor};
+ font-family: ${i.fontFamily};
+ }
+ .slice {
+ font-family: ${i.fontFamily};
+ fill: ${i.pieSectionTextColor};
+ font-size:${i.pieSectionTextSize};
+ // fill: white;
+ }
+ .legend text {
+ fill: ${i.pieLegendTextColor};
+ font-family: ${i.fontFamily};
+ font-size: ${i.pieLegendTextSize};
+ }
+`,knn=i=>{const s=Object.entries(i).map(d=>({label:d[0],value:d[1]})).sort((d,p)=>p.value-d.value);return SNt().value(d=>d.value)(s)},Enn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:vnn,db:ynn,renderer:{draw:(i,s,u,d)=>{Xe.debug(`rendering pie chart
+`+i);const p=d.db,v=qt(),b=JF(p.getConfig(),v.pie),y=40,T=18,_=4,A=450,P=A,R=rR(s),F=R.append("g"),j=p.getSections();F.attr("transform","translate("+P/2+","+A/2+")");const{themeVariables:K}=v;let[ee]=NC(K.pieOuterStrokeWidth);ee??(ee=2);const ie=b.textPosition,oe=Math.min(P,A)/2-y,pe=lD().innerRadius(0).outerRadius(oe),be=lD().innerRadius(oe*ie).outerRadius(oe*ie);F.append("circle").attr("cx",0).attr("cy",0).attr("r",oe+ee/2).attr("class","pieOuterCircle");const ae=knn(j),ne=[K.pie1,K.pie2,K.pie3,K.pie4,K.pie5,K.pie6,K.pie7,K.pie8,K.pie9,K.pie10,K.pie11,K.pie12],se=_F(ne);F.selectAll("mySlices").data(ae).enter().append("path").attr("d",pe).attr("fill",xe=>se(xe.data.label)).attr("class","pieCircle");let de=0;Object.keys(j).forEach(xe=>{de+=j[xe]}),F.selectAll("mySlices").data(ae).enter().append("text").text(xe=>(xe.data.value/de*100).toFixed(0)+"%").attr("transform",xe=>"translate("+be.centroid(xe)+")").style("text-anchor","middle").attr("class","slice"),F.append("text").text(p.getDiagramTitle()).attr("x",0).attr("y",-(A-50)/2).attr("class","pieTitleText");const X=F.selectAll(".legend").data(se.domain()).enter().append("g").attr("class","legend").attr("transform",(xe,U)=>{const Fe=T+_,Pe=Fe*se.domain().length/2,je=12*T,Ie=U*Fe-Pe;return"translate("+je+","+Ie+")"});X.append("rect").attr("width",T).attr("height",T).style("fill",se).style("stroke",se),X.data(ae).append("text").attr("x",T+_).attr("y",T-_).text(xe=>{const{label:U,value:Fe}=xe.data;return p.getShowData()?`${U} [${Fe}]`:U});const ge=Math.max(...X.selectAll("text").nodes().map(xe=>(xe==null?void 0:xe.getBoundingClientRect().width)??0)),W=P+y+T+_+ge;R.attr("viewBox",`0 0 ${W} ${A}`),Ng(R,A,W,b.useMaxWidth)}},styles:xnn}},Symbol.toStringTag,{value:"Module"}));var fve=function(){var i=function(_t,Et,Gt,ln){for(Gt=Gt||{},ln=_t.length;ln--;Gt[_t[ln]]=Et);return Gt},s=[1,3],u=[1,4],d=[1,5],p=[1,6],v=[1,7],b=[1,5,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],y=[1,5,6,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],T=[32,33,34],_=[2,7],A=[1,13],P=[1,17],R=[1,18],F=[1,19],j=[1,20],K=[1,21],ee=[1,22],ie=[1,23],oe=[1,24],pe=[1,25],be=[1,26],ae=[1,27],ne=[1,30],se=[1,31],de=[1,32],X=[1,33],ge=[1,34],W=[1,35],xe=[1,36],U=[1,37],Fe=[1,38],Pe=[1,39],je=[1,40],Ie=[1,41],Se=[1,42],Ce=[1,57],ke=[1,58],Ke=[5,22,26,32,33,34,40,41,42,43,44,45,46,47,48,49,50,51],Ft={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,QUADRANT:6,document:7,line:8,statement:9,axisDetails:10,quadrantDetails:11,points:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,text:21,point_start:22,point_x:23,point_y:24,"X-AXIS":25,"AXIS-TEXT-DELIMITER":26,"Y-AXIS":27,QUADRANT_1:28,QUADRANT_2:29,QUADRANT_3:30,QUADRANT_4:31,NEWLINE:32,SEMI:33,EOF:34,alphaNumToken:35,textNoTagsToken:36,STR:37,MD_STR:38,alphaNum:39,PUNCTUATION:40,AMP:41,NUM:42,ALPHA:43,COMMA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,UNDERSCORE:50,MINUS:51,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",6:"QUADRANT",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",22:"point_start",23:"point_x",24:"point_y",25:"X-AXIS",26:"AXIS-TEXT-DELIMITER",27:"Y-AXIS",28:"QUADRANT_1",29:"QUADRANT_2",30:"QUADRANT_3",31:"QUADRANT_4",32:"NEWLINE",33:"SEMI",34:"EOF",37:"STR",38:"MD_STR",40:"PUNCTUATION",41:"AMP",42:"NUM",43:"ALPHA",44:"COMMA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"UNDERSCORE",51:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[9,0],[9,2],[9,1],[9,1],[9,1],[9,2],[9,2],[9,2],[9,1],[9,1],[12,4],[10,4],[10,3],[10,2],[10,4],[10,3],[10,2],[11,2],[11,2],[11,2],[11,2],[4,1],[4,1],[4,1],[21,1],[21,2],[21,1],[21,1],[39,1],[39,2],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[36,1],[36,1],[36,1]],performAction:function(Et,Gt,ln,xt,Pt,Qe,Dt){var kt=Qe.length-1;switch(Pt){case 12:this.$=Qe[kt].trim(),xt.setDiagramTitle(this.$);break;case 13:this.$=Qe[kt].trim(),xt.setAccTitle(this.$);break;case 14:case 15:this.$=Qe[kt].trim(),xt.setAccDescription(this.$);break;case 16:xt.addSection(Qe[kt].substr(8)),this.$=Qe[kt].substr(8);break;case 17:xt.addPoint(Qe[kt-3],Qe[kt-1],Qe[kt]);break;case 18:xt.setXAxisLeftText(Qe[kt-2]),xt.setXAxisRightText(Qe[kt]);break;case 19:Qe[kt-1].text+=" ⟶ ",xt.setXAxisLeftText(Qe[kt-1]);break;case 20:xt.setXAxisLeftText(Qe[kt]);break;case 21:xt.setYAxisBottomText(Qe[kt-2]),xt.setYAxisTopText(Qe[kt]);break;case 22:Qe[kt-1].text+=" ⟶ ",xt.setYAxisBottomText(Qe[kt-1]);break;case 23:xt.setYAxisBottomText(Qe[kt]);break;case 24:xt.setQuadrant1Text(Qe[kt]);break;case 25:xt.setQuadrant2Text(Qe[kt]);break;case 26:xt.setQuadrant3Text(Qe[kt]);break;case 27:xt.setQuadrant4Text(Qe[kt]);break;case 31:this.$={text:Qe[kt],type:"text"};break;case 32:this.$={text:Qe[kt-1].text+""+Qe[kt],type:Qe[kt-1].type};break;case 33:this.$={text:Qe[kt],type:"text"};break;case 34:this.$={text:Qe[kt],type:"markdown"};break;case 35:this.$=Qe[kt];break;case 36:this.$=Qe[kt-1]+""+Qe[kt];break}},table:[{3:1,4:2,5:s,6:u,32:d,33:p,34:v},{1:[3]},{3:8,4:2,5:s,6:u,32:d,33:p,34:v},{3:9,4:2,5:s,6:u,32:d,33:p,34:v},i(b,[2,4],{7:10}),i(y,[2,28]),i(y,[2,29]),i(y,[2,30]),{1:[2,1]},{1:[2,2]},i(T,_,{8:11,9:12,10:14,11:15,12:16,21:28,35:29,1:[2,3],5:A,13:P,15:R,17:F,19:j,20:K,25:ee,27:ie,28:oe,29:pe,30:be,31:ae,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se}),i(b,[2,5]),{4:43,32:d,33:p,34:v},i(T,_,{10:14,11:15,12:16,21:28,35:29,9:44,5:A,13:P,15:R,17:F,19:j,20:K,25:ee,27:ie,28:oe,29:pe,30:be,31:ae,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se}),i(T,[2,9]),i(T,[2,10]),i(T,[2,11]),{14:[1,45]},{16:[1,46]},{18:[1,47]},i(T,[2,15]),i(T,[2,16]),{21:48,35:29,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se},{21:49,35:29,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se},{21:50,35:29,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se},{21:51,35:29,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se},{21:52,35:29,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se},{21:53,35:29,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se},{5:Ce,22:[1,54],35:56,36:55,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke},i(Ke,[2,31]),i(Ke,[2,33]),i(Ke,[2,34]),i(Ke,[2,37]),i(Ke,[2,38]),i(Ke,[2,39]),i(Ke,[2,40]),i(Ke,[2,41]),i(Ke,[2,42]),i(Ke,[2,43]),i(Ke,[2,44]),i(Ke,[2,45]),i(Ke,[2,46]),i(Ke,[2,47]),i(b,[2,6]),i(T,[2,8]),i(T,[2,12]),i(T,[2,13]),i(T,[2,14]),i(T,[2,20],{36:55,35:56,5:Ce,26:[1,59],40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,23],{36:55,35:56,5:Ce,26:[1,60],40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,24],{36:55,35:56,5:Ce,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,25],{36:55,35:56,5:Ce,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,26],{36:55,35:56,5:Ce,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,27],{36:55,35:56,5:Ce,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),{23:[1,61]},i(Ke,[2,32]),i(Ke,[2,48]),i(Ke,[2,49]),i(Ke,[2,50]),i(T,[2,19],{35:29,21:62,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se}),i(T,[2,22],{35:29,21:63,37:ne,38:se,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se}),{24:[1,64]},i(T,[2,18],{36:55,35:56,5:Ce,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,21],{36:55,35:56,5:Ce,40:de,41:X,42:ge,43:W,44:xe,45:U,46:Fe,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(T,[2,17])],defaultActions:{8:[2,1],9:[2,2]},parseError:function(Et,Gt){if(Gt.recoverable)this.trace(Et);else{var ln=new Error(Et);throw ln.hash=Gt,ln}},parse:function(Et){var Gt=this,ln=[0],xt=[],Pt=[null],Qe=[],Dt=this.table,kt="",On=0,ht=0,zr=2,yt=1,ji=Qe.slice.call(arguments,1),xi=Object.create(this.lexer),Ma={yy:{}};for(var zs in this.yy)Object.prototype.hasOwnProperty.call(this.yy,zs)&&(Ma.yy[zs]=this.yy[zs]);xi.setInput(Et,Ma.yy),Ma.yy.lexer=xi,Ma.yy.parser=this,typeof xi.yylloc>"u"&&(xi.yylloc={});var ao=xi.yylloc;Qe.push(ao);var Tr=xi.options&&xi.options.ranges;typeof Ma.yy.parseError=="function"?this.parseError=Ma.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Fn(){var Pa;return Pa=xt.pop()||xi.lex()||yt,typeof Pa!="number"&&(Pa instanceof Array&&(xt=Pa,Pa=xt.pop()),Pa=Gt.symbols_[Pa]||Pa),Pa}for(var qn,Un,At,wt,on={},fn,An,oo,jo;;){if(Un=ln[ln.length-1],this.defaultActions[Un]?At=this.defaultActions[Un]:((qn===null||typeof qn>"u")&&(qn=Fn()),At=Dt[Un]&&Dt[Un][qn]),typeof At>"u"||!At.length||!At[0]){var $o="";jo=[];for(fn in Dt[Un])this.terminals_[fn]&&fn>zr&&jo.push("'"+this.terminals_[fn]+"'");xi.showPosition?$o="Parse error on line "+(On+1)+`:
+`+xi.showPosition()+`
+Expecting `+jo.join(", ")+", got '"+(this.terminals_[qn]||qn)+"'":$o="Parse error on line "+(On+1)+": Unexpected "+(qn==yt?"end of input":"'"+(this.terminals_[qn]||qn)+"'"),this.parseError($o,{text:xi.match,token:this.terminals_[qn]||qn,line:xi.yylineno,loc:ao,expected:jo})}if(At[0]instanceof Array&&At.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Un+", token: "+qn);switch(At[0]){case 1:ln.push(qn),Pt.push(xi.yytext),Qe.push(xi.yylloc),ln.push(At[1]),qn=null,ht=xi.yyleng,kt=xi.yytext,On=xi.yylineno,ao=xi.yylloc;break;case 2:if(An=this.productions_[At[1]][1],on.$=Pt[Pt.length-An],on._$={first_line:Qe[Qe.length-(An||1)].first_line,last_line:Qe[Qe.length-1].last_line,first_column:Qe[Qe.length-(An||1)].first_column,last_column:Qe[Qe.length-1].last_column},Tr&&(on._$.range=[Qe[Qe.length-(An||1)].range[0],Qe[Qe.length-1].range[1]]),wt=this.performAction.apply(on,[kt,ht,On,Ma.yy,At[1],Pt,Qe].concat(ji)),typeof wt<"u")return wt;An&&(ln=ln.slice(0,-1*An*2),Pt=Pt.slice(0,-1*An),Qe=Qe.slice(0,-1*An)),ln.push(this.productions_[At[1]][0]),Pt.push(on.$),Qe.push(on._$),oo=Dt[ln[ln.length-2]][ln[ln.length-1]],ln.push(oo);break;case 3:return!0}}return!0}},Ne=function(){var _t={EOF:1,parseError:function(Gt,ln){if(this.yy.parser)this.yy.parser.parseError(Gt,ln);else throw new Error(Gt)},setInput:function(Et,Gt){return this.yy=Gt||this.yy||{},this._input=Et,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 Et=this._input[0];this.yytext+=Et,this.yyleng++,this.offset++,this.match+=Et,this.matched+=Et;var Gt=Et.match(/(?:\r\n?|\n).*/g);return Gt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Et},unput:function(Et){var Gt=Et.length,ln=Et.split(/(?:\r\n?|\n)/g);this._input=Et+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Gt),this.offset-=Gt;var xt=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),ln.length-1&&(this.yylineno-=ln.length-1);var Pt=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:ln?(ln.length===xt.length?this.yylloc.first_column:0)+xt[xt.length-ln.length].length-ln[0].length:this.yylloc.first_column-Gt},this.options.ranges&&(this.yylloc.range=[Pt[0],Pt[0]+this.yyleng-Gt]),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(Et){this.unput(this.match.slice(Et))},pastInput:function(){var Et=this.matched.substr(0,this.matched.length-this.match.length);return(Et.length>20?"...":"")+Et.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Et=this.match;return Et.length<20&&(Et+=this._input.substr(0,20-Et.length)),(Et.substr(0,20)+(Et.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Et=this.pastInput(),Gt=new Array(Et.length+1).join("-");return Et+this.upcomingInput()+`
+`+Gt+"^"},test_match:function(Et,Gt){var ln,xt,Pt;if(this.options.backtrack_lexer&&(Pt={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&&(Pt.yylloc.range=this.yylloc.range.slice(0))),xt=Et[0].match(/(?:\r\n?|\n).*/g),xt&&(this.yylineno+=xt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xt?xt[xt.length-1].length-xt[xt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Et[0].length},this.yytext+=Et[0],this.match+=Et[0],this.matches=Et,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(Et[0].length),this.matched+=Et[0],ln=this.performAction.call(this,this.yy,this,Gt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ln)return ln;if(this._backtrack){for(var Qe in Pt)this[Qe]=Pt[Qe];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Et,Gt,ln,xt;this._more||(this.yytext="",this.match="");for(var Pt=this._currentRules(),Qe=0;QeGt[0].length)){if(Gt=ln,xt=Qe,this.options.backtrack_lexer){if(Et=this.test_match(ln,Pt[Qe]),Et!==!1)return Et;if(this._backtrack){Gt=!1;continue}else return!1}else if(!this.options.flex)break}return Gt?(Et=this.test_match(Gt,Pt[xt]),Et!==!1?Et:!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 Gt=this.next();return Gt||this.lex()},begin:function(Gt){this.conditionStack.push(Gt)},popState:function(){var Gt=this.conditionStack.length-1;return Gt>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(Gt){return Gt=this.conditionStack.length-1-Math.abs(Gt||0),Gt>=0?this.conditionStack[Gt]:"INITIAL"},pushState:function(Gt){this.begin(Gt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Gt,ln,xt,Pt){switch(xt){case 0:break;case 1:break;case 2:return 32;case 3:break;case 4:return this.begin("title"),13;case 5:return this.popState(),"title_value";case 6:return this.begin("acc_title"),15;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),17;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 25;case 14:return 27;case 15:return 26;case 16:return 28;case 17:return 29;case 18:return 30;case 19:return 31;case 20:this.begin("md_string");break;case 21:return"MD_STR";case 22:this.popState();break;case 23:this.begin("string");break;case 24:this.popState();break;case 25:return"STR";case 26:return this.begin("point_start"),22;case 27:return this.begin("point_x"),23;case 28:this.popState();break;case 29:this.popState(),this.begin("point_y");break;case 30:return this.popState(),24;case 31:return 6;case 32:return 43;case 33:return"COLON";case 34:return 45;case 35:return 44;case 36:return 46;case 37:return 46;case 38:return 47;case 39:return 49;case 40:return 50;case 41:return 48;case 42:return 41;case 43:return 51;case 44:return 42;case 45:return 5;case 46:return 33;case 47:return 40;case 48:return 34}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{point_y:{rules:[30],inclusive:!1},point_x:{rules:[29],inclusive:!1},point_start:{rules:[27,28],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[21,22],inclusive:!1},string:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,23,26,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],inclusive:!0}}};return _t}();Ft.lexer=Ne;function gn(){this.yy={}}return gn.prototype=Ft,Ft.Parser=gn,new gn}();fve.parser=fve;const Tnn=fve,Pp=f2e();class Cnn{constructor(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){var s,u,d,p,v,b,y,T,_,A,P,R,F,j,K,ee,ie,oe;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((s=sh.quadrantChart)==null?void 0:s.chartWidth)||500,chartWidth:((u=sh.quadrantChart)==null?void 0:u.chartHeight)||500,titlePadding:((d=sh.quadrantChart)==null?void 0:d.titlePadding)||10,titleFontSize:((p=sh.quadrantChart)==null?void 0:p.titleFontSize)||20,quadrantPadding:((v=sh.quadrantChart)==null?void 0:v.quadrantPadding)||5,xAxisLabelPadding:((b=sh.quadrantChart)==null?void 0:b.xAxisLabelPadding)||5,yAxisLabelPadding:((y=sh.quadrantChart)==null?void 0:y.yAxisLabelPadding)||5,xAxisLabelFontSize:((T=sh.quadrantChart)==null?void 0:T.xAxisLabelFontSize)||16,yAxisLabelFontSize:((_=sh.quadrantChart)==null?void 0:_.yAxisLabelFontSize)||16,quadrantLabelFontSize:((A=sh.quadrantChart)==null?void 0:A.quadrantLabelFontSize)||16,quadrantTextTopPadding:((P=sh.quadrantChart)==null?void 0:P.quadrantTextTopPadding)||5,pointTextPadding:((R=sh.quadrantChart)==null?void 0:R.pointTextPadding)||5,pointLabelFontSize:((F=sh.quadrantChart)==null?void 0:F.pointLabelFontSize)||12,pointRadius:((j=sh.quadrantChart)==null?void 0:j.pointRadius)||5,xAxisPosition:((K=sh.quadrantChart)==null?void 0:K.xAxisPosition)||"top",yAxisPosition:((ee=sh.quadrantChart)==null?void 0:ee.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:((ie=sh.quadrantChart)==null?void 0:ie.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:((oe=sh.quadrantChart)==null?void 0:oe.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:Pp.quadrant1Fill,quadrant2Fill:Pp.quadrant2Fill,quadrant3Fill:Pp.quadrant3Fill,quadrant4Fill:Pp.quadrant4Fill,quadrant1TextFill:Pp.quadrant1TextFill,quadrant2TextFill:Pp.quadrant2TextFill,quadrant3TextFill:Pp.quadrant3TextFill,quadrant4TextFill:Pp.quadrant4TextFill,quadrantPointFill:Pp.quadrantPointFill,quadrantPointTextFill:Pp.quadrantPointTextFill,quadrantXAxisTextFill:Pp.quadrantXAxisTextFill,quadrantYAxisTextFill:Pp.quadrantYAxisTextFill,quadrantTitleFill:Pp.quadrantTitleFill,quadrantInternalBorderStrokeFill:Pp.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:Pp.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),Xe.info("clear called")}setData(s){this.data={...this.data,...s}}addPoints(s){this.data.points=[...s,...this.data.points]}setConfig(s){Xe.trace("setConfig called with: ",s),this.config={...this.config,...s}}setThemeConfig(s){Xe.trace("setThemeConfig called with: ",s),this.themeConfig={...this.themeConfig,...s}}calculateSpace(s,u,d,p){const v=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,b={top:s==="top"&&u?v:0,bottom:s==="bottom"&&u?v:0},y=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,T={left:this.config.yAxisPosition==="left"&&d?y:0,right:this.config.yAxisPosition==="right"&&d?y:0},_=this.config.titleFontSize+this.config.titlePadding*2,A={top:p?_:0},P=this.config.quadrantPadding+T.left,R=this.config.quadrantPadding+b.top+A.top,F=this.config.chartWidth-this.config.quadrantPadding*2-T.left-T.right,j=this.config.chartHeight-this.config.quadrantPadding*2-b.top-b.bottom-A.top,K=F/2,ee=j/2;return{xAxisSpace:b,yAxisSpace:T,titleSpace:A,quadrantSpace:{quadrantLeft:P,quadrantTop:R,quadrantWidth:F,quadrantHalfWidth:K,quadrantHeight:j,quadrantHalfHeight:ee}}}getAxisLabels(s,u,d,p){const{quadrantSpace:v,titleSpace:b}=p,{quadrantHalfHeight:y,quadrantHeight:T,quadrantLeft:_,quadrantHalfWidth:A,quadrantTop:P,quadrantWidth:R}=v,F=!!this.data.xAxisRightText,j=!!this.data.yAxisTopText,K=[];return this.data.xAxisLeftText&&u&&K.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:_+(F?A/2:0),y:s==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+P+T+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:F?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&u&&K.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:_+A+(F?A/2:0),y:s==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+P+T+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:F?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&d&&K.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+_+R+this.config.quadrantPadding,y:P+T-(j?y/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:j?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&d&&K.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+_+R+this.config.quadrantPadding,y:P+y-(j?y/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:j?"center":"left",horizontalPos:"top",rotation:-90}),K}getQuadrants(s){const{quadrantSpace:u}=s,{quadrantHalfHeight:d,quadrantLeft:p,quadrantHalfWidth:v,quadrantTop:b}=u,y=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:p+v,y:b,width:v,height:d,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:p,y:b,width:v,height:d,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:p,y:b+d,width:v,height:d,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:p+v,y:b+d,width:v,height:d,fill:this.themeConfig.quadrant4Fill}];for(const T of y)T.text.x=T.x+T.width/2,this.data.points.length===0?(T.text.y=T.y+T.height/2,T.text.horizontalPos="middle"):(T.text.y=T.y+this.config.quadrantTextTopPadding,T.text.horizontalPos="top");return y}getQuadrantPoints(s){const{quadrantSpace:u}=s,{quadrantHeight:d,quadrantLeft:p,quadrantTop:v,quadrantWidth:b}=u,y=sD().domain([0,1]).range([p,b+p]),T=sD().domain([0,1]).range([d+v,v]);return this.data.points.map(A=>({x:y(A.x),y:T(A.y),fill:this.themeConfig.quadrantPointFill,radius:this.config.pointRadius,text:{text:A.text,fill:this.themeConfig.quadrantPointTextFill,x:y(A.x),y:T(A.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0}}))}getBorders(s){const u=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:d}=s,{quadrantHalfHeight:p,quadrantHeight:v,quadrantLeft:b,quadrantHalfWidth:y,quadrantTop:T,quadrantWidth:_}=d;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-u,y1:T,x2:b+_+u,y2:T},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b+_,y1:T+u,x2:b+_,y2:T+v-u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-u,y1:T+v,x2:b+_+u,y2:T+v},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b,y1:T+u,x2:b,y2:T+v-u},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+y,y1:T+u,x2:b+y,y2:T+v-u},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+u,y1:T+p,x2:b+_-u,y2:T+p}]}getTitle(s){if(s)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const s=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),u=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),d=this.config.showTitle&&!!this.data.titleText,p=this.data.points.length>0?"bottom":this.config.xAxisPosition,v=this.calculateSpace(p,s,u,d);return{points:this.getQuadrantPoints(v),quadrants:this.getQuadrants(v),axisLabels:this.getAxisLabels(p,s,u,v),borderLines:this.getBorders(v),title:this.getTitle(d)}}}const Snn=qt();function U7(i){return Yf(i.trim(),Snn)}const Rg=new Cnn;function _nn(i){Rg.setData({quadrant1Text:U7(i.text)})}function Ann(i){Rg.setData({quadrant2Text:U7(i.text)})}function Lnn(i){Rg.setData({quadrant3Text:U7(i.text)})}function Mnn(i){Rg.setData({quadrant4Text:U7(i.text)})}function Dnn(i){Rg.setData({xAxisLeftText:U7(i.text)})}function Inn(i){Rg.setData({xAxisRightText:U7(i.text)})}function Onn(i){Rg.setData({yAxisTopText:U7(i.text)})}function Nnn(i){Rg.setData({yAxisBottomText:U7(i.text)})}function Pnn(i,s,u){Rg.addPoints([{x:s,y:u,text:U7(i.text)}])}function Bnn(i){Rg.setConfig({chartWidth:i})}function Fnn(i){Rg.setConfig({chartHeight:i})}function Rnn(){const i=qt(),{themeVariables:s,quadrantChart:u}=i;return u&&Rg.setConfig(u),Rg.setThemeConfig({quadrant1Fill:s.quadrant1Fill,quadrant2Fill:s.quadrant2Fill,quadrant3Fill:s.quadrant3Fill,quadrant4Fill:s.quadrant4Fill,quadrant1TextFill:s.quadrant1TextFill,quadrant2TextFill:s.quadrant2TextFill,quadrant3TextFill:s.quadrant3TextFill,quadrant4TextFill:s.quadrant4TextFill,quadrantPointFill:s.quadrantPointFill,quadrantPointTextFill:s.quadrantPointTextFill,quadrantXAxisTextFill:s.quadrantXAxisTextFill,quadrantYAxisTextFill:s.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:s.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:s.quadrantInternalBorderStrokeFill,quadrantTitleFill:s.quadrantTitleFill}),Rg.setData({titleText:Ap()}),Rg.build()}const jnn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Tnn,db:{setWidth:Bnn,setHeight:Fnn,setQuadrant1Text:_nn,setQuadrant2Text:Ann,setQuadrant3Text:Lnn,setQuadrant4Text:Mnn,setXAxisLeftText:Dnn,setXAxisRightText:Inn,setYAxisTopText:Onn,setYAxisBottomText:Nnn,addPoint:Pnn,getQuadrantData:Rnn,clear:function(){Rg.clear(),Pg()},setAccTitle:Bg,getAccTitle:Cp,setDiagramTitle:cm,getDiagramTitle:Ap,getAccDescription:_p,setAccDescription:Sp},renderer:{draw:(i,s,u,d)=>{var de,X,ge;function p(W){return W==="top"?"hanging":"middle"}function v(W){return W==="left"?"start":"middle"}function b(W){return`translate(${W.x}, ${W.y}) rotate(${W.rotation||0})`}const y=qt();Xe.debug(`Rendering quadrant chart
+`+i);const T=y.securityLevel;let _;T==="sandbox"&&(_=Ir("#i"+s));const P=Ir(T==="sandbox"?_.nodes()[0].contentDocument.body:"body").select(`[id="${s}"]`),R=P.append("g").attr("class","main"),F=((de=y.quadrantChart)==null?void 0:de.chartWidth)||500,j=((X=y.quadrantChart)==null?void 0:X.chartHeight)||500;Ng(P,j,F,((ge=y.quadrantChart)==null?void 0:ge.useMaxWidth)||!0),P.attr("viewBox","0 0 "+F+" "+j),d.db.setHeight(j),d.db.setWidth(F);const K=d.db.getQuadrantData(),ee=R.append("g").attr("class","quadrants"),ie=R.append("g").attr("class","border"),oe=R.append("g").attr("class","data-points"),pe=R.append("g").attr("class","labels"),be=R.append("g").attr("class","title");K.title&&be.append("text").attr("x",0).attr("y",0).attr("fill",K.title.fill).attr("font-size",K.title.fontSize).attr("dominant-baseline",p(K.title.horizontalPos)).attr("text-anchor",v(K.title.verticalPos)).attr("transform",b(K.title)).text(K.title.text),K.borderLines&&ie.selectAll("line").data(K.borderLines).enter().append("line").attr("x1",W=>W.x1).attr("y1",W=>W.y1).attr("x2",W=>W.x2).attr("y2",W=>W.y2).style("stroke",W=>W.strokeFill).style("stroke-width",W=>W.strokeWidth);const ae=ee.selectAll("g.quadrant").data(K.quadrants).enter().append("g").attr("class","quadrant");ae.append("rect").attr("x",W=>W.x).attr("y",W=>W.y).attr("width",W=>W.width).attr("height",W=>W.height).attr("fill",W=>W.fill),ae.append("text").attr("x",0).attr("y",0).attr("fill",W=>W.text.fill).attr("font-size",W=>W.text.fontSize).attr("dominant-baseline",W=>p(W.text.horizontalPos)).attr("text-anchor",W=>v(W.text.verticalPos)).attr("transform",W=>b(W.text)).text(W=>W.text.text),pe.selectAll("g.label").data(K.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(W=>W.text).attr("fill",W=>W.fill).attr("font-size",W=>W.fontSize).attr("dominant-baseline",W=>p(W.horizontalPos)).attr("text-anchor",W=>v(W.verticalPos)).attr("transform",W=>b(W));const se=oe.selectAll("g.data-point").data(K.points).enter().append("g").attr("class","data-point");se.append("circle").attr("cx",W=>W.x).attr("cy",W=>W.y).attr("r",W=>W.radius).attr("fill",W=>W.fill),se.append("text").attr("x",0).attr("y",0).text(W=>W.text.text).attr("fill",W=>W.text.fill).attr("font-size",W=>W.text.fontSize).attr("dominant-baseline",W=>p(W.text.horizontalPos)).attr("text-anchor",W=>v(W.text.verticalPos)).attr("transform",W=>b(W.text))}},styles:()=>""}},Symbol.toStringTag,{value:"Module"}));var dve=function(){var i=function(Pe,je,Ie,Se){for(Ie=Ie||{},Se=Pe.length;Se--;Ie[Pe[Se]]=je);return Ie},s=[1,10,12,14,16,18,19,21,23],u=[2,6],d=[1,3],p=[1,5],v=[1,6],b=[1,7],y=[1,5,10,12,14,16,18,19,21,23,34,35,36],T=[1,25],_=[1,26],A=[1,28],P=[1,29],R=[1,30],F=[1,31],j=[1,32],K=[1,33],ee=[1,34],ie=[1,35],oe=[1,36],pe=[1,37],be=[1,43],ae=[1,42],ne=[1,47],se=[1,50],de=[1,10,12,14,16,18,19,21,23,34,35,36],X=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],ge=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],W=[1,64],xe={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:function(je,Ie,Se,Ce,ke,Ke,Ft){var Ne=Ke.length-1;switch(ke){case 5:Ce.setOrientation(Ke[Ne]);break;case 9:Ce.setDiagramTitle(Ke[Ne].text.trim());break;case 12:Ce.setLineData({text:"",type:"text"},Ke[Ne]);break;case 13:Ce.setLineData(Ke[Ne-1],Ke[Ne]);break;case 14:Ce.setBarData({text:"",type:"text"},Ke[Ne]);break;case 15:Ce.setBarData(Ke[Ne-1],Ke[Ne]);break;case 16:this.$=Ke[Ne].trim(),Ce.setAccTitle(this.$);break;case 17:case 18:this.$=Ke[Ne].trim(),Ce.setAccDescription(this.$);break;case 19:this.$=Ke[Ne-1];break;case 20:this.$=[Number(Ke[Ne-2]),...Ke[Ne]];break;case 21:this.$=[Number(Ke[Ne])];break;case 22:Ce.setXAxisTitle(Ke[Ne]);break;case 23:Ce.setXAxisTitle(Ke[Ne-1]);break;case 24:Ce.setXAxisTitle({type:"text",text:""});break;case 25:Ce.setXAxisBand(Ke[Ne]);break;case 26:Ce.setXAxisRangeData(Number(Ke[Ne-2]),Number(Ke[Ne]));break;case 27:this.$=Ke[Ne-1];break;case 28:this.$=[Ke[Ne-2],...Ke[Ne]];break;case 29:this.$=[Ke[Ne]];break;case 30:Ce.setYAxisTitle(Ke[Ne]);break;case 31:Ce.setYAxisTitle(Ke[Ne-1]);break;case 32:Ce.setYAxisTitle({type:"text",text:""});break;case 33:Ce.setYAxisRangeData(Number(Ke[Ne-2]),Number(Ke[Ne]));break;case 37:this.$={text:Ke[Ne],type:"text"};break;case 38:this.$={text:Ke[Ne],type:"text"};break;case 39:this.$={text:Ke[Ne],type:"markdown"};break;case 40:this.$=Ke[Ne];break;case 41:this.$=Ke[Ne-1]+""+Ke[Ne];break}},table:[i(s,u,{3:1,4:2,7:4,5:d,34:p,35:v,36:b}),{1:[3]},i(s,u,{4:2,7:4,3:8,5:d,34:p,35:v,36:b}),i(s,u,{4:2,7:4,6:9,3:10,5:d,8:[1,11],34:p,35:v,36:b}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},i(y,[2,34]),i(y,[2,35]),i(y,[2,36]),{1:[2,1]},i(s,u,{4:2,7:4,3:21,5:d,34:p,35:v,36:b}),{1:[2,3]},i(y,[2,5]),i(s,[2,7],{4:22,34:p,35:v,36:b}),{11:23,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},{11:39,13:38,24:be,27:ae,29:40,30:41,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},{11:45,15:44,27:ne,33:46,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},{11:49,17:48,24:se,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},{11:52,17:51,24:se,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},{20:[1,53]},{22:[1,54]},i(de,[2,18]),{1:[2,2]},i(de,[2,8]),i(de,[2,9]),i(X,[2,37],{40:55,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe}),i(X,[2,38]),i(X,[2,39]),i(ge,[2,40]),i(ge,[2,42]),i(ge,[2,43]),i(ge,[2,44]),i(ge,[2,45]),i(ge,[2,46]),i(ge,[2,47]),i(ge,[2,48]),i(ge,[2,49]),i(ge,[2,50]),i(ge,[2,51]),i(de,[2,10]),i(de,[2,22],{30:41,29:56,24:be,27:ae}),i(de,[2,24]),i(de,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},i(de,[2,11]),i(de,[2,30],{33:60,27:ne}),i(de,[2,32]),{31:[1,61]},i(de,[2,12]),{17:62,24:se},{25:63,27:W},i(de,[2,14]),{17:65,24:se},i(de,[2,16]),i(de,[2,17]),i(ge,[2,41]),i(de,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},i(de,[2,31]),{27:[1,69]},i(de,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},i(de,[2,15]),i(de,[2,26]),i(de,[2,27]),{11:59,32:72,37:24,38:T,39:_,40:27,41:A,42:P,43:R,44:F,45:j,46:K,47:ee,48:ie,49:oe,50:pe},i(de,[2,33]),i(de,[2,19]),{25:73,27:W},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:function(je,Ie){if(Ie.recoverable)this.trace(je);else{var Se=new Error(je);throw Se.hash=Ie,Se}},parse:function(je){var Ie=this,Se=[0],Ce=[],ke=[null],Ke=[],Ft=this.table,Ne="",gn=0,_t=0,Et=2,Gt=1,ln=Ke.slice.call(arguments,1),xt=Object.create(this.lexer),Pt={yy:{}};for(var Qe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Qe)&&(Pt.yy[Qe]=this.yy[Qe]);xt.setInput(je,Pt.yy),Pt.yy.lexer=xt,Pt.yy.parser=this,typeof xt.yylloc>"u"&&(xt.yylloc={});var Dt=xt.yylloc;Ke.push(Dt);var kt=xt.options&&xt.options.ranges;typeof Pt.yy.parseError=="function"?this.parseError=Pt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function On(){var qn;return qn=Ce.pop()||xt.lex()||Gt,typeof qn!="number"&&(qn instanceof Array&&(Ce=qn,qn=Ce.pop()),qn=Ie.symbols_[qn]||qn),qn}for(var ht,zr,yt,ji,xi={},Ma,zs,ao,Tr;;){if(zr=Se[Se.length-1],this.defaultActions[zr]?yt=this.defaultActions[zr]:((ht===null||typeof ht>"u")&&(ht=On()),yt=Ft[zr]&&Ft[zr][ht]),typeof yt>"u"||!yt.length||!yt[0]){var Fn="";Tr=[];for(Ma in Ft[zr])this.terminals_[Ma]&&Ma>Et&&Tr.push("'"+this.terminals_[Ma]+"'");xt.showPosition?Fn="Parse error on line "+(gn+1)+`:
+`+xt.showPosition()+`
+Expecting `+Tr.join(", ")+", got '"+(this.terminals_[ht]||ht)+"'":Fn="Parse error on line "+(gn+1)+": Unexpected "+(ht==Gt?"end of input":"'"+(this.terminals_[ht]||ht)+"'"),this.parseError(Fn,{text:xt.match,token:this.terminals_[ht]||ht,line:xt.yylineno,loc:Dt,expected:Tr})}if(yt[0]instanceof Array&&yt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+zr+", token: "+ht);switch(yt[0]){case 1:Se.push(ht),ke.push(xt.yytext),Ke.push(xt.yylloc),Se.push(yt[1]),ht=null,_t=xt.yyleng,Ne=xt.yytext,gn=xt.yylineno,Dt=xt.yylloc;break;case 2:if(zs=this.productions_[yt[1]][1],xi.$=ke[ke.length-zs],xi._$={first_line:Ke[Ke.length-(zs||1)].first_line,last_line:Ke[Ke.length-1].last_line,first_column:Ke[Ke.length-(zs||1)].first_column,last_column:Ke[Ke.length-1].last_column},kt&&(xi._$.range=[Ke[Ke.length-(zs||1)].range[0],Ke[Ke.length-1].range[1]]),ji=this.performAction.apply(xi,[Ne,_t,gn,Pt.yy,yt[1],ke,Ke].concat(ln)),typeof ji<"u")return ji;zs&&(Se=Se.slice(0,-1*zs*2),ke=ke.slice(0,-1*zs),Ke=Ke.slice(0,-1*zs)),Se.push(this.productions_[yt[1]][0]),ke.push(xi.$),Ke.push(xi._$),ao=Ft[Se[Se.length-2]][Se[Se.length-1]],Se.push(ao);break;case 3:return!0}}return!0}},U=function(){var Pe={EOF:1,parseError:function(Ie,Se){if(this.yy.parser)this.yy.parser.parseError(Ie,Se);else throw new Error(Ie)},setInput:function(je,Ie){return this.yy=Ie||this.yy||{},this._input=je,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 je=this._input[0];this.yytext+=je,this.yyleng++,this.offset++,this.match+=je,this.matched+=je;var Ie=je.match(/(?:\r\n?|\n).*/g);return Ie?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),je},unput:function(je){var Ie=je.length,Se=je.split(/(?:\r\n?|\n)/g);this._input=je+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ie),this.offset-=Ie;var Ce=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),Se.length-1&&(this.yylineno-=Se.length-1);var ke=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:Se?(Se.length===Ce.length?this.yylloc.first_column:0)+Ce[Ce.length-Se.length].length-Se[0].length:this.yylloc.first_column-Ie},this.options.ranges&&(this.yylloc.range=[ke[0],ke[0]+this.yyleng-Ie]),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(je){this.unput(this.match.slice(je))},pastInput:function(){var je=this.matched.substr(0,this.matched.length-this.match.length);return(je.length>20?"...":"")+je.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var je=this.match;return je.length<20&&(je+=this._input.substr(0,20-je.length)),(je.substr(0,20)+(je.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var je=this.pastInput(),Ie=new Array(je.length+1).join("-");return je+this.upcomingInput()+`
+`+Ie+"^"},test_match:function(je,Ie){var Se,Ce,ke;if(this.options.backtrack_lexer&&(ke={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&&(ke.yylloc.range=this.yylloc.range.slice(0))),Ce=je[0].match(/(?:\r\n?|\n).*/g),Ce&&(this.yylineno+=Ce.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ce?Ce[Ce.length-1].length-Ce[Ce.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+je[0].length},this.yytext+=je[0],this.match+=je[0],this.matches=je,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(je[0].length),this.matched+=je[0],Se=this.performAction.call(this,this.yy,this,Ie,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Se)return Se;if(this._backtrack){for(var Ke in ke)this[Ke]=ke[Ke];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var je,Ie,Se,Ce;this._more||(this.yytext="",this.match="");for(var ke=this._currentRules(),Ke=0;KeIe[0].length)){if(Ie=Se,Ce=Ke,this.options.backtrack_lexer){if(je=this.test_match(Se,ke[Ke]),je!==!1)return je;if(this._backtrack){Ie=!1;continue}else return!1}else if(!this.options.flex)break}return Ie?(je=this.test_match(Ie,ke[Ce]),je!==!1?je:!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 Ie=this.next();return Ie||this.lex()},begin:function(Ie){this.conditionStack.push(Ie)},popState:function(){var Ie=this.conditionStack.length-1;return Ie>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(Ie){return Ie=this.conditionStack.length-1-Math.abs(Ie||0),Ie>=0?this.conditionStack[Ie]:"INITIAL"},pushState:function(Ie){this.begin(Ie)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ie,Se,Ce,ke){switch(Ce){case 0:break;case 1:break;case 2:return this.popState(),34;case 3:return this.popState(),34;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;case 8:return this.popState(),"acc_title_value";case 9:return this.pushState("acc_descr"),21;case 10:return this.popState(),"acc_descr_value";case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";case 17:return this.pushState("axis_data"),"Y_AXIS";case 18:return this.pushState("axis_band_data"),24;case 19:return 31;case 20:return this.pushState("data"),16;case 21:return this.pushState("data"),18;case 22:return this.pushState("data_inner"),24;case 23:return 27;case 24:return this.popState(),26;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 43:break;case 44:return 35;case 45:return 36}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}};return Pe}();xe.lexer=U;function Fe(){this.yy={}}return Fe.prototype=xe,xe.Parser=Fe,new Fe}();dve.parser=dve;const $nn=dve;function fGe(i){return i.type==="bar"}function dGe(i){return i.type==="band"}function $R(i){return i.type==="linear"}class gGe{constructor(s){this.parentGroup=s}getMaxDimension(s,u){if(!this.parentGroup)return{width:s.reduce((v,b)=>Math.max(b.length,v),0)*u,height:u};const d={width:0,height:0},p=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",u);for(const v of s){const b=RZt(p,1,v),y=b?b.width:v.length*u,T=b?b.height:u;d.width=Math.max(d.width,y),d.height=Math.max(d.height,T)}return p.remove(),d}}const pGe=.7,bGe=.2;class mGe{constructor(s,u,d,p){this.axisConfig=s,this.title=u,this.textDimensionCalculator=d,this.axisThemeConfig=p,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}setRange(s){this.range=s,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=s[1]-s[0]:this.boundingRect.width=s[1]-s[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(s){this.axisPosition=s,this.setRange(this.range)}getTickDistance(){const s=this.getRange();return Math.abs(s[0]-s[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(s=>s.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){pGe*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(pGe*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(s){let u=s.height;if(this.axisConfig.showAxisLine&&u>this.axisConfig.axisLineWidth&&(u-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const d=this.getLabelDimension(),p=bGe*s.width;this.outerPadding=Math.min(d.width/2,p);const v=d.height+this.axisConfig.labelPadding*2;this.labelTextHeight=d.height,v<=u&&(u-=v,this.showLabel=!0)}if(this.axisConfig.showTick&&u>=this.axisConfig.tickLength&&(this.showTick=!0,u-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const d=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),p=d.height+this.axisConfig.titlePadding*2;this.titleTextHeight=d.height,p<=u&&(u-=p,this.showTitle=!0)}this.boundingRect.width=s.width,this.boundingRect.height=s.height-u}calculateSpaceIfDrawnVertical(s){let u=s.width;if(this.axisConfig.showAxisLine&&u>this.axisConfig.axisLineWidth&&(u-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const d=this.getLabelDimension(),p=bGe*s.height;this.outerPadding=Math.min(d.height/2,p);const v=d.width+this.axisConfig.labelPadding*2;v<=u&&(u-=v,this.showLabel=!0)}if(this.axisConfig.showTick&&u>=this.axisConfig.tickLength&&(this.showTick=!0,u-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const d=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),p=d.height+this.axisConfig.titlePadding*2;this.titleTextHeight=d.height,p<=u&&(u-=p,this.showTitle=!0)}this.boundingRect.width=s.width-u,this.boundingRect.height=s.height}calculateSpace(s){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(s):this.calculateSpaceIfDrawnHorizontally(s),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(s){this.boundingRect.x=s.x,this.boundingRect.y=s.y}getDrawableElementsForLeftAxis(){const s=[];if(this.showAxisLine){const u=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;s.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${u},${this.boundingRect.y} L ${u},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&s.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(u=>({text:u.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(u),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){const u=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);s.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(d=>({path:`M ${u},${this.getScaleValue(d)} L ${u-this.axisConfig.tickLength},${this.getScaleValue(d)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&s.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),s}getDrawableElementsForBottomAxis(){const s=[];if(this.showAxisLine){const u=this.boundingRect.y+this.axisConfig.axisLineWidth/2;s.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${u} L ${this.boundingRect.x+this.boundingRect.width},${u}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&s.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(u=>({text:u.toString(),x:this.getScaleValue(u),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){const u=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);s.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(d=>({path:`M ${this.getScaleValue(d)},${u} L ${this.getScaleValue(d)},${u+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&s.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),s}getDrawableElementsForTopAxis(){const s=[];if(this.showAxisLine){const u=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;s.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${u} L ${this.boundingRect.x+this.boundingRect.width},${u}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&s.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(u=>({text:u.toString(),x:this.getScaleValue(u),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){const u=this.boundingRect.y;s.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(d=>({path:`M ${this.getScaleValue(d)},${u+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(d)},${u+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&s.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),s}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}class znn extends mGe{constructor(s,u,d,p,v){super(s,p,v,u),this.categories=d,this.scale=qpe().domain(this.categories).range(this.getRange())}setRange(s){super.setRange(s)}recalculateScale(){this.scale=qpe().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),Xe.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(s){return this.scale(s)||this.getRange()[0]}}class qnn extends mGe{constructor(s,u,d,p,v){super(s,p,v,u),this.domain=d,this.scale=sD().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){const s=[...this.domain];this.axisPosition==="left"&&s.reverse(),this.scale=sD().domain(s).range(this.getRange())}getScaleValue(s){return this.scale(s)}}function vGe(i,s,u,d){const p=new gGe(d);return dGe(i)?new znn(s,u,i.categories,i.title,p):new qnn(s,u,[i.min,i.max],i.title,p)}class Hnn{constructor(s,u,d,p){this.textDimensionCalculator=s,this.chartConfig=u,this.chartData=d,this.chartThemeConfig=p,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}setBoundingBoxXY(s){this.boundingRect.x=s.x,this.boundingRect.y=s.y}calculateSpace(s){const u=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),d=Math.max(u.width,s.width),p=u.height+2*this.chartConfig.titlePadding;return u.width<=d&&u.height<=p&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=d,this.boundingRect.height=p,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){const s=[];return this.showChartTitle&&s.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),s}}function Vnn(i,s,u,d){const p=new gGe(d);return new Hnn(p,i,s,u)}class Unn{constructor(s,u,d,p,v){this.plotData=s,this.xAxis=u,this.yAxis=d,this.orientation=p,this.plotIndex=v}getDrawableElement(){const s=this.plotData.data.map(d=>[this.xAxis.getScaleValue(d[0]),this.yAxis.getScaleValue(d[1])]);let u;return this.orientation==="horizontal"?u=k7().y(d=>d[0]).x(d=>d[1])(s):u=k7().x(d=>d[0]).y(d=>d[1])(s),u?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:u,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}class Gnn{constructor(s,u,d,p,v,b){this.barData=s,this.boundingRect=u,this.xAxis=d,this.yAxis=p,this.orientation=v,this.plotIndex=b}getDrawableElement(){const s=this.barData.data.map(v=>[this.xAxis.getScaleValue(v[0]),this.yAxis.getScaleValue(v[1])]),u=.05,d=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-u),p=d/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:s.map(v=>({x:this.boundingRect.x,y:v[0]-p,height:d,width:v[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:s.map(v=>({x:v[0]-p,y:v[1],width:d,height:this.boundingRect.y+this.boundingRect.height-v[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}class Knn{constructor(s,u,d){this.chartConfig=s,this.chartData=u,this.chartThemeConfig=d,this.boundingRect={x:0,y:0,width:0,height:0}}setAxes(s,u){this.xAxis=s,this.yAxis=u}setBoundingBoxXY(s){this.boundingRect.x=s.x,this.boundingRect.y=s.y}calculateSpace(s){return this.boundingRect.width=s.width,this.boundingRect.height=s.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");const s=[];for(const[u,d]of this.chartData.plots.entries())switch(d.type){case"line":{const p=new Unn(d,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,u);s.push(...p.getDrawableElement())}break;case"bar":{const p=new Gnn(d,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,u);s.push(...p.getDrawableElement())}break}return s}}function Wnn(i,s,u){return new Knn(i,s,u)}class Ynn{constructor(s,u,d,p){this.chartConfig=s,this.chartData=u,this.componentStore={title:Vnn(s,u,d,p),plot:Wnn(s,u,d),xAxis:vGe(u.xAxis,s.xAxis,{titleColor:d.xAxisTitleColor,labelColor:d.xAxisLabelColor,tickColor:d.xAxisTickColor,axisLineColor:d.xAxisLineColor},p),yAxis:vGe(u.yAxis,s.yAxis,{titleColor:d.yAxisTitleColor,labelColor:d.yAxisLabelColor,tickColor:d.yAxisTickColor,axisLineColor:d.yAxisLineColor},p)}}calculateVerticalSpace(){let s=this.chartConfig.width,u=this.chartConfig.height,d=0,p=0,v=Math.floor(s*this.chartConfig.plotReservedSpacePercent/100),b=Math.floor(u*this.chartConfig.plotReservedSpacePercent/100),y=this.componentStore.plot.calculateSpace({width:v,height:b});s-=y.width,u-=y.height,y=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:u}),p=y.height,u-=y.height,this.componentStore.xAxis.setAxisPosition("bottom"),y=this.componentStore.xAxis.calculateSpace({width:s,height:u}),u-=y.height,this.componentStore.yAxis.setAxisPosition("left"),y=this.componentStore.yAxis.calculateSpace({width:s,height:u}),d=y.width,s-=y.width,s>0&&(v+=s,s=0),u>0&&(b+=u,u=0),this.componentStore.plot.calculateSpace({width:v,height:b}),this.componentStore.plot.setBoundingBoxXY({x:d,y:p}),this.componentStore.xAxis.setRange([d,d+v]),this.componentStore.xAxis.setBoundingBoxXY({x:d,y:p+b}),this.componentStore.yAxis.setRange([p,p+b]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:p}),this.chartData.plots.some(T=>fGe(T))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let s=this.chartConfig.width,u=this.chartConfig.height,d=0,p=0,v=0,b=Math.floor(s*this.chartConfig.plotReservedSpacePercent/100),y=Math.floor(u*this.chartConfig.plotReservedSpacePercent/100),T=this.componentStore.plot.calculateSpace({width:b,height:y});s-=T.width,u-=T.height,T=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:u}),d=T.height,u-=T.height,this.componentStore.xAxis.setAxisPosition("left"),T=this.componentStore.xAxis.calculateSpace({width:s,height:u}),s-=T.width,p=T.width,this.componentStore.yAxis.setAxisPosition("top"),T=this.componentStore.yAxis.calculateSpace({width:s,height:u}),u-=T.height,v=d+T.height,s>0&&(b+=s,s=0),u>0&&(y+=u,u=0),this.componentStore.plot.calculateSpace({width:b,height:y}),this.componentStore.plot.setBoundingBoxXY({x:p,y:v}),this.componentStore.yAxis.setRange([p,p+b]),this.componentStore.yAxis.setBoundingBoxXY({x:p,y:d}),this.componentStore.xAxis.setRange([v,v+y]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:v}),this.chartData.plots.some(_=>fGe(_))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();const s=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(const u of Object.values(this.componentStore))s.push(...u.getDrawableElements());return s}}class Xnn{static build(s,u,d,p){return new Ynn(s,u,d,p).getDrawableElement()}}let zR=0,wGe,qR=xGe(),HR=yGe(),el=kGe(),gve=HR.plotColorPalette.split(",").map(i=>i.trim()),gJ=!1,pve=!1;function yGe(){const i=f2e(),s=Vh();return JF(i.xyChart,s.themeVariables.xyChart)}function xGe(){const i=Vh();return JF(sh.xyChart,i.xyChart)}function kGe(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function bve(i){const s=Vh();return Yf(i.trim(),s)}function Qnn(i){wGe=i}function Jnn(i){i==="horizontal"?qR.chartOrientation="horizontal":qR.chartOrientation="vertical"}function Znn(i){el.xAxis.title=bve(i.text)}function EGe(i,s){el.xAxis={type:"linear",title:el.xAxis.title,min:i,max:s},gJ=!0}function ern(i){el.xAxis={type:"band",title:el.xAxis.title,categories:i.map(s=>bve(s.text))},gJ=!0}function trn(i){el.yAxis.title=bve(i.text)}function nrn(i,s){el.yAxis={type:"linear",title:el.yAxis.title,min:i,max:s},pve=!0}function rrn(i){const s=Math.min(...i),u=Math.max(...i),d=$R(el.yAxis)?el.yAxis.min:1/0,p=$R(el.yAxis)?el.yAxis.max:-1/0;el.yAxis={type:"linear",title:el.yAxis.title,min:Math.min(d,s),max:Math.max(p,u)}}function TGe(i){let s=[];if(i.length===0)return s;if(!gJ){const u=$R(el.xAxis)?el.xAxis.min:1/0,d=$R(el.xAxis)?el.xAxis.max:-1/0;EGe(Math.min(u,1),Math.max(d,i.length))}if(pve||rrn(i),dGe(el.xAxis)&&(s=el.xAxis.categories.map((u,d)=>[u,i[d]])),$R(el.xAxis)){const u=el.xAxis.min,d=el.xAxis.max,p=(d-u+1)/i.length,v=[];for(let b=u;b<=d;b+=p)v.push(`${b}`);s=v.map((b,y)=>[b,i[y]])}return s}function CGe(i){return gve[i===0?0:i%gve.length]}function irn(i,s){const u=TGe(s);el.plots.push({type:"line",strokeFill:CGe(zR),strokeWidth:2,data:u}),zR++}function srn(i,s){const u=TGe(s);el.plots.push({type:"bar",fill:CGe(zR),data:u}),zR++}function arn(){if(el.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return el.title=Ap(),Xnn.build(qR,el,HR,wGe)}function orn(){return HR}function crn(){return qR}const urn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:$nn,db:{getDrawableElem:arn,clear:function(){Pg(),zR=0,qR=xGe(),el=kGe(),HR=yGe(),gve=HR.plotColorPalette.split(",").map(i=>i.trim()),gJ=!1,pve=!1},setAccTitle:Bg,getAccTitle:Cp,setDiagramTitle:cm,getDiagramTitle:Ap,getAccDescription:_p,setAccDescription:Sp,setOrientation:Jnn,setXAxisTitle:Znn,setXAxisRangeData:EGe,setXAxisBand:ern,setYAxisTitle:trn,setYAxisRangeData:nrn,setLineData:irn,setBarData:srn,setTmpSVGG:Qnn,getChartThemeConfig:orn,getChartConfig:crn},renderer:{draw:(i,s,u,d)=>{const p=d.db,v=p.getChartThemeConfig(),b=p.getChartConfig();function y(ee){return ee==="top"?"text-before-edge":"middle"}function T(ee){return ee==="left"?"start":ee==="right"?"end":"middle"}function _(ee){return`translate(${ee.x}, ${ee.y}) rotate(${ee.rotation||0})`}Xe.debug(`Rendering xychart chart
+`+i);const A=rR(s),P=A.append("g").attr("class","main"),R=P.append("rect").attr("width",b.width).attr("height",b.height).attr("class","background");Ng(A,b.height,b.width,!0),A.attr("viewBox",`0 0 ${b.width} ${b.height}`),R.attr("fill",v.backgroundColor),p.setTmpSVGG(A.append("g").attr("class","mermaid-tmp-group"));const F=p.getDrawableElem(),j={};function K(ee){let ie=P,oe="";for(const[pe]of ee.entries()){let be=P;pe>0&&j[oe]&&(be=j[oe]),oe+=ee[pe],ie=j[oe],ie||(ie=j[oe]=be.append("g").attr("class",ee[pe]))}return ie}for(const ee of F){if(ee.data.length===0)continue;const ie=K(ee.groupTexts);switch(ee.type){case"rect":ie.selectAll("rect").data(ee.data).enter().append("rect").attr("x",oe=>oe.x).attr("y",oe=>oe.y).attr("width",oe=>oe.width).attr("height",oe=>oe.height).attr("fill",oe=>oe.fill).attr("stroke",oe=>oe.strokeFill).attr("stroke-width",oe=>oe.strokeWidth);break;case"text":ie.selectAll("text").data(ee.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",oe=>oe.fill).attr("font-size",oe=>oe.fontSize).attr("dominant-baseline",oe=>y(oe.verticalPos)).attr("text-anchor",oe=>T(oe.horizontalPos)).attr("transform",oe=>_(oe)).text(oe=>oe.text);break;case"path":ie.selectAll("path").data(ee.data).enter().append("path").attr("d",oe=>oe.path).attr("fill",oe=>oe.fill?oe.fill:"none").attr("stroke",oe=>oe.strokeFill).attr("stroke-width",oe=>oe.strokeWidth);break}}}}}},Symbol.toStringTag,{value:"Module"}));var mve=function(){var i=function(_t,Et,Gt,ln){for(Gt=Gt||{},ln=_t.length;ln--;Gt[_t[ln]]=Et);return Gt},s=[1,3],u=[1,4],d=[1,5],p=[1,6],v=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],b=[1,18],y=[2,7],T=[1,22],_=[1,23],A=[1,24],P=[1,25],R=[1,26],F=[1,27],j=[1,20],K=[1,28],ee=[1,29],ie=[62,63],oe=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],pe=[1,47],be=[1,48],ae=[1,49],ne=[1,50],se=[1,51],de=[1,52],X=[1,53],ge=[53,54],W=[1,64],xe=[1,60],U=[1,61],Fe=[1,62],Pe=[1,63],je=[1,65],Ie=[1,69],Se=[1,70],Ce=[1,67],ke=[1,68],Ke=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],Ft={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:function(Et,Gt,ln,xt,Pt,Qe,Dt){var kt=Qe.length-1;switch(Pt){case 4:this.$=Qe[kt].trim(),xt.setAccTitle(this.$);break;case 5:case 6:this.$=Qe[kt].trim(),xt.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:xt.addRequirement(Qe[kt-3],Qe[kt-4]);break;case 14:xt.setNewReqId(Qe[kt-2]);break;case 15:xt.setNewReqText(Qe[kt-2]);break;case 16:xt.setNewReqRisk(Qe[kt-2]);break;case 17:xt.setNewReqVerifyMethod(Qe[kt-2]);break;case 20:this.$=xt.RequirementType.REQUIREMENT;break;case 21:this.$=xt.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=xt.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=xt.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=xt.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=xt.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=xt.RiskLevel.LOW_RISK;break;case 27:this.$=xt.RiskLevel.MED_RISK;break;case 28:this.$=xt.RiskLevel.HIGH_RISK;break;case 29:this.$=xt.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=xt.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=xt.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=xt.VerifyType.VERIFY_TEST;break;case 33:xt.addElement(Qe[kt-3]);break;case 34:xt.setNewElementType(Qe[kt-2]);break;case 35:xt.setNewElementDocRef(Qe[kt-2]);break;case 38:xt.addRelationship(Qe[kt-2],Qe[kt],Qe[kt-4]);break;case 39:xt.addRelationship(Qe[kt-2],Qe[kt-4],Qe[kt]);break;case 40:this.$=xt.Relationships.CONTAINS;break;case 41:this.$=xt.Relationships.COPIES;break;case 42:this.$=xt.Relationships.DERIVES;break;case 43:this.$=xt.Relationships.SATISFIES;break;case 44:this.$=xt.Relationships.VERIFIES;break;case 45:this.$=xt.Relationships.REFINES;break;case 46:this.$=xt.Relationships.TRACES;break}},table:[{3:1,4:2,6:s,9:u,11:d,13:p},{1:[3]},{3:8,4:2,5:[1,7],6:s,9:u,11:d,13:p},{5:[1,9]},{10:[1,10]},{12:[1,11]},i(v,[2,6]),{3:12,4:2,6:s,9:u,11:d,13:p},{1:[2,2]},{4:17,5:b,7:13,8:y,9:u,11:d,13:p,14:14,15:15,16:16,17:19,23:21,31:T,32:_,33:A,34:P,35:R,36:F,44:j,62:K,63:ee},i(v,[2,4]),i(v,[2,5]),{1:[2,1]},{8:[1,30]},{4:17,5:b,7:31,8:y,9:u,11:d,13:p,14:14,15:15,16:16,17:19,23:21,31:T,32:_,33:A,34:P,35:R,36:F,44:j,62:K,63:ee},{4:17,5:b,7:32,8:y,9:u,11:d,13:p,14:14,15:15,16:16,17:19,23:21,31:T,32:_,33:A,34:P,35:R,36:F,44:j,62:K,63:ee},{4:17,5:b,7:33,8:y,9:u,11:d,13:p,14:14,15:15,16:16,17:19,23:21,31:T,32:_,33:A,34:P,35:R,36:F,44:j,62:K,63:ee},{4:17,5:b,7:34,8:y,9:u,11:d,13:p,14:14,15:15,16:16,17:19,23:21,31:T,32:_,33:A,34:P,35:R,36:F,44:j,62:K,63:ee},{4:17,5:b,7:35,8:y,9:u,11:d,13:p,14:14,15:15,16:16,17:19,23:21,31:T,32:_,33:A,34:P,35:R,36:F,44:j,62:K,63:ee},{18:36,62:[1,37],63:[1,38]},{45:39,62:[1,40],63:[1,41]},{51:[1,42],53:[1,43]},i(ie,[2,20]),i(ie,[2,21]),i(ie,[2,22]),i(ie,[2,23]),i(ie,[2,24]),i(ie,[2,25]),i(oe,[2,49]),i(oe,[2,50]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{19:[1,44]},{19:[2,47]},{19:[2,48]},{19:[1,45]},{19:[2,53]},{19:[2,54]},{52:46,55:pe,56:be,57:ae,58:ne,59:se,60:de,61:X},{52:54,55:pe,56:be,57:ae,58:ne,59:se,60:de,61:X},{5:[1,55]},{5:[1,56]},{53:[1,57]},i(ge,[2,40]),i(ge,[2,41]),i(ge,[2,42]),i(ge,[2,43]),i(ge,[2,44]),i(ge,[2,45]),i(ge,[2,46]),{54:[1,58]},{5:W,20:59,21:xe,24:U,26:Fe,28:Pe,30:je},{5:Ie,30:Se,46:66,47:Ce,49:ke},{23:71,62:K,63:ee},{23:72,62:K,63:ee},i(Ke,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:W,20:77,21:xe,24:U,26:Fe,28:Pe,30:je},i(Ke,[2,19]),i(Ke,[2,33]),{22:[1,78]},{22:[1,79]},{5:Ie,30:Se,46:80,47:Ce,49:ke},i(Ke,[2,37]),i(Ke,[2,38]),i(Ke,[2,39]),{23:81,62:K,63:ee},{25:82,62:[1,83],63:[1,84]},{27:85,37:[1,86],38:[1,87],39:[1,88]},{29:89,40:[1,90],41:[1,91],42:[1,92],43:[1,93]},i(Ke,[2,18]),{48:94,62:[1,95],63:[1,96]},{50:97,62:[1,98],63:[1,99]},i(Ke,[2,36]),{5:[1,100]},{5:[1,101]},{5:[2,51]},{5:[2,52]},{5:[1,102]},{5:[2,26]},{5:[2,27]},{5:[2,28]},{5:[1,103]},{5:[2,29]},{5:[2,30]},{5:[2,31]},{5:[2,32]},{5:[1,104]},{5:[2,55]},{5:[2,56]},{5:[1,105]},{5:[2,57]},{5:[2,58]},{5:W,20:106,21:xe,24:U,26:Fe,28:Pe,30:je},{5:W,20:107,21:xe,24:U,26:Fe,28:Pe,30:je},{5:W,20:108,21:xe,24:U,26:Fe,28:Pe,30:je},{5:W,20:109,21:xe,24:U,26:Fe,28:Pe,30:je},{5:Ie,30:Se,46:110,47:Ce,49:ke},{5:Ie,30:Se,46:111,47:Ce,49:ke},i(Ke,[2,14]),i(Ke,[2,15]),i(Ke,[2,16]),i(Ke,[2,17]),i(Ke,[2,34]),i(Ke,[2,35])],defaultActions:{8:[2,2],12:[2,1],30:[2,3],31:[2,8],32:[2,9],33:[2,10],34:[2,11],35:[2,12],37:[2,47],38:[2,48],40:[2,53],41:[2,54],83:[2,51],84:[2,52],86:[2,26],87:[2,27],88:[2,28],90:[2,29],91:[2,30],92:[2,31],93:[2,32],95:[2,55],96:[2,56],98:[2,57],99:[2,58]},parseError:function(Et,Gt){if(Gt.recoverable)this.trace(Et);else{var ln=new Error(Et);throw ln.hash=Gt,ln}},parse:function(Et){var Gt=this,ln=[0],xt=[],Pt=[null],Qe=[],Dt=this.table,kt="",On=0,ht=0,zr=2,yt=1,ji=Qe.slice.call(arguments,1),xi=Object.create(this.lexer),Ma={yy:{}};for(var zs in this.yy)Object.prototype.hasOwnProperty.call(this.yy,zs)&&(Ma.yy[zs]=this.yy[zs]);xi.setInput(Et,Ma.yy),Ma.yy.lexer=xi,Ma.yy.parser=this,typeof xi.yylloc>"u"&&(xi.yylloc={});var ao=xi.yylloc;Qe.push(ao);var Tr=xi.options&&xi.options.ranges;typeof Ma.yy.parseError=="function"?this.parseError=Ma.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Fn(){var Pa;return Pa=xt.pop()||xi.lex()||yt,typeof Pa!="number"&&(Pa instanceof Array&&(xt=Pa,Pa=xt.pop()),Pa=Gt.symbols_[Pa]||Pa),Pa}for(var qn,Un,At,wt,on={},fn,An,oo,jo;;){if(Un=ln[ln.length-1],this.defaultActions[Un]?At=this.defaultActions[Un]:((qn===null||typeof qn>"u")&&(qn=Fn()),At=Dt[Un]&&Dt[Un][qn]),typeof At>"u"||!At.length||!At[0]){var $o="";jo=[];for(fn in Dt[Un])this.terminals_[fn]&&fn>zr&&jo.push("'"+this.terminals_[fn]+"'");xi.showPosition?$o="Parse error on line "+(On+1)+`:
+`+xi.showPosition()+`
+Expecting `+jo.join(", ")+", got '"+(this.terminals_[qn]||qn)+"'":$o="Parse error on line "+(On+1)+": Unexpected "+(qn==yt?"end of input":"'"+(this.terminals_[qn]||qn)+"'"),this.parseError($o,{text:xi.match,token:this.terminals_[qn]||qn,line:xi.yylineno,loc:ao,expected:jo})}if(At[0]instanceof Array&&At.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Un+", token: "+qn);switch(At[0]){case 1:ln.push(qn),Pt.push(xi.yytext),Qe.push(xi.yylloc),ln.push(At[1]),qn=null,ht=xi.yyleng,kt=xi.yytext,On=xi.yylineno,ao=xi.yylloc;break;case 2:if(An=this.productions_[At[1]][1],on.$=Pt[Pt.length-An],on._$={first_line:Qe[Qe.length-(An||1)].first_line,last_line:Qe[Qe.length-1].last_line,first_column:Qe[Qe.length-(An||1)].first_column,last_column:Qe[Qe.length-1].last_column},Tr&&(on._$.range=[Qe[Qe.length-(An||1)].range[0],Qe[Qe.length-1].range[1]]),wt=this.performAction.apply(on,[kt,ht,On,Ma.yy,At[1],Pt,Qe].concat(ji)),typeof wt<"u")return wt;An&&(ln=ln.slice(0,-1*An*2),Pt=Pt.slice(0,-1*An),Qe=Qe.slice(0,-1*An)),ln.push(this.productions_[At[1]][0]),Pt.push(on.$),Qe.push(on._$),oo=Dt[ln[ln.length-2]][ln[ln.length-1]],ln.push(oo);break;case 3:return!0}}return!0}},Ne=function(){var _t={EOF:1,parseError:function(Gt,ln){if(this.yy.parser)this.yy.parser.parseError(Gt,ln);else throw new Error(Gt)},setInput:function(Et,Gt){return this.yy=Gt||this.yy||{},this._input=Et,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 Et=this._input[0];this.yytext+=Et,this.yyleng++,this.offset++,this.match+=Et,this.matched+=Et;var Gt=Et.match(/(?:\r\n?|\n).*/g);return Gt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Et},unput:function(Et){var Gt=Et.length,ln=Et.split(/(?:\r\n?|\n)/g);this._input=Et+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Gt),this.offset-=Gt;var xt=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),ln.length-1&&(this.yylineno-=ln.length-1);var Pt=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:ln?(ln.length===xt.length?this.yylloc.first_column:0)+xt[xt.length-ln.length].length-ln[0].length:this.yylloc.first_column-Gt},this.options.ranges&&(this.yylloc.range=[Pt[0],Pt[0]+this.yyleng-Gt]),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(Et){this.unput(this.match.slice(Et))},pastInput:function(){var Et=this.matched.substr(0,this.matched.length-this.match.length);return(Et.length>20?"...":"")+Et.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Et=this.match;return Et.length<20&&(Et+=this._input.substr(0,20-Et.length)),(Et.substr(0,20)+(Et.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Et=this.pastInput(),Gt=new Array(Et.length+1).join("-");return Et+this.upcomingInput()+`
+`+Gt+"^"},test_match:function(Et,Gt){var ln,xt,Pt;if(this.options.backtrack_lexer&&(Pt={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&&(Pt.yylloc.range=this.yylloc.range.slice(0))),xt=Et[0].match(/(?:\r\n?|\n).*/g),xt&&(this.yylineno+=xt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xt?xt[xt.length-1].length-xt[xt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Et[0].length},this.yytext+=Et[0],this.match+=Et[0],this.matches=Et,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(Et[0].length),this.matched+=Et[0],ln=this.performAction.call(this,this.yy,this,Gt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ln)return ln;if(this._backtrack){for(var Qe in Pt)this[Qe]=Pt[Qe];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Et,Gt,ln,xt;this._more||(this.yytext="",this.match="");for(var Pt=this._currentRules(),Qe=0;QeGt[0].length)){if(Gt=ln,xt=Qe,this.options.backtrack_lexer){if(Et=this.test_match(ln,Pt[Qe]),Et!==!1)return Et;if(this._backtrack){Gt=!1;continue}else return!1}else if(!this.options.flex)break}return Gt?(Et=this.test_match(Gt,Pt[xt]),Et!==!1?Et:!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 Gt=this.next();return Gt||this.lex()},begin:function(Gt){this.conditionStack.push(Gt)},popState:function(){var Gt=this.conditionStack.length-1;return Gt>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(Gt){return Gt=this.conditionStack.length-1-Math.abs(Gt||0),Gt>=0?this.conditionStack[Gt]:"INITIAL"},pushState:function(Gt){this.begin(Gt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Gt,ln,xt,Pt){switch(xt){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:return 8;case 13:return 6;case 14:return 19;case 15:return 30;case 16:return 22;case 17:return 21;case 18:return 24;case 19:return 26;case 20:return 28;case 21:return 31;case 22:return 32;case 23:return 33;case 24:return 34;case 25:return 35;case 26:return 36;case 27:return 37;case 28:return 38;case 29:return 39;case 30:return 40;case 31:return 41;case 32:return 42;case 33:return 43;case 34:return 44;case 35:return 55;case 36:return 56;case 37:return 57;case 38:return 58;case 39:return 59;case 40:return 60;case 41:return 61;case 42:return 47;case 43:return 49;case 44:return 51;case 45:return 54;case 46:return 53;case 47:this.begin("string");break;case 48:this.popState();break;case 49:return"qString";case 50:return ln.yytext=ln.yytext.trim(),62}},rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[48,49],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,50],inclusive:!0}}};return _t}();Ft.lexer=Ne;function gn(){this.yy={}}return gn.prototype=Ft,Ft.Parser=gn,new gn}();mve.parser=mve;const lrn=mve;let vve=[],V2={},VR={},F9={},UR={};const hrn={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},getConfig:()=>qt().req,addRequirement:(i,s)=>(VR[i]===void 0&&(VR[i]={name:i,type:s,id:V2.id,text:V2.text,risk:V2.risk,verifyMethod:V2.verifyMethod}),V2={},VR[i]),getRequirements:()=>VR,setNewReqId:i=>{V2!==void 0&&(V2.id=i)},setNewReqText:i=>{V2!==void 0&&(V2.text=i)},setNewReqRisk:i=>{V2!==void 0&&(V2.risk=i)},setNewReqVerifyMethod:i=>{V2!==void 0&&(V2.verifyMethod=i)},setAccTitle:Bg,getAccTitle:Cp,setAccDescription:Sp,getAccDescription:_p,addElement:i=>(UR[i]===void 0&&(UR[i]={name:i,type:F9.type,docRef:F9.docRef},Xe.info("Added new requirement: ",i)),F9={},UR[i]),getElements:()=>UR,setNewElementType:i=>{F9!==void 0&&(F9.type=i)},setNewElementDocRef:i=>{F9!==void 0&&(F9.docRef=i)},addRelationship:(i,s,u)=>{vve.push({type:i,src:s,dst:u})},getRelationships:()=>vve,clear:()=>{vve=[],V2={},VR={},F9={},UR={},Pg()}},frn=i=>`
+
+ marker {
+ fill: ${i.relationColor};
+ stroke: ${i.relationColor};
+ }
+
+ marker.cross {
+ stroke: ${i.lineColor};
+ }
+
+ svg {
+ font-family: ${i.fontFamily};
+ font-size: ${i.fontSize};
+ }
+
+ .reqBox {
+ fill: ${i.requirementBackground};
+ fill-opacity: 1.0;
+ stroke: ${i.requirementBorderColor};
+ stroke-width: ${i.requirementBorderSize};
+ }
+
+ .reqTitle, .reqLabel{
+ fill: ${i.requirementTextColor};
+ }
+ .reqLabelBox {
+ fill: ${i.relationLabelBackground};
+ fill-opacity: 1.0;
+ }
+
+ .req-title-line {
+ stroke: ${i.requirementBorderColor};
+ stroke-width: ${i.requirementBorderSize};
+ }
+ .relationshipLine {
+ stroke: ${i.relationColor};
+ stroke-width: 1;
+ }
+ .relationshipLabel {
+ fill: ${i.relationLabelColor};
+ }
+
+`,wve={CONTAINS:"contains",ARROW:"arrow"},SGe={ReqMarkers:wve,insertLineEndings:(i,s)=>{let u=i.append("defs").append("marker").attr("id",wve.CONTAINS+"_line_ending").attr("refX",0).attr("refY",s.line_height/2).attr("markerWidth",s.line_height).attr("markerHeight",s.line_height).attr("orient","auto").append("g");u.append("circle").attr("cx",s.line_height/2).attr("cy",s.line_height/2).attr("r",s.line_height/2).attr("fill","none"),u.append("line").attr("x1",0).attr("x2",s.line_height).attr("y1",s.line_height/2).attr("y2",s.line_height/2).attr("stroke-width",1),u.append("line").attr("y1",0).attr("y2",s.line_height).attr("x1",s.line_height/2).attr("x2",s.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",wve.ARROW+"_line_ending").attr("refX",s.line_height).attr("refY",.5*s.line_height).attr("markerWidth",s.line_height).attr("markerHeight",s.line_height).attr("orient","auto").append("path").attr("d",`M0,0
+ L${s.line_height},${s.line_height/2}
+ M${s.line_height},${s.line_height/2}
+ L0,${s.line_height}`).attr("stroke-width",1)}};let Tf={},_Ge=0;const AGe=(i,s)=>i.insert("rect","#"+s).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Tf.rect_min_width+"px").attr("height",Tf.rect_min_height+"px"),LGe=(i,s,u)=>{let d=Tf.rect_min_width/2,p=i.append("text").attr("class","req reqLabel reqTitle").attr("id",s).attr("x",d).attr("y",Tf.rect_padding).attr("dominant-baseline","hanging"),v=0;u.forEach(_=>{v==0?p.append("tspan").attr("text-anchor","middle").attr("x",Tf.rect_min_width/2).attr("dy",0).text(_):p.append("tspan").attr("text-anchor","middle").attr("x",Tf.rect_min_width/2).attr("dy",Tf.line_height*.75).text(_),v++});let b=1.5*Tf.rect_padding,y=v*Tf.line_height*.75,T=b+y;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Tf.rect_min_width).attr("y1",T).attr("y2",T),{titleNode:p,y:T}},MGe=(i,s,u,d)=>{let p=i.append("text").attr("class","req reqLabel").attr("id",s).attr("x",Tf.rect_padding).attr("y",d).attr("dominant-baseline","hanging"),v=0;const b=30;let y=[];return u.forEach(T=>{let _=T.length;for(;_>b&&v<3;){let A=T.substring(0,b);T=T.substring(b,T.length),_=T.length,y[y.length]=A,v++}if(v==3){let A=y[y.length-1];y[y.length-1]=A.substring(0,A.length-4)+"..."}else y[y.length]=T;v=0}),y.forEach(T=>{p.append("tspan").attr("x",Tf.rect_padding).attr("dy",Tf.line_height).text(T)}),p},drn=(i,s,u,d)=>{const p=s.node().getTotalLength(),v=s.node().getPointAtLength(p*.5),b="rel"+_Ge;_Ge++;const T=i.append("text").attr("class","req relationshipLabel").attr("id",b).attr("x",v.x).attr("y",v.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(d).node().getBBox();i.insert("rect","#"+b).attr("class","req reqLabelBox").attr("x",v.x-T.width/2).attr("y",v.y-T.height/2).attr("width",T.width).attr("height",T.height).attr("fill","white").attr("fill-opacity","85%")},grn=function(i,s,u,d,p){const v=u.edge(WD(s.src),WD(s.dst)),b=k7().x(function(T){return T.x}).y(function(T){return T.y}),y=i.insert("path","#"+d).attr("class","er relationshipLine").attr("d",b(v.points)).attr("fill","none");s.type==p.db.Relationships.CONTAINS?y.attr("marker-start","url("+ci.getUrl(Tf.arrowMarkerAbsolute)+"#"+s.type+"_line_ending)"):(y.attr("stroke-dasharray","10,7"),y.attr("marker-end","url("+ci.getUrl(Tf.arrowMarkerAbsolute)+"#"+SGe.ReqMarkers.ARROW+"_line_ending)")),drn(i,y,Tf,`<<${s.type}>>`)},prn=(i,s,u)=>{Object.keys(i).forEach(d=>{let p=i[d];d=WD(d),Xe.info("Added new requirement: ",d);const v=u.append("g").attr("id",d),b="req-"+d,y=AGe(v,b);let T=LGe(v,d+"_title",[`<<${p.type}>>`,`${p.name}`]);MGe(v,d+"_body",[`Id: ${p.id}`,`Text: ${p.text}`,`Risk: ${p.risk}`,`Verification: ${p.verifyMethod}`],T.y);const _=y.node().getBBox();s.setNode(d,{width:_.width,height:_.height,shape:"rect",id:d})})},brn=(i,s,u)=>{Object.keys(i).forEach(d=>{let p=i[d];const v=WD(d),b=u.append("g").attr("id",v),y="element-"+v,T=AGe(b,y);let _=LGe(b,y+"_title",["<>",`${d}`]);MGe(b,y+"_body",[`Type: ${p.type||"Not Specified"}`,`Doc Ref: ${p.docRef||"None"}`],_.y);const A=T.node().getBBox();s.setNode(v,{width:A.width,height:A.height,shape:"rect",id:v})})},mrn=(i,s)=>(i.forEach(function(u){let d=WD(u.src),p=WD(u.dst);s.setEdge(d,p,{relationship:u})}),i),vrn=function(i,s){s.nodes().forEach(function(u){u!==void 0&&s.node(u)!==void 0&&(i.select("#"+u),i.select("#"+u).attr("transform","translate("+(s.node(u).x-s.node(u).width/2)+","+(s.node(u).y-s.node(u).height/2)+" )"))})},WD=i=>i.replace(/\s/g,"").replace(/\./g,"_"),wrn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:lrn,db:hrn,renderer:{draw:(i,s,u,d)=>{Tf=qt().requirement;const p=Tf.securityLevel;let v;p==="sandbox"&&(v=Ir("#i"+s));const y=Ir(p==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${s}']`);SGe.insertLineEndings(y,Tf);const T=new B0({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Tf.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let _=d.db.getRequirements(),A=d.db.getElements(),P=d.db.getRelationships();prn(_,T,y),brn(A,T,y),mrn(P,T),qD(T),vrn(y,T),P.forEach(function(ee){grn(y,ee,T,s,d)});const R=Tf.rect_padding,F=y.node().getBBox(),j=F.width+R*2,K=F.height+R*2;Ng(y,K,j,Tf.useMaxWidth),y.attr("viewBox",`${F.x-R} ${F.y-R} ${j} ${K}`)}},styles:frn}},Symbol.toStringTag,{value:"Module"}));var yve=function(){var i=function(xt,Pt,Qe,Dt){for(Qe=Qe||{},Dt=xt.length;Dt--;Qe[xt[Dt]]=Pt);return Qe},s=[1,2],u=[1,3],d=[1,4],p=[2,4],v=[1,9],b=[1,11],y=[1,13],T=[1,14],_=[1,16],A=[1,17],P=[1,18],R=[1,24],F=[1,25],j=[1,26],K=[1,27],ee=[1,28],ie=[1,29],oe=[1,30],pe=[1,31],be=[1,32],ae=[1,33],ne=[1,34],se=[1,35],de=[1,36],X=[1,37],ge=[1,38],W=[1,39],xe=[1,41],U=[1,42],Fe=[1,43],Pe=[1,44],je=[1,45],Ie=[1,46],Se=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],Ce=[4,5,16,50,52,53],ke=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],Ke=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],Ft=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],Ne=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],gn=[68,69,70],_t=[1,120],Et={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,DOTTED_ARROW:74,SOLID_CROSS:75,DOTTED_CROSS:76,SOLID_POINT:77,DOTTED_POINT:78,TXT:79,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"DOTTED_ARROW",75:"SOLID_CROSS",76:"DOTTED_CROSS",77:"SOLID_POINT",78:"DOTTED_POINT",79:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:function(Pt,Qe,Dt,kt,On,ht,zr){var yt=ht.length-1;switch(On){case 3:return kt.apply(ht[yt]),ht[yt];case 4:case 9:this.$=[];break;case 5:case 10:ht[yt-1].push(ht[yt]),this.$=ht[yt-1];break;case 6:case 7:case 11:case 12:this.$=ht[yt];break;case 8:case 13:this.$=[];break;case 15:ht[yt].type="createParticipant",this.$=ht[yt];break;case 16:ht[yt-1].unshift({type:"boxStart",boxData:kt.parseBoxData(ht[yt-2])}),ht[yt-1].push({type:"boxEnd",boxText:ht[yt-2]}),this.$=ht[yt-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(ht[yt-2]),sequenceIndexStep:Number(ht[yt-1]),sequenceVisible:!0,signalType:kt.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(ht[yt-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:kt.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:kt.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:kt.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:kt.LINETYPE.ACTIVE_START,actor:ht[yt-1]};break;case 23:this.$={type:"activeEnd",signalType:kt.LINETYPE.ACTIVE_END,actor:ht[yt-1]};break;case 29:kt.setDiagramTitle(ht[yt].substring(6)),this.$=ht[yt].substring(6);break;case 30:kt.setDiagramTitle(ht[yt].substring(7)),this.$=ht[yt].substring(7);break;case 31:this.$=ht[yt].trim(),kt.setAccTitle(this.$);break;case 32:case 33:this.$=ht[yt].trim(),kt.setAccDescription(this.$);break;case 34:ht[yt-1].unshift({type:"loopStart",loopText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.LOOP_START}),ht[yt-1].push({type:"loopEnd",loopText:ht[yt-2],signalType:kt.LINETYPE.LOOP_END}),this.$=ht[yt-1];break;case 35:ht[yt-1].unshift({type:"rectStart",color:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.RECT_START}),ht[yt-1].push({type:"rectEnd",color:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.RECT_END}),this.$=ht[yt-1];break;case 36:ht[yt-1].unshift({type:"optStart",optText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.OPT_START}),ht[yt-1].push({type:"optEnd",optText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.OPT_END}),this.$=ht[yt-1];break;case 37:ht[yt-1].unshift({type:"altStart",altText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.ALT_START}),ht[yt-1].push({type:"altEnd",signalType:kt.LINETYPE.ALT_END}),this.$=ht[yt-1];break;case 38:ht[yt-1].unshift({type:"parStart",parText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.PAR_START}),ht[yt-1].push({type:"parEnd",signalType:kt.LINETYPE.PAR_END}),this.$=ht[yt-1];break;case 39:ht[yt-1].unshift({type:"parStart",parText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.PAR_OVER_START}),ht[yt-1].push({type:"parEnd",signalType:kt.LINETYPE.PAR_END}),this.$=ht[yt-1];break;case 40:ht[yt-1].unshift({type:"criticalStart",criticalText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.CRITICAL_START}),ht[yt-1].push({type:"criticalEnd",signalType:kt.LINETYPE.CRITICAL_END}),this.$=ht[yt-1];break;case 41:ht[yt-1].unshift({type:"breakStart",breakText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.BREAK_START}),ht[yt-1].push({type:"breakEnd",optText:kt.parseMessage(ht[yt-2]),signalType:kt.LINETYPE.BREAK_END}),this.$=ht[yt-1];break;case 43:this.$=ht[yt-3].concat([{type:"option",optionText:kt.parseMessage(ht[yt-1]),signalType:kt.LINETYPE.CRITICAL_OPTION},ht[yt]]);break;case 45:this.$=ht[yt-3].concat([{type:"and",parText:kt.parseMessage(ht[yt-1]),signalType:kt.LINETYPE.PAR_AND},ht[yt]]);break;case 47:this.$=ht[yt-3].concat([{type:"else",altText:kt.parseMessage(ht[yt-1]),signalType:kt.LINETYPE.ALT_ELSE},ht[yt]]);break;case 48:ht[yt-3].draw="participant",ht[yt-3].type="addParticipant",ht[yt-3].description=kt.parseMessage(ht[yt-1]),this.$=ht[yt-3];break;case 49:ht[yt-1].draw="participant",ht[yt-1].type="addParticipant",this.$=ht[yt-1];break;case 50:ht[yt-3].draw="actor",ht[yt-3].type="addParticipant",ht[yt-3].description=kt.parseMessage(ht[yt-1]),this.$=ht[yt-3];break;case 51:ht[yt-1].draw="actor",ht[yt-1].type="addParticipant",this.$=ht[yt-1];break;case 52:ht[yt-1].type="destroyParticipant",this.$=ht[yt-1];break;case 53:this.$=[ht[yt-1],{type:"addNote",placement:ht[yt-2],actor:ht[yt-1].actor,text:ht[yt]}];break;case 54:ht[yt-2]=[].concat(ht[yt-1],ht[yt-1]).slice(0,2),ht[yt-2][0]=ht[yt-2][0].actor,ht[yt-2][1]=ht[yt-2][1].actor,this.$=[ht[yt-1],{type:"addNote",placement:kt.PLACEMENT.OVER,actor:ht[yt-2].slice(0,2),text:ht[yt]}];break;case 55:this.$=[ht[yt-1],{type:"addLinks",actor:ht[yt-1].actor,text:ht[yt]}];break;case 56:this.$=[ht[yt-1],{type:"addALink",actor:ht[yt-1].actor,text:ht[yt]}];break;case 57:this.$=[ht[yt-1],{type:"addProperties",actor:ht[yt-1].actor,text:ht[yt]}];break;case 58:this.$=[ht[yt-1],{type:"addDetails",actor:ht[yt-1].actor,text:ht[yt]}];break;case 61:this.$=[ht[yt-2],ht[yt]];break;case 62:this.$=ht[yt];break;case 63:this.$=kt.PLACEMENT.LEFTOF;break;case 64:this.$=kt.PLACEMENT.RIGHTOF;break;case 65:this.$=[ht[yt-4],ht[yt-1],{type:"addMessage",from:ht[yt-4].actor,to:ht[yt-1].actor,signalType:ht[yt-3],msg:ht[yt],activate:!0},{type:"activeStart",signalType:kt.LINETYPE.ACTIVE_START,actor:ht[yt-1]}];break;case 66:this.$=[ht[yt-4],ht[yt-1],{type:"addMessage",from:ht[yt-4].actor,to:ht[yt-1].actor,signalType:ht[yt-3],msg:ht[yt]},{type:"activeEnd",signalType:kt.LINETYPE.ACTIVE_END,actor:ht[yt-4]}];break;case 67:this.$=[ht[yt-3],ht[yt-1],{type:"addMessage",from:ht[yt-3].actor,to:ht[yt-1].actor,signalType:ht[yt-2],msg:ht[yt]}];break;case 68:this.$={type:"addParticipant",actor:ht[yt]};break;case 69:this.$=kt.LINETYPE.SOLID_OPEN;break;case 70:this.$=kt.LINETYPE.DOTTED_OPEN;break;case 71:this.$=kt.LINETYPE.SOLID;break;case 72:this.$=kt.LINETYPE.DOTTED;break;case 73:this.$=kt.LINETYPE.SOLID_CROSS;break;case 74:this.$=kt.LINETYPE.DOTTED_CROSS;break;case 75:this.$=kt.LINETYPE.SOLID_POINT;break;case 76:this.$=kt.LINETYPE.DOTTED_POINT;break;case 77:this.$=kt.parseMessage(ht[yt].trim().substring(1));break}},table:[{3:1,4:s,5:u,6:d},{1:[3]},{3:5,4:s,5:u,6:d},{3:6,4:s,5:u,6:d},i([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],p,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:v,5:b,8:8,9:10,12:12,13:y,14:T,17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},i(Se,[2,5]),{9:47,12:12,13:y,14:T,17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},i(Se,[2,7]),i(Se,[2,8]),i(Se,[2,14]),{12:48,50:X,52:ge,53:W},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:Ie},{22:55,70:Ie},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},i(Se,[2,29]),i(Se,[2,30]),{32:[1,61]},{34:[1,62]},i(Se,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:Ie},{22:72,70:Ie},{22:73,70:Ie},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82]},{55:83,57:[1,84],65:[1,85],66:[1,86]},{22:87,70:Ie},{22:88,70:Ie},{22:89,70:Ie},{22:90,70:Ie},i([5,51,64,71,72,73,74,75,76,77,78,79],[2,68]),i(Se,[2,6]),i(Se,[2,15]),i(Ce,[2,9],{10:91}),i(Se,[2,17]),{5:[1,93],19:[1,92]},{5:[1,94]},i(Se,[2,21]),{5:[1,95]},{5:[1,96]},i(Se,[2,24]),i(Se,[2,25]),i(Se,[2,26]),i(Se,[2,27]),i(Se,[2,28]),i(Se,[2,31]),i(Se,[2,32]),i(ke,p,{7:97}),i(ke,p,{7:98}),i(ke,p,{7:99}),i(Ke,p,{40:100,7:101}),i(Ft,p,{42:102,7:103}),i(Ft,p,{7:103,42:104}),i(Ne,p,{45:105,7:106}),i(ke,p,{7:107}),{5:[1,109],51:[1,108]},{5:[1,111],51:[1,110]},{5:[1,112]},{22:115,68:[1,113],69:[1,114],70:Ie},i(gn,[2,69]),i(gn,[2,70]),i(gn,[2,71]),i(gn,[2,72]),i(gn,[2,73]),i(gn,[2,74]),i(gn,[2,75]),i(gn,[2,76]),{22:116,70:Ie},{22:118,58:117,70:Ie},{70:[2,63]},{70:[2,64]},{56:119,79:_t},{56:121,79:_t},{56:122,79:_t},{56:123,79:_t},{4:[1,126],5:[1,128],11:125,12:127,16:[1,124],50:X,52:ge,53:W},{5:[1,129]},i(Se,[2,19]),i(Se,[2,20]),i(Se,[2,22]),i(Se,[2,23]),{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[1,130],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[1,131],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[1,132],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{16:[1,133]},{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[2,46],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,49:[1,134],50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{16:[1,135]},{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[2,44],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,48:[1,136],50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{16:[1,137]},{16:[1,138]},{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[2,42],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,47:[1,139],50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{4:v,5:b,8:8,9:10,12:12,13:y,14:T,16:[1,140],17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:F,31:j,33:K,35:ee,36:ie,37:oe,38:pe,39:be,41:ae,43:ne,44:se,46:de,50:X,52:ge,53:W,54:xe,59:U,60:Fe,61:Pe,62:je,70:Ie},{15:[1,141]},i(Se,[2,49]),{15:[1,142]},i(Se,[2,51]),i(Se,[2,52]),{22:143,70:Ie},{22:144,70:Ie},{56:145,79:_t},{56:146,79:_t},{56:147,79:_t},{64:[1,148],79:[2,62]},{5:[2,55]},{5:[2,77]},{5:[2,56]},{5:[2,57]},{5:[2,58]},i(Se,[2,16]),i(Ce,[2,10]),{12:149,50:X,52:ge,53:W},i(Ce,[2,12]),i(Ce,[2,13]),i(Se,[2,18]),i(Se,[2,34]),i(Se,[2,35]),i(Se,[2,36]),i(Se,[2,37]),{15:[1,150]},i(Se,[2,38]),{15:[1,151]},i(Se,[2,39]),i(Se,[2,40]),{15:[1,152]},i(Se,[2,41]),{5:[1,153]},{5:[1,154]},{56:155,79:_t},{56:156,79:_t},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:157,70:Ie},i(Ce,[2,11]),i(Ke,p,{7:101,40:158}),i(Ft,p,{7:103,42:159}),i(Ne,p,{7:106,45:160}),i(Se,[2,48]),i(Se,[2,50]),{5:[2,65]},{5:[2,66]},{79:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],85:[2,63],86:[2,64],119:[2,55],120:[2,77],121:[2,56],122:[2,57],123:[2,58],145:[2,67],146:[2,53],147:[2,54],155:[2,65],156:[2,66],157:[2,61],158:[2,47],159:[2,45],160:[2,43]},parseError:function(Pt,Qe){if(Qe.recoverable)this.trace(Pt);else{var Dt=new Error(Pt);throw Dt.hash=Qe,Dt}},parse:function(Pt){var Qe=this,Dt=[0],kt=[],On=[null],ht=[],zr=this.table,yt="",ji=0,xi=0,Ma=2,zs=1,ao=ht.slice.call(arguments,1),Tr=Object.create(this.lexer),Fn={yy:{}};for(var qn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,qn)&&(Fn.yy[qn]=this.yy[qn]);Tr.setInput(Pt,Fn.yy),Fn.yy.lexer=Tr,Fn.yy.parser=this,typeof Tr.yylloc>"u"&&(Tr.yylloc={});var Un=Tr.yylloc;ht.push(Un);var At=Tr.options&&Tr.options.ranges;typeof Fn.yy.parseError=="function"?this.parseError=Fn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function wt(){var da;return da=kt.pop()||Tr.lex()||zs,typeof da!="number"&&(da instanceof Array&&(kt=da,da=kt.pop()),da=Qe.symbols_[da]||da),da}for(var on,fn,An,oo,jo={},$o,Pa,wo,_s;;){if(fn=Dt[Dt.length-1],this.defaultActions[fn]?An=this.defaultActions[fn]:((on===null||typeof on>"u")&&(on=wt()),An=zr[fn]&&zr[fn][on]),typeof An>"u"||!An.length||!An[0]){var tl="";_s=[];for($o in zr[fn])this.terminals_[$o]&&$o>Ma&&_s.push("'"+this.terminals_[$o]+"'");Tr.showPosition?tl="Parse error on line "+(ji+1)+`:
+`+Tr.showPosition()+`
+Expecting `+_s.join(", ")+", got '"+(this.terminals_[on]||on)+"'":tl="Parse error on line "+(ji+1)+": Unexpected "+(on==zs?"end of input":"'"+(this.terminals_[on]||on)+"'"),this.parseError(tl,{text:Tr.match,token:this.terminals_[on]||on,line:Tr.yylineno,loc:Un,expected:_s})}if(An[0]instanceof Array&&An.length>1)throw new Error("Parse Error: multiple actions possible at state: "+fn+", token: "+on);switch(An[0]){case 1:Dt.push(on),On.push(Tr.yytext),ht.push(Tr.yylloc),Dt.push(An[1]),on=null,xi=Tr.yyleng,yt=Tr.yytext,ji=Tr.yylineno,Un=Tr.yylloc;break;case 2:if(Pa=this.productions_[An[1]][1],jo.$=On[On.length-Pa],jo._$={first_line:ht[ht.length-(Pa||1)].first_line,last_line:ht[ht.length-1].last_line,first_column:ht[ht.length-(Pa||1)].first_column,last_column:ht[ht.length-1].last_column},At&&(jo._$.range=[ht[ht.length-(Pa||1)].range[0],ht[ht.length-1].range[1]]),oo=this.performAction.apply(jo,[yt,xi,ji,Fn.yy,An[1],On,ht].concat(ao)),typeof oo<"u")return oo;Pa&&(Dt=Dt.slice(0,-1*Pa*2),On=On.slice(0,-1*Pa),ht=ht.slice(0,-1*Pa)),Dt.push(this.productions_[An[1]][0]),On.push(jo.$),ht.push(jo._$),wo=zr[Dt[Dt.length-2]][Dt[Dt.length-1]],Dt.push(wo);break;case 3:return!0}}return!0}},Gt=function(){var xt={EOF:1,parseError:function(Qe,Dt){if(this.yy.parser)this.yy.parser.parseError(Qe,Dt);else throw new Error(Qe)},setInput:function(Pt,Qe){return this.yy=Qe||this.yy||{},this._input=Pt,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 Pt=this._input[0];this.yytext+=Pt,this.yyleng++,this.offset++,this.match+=Pt,this.matched+=Pt;var Qe=Pt.match(/(?:\r\n?|\n).*/g);return Qe?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Pt},unput:function(Pt){var Qe=Pt.length,Dt=Pt.split(/(?:\r\n?|\n)/g);this._input=Pt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Qe),this.offset-=Qe;var kt=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),Dt.length-1&&(this.yylineno-=Dt.length-1);var On=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:Dt?(Dt.length===kt.length?this.yylloc.first_column:0)+kt[kt.length-Dt.length].length-Dt[0].length:this.yylloc.first_column-Qe},this.options.ranges&&(this.yylloc.range=[On[0],On[0]+this.yyleng-Qe]),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(Pt){this.unput(this.match.slice(Pt))},pastInput:function(){var Pt=this.matched.substr(0,this.matched.length-this.match.length);return(Pt.length>20?"...":"")+Pt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Pt=this.match;return Pt.length<20&&(Pt+=this._input.substr(0,20-Pt.length)),(Pt.substr(0,20)+(Pt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Pt=this.pastInput(),Qe=new Array(Pt.length+1).join("-");return Pt+this.upcomingInput()+`
+`+Qe+"^"},test_match:function(Pt,Qe){var Dt,kt,On;if(this.options.backtrack_lexer&&(On={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&&(On.yylloc.range=this.yylloc.range.slice(0))),kt=Pt[0].match(/(?:\r\n?|\n).*/g),kt&&(this.yylineno+=kt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:kt?kt[kt.length-1].length-kt[kt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Pt[0].length},this.yytext+=Pt[0],this.match+=Pt[0],this.matches=Pt,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(Pt[0].length),this.matched+=Pt[0],Dt=this.performAction.call(this,this.yy,this,Qe,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Dt)return Dt;if(this._backtrack){for(var ht in On)this[ht]=On[ht];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Pt,Qe,Dt,kt;this._more||(this.yytext="",this.match="");for(var On=this._currentRules(),ht=0;htQe[0].length)){if(Qe=Dt,kt=ht,this.options.backtrack_lexer){if(Pt=this.test_match(Dt,On[ht]),Pt!==!1)return Pt;if(this._backtrack){Qe=!1;continue}else return!1}else if(!this.options.flex)break}return Qe?(Pt=this.test_match(Qe,On[kt]),Pt!==!1?Pt:!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 Qe=this.next();return Qe||this.lex()},begin:function(Qe){this.conditionStack.push(Qe)},popState:function(){var Qe=this.conditionStack.length-1;return Qe>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(Qe){return Qe=this.conditionStack.length-1-Math.abs(Qe||0),Qe>=0?this.conditionStack[Qe]:"INITIAL"},pushState:function(Qe){this.begin(Qe)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Qe,Dt,kt,On){switch(kt){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return Dt.yytext=Dt.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return Dt.yytext=Dt.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 71;case 56:return 72;case 57:return 75;case 58:return 76;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 68;case 63:return 69;case 64:return 5;case 65:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65],inclusive:!0}}};return xt}();Et.lexer=Gt;function ln(){this.yy={}}return ln.prototype=Et,Et.Parser=ln,new ln}();yve.parser=yve;const yrn=yve;class xrn{constructor(s){this.init=s,this.records=this.init()}reset(){this.records=this.init()}}const Ds=new xrn(()=>({prevActor:void 0,actors:{},createdActors:{},destroyedActors:{},boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),krn=function(i){Ds.records.boxes.push({name:i.text,wrap:i.wrap===void 0&&JC()||!!i.wrap,fill:i.color,actorKeys:[]}),Ds.records.currentBox=Ds.records.boxes.slice(-1)[0]},xve=function(i,s,u,d){let p=Ds.records.currentBox;const v=Ds.records.actors[i];if(v){if(Ds.records.currentBox&&v.box&&Ds.records.currentBox!==v.box)throw new Error("A same participant should only be defined in one Box: "+v.name+" can't be in '"+v.box.name+"' and in '"+Ds.records.currentBox.name+"' at the same time.");if(p=v.box?v.box:Ds.records.currentBox,v.box=p,v&&s===v.name&&u==null)return}(u==null||u.text==null)&&(u={text:s,wrap:null,type:d}),(d==null||u.text==null)&&(u={text:s,wrap:null,type:d}),Ds.records.actors[i]={box:p,name:s,description:u.text,wrap:u.wrap===void 0&&JC()||!!u.wrap,prevActor:Ds.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:d||"participant"},Ds.records.prevActor&&Ds.records.actors[Ds.records.prevActor]&&(Ds.records.actors[Ds.records.prevActor].nextActor=i),Ds.records.currentBox&&Ds.records.currentBox.actorKeys.push(i),Ds.records.prevActor=i},Ern=i=>{let s,u=0;for(s=0;s>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},b}return Ds.records.messages.push({from:i,to:s,message:u.text,wrap:u.wrap===void 0&&JC()||!!u.wrap,type:d,activate:p}),!0},Crn=function(){return Ds.records.boxes.length>0},Srn=function(){return Ds.records.boxes.some(i=>i.name)},_rn=function(){return Ds.records.messages},Arn=function(){return Ds.records.boxes},Lrn=function(){return Ds.records.actors},Mrn=function(){return Ds.records.createdActors},Drn=function(){return Ds.records.destroyedActors},GR=function(i){return Ds.records.actors[i]},Irn=function(){return Object.keys(Ds.records.actors)},Orn=function(){Ds.records.sequenceNumbersEnabled=!0},Nrn=function(){Ds.records.sequenceNumbersEnabled=!1},Prn=()=>Ds.records.sequenceNumbersEnabled,Brn=function(i){Ds.records.wrapEnabled=i},JC=()=>Ds.records.wrapEnabled!==void 0?Ds.records.wrapEnabled:qt().sequence.wrap,Frn=function(){Ds.reset(),Pg()},Rrn=function(i){const s=i.trim(),u={text:s.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:s.match(/^:?wrap:/)!==null?!0:s.match(/^:?nowrap:/)!==null?!1:void 0};return Xe.debug("parseMessage:",u),u},jrn=function(i){const s=i.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let u=s!=null&&s[1]?s[1].trim():"transparent",d=s!=null&&s[2]?s[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",u)||(u="transparent",d=i.trim());else{const p=new Option().style;p.color=u,p.color!==u&&(u="transparent",d=i.trim())}return{color:u,text:d!==void 0?Yf(d.replace(/^:?(?:no)?wrap:/,""),qt()):void 0,wrap:d!==void 0?d.match(/^:?wrap:/)!==null?!0:d.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},KR={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32},$rn={FILLED:0,OPEN:1},zrn={LEFTOF:0,RIGHTOF:1,OVER:2},DGe=function(i,s,u){const d={actor:i,placement:s,message:u.text,wrap:u.wrap===void 0&&JC()||!!u.wrap},p=[].concat(i,i);Ds.records.notes.push(d),Ds.records.messages.push({from:p[0],to:p[1],message:u.text,wrap:u.wrap===void 0&&JC()||!!u.wrap,type:KR.NOTE,placement:s})},IGe=function(i,s){const u=GR(i);try{let d=Yf(s.text,qt());d=d.replace(/&/g,"&"),d=d.replace(/=/g,"=");const p=JSON.parse(d);kve(u,p)}catch(d){Xe.error("error while parsing actor link text",d)}},qrn=function(i,s){const u=GR(i);try{const b={};let y=Yf(s.text,qt());var d=y.indexOf("@");y=y.replace(/&/g,"&"),y=y.replace(/=/g,"=");var p=y.slice(0,d-1).trim(),v=y.slice(d+1).trim();b[p]=v,kve(u,b)}catch(b){Xe.error("error while parsing actor link text",b)}};function kve(i,s){if(i.links==null)i.links=s;else for(let u in s)i.links[u]=s[u]}const OGe=function(i,s){const u=GR(i);try{let d=Yf(s.text,qt());const p=JSON.parse(d);NGe(u,p)}catch(d){Xe.error("error while parsing actor properties text",d)}};function NGe(i,s){if(i.properties==null)i.properties=s;else for(let u in s)i.properties[u]=s[u]}function Hrn(){Ds.records.currentBox=void 0}const PGe=function(i,s){const u=GR(i),d=document.getElementById(s.text);try{const p=d.innerHTML,v=JSON.parse(p);v.properties&&NGe(u,v.properties),v.links&&kve(u,v.links)}catch(p){Xe.error("error while parsing actor details text",p)}},Vrn=function(i,s){if(i!==void 0&&i.properties!==void 0)return i.properties[s]},BGe=function(i){if(Array.isArray(i))i.forEach(function(s){BGe(s)});else switch(i.type){case"sequenceIndex":Ds.records.messages.push({from:void 0,to:void 0,message:{start:i.sequenceIndex,step:i.sequenceIndexStep,visible:i.sequenceVisible},wrap:!1,type:i.signalType});break;case"addParticipant":xve(i.actor,i.actor,i.description,i.draw);break;case"createParticipant":if(Ds.records.actors[i.actor])throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");Ds.records.lastCreated=i.actor,xve(i.actor,i.actor,i.description,i.draw),Ds.records.createdActors[i.actor]=Ds.records.messages.length;break;case"destroyParticipant":Ds.records.lastDestroyed=i.actor,Ds.records.destroyedActors[i.actor]=Ds.records.messages.length;break;case"activeStart":Jf(i.actor,void 0,void 0,i.signalType);break;case"activeEnd":Jf(i.actor,void 0,void 0,i.signalType);break;case"addNote":DGe(i.actor,i.placement,i.text);break;case"addLinks":IGe(i.actor,i.text);break;case"addALink":qrn(i.actor,i.text);break;case"addProperties":OGe(i.actor,i.text);break;case"addDetails":PGe(i.actor,i.text);break;case"addMessage":if(Ds.records.lastCreated){if(i.to!==Ds.records.lastCreated)throw new Error("The created participant "+Ds.records.lastCreated+" does not have an associated creating message after its declaration. Please check the sequence diagram.");Ds.records.lastCreated=void 0}else if(Ds.records.lastDestroyed){if(i.to!==Ds.records.lastDestroyed&&i.from!==Ds.records.lastDestroyed)throw new Error("The destroyed participant "+Ds.records.lastDestroyed+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");Ds.records.lastDestroyed=void 0}Jf(i.from,i.to,i.msg,i.signalType,i.activate);break;case"boxStart":krn(i.boxData);break;case"boxEnd":Hrn();break;case"loopStart":Jf(void 0,void 0,i.loopText,i.signalType);break;case"loopEnd":Jf(void 0,void 0,void 0,i.signalType);break;case"rectStart":Jf(void 0,void 0,i.color,i.signalType);break;case"rectEnd":Jf(void 0,void 0,void 0,i.signalType);break;case"optStart":Jf(void 0,void 0,i.optText,i.signalType);break;case"optEnd":Jf(void 0,void 0,void 0,i.signalType);break;case"altStart":Jf(void 0,void 0,i.altText,i.signalType);break;case"else":Jf(void 0,void 0,i.altText,i.signalType);break;case"altEnd":Jf(void 0,void 0,void 0,i.signalType);break;case"setAccTitle":Bg(i.text);break;case"parStart":Jf(void 0,void 0,i.parText,i.signalType);break;case"and":Jf(void 0,void 0,i.parText,i.signalType);break;case"parEnd":Jf(void 0,void 0,void 0,i.signalType);break;case"criticalStart":Jf(void 0,void 0,i.criticalText,i.signalType);break;case"option":Jf(void 0,void 0,i.optionText,i.signalType);break;case"criticalEnd":Jf(void 0,void 0,void 0,i.signalType);break;case"breakStart":Jf(void 0,void 0,i.breakText,i.signalType);break;case"breakEnd":Jf(void 0,void 0,void 0,i.signalType);break}},FGe={addActor:xve,addMessage:Trn,addSignal:Jf,addLinks:IGe,addDetails:PGe,addProperties:OGe,autoWrap:JC,setWrap:Brn,enableSequenceNumbers:Orn,disableSequenceNumbers:Nrn,showSequenceNumbers:Prn,getMessages:_rn,getActors:Lrn,getCreatedActors:Mrn,getDestroyedActors:Drn,getActor:GR,getActorKeys:Irn,getActorProperty:Vrn,getAccTitle:Cp,getBoxes:Arn,getDiagramTitle:Ap,setDiagramTitle:cm,getConfig:()=>qt().sequence,clear:Frn,parseMessage:Rrn,parseBoxData:jrn,LINETYPE:KR,ARROWTYPE:$rn,PLACEMENT:zrn,addNote:DGe,setAccTitle:Bg,apply:BGe,setAccDescription:Sp,getAccDescription:_p,hasAtLeastOneBox:Crn,hasAtLeastOneBoxWithTitle:Srn},Urn=i=>`.actor {
+ stroke: ${i.actorBorder};
+ fill: ${i.actorBkg};
+ }
+
+ text.actor > tspan {
+ fill: ${i.actorTextColor};
+ stroke: none;
+ }
+
+ .actor-line {
+ stroke: ${i.actorLineColor};
+ }
+
+ .messageLine0 {
+ stroke-width: 1.5;
+ stroke-dasharray: none;
+ stroke: ${i.signalColor};
+ }
+
+ .messageLine1 {
+ stroke-width: 1.5;
+ stroke-dasharray: 2, 2;
+ stroke: ${i.signalColor};
+ }
+
+ #arrowhead path {
+ fill: ${i.signalColor};
+ stroke: ${i.signalColor};
+ }
+
+ .sequenceNumber {
+ fill: ${i.sequenceNumberColor};
+ }
+
+ #sequencenumber {
+ fill: ${i.signalColor};
+ }
+
+ #crosshead path {
+ fill: ${i.signalColor};
+ stroke: ${i.signalColor};
+ }
+
+ .messageText {
+ fill: ${i.signalTextColor};
+ stroke: none;
+ }
+
+ .labelBox {
+ stroke: ${i.labelBoxBorderColor};
+ fill: ${i.labelBoxBkgColor};
+ }
+
+ .labelText, .labelText > tspan {
+ fill: ${i.labelTextColor};
+ stroke: none;
+ }
+
+ .loopText, .loopText > tspan {
+ fill: ${i.loopTextColor};
+ stroke: none;
+ }
+
+ .loopLine {
+ stroke-width: 2px;
+ stroke-dasharray: 2, 2;
+ stroke: ${i.labelBoxBorderColor};
+ fill: ${i.labelBoxBorderColor};
+ }
+
+ .note {
+ //stroke: #decc93;
+ stroke: ${i.noteBorderColor};
+ fill: ${i.noteBkgColor};
+ }
+
+ .noteText, .noteText > tspan {
+ fill: ${i.noteTextColor};
+ stroke: none;
+ }
+
+ .activation0 {
+ fill: ${i.activationBkgColor};
+ stroke: ${i.activationBorderColor};
+ }
+
+ .activation1 {
+ fill: ${i.activationBkgColor};
+ stroke: ${i.activationBorderColor};
+ }
+
+ .activation2 {
+ fill: ${i.activationBkgColor};
+ stroke: ${i.activationBorderColor};
+ }
+
+ .actorPopupMenu {
+ position: absolute;
+ }
+
+ .actorPopupMenuPanel {
+ position: absolute;
+ fill: ${i.actorBkg};
+ box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
+ filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
+}
+ .actor-man line {
+ stroke: ${i.actorBorder};
+ fill: ${i.actorBkg};
+ }
+ .actor-man circle, line {
+ stroke: ${i.actorBorder};
+ fill: ${i.actorBkg};
+ stroke-width: 2px;
+ }
+`,ZC=18*2,RGe="actor-top",jGe="actor-bottom",Eve=function(i,s){return AQ(i,s)},Grn=function(i,s,u,d,p){if(s.links===void 0||s.links===null||Object.keys(s.links).length===0)return{height:0,width:0};const v=s.links,b=s.actorCnt,y=s.rectData;var T="none";p&&(T="block !important");const _=i.append("g");_.attr("id","actor"+b+"_popup"),_.attr("class","actorPopupMenu"),_.attr("display",T);var A="";y.class!==void 0&&(A=" "+y.class);let P=y.width>u?y.width:u;const R=_.append("rect");if(R.attr("class","actorPopupMenuPanel"+A),R.attr("x",y.x),R.attr("y",y.height),R.attr("fill",y.fill),R.attr("stroke",y.stroke),R.attr("width",P),R.attr("height",y.height),R.attr("rx",y.rx),R.attr("ry",y.ry),v!=null){var F=20;for(let ee in v){var j=_.append("a"),K=p9.sanitizeUrl(v[ee]);j.attr("xlink:href",K),j.attr("target","_blank"),uin(d)(ee,j,y.x+10,y.height+F,P,20,{class:"actor"},d),F+=30}}return R.attr("height",F),{height:y.height+F,width:P}},Krn=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},pJ=async function(i,s,u=null){let d=i.append("foreignObject");const p=await CC(s.text,Vh()),b=d.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(p).node().getBoundingClientRect();if(d.attr("height",Math.round(b.height)).attr("width",Math.round(b.width)),s.class==="noteText"){const y=i.node().firstChild;y.setAttribute("height",b.height+2*s.textMargin);const T=y.getBBox();d.attr("x",Math.round(T.x+T.width/2-b.width/2)).attr("y",Math.round(T.y+T.height/2-b.height/2))}else if(u){let{startx:y,stopx:T,starty:_}=u;if(y>T){const A=y;y=T,T=A}d.attr("x",Math.round(y+Math.abs(y-T)/2-b.width/2)),s.class==="loopText"?d.attr("y",Math.round(_)):d.attr("y",Math.round(_-b.height))}return[d]},YD=function(i,s){let u=0,d=0;const p=s.text.split(ci.lineBreakRegex),[v,b]=NC(s.fontSize);let y=[],T=0,_=()=>s.y;if(s.valign!==void 0&&s.textMargin!==void 0&&s.textMargin>0)switch(s.valign){case"top":case"start":_=()=>Math.round(s.y+s.textMargin);break;case"middle":case"center":_=()=>Math.round(s.y+(u+d+s.textMargin)/2);break;case"bottom":case"end":_=()=>Math.round(s.y+(u+d+2*s.textMargin)-s.textMargin);break}if(s.anchor!==void 0&&s.textMargin!==void 0&&s.width!==void 0)switch(s.anchor){case"left":case"start":s.x=Math.round(s.x+s.textMargin),s.anchor="start",s.dominantBaseline="middle",s.alignmentBaseline="middle";break;case"middle":case"center":s.x=Math.round(s.x+s.width/2),s.anchor="middle",s.dominantBaseline="middle",s.alignmentBaseline="middle";break;case"right":case"end":s.x=Math.round(s.x+s.width-s.textMargin),s.anchor="end",s.dominantBaseline="middle",s.alignmentBaseline="middle";break}for(let[A,P]of p.entries()){s.textMargin!==void 0&&s.textMargin===0&&v!==void 0&&(T=A*v);const R=i.append("text");R.attr("x",s.x),R.attr("y",_()),s.anchor!==void 0&&R.attr("text-anchor",s.anchor).attr("dominant-baseline",s.dominantBaseline).attr("alignment-baseline",s.alignmentBaseline),s.fontFamily!==void 0&&R.style("font-family",s.fontFamily),b!==void 0&&R.style("font-size",b),s.fontWeight!==void 0&&R.style("font-weight",s.fontWeight),s.fill!==void 0&&R.attr("fill",s.fill),s.class!==void 0&&R.attr("class",s.class),s.dy!==void 0?R.attr("dy",s.dy):T!==0&&R.attr("dy",T);const F=P||hje;if(s.tspan){const j=R.append("tspan");j.attr("x",s.x),s.fill!==void 0&&j.attr("fill",s.fill),j.text(F)}else R.text(F);s.valign!==void 0&&s.textMargin!==void 0&&s.textMargin>0&&(d+=(R._groups||R)[0][0].getBBox().height,u=d),y.push(R)}return y},$Ge=function(i,s){function u(p,v,b,y,T){return p+","+v+" "+(p+b)+","+v+" "+(p+b)+","+(v+y-T)+" "+(p+b-T*1.2)+","+(v+y)+" "+p+","+(v+y)}const d=i.append("polygon");return d.attr("points",u(s.x,s.y,s.width,s.height,7)),d.attr("class","labelBox"),s.y=s.y+s.height/2,YD(i,s),d};let s5=-1;const zGe=(i,s,u,d)=>{i.select&&u.forEach(p=>{const v=s[p],b=i.select("#actor"+v.actorCnt);!d.mirrorActors&&v.stopy?b.attr("y2",v.stopy+v.height/2):d.mirrorActors&&b.attr("y2",v.stopy)})},Wrn=async function(i,s,u,d){const p=d?s.stopy:s.starty,v=s.x+s.width/2,b=p+5,y=i.append("g").lower();var T=y;d||(s5++,Object.keys(s.links||{}).length&&!u.forceMenus&&T.attr("onclick",Krn(`actor${s5}_popup`)).attr("cursor","pointer"),T.append("line").attr("id","actor"+s5).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),T=y.append("g"),s.actorCnt=s5,s.links!=null&&T.attr("id","root-"+s5));const _=qC();var A="actor";s.properties!=null&&s.properties.class?A=s.properties.class:_.fill="#eaeaea",d?A+=` ${jGe}`:A+=` ${RGe}`,_.x=s.x,_.y=p,_.width=s.width,_.height=s.height,_.class=A,_.rx=3,_.ry=3,_.name=s.name;const P=Eve(T,_);if(s.rectData=_,s.properties!=null&&s.properties.icon){const F=s.properties.icon.trim();F.charAt(0)==="@"?rUt(T,_.x+_.width-20,_.y+10,F.substr(1)):nUt(T,_.x+_.width-20,_.y+10,F)}await Tve(u,Dv(s.description))(s.description,T,_.x,_.y,_.width,_.height,{class:"actor"},u);let R=s.height;if(P.node){const F=P.node().getBBox();s.height=F.height,R=F.height}return R},Yrn=async function(i,s,u,d){const p=d?s.stopy:s.starty,v=s.x+s.width/2,b=p+80;i.lower(),d||(s5++,i.append("line").attr("id","actor"+s5).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),s.actorCnt=s5);const y=i.append("g");let T="actor-man";d?T+=` ${jGe}`:T+=` ${RGe}`,y.attr("class",T),y.attr("name",s.name);const _=qC();_.x=s.x,_.y=p,_.fill="#eaeaea",_.width=s.width,_.height=s.height,_.class="actor",_.rx=3,_.ry=3,y.append("line").attr("id","actor-man-torso"+s5).attr("x1",v).attr("y1",p+25).attr("x2",v).attr("y2",p+45),y.append("line").attr("id","actor-man-arms"+s5).attr("x1",v-ZC/2).attr("y1",p+33).attr("x2",v+ZC/2).attr("y2",p+33),y.append("line").attr("x1",v-ZC/2).attr("y1",p+60).attr("x2",v).attr("y2",p+45),y.append("line").attr("x1",v).attr("y1",p+45).attr("x2",v+ZC/2-2).attr("y2",p+60);const A=y.append("circle");A.attr("cx",s.x+s.width/2),A.attr("cy",p+10),A.attr("r",15),A.attr("width",s.width),A.attr("height",s.height);const P=y.node().getBBox();return s.height=P.height,await Tve(u,Dv(s.description))(s.description,y,_.x,_.y+35,_.width,_.height,{class:"actor"},u),s.height},Xrn=async function(i,s,u,d){switch(s.type){case"actor":return await Yrn(i,s,u,d);case"participant":return await Wrn(i,s,u,d)}},Qrn=async function(i,s,u){const p=i.append("g");qGe(p,s),s.name&&await Tve(u)(s.name,p,s.x,s.y+(s.textMaxHeight||0)/2,s.width,0,{class:"text"},u),p.lower()},Jrn=function(i){return i.append("g")},Zrn=function(i,s,u,d,p){const v=qC(),b=s.anchored;v.x=s.startx,v.y=s.starty,v.class="activation"+p%3,v.width=s.stopx-s.startx,v.height=u-s.starty,Eve(b,v)},ein=async function(i,s,u,d){const{boxMargin:p,boxTextMargin:v,labelBoxHeight:b,labelBoxWidth:y,messageFontFamily:T,messageFontSize:_,messageFontWeight:A}=d,P=i.append("g"),R=function(K,ee,ie,oe){return P.append("line").attr("x1",K).attr("y1",ee).attr("x2",ie).attr("y2",oe).attr("class","loopLine")};R(s.startx,s.starty,s.stopx,s.starty),R(s.stopx,s.starty,s.stopx,s.stopy),R(s.startx,s.stopy,s.stopx,s.stopy),R(s.startx,s.starty,s.startx,s.stopy),s.sections!==void 0&&s.sections.forEach(function(K){R(s.startx,K.y,s.stopx,K.y).style("stroke-dasharray","3, 3")});let F=zbe();F.text=u,F.x=s.startx,F.y=s.starty,F.fontFamily=T,F.fontSize=_,F.fontWeight=A,F.anchor="middle",F.valign="middle",F.tspan=!1,F.width=y||50,F.height=b||20,F.textMargin=v,F.class="labelText",$Ge(P,F),F=HGe(),F.text=s.title,F.x=s.startx+y/2+(s.stopx-s.startx)/2,F.y=s.starty+p+v,F.anchor="middle",F.valign="middle",F.textMargin=v,F.class="loopText",F.fontFamily=T,F.fontSize=_,F.fontWeight=A,F.wrap=!0;let j=Dv(F.text)?await pJ(P,F,s):YD(P,F);if(s.sectionTitles!==void 0){for(const[K,ee]of Object.entries(s.sectionTitles))if(ee.message){F.text=ee.message,F.x=s.startx+(s.stopx-s.startx)/2,F.y=s.sections[K].y+p+v,F.class="loopText",F.anchor="middle",F.valign="middle",F.tspan=!1,F.fontFamily=T,F.fontSize=_,F.fontWeight=A,F.wrap=s.wrap,Dv(F.text)?(s.starty=s.sections[K].y,await pJ(P,F,s)):YD(P,F);let ie=Math.round(j.map(oe=>(oe._groups||oe)[0][0].getBBox().height).reduce((oe,pe)=>oe+pe));s.sections[K].height+=ie-(p+v)}}return s.height=Math.round(s.stopy-s.starty),P},qGe=function(i,s){Tqe(i,s)},tin=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},nin=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},rin=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},iin=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).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")},sin=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).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")},ain=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},oin=function(i){i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},HGe=function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},cin=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},Tve=function(){function i(v,b,y,T,_,A,P){const R=b.append("text").attr("x",y+_/2).attr("y",T+A/2+5).style("text-anchor","middle").text(v);p(R,P)}function s(v,b,y,T,_,A,P,R){const{actorFontSize:F,actorFontFamily:j,actorFontWeight:K}=R,[ee,ie]=NC(F),oe=v.split(ci.lineBreakRegex);for(let pe=0;pei.height||0))+(this.loops.length===0?0:this.loops.map(i=>i.height||0).reduce((i,s)=>i+s))+(this.messages.length===0?0:this.messages.map(i=>i.height||0).reduce((i,s)=>i+s))+(this.notes.length===0?0:this.notes.map(i=>i.height||0).reduce((i,s)=>i+s))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(i){this.boxes.push(i)},addActor:function(i){this.actors.push(i)},addLoop:function(i){this.loops.push(i)},addMessage:function(i){this.messages.push(i)},addNote:function(i){this.notes.push(i)},lastActor:function(){return this.actors[this.actors.length-1]},lastLoop:function(){return this.loops[this.loops.length-1]},lastMessage:function(){return this.messages[this.messages.length-1]},lastNote:function(){return this.notes[this.notes.length-1]},actors:[],boxes:[],loops:[],messages:[],notes:[]},init:function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,UGe(qt())},updateVal:function(i,s,u,d){i[s]===void 0?i[s]=u:i[s]=d(u,i[s])},updateBounds:function(i,s,u,d){const p=this;let v=0;function b(y){return function(_){v++;const A=p.sequenceItems.length-v+1;p.updateVal(_,"starty",s-A*En.boxMargin,Math.min),p.updateVal(_,"stopy",d+A*En.boxMargin,Math.max),p.updateVal(ni.data,"startx",i-A*En.boxMargin,Math.min),p.updateVal(ni.data,"stopx",u+A*En.boxMargin,Math.max),y!=="activation"&&(p.updateVal(_,"startx",i-A*En.boxMargin,Math.min),p.updateVal(_,"stopx",u+A*En.boxMargin,Math.max),p.updateVal(ni.data,"starty",s-A*En.boxMargin,Math.min),p.updateVal(ni.data,"stopy",d+A*En.boxMargin,Math.max))}}this.sequenceItems.forEach(b()),this.activations.forEach(b("activation"))},insert:function(i,s,u,d){const p=ci.getMin(i,u),v=ci.getMax(i,u),b=ci.getMin(s,d),y=ci.getMax(s,d);this.updateVal(ni.data,"startx",p,Math.min),this.updateVal(ni.data,"starty",b,Math.min),this.updateVal(ni.data,"stopx",v,Math.max),this.updateVal(ni.data,"stopy",y,Math.max),this.updateBounds(p,b,v,y)},newActivation:function(i,s,u){const d=u[i.from.actor],p=bJ(i.from.actor).length||0,v=d.x+d.width/2+(p-1)*En.activationWidth/2;this.activations.push({startx:v,starty:this.verticalPos+2,stopx:v+En.activationWidth,stopy:void 0,actor:i.from.actor,anchored:Zf.anchorElement(s)})},endActivation:function(i){const s=this.activations.map(function(u){return u.actor}).lastIndexOf(i.from.actor);return this.activations.splice(s,1)[0]},createLoop:function(i={message:void 0,wrap:!1,width:void 0},s){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:i.message,wrap:i.wrap,width:i.width,height:0,fill:s}},newLoop:function(i={message:void 0,wrap:!1,width:void 0},s){this.sequenceItems.push(this.createLoop(i,s))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(i){const s=this.sequenceItems.pop();s.sections=s.sections||[],s.sectionTitles=s.sectionTitles||[],s.sections.push({y:ni.getVerticalPos(),height:0}),s.sectionTitles.push(i),this.sequenceItems.push(s)},saveVerticalPos:function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},resetVerticalPos:function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=ci.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},lin=async function(i,s){ni.bumpVerticalPos(En.boxMargin),s.height=En.boxMargin,s.starty=ni.getVerticalPos();const u=qC();u.x=s.startx,u.y=s.starty,u.width=s.width||En.width,u.class="note";const d=i.append("g"),p=Zf.drawRect(d,u),v=zbe();v.x=s.startx,v.y=s.starty,v.width=u.width,v.dy="1em",v.text=s.message,v.class="noteText",v.fontFamily=En.noteFontFamily,v.fontSize=En.noteFontSize,v.fontWeight=En.noteFontWeight,v.anchor=En.noteAlign,v.textMargin=En.noteMargin,v.valign="center";const b=Dv(v.text)?await pJ(d,v):YD(d,v),y=Math.round(b.map(T=>(T._groups||T)[0][0].getBBox().height).reduce((T,_)=>T+_));p.attr("height",y+2*En.noteMargin),s.height+=y+2*En.noteMargin,ni.bumpVerticalPos(y+2*En.noteMargin),s.stopy=s.starty+y+2*En.noteMargin,s.stopx=s.startx+u.width,ni.insert(s.startx,s.starty,s.stopx,s.stopy),ni.models.addNote(s)},eS=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight}),XD=i=>({fontFamily:i.noteFontFamily,fontSize:i.noteFontSize,fontWeight:i.noteFontWeight}),Cve=i=>({fontFamily:i.actorFontFamily,fontSize:i.actorFontSize,fontWeight:i.actorFontWeight});async function hin(i,s){ni.bumpVerticalPos(10);const{startx:u,stopx:d,message:p}=s,v=ci.splitBreaks(p).length,b=Dv(p),y=b?await HF(p,qt()):Ao.calculateTextDimensions(p,eS(En));if(!b){const P=y.height/v;s.height+=P,ni.bumpVerticalPos(P)}let T,_=y.height-10;const A=y.width;if(u===d){T=ni.getVerticalPos()+_,En.rightAngles||(_+=En.boxMargin,T=ni.getVerticalPos()+_),_+=30;const P=ci.getMax(A/2,En.width/2);ni.insert(u-P,ni.getVerticalPos()-10+_,d+P,ni.getVerticalPos()+30+_)}else _+=En.boxMargin,T=ni.getVerticalPos()+_,ni.insert(u,T-10,d,T);return ni.bumpVerticalPos(_),s.height+=_,s.stopy=s.starty+s.height,ni.insert(s.fromBounds,s.starty,s.toBounds,s.stopy),T}const fin=async function(i,s,u,d){const{startx:p,stopx:v,starty:b,message:y,type:T,sequenceIndex:_,sequenceVisible:A}=s,P=Ao.calculateTextDimensions(y,eS(En)),R=zbe();R.x=p,R.y=b+10,R.width=v-p,R.class="messageText",R.dy="1em",R.text=y,R.fontFamily=En.messageFontFamily,R.fontSize=En.messageFontSize,R.fontWeight=En.messageFontWeight,R.anchor=En.messageAlign,R.valign="center",R.textMargin=En.wrapPadding,R.tspan=!1,Dv(R.text)?await pJ(i,R,{startx:p,stopx:v,starty:u}):YD(i,R);const F=P.width;let j;p===v?En.rightAngles?j=i.append("path").attr("d",`M ${p},${u} H ${p+ci.getMax(En.width/2,F/2)} V ${u+25} H ${p}`):j=i.append("path").attr("d","M "+p+","+u+" C "+(p+60)+","+(u-10)+" "+(p+60)+","+(u+30)+" "+p+","+(u+20)):(j=i.append("line"),j.attr("x1",p),j.attr("y1",u),j.attr("x2",v),j.attr("y2",u)),T===d.db.LINETYPE.DOTTED||T===d.db.LINETYPE.DOTTED_CROSS||T===d.db.LINETYPE.DOTTED_POINT||T===d.db.LINETYPE.DOTTED_OPEN?(j.style("stroke-dasharray","3, 3"),j.attr("class","messageLine1")):j.attr("class","messageLine0");let K="";En.arrowMarkerAbsolute&&(K=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,K=K.replace(/\(/g,"\\("),K=K.replace(/\)/g,"\\)")),j.attr("stroke-width",2),j.attr("stroke","none"),j.style("fill","none"),(T===d.db.LINETYPE.SOLID||T===d.db.LINETYPE.DOTTED)&&j.attr("marker-end","url("+K+"#arrowhead)"),(T===d.db.LINETYPE.SOLID_POINT||T===d.db.LINETYPE.DOTTED_POINT)&&j.attr("marker-end","url("+K+"#filled-head)"),(T===d.db.LINETYPE.SOLID_CROSS||T===d.db.LINETYPE.DOTTED_CROSS)&&j.attr("marker-end","url("+K+"#crosshead)"),(A||En.showSequenceNumbers)&&(j.attr("marker-start","url("+K+"#sequencenumber)"),i.append("text").attr("x",p).attr("y",u+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(_))},din=async function(i,s,u,d,p,v,b){let y=0,T=0,_,A=0;for(const P of d){const R=s[P],F=R.box;_&&_!=F&&(b||ni.models.addBox(_),T+=En.boxMargin+_.margin),F&&F!=_&&(b||(F.x=y+T,F.y=p),T+=F.margin),R.width=R.width||En.width,R.height=ci.getMax(R.height||En.height,En.height),R.margin=R.margin||En.actorMargin,A=ci.getMax(A,R.height),u[R.name]&&(T+=R.width/2),R.x=y+T,R.starty=ni.getVerticalPos(),ni.insert(R.x,p,R.x+R.width,R.height),y+=R.width+T,R.box&&(R.box.width=y+F.margin-R.box.x),T=R.margin,_=R.box,ni.models.addActor(R)}_&&!b&&ni.models.addBox(_),ni.bumpVerticalPos(A)},Sve=async function(i,s,u,d){if(d){let p=0;ni.bumpVerticalPos(En.boxMargin*2);for(const v of u){const b=s[v];b.stopy||(b.stopy=ni.getVerticalPos());const y=await Zf.drawActor(i,b,En,!0);p=ci.getMax(p,y)}ni.bumpVerticalPos(p+En.boxMargin)}else for(const p of u){const v=s[p];await Zf.drawActor(i,v,En,!1)}},VGe=function(i,s,u,d){let p=0,v=0;for(const b of u){const y=s[b],T=min(y),_=Zf.drawPopup(i,y,T,En,En.forceMenus,d);_.height>p&&(p=_.height),_.width+y.x>v&&(v=_.width+y.x)}return{maxHeight:p,maxWidth:v}},UGe=function(i){id(En,i),i.fontFamily&&(En.actorFontFamily=En.noteFontFamily=En.messageFontFamily=i.fontFamily),i.fontSize&&(En.actorFontSize=En.noteFontSize=En.messageFontSize=i.fontSize),i.fontWeight&&(En.actorFontWeight=En.noteFontWeight=En.messageFontWeight=i.fontWeight)},bJ=function(i){return ni.activations.filter(function(s){return s.actor===i})},GGe=function(i,s){const u=s[i],d=bJ(i),p=d.reduce(function(b,y){return ci.getMin(b,y.startx)},u.x+u.width/2-1),v=d.reduce(function(b,y){return ci.getMax(b,y.stopx)},u.x+u.width/2+1);return[p,v]};function a5(i,s,u,d,p){ni.bumpVerticalPos(u);let v=d;if(s.id&&s.message&&i[s.id]){const b=i[s.id].width,y=eS(En);s.message=Ao.wrapLabel(`[${s.message}]`,b-2*En.wrapPadding,y),s.width=b,s.wrap=!0;const T=Ao.calculateTextDimensions(s.message,y),_=ci.getMax(T.height,En.labelBoxHeight);v=d+_,Xe.debug(`${_} - ${s.message}`)}p(s),ni.bumpVerticalPos(v)}function gin(i,s,u,d,p,v,b){function y(_,A){_.x{Se.add(Ce.from),Se.add(Ce.to)}),j=j.filter(Ce=>Se.has(Ce))}await din(_,A,P,j,0,K,!1);const be=await xin(K,A,pe,d);Zf.insertArrowHead(_),Zf.insertArrowCrossHead(_),Zf.insertArrowFilledHead(_),Zf.insertSequenceNumber(_);function ae(Se,Ce){const ke=ni.endActivation(Se);ke.starty+18>Ce&&(ke.starty=Ce-6,Ce+=12),Zf.drawActivation(_,ke,Ce,En,bJ(Se.from.actor).length),ni.insert(ke.startx,Ce-10,ke.stopx,Ce)}let ne=1,se=1;const de=[],X=[];let ge=0;for(const Se of K){let Ce,ke,Ke;switch(Se.type){case d.db.LINETYPE.NOTE:ni.resetVerticalPos(),ke=Se.noteModel,await lin(_,ke);break;case d.db.LINETYPE.ACTIVE_START:ni.newActivation(Se,_,A);break;case d.db.LINETYPE.ACTIVE_END:ae(Se,ni.getVerticalPos());break;case d.db.LINETYPE.LOOP_START:a5(be,Se,En.boxMargin,En.boxMargin+En.boxTextMargin,Ft=>ni.newLoop(Ft));break;case d.db.LINETYPE.LOOP_END:Ce=ni.endLoop(),await Zf.drawLoop(_,Ce,"loop",En),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.RECT_START:a5(be,Se,En.boxMargin,En.boxMargin,Ft=>ni.newLoop(void 0,Ft.message));break;case d.db.LINETYPE.RECT_END:Ce=ni.endLoop(),X.push(Ce),ni.models.addLoop(Ce),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos());break;case d.db.LINETYPE.OPT_START:a5(be,Se,En.boxMargin,En.boxMargin+En.boxTextMargin,Ft=>ni.newLoop(Ft));break;case d.db.LINETYPE.OPT_END:Ce=ni.endLoop(),await Zf.drawLoop(_,Ce,"opt",En),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.ALT_START:a5(be,Se,En.boxMargin,En.boxMargin+En.boxTextMargin,Ft=>ni.newLoop(Ft));break;case d.db.LINETYPE.ALT_ELSE:a5(be,Se,En.boxMargin+En.boxTextMargin,En.boxMargin,Ft=>ni.addSectionToLoop(Ft));break;case d.db.LINETYPE.ALT_END:Ce=ni.endLoop(),await Zf.drawLoop(_,Ce,"alt",En),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.PAR_START:case d.db.LINETYPE.PAR_OVER_START:a5(be,Se,En.boxMargin,En.boxMargin+En.boxTextMargin,Ft=>ni.newLoop(Ft)),ni.saveVerticalPos();break;case d.db.LINETYPE.PAR_AND:a5(be,Se,En.boxMargin+En.boxTextMargin,En.boxMargin,Ft=>ni.addSectionToLoop(Ft));break;case d.db.LINETYPE.PAR_END:Ce=ni.endLoop(),await Zf.drawLoop(_,Ce,"par",En),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.AUTONUMBER:ne=Se.message.start||ne,se=Se.message.step||se,Se.message.visible?d.db.enableSequenceNumbers():d.db.disableSequenceNumbers();break;case d.db.LINETYPE.CRITICAL_START:a5(be,Se,En.boxMargin,En.boxMargin+En.boxTextMargin,Ft=>ni.newLoop(Ft));break;case d.db.LINETYPE.CRITICAL_OPTION:a5(be,Se,En.boxMargin+En.boxTextMargin,En.boxMargin,Ft=>ni.addSectionToLoop(Ft));break;case d.db.LINETYPE.CRITICAL_END:Ce=ni.endLoop(),await Zf.drawLoop(_,Ce,"critical",En),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.BREAK_START:a5(be,Se,En.boxMargin,En.boxMargin+En.boxTextMargin,Ft=>ni.newLoop(Ft));break;case d.db.LINETYPE.BREAK_END:Ce=ni.endLoop(),await Zf.drawLoop(_,Ce,"break",En),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;default:try{Ke=Se.msgModel,Ke.starty=ni.getVerticalPos(),Ke.sequenceIndex=ne,Ke.sequenceVisible=d.db.showSequenceNumbers();const Ft=await hin(_,Ke);gin(Se,Ke,Ft,ge,A,P,R),de.push({messageModel:Ke,lineStartY:Ft}),ni.models.addMessage(Ke)}catch(Ft){Xe.error("error while drawing message",Ft)}}[d.db.LINETYPE.SOLID_OPEN,d.db.LINETYPE.DOTTED_OPEN,d.db.LINETYPE.SOLID,d.db.LINETYPE.DOTTED,d.db.LINETYPE.SOLID_CROSS,d.db.LINETYPE.DOTTED_CROSS,d.db.LINETYPE.SOLID_POINT,d.db.LINETYPE.DOTTED_POINT].includes(Se.type)&&(ne=ne+se),ge++}Xe.debug("createdActors",P),Xe.debug("destroyedActors",R),await Sve(_,A,j,!1);for(const Se of de)await fin(_,Se.messageModel,Se.lineStartY,d);En.mirrorActors&&await Sve(_,A,j,!0),X.forEach(Se=>Zf.drawBackgroundRect(_,Se)),zGe(_,A,j,En);for(const Se of ni.models.boxes)Se.height=ni.getVerticalPos()-Se.y,ni.insert(Se.x,Se.y,Se.x+Se.width,Se.height),Se.startx=Se.x,Se.starty=Se.y,Se.stopx=Se.startx+Se.width,Se.stopy=Se.starty+Se.height,Se.stroke="rgb(0,0,0, 0.5)",await Zf.drawBox(_,Se,En);ie&&ni.bumpVerticalPos(En.boxMargin);const W=VGe(_,A,j,T),{bounds:xe}=ni.getBounds();let U=xe.stopy-xe.starty;U{const b=eS(En);let y=v.actorKeys.reduce((A,P)=>A+=i[P].width+(i[P].margin||0),0);y-=2*En.boxTextMargin,v.wrap&&(v.name=Ao.wrapLabel(v.name,y-2*En.wrapPadding,b));const T=Ao.calculateTextDimensions(v.name,b);p=ci.getMax(T.height,p);const _=ci.getMax(y,T.width+2*En.wrapPadding);if(v.margin=En.boxTextMargin,y<_){const A=(_-y)/2;v.margin+=A}}),u.forEach(v=>v.textMaxHeight=p),ci.getMax(d,En.height)}const win=async function(i,s,u){const d=s[i.from].x,p=s[i.to].x,v=i.wrap&&i.message;let b=Dv(i.message)?await HF(i.message,qt()):Ao.calculateTextDimensions(v?Ao.wrapLabel(i.message,En.width,XD(En)):i.message,XD(En));const y={width:v?En.width:ci.getMax(En.width,b.width+2*En.noteMargin),height:0,startx:s[i.from].x,stopx:0,starty:0,stopy:0,message:i.message};return i.placement===u.db.PLACEMENT.RIGHTOF?(y.width=v?ci.getMax(En.width,b.width):ci.getMax(s[i.from].width/2+s[i.to].width/2,b.width+2*En.noteMargin),y.startx=d+(s[i.from].width+En.actorMargin)/2):i.placement===u.db.PLACEMENT.LEFTOF?(y.width=v?ci.getMax(En.width,b.width+2*En.noteMargin):ci.getMax(s[i.from].width/2+s[i.to].width/2,b.width+2*En.noteMargin),y.startx=d-y.width+(s[i.from].width-En.actorMargin)/2):i.to===i.from?(b=Ao.calculateTextDimensions(v?Ao.wrapLabel(i.message,ci.getMax(En.width,s[i.from].width),XD(En)):i.message,XD(En)),y.width=v?ci.getMax(En.width,s[i.from].width):ci.getMax(s[i.from].width,En.width,b.width+2*En.noteMargin),y.startx=d+(s[i.from].width-y.width)/2):(y.width=Math.abs(d+s[i.from].width/2-(p+s[i.to].width/2))+En.actorMargin,y.startx=d2,P=K=>y?-K:K;i.from===i.to?_=T:(i.activate&&!A&&(_+=P(En.activationWidth/2-1)),[u.db.LINETYPE.SOLID_OPEN,u.db.LINETYPE.DOTTED_OPEN].includes(i.type)||(_+=P(3)));const R=[d,p,v,b],F=Math.abs(T-_);i.wrap&&i.message&&(i.message=Ao.wrapLabel(i.message,ci.getMax(F+2*En.wrapPadding,En.width),eS(En)));const j=Ao.calculateTextDimensions(i.message,eS(En));return{width:ci.getMax(i.wrap?0:j.width+2*En.wrapPadding,F+2*En.wrapPadding,En.width),height:0,startx:T,stopx:_,starty:0,stopy:0,message:i.message,type:i.type,wrap:i.wrap,fromBounds:Math.min.apply(null,R),toBounds:Math.max.apply(null,R)}},xin=async function(i,s,u,d){const p={},v=[];let b,y,T;for(const _ of i){switch(_.id=Ao.random({length:10}),_.type){case d.db.LINETYPE.LOOP_START:case d.db.LINETYPE.ALT_START:case d.db.LINETYPE.OPT_START:case d.db.LINETYPE.PAR_START:case d.db.LINETYPE.PAR_OVER_START:case d.db.LINETYPE.CRITICAL_START:case d.db.LINETYPE.BREAK_START:v.push({id:_.id,msg:_.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case d.db.LINETYPE.ALT_ELSE:case d.db.LINETYPE.PAR_AND:case d.db.LINETYPE.CRITICAL_OPTION:_.message&&(b=v.pop(),p[b.id]=b,p[_.id]=b,v.push(b));break;case d.db.LINETYPE.LOOP_END:case d.db.LINETYPE.ALT_END:case d.db.LINETYPE.OPT_END:case d.db.LINETYPE.PAR_END:case d.db.LINETYPE.CRITICAL_END:case d.db.LINETYPE.BREAK_END:b=v.pop(),p[b.id]=b;break;case d.db.LINETYPE.ACTIVE_START:{const P=s[_.from?_.from.actor:_.to.actor],R=bJ(_.from?_.from.actor:_.to.actor).length,F=P.x+P.width/2+(R-1)*En.activationWidth/2,j={startx:F,stopx:F+En.activationWidth,actor:_.from.actor,enabled:!0};ni.activations.push(j)}break;case d.db.LINETYPE.ACTIVE_END:{const P=ni.activations.map(R=>R.actor).lastIndexOf(_.from.actor);delete ni.activations.splice(P,1)[0]}break}_.placement!==void 0?(y=await win(_,s,d),_.noteModel=y,v.forEach(P=>{b=P,b.from=ci.getMin(b.from,y.startx),b.to=ci.getMax(b.to,y.startx+y.width),b.width=ci.getMax(b.width,Math.abs(b.from-b.to))-En.labelBoxWidth})):(T=yin(_,s,d),_.msgModel=T,T.startx&&T.stopx&&v.length>0&&v.forEach(P=>{if(b=P,T.startx===T.stopx){const R=s[_.from],F=s[_.to];b.from=ci.getMin(R.x-T.width/2,R.x-R.width/2,b.from),b.to=ci.getMax(F.x+T.width/2,F.x+R.width/2,b.to),b.width=ci.getMax(b.width,Math.abs(b.to-b.from))-En.labelBoxWidth}else b.from=ci.getMin(T.startx,b.from),b.to=ci.getMax(T.stopx,b.to),b.width=ci.getMax(b.width,T.width)-En.labelBoxWidth}))}return ni.activations=[],Xe.debug("Loop type widths:",p),p},kin=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:yrn,db:FGe,renderer:{bounds:ni,drawActors:Sve,drawActorsPopup:VGe,setConf:UGe,draw:pin},styles:Urn,init:({wrap:i})=>{FGe.setWrap(i)}}},Symbol.toStringTag,{value:"Module"}));var _ve=function(){var i=function(ao,Tr,Fn,qn){for(Fn=Fn||{},qn=ao.length;qn--;Fn[ao[qn]]=Tr);return Fn},s=[1,17],u=[1,18],d=[1,19],p=[1,39],v=[1,40],b=[1,25],y=[1,23],T=[1,24],_=[1,31],A=[1,32],P=[1,33],R=[1,34],F=[1,35],j=[1,36],K=[1,26],ee=[1,27],ie=[1,28],oe=[1,29],pe=[1,43],be=[1,30],ae=[1,42],ne=[1,44],se=[1,41],de=[1,45],X=[1,9],ge=[1,8,9],W=[1,56],xe=[1,57],U=[1,58],Fe=[1,59],Pe=[1,60],je=[1,61],Ie=[1,62],Se=[1,8,9,39],Ce=[1,74],ke=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],Ke=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],Ft=[13,74,80,95,97,98],Ne=[13,64,65,74,80,95,97,98],gn=[13,59,60,61,62,63,74,80,95,97,98],_t=[1,93],Et=[1,110],Gt=[1,108],ln=[1,102],xt=[1,103],Pt=[1,104],Qe=[1,105],Dt=[1,106],kt=[1,107],On=[1,109],ht=[1,8,9,37,39,42],zr=[1,8,9,21],yt=[1,8,9,78],ji=[1,8,9,21,73,74,78,80,81,82,83,84,85],xi={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:function(Tr,Fn,qn,Un,At,wt,on){var fn=wt.length-1;switch(At){case 8:this.$=wt[fn-1];break;case 9:case 11:case 12:this.$=wt[fn];break;case 10:case 13:this.$=wt[fn-1]+wt[fn];break;case 14:case 15:this.$=wt[fn-1]+"~"+wt[fn]+"~";break;case 16:Un.addRelation(wt[fn]);break;case 17:wt[fn-1].title=Un.cleanupLabel(wt[fn]),Un.addRelation(wt[fn-1]);break;case 27:this.$=wt[fn].trim(),Un.setAccTitle(this.$);break;case 28:case 29:this.$=wt[fn].trim(),Un.setAccDescription(this.$);break;case 30:Un.addClassesToNamespace(wt[fn-3],wt[fn-1]);break;case 31:Un.addClassesToNamespace(wt[fn-4],wt[fn-1]);break;case 32:this.$=wt[fn],Un.addNamespace(wt[fn]);break;case 33:this.$=[wt[fn]];break;case 34:this.$=[wt[fn-1]];break;case 35:wt[fn].unshift(wt[fn-2]),this.$=wt[fn];break;case 37:Un.setCssClass(wt[fn-2],wt[fn]);break;case 38:Un.addMembers(wt[fn-3],wt[fn-1]);break;case 39:Un.setCssClass(wt[fn-5],wt[fn-3]),Un.addMembers(wt[fn-5],wt[fn-1]);break;case 40:this.$=wt[fn],Un.addClass(wt[fn]);break;case 41:this.$=wt[fn-1],Un.addClass(wt[fn-1]),Un.setClassLabel(wt[fn-1],wt[fn]);break;case 42:Un.addAnnotation(wt[fn],wt[fn-2]);break;case 43:this.$=[wt[fn]];break;case 44:wt[fn].push(wt[fn-1]),this.$=wt[fn];break;case 45:break;case 46:Un.addMember(wt[fn-1],Un.cleanupLabel(wt[fn]));break;case 47:break;case 48:break;case 49:this.$={id1:wt[fn-2],id2:wt[fn],relation:wt[fn-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:wt[fn-3],id2:wt[fn],relation:wt[fn-1],relationTitle1:wt[fn-2],relationTitle2:"none"};break;case 51:this.$={id1:wt[fn-3],id2:wt[fn],relation:wt[fn-2],relationTitle1:"none",relationTitle2:wt[fn-1]};break;case 52:this.$={id1:wt[fn-4],id2:wt[fn],relation:wt[fn-2],relationTitle1:wt[fn-3],relationTitle2:wt[fn-1]};break;case 53:Un.addNote(wt[fn],wt[fn-1]);break;case 54:Un.addNote(wt[fn]);break;case 55:Un.setDirection("TB");break;case 56:Un.setDirection("BT");break;case 57:Un.setDirection("RL");break;case 58:Un.setDirection("LR");break;case 59:this.$={type1:wt[fn-2],type2:wt[fn],lineType:wt[fn-1]};break;case 60:this.$={type1:"none",type2:wt[fn],lineType:wt[fn-1]};break;case 61:this.$={type1:wt[fn-1],type2:"none",lineType:wt[fn]};break;case 62:this.$={type1:"none",type2:"none",lineType:wt[fn]};break;case 63:this.$=Un.relationType.AGGREGATION;break;case 64:this.$=Un.relationType.EXTENSION;break;case 65:this.$=Un.relationType.COMPOSITION;break;case 66:this.$=Un.relationType.DEPENDENCY;break;case 67:this.$=Un.relationType.LOLLIPOP;break;case 68:this.$=Un.lineType.LINE;break;case 69:this.$=Un.lineType.DOTTED_LINE;break;case 70:case 76:this.$=wt[fn-2],Un.setClickEvent(wt[fn-1],wt[fn]);break;case 71:case 77:this.$=wt[fn-3],Un.setClickEvent(wt[fn-2],wt[fn-1]),Un.setTooltip(wt[fn-2],wt[fn]);break;case 72:this.$=wt[fn-2],Un.setLink(wt[fn-1],wt[fn]);break;case 73:this.$=wt[fn-3],Un.setLink(wt[fn-2],wt[fn-1],wt[fn]);break;case 74:this.$=wt[fn-3],Un.setLink(wt[fn-2],wt[fn-1]),Un.setTooltip(wt[fn-2],wt[fn]);break;case 75:this.$=wt[fn-4],Un.setLink(wt[fn-3],wt[fn-2],wt[fn]),Un.setTooltip(wt[fn-3],wt[fn-1]);break;case 78:this.$=wt[fn-3],Un.setClickEvent(wt[fn-2],wt[fn-1],wt[fn]);break;case 79:this.$=wt[fn-4],Un.setClickEvent(wt[fn-3],wt[fn-2],wt[fn-1]),Un.setTooltip(wt[fn-3],wt[fn]);break;case 80:this.$=wt[fn-3],Un.setLink(wt[fn-2],wt[fn]);break;case 81:this.$=wt[fn-4],Un.setLink(wt[fn-3],wt[fn-1],wt[fn]);break;case 82:this.$=wt[fn-4],Un.setLink(wt[fn-3],wt[fn-1]),Un.setTooltip(wt[fn-3],wt[fn]);break;case 83:this.$=wt[fn-5],Un.setLink(wt[fn-4],wt[fn-2],wt[fn]),Un.setTooltip(wt[fn-4],wt[fn-1]);break;case 84:this.$=wt[fn-2],Un.setCssStyle(wt[fn-1],wt[fn]);break;case 85:Un.setCssClass(wt[fn-1],wt[fn]);break;case 86:this.$=[wt[fn]];break;case 87:wt[fn-2].push(wt[fn]),this.$=wt[fn-2];break;case 89:this.$=wt[fn-1]+wt[fn];break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:s,33:u,35:d,36:21,40:p,41:22,44:v,45:b,47:y,48:T,50:_,52:A,53:P,54:R,55:F,56:j,66:K,67:ee,69:ie,73:oe,74:pe,76:be,80:ae,95:ne,97:se,98:de},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},i(X,[2,5],{8:[1,46]}),{8:[1,47]},i(ge,[2,16],{21:[1,48]}),i(ge,[2,18]),i(ge,[2,19]),i(ge,[2,20]),i(ge,[2,21]),i(ge,[2,22]),i(ge,[2,23]),i(ge,[2,24]),i(ge,[2,25]),i(ge,[2,26]),{32:[1,49]},{34:[1,50]},i(ge,[2,29]),i(ge,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:W,60:xe,61:U,62:Fe,63:Pe,64:je,65:Ie}),{37:[1,63]},i(Se,[2,36],{37:[1,65],42:[1,64]}),i(ge,[2,47]),i(ge,[2,48]),{16:66,74:pe,80:ae,95:ne,97:se},{16:37,17:67,18:38,74:pe,80:ae,95:ne,97:se,98:de},{16:37,17:68,18:38,74:pe,80:ae,95:ne,97:se,98:de},{16:37,17:69,18:38,74:pe,80:ae,95:ne,97:se,98:de},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:pe,80:ae,95:ne,97:se,98:de},{13:Ce,51:73},i(ge,[2,55]),i(ge,[2,56]),i(ge,[2,57]),i(ge,[2,58]),i(ke,[2,11],{16:37,18:38,17:75,19:[1,76],74:pe,80:ae,95:ne,97:se,98:de}),i(ke,[2,12],{19:[1,77]}),{15:78,16:79,74:pe,80:ae,95:ne,97:se},{16:37,17:80,18:38,74:pe,80:ae,95:ne,97:se,98:de},i(Ke,[2,112]),i(Ke,[2,113]),i(Ke,[2,114]),i(Ke,[2,115]),i([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),i(X,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:s,33:u,35:d,40:p,44:v,45:b,47:y,48:T,50:_,52:A,53:P,54:R,55:F,56:j,66:K,67:ee,69:ie,73:oe,74:pe,76:be,80:ae,95:ne,97:se,98:de}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:s,33:u,35:d,36:21,40:p,41:22,44:v,45:b,47:y,48:T,50:_,52:A,53:P,54:R,55:F,56:j,66:K,67:ee,69:ie,73:oe,74:pe,76:be,80:ae,95:ne,97:se,98:de},i(ge,[2,17]),i(ge,[2,27]),i(ge,[2,28]),{13:[1,84],16:37,17:83,18:38,74:pe,80:ae,95:ne,97:se,98:de},{49:85,57:54,58:55,59:W,60:xe,61:U,62:Fe,63:Pe,64:je,65:Ie},i(ge,[2,46]),{58:86,64:je,65:Ie},i(Ft,[2,62],{57:87,59:W,60:xe,61:U,62:Fe,63:Pe}),i(Ne,[2,63]),i(Ne,[2,64]),i(Ne,[2,65]),i(Ne,[2,66]),i(Ne,[2,67]),i(gn,[2,68]),i(gn,[2,69]),{8:[1,89],23:90,38:88,41:22,44:v},{16:91,74:pe,80:ae,95:ne,97:se},{43:92,47:_t},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:Et,73:Gt,74:ln,75:99,77:100,79:101,80:xt,81:Pt,82:Qe,83:Dt,84:kt,85:On},{74:[1,111]},{13:Ce,51:112},i(ge,[2,54]),i(ge,[2,117]),i(ke,[2,13]),i(ke,[2,14]),i(ke,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:pe,80:ae,95:ne,97:se},i(ht,[2,40],{11:114,12:[1,115]}),i(X,[2,7]),{9:[1,116]},i(zr,[2,49]),{16:37,17:117,18:38,74:pe,80:ae,95:ne,97:se,98:de},{13:[1,119],16:37,17:118,18:38,74:pe,80:ae,95:ne,97:se,98:de},i(Ft,[2,61],{57:120,59:W,60:xe,61:U,62:Fe,63:Pe}),i(Ft,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:v},{8:[1,123],39:[2,33]},i(Se,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:_t},{16:37,17:127,18:38,74:pe,80:ae,95:ne,97:se,98:de},i(ge,[2,70],{13:[1,128]}),i(ge,[2,72],{13:[1,130],68:[1,129]}),i(ge,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},i(ge,[2,84],{78:[1,134]}),i(yt,[2,86],{79:135,21:Et,73:Gt,74:ln,80:xt,81:Pt,82:Qe,83:Dt,84:kt,85:On}),i(ji,[2,88]),i(ji,[2,90]),i(ji,[2,91]),i(ji,[2,92]),i(ji,[2,93]),i(ji,[2,94]),i(ji,[2,95]),i(ji,[2,96]),i(ji,[2,97]),i(ji,[2,98]),i(ge,[2,85]),i(ge,[2,53]),{37:[2,10]},i(ht,[2,41]),{13:[1,136]},{1:[2,4]},i(zr,[2,51]),i(zr,[2,50]),{16:37,17:137,18:38,74:pe,80:ae,95:ne,97:se,98:de},i(Ft,[2,59]),i(ge,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:v},{43:140,47:_t},i(Se,[2,38]),{39:[2,44]},i(ge,[2,42]),i(ge,[2,71]),i(ge,[2,73]),i(ge,[2,74],{68:[1,141]}),i(ge,[2,77]),i(ge,[2,78],{13:[1,142]}),i(ge,[2,80],{13:[1,144],68:[1,143]}),{21:Et,73:Gt,74:ln,77:145,79:101,80:xt,81:Pt,82:Qe,83:Dt,84:kt,85:On},i(ji,[2,89]),{14:[1,146]},i(zr,[2,52]),i(ge,[2,31]),{39:[2,35]},{39:[1,147]},i(ge,[2,75]),i(ge,[2,79]),i(ge,[2,81]),i(ge,[2,82],{68:[1,148]}),i(yt,[2,87],{79:135,21:Et,73:Gt,74:ln,80:xt,81:Pt,82:Qe,83:Dt,84:kt,85:On}),i(ht,[2,8]),i(Se,[2,39]),i(ge,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:function(Tr,Fn){if(Fn.recoverable)this.trace(Tr);else{var qn=new Error(Tr);throw qn.hash=Fn,qn}},parse:function(Tr){var Fn=this,qn=[0],Un=[],At=[null],wt=[],on=this.table,fn="",An=0,oo=0,jo=2,$o=1,Pa=wt.slice.call(arguments,1),wo=Object.create(this.lexer),_s={yy:{}};for(var tl in this.yy)Object.prototype.hasOwnProperty.call(this.yy,tl)&&(_s.yy[tl]=this.yy[tl]);wo.setInput(Tr,_s.yy),_s.yy.lexer=wo,_s.yy.parser=this,typeof wo.yylloc>"u"&&(wo.yylloc={});var da=wo.yylloc;wt.push(da);var j0=wo.options&&wo.options.ranges;typeof _s.yy.parseError=="function"?this.parseError=_s.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pm(){var ga;return ga=Un.pop()||wo.lex()||$o,typeof ga!="number"&&(ga instanceof Array&&(Un=ga,ga=Un.pop()),ga=Fn.symbols_[ga]||ga),ga}for(var Ml,Xc,Bc,ja,Ou={},Sa,Po,Fc,xa;;){if(Xc=qn[qn.length-1],this.defaultActions[Xc]?Bc=this.defaultActions[Xc]:((Ml===null||typeof Ml>"u")&&(Ml=pm()),Bc=on[Xc]&&on[Xc][Ml]),typeof Bc>"u"||!Bc.length||!Bc[0]){var Ba="";xa=[];for(Sa in on[Xc])this.terminals_[Sa]&&Sa>jo&&xa.push("'"+this.terminals_[Sa]+"'");wo.showPosition?Ba="Parse error on line "+(An+1)+`:
+`+wo.showPosition()+`
+Expecting `+xa.join(", ")+", got '"+(this.terminals_[Ml]||Ml)+"'":Ba="Parse error on line "+(An+1)+": Unexpected "+(Ml==$o?"end of input":"'"+(this.terminals_[Ml]||Ml)+"'"),this.parseError(Ba,{text:wo.match,token:this.terminals_[Ml]||Ml,line:wo.yylineno,loc:da,expected:xa})}if(Bc[0]instanceof Array&&Bc.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Xc+", token: "+Ml);switch(Bc[0]){case 1:qn.push(Ml),At.push(wo.yytext),wt.push(wo.yylloc),qn.push(Bc[1]),Ml=null,oo=wo.yyleng,fn=wo.yytext,An=wo.yylineno,da=wo.yylloc;break;case 2:if(Po=this.productions_[Bc[1]][1],Ou.$=At[At.length-Po],Ou._$={first_line:wt[wt.length-(Po||1)].first_line,last_line:wt[wt.length-1].last_line,first_column:wt[wt.length-(Po||1)].first_column,last_column:wt[wt.length-1].last_column},j0&&(Ou._$.range=[wt[wt.length-(Po||1)].range[0],wt[wt.length-1].range[1]]),ja=this.performAction.apply(Ou,[fn,oo,An,_s.yy,Bc[1],At,wt].concat(Pa)),typeof ja<"u")return ja;Po&&(qn=qn.slice(0,-1*Po*2),At=At.slice(0,-1*Po),wt=wt.slice(0,-1*Po)),qn.push(this.productions_[Bc[1]][0]),At.push(Ou.$),wt.push(Ou._$),Fc=on[qn[qn.length-2]][qn[qn.length-1]],qn.push(Fc);break;case 3:return!0}}return!0}},Ma=function(){var ao={EOF:1,parseError:function(Fn,qn){if(this.yy.parser)this.yy.parser.parseError(Fn,qn);else throw new Error(Fn)},setInput:function(Tr,Fn){return this.yy=Fn||this.yy||{},this._input=Tr,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 Tr=this._input[0];this.yytext+=Tr,this.yyleng++,this.offset++,this.match+=Tr,this.matched+=Tr;var Fn=Tr.match(/(?:\r\n?|\n).*/g);return Fn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Tr},unput:function(Tr){var Fn=Tr.length,qn=Tr.split(/(?:\r\n?|\n)/g);this._input=Tr+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Fn),this.offset-=Fn;var Un=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),qn.length-1&&(this.yylineno-=qn.length-1);var At=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:qn?(qn.length===Un.length?this.yylloc.first_column:0)+Un[Un.length-qn.length].length-qn[0].length:this.yylloc.first_column-Fn},this.options.ranges&&(this.yylloc.range=[At[0],At[0]+this.yyleng-Fn]),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(Tr){this.unput(this.match.slice(Tr))},pastInput:function(){var Tr=this.matched.substr(0,this.matched.length-this.match.length);return(Tr.length>20?"...":"")+Tr.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Tr=this.match;return Tr.length<20&&(Tr+=this._input.substr(0,20-Tr.length)),(Tr.substr(0,20)+(Tr.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Tr=this.pastInput(),Fn=new Array(Tr.length+1).join("-");return Tr+this.upcomingInput()+`
+`+Fn+"^"},test_match:function(Tr,Fn){var qn,Un,At;if(this.options.backtrack_lexer&&(At={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&&(At.yylloc.range=this.yylloc.range.slice(0))),Un=Tr[0].match(/(?:\r\n?|\n).*/g),Un&&(this.yylineno+=Un.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Un?Un[Un.length-1].length-Un[Un.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Tr[0].length},this.yytext+=Tr[0],this.match+=Tr[0],this.matches=Tr,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(Tr[0].length),this.matched+=Tr[0],qn=this.performAction.call(this,this.yy,this,Fn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),qn)return qn;if(this._backtrack){for(var wt in At)this[wt]=At[wt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Tr,Fn,qn,Un;this._more||(this.yytext="",this.match="");for(var At=this._currentRules(),wt=0;wtFn[0].length)){if(Fn=qn,Un=wt,this.options.backtrack_lexer){if(Tr=this.test_match(qn,At[wt]),Tr!==!1)return Tr;if(this._backtrack){Fn=!1;continue}else return!1}else if(!this.options.flex)break}return Fn?(Tr=this.test_match(Fn,At[Un]),Tr!==!1?Tr:!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 Fn=this.next();return Fn||this.lex()},begin:function(Fn){this.conditionStack.push(Fn)},popState:function(){var Fn=this.conditionStack.length-1;return Fn>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(Fn){return Fn=this.conditionStack.length-1-Math.abs(Fn||0),Fn>=0?this.conditionStack[Fn]:"INITIAL"},pushState:function(Fn){this.begin(Fn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Fn,qn,Un,At){switch(Un){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:break;case 5:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 22:this.popState();break;case 23:return 71;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:return this.popState(),8;case 30:break;case 31:return this.begin("namespace-body"),37;case 32:return this.popState(),39;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),44;case 38:return this.popState(),8;case 39:break;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 42:return this.popState(),39;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 68;case 64:return 68;case 65:return 68;case 66:return 68;case 67:return 60;case 68:return 60;case 69:return 62;case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:return 84;case 84:return 84;case 85:return 85;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:return 83;case 95:return 83;case 96:return 9}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-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])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}};return ao}();xi.lexer=Ma;function zs(){this.yy={}}return zs.prototype=xi,xi.Parser=zs,new zs}();_ve.parser=_ve;const KGe=_ve,WGe=["#","+","~","-",""];class YGe{constructor(s,u){this.memberType=u,this.visibility="",this.classifier="";const d=Yf(s,qt());this.parseMember(d)}getDisplayDetails(){let s=this.visibility+qF(this.id);this.memberType==="method"&&(s+=`(${qF(this.parameters.trim())})`,this.returnType&&(s+=" : "+qF(this.returnType))),s=s.trim();const u=this.parseClassifier();return{displayText:s,cssStyle:u}}parseMember(s){let u="";if(this.memberType==="method"){const d=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/,p=s.match(d);if(p){const v=p[1]?p[1].trim():"";if(WGe.includes(v)&&(this.visibility=v),this.id=p[2].trim(),this.parameters=p[3]?p[3].trim():"",u=p[4]?p[4].trim():"",this.returnType=p[5]?p[5].trim():"",u===""){const b=this.returnType.substring(this.returnType.length-1);b.match(/[$*]/)&&(u=b,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const d=s.length,p=s.substring(0,1),v=s.substring(d-1);WGe.includes(p)&&(this.visibility=p),v.match(/[$*]/)&&(u=v),this.id=s.substring(this.visibility===""?0:1,u===""?d:d-1)}this.classifier=u}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}const mJ="classId-";let Ave=[],xh={},vJ=[],XGe=0,R9={},Lve=0,WR=[];const tS=i=>ci.sanitizeText(i,qt()),nS=function(i){const s=ci.sanitizeText(i,qt());let u="",d=s;if(s.indexOf("~")>0){const p=s.split("~");d=tS(p[0]),u=tS(p[1])}return{className:d,type:u}},Ein=function(i,s){const u=ci.sanitizeText(i,qt());s&&(s=tS(s));const{className:d}=nS(u);xh[d].label=s},wJ=function(i){const s=ci.sanitizeText(i,qt()),{className:u,type:d}=nS(s);if(Object.hasOwn(xh,u))return;const p=ci.sanitizeText(u,qt());xh[p]={id:p,type:d,label:p,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:mJ+p+"-"+XGe},XGe++},QGe=function(i){const s=ci.sanitizeText(i,qt());if(s in xh)return xh[s].domId;throw new Error("Class not found: "+s)},Tin=function(){Ave=[],xh={},vJ=[],WR=[],WR.push(ZGe),R9={},Lve=0,Pg()},Cin=function(i){return xh[i]},Sin=function(){return xh},_in=function(){return Ave},Ain=function(){return vJ},Lin=function(i){Xe.debug("Adding relation: "+JSON.stringify(i)),wJ(i.id1),wJ(i.id2),i.id1=nS(i.id1).className,i.id2=nS(i.id2).className,i.relationTitle1=ci.sanitizeText(i.relationTitle1.trim(),qt()),i.relationTitle2=ci.sanitizeText(i.relationTitle2.trim(),qt()),Ave.push(i)},Min=function(i,s){const u=nS(i).className;xh[u].annotations.push(s)},JGe=function(i,s){wJ(i);const u=nS(i).className,d=xh[u];if(typeof s=="string"){const p=s.trim();p.startsWith("<<")&&p.endsWith(">>")?d.annotations.push(tS(p.substring(2,p.length-2))):p.indexOf(")")>0?d.methods.push(new YGe(p,"method")):p&&d.members.push(new YGe(p,"attribute"))}},Din=function(i,s){Array.isArray(s)&&(s.reverse(),s.forEach(u=>JGe(i,u)))},Iin=function(i,s){const u={id:`note${vJ.length}`,class:s,text:i};vJ.push(u)},Oin=function(i){return i.startsWith(":")&&(i=i.substring(1)),tS(i.trim())},Mve=function(i,s){i.split(",").forEach(function(u){let d=u;u[0].match(/\d/)&&(d=mJ+d),xh[d]!==void 0&&xh[d].cssClasses.push(s)})},Nin=function(i,s){i.split(",").forEach(function(u){s!==void 0&&(xh[u].tooltip=tS(s))})},Pin=function(i,s){return s?R9[s].classes[i].tooltip:xh[i].tooltip},Bin=function(i,s,u){const d=qt();i.split(",").forEach(function(p){let v=p;p[0].match(/\d/)&&(v=mJ+v),xh[v]!==void 0&&(xh[v].link=Ao.formatUrl(s,d),d.securityLevel==="sandbox"?xh[v].linkTarget="_top":typeof u=="string"?xh[v].linkTarget=tS(u):xh[v].linkTarget="_blank")}),Mve(i,"clickable")},Fin=function(i,s,u){i.split(",").forEach(function(d){Rin(d,s,u),xh[d].haveCallback=!0}),Mve(i,"clickable")},Rin=function(i,s,u){const d=ci.sanitizeText(i,qt());if(qt().securityLevel!=="loose"||s===void 0)return;const v=d;if(xh[v]!==void 0){const b=QGe(v);let y=[];if(typeof u=="string"){y=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let T=0;T")),p.classed("hover",!0)}).on("mouseout",function(){s.transition().duration(500).style("opacity",0),Ir(this).classed("hover",!1)})};WR.push(ZGe);let eKe="TB";const yJ={setAccTitle:Bg,getAccTitle:Cp,getAccDescription:_p,setAccDescription:Sp,getConfig:()=>qt().class,addClass:wJ,bindFunctions:jin,clear:Tin,getClass:Cin,getClasses:Sin,getNotes:Ain,addAnnotation:Min,addNote:Iin,getRelations:_in,addRelation:Lin,getDirection:()=>eKe,setDirection:i=>{eKe=i},addMember:JGe,addMembers:Din,cleanupLabel:Oin,lineType:$in,relationType:zin,setClickEvent:Fin,setCssClass:Mve,setLink:Bin,getTooltip:Pin,setTooltip:Nin,lookUpDomId:QGe,setDiagramTitle:cm,getDiagramTitle:Ap,setClassLabel:Ein,addNamespace:function(i){R9[i]===void 0&&(R9[i]={id:i,classes:{},children:{},domId:mJ+i+"-"+Lve},Lve++)},addClassesToNamespace:function(i,s){if(R9[i]!==void 0)for(const u of s){const{className:d}=nS(u);xh[d].parent=i,R9[i].classes[d]=xh[d]}},getNamespace:function(i){return R9[i]},getNamespaces:function(){return R9},setCssStyle:function(i,s){const u=xh[i];if(!(!s||!u))for(const d of s)d.includes(",")?u.styles.push(...d.split(",")):u.styles.push(d)}},tKe=i=>`g.classGroup text {
+ fill: ${i.nodeBorder||i.classText};
+ stroke: none;
+ font-family: ${i.fontFamily};
+ font-size: 10px;
+
+ .title {
+ font-weight: bolder;
+ }
+
+}
+
+.nodeLabel, .edgeLabel {
+ color: ${i.classText};
+}
+.edgeLabel .label rect {
+ fill: ${i.mainBkg};
+}
+.label text {
+ fill: ${i.classText};
+}
+.edgeLabel .label span {
+ background: ${i.mainBkg};
+}
+
+.classTitle {
+ font-weight: bolder;
+}
+.node rect,
+ .node circle,
+ .node ellipse,
+ .node polygon,
+ .node path {
+ fill: ${i.mainBkg};
+ stroke: ${i.nodeBorder};
+ stroke-width: 1px;
+ }
+
+
+.divider {
+ stroke: ${i.nodeBorder};
+ stroke-width: 1;
+}
+
+g.clickable {
+ cursor: pointer;
+}
+
+g.classGroup rect {
+ fill: ${i.mainBkg};
+ stroke: ${i.nodeBorder};
+}
+
+g.classGroup line {
+ stroke: ${i.nodeBorder};
+ stroke-width: 1;
+}
+
+.classLabel .box {
+ stroke: none;
+ stroke-width: 0;
+ fill: ${i.mainBkg};
+ opacity: 0.5;
+}
+
+.classLabel .label {
+ fill: ${i.nodeBorder};
+ font-size: 10px;
+}
+
+.relation {
+ stroke: ${i.lineColor};
+ stroke-width: 1;
+ fill: none;
+}
+
+.dashed-line{
+ stroke-dasharray: 3;
+}
+
+.dotted-line{
+ stroke-dasharray: 1 2;
+}
+
+#compositionStart, .composition {
+ fill: ${i.lineColor} !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#compositionEnd, .composition {
+ fill: ${i.lineColor} !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#dependencyStart, .dependency {
+ fill: ${i.lineColor} !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#dependencyStart, .dependency {
+ fill: ${i.lineColor} !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#extensionStart, .extension {
+ fill: transparent !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#extensionEnd, .extension {
+ fill: transparent !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#aggregationStart, .aggregation {
+ fill: transparent !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#aggregationEnd, .aggregation {
+ fill: transparent !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#lollipopStart, .lollipop {
+ fill: ${i.mainBkg} !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+#lollipopEnd, .lollipop {
+ fill: ${i.mainBkg} !important;
+ stroke: ${i.lineColor} !important;
+ stroke-width: 1;
+}
+
+.edgeTerminals {
+ font-size: 11px;
+ line-height: initial;
+}
+
+.classTitleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: ${i.textColor};
+}
+`;let nKe=0;const qin=function(i,s,u,d,p){const v=function(oe){switch(oe){case p.db.relationType.AGGREGATION:return"aggregation";case p.db.relationType.EXTENSION:return"extension";case p.db.relationType.COMPOSITION:return"composition";case p.db.relationType.DEPENDENCY:return"dependency";case p.db.relationType.LOLLIPOP:return"lollipop"}};s.points=s.points.filter(oe=>!Number.isNaN(oe.y));const b=s.points,y=k7().x(function(oe){return oe.x}).y(function(oe){return oe.y}).curve(FF),T=i.append("path").attr("d",y(b)).attr("id","edge"+nKe).attr("class","relation");let _="";d.arrowMarkerAbsolute&&(_=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,_=_.replace(/\(/g,"\\("),_=_.replace(/\)/g,"\\)")),u.relation.lineType==1&&T.attr("class","relation dashed-line"),u.relation.lineType==10&&T.attr("class","relation dotted-line"),u.relation.type1!=="none"&&T.attr("marker-start","url("+_+"#"+v(u.relation.type1)+"Start)"),u.relation.type2!=="none"&&T.attr("marker-end","url("+_+"#"+v(u.relation.type2)+"End)");let A,P;const R=s.points.length;let F=Ao.calcLabelPosition(s.points);A=F.x,P=F.y;let j,K,ee,ie;if(R%2!==0&&R>1){let oe=Ao.calcCardinalityPosition(u.relation.type1!=="none",s.points,s.points[0]),pe=Ao.calcCardinalityPosition(u.relation.type2!=="none",s.points,s.points[R-1]);Xe.debug("cardinality_1_point "+JSON.stringify(oe)),Xe.debug("cardinality_2_point "+JSON.stringify(pe)),j=oe.x,K=oe.y,ee=pe.x,ie=pe.y}if(u.title!==void 0){const oe=i.append("g").attr("class","classLabel"),pe=oe.append("text").attr("class","label").attr("x",A).attr("y",P).attr("fill","red").attr("text-anchor","middle").text(u.title);window.label=pe;const be=pe.node().getBBox();oe.insert("rect",":first-child").attr("class","box").attr("x",be.x-d.padding/2).attr("y",be.y-d.padding/2).attr("width",be.width+d.padding).attr("height",be.height+d.padding)}Xe.info("Rendering relation "+JSON.stringify(u)),u.relationTitle1!==void 0&&u.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",j).attr("y",K).attr("fill","black").attr("font-size","6").text(u.relationTitle1),u.relationTitle2!==void 0&&u.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",ee).attr("y",ie).attr("fill","black").attr("font-size","6").text(u.relationTitle2),nKe++},Hin=function(i,s,u,d){Xe.debug("Rendering class ",s,u);const p=s.id,v={id:p,label:s.id,width:0,height:0},b=i.append("g").attr("id",d.db.lookUpDomId(p)).attr("class","classGroup");let y;s.link?y=b.append("svg:a").attr("xlink:href",s.link).attr("target",s.linkTarget).append("text").attr("y",u.textHeight+u.padding).attr("x",0):y=b.append("text").attr("y",u.textHeight+u.padding).attr("x",0);let T=!0;s.annotations.forEach(function(pe){const be=y.append("tspan").text("«"+pe+"»");T||be.attr("dy",u.textHeight),T=!1});let _=rKe(s);const A=y.append("tspan").text(_).attr("class","title");T||A.attr("dy",u.textHeight);const P=y.node().getBBox().height;let R,F,j;if(s.members.length>0){R=b.append("line").attr("x1",0).attr("y1",u.padding+P+u.dividerMargin/2).attr("y2",u.padding+P+u.dividerMargin/2);const pe=b.append("text").attr("x",u.padding).attr("y",P+u.dividerMargin+u.textHeight).attr("fill","white").attr("class","classText");T=!0,s.members.forEach(function(be){iKe(pe,be,T,u),T=!1}),F=pe.node().getBBox()}if(s.methods.length>0){j=b.append("line").attr("x1",0).attr("y1",u.padding+P+u.dividerMargin+F.height).attr("y2",u.padding+P+u.dividerMargin+F.height);const pe=b.append("text").attr("x",u.padding).attr("y",P+2*u.dividerMargin+F.height+u.textHeight).attr("fill","white").attr("class","classText");T=!0,s.methods.forEach(function(be){iKe(pe,be,T,u),T=!1})}const K=b.node().getBBox();var ee=" ";s.cssClasses.length>0&&(ee=ee+s.cssClasses.join(" "));const oe=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",K.width+2*u.padding).attr("height",K.height+u.padding+.5*u.dividerMargin).attr("class",ee).node().getBBox().width;return y.node().childNodes.forEach(function(pe){pe.setAttribute("x",(oe-pe.getBBox().width)/2)}),s.tooltip&&y.insert("title").text(s.tooltip),R&&R.attr("x2",oe),j&&j.attr("x2",oe),v.width=oe,v.height=K.height+u.padding+.5*u.dividerMargin,v},rKe=function(i){let s=i.id;return i.type&&(s+="<"+qF(i.type)+">"),s},Vin=function(i,s,u,d){Xe.debug("Rendering note ",s,u);const p=s.id,v={id:p,text:s.text,width:0,height:0},b=i.append("g").attr("id",p).attr("class","classGroup");let y=b.append("text").attr("y",u.textHeight+u.padding).attr("x",0);const T=JSON.parse(`"${s.text}"`).split(`
+`);T.forEach(function(R){Xe.debug(`Adding line: ${R}`),y.append("tspan").text(R).attr("class","title").attr("dy",u.textHeight)});const _=b.node().getBBox(),P=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",_.width+2*u.padding).attr("height",_.height+T.length*u.textHeight+u.padding+.5*u.dividerMargin).node().getBBox().width;return y.node().childNodes.forEach(function(R){R.setAttribute("x",(P-R.getBBox().width)/2)}),v.width=P,v.height=_.height+T.length*u.textHeight+u.padding+.5*u.dividerMargin,v},iKe=function(i,s,u,d){const{displayText:p,cssStyle:v}=s.getDisplayDetails(),b=i.append("tspan").attr("x",d.padding).text(p);v!==""&&b.attr("style",s.cssStyle),u||b.attr("dy",d.textHeight)},Dve={getClassTitleString:rKe,drawClass:Hin,drawEdge:qin,drawNote:Vin};let xJ={};const kJ=20,YR=function(i){const s=Object.entries(xJ).find(u=>u[1].label===i);if(s)return s[0]},Uin=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).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"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).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"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).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"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).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"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).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"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).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")},Gin=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:KGe,db:yJ,renderer:{draw:function(i,s,u,d){const p=qt().class;xJ={},Xe.info("Rendering diagram "+i);const v=qt().securityLevel;let b;v==="sandbox"&&(b=Ir("#i"+s));const y=Ir(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),T=y.select(`[id='${s}']`);Uin(T);const _=new B0({multigraph:!0});_.setGraph({isMultiGraph:!0}),_.setDefaultEdgeLabel(function(){return{}});const A=d.db.getClasses(),P=Object.keys(A);for(const oe of P){const pe=A[oe],be=Dve.drawClass(T,pe,p,d);xJ[be.id]=be,_.setNode(be.id,be),Xe.info("Org height: "+be.height)}d.db.getRelations().forEach(function(oe){Xe.info("tjoho"+YR(oe.id1)+YR(oe.id2)+JSON.stringify(oe)),_.setEdge(YR(oe.id1),YR(oe.id2),{relation:oe},oe.title||"DEFAULT")}),d.db.getNotes().forEach(function(oe){Xe.debug(`Adding note: ${JSON.stringify(oe)}`);const pe=Dve.drawNote(T,oe,p,d);xJ[pe.id]=pe,_.setNode(pe.id,pe),oe.class&&oe.class in A&&_.setEdge(oe.id,YR(oe.class),{relation:{id1:oe.id,id2:oe.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),qD(_),_.nodes().forEach(function(oe){oe!==void 0&&_.node(oe)!==void 0&&(Xe.debug("Node "+oe+": "+JSON.stringify(_.node(oe))),y.select("#"+(d.db.lookUpDomId(oe)||oe)).attr("transform","translate("+(_.node(oe).x-_.node(oe).width/2)+","+(_.node(oe).y-_.node(oe).height/2)+" )"))}),_.edges().forEach(function(oe){oe!==void 0&&_.edge(oe)!==void 0&&(Xe.debug("Edge "+oe.v+" -> "+oe.w+": "+JSON.stringify(_.edge(oe))),Dve.drawEdge(T,_.edge(oe),_.edge(oe).relation,p,d))});const j=T.node().getBBox(),K=j.width+kJ*2,ee=j.height+kJ*2;Ng(T,ee,K,p.useMaxWidth);const ie=`${j.x-kJ} ${j.y-kJ} ${K} ${ee}`;Xe.debug(`viewBox ${ie}`),T.attr("viewBox",ie)}},styles:tKe,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yJ.clear()}}},Symbol.toStringTag,{value:"Module"})),Ive=i=>ci.sanitizeText(i,qt());let Ove={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const Kin=function(i,s,u,d){const p=Object.keys(i);Xe.info("keys:",p),Xe.info(i),p.forEach(function(v){var _,A;const b=i[v],T={shape:"rect",id:b.id,domId:b.domId,labelText:Ive(b.id),labelStyle:"",style:"fill: none; stroke: black",padding:((_=qt().flowchart)==null?void 0:_.padding)??((A=qt().class)==null?void 0:A.padding)};s.setNode(b.id,T),sKe(b.classes,s,u,d,b.id),Xe.info("setNode",T)})},sKe=function(i,s,u,d,p){const v=Object.keys(i);Xe.info("keys:",v),Xe.info(i),v.filter(b=>i[b].parent==p).forEach(function(b){var j,K;const y=i[b],T=y.cssClasses.join(" "),_=om(y.styles),A=y.label??y.id,P=0,R="class_box",F={labelStyle:_.labelStyle,shape:R,labelText:Ive(A),classData:y,rx:P,ry:P,class:T,style:_.style,id:y.id,domId:y.domId,tooltip:d.db.getTooltip(y.id,p)||"",haveCallback:y.haveCallback,link:y.link,width:y.type==="group"?500:void 0,type:y.type,padding:((j=qt().flowchart)==null?void 0:j.padding)??((K=qt().class)==null?void 0:K.padding)};s.setNode(y.id,F),p&&s.setParent(y.id,p),Xe.info("setNode",F)})},Win=function(i,s,u,d){Xe.info(i),i.forEach(function(p,v){var K,ee;const b=p,y="",T={labelStyle:"",style:""},_=b.text,A=0,P="note",R={labelStyle:T.labelStyle,shape:P,labelText:Ive(_),noteData:b,rx:A,ry:A,class:y,style:T.style,id:b.id,domId:b.id,tooltip:"",type:"note",padding:((K=qt().flowchart)==null?void 0:K.padding)??((ee=qt().class)==null?void 0:ee.padding)};if(s.setNode(b.id,R),Xe.info("setNode",R),!b.class||!(b.class in d))return;const F=u+v,j={id:`edgeNote${F}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:Ov(Ove.curve,kp)};s.setEdge(b.id,b.class,j,F)})},Yin=function(i,s){const u=qt().flowchart;let d=0;i.forEach(function(p){var b;d++;const v={classes:"relation",pattern:p.relation.lineType==1?"dashed":"solid",id:`id_${p.id1}_${p.id2}_${d}`,arrowhead:p.type==="arrow_open"?"none":"normal",startLabelRight:p.relationTitle1==="none"?"":p.relationTitle1,endLabelLeft:p.relationTitle2==="none"?"":p.relationTitle2,arrowTypeStart:aKe(p.relation.type1),arrowTypeEnd:aKe(p.relation.type2),style:"fill:none",labelStyle:"",curve:Ov(u==null?void 0:u.curve,kp)};if(Xe.info(v,p),p.style!==void 0){const y=om(p.style);v.style=y.style,v.labelStyle=y.labelStyle}p.text=p.title,p.text===void 0?p.style!==void 0&&(v.arrowheadStyle="fill: #333"):(v.arrowheadStyle="fill: #333",v.labelpos="c",((b=qt().flowchart)==null?void 0:b.htmlLabels)??qt().htmlLabels?(v.labelType="html",v.label=''+p.text+""):(v.labelType="text",v.label=p.text.replace(ci.lineBreakRegex,`
+`),p.style===void 0&&(v.style=v.style||"stroke: #333; stroke-width: 1.5px;fill:none"),v.labelStyle=v.labelStyle.replace("color:","fill:"))),s.setEdge(p.id1,p.id2,v,d)})},Xin=function(i){Ove={...Ove,...i}},Qin=async function(i,s,u,d){Xe.info("Drawing class - ",s);const p=qt().flowchart??qt().class,v=qt().securityLevel;Xe.info("config:",p);const b=(p==null?void 0:p.nodeSpacing)??50,y=(p==null?void 0:p.rankSpacing)??50,T=new B0({multigraph:!0,compound:!0}).setGraph({rankdir:d.db.getDirection(),nodesep:b,ranksep:y,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),_=d.db.getNamespaces(),A=d.db.getClasses(),P=d.db.getRelations(),R=d.db.getNotes();Xe.info(P),Kin(_,T,s,d),sKe(A,T,s,d),Yin(P,T),Win(R,T,P.length+1,A);let F;v==="sandbox"&&(F=Ir("#i"+s));const j=Ir(v==="sandbox"?F.nodes()[0].contentDocument.body:"body"),K=j.select(`[id="${s}"]`),ee=j.select("#"+s+" g");if(await qme(ee,T,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",s),Ao.insertTitle(K,"classTitleText",(p==null?void 0:p.titleTopMargin)??5,d.db.getDiagramTitle()),y9(T,K,p==null?void 0:p.diagramPadding,p==null?void 0:p.useMaxWidth),!(p!=null&&p.htmlLabels)){const ie=v==="sandbox"?F.nodes()[0].contentDocument:document,oe=ie.querySelectorAll('[id="'+s+'"] .edgeLabel .label');for(const pe of oe){const be=pe.getBBox(),ae=ie.createElementNS("http://www.w3.org/2000/svg","rect");ae.setAttribute("rx",0),ae.setAttribute("ry",0),ae.setAttribute("width",be.width),ae.setAttribute("height",be.height),pe.insertBefore(ae,pe.firstChild)}}};function aKe(i){let s;switch(i){case 0:s="aggregation";break;case 1:s="extension";break;case 2:s="composition";break;case 3:s="dependency";break;case 4:s="lollipop";break;default:s="none"}return s}const Jin=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:KGe,db:yJ,renderer:{setConf:Xin,draw:Qin},styles:tKe,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yJ.clear()}}},Symbol.toStringTag,{value:"Module"}));var Nve=function(){var i=function(Ie,Se,Ce,ke){for(Ce=Ce||{},ke=Ie.length;ke--;Ce[Ie[ke]]=Se);return Ce},s=[1,2],u=[1,3],d=[1,4],p=[2,4],v=[1,9],b=[1,11],y=[1,15],T=[1,16],_=[1,17],A=[1,18],P=[1,30],R=[1,19],F=[1,20],j=[1,21],K=[1,22],ee=[1,23],ie=[1,25],oe=[1,26],pe=[1,27],be=[1,28],ae=[1,29],ne=[1,32],se=[1,33],de=[1,34],X=[1,35],ge=[1,31],W=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],xe=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],U=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],Fe={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",13:"DESCR",14:"-->",15:"HIDE_EMPTY",16:"scale",17:"WIDTH",18:"COMPOSIT_STATE",19:"STRUCT_START",20:"STRUCT_STOP",21:"STATE_DESCR",22:"AS",23:"ID",24:"FORK",25:"JOIN",26:"CHOICE",27:"CONCURRENT",28:"note",30:"NOTE_TEXT",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"classDef",38:"CLASSDEF_ID",39:"CLASSDEF_STYLEOPTS",40:"DEFAULT",41:"class",42:"CLASSENTITY_IDS",43:"STYLECLASS",44:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[31,1],[31,1],[31,1],[31,1],[48,1],[48,1],[12,1],[12,1],[12,3],[12,3],[29,1],[29,1]],performAction:function(Se,Ce,ke,Ke,Ft,Ne,gn){var _t=Ne.length-1;switch(Ft){case 3:return Ke.setRootDoc(Ne[_t]),Ne[_t];case 4:this.$=[];break;case 5:Ne[_t]!="nl"&&(Ne[_t-1].push(Ne[_t]),this.$=Ne[_t-1]);break;case 6:case 7:this.$=Ne[_t];break;case 8:this.$="nl";break;case 11:this.$=Ne[_t];break;case 12:const xt=Ne[_t-1];xt.description=Ke.trimColon(Ne[_t]),this.$=xt;break;case 13:this.$={stmt:"relation",state1:Ne[_t-2],state2:Ne[_t]};break;case 14:const Pt=Ke.trimColon(Ne[_t]);this.$={stmt:"relation",state1:Ne[_t-3],state2:Ne[_t-1],description:Pt};break;case 18:this.$={stmt:"state",id:Ne[_t-3],type:"default",description:"",doc:Ne[_t-1]};break;case 19:var Et=Ne[_t],Gt=Ne[_t-2].trim();if(Ne[_t].match(":")){var ln=Ne[_t].split(":");Et=ln[0],Gt=[Gt,ln[1]]}this.$={stmt:"state",id:Et,type:"default",description:Gt};break;case 20:this.$={stmt:"state",id:Ne[_t-3],type:"default",description:Ne[_t-5],doc:Ne[_t-1]};break;case 21:this.$={stmt:"state",id:Ne[_t],type:"fork"};break;case 22:this.$={stmt:"state",id:Ne[_t],type:"join"};break;case 23:this.$={stmt:"state",id:Ne[_t],type:"choice"};break;case 24:this.$={stmt:"state",id:Ke.getDividerId(),type:"divider"};break;case 25:this.$={stmt:"state",id:Ne[_t-1].trim(),note:{position:Ne[_t-2].trim(),text:Ne[_t].trim()}};break;case 28:this.$=Ne[_t].trim(),Ke.setAccTitle(this.$);break;case 29:case 30:this.$=Ne[_t].trim(),Ke.setAccDescription(this.$);break;case 31:case 32:this.$={stmt:"classDef",id:Ne[_t-1].trim(),classes:Ne[_t].trim()};break;case 33:this.$={stmt:"applyClass",id:Ne[_t-1].trim(),styleClass:Ne[_t].trim()};break;case 34:Ke.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 35:Ke.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 36:Ke.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 37:Ke.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 40:case 41:this.$={stmt:"state",id:Ne[_t].trim(),type:"default",description:""};break;case 42:this.$={stmt:"state",id:Ne[_t-2].trim(),classes:[Ne[_t].trim()],type:"default",description:""};break;case 43:this.$={stmt:"state",id:Ne[_t-2].trim(),classes:[Ne[_t].trim()],type:"default",description:""};break}},table:[{3:1,4:s,5:u,6:d},{1:[3]},{3:5,4:s,5:u,6:d},{3:6,4:s,5:u,6:d},i([1,4,5,15,16,18,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],p,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:y,16:T,18:_,21:A,23:P,24:R,25:F,26:j,27:K,28:ee,31:24,32:ie,34:oe,36:pe,37:be,41:ae,44:ne,45:se,46:de,47:X,50:ge},i(W,[2,5]),{9:36,10:12,11:13,12:14,15:y,16:T,18:_,21:A,23:P,24:R,25:F,26:j,27:K,28:ee,31:24,32:ie,34:oe,36:pe,37:be,41:ae,44:ne,45:se,46:de,47:X,50:ge},i(W,[2,7]),i(W,[2,8]),i(W,[2,9]),i(W,[2,10]),i(W,[2,11],{13:[1,37],14:[1,38]}),i(W,[2,15]),{17:[1,39]},i(W,[2,17],{19:[1,40]}),{22:[1,41]},i(W,[2,21]),i(W,[2,22]),i(W,[2,23]),i(W,[2,24]),{29:42,30:[1,43],52:[1,44],53:[1,45]},i(W,[2,27]),{33:[1,46]},{35:[1,47]},i(W,[2,30]),{38:[1,48],40:[1,49]},{42:[1,50]},i(xe,[2,40],{51:[1,51]}),i(xe,[2,41],{51:[1,52]}),i(W,[2,34]),i(W,[2,35]),i(W,[2,36]),i(W,[2,37]),i(W,[2,6]),i(W,[2,12]),{12:53,23:P,50:ge},i(W,[2,16]),i(U,p,{7:54}),{23:[1,55]},{23:[1,56]},{22:[1,57]},{23:[2,44]},{23:[2,45]},i(W,[2,28]),i(W,[2,29]),{39:[1,58]},{39:[1,59]},{43:[1,60]},{23:[1,61]},{23:[1,62]},i(W,[2,13],{13:[1,63]}),{4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:y,16:T,18:_,20:[1,64],21:A,23:P,24:R,25:F,26:j,27:K,28:ee,31:24,32:ie,34:oe,36:pe,37:be,41:ae,44:ne,45:se,46:de,47:X,50:ge},i(W,[2,19],{19:[1,65]}),{30:[1,66]},{23:[1,67]},i(W,[2,31]),i(W,[2,32]),i(W,[2,33]),i(xe,[2,42]),i(xe,[2,43]),i(W,[2,14]),i(W,[2,18]),i(U,p,{7:68}),i(W,[2,25]),i(W,[2,26]),{4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:y,16:T,18:_,20:[1,69],21:A,23:P,24:R,25:F,26:j,27:K,28:ee,31:24,32:ie,34:oe,36:pe,37:be,41:ae,44:ne,45:se,46:de,47:X,50:ge},i(W,[2,20])],defaultActions:{5:[2,1],6:[2,2],44:[2,44],45:[2,45]},parseError:function(Se,Ce){if(Ce.recoverable)this.trace(Se);else{var ke=new Error(Se);throw ke.hash=Ce,ke}},parse:function(Se){var Ce=this,ke=[0],Ke=[],Ft=[null],Ne=[],gn=this.table,_t="",Et=0,Gt=0,ln=2,xt=1,Pt=Ne.slice.call(arguments,1),Qe=Object.create(this.lexer),Dt={yy:{}};for(var kt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kt)&&(Dt.yy[kt]=this.yy[kt]);Qe.setInput(Se,Dt.yy),Dt.yy.lexer=Qe,Dt.yy.parser=this,typeof Qe.yylloc>"u"&&(Qe.yylloc={});var On=Qe.yylloc;Ne.push(On);var ht=Qe.options&&Qe.options.ranges;typeof Dt.yy.parseError=="function"?this.parseError=Dt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function zr(){var At;return At=Ke.pop()||Qe.lex()||xt,typeof At!="number"&&(At instanceof Array&&(Ke=At,At=Ke.pop()),At=Ce.symbols_[At]||At),At}for(var yt,ji,xi,Ma,zs={},ao,Tr,Fn,qn;;){if(ji=ke[ke.length-1],this.defaultActions[ji]?xi=this.defaultActions[ji]:((yt===null||typeof yt>"u")&&(yt=zr()),xi=gn[ji]&&gn[ji][yt]),typeof xi>"u"||!xi.length||!xi[0]){var Un="";qn=[];for(ao in gn[ji])this.terminals_[ao]&&ao>ln&&qn.push("'"+this.terminals_[ao]+"'");Qe.showPosition?Un="Parse error on line "+(Et+1)+`:
+`+Qe.showPosition()+`
+Expecting `+qn.join(", ")+", got '"+(this.terminals_[yt]||yt)+"'":Un="Parse error on line "+(Et+1)+": Unexpected "+(yt==xt?"end of input":"'"+(this.terminals_[yt]||yt)+"'"),this.parseError(Un,{text:Qe.match,token:this.terminals_[yt]||yt,line:Qe.yylineno,loc:On,expected:qn})}if(xi[0]instanceof Array&&xi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ji+", token: "+yt);switch(xi[0]){case 1:ke.push(yt),Ft.push(Qe.yytext),Ne.push(Qe.yylloc),ke.push(xi[1]),yt=null,Gt=Qe.yyleng,_t=Qe.yytext,Et=Qe.yylineno,On=Qe.yylloc;break;case 2:if(Tr=this.productions_[xi[1]][1],zs.$=Ft[Ft.length-Tr],zs._$={first_line:Ne[Ne.length-(Tr||1)].first_line,last_line:Ne[Ne.length-1].last_line,first_column:Ne[Ne.length-(Tr||1)].first_column,last_column:Ne[Ne.length-1].last_column},ht&&(zs._$.range=[Ne[Ne.length-(Tr||1)].range[0],Ne[Ne.length-1].range[1]]),Ma=this.performAction.apply(zs,[_t,Gt,Et,Dt.yy,xi[1],Ft,Ne].concat(Pt)),typeof Ma<"u")return Ma;Tr&&(ke=ke.slice(0,-1*Tr*2),Ft=Ft.slice(0,-1*Tr),Ne=Ne.slice(0,-1*Tr)),ke.push(this.productions_[xi[1]][0]),Ft.push(zs.$),Ne.push(zs._$),Fn=gn[ke[ke.length-2]][ke[ke.length-1]],ke.push(Fn);break;case 3:return!0}}return!0}},Pe=function(){var Ie={EOF:1,parseError:function(Ce,ke){if(this.yy.parser)this.yy.parser.parseError(Ce,ke);else throw new Error(Ce)},setInput:function(Se,Ce){return this.yy=Ce||this.yy||{},this._input=Se,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 Se=this._input[0];this.yytext+=Se,this.yyleng++,this.offset++,this.match+=Se,this.matched+=Se;var Ce=Se.match(/(?:\r\n?|\n).*/g);return Ce?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Se},unput:function(Se){var Ce=Se.length,ke=Se.split(/(?:\r\n?|\n)/g);this._input=Se+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ce),this.offset-=Ce;var Ke=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),ke.length-1&&(this.yylineno-=ke.length-1);var Ft=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:ke?(ke.length===Ke.length?this.yylloc.first_column:0)+Ke[Ke.length-ke.length].length-ke[0].length:this.yylloc.first_column-Ce},this.options.ranges&&(this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-Ce]),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(Se){this.unput(this.match.slice(Se))},pastInput:function(){var Se=this.matched.substr(0,this.matched.length-this.match.length);return(Se.length>20?"...":"")+Se.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Se=this.match;return Se.length<20&&(Se+=this._input.substr(0,20-Se.length)),(Se.substr(0,20)+(Se.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Se=this.pastInput(),Ce=new Array(Se.length+1).join("-");return Se+this.upcomingInput()+`
+`+Ce+"^"},test_match:function(Se,Ce){var ke,Ke,Ft;if(this.options.backtrack_lexer&&(Ft={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&&(Ft.yylloc.range=this.yylloc.range.slice(0))),Ke=Se[0].match(/(?:\r\n?|\n).*/g),Ke&&(this.yylineno+=Ke.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ke?Ke[Ke.length-1].length-Ke[Ke.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Se[0].length},this.yytext+=Se[0],this.match+=Se[0],this.matches=Se,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(Se[0].length),this.matched+=Se[0],ke=this.performAction.call(this,this.yy,this,Ce,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ke)return ke;if(this._backtrack){for(var Ne in Ft)this[Ne]=Ft[Ne];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Se,Ce,ke,Ke;this._more||(this.yytext="",this.match="");for(var Ft=this._currentRules(),Ne=0;NeCe[0].length)){if(Ce=ke,Ke=Ne,this.options.backtrack_lexer){if(Se=this.test_match(ke,Ft[Ne]),Se!==!1)return Se;if(this._backtrack){Ce=!1;continue}else return!1}else if(!this.options.flex)break}return Ce?(Se=this.test_match(Ce,Ft[Ke]),Se!==!1?Se:!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 Ce=this.next();return Ce||this.lex()},begin:function(Ce){this.conditionStack.push(Ce)},popState:function(){var Ce=this.conditionStack.length-1;return Ce>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(Ce){return Ce=this.conditionStack.length-1-Math.abs(Ce||0),Ce>=0?this.conditionStack[Ce]:"INITIAL"},pushState:function(Ce){this.begin(Ce)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ce,ke,Ke,Ft){switch(Ke){case 0:return 40;case 1:return 44;case 2:return 45;case 3:return 46;case 4:return 47;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),16;case 13:return 17;case 14:this.popState();break;case 15:return this.begin("acc_title"),32;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),34;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),37;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),38;case 25:return this.popState(),39;case 26:return this.pushState("CLASS"),41;case 27:return this.popState(),this.pushState("CLASS_STYLE"),42;case 28:return this.popState(),43;case 29:return this.pushState("SCALE"),16;case 30:return 17;case 31:this.popState();break;case 32:this.pushState("STATE");break;case 33:return this.popState(),ke.yytext=ke.yytext.slice(0,-8).trim(),24;case 34:return this.popState(),ke.yytext=ke.yytext.slice(0,-8).trim(),25;case 35:return this.popState(),ke.yytext=ke.yytext.slice(0,-10).trim(),26;case 36:return this.popState(),ke.yytext=ke.yytext.slice(0,-8).trim(),24;case 37:return this.popState(),ke.yytext=ke.yytext.slice(0,-8).trim(),25;case 38:return this.popState(),ke.yytext=ke.yytext.slice(0,-10).trim(),26;case 39:return 44;case 40:return 45;case 41:return 46;case 42:return 47;case 43:this.pushState("STATE_STRING");break;case 44:return this.pushState("STATE_ID"),"AS";case 45:return this.popState(),"ID";case 46:this.popState();break;case 47:return"STATE_DESCR";case 48:return 18;case 49:this.popState();break;case 50:return this.popState(),this.pushState("struct"),19;case 51:break;case 52:return this.popState(),20;case 53:break;case 54:return this.begin("NOTE"),28;case 55:return this.popState(),this.pushState("NOTE_ID"),52;case 56:return this.popState(),this.pushState("NOTE_ID"),53;case 57:this.popState(),this.pushState("FLOATING_NOTE");break;case 58:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 59:break;case 60:return"NOTE_TEXT";case 61:return this.popState(),"ID";case 62:return this.popState(),this.pushState("NOTE_TEXT"),23;case 63:return this.popState(),ke.yytext=ke.yytext.substr(2).trim(),30;case 64:return this.popState(),ke.yytext=ke.yytext.slice(0,-8).trim(),30;case 65:return 6;case 66:return 6;case 67:return 15;case 68:return 50;case 69:return 23;case 70:return ke.yytext=ke.yytext.trim(),13;case 71:return 14;case 72:return 27;case 73:return 51;case 74:return 5;case 75:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,32,39,40,41,42,51,52,53,54,68,69,70,71,72],inclusive:!1},FLOATING_NOTE_ID:{rules:[61],inclusive:!1},FLOATING_NOTE:{rules:[58,59,60],inclusive:!1},NOTE_TEXT:{rules:[63,64],inclusive:!1},NOTE_ID:{rules:[62],inclusive:!1},NOTE:{rules:[55,56,57],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,30,31],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[45],inclusive:!1},STATE_STRING:{rules:[46,47],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,33,34,35,36,37,38,43,44,48,49,50],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,50,54,65,66,67,68,69,70,71,73,74,75],inclusive:!0}}};return Ie}();Fe.lexer=Pe;function je(){this.yy={}}return je.prototype=Fe,Fe.Parser=je,new je}();Nve.parser=Nve;const oKe=Nve,Zin="LR",esn="TB",EJ="state",Pve="relation",tsn="classDef",nsn="applyClass",XR="default",cKe="divider",Bve="[*]",uKe="start",lKe=Bve,hKe="end",fKe="color",dKe="fill",rsn="bgFill",isn=",";function gKe(){return{}}let pKe=Zin,TJ=[],QR=gKe();const bKe=()=>({relations:[],states:{},documents:{}});let CJ={root:bKe()},jg=CJ.root,JR=0,mKe=0;const ssn={LINE:0,DOTTED_LINE:1},asn={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},SJ=i=>JSON.parse(JSON.stringify(i)),osn=i=>{Xe.info("Setting root doc",i),TJ=i},csn=()=>TJ,_J=(i,s,u)=>{if(s.stmt===Pve)_J(i,s.state1,!0),_J(i,s.state2,!1);else if(s.stmt===EJ&&(s.id==="[*]"?(s.id=u?i.id+"_start":i.id+"_end",s.start=u):s.id=s.id.trim()),s.doc){const d=[];let p=[],v;for(v=0;v0&&p.length>0){const b={stmt:EJ,id:bje(),type:"divider",doc:SJ(p)};d.push(SJ(b)),s.doc=d}s.doc.forEach(b=>_J(s,b,!0))}},usn=()=>(_J({id:"root"},{id:"root",doc:TJ},!0),{id:"root",doc:TJ}),lsn=i=>{let s;i.doc?s=i.doc:s=i,Xe.info(s),vKe(!0),Xe.info("Extract",s),s.forEach(u=>{switch(u.stmt){case EJ:rS(u.id.trim(),u.type,u.doc,u.description,u.note,u.classes,u.styles,u.textStyles);break;case Pve:wKe(u.state1,u.state2,u.description);break;case tsn:yKe(u.id.trim(),u.classes);break;case nsn:$ve(u.id.trim(),u.styleClass);break}})},rS=function(i,s=XR,u=null,d=null,p=null,v=null,b=null,y=null){const T=i==null?void 0:i.trim();jg.states[T]===void 0?(Xe.info("Adding state ",T,d),jg.states[T]={id:T,descriptions:[],type:s,doc:u,note:p,classes:[],styles:[],textStyles:[]}):(jg.states[T].doc||(jg.states[T].doc=u),jg.states[T].type||(jg.states[T].type=s)),d&&(Xe.info("Setting state description",T,d),typeof d=="string"&&jve(T,d.trim()),typeof d=="object"&&d.forEach(_=>jve(T,_.trim()))),p&&(jg.states[T].note=p,jg.states[T].note.text=ci.sanitizeText(jg.states[T].note.text,qt())),v&&(Xe.info("Setting state classes",T,v),(typeof v=="string"?[v]:v).forEach(A=>$ve(T,A.trim()))),b&&(Xe.info("Setting state styles",T,b),(typeof b=="string"?[b]:b).forEach(A=>ysn(T,A.trim()))),y&&(Xe.info("Setting state styles",T,b),(typeof y=="string"?[y]:y).forEach(A=>xsn(T,A.trim())))},vKe=function(i){CJ={root:bKe()},jg=CJ.root,JR=0,QR=gKe(),i||Pg()},ZR=function(i){return jg.states[i]},hsn=function(){return jg.states},fsn=function(){Xe.info("Documents = ",CJ)},dsn=function(){return jg.relations};function Fve(i=""){let s=i;return i===Bve&&(JR++,s=`${uKe}${JR}`),s}function Rve(i="",s=XR){return i===Bve?uKe:s}function gsn(i=""){let s=i;return i===lKe&&(JR++,s=`${hKe}${JR}`),s}function psn(i="",s=XR){return i===lKe?hKe:s}function bsn(i,s,u){let d=Fve(i.id.trim()),p=Rve(i.id.trim(),i.type),v=Fve(s.id.trim()),b=Rve(s.id.trim(),s.type);rS(d,p,i.doc,i.description,i.note,i.classes,i.styles,i.textStyles),rS(v,b,s.doc,s.description,s.note,s.classes,s.styles,s.textStyles),jg.relations.push({id1:d,id2:v,relationTitle:ci.sanitizeText(u,qt())})}const wKe=function(i,s,u){if(typeof i=="object")bsn(i,s,u);else{const d=Fve(i.trim()),p=Rve(i),v=gsn(s.trim()),b=psn(s);rS(d,p),rS(v,b),jg.relations.push({id1:d,id2:v,title:ci.sanitizeText(u,qt())})}},jve=function(i,s){const u=jg.states[i],d=s.startsWith(":")?s.replace(":","").trim():s;u.descriptions.push(ci.sanitizeText(d,qt()))},msn=function(i){return i.substring(0,1)===":"?i.substr(2).trim():i.trim()},vsn=()=>(mKe++,"divider-id-"+mKe),yKe=function(i,s=""){QR[i]===void 0&&(QR[i]={id:i,styles:[],textStyles:[]});const u=QR[i];s!=null&&s.split(isn).forEach(d=>{const p=d.replace(/([^;]*);/,"$1").trim();if(d.match(fKe)){const b=p.replace(dKe,rsn).replace(fKe,dKe);u.textStyles.push(b)}u.styles.push(p)})},wsn=function(){return QR},$ve=function(i,s){i.split(",").forEach(function(u){let d=ZR(u);if(d===void 0){const p=u.trim();rS(p),d=ZR(p)}d.classes.push(s)})},ysn=function(i,s){const u=ZR(i);u!==void 0&&u.textStyles.push(s)},xsn=function(i,s){const u=ZR(i);u!==void 0&&u.textStyles.push(s)},G7={getConfig:()=>qt().state,addState:rS,clear:vKe,getState:ZR,getStates:hsn,getRelations:dsn,getClasses:wsn,getDirection:()=>pKe,addRelation:wKe,getDividerId:vsn,setDirection:i=>{pKe=i},cleanupLabel:msn,lineType:ssn,relationType:asn,logDocuments:fsn,getRootDoc:csn,setRootDoc:osn,getRootDocV2:usn,extract:lsn,trimColon:i=>i&&i[0]===":"?i.substr(1).trim():i.trim(),getAccTitle:Cp,setAccTitle:Bg,getAccDescription:_p,setAccDescription:Sp,addStyleClass:yKe,setCssClass:$ve,addDescription:jve,setDiagramTitle:cm,getDiagramTitle:Ap},xKe=i=>`
+defs #statediagram-barbEnd {
+ fill: ${i.transitionColor};
+ stroke: ${i.transitionColor};
+ }
+g.stateGroup text {
+ fill: ${i.nodeBorder};
+ stroke: none;
+ font-size: 10px;
+}
+g.stateGroup text {
+ fill: ${i.textColor};
+ stroke: none;
+ font-size: 10px;
+
+}
+g.stateGroup .state-title {
+ font-weight: bolder;
+ fill: ${i.stateLabelColor};
+}
+
+g.stateGroup rect {
+ fill: ${i.mainBkg};
+ stroke: ${i.nodeBorder};
+}
+
+g.stateGroup line {
+ stroke: ${i.lineColor};
+ stroke-width: 1;
+}
+
+.transition {
+ stroke: ${i.transitionColor};
+ stroke-width: 1;
+ fill: none;
+}
+
+.stateGroup .composit {
+ fill: ${i.background};
+ border-bottom: 1px
+}
+
+.stateGroup .alt-composit {
+ fill: #e0e0e0;
+ border-bottom: 1px
+}
+
+.state-note {
+ stroke: ${i.noteBorderColor};
+ fill: ${i.noteBkgColor};
+
+ text {
+ fill: ${i.noteTextColor};
+ stroke: none;
+ font-size: 10px;
+ }
+}
+
+.stateLabel .box {
+ stroke: none;
+ stroke-width: 0;
+ fill: ${i.mainBkg};
+ opacity: 0.5;
+}
+
+.edgeLabel .label rect {
+ fill: ${i.labelBackgroundColor};
+ opacity: 0.5;
+}
+.edgeLabel .label text {
+ fill: ${i.transitionLabelColor||i.tertiaryTextColor};
+}
+.label div .edgeLabel {
+ color: ${i.transitionLabelColor||i.tertiaryTextColor};
+}
+
+.stateLabel text {
+ fill: ${i.stateLabelColor};
+ font-size: 10px;
+ font-weight: bold;
+}
+
+.node circle.state-start {
+ fill: ${i.specialStateColor};
+ stroke: ${i.specialStateColor};
+}
+
+.node .fork-join {
+ fill: ${i.specialStateColor};
+ stroke: ${i.specialStateColor};
+}
+
+.node circle.state-end {
+ fill: ${i.innerEndBackground};
+ stroke: ${i.background};
+ stroke-width: 1.5
+}
+.end-state-inner {
+ fill: ${i.compositeBackground||i.background};
+ // stroke: ${i.background};
+ stroke-width: 1.5
+}
+
+.node rect {
+ fill: ${i.stateBkg||i.mainBkg};
+ stroke: ${i.stateBorder||i.nodeBorder};
+ stroke-width: 1px;
+}
+.node polygon {
+ fill: ${i.mainBkg};
+ stroke: ${i.stateBorder||i.nodeBorder};;
+ stroke-width: 1px;
+}
+#statediagram-barbEnd {
+ fill: ${i.lineColor};
+}
+
+.statediagram-cluster rect {
+ fill: ${i.compositeTitleBackground};
+ stroke: ${i.stateBorder||i.nodeBorder};
+ stroke-width: 1px;
+}
+
+.cluster-label, .nodeLabel {
+ color: ${i.stateLabelColor};
+}
+
+.statediagram-cluster rect.outer {
+ rx: 5px;
+ ry: 5px;
+}
+.statediagram-state .divider {
+ stroke: ${i.stateBorder||i.nodeBorder};
+}
+
+.statediagram-state .title-state {
+ rx: 5px;
+ ry: 5px;
+}
+.statediagram-cluster.statediagram-cluster .inner {
+ fill: ${i.compositeBackground||i.background};
+}
+.statediagram-cluster.statediagram-cluster-alt .inner {
+ fill: ${i.altBackground?i.altBackground:"#efefef"};
+}
+
+.statediagram-cluster .inner {
+ rx:0;
+ ry:0;
+}
+
+.statediagram-state rect.basic {
+ rx: 5px;
+ ry: 5px;
+}
+.statediagram-state rect.divider {
+ stroke-dasharray: 10,10;
+ fill: ${i.altBackground?i.altBackground:"#efefef"};
+}
+
+.note-edge {
+ stroke-dasharray: 5;
+}
+
+.statediagram-note rect {
+ fill: ${i.noteBkgColor};
+ stroke: ${i.noteBorderColor};
+ stroke-width: 1px;
+ rx: 0;
+ ry: 0;
+}
+.statediagram-note rect {
+ fill: ${i.noteBkgColor};
+ stroke: ${i.noteBorderColor};
+ stroke-width: 1px;
+ rx: 0;
+ ry: 0;
+}
+
+.statediagram-note text {
+ fill: ${i.noteTextColor};
+}
+
+.statediagram-note .nodeLabel {
+ color: ${i.noteTextColor};
+}
+.statediagram .edgeLabel {
+ color: red; // ${i.noteTextColor};
+}
+
+#dependencyStart, #dependencyEnd {
+ fill: ${i.lineColor};
+ stroke: ${i.lineColor};
+ stroke-width: 1;
+}
+
+.statediagramTitleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: ${i.textColor};
+}
+`,zve={},ksn=(i,s)=>{zve[i]=s},Esn=i=>zve[i],kKe=()=>Object.keys(zve),Tsn={get:Esn,set:ksn,keys:kKe,size:()=>kKe().length},Csn=i=>i.append("circle").attr("class","start-state").attr("r",qt().state.sizeUnit).attr("cx",qt().state.padding+qt().state.sizeUnit).attr("cy",qt().state.padding+qt().state.sizeUnit),Ssn=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",qt().state.textHeight).attr("class","divider").attr("x2",qt().state.textHeight*2).attr("y1",0).attr("y2",0),_sn=(i,s)=>{const u=i.append("text").attr("x",2*qt().state.padding).attr("y",qt().state.textHeight+2*qt().state.padding).attr("font-size",qt().state.fontSize).attr("class","state-title").text(s.id),d=u.node().getBBox();return i.insert("rect",":first-child").attr("x",qt().state.padding).attr("y",qt().state.padding).attr("width",d.width+2*qt().state.padding).attr("height",d.height+2*qt().state.padding).attr("rx",qt().state.radius),u},Asn=(i,s)=>{const u=function(R,F,j){const K=R.append("tspan").attr("x",2*qt().state.padding).text(F);j||K.attr("dy",qt().state.textHeight)},p=i.append("text").attr("x",2*qt().state.padding).attr("y",qt().state.textHeight+1.3*qt().state.padding).attr("font-size",qt().state.fontSize).attr("class","state-title").text(s.descriptions[0]).node().getBBox(),v=p.height,b=i.append("text").attr("x",qt().state.padding).attr("y",v+qt().state.padding*.4+qt().state.dividerMargin+qt().state.textHeight).attr("class","state-description");let y=!0,T=!0;s.descriptions.forEach(function(R){y||(u(b,R,T),T=!1),y=!1});const _=i.append("line").attr("x1",qt().state.padding).attr("y1",qt().state.padding+v+qt().state.dividerMargin/2).attr("y2",qt().state.padding+v+qt().state.dividerMargin/2).attr("class","descr-divider"),A=b.node().getBBox(),P=Math.max(A.width,p.width);return _.attr("x2",P+3*qt().state.padding),i.insert("rect",":first-child").attr("x",qt().state.padding).attr("y",qt().state.padding).attr("width",P+2*qt().state.padding).attr("height",A.height+v+2*qt().state.padding).attr("rx",qt().state.radius),i},Lsn=(i,s,u)=>{const d=qt().state.padding,p=2*qt().state.padding,v=i.node().getBBox(),b=v.width,y=v.x,T=i.append("text").attr("x",0).attr("y",qt().state.titleShift).attr("font-size",qt().state.fontSize).attr("class","state-title").text(s.id),A=T.node().getBBox().width+p;let P=Math.max(A,b);P===b&&(P=P+p);let R;const F=i.node().getBBox();s.doc,R=y-d,A>b&&(R=(b-P)/2+d),Math.abs(y-F.x)b&&(R=y-(A-b)/2);const j=1-qt().state.textHeight;return i.insert("rect",":first-child").attr("x",R).attr("y",j).attr("class",u?"alt-composit":"composit").attr("width",P).attr("height",F.height+qt().state.textHeight+qt().state.titleShift+1).attr("rx","0"),T.attr("x",R+d),A<=b&&T.attr("x",y+(P-p)/2-A/2+d),i.insert("rect",":first-child").attr("x",R).attr("y",qt().state.titleShift-qt().state.textHeight-qt().state.padding).attr("width",P).attr("height",qt().state.textHeight*3).attr("rx",qt().state.radius),i.insert("rect",":first-child").attr("x",R).attr("y",qt().state.titleShift-qt().state.textHeight-qt().state.padding).attr("width",P).attr("height",F.height+3+2*qt().state.textHeight).attr("rx",qt().state.radius),i},Msn=i=>(i.append("circle").attr("class","end-state-outer").attr("r",qt().state.sizeUnit+qt().state.miniPadding).attr("cx",qt().state.padding+qt().state.sizeUnit+qt().state.miniPadding).attr("cy",qt().state.padding+qt().state.sizeUnit+qt().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",qt().state.sizeUnit).attr("cx",qt().state.padding+qt().state.sizeUnit+2).attr("cy",qt().state.padding+qt().state.sizeUnit+2)),Dsn=(i,s)=>{let u=qt().state.forkWidth,d=qt().state.forkHeight;if(s.parentId){let p=u;u=d,d=p}return i.append("rect").style("stroke","black").style("fill","black").attr("width",u).attr("height",d).attr("x",qt().state.padding).attr("y",qt().state.padding)},Isn=(i,s,u,d)=>{let p=0;const v=d.append("text");v.style("text-anchor","start"),v.attr("class","noteText");let b=i.replace(/\r\n/g,"
");b=b.replace(/\n/g,"
");const y=b.split(ci.lineBreakRegex);let T=1.25*qt().state.noteMargin;for(const _ of y){const A=_.trim();if(A.length>0){const P=v.append("tspan");if(P.text(A),T===0){const R=P.node().getBBox();T+=R.height}p+=T,P.attr("x",s+qt().state.noteMargin),P.attr("y",u+p+1.25*qt().state.noteMargin)}}return{textWidth:v.node().getBBox().width,textHeight:p}},Osn=(i,s)=>{s.attr("class","state-note");const u=s.append("rect").attr("x",0).attr("y",qt().state.padding),d=s.append("g"),{textWidth:p,textHeight:v}=Isn(i,0,0,d);return u.attr("height",v+2*qt().state.noteMargin),u.attr("width",p+qt().state.noteMargin*2),u},EKe=function(i,s){const u=s.id,d={id:u,label:s.id,width:0,height:0},p=i.append("g").attr("id",u).attr("class","stateGroup");s.type==="start"&&Csn(p),s.type==="end"&&Msn(p),(s.type==="fork"||s.type==="join")&&Dsn(p,s),s.type==="note"&&Osn(s.note.text,p),s.type==="divider"&&Ssn(p),s.type==="default"&&s.descriptions.length===0&&_sn(p,s),s.type==="default"&&s.descriptions.length>0&&Asn(p,s);const v=p.node().getBBox();return d.width=v.width+2*qt().state.padding,d.height=v.height+2*qt().state.padding,Tsn.set(u,d),d};let TKe=0;const Nsn=function(i,s,u){const d=function(T){switch(T){case G7.relationType.AGGREGATION:return"aggregation";case G7.relationType.EXTENSION:return"extension";case G7.relationType.COMPOSITION:return"composition";case G7.relationType.DEPENDENCY:return"dependency"}};s.points=s.points.filter(T=>!Number.isNaN(T.y));const p=s.points,v=k7().x(function(T){return T.x}).y(function(T){return T.y}).curve(FF),b=i.append("path").attr("d",v(p)).attr("id","edge"+TKe).attr("class","transition");let y="";if(qt().state.arrowMarkerAbsolute&&(y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,y=y.replace(/\(/g,"\\("),y=y.replace(/\)/g,"\\)")),b.attr("marker-end","url("+y+"#"+d(G7.relationType.DEPENDENCY)+"End)"),u.title!==void 0){const T=i.append("g").attr("class","stateLabel"),{x:_,y:A}=Ao.calcLabelPosition(s.points),P=ci.getRows(u.title);let R=0;const F=[];let j=0,K=0;for(let oe=0;oe<=P.length;oe++){const pe=T.append("text").attr("text-anchor","middle").text(P[oe]).attr("x",_).attr("y",A+R),be=pe.node().getBBox();j=Math.max(j,be.width),K=Math.min(K,be.x),Xe.info(be.x,_,A+R),R===0&&(R=pe.node().getBBox().height,Xe.info("Title height",R,A)),F.push(pe)}let ee=R*P.length;if(P.length>1){const oe=(P.length-1)*R*.5;F.forEach((pe,be)=>pe.attr("y",A+be*R-oe)),ee=R*P.length}const ie=T.node().getBBox();T.insert("rect",":first-child").attr("class","box").attr("x",_-j/2-qt().state.padding/2).attr("y",A-ee/2-qt().state.padding/2-3.5).attr("width",j+qt().state.padding).attr("height",ee+qt().state.padding),Xe.info(ie)}TKe++};let gm;const qve={},Psn=function(){},Bsn=function(i){i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},Fsn=function(i,s,u,d){gm=qt().state;const p=qt().securityLevel;let v;p==="sandbox"&&(v=Ir("#i"+s));const b=Ir(p==="sandbox"?v.nodes()[0].contentDocument.body:"body"),y=p==="sandbox"?v.nodes()[0].contentDocument:document;Xe.debug("Rendering diagram "+i);const T=b.select(`[id='${s}']`);Bsn(T);const _=d.db.getRootDoc();CKe(_,T,void 0,!1,b,y,d);const A=gm.padding,P=T.node().getBBox(),R=P.width+A*2,F=P.height+A*2,j=R*1.75;Ng(T,F,j,gm.useMaxWidth),T.attr("viewBox",`${P.x-gm.padding} ${P.y-gm.padding} `+R+" "+F)},Rsn=i=>i?i.length*gm.fontSizeFactor:1,CKe=(i,s,u,d,p,v,b)=>{const y=new B0({compound:!0,multigraph:!0});let T,_=!0;for(T=0;T{const be=pe.parentElement;let ae=0,ne=0;be&&(be.parentElement&&(ae=be.parentElement.getBBox().width),ne=parseInt(be.getAttribute("data-x-shift"),10),Number.isNaN(ne)&&(ne=0)),pe.setAttribute("x1",0-ne+8),pe.setAttribute("x2",ae-ne-8)})):Xe.debug("No Node "+ie+": "+JSON.stringify(y.node(ie)))});let K=j.getBBox();y.edges().forEach(function(ie){ie!==void 0&&y.edge(ie)!==void 0&&(Xe.debug("Edge "+ie.v+" -> "+ie.w+": "+JSON.stringify(y.edge(ie))),Nsn(s,y.edge(ie),y.edge(ie).relation))}),K=j.getBBox();const ee={id:u||"root",label:u||"root",width:0,height:0};return ee.width=K.width+2*gm.padding,ee.height=K.height+2*gm.padding,Xe.debug("Doc rendered",ee,y),ee},jsn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:oKe,db:G7,renderer:{setConf:Psn,draw:Fsn},styles:xKe,init:i=>{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,G7.clear()}}},Symbol.toStringTag,{value:"Module"})),AJ="rect",Hve="rectWithTitle",$sn="start",zsn="end",qsn="divider",Hsn="roundedWithTitle",Vsn="note",Usn="noteGroup",QD="statediagram",Gsn=`${QD}-state`,SKe="transition",Ksn="note",Wsn=`${SKe} note-edge`,Ysn=`${QD}-${Ksn}`,Xsn=`${QD}-cluster`,Qsn=`${QD}-cluster-alt`,_Ke="parent",AKe="note",Jsn="state",Vve="----",Zsn=`${Vve}${AKe}`,LKe=`${Vve}${_Ke}`,MKe="fill:none",DKe="fill: #333",IKe="c",OKe="text",NKe="normal";let LJ={},j9=0;const ean=function(i){const s=Object.keys(i);for(const u of s)i[u]},tan=function(i,s){return s.db.extract(s.db.getRootDocV2()),s.db.getClasses()};function nan(i){return i==null?"":i.classes?i.classes.join(" "):""}function Uve(i="",s=0,u="",d=Vve){const p=u!==null&&u.length>0?`${d}${u}`:"";return`${Jsn}-${i}${p}-${s}`}const ej=(i,s,u,d,p,v)=>{const b=u.id,y=nan(d[b]);if(b!=="root"){let T=AJ;u.start===!0&&(T=$sn),u.start===!1&&(T=zsn),u.type!==XR&&(T=u.type),LJ[b]||(LJ[b]={id:b,shape:T,description:ci.sanitizeText(b,qt()),classes:`${y} ${Gsn}`});const _=LJ[b];u.description&&(Array.isArray(_.description)?(_.shape=Hve,_.description.push(u.description)):_.description.length>0?(_.shape=Hve,_.description===b?_.description=[u.description]:_.description=[_.description,u.description]):(_.shape=AJ,_.description=u.description),_.description=ci.sanitizeTextOrArray(_.description,qt())),_.description.length===1&&_.shape===Hve&&(_.shape=AJ),!_.type&&u.doc&&(Xe.info("Setting cluster for ",b,Gve(u)),_.type="group",_.dir=Gve(u),_.shape=u.type===cKe?qsn:Hsn,_.classes=_.classes+" "+Xsn+" "+(v?Qsn:""));const A={labelStyle:"",shape:_.shape,labelText:_.description,classes:_.classes,style:"",id:b,dir:_.dir,domId:Uve(b,j9),type:_.type,padding:15};if(A.centerLabel=!0,u.note){const P={labelStyle:"",shape:Vsn,labelText:u.note.text,classes:Ysn,style:"",id:b+Zsn+"-"+j9,domId:Uve(b,j9,AKe),type:_.type,padding:15},R={labelStyle:"",shape:Usn,labelText:u.note.text,classes:_.classes,style:"",id:b+LKe,domId:Uve(b,j9,_Ke),type:"group",padding:0};j9++;const F=b+LKe;i.setNode(F,R),i.setNode(P.id,P),i.setNode(b,A),i.setParent(b,F),i.setParent(P.id,F);let j=b,K=P.id;u.note.position==="left of"&&(j=P.id,K=b),i.setEdge(j,K,{arrowhead:"none",arrowType:"",style:MKe,labelStyle:"",classes:Wsn,arrowheadStyle:DKe,labelpos:IKe,labelType:OKe,thickness:NKe})}else i.setNode(b,A)}s&&s.id!=="root"&&(Xe.trace("Setting node ",b," to be child of its parent ",s.id),i.setParent(b,s.id)),u.doc&&(Xe.trace("Adding nodes children "),ran(i,u,u.doc,d,p,!v))},ran=(i,s,u,d,p,v)=>{Xe.trace("items",u),u.forEach(b=>{switch(b.stmt){case EJ:ej(i,s,b,d,p,v);break;case XR:ej(i,s,b,d,p,v);break;case Pve:{ej(i,s,b.state1,d,p,v),ej(i,s,b.state2,d,p,v);const y={id:"edge"+j9,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:MKe,labelStyle:"",label:ci.sanitizeText(b.description,qt()),arrowheadStyle:DKe,labelpos:IKe,labelType:OKe,thickness:NKe,classes:SKe};i.setEdge(b.state1.id,b.state2.id,y,j9),j9++}break}})},Gve=(i,s=esn)=>{let u=s;if(i.doc)for(let d=0;d{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,G7.clear()}}},Symbol.toStringTag,{value:"Module"}));var Kve=function(){var i=function(P,R,F,j){for(F=F||{},j=P.length;j--;F[P[j]]=R);return F},s=[6,8,10,11,12,14,16,17,18],u=[1,9],d=[1,10],p=[1,11],v=[1,12],b=[1,13],y=[1,14],T={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:function(R,F,j,K,ee,ie,oe){var pe=ie.length-1;switch(ee){case 1:return ie[pe-1];case 2:this.$=[];break;case 3:ie[pe-1].push(ie[pe]),this.$=ie[pe-1];break;case 4:case 5:this.$=ie[pe];break;case 6:case 7:this.$=[];break;case 8:K.setDiagramTitle(ie[pe].substr(6)),this.$=ie[pe].substr(6);break;case 9:this.$=ie[pe].trim(),K.setAccTitle(this.$);break;case 10:case 11:this.$=ie[pe].trim(),K.setAccDescription(this.$);break;case 12:K.addSection(ie[pe].substr(8)),this.$=ie[pe].substr(8);break;case 13:K.addTask(ie[pe-1],ie[pe]),this.$="task";break}},table:[{3:1,4:[1,2]},{1:[3]},i(s,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:u,12:d,14:p,16:v,17:b,18:y},i(s,[2,7],{1:[2,1]}),i(s,[2,3]),{9:15,11:u,12:d,14:p,16:v,17:b,18:y},i(s,[2,5]),i(s,[2,6]),i(s,[2,8]),{13:[1,16]},{15:[1,17]},i(s,[2,11]),i(s,[2,12]),{19:[1,18]},i(s,[2,4]),i(s,[2,9]),i(s,[2,10]),i(s,[2,13])],defaultActions:{},parseError:function(R,F){if(F.recoverable)this.trace(R);else{var j=new Error(R);throw j.hash=F,j}},parse:function(R){var F=this,j=[0],K=[],ee=[null],ie=[],oe=this.table,pe="",be=0,ae=0,ne=2,se=1,de=ie.slice.call(arguments,1),X=Object.create(this.lexer),ge={yy:{}};for(var W in this.yy)Object.prototype.hasOwnProperty.call(this.yy,W)&&(ge.yy[W]=this.yy[W]);X.setInput(R,ge.yy),ge.yy.lexer=X,ge.yy.parser=this,typeof X.yylloc>"u"&&(X.yylloc={});var xe=X.yylloc;ie.push(xe);var U=X.options&&X.options.ranges;typeof ge.yy.parseError=="function"?this.parseError=ge.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Fe(){var _t;return _t=K.pop()||X.lex()||se,typeof _t!="number"&&(_t instanceof Array&&(K=_t,_t=K.pop()),_t=F.symbols_[_t]||_t),_t}for(var Pe,je,Ie,Se,Ce={},ke,Ke,Ft,Ne;;){if(je=j[j.length-1],this.defaultActions[je]?Ie=this.defaultActions[je]:((Pe===null||typeof Pe>"u")&&(Pe=Fe()),Ie=oe[je]&&oe[je][Pe]),typeof Ie>"u"||!Ie.length||!Ie[0]){var gn="";Ne=[];for(ke in oe[je])this.terminals_[ke]&&ke>ne&&Ne.push("'"+this.terminals_[ke]+"'");X.showPosition?gn="Parse error on line "+(be+1)+`:
+`+X.showPosition()+`
+Expecting `+Ne.join(", ")+", got '"+(this.terminals_[Pe]||Pe)+"'":gn="Parse error on line "+(be+1)+": Unexpected "+(Pe==se?"end of input":"'"+(this.terminals_[Pe]||Pe)+"'"),this.parseError(gn,{text:X.match,token:this.terminals_[Pe]||Pe,line:X.yylineno,loc:xe,expected:Ne})}if(Ie[0]instanceof Array&&Ie.length>1)throw new Error("Parse Error: multiple actions possible at state: "+je+", token: "+Pe);switch(Ie[0]){case 1:j.push(Pe),ee.push(X.yytext),ie.push(X.yylloc),j.push(Ie[1]),Pe=null,ae=X.yyleng,pe=X.yytext,be=X.yylineno,xe=X.yylloc;break;case 2:if(Ke=this.productions_[Ie[1]][1],Ce.$=ee[ee.length-Ke],Ce._$={first_line:ie[ie.length-(Ke||1)].first_line,last_line:ie[ie.length-1].last_line,first_column:ie[ie.length-(Ke||1)].first_column,last_column:ie[ie.length-1].last_column},U&&(Ce._$.range=[ie[ie.length-(Ke||1)].range[0],ie[ie.length-1].range[1]]),Se=this.performAction.apply(Ce,[pe,ae,be,ge.yy,Ie[1],ee,ie].concat(de)),typeof Se<"u")return Se;Ke&&(j=j.slice(0,-1*Ke*2),ee=ee.slice(0,-1*Ke),ie=ie.slice(0,-1*Ke)),j.push(this.productions_[Ie[1]][0]),ee.push(Ce.$),ie.push(Ce._$),Ft=oe[j[j.length-2]][j[j.length-1]],j.push(Ft);break;case 3:return!0}}return!0}},_=function(){var P={EOF:1,parseError:function(F,j){if(this.yy.parser)this.yy.parser.parseError(F,j);else throw new Error(F)},setInput:function(R,F){return this.yy=F||this.yy||{},this._input=R,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 R=this._input[0];this.yytext+=R,this.yyleng++,this.offset++,this.match+=R,this.matched+=R;var F=R.match(/(?:\r\n?|\n).*/g);return F?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),R},unput:function(R){var F=R.length,j=R.split(/(?:\r\n?|\n)/g);this._input=R+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-F),this.offset-=F;var K=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),j.length-1&&(this.yylineno-=j.length-1);var ee=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:j?(j.length===K.length?this.yylloc.first_column:0)+K[K.length-j.length].length-j[0].length:this.yylloc.first_column-F},this.options.ranges&&(this.yylloc.range=[ee[0],ee[0]+this.yyleng-F]),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(R){this.unput(this.match.slice(R))},pastInput:function(){var R=this.matched.substr(0,this.matched.length-this.match.length);return(R.length>20?"...":"")+R.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var R=this.match;return R.length<20&&(R+=this._input.substr(0,20-R.length)),(R.substr(0,20)+(R.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var R=this.pastInput(),F=new Array(R.length+1).join("-");return R+this.upcomingInput()+`
+`+F+"^"},test_match:function(R,F){var j,K,ee;if(this.options.backtrack_lexer&&(ee={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&&(ee.yylloc.range=this.yylloc.range.slice(0))),K=R[0].match(/(?:\r\n?|\n).*/g),K&&(this.yylineno+=K.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:K?K[K.length-1].length-K[K.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+R[0].length},this.yytext+=R[0],this.match+=R[0],this.matches=R,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(R[0].length),this.matched+=R[0],j=this.performAction.call(this,this.yy,this,F,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),j)return j;if(this._backtrack){for(var ie in ee)this[ie]=ee[ie];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var R,F,j,K;this._more||(this.yytext="",this.match="");for(var ee=this._currentRules(),ie=0;ieF[0].length)){if(F=j,K=ie,this.options.backtrack_lexer){if(R=this.test_match(j,ee[ie]),R!==!1)return R;if(this._backtrack){F=!1;continue}else return!1}else if(!this.options.flex)break}return F?(R=this.test_match(F,ee[K]),R!==!1?R:!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 F=this.next();return F||this.lex()},begin:function(F){this.conditionStack.push(F)},popState:function(){var F=this.conditionStack.length-1;return F>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(F){return F=this.conditionStack.length-1-Math.abs(F||0),F>=0?this.conditionStack[F]:"INITIAL"},pushState:function(F){this.begin(F)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(F,j,K,ee){switch(K){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return P}();T.lexer=_;function A(){this.yy={}}return A.prototype=T,T.Parser=A,new A}();Kve.parser=Kve;const san=Kve;let JD="";const Wve=[],tj=[],nj=[],aan=function(){Wve.length=0,tj.length=0,JD="",nj.length=0,Pg()},oan=function(i){JD=i,Wve.push(i)},can=function(){return Wve},uan=function(){let i=PKe();const s=100;let u=0;for(;!i&&u