build-small-hackathon/CodeFlow
10
1(function(ZM,Dg){typeof exports=="object"&&typeof module<"u"?module.exports=Dg():typeof define=="function"&&define.amd?define(Dg):(ZM=typeof globalThis<"u"?globalThis:ZM||self,ZM.mermaid=Dg())})(this,function(){var dYe,gYe;"use strict";function ZM(i){for(var a=[],u=1;u<arguments.length;u++)a[u-1]=arguments[u];var d=Array.from(typeof i=="string"?[i]:i);d[d.length-1]=d[d.length-1].replace(/\r?\n([\t ]*)$/,"");var p=d.reduce(function(y,E){var _=E.match(/\n([\t ]+|(?!\s).)/g);return _?y.concat(_.map(function(A){var P,R;return(R=(P=A.match(/[\t ]/g))===null||P===void 0?void 0:P.length)!==null&&R!==void 0?R:0})):y},[]);if(p.length){var v=new RegExp(`2[ ]{`+Math.min.apply(Math,p)+"}","g");d=d.map(function(y){return y.replace(v,`3`)})}d[0]=d[0].replace(/^\r?\n/,"");var b=d[0];return a.forEach(function(y,E){var _=b.match(/(?:^|\n)( *)$/),A=_?_[1]:"",P=y;typeof y=="string"&&y.includes(`4`)&&(P=String(y).split(`5`).map(function(R,B){return B===0?R:""+A+R}).join(`6`)),b+=P+d[E+1]}),b}var Dg=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function dC(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var CBe={exports:{}};(function(i,a){(function(u,d){i.exports=d()})(Dg,function(){var u=1e3,d=6e4,p=36e5,v="millisecond",b="second",y="minute",E="hour",_="day",A="week",P="month",R="quarter",B="year",j="date",W="Invalid Date",ee=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,ie=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,oe={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(Be){var Pe=["th","st","nd","rd"],je=Be%100;return"["+Be+(Pe[(je-20)%10]||Pe[je]||Pe[0])+"]"}},be=function(Be,Pe,je){var Ie=String(Be);return!Ie||Ie.length>=Pe?Be:""+Array(Pe+1-Ie.length).join(je)+Be},ge={s:be,z:function(Be){var Pe=-Be.utcOffset(),je=Math.abs(Pe),Ie=Math.floor(je/60),Se=je%60;return(Pe<=0?"+":"-")+be(Ie,2,"0")+":"+be(Se,2,"0")},m:function Be(Pe,je){if(Pe.date()<je.date())return-Be(je,Pe);var Ie=12*(je.year()-Pe.year())+(je.month()-Pe.month()),Se=Pe.clone().add(Ie,P),Ce=je-Se<0,ke=Pe.clone().add(Ie+(Ce?-1:1),P);return+(-(Ie+(je-Se)/(Ce?Se-ke:ke-Se))||0)},a:function(Be){return Be<0?Math.ceil(Be)||0:Math.floor(Be)},p:function(Be){return{M:P,y:B,w:A,d:_,D:j,h:E,m:y,s:b,ms:v,Q:R}[Be]||String(Be||"").toLowerCase().replace(/s$/,"")},u:function(Be){return Be===void 0}},ae="en",ne={};ne[ae]=oe;var se="$isDayjsObject",de=function(Be){return Be instanceof xe||!(!Be||!Be[se])},X=function Be(Pe,je,Ie){var Se;if(!Pe)return ae;if(typeof Pe=="string"){var Ce=Pe.toLowerCase();ne[Ce]&&(Se=Ce),je&&(ne[Ce]=je,Se=Ce);var ke=Pe.split("-");if(!Se&&ke.length>1)return Be(ke[0])}else{var Ke=Pe.name;ne[Ke]=Pe,Se=Ke}return!Ie&&Se&&(ae=Se),Se||!Ie&&ae},pe=function(Be,Pe){if(de(Be))return Be.clone();var je=typeof Pe=="object"?Pe:{};return je.date=Be,je.args=arguments,new xe(je)},G=ge;G.l=X,G.i=de,G.w=function(Be,Pe){return pe(Be,{locale:Pe.$L,utc:Pe.$u,x:Pe.$x,$offset:Pe.$offset})};var xe=function(){function Be(je){this.$L=X(je.locale,null,!0),this.parse(je),this.$x=this.$x||je.x||{},this[se]=!0}var Pe=Be.prototype;return Pe.parse=function(je){this.$d=function(Ie){var Se=Ie.date,Ce=Ie.utc;if(Se===null)return new Date(NaN);if(G.u(Se))return new Date;if(Se instanceof Date)return new Date(Se);if(typeof Se=="string"&&!/Z$/i.test(Se)){var ke=Se.match(ee);if(ke){var Ke=ke[2]-1||0,zt=(ke[7]||"0").substring(0,3);return Ce?new Date(Date.UTC(ke[1],Ke,ke[3]||1,ke[4]||0,ke[5]||0,ke[6]||0,zt)):new Date(ke[1],Ke,ke[3]||1,ke[4]||0,ke[5]||0,ke[6]||0,zt)}}return new Date(Se)}(je),this.init()},Pe.init=function(){var je=this.$d;this.$y=je.getFullYear(),this.$M=je.getMonth(),this.$D=je.getDate(),this.$W=je.getDay(),this.$H=je.getHours(),this.$m=je.getMinutes(),this.$s=je.getSeconds(),this.$ms=je.getMilliseconds()},Pe.$utils=function(){return G},Pe.isValid=function(){return this.$d.toString()!==W},Pe.isSame=function(je,Ie){var Se=pe(je);return this.startOf(Ie)<=Se&&Se<=this.endOf(Ie)},Pe.isAfter=function(je,Ie){return pe(je)<this.startOf(Ie)},Pe.isBefore=function(je,Ie){return this.endOf(Ie)<pe(je)},Pe.$g=function(je,Ie,Se){return G.u(je)?this[Ie]:this.set(Se,je)},Pe.unix=function(){return Math.floor(this.valueOf()/1e3)},Pe.valueOf=function(){return this.$d.getTime()},Pe.startOf=function(je,Ie){var Se=this,Ce=!!G.u(Ie)||Ie,ke=G.p(je),Ke=function(yt,Bt){var Ze=G.w(Se.$u?Date.UTC(Se.$y,Bt,yt):new Date(Se.$y,Bt,yt),Se);return Ce?Ze:Ze.endOf(_)},zt=function(yt,Bt){return G.w(Se.toDate()[yt].apply(Se.toDate("s"),(Ce?[0,0,0,0]:[23,59,59,999]).slice(Bt)),Se)},Ne=this.$W,pn=this.$M,Tt=this.$D,Et="set"+(this.$u?"UTC":"");switch(ke){case B:return Ce?Ke(1,0):Ke(31,11);case P:return Ce?Ke(1,pn):Ke(0,pn+1);case A:var Wt=this.$locale().weekStart||0,un=(Ne<Wt?Ne+7:Ne)-Wt;return Ke(Ce?Tt-un:Tt+(6-un),pn);case _:case j:return zt(Et+"Hours",0);case E:return zt(Et+"Minutes",1);case y:return zt(Et+"Seconds",2);case b:return zt(Et+"Milliseconds",3);default:return this.clone()}},Pe.endOf=function(je){return this.startOf(je,!1)},Pe.$set=function(je,Ie){var Se,Ce=G.p(je),ke="set"+(this.$u?"UTC":""),Ke=(Se={},Se[_]=ke+"Date",Se[j]=ke+"Date",Se[P]=ke+"Month",Se[B]=ke+"FullYear",Se[E]=ke+"Hours",Se[y]=ke+"Minutes",Se[b]=ke+"Seconds",Se[v]=ke+"Milliseconds",Se)[Ce],zt=Ce===_?this.$D+(Ie-this.$W):Ie;if(Ce===P||Ce===B){var Ne=this.clone().set(j,1);Ne.$d[Ke](zt),Ne.init(),this.$d=Ne.set(j,Math.min(this.$D,Ne.daysInMonth())).$d}else Ke&&this.$d[Ke](zt);return this.init(),this},Pe.set=function(je,Ie){return this.clone().$set(je,Ie)},Pe.get=function(je){return this[G.p(je)]()},Pe.add=function(je,Ie){var Se,Ce=this;je=Number(je);var ke=G.p(Ie),Ke=function(pn){var Tt=pe(Ce);return G.w(Tt.date(Tt.date()+Math.round(pn*je)),Ce)};if(ke===P)return this.set(P,this.$M+je);if(ke===B)return this.set(B,this.$y+je);if(ke===_)return Ke(1);if(ke===A)return Ke(7);var zt=(Se={},Se[y]=d,Se[E]=p,Se[b]=u,Se)[ke]||1,Ne=this.$d.getTime()+je*zt;return G.w(Ne,this)},Pe.subtract=function(je,Ie){return this.add(-1*je,Ie)},Pe.format=function(je){var Ie=this,Se=this.$locale();if(!this.isValid())return Se.invalidDate||W;var Ce=je||"YYYY-MM-DDTHH:mm:ssZ",ke=G.z(this),Ke=this.$H,zt=this.$m,Ne=this.$M,pn=Se.weekdays,Tt=Se.months,Et=Se.meridiem,Wt=function(Bt,Ze,Dt,kt){return Bt&&(Bt[Ze]||Bt(Ie,Ce))||Dt[Ze].slice(0,kt)},un=function(Bt){return G.s(Ke%12||12,Bt,"0")},yt=Et||function(Bt,Ze,Dt){var kt=Bt<12?"AM":"PM";return Dt?kt.toLowerCase():kt};return Ce.replace(ie,function(Bt,Ze){return Ze||function(Dt){switch(Dt){case"YY":return String(Ie.$y).slice(-2);case"YYYY":return G.s(Ie.$y,4,"0");case"M":return Ne+1;case"MM":return G.s(Ne+1,2,"0");case"MMM":return Wt(Se.monthsShort,Ne,Tt,3);case"MMMM":return Wt(Tt,Ne);case"D":return Ie.$D;case"DD":return G.s(Ie.$D,2,"0");case"d":return String(Ie.$W);case"dd":return Wt(Se.weekdaysMin,Ie.$W,pn,2);case"ddd":return Wt(Se.weekdaysShort,Ie.$W,pn,3);case"dddd":return pn[Ie.$W];case"H":return String(Ke);case"HH":return G.s(Ke,2,"0");case"h":return un(1);case"hh":return un(2);case"a":return yt(Ke,zt,!0);case"A":return yt(Ke,zt,!1);case"m":return String(zt);case"mm":return G.s(zt,2,"0");case"s":return String(Ie.$s);case"ss":return G.s(Ie.$s,2,"0");case"SSS":return G.s(Ie.$ms,3,"0");case"Z":return ke}return null}(Bt)||ke.replace(":","")})},Pe.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},Pe.diff=function(je,Ie,Se){var Ce,ke=this,Ke=G.p(Ie),zt=pe(je),Ne=(zt.utcOffset()-this.utcOffset())*d,pn=this-zt,Tt=function(){return G.m(ke,zt)};switch(Ke){case B:Ce=Tt()/12;break;case P:Ce=Tt();break;case R:Ce=Tt()/3;break;case A:Ce=(pn-Ne)/6048e5;break;case _:Ce=(pn-Ne)/864e5;break;case E:Ce=pn/p;break;case y:Ce=pn/d;break;case b:Ce=pn/u;break;default:Ce=pn}return Se?Ce:G.a(Ce)},Pe.daysInMonth=function(){return this.endOf(P).$D},Pe.$locale=function(){return ne[this.$L]},Pe.locale=function(je,Ie){if(!je)return this.$L;var Se=this.clone(),Ce=X(je,Ie,!0);return Ce&&(Se.$L=Ce),Se},Pe.clone=function(){return G.w(this.$d,this)},Pe.toDate=function(){return new Date(this.valueOf())},Pe.toJSON=function(){return this.isValid()?this.toISOString():null},Pe.toISOString=function(){return this.$d.toISOString()},Pe.toString=function(){return this.$d.toUTCString()},Be}(),U=xe.prototype;return pe.prototype=U,[["$ms",v],["$s",b],["$m",y],["$H",E],["$W",_],["$M",P],["$y",B],["$D",j]].forEach(function(Be){U[Be[1]]=function(Pe){return this.$g(Pe,Be[0],Be[1])}}),pe.extend=function(Be,Pe){return Be.$i||(Be(Pe,xe,pe),Be.$i=!0),pe},pe.locale=X,pe.isDayjs=de,pe.unix=function(Be){return pe(1e3*Be)},pe.en=ne[ae],pe.Ls=ne,pe.p={},pe})})(CBe);var lLt=CBe.exports;const Ig=dC(lLt),b7={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},Xe={trace:(...i)=>{},debug:(...i)=>{},info:(...i)=>{},warn:(...i)=>{},error:(...i)=>{},fatal:(...i)=>{}},Spe=function(i="fatal"){let a=b7.fatal;typeof i=="string"?(i=i.toLowerCase(),i in b7&&(a=b7[i])):typeof i=="number"&&(a=i),Xe.trace=()=>{},Xe.debug=()=>{},Xe.info=()=>{},Xe.warn=()=>{},Xe.error=()=>{},Xe.fatal=()=>{},a<=b7.fatal&&(Xe.fatal=console.error?console.error.bind(console,Fv("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Fv("FATAL"))),a<=b7.error&&(Xe.error=console.error?console.error.bind(console,Fv("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Fv("ERROR"))),a<=b7.warn&&(Xe.warn=console.warn?console.warn.bind(console,Fv("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Fv("WARN"))),a<=b7.info&&(Xe.info=console.info?console.info.bind(console,Fv("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Fv("INFO"))),a<=b7.debug&&(Xe.debug=console.debug?console.debug.bind(console,Fv("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Fv("DEBUG"))),a<=b7.trace&&(Xe.trace=console.debug?console.debug.bind(console,Fv("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Fv("TRACE")))},Fv=i=>`%c${Ig().format("ss.SSS")} : ${i} : `;var b9={};(function(i){Object.defineProperty(i,"__esModule",{value:!0}),i.sanitizeUrl=i.BLANK_URL=void 0;var a=/^([^\w]*)(javascript|data|vbscript)/im,u=/&#(\w+)(^\w|;)?/g,d=/&(newline|tab);/gi,p=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,v=/^.+(:|:)/gim,b=[".","/"];i.BLANK_URL="about:blank";function y(A){return b.indexOf(A[0])>-1}function E(A){var P=A.replace(p,"");return P.replace(u,function(R,B){return String.fromCharCode(B)})}function _(A){if(!A)return i.BLANK_URL;var P=E(A).replace(d,"").replace(p,"").trim();if(!P)return i.BLANK_URL;if(y(P))return P;var R=P.match(v);if(!R)return P;var B=R[0];return a.test(B)?i.BLANK_URL:P}i.sanitizeUrl=_})(b9);function RY(i,a){return i==null||a==null?NaN:i<a?-1:i>a?1:i>=a?0:NaN}function hLt(i,a){return i==null||a==null?NaN:a<i?-1:a>i?1:a>=i?0:NaN}function _pe(i){let a,u,d;i.length!==2?(a=RY,u=(y,E)=>RY(i(y),E),d=(y,E)=>i(y)-E):(a=i===RY||i===hLt?i:fLt,u=i,d=i);function p(y,E,_=0,A=y.length){if(_<A){if(a(E,E)!==0)return A;do{const P=_+A>>>1;u(y[P],E)<0?_=P+1:A=P}while(_<A)}return _}function v(y,E,_=0,A=y.length){if(_<A){if(a(E,E)!==0)return A;do{const P=_+A>>>1;u(y[P],E)<=0?_=P+1:A=P}while(_<A)}return _}function b(y,E,_=0,A=y.length){const P=p(y,E,_,A-1);return P>_&&d(y[P-1],E)>-d(y[P],E)?P-1:P}return{left:p,center:b,right:v}}function fLt(){return 0}function dLt(i){return i===null?NaN:+i}const gLt=_pe(RY).right;_pe(dLt).center;const pLt=gLt;class SBe extends Map{constructor(a,u=vLt){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:u}}),a!=null)for(const[d,p]of a)this.set(d,p)}get(a){return super.get(_Be(this,a))}has(a){return super.has(_Be(this,a))}set(a,u){return super.set(bLt(this,a),u)}delete(a){return super.delete(mLt(this,a))}}function _Be({_intern:i,_key:a},u){const d=a(u);return i.has(d)?i.get(d):u}function bLt({_intern:i,_key:a},u){const d=a(u);return i.has(d)?i.get(d):(i.set(d,u),u)}function mLt({_intern:i,_key:a},u){const d=a(u);return i.has(d)&&(u=i.get(d),i.delete(d)),u}function vLt(i){return i!==null&&typeof i=="object"?i.valueOf():i}const wLt=Math.sqrt(50),yLt=Math.sqrt(10),xLt=Math.sqrt(2);function jY(i,a,u){const d=(a-i)/Math.max(0,u),p=Math.floor(Math.log10(d)),v=d/Math.pow(10,p),b=v>=wLt?10:v>=yLt?5:v>=xLt?2:1;let y,E,_;return p<0?(_=Math.pow(10,-p)/b,y=Math.round(i*_),E=Math.round(a*_),y/_<i&&++y,E/_>a&&--E,_=-_):(_=Math.pow(10,p)*b,y=Math.round(i/_),E=Math.round(a/_),y*_<i&&++y,E*_>a&&--E),E<y&&.5<=u&&u<2?jY(i,a,u*2):[y,E,_]}function kLt(i,a,u){if(a=+a,i=+i,u=+u,!(u>0))return[];if(i===a)return[i];const d=a<i,[p,v,b]=d?jY(a,i,u):jY(i,a,u);if(!(v>=p))return[];const y=v-p+1,E=new Array(y);if(d)if(b<0)for(let _=0;_<y;++_)E[_]=(v-_)/-b;else for(let _=0;_<y;++_)E[_]=(v-_)*b;else if(b<0)for(let _=0;_<y;++_)E[_]=(p+_)/-b;else for(let _=0;_<y;++_)E[_]=(p+_)*b;return E}function Ape(i,a,u){return a=+a,i=+i,u=+u,jY(i,a,u)[2]}function Lpe(i,a,u){a=+a,i=+i,u=+u;const d=a<i,p=d?Ape(a,i,u):Ape(i,a,u);return(d?-1:1)*(p<0?1/-p:p)}function TLt(i,a){let u;if(a===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=a(p,++d,i))!=null&&(u<p||u===void 0&&p>=p)&&(u=p)}return u}function ELt(i,a){let u;if(a===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=a(p,++d,i))!=null&&(u>p||u===void 0&&p>=p)&&(u=p)}return u}function CLt(i,a,u){i=+i,a=+a,u=(p=arguments.length)<2?(a=i,i=0,1):p<3?1:+u;for(var d=-1,p=Math.max(0,Math.ceil((a-i)/u))|0,v=new Array(p);++d<p;)v[d]=i+d*u;return v}function SLt(i){return i}var $Y=1,Mpe=2,Dpe=3,zY=4,ABe=1e-6;function _Lt(i){return"translate("+i+",0)"}function ALt(i){return"translate(0,"+i+")"}function LLt(i){return a=>+i(a)}function MLt(i,a){return a=Math.max(0,i.bandwidth()-a*2)/2,i.round()&&(a=Math.round(a)),u=>+i(u)+a}function DLt(){return!this.__axis}function LBe(i,a){var u=[],d=null,p=null,v=6,b=6,y=3,E=typeof window<"u"&&window.devicePixelRatio>1?0:.5,_=i===$Y||i===zY?-1:1,A=i===zY||i===Mpe?"x":"y",P=i===$Y||i===Dpe?_Lt:ALt;function R(B){var j=d??(a.ticks?a.ticks.apply(a,u):a.domain()),W=p??(a.tickFormat?a.tickFormat.apply(a,u):SLt),ee=Math.max(v,0)+y,ie=a.range(),oe=+ie[0]+E,be=+ie[ie.length-1]+E,ge=(a.bandwidth?MLt:LLt)(a.copy(),E),ae=B.selection?B.selection():B,ne=ae.selectAll(".domain").data([null]),se=ae.selectAll(".tick").data(j,a).order(),de=se.exit(),X=se.enter().append("g").attr("class","tick"),pe=se.select("line"),G=se.select("text");ne=ne.merge(ne.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),se=se.merge(X),pe=pe.merge(X.append("line").attr("stroke","currentColor").attr(A+"2",_*v)),G=G.merge(X.append("text").attr("fill","currentColor").attr(A,_*ee).attr("dy",i===$Y?"0em":i===Dpe?"0.71em":"0.32em")),B!==ae&&(ne=ne.transition(B),se=se.transition(B),pe=pe.transition(B),G=G.transition(B),de=de.transition(B).attr("opacity",ABe).attr("transform",function(xe){return isFinite(xe=ge(xe))?P(xe+E):this.getAttribute("transform")}),X.attr("opacity",ABe).attr("transform",function(xe){var U=this.parentNode.__axis;return P((U&&isFinite(U=U(xe))?U:ge(xe))+E)})),de.remove(),ne.attr("d",i===zY||i===Mpe?b?"M"+_*b+","+oe+"H"+E+"V"+be+"H"+_*b:"M"+E+","+oe+"V"+be:b?"M"+oe+","+_*b+"V"+E+"H"+be+"V"+_*b:"M"+oe+","+E+"H"+be),se.attr("opacity",1).attr("transform",function(xe){return P(ge(xe)+E)}),pe.attr(A+"2",_*v),G.attr(A,_*ee).text(W),ae.filter(DLt).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",i===Mpe?"start":i===zY?"end":"middle"),ae.each(function(){this.__axis=ge})}return R.scale=function(B){return arguments.length?(a=B,R):a},R.ticks=function(){return u=Array.from(arguments),R},R.tickArguments=function(B){return arguments.length?(u=B==null?[]:Array.from(B),R):u.slice()},R.tickValues=function(B){return arguments.length?(d=B==null?null:Array.from(B),R):d&&d.slice()},R.tickFormat=function(B){return arguments.length?(p=B,R):p},R.tickSize=function(B){return arguments.length?(v=b=+B,R):v},R.tickSizeInner=function(B){return arguments.length?(v=+B,R):v},R.tickSizeOuter=function(B){return arguments.length?(b=+B,R):b},R.tickPadding=function(B){return arguments.length?(y=+B,R):y},R.offset=function(B){return arguments.length?(E=+B,R):E},R}function ILt(i){return LBe($Y,i)}function OLt(i){return LBe(Dpe,i)}var NLt={value:()=>{}};function MBe(){for(var i=0,a=arguments.length,u={},d;i<a;++i){if(!(d=arguments[i]+"")||d in u||/[\s.]/.test(d))throw new Error("illegal type: "+d);u[d]=[]}return new qY(u)}function qY(i){this._=i}function PLt(i,a){return i.trim().split(/^|\s+/).map(function(u){var d="",p=u.indexOf(".");if(p>=0&&(d=u.slice(p+1),u=u.slice(0,p)),u&&!a.hasOwnProperty(u))throw new Error("unknown type: "+u);return{type:u,name:d}})}qY.prototype=MBe.prototype={constructor:qY,on:function(i,a){var u=this._,d=PLt(i+"",u),p,v=-1,b=d.length;if(arguments.length<2){for(;++v<b;)if((p=(i=d[v]).type)&&(p=BLt(u[p],i.name)))return p;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++v<b;)if(p=(i=d[v]).type)u[p]=DBe(u[p],i.name,a);else if(a==null)for(p in u)u[p]=DBe(u[p],i.name,null);return this},copy:function(){var i={},a=this._;for(var u in a)i[u]=a[u].slice();return new qY(i)},call:function(i,a){if((p=arguments.length-2)>0)for(var u=new Array(p),d=0,p,v;d<p;++d)u[d]=arguments[d+2];if(!this._.hasOwnProperty(i))throw new Error("unknown type: "+i);for(v=this._[i],d=0,p=v.length;d<p;++d)v[d].value.apply(a,u)},apply:function(i,a,u){if(!this._.hasOwnProperty(i))throw new Error("unknown type: "+i);for(var d=this._[i],p=0,v=d.length;p<v;++p)d[p].value.apply(a,u)}};function BLt(i,a){for(var u=0,d=i.length,p;u<d;++u)if((p=i[u]).name===a)return p.value}function DBe(i,a,u){for(var d=0,p=i.length;d<p;++d)if(i[d].name===a){i[d]=NLt,i=i.slice(0,d).concat(i.slice(d+1));break}return u!=null&&i.push({name:a,value:u}),i}var Ipe="http://www.w3.org/1999/xhtml";const IBe={svg:"http://www.w3.org/2000/svg",xhtml:Ipe,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function HY(i){var a=i+="",u=a.indexOf(":");return u>=0&&(a=i.slice(0,u))!=="xmlns"&&(i=i.slice(u+1)),IBe.hasOwnProperty(a)?{space:IBe[a],local:i}:i}function FLt(i){return function(){var a=this.ownerDocument,u=this.namespaceURI;return u===Ipe&&a.documentElement.namespaceURI===Ipe?a.createElement(i):a.createElementNS(u,i)}}function RLt(i){return function(){return this.ownerDocument.createElementNS(i.space,i.local)}}function OBe(i){var a=HY(i);return(a.local?RLt:FLt)(a)}function jLt(){}function Ope(i){return i==null?jLt:function(){return this.querySelector(i)}}function $Lt(i){typeof i!="function"&&(i=Ope(i));for(var a=this._groups,u=a.length,d=new Array(u),p=0;p<u;++p)for(var v=a[p],b=v.length,y=d[p]=new Array(b),E,_,A=0;A<b;++A)(E=v[A])&&(_=i.call(E,E.__data__,A,v))&&("__data__"in E&&(_.__data__=E.__data__),y[A]=_);return new Cp(d,this._parents)}function NBe(i){return i==null?[]:Array.isArray(i)?i:Array.from(i)}function zLt(){return[]}function PBe(i){return i==null?zLt:function(){return this.querySelectorAll(i)}}function qLt(i){return function(){return NBe(i.apply(this,arguments))}}function HLt(i){typeof i=="function"?i=qLt(i):i=PBe(i);for(var a=this._groups,u=a.length,d=[],p=[],v=0;v<u;++v)for(var b=a[v],y=b.length,E,_=0;_<y;++_)(E=b[_])&&(d.push(i.call(E,E.__data__,_,b)),p.push(E));return new Cp(d,p)}function BBe(i){return function(){return this.matches(i)}}function FBe(i){return function(a){return a.matches(i)}}var ULt=Array.prototype.find;function VLt(i){return function(){return ULt.call(this.children,i)}}function GLt(){return this.firstElementChild}function KLt(i){return this.select(i==null?GLt:VLt(typeof i=="function"?i:FBe(i)))}var WLt=Array.prototype.filter;function YLt(){return Array.from(this.children)}function XLt(i){return function(){return WLt.call(this.children,i)}}function QLt(i){return this.selectAll(i==null?YLt:XLt(typeof i=="function"?i:FBe(i)))}function JLt(i){typeof i!="function"&&(i=BBe(i));for(var a=this._groups,u=a.length,d=new Array(u),p=0;p<u;++p)for(var v=a[p],b=v.length,y=d[p]=[],E,_=0;_<b;++_)(E=v[_])&&i.call(E,E.__data__,_,v)&&y.push(E);return new Cp(d,this._parents)}function RBe(i){return new Array(i.length)}function ZLt(){return new Cp(this._enter||this._groups.map(RBe),this._parents)}function UY(i,a){this.ownerDocument=i.ownerDocument,this.namespaceURI=i.namespaceURI,this._next=null,this._parent=i,this.__data__=a}UY.prototype={constructor:UY,appendChild:function(i){return this._parent.insertBefore(i,this._next)},insertBefore:function(i,a){return this._parent.insertBefore(i,a)},querySelector:function(i){return this._parent.querySelector(i)},querySelectorAll:function(i){return this._parent.querySelectorAll(i)}};function eMt(i){return function(){return i}}function tMt(i,a,u,d,p,v){for(var b=0,y,E=a.length,_=v.length;b<_;++b)(y=a[b])?(y.__data__=v[b],d[b]=y):u[b]=new UY(i,v[b]);for(;b<E;++b)(y=a[b])&&(p[b]=y)}function nMt(i,a,u,d,p,v,b){var y,E,_=new Map,A=a.length,P=v.length,R=new Array(A),B;for(y=0;y<A;++y)(E=a[y])&&(R[y]=B=b.call(E,E.__data__,y,a)+"",_.has(B)?p[y]=E:_.set(B,E));for(y=0;y<P;++y)B=b.call(i,v[y],y,v)+"",(E=_.get(B))?(d[y]=E,E.__data__=v[y],_.delete(B)):u[y]=new UY(i,v[y]);for(y=0;y<A;++y)(E=a[y])&&_.get(R[y])===E&&(p[y]=E)}function rMt(i){return i.__data__}function iMt(i,a){if(!arguments.length)return Array.from(this,rMt);var u=a?nMt:tMt,d=this._parents,p=this._groups;typeof i!="function"&&(i=eMt(i));for(var v=p.length,b=new Array(v),y=new Array(v),E=new Array(v),_=0;_<v;++_){var A=d[_],P=p[_],R=P.length,B=sMt(i.call(A,A&&A.__data__,_,d)),j=B.length,W=y[_]=new Array(j),ee=b[_]=new Array(j),ie=E[_]=new Array(R);u(A,P,W,ee,ie,B,a);for(var oe=0,be=0,ge,ae;oe<j;++oe)if(ge=W[oe]){for(oe>=be&&(be=oe+1);!(ae=ee[be])&&++be<j;);ge._next=ae||null}}return b=new Cp(b,d),b._enter=y,b._exit=E,b}function sMt(i){return typeof i=="object"&&"length"in i?i:Array.from(i)}function aMt(){return new Cp(this._exit||this._groups.map(RBe),this._parents)}function oMt(i,a,u){var d=this.enter(),p=this,v=this.exit();return typeof i=="function"?(d=i(d),d&&(d=d.selection())):d=d.append(i+""),a!=null&&(p=a(p),p&&(p=p.selection())),u==null?v.remove():u(v),d&&p?d.merge(p).order():p}function cMt(i){for(var a=i.selection?i.selection():i,u=this._groups,d=a._groups,p=u.length,v=d.length,b=Math.min(p,v),y=new Array(p),E=0;E<b;++E)for(var _=u[E],A=d[E],P=_.length,R=y[E]=new Array(P),B,j=0;j<P;++j)(B=_[j]||A[j])&&(R[j]=B);for(;E<p;++E)y[E]=u[E];return new Cp(y,this._parents)}function uMt(){for(var i=this._groups,a=-1,u=i.length;++a<u;)for(var d=i[a],p=d.length-1,v=d[p],b;--p>=0;)(b=d[p])&&(v&&b.compareDocumentPosition(v)^4&&v.parentNode.insertBefore(b,v),v=b);return this}function lMt(i){i||(i=hMt);function a(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;v<d;++v){for(var b=u[v],y=b.length,E=p[v]=new Array(y),_,A=0;A<y;++A)(_=b[A])&&(E[A]=_);E.sort(a)}return new Cp(p,this._parents).order()}function hMt(i,a){return i<a?-1:i>a?1:i>=a?0:NaN}function fMt(){var i=arguments[0];return arguments[0]=this,i.apply(null,arguments),this}function dMt(){return Array.from(this)}function gMt(){for(var i=this._groups,a=0,u=i.length;a<u;++a)for(var d=i[a],p=0,v=d.length;p<v;++p){var b=d[p];if(b)return b}return null}function pMt(){let i=0;for(const a of this)++i;return i}function bMt(){return!this.node()}function mMt(i){for(var a=this._groups,u=0,d=a.length;u<d;++u)for(var p=a[u],v=0,b=p.length,y;v<b;++v)(y=p[v])&&i.call(y,y.__data__,v,p);return this}function vMt(i){return function(){this.removeAttribute(i)}}function wMt(i){return function(){this.removeAttributeNS(i.space,i.local)}}function yMt(i,a){return function(){this.setAttribute(i,a)}}function xMt(i,a){return function(){this.setAttributeNS(i.space,i.local,a)}}function kMt(i,a){return function(){var u=a.apply(this,arguments);u==null?this.removeAttribute(i):this.setAttribute(i,u)}}function TMt(i,a){return function(){var u=a.apply(this,arguments);u==null?this.removeAttributeNS(i.space,i.local):this.setAttributeNS(i.space,i.local,u)}}function EMt(i,a){var u=HY(i);if(arguments.length<2){var d=this.node();return u.local?d.getAttributeNS(u.space,u.local):d.getAttribute(u)}return this.each((a==null?u.local?wMt:vMt:typeof a=="function"?u.local?TMt:kMt:u.local?xMt:yMt)(u,a))}function jBe(i){return i.ownerDocument&&i.ownerDocument.defaultView||i.document&&i||i.defaultView}function CMt(i){return function(){this.style.removeProperty(i)}}function SMt(i,a,u){return function(){this.style.setProperty(i,a,u)}}function _Mt(i,a,u){return function(){var d=a.apply(this,arguments);d==null?this.style.removeProperty(i):this.style.setProperty(i,d,u)}}function AMt(i,a,u){return arguments.length>1?this.each((a==null?CMt:typeof a=="function"?_Mt:SMt)(i,a,u??"")):eD(this.node(),i)}function eD(i,a){return i.style.getPropertyValue(a)||jBe(i).getComputedStyle(i,null).getPropertyValue(a)}function LMt(i){return function(){delete this[i]}}function MMt(i,a){return function(){this[i]=a}}function DMt(i,a){return function(){var u=a.apply(this,arguments);u==null?delete this[i]:this[i]=u}}function IMt(i,a){return arguments.length>1?this.each((a==null?LMt:typeof a=="function"?DMt:MMt)(i,a)):this.node()[i]}function $Be(i){return i.trim().split(/^|\s+/)}function Npe(i){return i.classList||new zBe(i)}function zBe(i){this._node=i,this._names=$Be(i.getAttribute("class")||"")}zBe.prototype={add:function(i){var a=this._names.indexOf(i);a<0&&(this._names.push(i),this._node.setAttribute("class",this._names.join(" ")))},remove:function(i){var a=this._names.indexOf(i);a>=0&&(this._names.splice(a,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(i){return this._names.indexOf(i)>=0}};function qBe(i,a){for(var u=Npe(i),d=-1,p=a.length;++d<p;)u.add(a[d])}function HBe(i,a){for(var u=Npe(i),d=-1,p=a.length;++d<p;)u.remove(a[d])}function OMt(i){return function(){qBe(this,i)}}function NMt(i){return function(){HBe(this,i)}}function PMt(i,a){return function(){(a.apply(this,arguments)?qBe:HBe)(this,i)}}function BMt(i,a){var u=$Be(i+"");if(arguments.length<2){for(var d=Npe(this.node()),p=-1,v=u.length;++p<v;)if(!d.contains(u[p]))return!1;return!0}return this.each((typeof a=="function"?PMt:a?OMt:NMt)(u,a))}function FMt(){this.textContent=""}function RMt(i){return function(){this.textContent=i}}function jMt(i){return function(){var a=i.apply(this,arguments);this.textContent=a??""}}function $Mt(i){return arguments.length?this.each(i==null?FMt:(typeof i=="function"?jMt:RMt)(i)):this.node().textContent}function zMt(){this.innerHTML=""}function qMt(i){return function(){this.innerHTML=i}}function HMt(i){return function(){var a=i.apply(this,arguments);this.innerHTML=a??""}}function UMt(i){return arguments.length?this.each(i==null?zMt:(typeof i=="function"?HMt:qMt)(i)):this.node().innerHTML}function VMt(){this.nextSibling&&this.parentNode.appendChild(this)}function GMt(){return this.each(VMt)}function KMt(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function WMt(){return this.each(KMt)}function YMt(i){var a=typeof i=="function"?i:OBe(i);return this.select(function(){return this.appendChild(a.apply(this,arguments))})}function XMt(){return null}function QMt(i,a){var u=typeof i=="function"?i:OBe(i),d=a==null?XMt:typeof a=="function"?a:Ope(a);return this.select(function(){return this.insertBefore(u.apply(this,arguments),d.apply(this,arguments)||null)})}function JMt(){var i=this.parentNode;i&&i.removeChild(this)}function ZMt(){return this.each(JMt)}function eDt(){var i=this.cloneNode(!1),a=this.parentNode;return a?a.insertBefore(i,this.nextSibling):i}function tDt(){var i=this.cloneNode(!0),a=this.parentNode;return a?a.insertBefore(i,this.nextSibling):i}function nDt(i){return this.select(i?tDt:eDt)}function rDt(i){return arguments.length?this.property("__data__",i):this.node().__data__}function iDt(i){return function(a){i.call(this,a,this.__data__)}}function sDt(i){return i.trim().split(/^|\s+/).map(function(a){var u="",d=a.indexOf(".");return d>=0&&(u=a.slice(d+1),a=a.slice(0,d)),{type:a,name:u}})}function aDt(i){return function(){var a=this.__on;if(a){for(var u=0,d=-1,p=a.length,v;u<p;++u)v=a[u],(!i.type||v.type===i.type)&&v.name===i.name?this.removeEventListener(v.type,v.listener,v.options):a[++d]=v;++d?a.length=d:delete this.__on}}}function oDt(i,a,u){return function(){var d=this.__on,p,v=iDt(a);if(d){for(var b=0,y=d.length;b<y;++b)if((p=d[b]).type===i.type&&p.name===i.name){this.removeEventListener(p.type,p.listener,p.options),this.addEventListener(p.type,p.listener=v,p.options=u),p.value=a;return}}this.addEventListener(i.type,v,u),p={type:i.type,name:i.name,value:a,listener:v,options:u},d?d.push(p):this.__on=[p]}}function cDt(i,a,u){var d=sDt(i+""),p,v=d.length,b;if(arguments.length<2){var y=this.node().__on;if(y){for(var E=0,_=y.length,A;E<_;++E)for(p=0,A=y[E];p<v;++p)if((b=d[p]).type===A.type&&b.name===A.name)return A.value}return}for(y=a?oDt:aDt,p=0;p<v;++p)this.each(y(d[p],a,u));return this}function UBe(i,a,u){var d=jBe(i),p=d.CustomEvent;typeof p=="function"?p=new p(a,u):(p=d.document.createEvent("Event"),u?(p.initEvent(a,u.bubbles,u.cancelable),p.detail=u.detail):p.initEvent(a,!1,!1)),i.dispatchEvent(p)}function uDt(i,a){return function(){return UBe(this,i,a)}}function lDt(i,a){return function(){return UBe(this,i,a.apply(this,arguments))}}function hDt(i,a){return this.each((typeof a=="function"?lDt:uDt)(i,a))}function*fDt(){for(var i=this._groups,a=0,u=i.length;a<u;++a)for(var d=i[a],p=0,v=d.length,b;p<v;++p)(b=d[p])&&(yield b)}var Ppe=[null];function Cp(i,a){this._groups=i,this._parents=a}function SF(){return new Cp([[document.documentElement]],Ppe)}function dDt(){return this}Cp.prototype=SF.prototype={constructor:Cp,select:$Lt,selectAll:HLt,selectChild:KLt,selectChildren:QLt,filter:JLt,data:iMt,enter:ZLt,exit:aMt,join:oMt,merge:cMt,selection:dDt,order:uMt,sort:lMt,call:fMt,nodes:dMt,node:gMt,size:pMt,empty:bMt,each:mMt,attr:EMt,style:AMt,property:IMt,classed:BMt,text:$Mt,html:UMt,raise:GMt,lower:WMt,append:YMt,insert:QMt,remove:ZMt,clone:nDt,datum:rDt,on:cDt,dispatch:hDt,[Symbol.iterator]:fDt};function Dr(i){return typeof i=="string"?new Cp([[document.querySelector(i)]],[document.documentElement]):new Cp([[i]],Ppe)}function VBe(i){return typeof i=="string"?new Cp([document.querySelectorAll(i)],[document.documentElement]):new Cp([NBe(i)],Ppe)}function _F(i,a,u){i.prototype=a.prototype=u,u.constructor=i}function VY(i,a){var u=Object.create(i.prototype);for(var d in a)u[d]=a[d];return u}function gC(){}var AF=.7,GY=1/AF,tD="\\s*([+-]?\\d+)\\s*",LF="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",z4="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",gDt=/^#([0-9a-f]{3,8})$/,pDt=new RegExp(`^rgb\\(${tD},${tD},${tD}\\)$`),bDt=new RegExp(`^rgb\\(${z4},${z4},${z4}\\)$`),mDt=new RegExp(`^rgba\\(${tD},${tD},${tD},${LF}\\)$`),vDt=new RegExp(`^rgba\\(${z4},${z4},${z4},${LF}\\)$`),wDt=new RegExp(`^hsl\\(${LF},${z4},${z4}\\)$`),yDt=new RegExp(`^hsla\\(${LF},${z4},${z4},${LF}\\)$`),GBe={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};_F(gC,pC,{copy(i){return Object.assign(new this.constructor,this,i)},displayable(){return this.rgb().displayable()},hex:KBe,formatHex:KBe,formatHex8:xDt,formatHsl:kDt,formatRgb:WBe,toString:WBe});function KBe(){return this.rgb().formatHex()}function xDt(){return this.rgb().formatHex8()}function kDt(){return eFe(this).formatHsl()}function WBe(){return this.rgb().formatRgb()}function pC(i){var a,u;return i=(i+"").trim().toLowerCase(),(a=gDt.exec(i))?(u=a[1].length,a=parseInt(a[1],16),u===6?YBe(a):u===3?new Og(a>>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):u===8?KY(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):u===4?KY(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=pDt.exec(i))?new Og(a[1],a[2],a[3],1):(a=bDt.exec(i))?new Og(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=mDt.exec(i))?KY(a[1],a[2],a[3],a[4]):(a=vDt.exec(i))?KY(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=wDt.exec(i))?ZBe(a[1],a[2]/100,a[3]/100,1):(a=yDt.exec(i))?ZBe(a[1],a[2]/100,a[3]/100,a[4]):GBe.hasOwnProperty(i)?YBe(GBe[i]):i==="transparent"?new Og(NaN,NaN,NaN,0):null}function YBe(i){return new Og(i>>16&255,i>>8&255,i&255,1)}function KY(i,a,u,d){return d<=0&&(i=a=u=NaN),new Og(i,a,u,d)}function XBe(i){return i instanceof gC||(i=pC(i)),i?(i=i.rgb(),new Og(i.r,i.g,i.b,i.opacity)):new Og}function Bpe(i,a,u,d){return arguments.length===1?XBe(i):new Og(i,a,u,d??1)}function Og(i,a,u,d){this.r=+i,this.g=+a,this.b=+u,this.opacity=+d}_F(Og,Bpe,VY(gC,{brighter(i){return i=i==null?GY:Math.pow(GY,i),new Og(this.r*i,this.g*i,this.b*i,this.opacity)},darker(i){return i=i==null?AF:Math.pow(AF,i),new Og(this.r*i,this.g*i,this.b*i,this.opacity)},rgb(){return this},clamp(){return new Og(bC(this.r),bC(this.g),bC(this.b),WY(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:QBe,formatHex:QBe,formatHex8:TDt,formatRgb:JBe,toString:JBe}));function QBe(){return`#${mC(this.r)}${mC(this.g)}${mC(this.b)}`}function TDt(){return`#${mC(this.r)}${mC(this.g)}${mC(this.b)}${mC((isNaN(this.opacity)?1:this.opacity)*255)}`}function JBe(){const i=WY(this.opacity);return`${i===1?"rgb(":"rgba("}${bC(this.r)}, ${bC(this.g)}, ${bC(this.b)}${i===1?")":`, ${i})`}`}function WY(i){return isNaN(i)?1:Math.max(0,Math.min(1,i))}function bC(i){return Math.max(0,Math.min(255,Math.round(i)||0))}function mC(i){return i=bC(i),(i<16?"0":"")+i.toString(16)}function ZBe(i,a,u,d){return d<=0?i=a=u=NaN:u<=0||u>=1?i=a=NaN:a<=0&&(i=NaN),new P3(i,a,u,d)}function eFe(i){if(i instanceof P3)return new P3(i.h,i.s,i.l,i.opacity);if(i instanceof gC||(i=pC(i)),!i)return new P3;if(i instanceof P3)return i;i=i.rgb();var a=i.r/255,u=i.g/255,d=i.b/255,p=Math.min(a,u,d),v=Math.max(a,u,d),b=NaN,y=v-p,E=(v+p)/2;return y?(a===v?b=(u-d)/y+(u<d)*6:u===v?b=(d-a)/y+2:b=(a-u)/y+4,y/=E<.5?v+p:2-v-p,b*=60):y=E>0&&E<1?0:b,new P3(b,y,E,i.opacity)}function EDt(i,a,u,d){return arguments.length===1?eFe(i):new P3(i,a,u,d??1)}function P3(i,a,u,d){this.h=+i,this.s=+a,this.l=+u,this.opacity=+d}_F(P3,EDt,VY(gC,{brighter(i){return i=i==null?GY:Math.pow(GY,i),new P3(this.h,this.s,this.l*i,this.opacity)},darker(i){return i=i==null?AF:Math.pow(AF,i),new P3(this.h,this.s,this.l*i,this.opacity)},rgb(){var i=this.h%360+(this.h<0)*360,a=isNaN(i)||isNaN(this.s)?0:this.s,u=this.l,d=u+(u<.5?u:1-u)*a,p=2*u-d;return new Og(Fpe(i>=240?i-240:i+120,p,d),Fpe(i,p,d),Fpe(i<120?i+240:i-120,p,d),this.opacity)},clamp(){return new P3(tFe(this.h),YY(this.s),YY(this.l),WY(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=WY(this.opacity);return`${i===1?"hsl(":"hsla("}${tFe(this.h)}, ${YY(this.s)*100}%, ${YY(this.l)*100}%${i===1?")":`, ${i})`}`}}));function tFe(i){return i=(i||0)%360,i<0?i+360:i}function YY(i){return Math.max(0,Math.min(1,i||0))}function Fpe(i,a,u){return(i<60?a+(u-a)*i/60:i<180?u:i<240?a+(u-a)*(240-i)/60:a)*255}const CDt=Math.PI/180,SDt=180/Math.PI,XY=18,nFe=.96422,rFe=1,iFe=.82521,sFe=4/29,nD=6/29,aFe=3*nD*nD,_Dt=nD*nD*nD;function oFe(i){if(i instanceof q4)return new q4(i.l,i.a,i.b,i.opacity);if(i instanceof m7)return cFe(i);i instanceof Og||(i=XBe(i));var a=zpe(i.r),u=zpe(i.g),d=zpe(i.b),p=Rpe((.2225045*a+.7168786*u+.0606169*d)/rFe),v,b;return a===u&&u===d?v=b=p:(v=Rpe((.4360747*a+.3850649*u+.1430804*d)/nFe),b=Rpe((.0139322*a+.0971045*u+.7141733*d)/iFe)),new q4(116*p-16,500*(v-p),200*(p-b),i.opacity)}function ADt(i,a,u,d){return arguments.length===1?oFe(i):new q4(i,a,u,d??1)}function q4(i,a,u,d){this.l=+i,this.a=+a,this.b=+u,this.opacity=+d}_F(q4,ADt,VY(gC,{brighter(i){return new q4(this.l+XY*(i??1),this.a,this.b,this.opacity)},darker(i){return new q4(this.l-XY*(i??1),this.a,this.b,this.opacity)},rgb(){var i=(this.l+16)/116,a=isNaN(this.a)?i:i+this.a/500,u=isNaN(this.b)?i:i-this.b/200;return a=nFe*jpe(a),i=rFe*jpe(i),u=iFe*jpe(u),new Og($pe(3.1338561*a-1.6168667*i-.4906146*u),$pe(-.9787684*a+1.9161415*i+.033454*u),$pe(.0719453*a-.2289914*i+1.4052427*u),this.opacity)}}));function Rpe(i){return i>_Dt?Math.pow(i,1/3):i/aFe+sFe}function jpe(i){return i>nD?i*i*i:aFe*(i-sFe)}function $pe(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function zpe(i){return(i/=255)<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function LDt(i){if(i instanceof m7)return new m7(i.h,i.c,i.l,i.opacity);if(i instanceof q4||(i=oFe(i)),i.a===0&&i.b===0)return new m7(NaN,0<i.l&&i.l<100?0:NaN,i.l,i.opacity);var a=Math.atan2(i.b,i.a)*SDt;return new m7(a<0?a+360:a,Math.sqrt(i.a*i.a+i.b*i.b),i.l,i.opacity)}function qpe(i,a,u,d){return arguments.length===1?LDt(i):new m7(i,a,u,d??1)}function m7(i,a,u,d){this.h=+i,this.c=+a,this.l=+u,this.opacity=+d}function cFe(i){if(isNaN(i.h))return new q4(i.l,0,0,i.opacity);var a=i.h*CDt;return new q4(i.l,Math.cos(a)*i.c,Math.sin(a)*i.c,i.opacity)}_F(m7,qpe,VY(gC,{brighter(i){return new m7(this.h,this.c,this.l+XY*(i??1),this.opacity)},darker(i){return new m7(this.h,this.c,this.l-XY*(i??1),this.opacity)},rgb(){return cFe(this).rgb()}}));const QY=i=>()=>i;function uFe(i,a){return function(u){return i+u*a}}function MDt(i,a,u){return i=Math.pow(i,u),a=Math.pow(a,u)-i,u=1/u,function(d){return Math.pow(i+d*a,u)}}function DDt(i,a){var u=a-i;return u?uFe(i,u>180||u<-180?u-360*Math.round(u/360):u):QY(isNaN(i)?a:i)}function IDt(i){return(i=+i)==1?MF:function(a,u){return u-a?MDt(a,u,i):QY(isNaN(a)?u:a)}}function MF(i,a){var u=a-i;return u?uFe(i,u):QY(isNaN(i)?a:i)}const JY=function i(a){var u=IDt(a);function d(p,v){var b=u((p=Bpe(p)).r,(v=Bpe(v)).r),y=u(p.g,v.g),E=u(p.b,v.b),_=MF(p.opacity,v.opacity);return function(A){return p.r=b(A),p.g=y(A),p.b=E(A),p.opacity=_(A),p+""}}return d.gamma=i,d}(1);function ODt(i,a){a||(a=[]);var u=i?Math.min(a.length,i.length):0,d=a.slice(),p;return function(v){for(p=0;p<u;++p)d[p]=i[p]*(1-v)+a[p]*v;return d}}function NDt(i){return ArrayBuffer.isView(i)&&!(i instanceof DataView)}function PDt(i,a){var u=a?a.length:0,d=i?Math.min(u,i.length):0,p=new Array(d),v=new Array(u),b;for(b=0;b<d;++b)p[b]=Vpe(i[b],a[b]);for(;b<u;++b)v[b]=a[b];return function(y){for(b=0;b<d;++b)v[b]=p[b](y);return v}}function BDt(i,a){var u=new Date;return i=+i,a=+a,function(d){return u.setTime(i*(1-d)+a*d),u}}function B3(i,a){return i=+i,a=+a,function(u){return i*(1-u)+a*u}}function FDt(i,a){var u={},d={},p;(i===null||typeof i!="object")&&(i={}),(a===null||typeof a!="object")&&(a={});for(p in a)p in i?u[p]=Vpe(i[p],a[p]):d[p]=a[p];return function(v){for(p in u)d[p]=u[p](v);return d}}var Hpe=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Upe=new RegExp(Hpe.source,"g");function RDt(i){return function(){return i}}function jDt(i){return function(a){return i(a)+""}}function lFe(i,a){var u=Hpe.lastIndex=Upe.lastIndex=0,d,p,v,b=-1,y=[],E=[];for(i=i+"",a=a+"";(d=Hpe.exec(i))&&(p=Upe.exec(a));)(v=p.index)>u&&(v=a.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,E.push({i:b,x:B3(d,p)})),u=Upe.lastIndex;return u<a.length&&(v=a.slice(u),y[b]?y[b]+=v:y[++b]=v),y.length<2?E[0]?jDt(E[0].x):RDt(a):(a=E.length,function(_){for(var A=0,P;A<a;++A)y[(P=E[A]).i]=P.x(_);return y.join("")})}function Vpe(i,a){var u=typeof a,d;return a==null||u==="boolean"?QY(a):(u==="number"?B3:u==="string"?(d=pC(a))?(a=d,JY):lFe:a instanceof pC?JY:a instanceof Date?BDt:NDt(a)?ODt:Array.isArray(a)?PDt:typeof a.valueOf!="function"&&typeof a.toString!="function"||isNaN(a)?FDt:B3)(i,a)}function $Dt(i,a){return i=+i,a=+a,function(u){return Math.round(i*(1-u)+a*u)}}var hFe=180/Math.PI,Gpe={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function fFe(i,a,u,d,p,v){var b,y,E;return(b=Math.sqrt(i*i+a*a))&&(i/=b,a/=b),(E=i*u+a*d)&&(u-=i*E,d-=a*E),(y=Math.sqrt(u*u+d*d))&&(u/=y,d/=y,E/=y),i*d<a*u&&(i=-i,a=-a,E=-E,b=-b),{translateX:p,translateY:v,rotate:Math.atan2(a,i)*hFe,skewX:Math.atan(E)*hFe,scaleX:b,scaleY:y}}var ZY;function zDt(i){const a=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(i+"");return a.isIdentity?Gpe:fFe(a.a,a.b,a.c,a.d,a.e,a.f)}function qDt(i){return i==null||(ZY||(ZY=document.createElementNS("http://www.w3.org/2000/svg","g")),ZY.setAttribute("transform",i),!(i=ZY.transform.baseVal.consolidate()))?Gpe:(i=i.matrix,fFe(i.a,i.b,i.c,i.d,i.e,i.f))}function dFe(i,a,u,d){function p(_){return _.length?_.pop()+" ":""}function v(_,A,P,R,B,j){if(_!==P||A!==R){var W=B.push("translate(",null,a,null,u);j.push({i:W-4,x:B3(_,P)},{i:W-2,x:B3(A,R)})}else(P||R)&&B.push("translate("+P+a+R+u)}function b(_,A,P,R){_!==A?(_-A>180?A+=360:A-_>180&&(_+=360),R.push({i:P.push(p(P)+"rotate(",null,d)-2,x:B3(_,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:B3(_,A)}):A&&P.push(p(P)+"skewX("+A+d)}function E(_,A,P,R,B,j){if(_!==P||A!==R){var W=B.push(p(B)+"scale(",null,",",null,")");j.push({i:W-4,x:B3(_,P)},{i:W-2,x:B3(A,R)})}else(P!==1||R!==1)&&B.push(p(B)+"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),E(_.scaleX,_.scaleY,A.scaleX,A.scaleY,P,R),_=A=null,function(B){for(var j=-1,W=R.length,ee;++j<W;)P[(ee=R[j]).i]=ee.x(B);return P.join("")}}}var HDt=dFe(zDt,"px, ","px)","deg)"),UDt=dFe(qDt,", ",")",")");function VDt(i){return function(a,u){var d=i((a=qpe(a)).h,(u=qpe(u)).h),p=MF(a.c,u.c),v=MF(a.l,u.l),b=MF(a.opacity,u.opacity);return function(y){return a.h=d(y),a.c=p(y),a.l=v(y),a.opacity=b(y),a+""}}}const GDt=VDt(DDt);var rD=0,DF=0,IF=0,gFe=1e3,eX,OF,tX=0,vC=0,nX=0,NF=typeof performance=="object"&&performance.now?performance:Date,pFe=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(i){setTimeout(i,17)};function Kpe(){return vC||(pFe(KDt),vC=NF.now()+nX)}function KDt(){vC=0}function rX(){this._call=this._time=this._next=null}rX.prototype=bFe.prototype={constructor:rX,restart:function(i,a,u){if(typeof i!="function")throw new TypeError("callback is not a function");u=(u==null?Kpe():+u)+(a==null?0:+a),!this._next&&OF!==this&&(OF?OF._next=this:eX=this,OF=this),this._call=i,this._time=u,Wpe()},stop:function(){this._call&&(this._call=null,this._time=1/0,Wpe())}};function bFe(i,a,u){var d=new rX;return d.restart(i,a,u),d}function WDt(){Kpe(),++rD;for(var i=eX,a;i;)(a=vC-i._time)>=0&&i._call.call(void 0,a),i=i._next;--rD}function mFe(){vC=(tX=NF.now())+nX,rD=DF=0;try{WDt()}finally{rD=0,XDt(),vC=0}}function YDt(){var i=NF.now(),a=i-tX;a>gFe&&(nX-=a,tX=i)}function XDt(){for(var i,a=eX,u,d=1/0;a;)a._call?(d>a._time&&(d=a._time),i=a,a=a._next):(u=a._next,a._next=null,a=i?i._next=u:eX=u);OF=i,Wpe(d)}function Wpe(i){if(!rD){DF&&(DF=clearTimeout(DF));var a=i-vC;a>24?(i<1/0&&(DF=setTimeout(mFe,i-NF.now()-nX)),IF&&(IF=clearInterval(IF))):(IF||(tX=NF.now(),IF=setInterval(YDt,gFe)),rD=1,pFe(mFe))}}function vFe(i,a,u){var d=new rX;return a=a==null?0:+a,d.restart(p=>{d.stop(),i(p+a)},a,u),d}var QDt=MBe("start","end","cancel","interrupt"),JDt=[],wFe=0,yFe=1,Ype=2,iX=3,xFe=4,Xpe=5,sX=6;function aX(i,a,u,d,p,v){var b=i.__transition;if(!b)i.__transition={};else if(u in b)return;ZDt(i,u,{name:a,index:d,group:p,on:QDt,tween:JDt,time:v.time,delay:v.delay,duration:v.duration,ease:v.ease,timer:null,state:wFe})}function Qpe(i,a){var u=F3(i,a);if(u.state>wFe)throw new Error("too late; already scheduled");return u}function H4(i,a){var u=F3(i,a);if(u.state>iX)throw new Error("too late; already running");return u}function F3(i,a){var u=i.__transition;if(!u||!(u=u[a]))throw new Error("transition not found");return u}function ZDt(i,a,u){var d=i.__transition,p;d[a]=u,u.timer=bFe(v,0,u.time);function v(_){u.state=yFe,u.timer.restart(b,u.delay,u.time),u.delay<=_&&b(_-u.delay)}function b(_){var A,P,R,B;if(u.state!==yFe)return E();for(A in d)if(B=d[A],B.name===u.name){if(B.state===iX)return vFe(b);B.state===xFe?(B.state=sX,B.timer.stop(),B.on.call("interrupt",i,i.__data__,B.index,B.group),delete d[A]):+A<a&&(B.state=sX,B.timer.stop(),B.on.call("cancel",i,i.__data__,B.index,B.group),delete d[A])}if(vFe(function(){u.state===iX&&(u.state=xFe,u.timer.restart(y,u.delay,u.time),y(_))}),u.state=Ype,u.on.call("start",i,i.__data__,u.index,u.group),u.state===Ype){for(u.state=iX,p=new Array(R=u.tween.length),A=0,P=-1;A<R;++A)(B=u.tween[A].value.call(i,i.__data__,u.index,u.group))&&(p[++P]=B);p.length=P+1}}function y(_){for(var A=_<u.duration?u.ease.call(null,_/u.duration):(u.timer.restart(E),u.state=Xpe,1),P=-1,R=p.length;++P<R;)p[P].call(i,A);u.state===Xpe&&(u.on.call("end",i,i.__data__,u.index,u.group),E())}function E(){u.state=sX,u.timer.stop(),delete d[a];for(var _ in d)return;delete i.__transition}}function eIt(i,a){var u=i.__transition,d,p,v=!0,b;if(u){a=a==null?null:a+"";for(b in u){if((d=u[b]).name!==a){v=!1;continue}p=d.state>Ype&&d.state<Xpe,d.state=sX,d.timer.stop(),d.on.call(p?"interrupt":"cancel",i,i.__data__,d.index,d.group),delete u[b]}v&&delete i.__transition}}function tIt(i){return this.each(function(){eIt(this,i)})}function nIt(i,a){var u,d;return function(){var p=H4(this,i),v=p.tween;if(v!==u){d=u=v;for(var b=0,y=d.length;b<y;++b)if(d[b].name===a){d=d.slice(),d.splice(b,1);break}}p.tween=d}}function rIt(i,a,u){var d,p;if(typeof u!="function")throw new Error;return function(){var v=H4(this,i),b=v.tween;if(b!==d){p=(d=b).slice();for(var y={name:a,value:u},E=0,_=p.length;E<_;++E)if(p[E].name===a){p[E]=y;break}E===_&&p.push(y)}v.tween=p}}function iIt(i,a){var u=this._id;if(i+="",arguments.length<2){for(var d=F3(this.node(),u).tween,p=0,v=d.length,b;p<v;++p)if((b=d[p]).name===i)return b.value;return null}return this.each((a==null?nIt:rIt)(u,i,a))}function Jpe(i,a,u){var d=i._id;return i.each(function(){var p=H4(this,d);(p.value||(p.value={}))[a]=u.apply(this,arguments)}),function(p){return F3(p,d).value[a]}}function kFe(i,a){var u;return(typeof a=="number"?B3:a instanceof pC?JY:(u=pC(a))?(a=u,JY):lFe)(i,a)}function sIt(i){return function(){this.removeAttribute(i)}}function aIt(i){return function(){this.removeAttributeNS(i.space,i.local)}}function oIt(i,a,u){var d,p=u+"",v;return function(){var b=this.getAttribute(i);return b===p?null:b===d?v:v=a(d=b,u)}}function cIt(i,a,u){var d,p=u+"",v;return function(){var b=this.getAttributeNS(i.space,i.local);return b===p?null:b===d?v:v=a(d=b,u)}}function uIt(i,a,u){var d,p,v;return function(){var b,y=u(this),E;return y==null?void this.removeAttribute(i):(b=this.getAttribute(i),E=y+"",b===E?null:b===d&&E===p?v:(p=E,v=a(d=b,y)))}}function lIt(i,a,u){var d,p,v;return function(){var b,y=u(this),E;return y==null?void this.removeAttributeNS(i.space,i.local):(b=this.getAttributeNS(i.space,i.local),E=y+"",b===E?null:b===d&&E===p?v:(p=E,v=a(d=b,y)))}}function hIt(i,a){var u=HY(i),d=u==="transform"?UDt:kFe;return this.attrTween(i,typeof a=="function"?(u.local?lIt:uIt)(u,d,Jpe(this,"attr."+i,a)):a==null?(u.local?aIt:sIt)(u):(u.local?cIt:oIt)(u,d,a))}function fIt(i,a){return function(u){this.setAttribute(i,a.call(this,u))}}function dIt(i,a){return function(u){this.setAttributeNS(i.space,i.local,a.call(this,u))}}function gIt(i,a){var u,d;function p(){var v=a.apply(this,arguments);return v!==d&&(u=(d=v)&&dIt(i,v)),u}return p._value=a,p}function pIt(i,a){var u,d;function p(){var v=a.apply(this,arguments);return v!==d&&(u=(d=v)&&fIt(i,v)),u}return p._value=a,p}function bIt(i,a){var u="attr."+i;if(arguments.length<2)return(u=this.tween(u))&&u._value;if(a==null)return this.tween(u,null);if(typeof a!="function")throw new Error;var d=HY(i);return this.tween(u,(d.local?gIt:pIt)(d,a))}function mIt(i,a){return function(){Qpe(this,i).delay=+a.apply(this,arguments)}}function vIt(i,a){return a=+a,function(){Qpe(this,i).delay=a}}function wIt(i){var a=this._id;return arguments.length?this.each((typeof i=="function"?mIt:vIt)(a,i)):F3(this.node(),a).delay}function yIt(i,a){return function(){H4(this,i).duration=+a.apply(this,arguments)}}function xIt(i,a){return a=+a,function(){H4(this,i).duration=a}}function kIt(i){var a=this._id;return arguments.length?this.each((typeof i=="function"?yIt:xIt)(a,i)):F3(this.node(),a).duration}function TIt(i,a){if(typeof a!="function")throw new Error;return function(){H4(this,i).ease=a}}function EIt(i){var a=this._id;return arguments.length?this.each(TIt(a,i)):F3(this.node(),a).ease}function CIt(i,a){return function(){var u=a.apply(this,arguments);if(typeof u!="function")throw new Error;H4(this,i).ease=u}}function SIt(i){if(typeof i!="function")throw new Error;return this.each(CIt(this._id,i))}function _It(i){typeof i!="function"&&(i=BBe(i));for(var a=this._groups,u=a.length,d=new Array(u),p=0;p<u;++p)for(var v=a[p],b=v.length,y=d[p]=[],E,_=0;_<b;++_)(E=v[_])&&i.call(E,E.__data__,_,v)&&y.push(E);return new v7(d,this._parents,this._name,this._id)}function AIt(i){if(i._id!==this._id)throw new Error;for(var a=this._groups,u=i._groups,d=a.length,p=u.length,v=Math.min(d,p),b=new Array(d),y=0;y<v;++y)for(var E=a[y],_=u[y],A=E.length,P=b[y]=new Array(A),R,B=0;B<A;++B)(R=E[B]||_[B])&&(P[B]=R);for(;y<d;++y)b[y]=a[y];return new v7(b,this._parents,this._name,this._id)}function LIt(i){return(i+"").trim().split(/^|\s+/).every(function(a){var u=a.indexOf(".");return u>=0&&(a=a.slice(0,u)),!a||a==="start"})}function MIt(i,a,u){var d,p,v=LIt(a)?Qpe:H4;return function(){var b=v(this,i),y=b.on;y!==d&&(p=(d=y).copy()).on(a,u),b.on=p}}function DIt(i,a){var u=this._id;return arguments.length<2?F3(this.node(),u).on.on(i):this.each(MIt(u,i,a))}function IIt(i){return function(){var a=this.parentNode;for(var u in this.__transition)if(+u!==i)return;a&&a.removeChild(this)}}function OIt(){return this.on("end.remove",IIt(this._id))}function NIt(i){var a=this._name,u=this._id;typeof i!="function"&&(i=Ope(i));for(var d=this._groups,p=d.length,v=new Array(p),b=0;b<p;++b)for(var y=d[b],E=y.length,_=v[b]=new Array(E),A,P,R=0;R<E;++R)(A=y[R])&&(P=i.call(A,A.__data__,R,y))&&("__data__"in A&&(P.__data__=A.__data__),_[R]=P,aX(_[R],a,u,R,_,F3(A,u)));return new v7(v,this._parents,a,u)}function PIt(i){var a=this._name,u=this._id;typeof i!="function"&&(i=PBe(i));for(var d=this._groups,p=d.length,v=[],b=[],y=0;y<p;++y)for(var E=d[y],_=E.length,A,P=0;P<_;++P)if(A=E[P]){for(var R=i.call(A,A.__data__,P,E),B,j=F3(A,u),W=0,ee=R.length;W<ee;++W)(B=R[W])&&aX(B,a,u,W,R,j);v.push(R),b.push(A)}return new v7(v,b,a,u)}var BIt=SF.prototype.constructor;function FIt(){return new BIt(this._groups,this._parents)}function RIt(i,a){var u,d,p;return function(){var v=eD(this,i),b=(this.style.removeProperty(i),eD(this,i));return v===b?null:v===u&&b===d?p:p=a(u=v,d=b)}}function TFe(i){return function(){this.style.removeProperty(i)}}function jIt(i,a,u){var d,p=u+"",v;return function(){var b=eD(this,i);return b===p?null:b===d?v:v=a(d=b,u)}}function $It(i,a,u){var d,p,v;return function(){var b=eD(this,i),y=u(this),E=y+"";return y==null&&(E=y=(this.style.removeProperty(i),eD(this,i))),b===E?null:b===d&&E===p?v:(p=E,v=a(d=b,y))}}function zIt(i,a){var u,d,p,v="style."+a,b="end."+v,y;return function(){var E=H4(this,i),_=E.on,A=E.value[v]==null?y||(y=TFe(a)):void 0;(_!==u||p!==A)&&(d=(u=_).copy()).on(b,p=A),E.on=d}}function qIt(i,a,u){var d=(i+="")=="transform"?HDt:kFe;return a==null?this.styleTween(i,RIt(i,d)).on("end.style."+i,TFe(i)):typeof a=="function"?this.styleTween(i,$It(i,d,Jpe(this,"style."+i,a))).each(zIt(this._id,i)):this.styleTween(i,jIt(i,d,a),u).on("end.style."+i,null)}function HIt(i,a,u){return function(d){this.style.setProperty(i,a.call(this,d),u)}}function UIt(i,a,u){var d,p;function v(){var b=a.apply(this,arguments);return b!==p&&(d=(p=b)&&HIt(i,b,u)),d}return v._value=a,v}function VIt(i,a,u){var d="style."+(i+="");if(arguments.length<2)return(d=this.tween(d))&&d._value;if(a==null)return this.tween(d,null);if(typeof a!="function")throw new Error;return this.tween(d,UIt(i,a,u??""))}function GIt(i){return function(){this.textContent=i}}function KIt(i){return function(){var a=i(this);this.textContent=a??""}}function WIt(i){return this.tween("text",typeof i=="function"?KIt(Jpe(this,"text",i)):GIt(i==null?"":i+""))}function YIt(i){return function(a){this.textContent=i.call(this,a)}}function XIt(i){var a,u;function d(){var p=i.apply(this,arguments);return p!==u&&(a=(u=p)&&YIt(p)),a}return d._value=i,d}function QIt(i){var a="text";if(arguments.length<1)return(a=this.tween(a))&&a._value;if(i==null)return this.tween(a,null);if(typeof i!="function")throw new Error;return this.tween(a,XIt(i))}function JIt(){for(var i=this._name,a=this._id,u=EFe(),d=this._groups,p=d.length,v=0;v<p;++v)for(var b=d[v],y=b.length,E,_=0;_<y;++_)if(E=b[_]){var A=F3(E,a);aX(E,i,u,_,b,{time:A.time+A.delay+A.duration,delay:0,duration:A.duration,ease:A.ease})}return new v7(d,this._parents,i,u)}function ZIt(){var i,a,u=this,d=u._id,p=u.size();return new Promise(function(v,b){var y={value:b},E={value:function(){--p===0&&v()}};u.each(function(){var _=H4(this,d),A=_.on;A!==i&&(a=(i=A).copy(),a._.cancel.push(y),a._.interrupt.push(y),a._.end.push(E)),_.on=a}),p===0&&v()})}var eOt=0;function v7(i,a,u,d){this._groups=i,this._parents=a,this._name=u,this._id=d}function EFe(){return++eOt}var w7=SF.prototype;v7.prototype={constructor:v7,select:NIt,selectAll:PIt,selectChild:w7.selectChild,selectChildren:w7.selectChildren,filter:_It,merge:AIt,selection:FIt,transition:JIt,call:w7.call,nodes:w7.nodes,node:w7.node,size:w7.size,empty:w7.empty,each:w7.each,on:DIt,attr:hIt,attrTween:bIt,style:qIt,styleTween:VIt,text:WIt,textTween:QIt,remove:OIt,tween:iIt,delay:wIt,duration:kIt,ease:EIt,easeVarying:SIt,end:ZIt,[Symbol.iterator]:w7[Symbol.iterator]};function tOt(i){return((i*=2)<=1?i*i*i:(i-=2)*i*i+2)/2}var nOt={time:null,delay:0,duration:250,ease:tOt};function rOt(i,a){for(var u;!(u=i.__transition)||!(u=u[a]);)if(!(i=i.parentNode))throw new Error(`transition ${a} not found`);return u}function iOt(i){var a,u;i instanceof v7?(a=i._id,i=i._name):(a=EFe(),(u=nOt).time=Kpe(),i=i==null?null:i+"");for(var d=this._groups,p=d.length,v=0;v<p;++v)for(var b=d[v],y=b.length,E,_=0;_<y;++_)(E=b[_])&&aX(E,i,a,_,b,u||rOt(E,a));return new v7(d,this._parents,i,a)}SF.prototype.interrupt=tIt,SF.prototype.transition=iOt;const Zpe=Math.PI,e2e=2*Zpe,wC=1e-6,sOt=e2e-wC;function CFe(i){this._+=i[0];for(let a=1,u=i.length;a<u;++a)this._+=arguments[a]+i[a]}function aOt(i){let a=Math.floor(i);if(!(a>=0))throw new Error(`invalid digits: ${i}`);if(a>15)return CFe;const u=10**a;return function(d){this._+=d[0];for(let p=1,v=d.length;p<v;++p)this._+=Math.round(arguments[p]*u)/u+d[p]}}let oOt=class{constructor(a){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=a==null?CFe:aOt(a)}moveTo(a,u){this._append`M${this._x0=this._x1=+a},${this._y0=this._y1=+u}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(a,u){this._append`L${this._x1=+a},${this._y1=+u}`}quadraticCurveTo(a,u,d,p){this._append`Q${+a},${+u},${this._x1=+d},${this._y1=+p}`}bezierCurveTo(a,u,d,p,v,b){this._append`C${+a},${+u},${+d},${+p},${this._x1=+v},${this._y1=+b}`}arcTo(a,u,d,p,v){if(a=+a,u=+u,d=+d,p=+p,v=+v,v<0)throw new Error(`negative radius: ${v}`);let b=this._x1,y=this._y1,E=d-a,_=p-u,A=b-a,P=y-u,R=A*A+P*P;if(this._x1===null)this._append`M${this._x1=a},${this._y1=u}`;else if(R>wC)if(!(Math.abs(P*E-_*A)>wC)||!v)this._append`L${this._x1=a},${this._y1=u}`;else{let B=d-b,j=p-y,W=E*E+_*_,ee=B*B+j*j,ie=Math.sqrt(W),oe=Math.sqrt(R),be=v*Math.tan((Zpe-Math.acos((W+R-ee)/(2*ie*oe)))/2),ge=be/oe,ae=be/ie;Math.abs(ge-1)>wC&&this._append`L${a+ge*A},${u+ge*P}`,this._append`A${v},${v},0,0,${+(P*B>A*j)},${this._x1=a+ae*E},${this._y1=u+ae*_}`}}arc(a,u,d,p,v,b){if(a=+a,u=+u,d=+d,b=!!b,d<0)throw new Error(`negative radius: ${d}`);let y=d*Math.cos(p),E=d*Math.sin(p),_=a+y,A=u+E,P=1^b,R=b?p-v:v-p;this._x1===null?this._append`M${_},${A}`:(Math.abs(this._x1-_)>wC||Math.abs(this._y1-A)>wC)&&this._append`L${_},${A}`,d&&(R<0&&(R=R%e2e+e2e),R>sOt?this._append`A${d},${d},0,1,${P},${a-y},${u-E}A${d},${d},0,1,${P},${this._x1=_},${this._y1=A}`:R>wC&&this._append`A${d},${d},0,${+(R>=Zpe)},${P},${this._x1=a+d*Math.cos(v)},${this._y1=u+d*Math.sin(v)}`)}rect(a,u,d,p){this._append`M${this._x0=this._x1=+a},${this._y0=this._y1=+u}h${d=+d}v${+p}h${-d}Z`}toString(){return this._}};function cOt(i){if(!i.ok)throw new Error(i.status+" "+i.statusText);return i.text()}function uOt(i,a){return fetch(i,a).then(cOt)}function lOt(i){return(a,u)=>uOt(a,u).then(d=>new DOMParser().parseFromString(d,i))}var hOt=lOt("image/svg+xml");function fOt(i){return Math.abs(i=Math.round(i))>=1e21?i.toLocaleString("en").replace(/,/g,""):i.toString(10)}function oX(i,a){if((u=(i=a?i.toExponential(a-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 iD(i){return i=oX(Math.abs(i)),i?i[1]:NaN}function dOt(i,a){return function(u,d){for(var p=u.length,v=[],b=0,y=i[0],E=0;p>0&&y>0&&(E+y+1>d&&(y=Math.max(1,d-E)),v.push(u.substring(p-=y,p+y)),!((E+=y+1)>d));)y=i[b=(b+1)%i.length];return v.reverse().join(a)}}function gOt(i){return function(a){return a.replace(/[0-9]/g,function(u){return i[+u]})}}var pOt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function cX(i){if(!(a=pOt.exec(i)))throw new Error("invalid format: "+i);var a;return new t2e({fill:a[1],align:a[2],sign:a[3],symbol:a[4],zero:a[5],width:a[6],comma:a[7],precision:a[8]&&a[8].slice(1),trim:a[9],type:a[10]})}cX.prototype=t2e.prototype;function t2e(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+""}t2e.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 bOt(i){e:for(var a=i.length,u=1,d=-1,p;u<a;++u)switch(i[u]){case".":d=p=u;break;case"0":d===0&&(d=u),p=u;break;default:if(!+i[u])break e;d>0&&(d=0);break}return d>0?i.slice(0,d)+i.slice(p+1):i}var SFe;function mOt(i,a){var u=oX(i,a);if(!u)return i+"";var d=u[0],p=u[1],v=p-(SFe=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")+oX(i,Math.max(0,a+v-1))[0]}function _Fe(i,a){var u=oX(i,a);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 AFe={"%":(i,a)=>(i*100).toFixed(a),b:i=>Math.round(i).toString(2),c:i=>i+"",d:fOt,e:(i,a)=>i.toExponential(a),f:(i,a)=>i.toFixed(a),g:(i,a)=>i.toPrecision(a),o:i=>Math.round(i).toString(8),p:(i,a)=>_Fe(i*100,a),r:_Fe,s:mOt,X:i=>Math.round(i).toString(16).toUpperCase(),x:i=>Math.round(i).toString(16)};function LFe(i){return i}var MFe=Array.prototype.map,DFe=["y","z","a","f","p","n","ยต","m","","k","M","G","T","P","E","Z","Y"];function vOt(i){var a=i.grouping===void 0||i.thousands===void 0?LFe:dOt(MFe.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?LFe:gOt(MFe.call(i.numerals,String)),b=i.percent===void 0?"%":i.percent+"",y=i.minus===void 0?"โ":i.minus+"",E=i.nan===void 0?"NaN":i.nan+"";function _(P){P=cX(P);var R=P.fill,B=P.align,j=P.sign,W=P.symbol,ee=P.zero,ie=P.width,oe=P.comma,be=P.precision,ge=P.trim,ae=P.type;ae==="n"?(oe=!0,ae="g"):AFe[ae]||(be===void 0&&(be=12),ge=!0,ae="g"),(ee||R==="0"&&B==="=")&&(ee=!0,R="0",B="=");var ne=W==="$"?u:W==="#"&&/[boxX]/.test(ae)?"0"+ae.toLowerCase():"",se=W==="$"?d:/[%p]/.test(ae)?b:"",de=AFe[ae],X=/[defgprs%]/.test(ae);be=be===void 0?6:/[gprs]/.test(ae)?Math.max(1,Math.min(21,be)):Math.max(0,Math.min(20,be));function pe(G){var xe=ne,U=se,Be,Pe,je;if(ae==="c")U=de(G)+U,G="";else{G=+G;var Ie=G<0||1/G<0;if(G=isNaN(G)?E:de(Math.abs(G),be),ge&&(G=bOt(G)),Ie&&+G==0&&j!=="+"&&(Ie=!1),xe=(Ie?j==="("?j:y:j==="-"||j==="("?"":j)+xe,U=(ae==="s"?DFe[8+SFe/3]:"")+U+(Ie&&j==="("?")":""),X){for(Be=-1,Pe=G.length;++Be<Pe;)if(je=G.charCodeAt(Be),48>je||je>57){U=(je===46?p+G.slice(Be+1):G.slice(Be))+U,G=G.slice(0,Be);break}}}oe&&!ee&&(G=a(G,1/0));var Se=xe.length+G.length+U.length,Ce=Se<ie?new Array(ie-Se+1).join(R):"";switch(oe&&ee&&(G=a(Ce+G,Ce.length?ie-U.length:1/0),Ce=""),B){case"<":G=xe+G+U+Ce;break;case"=":G=xe+Ce+G+U;break;case"^":G=Ce.slice(0,Se=Ce.length>>1)+xe+G+U+Ce.slice(Se);break;default:G=Ce+xe+G+U;break}return v(G)}return pe.toString=function(){return P+""},pe}function A(P,R){var B=_((P=cX(P),P.type="f",P)),j=Math.max(-8,Math.min(8,Math.floor(iD(R)/3)))*3,W=Math.pow(10,-j),ee=DFe[8+j/3];return function(ie){return B(W*ie)+ee}}return{format:_,formatPrefix:A}}var uX,IFe,OFe;wOt({thousands:",",grouping:[3],currency:["$",""]});function wOt(i){return uX=vOt(i),IFe=uX.format,OFe=uX.formatPrefix,uX}function yOt(i){return Math.max(0,-iD(Math.abs(i)))}function xOt(i,a){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(iD(a)/3)))*3-iD(Math.abs(i)))}function kOt(i,a){return i=Math.abs(i),a=Math.abs(a)-i,Math.max(0,iD(a)-iD(i))+1}function lX(i,a){switch(arguments.length){case 0:break;case 1:this.range(i);break;default:this.range(a).domain(i);break}return this}const NFe=Symbol("implicit");function PF(){var i=new SBe,a=[],u=[],d=NFe;function p(v){let b=i.get(v);if(b===void 0){if(d!==NFe)return d;i.set(v,b=a.push(v)-1)}return u[b%u.length]}return p.domain=function(v){if(!arguments.length)return a.slice();a=[],i=new SBe;for(const b of v)i.has(b)||i.set(b,a.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 PF(a,u).unknown(d)},lX.apply(p,arguments),p}function n2e(){var i=PF().unknown(void 0),a=i.domain,u=i.range,d=0,p=1,v,b,y=!1,E=0,_=0,A=.5;delete i.unknown;function P(){var R=a().length,B=p<d,j=B?p:d,W=B?d:p;v=(W-j)/Math.max(1,R-E+_*2),y&&(v=Math.floor(v)),j+=(W-j-v*(R-E))*A,b=v*(1-E),y&&(j=Math.round(j),b=Math.round(b));var ee=CLt(R).map(function(ie){return j+v*ie});return u(B?ee.reverse():ee)}return i.domain=function(R){return arguments.length?(a(R),P()):a()},i.range=function(R){return arguments.length?([d,p]=R,d=+d,p=+p,P()):[d,p]},i.rangeRound=function(R){return[d,p]=R,d=+d,p=+p,y=!0,P()},i.bandwidth=function(){return b},i.step=function(){return v},i.round=function(R){return arguments.length?(y=!!R,P()):y},i.padding=function(R){return arguments.length?(E=Math.min(1,_=+R),P()):E},i.paddingInner=function(R){return arguments.length?(E=Math.min(1,R),P()):E},i.paddingOuter=function(R){return arguments.length?(_=+R,P()):_},i.align=function(R){return arguments.length?(A=Math.max(0,Math.min(1,R)),P()):A},i.copy=function(){return n2e(a(),[d,p]).round(y).paddingInner(E).paddingOuter(_).align(A)},lX.apply(P(),arguments)}function TOt(i){return function(){return i}}function EOt(i){return+i}var PFe=[0,1];function sD(i){return i}function r2e(i,a){return(a-=i=+i)?function(u){return(u-i)/a}:TOt(isNaN(a)?NaN:.5)}function COt(i,a){var u;return i>a&&(u=i,i=a,a=u),function(d){return Math.max(i,Math.min(a,d))}}function SOt(i,a,u){var d=i[0],p=i[1],v=a[0],b=a[1];return p<d?(d=r2e(p,d),v=u(b,v)):(d=r2e(d,p),v=u(v,b)),function(y){return v(d(y))}}function _Ot(i,a,u){var d=Math.min(i.length,a.length)-1,p=new Array(d),v=new Array(d),b=-1;for(i[d]<i[0]&&(i=i.slice().reverse(),a=a.slice().reverse());++b<d;)p[b]=r2e(i[b],i[b+1]),v[b]=u(a[b],a[b+1]);return function(y){var E=pLt(i,y,1,d)-1;return v[E](p[E](y))}}function BFe(i,a){return a.domain(i.domain()).range(i.range()).interpolate(i.interpolate()).clamp(i.clamp()).unknown(i.unknown())}function AOt(){var i=PFe,a=PFe,u=Vpe,d,p,v,b=sD,y,E,_;function A(){var R=Math.min(i.length,a.length);return b!==sD&&(b=COt(i[0],i[R-1])),y=R>2?_Ot:SOt,E=_=null,P}function P(R){return R==null||isNaN(R=+R)?v:(E||(E=y(i.map(d),a,u)))(d(b(R)))}return P.invert=function(R){return b(p((_||(_=y(a,i.map(d),B3)))(R)))},P.domain=function(R){return arguments.length?(i=Array.from(R,EOt),A()):i.slice()},P.range=function(R){return arguments.length?(a=Array.from(R),A()):a.slice()},P.rangeRound=function(R){return a=Array.from(R),u=$Dt,A()},P.clamp=function(R){return arguments.length?(b=R?!0:sD,A()):b!==sD},P.interpolate=function(R){return arguments.length?(u=R,A()):u},P.unknown=function(R){return arguments.length?(v=R,P):v},function(R,B){return d=R,p=B,A()}}function FFe(){return AOt()(sD,sD)}function LOt(i,a,u,d){var p=Lpe(i,a,u),v;switch(d=cX(d??",f"),d.type){case"s":{var b=Math.max(Math.abs(i),Math.abs(a));return d.precision==null&&!isNaN(v=xOt(p,b))&&(d.precision=v),OFe(d,b)}case"":case"e":case"g":case"p":case"r":{d.precision==null&&!isNaN(v=kOt(p,Math.max(Math.abs(i),Math.abs(a))))&&(d.precision=v-(d.type==="e"));break}case"f":case"%":{d.precision==null&&!isNaN(v=yOt(p))&&(d.precision=v-(d.type==="%")*2);break}}return IFe(d)}function MOt(i){var a=i.domain;return i.ticks=function(u){var d=a();return kLt(d[0],d[d.length-1],u??10)},i.tickFormat=function(u,d){var p=a();return LOt(p[0],p[p.length-1],u??10,d)},i.nice=function(u){u==null&&(u=10);var d=a(),p=0,v=d.length-1,b=d[p],y=d[v],E,_,A=10;for(y<b&&(_=b,b=y,y=_,_=p,p=v,v=_);A-- >0;){if(_=Ape(b,y,u),_===E)return d[p]=b,d[v]=y,a(d);if(_>0)b=Math.floor(b/_)*_,y=Math.ceil(y/_)*_;else if(_<0)b=Math.ceil(b*_)/_,y=Math.floor(y*_)/_;else break;E=_}return i},i}function aD(){var i=FFe();return i.copy=function(){return BFe(i,aD())},lX.apply(i,arguments),MOt(i)}function DOt(i,a){i=i.slice();var u=0,d=i.length-1,p=i[u],v=i[d],b;return v<p&&(b=u,u=d,d=b,b=p,p=v,v=b),i[u]=a.floor(p),i[d]=a.ceil(v),i}const i2e=new Date,s2e=new Date;function l1(i,a,u,d){function p(v){return i(v=arguments.length===0?new Date:new Date(+v)),v}return p.floor=v=>(i(v=new Date(+v)),v),p.ceil=v=>(i(v=new Date(v-1)),a(v,1),i(v),v),p.round=v=>{const b=p(v),y=p.ceil(v);return v-b<y-v?b:y},p.offset=(v,b)=>(a(v=new Date(+v),b==null?1:Math.floor(b)),v),p.range=(v,b,y)=>{const E=[];if(v=p.ceil(v),y=y==null?1:Math.floor(y),!(v<b)||!(y>0))return E;let _;do E.push(_=new Date(+v)),a(v,y),i(v);while(_<v&&v<b);return E},p.filter=v=>l1(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(;a(b,-1),!v(b););else for(;--y>=0;)for(;a(b,1),!v(b););}),u&&(p.count=(v,b)=>(i2e.setTime(+v),s2e.setTime(+b),i(i2e),i(s2e),Math.floor(u(i2e,s2e))),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 oD=l1(()=>{},(i,a)=>{i.setTime(+i+a)},(i,a)=>a-i);oD.every=i=>(i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?l1(a=>{a.setTime(Math.floor(a/i)*i)},(a,u)=>{a.setTime(+a+u*i)},(a,u)=>(u-a)/i):oD),oD.range;const y7=1e3,Rv=y7*60,x7=Rv*60,k7=x7*24,a2e=k7*7,RFe=k7*30,o2e=k7*365,m9=l1(i=>{i.setTime(i-i.getMilliseconds())},(i,a)=>{i.setTime(+i+a*y7)},(i,a)=>(a-i)/y7,i=>i.getUTCSeconds());m9.range;const BF=l1(i=>{i.setTime(i-i.getMilliseconds()-i.getSeconds()*y7)},(i,a)=>{i.setTime(+i+a*Rv)},(i,a)=>(a-i)/Rv,i=>i.getMinutes());BF.range,l1(i=>{i.setUTCSeconds(0,0)},(i,a)=>{i.setTime(+i+a*Rv)},(i,a)=>(a-i)/Rv,i=>i.getUTCMinutes()).range;const FF=l1(i=>{i.setTime(i-i.getMilliseconds()-i.getSeconds()*y7-i.getMinutes()*Rv)},(i,a)=>{i.setTime(+i+a*x7)},(i,a)=>(a-i)/x7,i=>i.getHours());FF.range,l1(i=>{i.setUTCMinutes(0,0,0)},(i,a)=>{i.setTime(+i+a*x7)},(i,a)=>(a-i)/x7,i=>i.getUTCHours()).range;const yC=l1(i=>i.setHours(0,0,0,0),(i,a)=>i.setDate(i.getDate()+a),(i,a)=>(a-i-(a.getTimezoneOffset()-i.getTimezoneOffset())*Rv)/k7,i=>i.getDate()-1);yC.range;const c2e=l1(i=>{i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCDate(i.getUTCDate()+a)},(i,a)=>(a-i)/k7,i=>i.getUTCDate()-1);c2e.range,l1(i=>{i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCDate(i.getUTCDate()+a)},(i,a)=>(a-i)/k7,i=>Math.floor(i/k7)).range;function xC(i){return l1(a=>{a.setDate(a.getDate()-(a.getDay()+7-i)%7),a.setHours(0,0,0,0)},(a,u)=>{a.setDate(a.getDate()+u*7)},(a,u)=>(u-a-(u.getTimezoneOffset()-a.getTimezoneOffset())*Rv)/a2e)}const RF=xC(0),jF=xC(1),jFe=xC(2),$Fe=xC(3),kC=xC(4),zFe=xC(5),qFe=xC(6);RF.range,jF.range,jFe.range,$Fe.range,kC.range,zFe.range,qFe.range;function TC(i){return l1(a=>{a.setUTCDate(a.getUTCDate()-(a.getUTCDay()+7-i)%7),a.setUTCHours(0,0,0,0)},(a,u)=>{a.setUTCDate(a.getUTCDate()+u*7)},(a,u)=>(u-a)/a2e)}const HFe=TC(0),hX=TC(1),IOt=TC(2),OOt=TC(3),cD=TC(4),NOt=TC(5),POt=TC(6);HFe.range,hX.range,IOt.range,OOt.range,cD.range,NOt.range,POt.range;const $F=l1(i=>{i.setDate(1),i.setHours(0,0,0,0)},(i,a)=>{i.setMonth(i.getMonth()+a)},(i,a)=>a.getMonth()-i.getMonth()+(a.getFullYear()-i.getFullYear())*12,i=>i.getMonth());$F.range,l1(i=>{i.setUTCDate(1),i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCMonth(i.getUTCMonth()+a)},(i,a)=>a.getUTCMonth()-i.getUTCMonth()+(a.getUTCFullYear()-i.getUTCFullYear())*12,i=>i.getUTCMonth()).range;const T7=l1(i=>{i.setMonth(0,1),i.setHours(0,0,0,0)},(i,a)=>{i.setFullYear(i.getFullYear()+a)},(i,a)=>a.getFullYear()-i.getFullYear(),i=>i.getFullYear());T7.every=i=>!isFinite(i=Math.floor(i))||!(i>0)?null:l1(a=>{a.setFullYear(Math.floor(a.getFullYear()/i)*i),a.setMonth(0,1),a.setHours(0,0,0,0)},(a,u)=>{a.setFullYear(a.getFullYear()+u*i)}),T7.range;const EC=l1(i=>{i.setUTCMonth(0,1),i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCFullYear(i.getUTCFullYear()+a)},(i,a)=>a.getUTCFullYear()-i.getUTCFullYear(),i=>i.getUTCFullYear());EC.every=i=>!isFinite(i=Math.floor(i))||!(i>0)?null:l1(a=>{a.setUTCFullYear(Math.floor(a.getUTCFullYear()/i)*i),a.setUTCMonth(0,1),a.setUTCHours(0,0,0,0)},(a,u)=>{a.setUTCFullYear(a.getUTCFullYear()+u*i)}),EC.range;function BOt(i,a,u,d,p,v){const b=[[m9,1,y7],[m9,5,5*y7],[m9,15,15*y7],[m9,30,30*y7],[v,1,Rv],[v,5,5*Rv],[v,15,15*Rv],[v,30,30*Rv],[p,1,x7],[p,3,3*x7],[p,6,6*x7],[p,12,12*x7],[d,1,k7],[d,2,2*k7],[u,1,a2e],[a,1,RFe],[a,3,3*RFe],[i,1,o2e]];function y(_,A,P){const R=A<_;R&&([_,A]=[A,_]);const B=P&&typeof P.range=="function"?P:E(_,A,P),j=B?B.range(_,+A+1):[];return R?j.reverse():j}function E(_,A,P){const R=Math.abs(A-_)/P,B=_pe(([,,ee])=>ee).right(b,R);if(B===b.length)return i.every(Lpe(_/o2e,A/o2e,P));if(B===0)return oD.every(Math.max(Lpe(_,A,P),1));const[j,W]=b[R/b[B-1][2]<b[B][2]/R?B-1:B];return j.every(W)}return[y,E]}const[FOt,ROt]=BOt(T7,$F,RF,yC,FF,BF);function u2e(i){if(0<=i.y&&i.y<100){var a=new Date(-1,i.m,i.d,i.H,i.M,i.S,i.L);return a.setFullYear(i.y),a}return new Date(i.y,i.m,i.d,i.H,i.M,i.S,i.L)}function l2e(i){if(0<=i.y&&i.y<100){var a=new Date(Date.UTC(-1,i.m,i.d,i.H,i.M,i.S,i.L));return a.setUTCFullYear(i.y),a}return new Date(Date.UTC(i.y,i.m,i.d,i.H,i.M,i.S,i.L))}function zF(i,a,u){return{y:i,m:a,d:u,H:0,M:0,S:0,L:0}}function jOt(i){var a=i.dateTime,u=i.date,d=i.time,p=i.periods,v=i.days,b=i.shortDays,y=i.months,E=i.shortMonths,_=qF(p),A=HF(p),P=qF(v),R=HF(v),B=qF(b),j=HF(b),W=qF(y),ee=HF(y),ie=qF(E),oe=HF(E),be={a:Ie,A:Se,b:Ce,B:ke,c:null,d:YFe,e:YFe,f:cNt,g:vNt,G:yNt,H:sNt,I:aNt,j:oNt,L:XFe,m:uNt,M:lNt,p:Ke,q:zt,Q:nRe,s:rRe,S:hNt,u:fNt,U:dNt,V:gNt,w:pNt,W:bNt,x:null,X:null,y:mNt,Y:wNt,Z:xNt,"%":tRe},ge={a:Ne,A:pn,b:Tt,B:Et,c:null,d:JFe,e:JFe,f:CNt,g:PNt,G:FNt,H:kNt,I:TNt,j:ENt,L:ZFe,m:SNt,M:_Nt,p:Wt,q:un,Q:nRe,s:rRe,S:ANt,u:LNt,U:MNt,V:DNt,w:INt,W:ONt,x:null,X:null,y:NNt,Y:BNt,Z:RNt,"%":tRe},ae={a:pe,A:G,b:xe,B:U,c:Be,d:KFe,e:KFe,f:tNt,g:GFe,G:VFe,H:WFe,I:WFe,j:QOt,L:eNt,m:XOt,M:JOt,p:X,q:YOt,Q:rNt,s:iNt,S:ZOt,u:UOt,U:VOt,V:GOt,w:HOt,W:KOt,x:Pe,X:je,y:GFe,Y:VFe,Z:WOt,"%":nNt};be.x=ne(u,be),be.X=ne(d,be),be.c=ne(a,be),ge.x=ne(u,ge),ge.X=ne(d,ge),ge.c=ne(a,ge);function ne(yt,Bt){return function(Ze){var Dt=[],kt=-1,Nn=0,ht=yt.length,qr,xt,Ri;for(Ze instanceof Date||(Ze=new Date(+Ze));++kt<ht;)yt.charCodeAt(kt)===37&&(Dt.push(yt.slice(Nn,kt)),(xt=UFe[qr=yt.charAt(++kt)])!=null?qr=yt.charAt(++kt):xt=qr==="e"?" ":"0",(Ri=Bt[qr])&&(qr=Ri(Ze,xt)),Dt.push(qr),Nn=kt+1);return Dt.push(yt.slice(Nn,kt)),Dt.join("")}}function se(yt,Bt){return function(Ze){var Dt=zF(1900,void 0,1),kt=de(Dt,yt,Ze+="",0),Nn,ht;if(kt!=Ze.length)return null;if("Q"in Dt)return new Date(Dt.Q);if("s"in Dt)return new Date(Dt.s*1e3+("L"in Dt?Dt.L:0));if(Bt&&!("Z"in Dt)&&(Dt.Z=0),"p"in Dt&&(Dt.H=Dt.H%12+Dt.p*12),Dt.m===void 0&&(Dt.m="q"in Dt?Dt.q:0),"V"in Dt){if(Dt.V<1||Dt.V>53)return null;"w"in Dt||(Dt.w=1),"Z"in Dt?(Nn=l2e(zF(Dt.y,0,1)),ht=Nn.getUTCDay(),Nn=ht>4||ht===0?hX.ceil(Nn):hX(Nn),Nn=c2e.offset(Nn,(Dt.V-1)*7),Dt.y=Nn.getUTCFullYear(),Dt.m=Nn.getUTCMonth(),Dt.d=Nn.getUTCDate()+(Dt.w+6)%7):(Nn=u2e(zF(Dt.y,0,1)),ht=Nn.getDay(),Nn=ht>4||ht===0?jF.ceil(Nn):jF(Nn),Nn=yC.offset(Nn,(Dt.V-1)*7),Dt.y=Nn.getFullYear(),Dt.m=Nn.getMonth(),Dt.d=Nn.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?l2e(zF(Dt.y,0,1)).getUTCDay():u2e(zF(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,l2e(Dt)):u2e(Dt)}}function de(yt,Bt,Ze,Dt){for(var kt=0,Nn=Bt.length,ht=Ze.length,qr,xt;kt<Nn;){if(Dt>=ht)return-1;if(qr=Bt.charCodeAt(kt++),qr===37){if(qr=Bt.charAt(kt++),xt=ae[qr in UFe?Bt.charAt(kt++):qr],!xt||(Dt=xt(yt,Ze,Dt))<0)return-1}else if(qr!=Ze.charCodeAt(Dt++))return-1}return Dt}function X(yt,Bt,Ze){var Dt=_.exec(Bt.slice(Ze));return Dt?(yt.p=A.get(Dt[0].toLowerCase()),Ze+Dt[0].length):-1}function pe(yt,Bt,Ze){var Dt=B.exec(Bt.slice(Ze));return Dt?(yt.w=j.get(Dt[0].toLowerCase()),Ze+Dt[0].length):-1}function G(yt,Bt,Ze){var Dt=P.exec(Bt.slice(Ze));return Dt?(yt.w=R.get(Dt[0].toLowerCase()),Ze+Dt[0].length):-1}function xe(yt,Bt,Ze){var Dt=ie.exec(Bt.slice(Ze));return Dt?(yt.m=oe.get(Dt[0].toLowerCase()),Ze+Dt[0].length):-1}function U(yt,Bt,Ze){var Dt=W.exec(Bt.slice(Ze));return Dt?(yt.m=ee.get(Dt[0].toLowerCase()),Ze+Dt[0].length):-1}function Be(yt,Bt,Ze){return de(yt,a,Bt,Ze)}function Pe(yt,Bt,Ze){return de(yt,u,Bt,Ze)}function je(yt,Bt,Ze){return de(yt,d,Bt,Ze)}function Ie(yt){return b[yt.getDay()]}function Se(yt){return v[yt.getDay()]}function Ce(yt){return E[yt.getMonth()]}function ke(yt){return y[yt.getMonth()]}function Ke(yt){return p[+(yt.getHours()>=12)]}function zt(yt){return 1+~~(yt.getMonth()/3)}function Ne(yt){return b[yt.getUTCDay()]}function pn(yt){return v[yt.getUTCDay()]}function Tt(yt){return E[yt.getUTCMonth()]}function Et(yt){return y[yt.getUTCMonth()]}function Wt(yt){return p[+(yt.getUTCHours()>=12)]}function un(yt){return 1+~~(yt.getUTCMonth()/3)}return{format:function(yt){var Bt=ne(yt+="",be);return Bt.toString=function(){return yt},Bt},parse:function(yt){var Bt=se(yt+="",!1);return Bt.toString=function(){return yt},Bt},utcFormat:function(yt){var Bt=ne(yt+="",ge);return Bt.toString=function(){return yt},Bt},utcParse:function(yt){var Bt=se(yt+="",!0);return Bt.toString=function(){return yt},Bt}}}var UFe={"-":"",_:" ",0:"0"},rd=/^\s*\d+/,$Ot=/^%/,zOt=/[\\^$*+?|[\]().{}]/g;function bu(i,a,u){var d=i<0?"-":"",p=(d?-i:i)+"",v=p.length;return d+(v<u?new Array(u-v+1).join(a)+p:p)}function qOt(i){return i.replace(zOt,"\\$&")}function qF(i){return new RegExp("^(?:"+i.map(qOt).join("|")+")","i")}function HF(i){return new Map(i.map((a,u)=>[a.toLowerCase(),u]))}function HOt(i,a,u){var d=rd.exec(a.slice(u,u+1));return d?(i.w=+d[0],u+d[0].length):-1}function UOt(i,a,u){var d=rd.exec(a.slice(u,u+1));return d?(i.u=+d[0],u+d[0].length):-1}function VOt(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.U=+d[0],u+d[0].length):-1}function GOt(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.V=+d[0],u+d[0].length):-1}function KOt(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.W=+d[0],u+d[0].length):-1}function VFe(i,a,u){var d=rd.exec(a.slice(u,u+4));return d?(i.y=+d[0],u+d[0].length):-1}function GFe(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.y=+d[0]+(+d[0]>68?1900:2e3),u+d[0].length):-1}function WOt(i,a,u){var d=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(a.slice(u,u+6));return d?(i.Z=d[1]?0:-(d[2]+(d[3]||"00")),u+d[0].length):-1}function YOt(i,a,u){var d=rd.exec(a.slice(u,u+1));return d?(i.q=d[0]*3-3,u+d[0].length):-1}function XOt(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.m=d[0]-1,u+d[0].length):-1}function KFe(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.d=+d[0],u+d[0].length):-1}function QOt(i,a,u){var d=rd.exec(a.slice(u,u+3));return d?(i.m=0,i.d=+d[0],u+d[0].length):-1}function WFe(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.H=+d[0],u+d[0].length):-1}function JOt(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.M=+d[0],u+d[0].length):-1}function ZOt(i,a,u){var d=rd.exec(a.slice(u,u+2));return d?(i.S=+d[0],u+d[0].length):-1}function eNt(i,a,u){var d=rd.exec(a.slice(u,u+3));return d?(i.L=+d[0],u+d[0].length):-1}function tNt(i,a,u){var d=rd.exec(a.slice(u,u+6));return d?(i.L=Math.floor(d[0]/1e3),u+d[0].length):-1}function nNt(i,a,u){var d=$Ot.exec(a.slice(u,u+1));return d?u+d[0].length:-1}function rNt(i,a,u){var d=rd.exec(a.slice(u));return d?(i.Q=+d[0],u+d[0].length):-1}function iNt(i,a,u){var d=rd.exec(a.slice(u));return d?(i.s=+d[0],u+d[0].length):-1}function YFe(i,a){return bu(i.getDate(),a,2)}function sNt(i,a){return bu(i.getHours(),a,2)}function aNt(i,a){return bu(i.getHours()%12||12,a,2)}function oNt(i,a){return bu(1+yC.count(T7(i),i),a,3)}function XFe(i,a){return bu(i.getMilliseconds(),a,3)}function cNt(i,a){return XFe(i,a)+"000"}function uNt(i,a){return bu(i.getMonth()+1,a,2)}function lNt(i,a){return bu(i.getMinutes(),a,2)}function hNt(i,a){return bu(i.getSeconds(),a,2)}function fNt(i){var a=i.getDay();return a===0?7:a}function dNt(i,a){return bu(RF.count(T7(i)-1,i),a,2)}function QFe(i){var a=i.getDay();return a>=4||a===0?kC(i):kC.ceil(i)}function gNt(i,a){return i=QFe(i),bu(kC.count(T7(i),i)+(T7(i).getDay()===4),a,2)}function pNt(i){return i.getDay()}function bNt(i,a){return bu(jF.count(T7(i)-1,i),a,2)}function mNt(i,a){return bu(i.getFullYear()%100,a,2)}function vNt(i,a){return i=QFe(i),bu(i.getFullYear()%100,a,2)}function wNt(i,a){return bu(i.getFullYear()%1e4,a,4)}function yNt(i,a){var u=i.getDay();return i=u>=4||u===0?kC(i):kC.ceil(i),bu(i.getFullYear()%1e4,a,4)}function xNt(i){var a=i.getTimezoneOffset();return(a>0?"-":(a*=-1,"+"))+bu(a/60|0,"0",2)+bu(a%60,"0",2)}function JFe(i,a){return bu(i.getUTCDate(),a,2)}function kNt(i,a){return bu(i.getUTCHours(),a,2)}function TNt(i,a){return bu(i.getUTCHours()%12||12,a,2)}function ENt(i,a){return bu(1+c2e.count(EC(i),i),a,3)}function ZFe(i,a){return bu(i.getUTCMilliseconds(),a,3)}function CNt(i,a){return ZFe(i,a)+"000"}function SNt(i,a){return bu(i.getUTCMonth()+1,a,2)}function _Nt(i,a){return bu(i.getUTCMinutes(),a,2)}function ANt(i,a){return bu(i.getUTCSeconds(),a,2)}function LNt(i){var a=i.getUTCDay();return a===0?7:a}function MNt(i,a){return bu(HFe.count(EC(i)-1,i),a,2)}function eRe(i){var a=i.getUTCDay();return a>=4||a===0?cD(i):cD.ceil(i)}function DNt(i,a){return i=eRe(i),bu(cD.count(EC(i),i)+(EC(i).getUTCDay()===4),a,2)}function INt(i){return i.getUTCDay()}function ONt(i,a){return bu(hX.count(EC(i)-1,i),a,2)}function NNt(i,a){return bu(i.getUTCFullYear()%100,a,2)}function PNt(i,a){return i=eRe(i),bu(i.getUTCFullYear()%100,a,2)}function BNt(i,a){return bu(i.getUTCFullYear()%1e4,a,4)}function FNt(i,a){var u=i.getUTCDay();return i=u>=4||u===0?cD(i):cD.ceil(i),bu(i.getUTCFullYear()%1e4,a,4)}function RNt(){return"+0000"}function tRe(){return"%"}function nRe(i){return+i}function rRe(i){return Math.floor(+i/1e3)}var uD,fX;jNt({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 jNt(i){return uD=jOt(i),fX=uD.format,uD.parse,uD.utcFormat,uD.utcParse,uD}function $Nt(i){return new Date(i)}function zNt(i){return i instanceof Date?+i:+new Date(+i)}function iRe(i,a,u,d,p,v,b,y,E,_){var A=FFe(),P=A.invert,R=A.domain,B=_(".%L"),j=_(":%S"),W=_("%I:%M"),ee=_("%I %p"),ie=_("%a %d"),oe=_("%b %d"),be=_("%B"),ge=_("%Y");function ae(ne){return(E(ne)<ne?B:y(ne)<ne?j:b(ne)<ne?W:v(ne)<ne?ee:d(ne)<ne?p(ne)<ne?ie:oe:u(ne)<ne?be:ge)(ne)}return A.invert=function(ne){return new Date(P(ne))},A.domain=function(ne){return arguments.length?R(Array.from(ne,zNt)):R().map($Nt)},A.ticks=function(ne){var se=R();return i(se[0],se[se.length-1],ne??10)},A.tickFormat=function(ne,se){return se==null?ae:_(se)},A.nice=function(ne){var se=R();return(!ne||typeof ne.range!="function")&&(ne=a(se[0],se[se.length-1],ne??10)),ne?R(DOt(se,ne)):A},A.copy=function(){return BFe(A,iRe(i,a,u,d,p,v,b,y,E,_))},A}function qNt(){return lX.apply(iRe(FOt,ROt,T7,$F,RF,yC,FF,BF,m9,fX).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function HNt(i){for(var a=i.length/6|0,u=new Array(a),d=0;d<a;)u[d]="#"+i.slice(d*6,++d*6);return u}const sRe=HNt("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function Wf(i){return function(){return i}}const aRe=Math.abs,Ng=Math.atan2,CC=Math.cos,UNt=Math.max,h2e=Math.min,U4=Math.sin,lD=Math.sqrt,Pg=1e-12,UF=Math.PI,dX=UF/2,gX=2*UF;function VNt(i){return i>1?0:i<-1?UF:Math.acos(i)}function oRe(i){return i>=1?dX:i<=-1?-dX:Math.asin(i)}function cRe(i){let a=3;return i.digits=function(u){if(!arguments.length)return a;if(u==null)a=null;else{const d=Math.floor(u);if(!(d>=0))throw new RangeError(`invalid digits: ${u}`);a=d}return i},()=>new oOt(a)}function GNt(i){return i.innerRadius}function KNt(i){return i.outerRadius}function WNt(i){return i.startAngle}function YNt(i){return i.endAngle}function XNt(i){return i&&i.padAngle}function QNt(i,a,u,d,p,v,b,y){var E=u-i,_=d-a,A=b-p,P=y-v,R=P*E-A*_;if(!(R*R<Pg))return R=(A*(a-v)-P*(i-p))/R,[i+R*E,a+R*_]}function pX(i,a,u,d,p,v,b){var y=i-u,E=a-d,_=(b?v:-v)/lD(y*y+E*E),A=_*E,P=-_*y,R=i+A,B=a+P,j=u+A,W=d+P,ee=(R+j)/2,ie=(B+W)/2,oe=j-R,be=W-B,ge=oe*oe+be*be,ae=p-v,ne=R*W-j*B,se=(be<0?-1:1)*lD(UNt(0,ae*ae*ge-ne*ne)),de=(ne*be-oe*se)/ge,X=(-ne*oe-be*se)/ge,pe=(ne*be+oe*se)/ge,G=(-ne*oe+be*se)/ge,xe=de-ee,U=X-ie,Be=pe-ee,Pe=G-ie;return xe*xe+U*U>Be*Be+Pe*Pe&&(de=pe,X=G),{cx:de,cy:X,x01:-A,y01:-P,x11:de*(p/ae-1),y11:X*(p/ae-1)}}function hD(){var i=GNt,a=KNt,u=Wf(0),d=null,p=WNt,v=YNt,b=XNt,y=null,E=cRe(_);function _(){var A,P,R=+i.apply(this,arguments),B=+a.apply(this,arguments),j=p.apply(this,arguments)-dX,W=v.apply(this,arguments)-dX,ee=aRe(W-j),ie=W>j;if(y||(y=A=E()),B<R&&(P=B,B=R,R=P),!(B>Pg))y.moveTo(0,0);else if(ee>gX-Pg)y.moveTo(B*CC(j),B*U4(j)),y.arc(0,0,B,j,W,!ie),R>Pg&&(y.moveTo(R*CC(W),R*U4(W)),y.arc(0,0,R,W,j,ie));else{var oe=j,be=W,ge=j,ae=W,ne=ee,se=ee,de=b.apply(this,arguments)/2,X=de>Pg&&(d?+d.apply(this,arguments):lD(R*R+B*B)),pe=h2e(aRe(B-R)/2,+u.apply(this,arguments)),G=pe,xe=pe,U,Be;if(X>Pg){var Pe=oRe(X/R*U4(de)),je=oRe(X/B*U4(de));(ne-=Pe*2)>Pg?(Pe*=ie?1:-1,ge+=Pe,ae-=Pe):(ne=0,ge=ae=(j+W)/2),(se-=je*2)>Pg?(je*=ie?1:-1,oe+=je,be-=je):(se=0,oe=be=(j+W)/2)}var Ie=B*CC(oe),Se=B*U4(oe),Ce=R*CC(ae),ke=R*U4(ae);if(pe>Pg){var Ke=B*CC(be),zt=B*U4(be),Ne=R*CC(ge),pn=R*U4(ge),Tt;if(ee<UF)if(Tt=QNt(Ie,Se,Ne,pn,Ke,zt,Ce,ke)){var Et=Ie-Tt[0],Wt=Se-Tt[1],un=Ke-Tt[0],yt=zt-Tt[1],Bt=1/U4(VNt((Et*un+Wt*yt)/(lD(Et*Et+Wt*Wt)*lD(un*un+yt*yt)))/2),Ze=lD(Tt[0]*Tt[0]+Tt[1]*Tt[1]);G=h2e(pe,(R-Ze)/(Bt-1)),xe=h2e(pe,(B-Ze)/(Bt+1))}else G=xe=0}se>Pg?xe>Pg?(U=pX(Ne,pn,Ie,Se,B,xe,ie),Be=pX(Ke,zt,Ce,ke,B,xe,ie),y.moveTo(U.cx+U.x01,U.cy+U.y01),xe<pe?y.arc(U.cx,U.cy,xe,Ng(U.y01,U.x01),Ng(Be.y01,Be.x01),!ie):(y.arc(U.cx,U.cy,xe,Ng(U.y01,U.x01),Ng(U.y11,U.x11),!ie),y.arc(0,0,B,Ng(U.cy+U.y11,U.cx+U.x11),Ng(Be.cy+Be.y11,Be.cx+Be.x11),!ie),y.arc(Be.cx,Be.cy,xe,Ng(Be.y11,Be.x11),Ng(Be.y01,Be.x01),!ie))):(y.moveTo(Ie,Se),y.arc(0,0,B,oe,be,!ie)):y.moveTo(Ie,Se),!(R>Pg)||!(ne>Pg)?y.lineTo(Ce,ke):G>Pg?(U=pX(Ce,ke,Ke,zt,R,-G,ie),Be=pX(Ie,Se,Ne,pn,R,-G,ie),y.lineTo(U.cx+U.x01,U.cy+U.y01),G<pe?y.arc(U.cx,U.cy,G,Ng(U.y01,U.x01),Ng(Be.y01,Be.x01),!ie):(y.arc(U.cx,U.cy,G,Ng(U.y01,U.x01),Ng(U.y11,U.x11),!ie),y.arc(0,0,R,Ng(U.cy+U.y11,U.cx+U.x11),Ng(Be.cy+Be.y11,Be.cx+Be.x11),ie),y.arc(Be.cx,Be.cy,G,Ng(Be.y11,Be.x11),Ng(Be.y01,Be.x01),!ie))):y.arc(0,0,R,ae,ge,ie)}if(y.closePath(),A)return y=null,A+""||null}return _.centroid=function(){var A=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2,P=(+p.apply(this,arguments)+ +v.apply(this,arguments))/2-UF/2;return[CC(P)*A,U4(P)*A]},_.innerRadius=function(A){return arguments.length?(i=typeof A=="function"?A:Wf(+A),_):i},_.outerRadius=function(A){return arguments.length?(a=typeof A=="function"?A:Wf(+A),_):a},_.cornerRadius=function(A){return arguments.length?(u=typeof A=="function"?A:Wf(+A),_):u},_.padRadius=function(A){return arguments.length?(d=A==null?null:typeof A=="function"?A:Wf(+A),_):d},_.startAngle=function(A){return arguments.length?(p=typeof A=="function"?A:Wf(+A),_):p},_.endAngle=function(A){return arguments.length?(v=typeof A=="function"?A:Wf(+A),_):v},_.padAngle=function(A){return arguments.length?(b=typeof A=="function"?A:Wf(+A),_):b},_.context=function(A){return arguments.length?(y=A??null,_):y},_}function uRe(i){return typeof i=="object"&&"length"in i?i:Array.from(i)}function lRe(i){this._context=i}lRe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;default:this._context.lineTo(i,a);break}}};function Sp(i){return new lRe(i)}function JNt(i){return i[0]}function ZNt(i){return i[1]}function E7(i,a){var u=Wf(!0),d=null,p=Sp,v=null,b=cRe(y);i=typeof i=="function"?i:i===void 0?JNt:Wf(i),a=typeof a=="function"?a:a===void 0?ZNt:Wf(a);function y(E){var _,A=(E=uRe(E)).length,P,R=!1,B;for(d==null&&(v=p(B=b())),_=0;_<=A;++_)!(_<A&&u(P=E[_],_,E))===R&&((R=!R)?v.lineStart():v.lineEnd()),R&&v.point(+i(P,_,E),+a(P,_,E));if(B)return v=null,B+""||null}return y.x=function(E){return arguments.length?(i=typeof E=="function"?E:Wf(+E),y):i},y.y=function(E){return arguments.length?(a=typeof E=="function"?E:Wf(+E),y):a},y.defined=function(E){return arguments.length?(u=typeof E=="function"?E:Wf(!!E),y):u},y.curve=function(E){return arguments.length?(p=E,d!=null&&(v=p(d)),y):p},y.context=function(E){return arguments.length?(E==null?d=v=null:v=p(d=E),y):d},y}function ePt(i,a){return a<i?-1:a>i?1:a>=i?0:NaN}function tPt(i){return i}function nPt(){var i=tPt,a=ePt,u=null,d=Wf(0),p=Wf(gX),v=Wf(0);function b(y){var E,_=(y=uRe(y)).length,A,P,R=0,B=new Array(_),j=new Array(_),W=+d.apply(this,arguments),ee=Math.min(gX,Math.max(-gX,p.apply(this,arguments)-W)),ie,oe=Math.min(Math.abs(ee)/_,v.apply(this,arguments)),be=oe*(ee<0?-1:1),ge;for(E=0;E<_;++E)(ge=j[B[E]=E]=+i(y[E],E,y))>0&&(R+=ge);for(a!=null?B.sort(function(ae,ne){return a(j[ae],j[ne])}):u!=null&&B.sort(function(ae,ne){return u(y[ae],y[ne])}),E=0,P=R?(ee-_*be)/R:0;E<_;++E,W=ie)A=B[E],ge=j[A],ie=W+(ge>0?ge*P:0)+be,j[A]={data:y[A],index:E,value:ge,startAngle:W,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?(a=y,u=null,b):a},b.sort=function(y){return arguments.length?(u=y,a=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 hRe{constructor(a,u){this._context=a,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(a,u){switch(a=+a,u=+u,this._point){case 0:{this._point=1,this._line?this._context.lineTo(a,u):this._context.moveTo(a,u);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+a)/2,this._y0,this._x0,u,a,u):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+u)/2,a,this._y0,a,u);break}}this._x0=a,this._y0=u}}function rPt(i){return new hRe(i,!0)}function iPt(i){return new hRe(i,!1)}function v9(){}function bX(i,a,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+a)/6,(i._y0+4*i._y1+u)/6)}function mX(i){this._context=i}mX.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:bX(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,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);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:bX(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function VF(i){return new mX(i)}function fRe(i){this._context=i}fRe.prototype={areaStart:v9,areaEnd:v9,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,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x2=i,this._y2=a;break;case 1:this._point=2,this._x3=i,this._y3=a;break;case 2:this._point=3,this._x4=i,this._y4=a,this._context.moveTo((this._x0+4*this._x1+i)/6,(this._y0+4*this._y1+a)/6);break;default:bX(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function sPt(i){return new fRe(i)}function dRe(i){this._context=i}dRe.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,a){switch(i=+i,a=+a,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+a)/6;this._line?this._context.lineTo(u,d):this._context.moveTo(u,d);break;case 3:this._point=4;default:bX(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function aPt(i){return new dRe(i)}function gRe(i,a){this._basis=new mX(i),this._beta=a}gRe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var i=this._x,a=this._y,u=i.length-1;if(u>0)for(var d=i[0],p=a[0],v=i[u]-d,b=a[u]-p,y=-1,E;++y<=u;)E=y/u,this._basis.point(this._beta*i[y]+(1-this._beta)*(d+E*v),this._beta*a[y]+(1-this._beta)*(p+E*b));this._x=this._y=null,this._basis.lineEnd()},point:function(i,a){this._x.push(+i),this._y.push(+a)}};const oPt=function i(a){function u(d){return a===1?new mX(d):new gRe(d,a)}return u.beta=function(d){return i(+d)},u}(.85);function vX(i,a,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-a),i._y2+i._k*(i._y1-u),i._x2,i._y2)}function f2e(i,a){this._context=i,this._k=(1-a)/6}f2e.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:vX(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,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2,this._x1=i,this._y1=a;break;case 2:this._point=3;default:vX(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const cPt=function i(a){function u(d){return new f2e(d,a)}return u.tension=function(d){return i(+d)},u}(0);function d2e(i,a){this._context=i,this._k=(1-a)/6}d2e.prototype={areaStart:v9,areaEnd:v9,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,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:vX(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const uPt=function i(a){function u(d){return new d2e(d,a)}return u.tension=function(d){return i(+d)},u}(0);function g2e(i,a){this._context=i,this._k=(1-a)/6}g2e.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,a){switch(i=+i,a=+a,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:vX(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const lPt=function i(a){function u(d){return new g2e(d,a)}return u.tension=function(d){return i(+d)},u}(0);function p2e(i,a,u){var d=i._x1,p=i._y1,v=i._x2,b=i._y2;if(i._l01_a>Pg){var y=2*i._l01_2a+3*i._l01_a*i._l12_a+i._l12_2a,E=3*i._l01_a*(i._l01_a+i._l12_a);d=(d*y-i._x0*i._l12_2a+i._x2*i._l01_2a)/E,p=(p*y-i._y0*i._l12_2a+i._y2*i._l01_2a)/E}if(i._l23_a>Pg){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-a*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 pRe(i,a){this._context=i,this._alpha=a}pRe.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,a){if(i=+i,a=+a,this._point){var u=this._x2-i,d=this._y2-a;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,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3;default:p2e(this,i,a);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=a}};const hPt=function i(a){function u(d){return a?new pRe(d,a):new f2e(d,0)}return u.alpha=function(d){return i(+d)},u}(.5);function bRe(i,a){this._context=i,this._alpha=a}bRe.prototype={areaStart:v9,areaEnd:v9,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,a){if(i=+i,a=+a,this._point){var u=this._x2-i,d=this._y2-a;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=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:p2e(this,i,a);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=a}};const fPt=function i(a){function u(d){return a?new bRe(d,a):new d2e(d,0)}return u.alpha=function(d){return i(+d)},u}(.5);function mRe(i,a){this._context=i,this._alpha=a}mRe.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,a){if(i=+i,a=+a,this._point){var u=this._x2-i,d=this._y2-a;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:p2e(this,i,a);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=a}};const dPt=function i(a){function u(d){return a?new mRe(d,a):new g2e(d,0)}return u.alpha=function(d){return i(+d)},u}(.5);function vRe(i){this._context=i}vRe.prototype={areaStart:v9,areaEnd:v9,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(i,a){i=+i,a=+a,this._point?this._context.lineTo(i,a):(this._point=1,this._context.moveTo(i,a))}};function gPt(i){return new vRe(i)}function wRe(i){return i<0?-1:1}function yRe(i,a,u){var d=i._x1-i._x0,p=a-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(wRe(v)+wRe(b))*Math.min(Math.abs(v),Math.abs(b),.5*Math.abs(y))||0}function xRe(i,a){var u=i._x1-i._x0;return u?(3*(i._y1-i._y0)/u-a)/2:a}function b2e(i,a,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*a,v-y,b-y*u,v,b)}function wX(i){this._context=i}wX.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:b2e(this,this._t0,xRe(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){var u=NaN;if(i=+i,a=+a,!(i===this._x1&&a===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,b2e(this,xRe(this,u=yRe(this,i,a)),u);break;default:b2e(this,this._t0,u=yRe(this,i,a));break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a,this._t0=u}}};function kRe(i){this._context=new TRe(i)}(kRe.prototype=Object.create(wX.prototype)).point=function(i,a){wX.prototype.point.call(this,a,i)};function TRe(i){this._context=i}TRe.prototype={moveTo:function(i,a){this._context.moveTo(a,i)},closePath:function(){this._context.closePath()},lineTo:function(i,a){this._context.lineTo(a,i)},bezierCurveTo:function(i,a,u,d,p,v){this._context.bezierCurveTo(a,i,d,u,v,p)}};function pPt(i){return new wX(i)}function bPt(i){return new kRe(i)}function ERe(i){this._context=i}ERe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var i=this._x,a=this._y,u=i.length;if(u)if(this._line?this._context.lineTo(i[0],a[0]):this._context.moveTo(i[0],a[0]),u===2)this._context.lineTo(i[1],a[1]);else for(var d=CRe(i),p=CRe(a),v=0,b=1;b<u;++v,++b)this._context.bezierCurveTo(d[0][v],p[0][v],d[1][v],p[1][v],i[b],a[b]);(this._line||this._line!==0&&u===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(i,a){this._x.push(+i),this._y.push(+a)}};function CRe(i){var a,u=i.length-1,d,p=new Array(u),v=new Array(u),b=new Array(u);for(p[0]=0,v[0]=2,b[0]=i[0]+2*i[1],a=1;a<u-1;++a)p[a]=1,v[a]=4,b[a]=4*i[a]+2*i[a+1];for(p[u-1]=2,v[u-1]=7,b[u-1]=8*i[u-1]+i[u],a=1;a<u;++a)d=p[a]/v[a-1],v[a]-=d,b[a]-=d*b[a-1];for(p[u-1]=b[u-1]/v[u-1],a=u-2;a>=0;--a)p[a]=(b[a]-p[a+1])/v[a];for(v[u-1]=(i[u]+p[u-1])/2,a=0;a<u-1;++a)v[a]=2*i[a+1]-p[a+1];return[p,v]}function mPt(i){return new ERe(i)}function yX(i,a){this._context=i,this._t=a}yX.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,a),this._context.lineTo(i,a);else{var u=this._x*(1-this._t)+i*this._t;this._context.lineTo(u,this._y),this._context.lineTo(u,a)}break}}this._x=i,this._y=a}};function vPt(i){return new yX(i,.5)}function wPt(i){return new yX(i,0)}function yPt(i){return new yX(i,1)}function GF(i,a,u){this.k=i,this.x=a,this.y=u}GF.prototype={constructor:GF,scale:function(i){return i===1?this:new GF(this.k*i,this.x,this.y)},translate:function(i,a){return i===0&a===0?this:new GF(this.k,this.x+this.k*i,this.y+this.k*a)},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+")"}},GF.prototype;/*! @license DOMPurify 3.4.2 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.2/LICENSE */const{entries:SRe,setPrototypeOf:_Re,isFrozen:xPt,getPrototypeOf:kPt,getOwnPropertyDescriptor:TPt}=Object;let{freeze:_p,seal:jv,create:fD}=Object,{apply:m2e,construct:v2e}=typeof Reflect<"u"&&Reflect;_p||(_p=function(a){return a}),jv||(jv=function(a){return a}),m2e||(m2e=function(a,u){for(var d=arguments.length,p=new Array(d>2?d-2:0),v=2;v<d;v++)p[v-2]=arguments[v];return a.apply(u,p)}),v2e||(v2e=function(a){for(var u=arguments.length,d=new Array(u>1?u-1:0),p=1;p<u;p++)d[p-1]=arguments[p];return new a(...d)});const KF=M0(Array.prototype.forEach),EPt=M0(Array.prototype.lastIndexOf),ARe=M0(Array.prototype.pop),WF=M0(Array.prototype.push),CPt=M0(Array.prototype.splice),Ap=Array.isArray,YF=M0(String.prototype.toLowerCase),w2e=M0(String.prototype.toString),LRe=M0(String.prototype.match),dD=M0(String.prototype.replace),MRe=M0(String.prototype.indexOf),SPt=M0(String.prototype.trim),_Pt=M0(Number.prototype.toString),APt=M0(Boolean.prototype.toString),DRe=typeof BigInt>"u"?null:M0(BigInt.prototype.toString),IRe=typeof Symbol>"u"?null:M0(Symbol.prototype.toString),kf=M0(Object.prototype.hasOwnProperty),XF=M0(Object.prototype.toString),Ud=M0(RegExp.prototype.test),xX=LPt(TypeError);function M0(i){return function(a){a instanceof RegExp&&(a.lastIndex=0);for(var u=arguments.length,d=new Array(u>1?u-1:0),p=1;p<u;p++)d[p-1]=arguments[p];return m2e(i,a,d)}}function LPt(i){return function(){for(var a=arguments.length,u=new Array(a),d=0;d<a;d++)u[d]=arguments[d];return v2e(i,u)}}function Yo(i,a){let u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:YF;if(_Re&&_Re(i,null),!Ap(a))return i;let d=a.length;for(;d--;){let p=a[d];if(typeof p=="string"){const v=u(p);v!==p&&(xPt(a)||(a[d]=v),p=v)}i[p]=!0}return i}function MPt(i){for(let a=0;a<i.length;a++)kf(i,a)||(i[a]=null);return i}function V2(i){const a=fD(null);for(const[u,d]of SRe(i))kf(i,u)&&(Ap(d)?a[u]=MPt(d):d&&typeof d=="object"&&d.constructor===Object?a[u]=V2(d):a[u]=d);return a}function DPt(i){switch(typeof i){case"string":return i;case"number":return _Pt(i);case"boolean":return APt(i);case"bigint":return DRe?DRe(i):"0";case"symbol":return IRe?IRe(i):"Symbol()";case"undefined":return XF(i);case"function":case"object":{if(i===null)return XF(i);const a=i,u=gD(a,"toString");if(typeof u=="function"){const d=u(a);return typeof d=="string"?d:XF(d)}return XF(i)}default:return XF(i)}}function gD(i,a){for(;i!==null;){const d=TPt(i,a);if(d){if(d.get)return M0(d.get);if(typeof d.value=="function")return M0(d.value)}i=kPt(i)}function u(){return null}return u}function IPt(i){try{return Ud(i,""),!0}catch{return!1}}const ORe=_p(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),y2e=_p(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),x2e=_p(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),OPt=_p(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),k2e=_p(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),NPt=_p(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),NRe=_p(["#text"]),PRe=_p(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),T2e=_p(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),BRe=_p(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),kX=_p(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),PPt=jv(/\{\{[\w\W]*|[\w\W]*\}\}/gm),BPt=jv(/<%[\w\W]*|[\w\W]*%>/gm),FPt=jv(/\$\{[\w\W]*/gm),RPt=jv(/^data-[\-\w.\u00B7-\uFFFF]+$/),jPt=jv(/^aria-[\-\w]+$/),FRe=jv(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),$Pt=jv(/^(?:\w+script|data):/i),zPt=jv(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),RRe=jv(/^html$/i),qPt=jv(/^[a-z][.\w]*(-[.\w]+)+$/i);var jRe=Object.freeze({__proto__:null,ARIA_ATTR:jPt,ATTR_WHITESPACE:zPt,CUSTOM_ELEMENT:qPt,DATA_ATTR:RPt,DOCTYPE_NAME:RRe,ERB_EXPR:BPt,IS_ALLOWED_URI:FRe,IS_SCRIPT_OR_DATA:$Pt,MUSTACHE_EXPR:PPt,TMPLIT_EXPR:FPt});const QF={element:1,text:3,progressingInstruction:7,comment:8,document:9},HPt=function(){return typeof window>"u"?null:window},UPt=function(a,u){if(typeof a!="object"||typeof a.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 a.createPolicy(v,{createHTML(b){return b},createScriptURL(b){return b}})}catch{return console.warn("TrustedTypes policy "+v+" could not be created."),null}},$Re=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function zRe(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:HPt();const a=bs=>zRe(bs);if(a.version="3.4.2",a.removed=[],!i||!i.document||i.document.nodeType!==QF.document||!i.Element)return a.isSupported=!1,a;let{document:u}=i;const d=u,p=d.currentScript,{DocumentFragment:v,HTMLTemplateElement:b,Node:y,Element:E,NodeFilter:_,NamedNodeMap:A=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:P,DOMParser:R,trustedTypes:B}=i,j=E.prototype,W=gD(j,"cloneNode"),ee=gD(j,"remove"),ie=gD(j,"nextSibling"),oe=gD(j,"childNodes"),be=gD(j,"parentNode");if(typeof b=="function"){const bs=u.createElement("template");bs.content&&bs.content.ownerDocument&&(u=bs.content.ownerDocument)}let ge,ae="";const{implementation:ne,createNodeIterator:se,createDocumentFragment:de,getElementsByTagName:X}=u,{importNode:pe}=d;let G=$Re();a.isSupported=typeof SRe=="function"&&typeof be=="function"&&ne&&ne.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:xe,ERB_EXPR:U,TMPLIT_EXPR:Be,DATA_ATTR:Pe,ARIA_ATTR:je,IS_SCRIPT_OR_DATA:Ie,ATTR_WHITESPACE:Se,CUSTOM_ELEMENT:Ce}=jRe;let{IS_ALLOWED_URI:ke}=jRe,Ke=null;const zt=Yo({},[...ORe,...y2e,...x2e,...k2e,...NRe]);let Ne=null;const pn=Yo({},[...PRe,...T2e,...BRe,...kX]);let Tt=Object.seal(fD(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}})),Et=null,Wt=null;const un=Object.seal(fD(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let yt=!0,Bt=!0,Ze=!1,Dt=!0,kt=!1,Nn=!0,ht=!1,qr=!1,xt=!1,Ri=!1,wi=!1,ia=!1,Hs=!0,mo=!1;const Tr="user-content-";let On=!0,Rn=!1,zn={},Ct=null;const gt=Yo({},["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 on=null;const dn=Yo({},["audio","video","img","source","image","track"]);let Ln=null;const Io=Yo({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Oo="http://www.w3.org/1998/Math/MathML",No="http://www.w3.org/2000/svg",Us="http://www.w3.org/1999/xhtml";let uo=Us,Es=!1,Ou=null;const _c=Yo({},[Oo,No,Us],w2e);let Kd=Yo({},["mi","mo","mn","ms","mtext"]),qp=Yo({},["annotation-xml"]);const Ul=Yo({},["title","style","font","a","script"]);let Ac=null;const Jc=["application/xhtml+xml","text/html"],Ya="text/html";let Ba=null,ha=null;const $o=u.createElement("form"),Lc=function(Vt){return Vt instanceof RegExp||Vt instanceof Function},Fa=function(){let Vt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(ha&&ha===Vt)return;(!Vt||typeof Vt!="object")&&(Vt={}),Vt=V2(Vt),Ac=Jc.indexOf(Vt.PARSER_MEDIA_TYPE)===-1?Ya:Vt.PARSER_MEDIA_TYPE,Ba=Ac==="application/xhtml+xml"?w2e:YF,Ke=kf(Vt,"ALLOWED_TAGS")&&Ap(Vt.ALLOWED_TAGS)?Yo({},Vt.ALLOWED_TAGS,Ba):zt,Ne=kf(Vt,"ALLOWED_ATTR")&&Ap(Vt.ALLOWED_ATTR)?Yo({},Vt.ALLOWED_ATTR,Ba):pn,Ou=kf(Vt,"ALLOWED_NAMESPACES")&&Ap(Vt.ALLOWED_NAMESPACES)?Yo({},Vt.ALLOWED_NAMESPACES,w2e):_c,Ln=kf(Vt,"ADD_URI_SAFE_ATTR")&&Ap(Vt.ADD_URI_SAFE_ATTR)?Yo(V2(Io),Vt.ADD_URI_SAFE_ATTR,Ba):Io,on=kf(Vt,"ADD_DATA_URI_TAGS")&&Ap(Vt.ADD_DATA_URI_TAGS)?Yo(V2(dn),Vt.ADD_DATA_URI_TAGS,Ba):dn,Ct=kf(Vt,"FORBID_CONTENTS")&&Ap(Vt.FORBID_CONTENTS)?Yo({},Vt.FORBID_CONTENTS,Ba):gt,Et=kf(Vt,"FORBID_TAGS")&&Ap(Vt.FORBID_TAGS)?Yo({},Vt.FORBID_TAGS,Ba):V2({}),Wt=kf(Vt,"FORBID_ATTR")&&Ap(Vt.FORBID_ATTR)?Yo({},Vt.FORBID_ATTR,Ba):V2({}),zn=kf(Vt,"USE_PROFILES")?Vt.USE_PROFILES&&typeof Vt.USE_PROFILES=="object"?V2(Vt.USE_PROFILES):Vt.USE_PROFILES:!1,yt=Vt.ALLOW_ARIA_ATTR!==!1,Bt=Vt.ALLOW_DATA_ATTR!==!1,Ze=Vt.ALLOW_UNKNOWN_PROTOCOLS||!1,Dt=Vt.ALLOW_SELF_CLOSE_IN_ATTR!==!1,kt=Vt.SAFE_FOR_TEMPLATES||!1,Nn=Vt.SAFE_FOR_XML!==!1,ht=Vt.WHOLE_DOCUMENT||!1,Ri=Vt.RETURN_DOM||!1,wi=Vt.RETURN_DOM_FRAGMENT||!1,ia=Vt.RETURN_TRUSTED_TYPE||!1,xt=Vt.FORCE_BODY||!1,Hs=Vt.SANITIZE_DOM!==!1,mo=Vt.SANITIZE_NAMED_PROPS||!1,On=Vt.KEEP_CONTENT!==!1,Rn=Vt.IN_PLACE||!1,ke=IPt(Vt.ALLOWED_URI_REGEXP)?Vt.ALLOWED_URI_REGEXP:FRe,uo=typeof Vt.NAMESPACE=="string"?Vt.NAMESPACE:Us,Kd=kf(Vt,"MATHML_TEXT_INTEGRATION_POINTS")&&Vt.MATHML_TEXT_INTEGRATION_POINTS&&typeof Vt.MATHML_TEXT_INTEGRATION_POINTS=="object"?V2(Vt.MATHML_TEXT_INTEGRATION_POINTS):Yo({},["mi","mo","mn","ms","mtext"]),qp=kf(Vt,"HTML_INTEGRATION_POINTS")&&Vt.HTML_INTEGRATION_POINTS&&typeof Vt.HTML_INTEGRATION_POINTS=="object"?V2(Vt.HTML_INTEGRATION_POINTS):Yo({},["annotation-xml"]);const jr=kf(Vt,"CUSTOM_ELEMENT_HANDLING")&&Vt.CUSTOM_ELEMENT_HANDLING&&typeof Vt.CUSTOM_ELEMENT_HANDLING=="object"?V2(Vt.CUSTOM_ELEMENT_HANDLING):fD(null);if(Tt=fD(null),kf(jr,"tagNameCheck")&&Lc(jr.tagNameCheck)&&(Tt.tagNameCheck=jr.tagNameCheck),kf(jr,"attributeNameCheck")&&Lc(jr.attributeNameCheck)&&(Tt.attributeNameCheck=jr.attributeNameCheck),kf(jr,"allowCustomizedBuiltInElements")&&typeof jr.allowCustomizedBuiltInElements=="boolean"&&(Tt.allowCustomizedBuiltInElements=jr.allowCustomizedBuiltInElements),kt&&(Bt=!1),wi&&(Ri=!0),zn&&(Ke=Yo({},NRe),Ne=fD(null),zn.html===!0&&(Yo(Ke,ORe),Yo(Ne,PRe)),zn.svg===!0&&(Yo(Ke,y2e),Yo(Ne,T2e),Yo(Ne,kX)),zn.svgFilters===!0&&(Yo(Ke,x2e),Yo(Ne,T2e),Yo(Ne,kX)),zn.mathMl===!0&&(Yo(Ke,k2e),Yo(Ne,BRe),Yo(Ne,kX))),un.tagCheck=null,un.attributeCheck=null,kf(Vt,"ADD_TAGS")&&(typeof Vt.ADD_TAGS=="function"?un.tagCheck=Vt.ADD_TAGS:Ap(Vt.ADD_TAGS)&&(Ke===zt&&(Ke=V2(Ke)),Yo(Ke,Vt.ADD_TAGS,Ba))),kf(Vt,"ADD_ATTR")&&(typeof Vt.ADD_ATTR=="function"?un.attributeCheck=Vt.ADD_ATTR:Ap(Vt.ADD_ATTR)&&(Ne===pn&&(Ne=V2(Ne)),Yo(Ne,Vt.ADD_ATTR,Ba))),kf(Vt,"ADD_URI_SAFE_ATTR")&&Ap(Vt.ADD_URI_SAFE_ATTR)&&Yo(Ln,Vt.ADD_URI_SAFE_ATTR,Ba),kf(Vt,"FORBID_CONTENTS")&&Ap(Vt.FORBID_CONTENTS)&&(Ct===gt&&(Ct=V2(Ct)),Yo(Ct,Vt.FORBID_CONTENTS,Ba)),kf(Vt,"ADD_FORBID_CONTENTS")&&Ap(Vt.ADD_FORBID_CONTENTS)&&(Ct===gt&&(Ct=V2(Ct)),Yo(Ct,Vt.ADD_FORBID_CONTENTS,Ba)),On&&(Ke["#text"]=!0),ht&&Yo(Ke,["html","head","body"]),Ke.table&&(Yo(Ke,["tbody"]),delete Et.tbody),Vt.TRUSTED_TYPES_POLICY){if(typeof Vt.TRUSTED_TYPES_POLICY.createHTML!="function")throw xX('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Vt.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw xX('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ge=Vt.TRUSTED_TYPES_POLICY,ae=ge.createHTML("")}else ge===void 0&&(ge=UPt(B,p)),ge!==null&&typeof ae=="string"&&(ae=ge.createHTML(""));_p&&_p(Vt),ha=Vt},Ra=Yo({},[...y2e,...x2e,...OPt]),ma=Yo({},[...k2e,...NPt]),Kh=function(Vt){let jr=be(Vt);(!jr||!jr.tagName)&&(jr={namespaceURI:uo,tagName:"template"});const Ji=YF(Vt.tagName),Qo=YF(jr.tagName);return Ou[Vt.namespaceURI]?Vt.namespaceURI===No?jr.namespaceURI===Us?Ji==="svg":jr.namespaceURI===Oo?Ji==="svg"&&(Qo==="annotation-xml"||Kd[Qo]):!!Ra[Ji]:Vt.namespaceURI===Oo?jr.namespaceURI===Us?Ji==="math":jr.namespaceURI===No?Ji==="math"&&qp[Qo]:!!ma[Ji]:Vt.namespaceURI===Us?jr.namespaceURI===No&&!qp[Qo]||jr.namespaceURI===Oo&&!Kd[Qo]?!1:!ma[Ji]&&(Ul[Ji]||!Ra[Ji]):!!(Ac==="application/xhtml+xml"&&Ou[Vt.namespaceURI]):!1},Po=function(Vt){WF(a.removed,{element:Vt});try{be(Vt).removeChild(Vt)}catch{ee(Vt)}},Hp=function(Vt,jr){try{WF(a.removed,{attribute:jr.getAttributeNode(Vt),from:jr})}catch{WF(a.removed,{attribute:null,from:jr})}if(jr.removeAttribute(Vt),Vt==="is")if(Ri||wi)try{Po(jr)}catch{}else try{jr.setAttribute(Vt,"")}catch{}},Ug=function(Vt){let jr=null,Ji=null;if(xt)Vt="<remove></remove>"+Vt;else{const Ui=LRe(Vt,/^[\r\n\t ]+/);Ji=Ui&&Ui[0]}Ac==="application/xhtml+xml"&&uo===Us&&(Vt='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+Vt+"</body></html>");const Qo=ge?ge.createHTML(Vt):Vt;if(uo===Us)try{jr=new R().parseFromString(Qo,Ac)}catch{}if(!jr||!jr.documentElement){jr=ne.createDocument(uo,"template",null);try{jr.documentElement.innerHTML=Es?ae:Qo}catch{}}const Hi=jr.body||jr.documentElement;return Vt&&Ji&&Hi.insertBefore(u.createTextNode(Ji),Hi.childNodes[0]||null),uo===Us?X.call(jr,ht?"html":"body")[0]:ht?jr.documentElement:Hi},od=function(Vt){return se.call(Vt.ownerDocument||Vt,Vt,_.SHOW_ELEMENT|_.SHOW_COMMENT|_.SHOW_TEXT|_.SHOW_PROCESSING_INSTRUCTION|_.SHOW_CDATA_SECTION,null)},cd=function(Vt){return Vt instanceof P&&(typeof Vt.nodeName!="string"||typeof Vt.textContent!="string"||typeof Vt.removeChild!="function"||!(Vt.attributes instanceof A)||typeof Vt.removeAttribute!="function"||typeof Vt.setAttribute!="function"||typeof Vt.namespaceURI!="string"||typeof Vt.insertBefore!="function"||typeof Vt.hasChildNodes!="function")},w1=function(Vt){return typeof y=="function"&&Vt instanceof y};function kh(bs,Vt,jr){KF(bs,Ji=>{Ji.call(a,Vt,jr,ha)})}const Wd=function(Vt){let jr=null;if(kh(G.beforeSanitizeElements,Vt,null),cd(Vt))return Po(Vt),!0;const Ji=Ba(Vt.nodeName);if(kh(G.uponSanitizeElement,Vt,{tagName:Ji,allowedTags:Ke}),Nn&&Vt.hasChildNodes()&&!w1(Vt.firstElementChild)&&Ud(/<[/\w!]/g,Vt.innerHTML)&&Ud(/<[/\w!]/g,Vt.textContent)||Nn&&Vt.namespaceURI===Us&&Ji==="style"&&w1(Vt.firstElementChild)||Vt.nodeType===QF.progressingInstruction||Nn&&Vt.nodeType===QF.comment&&Ud(/<[/\w]/g,Vt.data))return Po(Vt),!0;if(Et[Ji]||!(un.tagCheck instanceof Function&&un.tagCheck(Ji))&&!Ke[Ji]){if(!Et[Ji]&&Zf(Ji)&&(Tt.tagNameCheck instanceof RegExp&&Ud(Tt.tagNameCheck,Ji)||Tt.tagNameCheck instanceof Function&&Tt.tagNameCheck(Ji)))return!1;if(On&&!Ct[Ji]){const Qo=be(Vt)||Vt.parentNode,Hi=oe(Vt)||Vt.childNodes;if(Hi&&Qo){const Ui=Hi.length;for(let zs=Ui-1;zs>=0;--zs){const gi=W(Hi[zs],!0);Qo.insertBefore(gi,ie(Vt))}}}return Po(Vt),!0}return Vt instanceof E&&!Kh(Vt)||(Ji==="noscript"||Ji==="noembed"||Ji==="noframes")&&Ud(/<\/no(script|embed|frames)/i,Vt.innerHTML)?(Po(Vt),!0):(kt&&Vt.nodeType===QF.text&&(jr=Vt.textContent,KF([xe,U,Be],Qo=>{jr=dD(jr,Qo," ")}),Vt.textContent!==jr&&(WF(a.removed,{element:Vt.cloneNode()}),Vt.textContent=jr)),kh(G.afterSanitizeElements,Vt,null),!1)},Yd=function(Vt,jr,Ji){if(Wt[jr]||Hs&&(jr==="id"||jr==="name")&&(Ji in u||Ji in $o))return!1;const Qo=Ne[jr]||un.attributeCheck instanceof Function&&un.attributeCheck(jr,Vt);if(!(Bt&&!Wt[jr]&&Ud(Pe,jr))){if(!(yt&&Ud(je,jr))){if(!Qo||Wt[jr]){if(!(Zf(Vt)&&(Tt.tagNameCheck instanceof RegExp&&Ud(Tt.tagNameCheck,Vt)||Tt.tagNameCheck instanceof Function&&Tt.tagNameCheck(Vt))&&(Tt.attributeNameCheck instanceof RegExp&&Ud(Tt.attributeNameCheck,jr)||Tt.attributeNameCheck instanceof Function&&Tt.attributeNameCheck(jr,Vt))||jr==="is"&&Tt.allowCustomizedBuiltInElements&&(Tt.tagNameCheck instanceof RegExp&&Ud(Tt.tagNameCheck,Ji)||Tt.tagNameCheck instanceof Function&&Tt.tagNameCheck(Ji))))return!1}else if(!Ln[jr]){if(!Ud(ke,dD(Ji,Se,""))){if(!((jr==="src"||jr==="xlink:href"||jr==="href")&&Vt!=="script"&&MRe(Ji,"data:")===0&&on[Vt])){if(!(Ze&&!Ud(Ie,dD(Ji,Se,"")))){if(Ji)return!1}}}}}}return!0},Xd=Yo({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Zf=function(Vt){return!Xd[YF(Vt)]&&Ud(Ce,Vt)},Up=function(Vt){kh(G.beforeSanitizeAttributes,Vt,null);const{attributes:jr}=Vt;if(!jr||cd(Vt))return;const Ji={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ne,forceKeepAttr:void 0};let Qo=jr.length;for(;Qo--;){const Hi=jr[Qo],{name:Ui,namespaceURI:zs,value:gi}=Hi,Bo=Ba(Ui),Ot=gi;let zu=Ui==="value"?Ot:SPt(Ot);if(Ji.attrName=Bo,Ji.attrValue=zu,Ji.keepAttr=!0,Ji.forceKeepAttr=void 0,kh(G.uponSanitizeAttribute,Vt,Ji),zu=Ji.attrValue,mo&&(Bo==="id"||Bo==="name")&&MRe(zu,Tr)!==0&&(Hp(Ui,Vt),zu=Tr+zu),Nn&&Ud(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,zu)){Hp(Ui,Vt);continue}if(Bo==="attributename"&&LRe(zu,"href")){Hp(Ui,Vt);continue}if(Ji.forceKeepAttr)continue;if(!Ji.keepAttr){Hp(Ui,Vt);continue}if(!Dt&&Ud(/\/>/i,zu)){Hp(Ui,Vt);continue}kt&&KF([xe,U,Be],Wh=>{zu=dD(zu,Wh," ")});const Gt=Ba(Vt.nodeName);if(!Yd(Gt,Bo,zu)){Hp(Ui,Vt);continue}if(ge&&typeof B=="object"&&typeof B.getAttributeType=="function"&&!zs)switch(B.getAttributeType(Gt,Bo)){case"TrustedHTML":{zu=ge.createHTML(zu);break}case"TrustedScriptURL":{zu=ge.createScriptURL(zu);break}}if(zu!==Ot)try{zs?Vt.setAttributeNS(zs,Ui,zu):Vt.setAttribute(Ui,zu),cd(Vt)?Po(Vt):ARe(a.removed)}catch{Hp(Ui,Vt)}}kh(G.afterSanitizeAttributes,Vt,null)},u5=function(Vt){let jr=null;const Ji=od(Vt);for(kh(G.beforeSanitizeShadowDOM,Vt,null);jr=Ji.nextNode();)kh(G.uponSanitizeShadowNode,jr,null),Wd(jr),Up(jr),jr.content instanceof v&&u5(jr.content);kh(G.afterSanitizeShadowDOM,Vt,null)};return a.sanitize=function(bs){let Vt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},jr=null,Ji=null,Qo=null,Hi=null;if(Es=!bs,Es&&(bs="<!-->"),typeof bs!="string"&&!w1(bs)&&(bs=DPt(bs),typeof bs!="string"))throw xX("dirty is not a string, aborting");if(!a.isSupported)return bs;if(qr||Fa(Vt),a.removed=[],typeof bs=="string"&&(Rn=!1),Rn){const gi=bs.nodeName;if(typeof gi=="string"){const Bo=Ba(gi);if(!Ke[Bo]||Et[Bo])throw xX("root node is forbidden and cannot be sanitized in-place")}}else if(bs instanceof y)jr=Ug("<!---->"),Ji=jr.ownerDocument.importNode(bs,!0),Ji.nodeType===QF.element&&Ji.nodeName==="BODY"||Ji.nodeName==="HTML"?jr=Ji:jr.appendChild(Ji);else{if(!Ri&&!kt&&!ht&&bs.indexOf("<")===-1)return ge&&ia?ge.createHTML(bs):bs;if(jr=Ug(bs),!jr)return Ri?null:ia?ae:""}jr&&xt&&Po(jr.firstChild);const Ui=od(Rn?bs:jr);for(;Qo=Ui.nextNode();)Wd(Qo),Up(Qo),Qo.content instanceof v&&u5(Qo.content);if(Rn)return bs;if(Ri){if(kt){jr.normalize();let gi=jr.innerHTML;KF([xe,U,Be],Bo=>{gi=dD(gi,Bo," ")}),jr.innerHTML=gi}if(wi)for(Hi=de.call(jr.ownerDocument);jr.firstChild;)Hi.appendChild(jr.firstChild);else Hi=jr;return(Ne.shadowroot||Ne.shadowrootmode)&&(Hi=pe.call(d,Hi,!0)),Hi}let zs=ht?jr.outerHTML:jr.innerHTML;return ht&&Ke["!doctype"]&&jr.ownerDocument&&jr.ownerDocument.doctype&&jr.ownerDocument.doctype.name&&Ud(RRe,jr.ownerDocument.doctype.name)&&(zs="<!DOCTYPE "+jr.ownerDocument.doctype.name+`>7`+zs),kt&&KF([xe,U,Be],gi=>{zs=dD(zs,gi," ")}),ge&&ia?ge.createHTML(zs):zs},a.setConfig=function(){let bs=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Fa(bs),qr=!0},a.clearConfig=function(){ha=null,qr=!1},a.isValidAttribute=function(bs,Vt,jr){ha||Fa({});const Ji=Ba(bs),Qo=Ba(Vt);return Yd(Ji,Qo,jr)},a.addHook=function(bs,Vt){typeof Vt=="function"&&WF(G[bs],Vt)},a.removeHook=function(bs,Vt){if(Vt!==void 0){const jr=EPt(G[bs],Vt);return jr===-1?void 0:CPt(G[bs],jr,1)[0]}return ARe(G[bs])},a.removeHooks=function(bs){G[bs]=[]},a.removeAllHooks=function(){G=$Re()},a}var pD=zRe();const bD=/<br\s*\/?>/gi,VPt=i=>i?URe(i).replace(/\\n/g,"#br#").split("#br#"):[""],GPt=(()=>{let i=!1;return()=>{i||(KPt(),i=!0)}})();function KPt(){const i="data-temp-href-target";pD.addHook("beforeSanitizeAttributes",a=>{a.tagName==="A"&&a.hasAttribute("target")&&a.setAttribute(i,a.getAttribute("target")??"")}),pD.addHook("afterSanitizeAttributes",a=>{a.tagName==="A"&&a.hasAttribute(i)&&(a.setAttribute("target",a.getAttribute(i)??""),a.removeAttribute(i),a.getAttribute("target")==="_blank"&&a.setAttribute("rel","noopener"))})}const qRe=i=>(GPt(),pD.sanitize(i)),HRe=(i,a)=>{var u;if(((u=a.flowchart)==null?void 0:u.htmlLabels)!==!1){const d=a.securityLevel;d==="antiscript"||d==="strict"?i=qRe(i):d!=="loose"&&(i=URe(i),i=i.replace(/</g,"<").replace(/>/g,">"),i=i.replace(/=/g,"="),i=QPt(i))}return i},bh=(i,a)=>i&&(a.dompurifyConfig?i=pD.sanitize(HRe(i,a),a.dompurifyConfig).toString():i=pD.sanitize(HRe(i,a),{FORBID_TAGS:["style"]}).toString(),i),WPt=(i,a)=>typeof i=="string"?bh(i,a):i.flat().map(u=>bh(u,a)),YPt=i=>bD.test(i),XPt=i=>i.split(bD),QPt=i=>i.replace(/#br#/g,"<br/>"),URe=i=>i.replace(bD,"#br#"),JPt=i=>{let a="";return i&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replaceAll(/\(/g,"\\("),a=a.replaceAll(/\)/g,"\\)")),a},h1=i=>!(i===!1||["false","null","0"].includes(String(i).trim().toLowerCase())),ZPt=function(...i){const a=i.filter(u=>!isNaN(u));return Math.max(...a)},eBt=function(...i){const a=i.filter(u=>!isNaN(u));return Math.min(...a)},JF=function(i){const a=i.split(/(,)/),u=[];for(let d=0;d<a.length;d++){let p=a[d];if(p===","&&d>0&&d+1<a.length){const v=a[d-1],b=a[d+1];tBt(v,b)&&(p=v+","+b,d++,u.pop())}u.push(nBt(p))}return u.join("")},E2e=(i,a)=>Math.max(0,i.split(a).length-1),tBt=(i,a)=>{const u=E2e(i,"~"),d=E2e(a,"~");return u===1&&d===1},nBt=i=>{const a=E2e(i,"~");let u=!1;if(a<=1)return i;a%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("")},VRe=()=>window.MathMLElement!==void 0,C2e=/\$\$(.*)\$\$/g,$v=i=>{var a;return(((a=i.match(C2e))==null?void 0:a.length)??0)>0},ZF=async(i,a)=>{const u=document.createElement("div");u.innerHTML=await SC(i,a),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},rBt=async(i,a)=>{if(!$v(i))return i;if(!VRe()&&!a.legacyMathML)return i.replace(C2e,"MathML is unsupported in this environment.");const{default:u}=await Promise.resolve().then(()=>QUt);return i.split(bD).map(d=>$v(d)?`8 <div style="display: flex; align-items: center; justify-content: center; white-space: nowrap;">9 ${d}10 </div>11 `:`<div>${d}</div>`).join("").replace(C2e,(d,p)=>u.renderToString(p,{throwOnError:!0,displayMode:!0,output:VRe()?"mathml":"htmlAndMathml"}).replace(/\n/g," ").replace(/<annotation.*<\/annotation>/g,""))},SC=async(i,a)=>bh(await rBt(i,a),a),oi={getRows:VPt,sanitizeText:bh,sanitizeTextOrArray:WPt,hasBreaks:YPt,splitBreaks:XPt,lineBreakRegex:bD,removeScript:qRe,getUrl:JPt,evaluate:h1,getMax:ZPt,getMin:eBt},TX={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 a=i/255;return i>.03928?Math.pow((a+.055)/1.055,2.4):a/12.92},hue2rgb:(i,a,u)=>(u<0&&(u+=1),u>1&&(u-=1),u<1/6?i+(a-i)*6*u:u<1/2?a:u<2/3?i+(a-i)*(2/3-u)*6:i),hsl2rgb:({h:i,s:a,l:u},d)=>{if(!a)return u*2.55;i/=360,a/=100,u/=100;const p=u<.5?u*(1+a):u+a-u*a,v=2*u-p;switch(d){case"r":return TX.hue2rgb(v,p,i+1/3)*255;case"g":return TX.hue2rgb(v,p,i)*255;case"b":return TX.hue2rgb(v,p,i-1/3)*255}},rgb2hsl:({r:i,g:a,b:u},d)=>{i/=255,a/=255,u/=255;const p=Math.max(i,a,u),v=Math.min(i,a,u),b=(p+v)/2;if(d==="l")return b*100;if(p===v)return 0;const y=p-v,E=b>.5?y/(2-p-v):y/(p+v);if(d==="s")return E*100;switch(p){case i:return((a-u)/y+(a<u?6:0))*60;case a:return((u-i)/y+2)*60;case u:return((i-a)/y+4)*60;default:return-1}}},Ka={channel:TX,lang:{clamp:(i,a,u)=>a>u?Math.min(a,Math.max(u,i)):Math.min(u,Math.max(a,i)),round:i=>Math.round(i*1e10)/1e10},unit:{dec2hex:i=>{const a=Math.round(i).toString(16);return a.length>1?a:`0${a}`}}},w9={};for(let i=0;i<=255;i++)w9[i]=Ka.unit.dec2hex(i);const Bg={ALL:0,RGB:1,HSL:2};class iBt{constructor(){this.type=Bg.ALL}get(){return this.type}set(a){if(this.type&&this.type!==a)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=a}reset(){this.type=Bg.ALL}is(a){return this.type===a}}const sBt=iBt;class aBt{constructor(a,u){this.color=u,this.changed=!1,this.data=a,this.type=new sBt}set(a,u){return this.color=u,this.changed=!1,this.data=a,this.type.type=Bg.ALL,this}_ensureHSL(){const a=this.data,{h:u,s:d,l:p}=a;u===void 0&&(a.h=Ka.channel.rgb2hsl(a,"h")),d===void 0&&(a.s=Ka.channel.rgb2hsl(a,"s")),p===void 0&&(a.l=Ka.channel.rgb2hsl(a,"l"))}_ensureRGB(){const a=this.data,{r:u,g:d,b:p}=a;u===void 0&&(a.r=Ka.channel.hsl2rgb(a,"r")),d===void 0&&(a.g=Ka.channel.hsl2rgb(a,"g")),p===void 0&&(a.b=Ka.channel.hsl2rgb(a,"b"))}get r(){const a=this.data,u=a.r;return!this.type.is(Bg.HSL)&&u!==void 0?u:(this._ensureHSL(),Ka.channel.hsl2rgb(a,"r"))}get g(){const a=this.data,u=a.g;return!this.type.is(Bg.HSL)&&u!==void 0?u:(this._ensureHSL(),Ka.channel.hsl2rgb(a,"g"))}get b(){const a=this.data,u=a.b;return!this.type.is(Bg.HSL)&&u!==void 0?u:(this._ensureHSL(),Ka.channel.hsl2rgb(a,"b"))}get h(){const a=this.data,u=a.h;return!this.type.is(Bg.RGB)&&u!==void 0?u:(this._ensureRGB(),Ka.channel.rgb2hsl(a,"h"))}get s(){const a=this.data,u=a.s;return!this.type.is(Bg.RGB)&&u!==void 0?u:(this._ensureRGB(),Ka.channel.rgb2hsl(a,"s"))}get l(){const a=this.data,u=a.l;return!this.type.is(Bg.RGB)&&u!==void 0?u:(this._ensureRGB(),Ka.channel.rgb2hsl(a,"l"))}get a(){return this.data.a}set r(a){this.type.set(Bg.RGB),this.changed=!0,this.data.r=a}set g(a){this.type.set(Bg.RGB),this.changed=!0,this.data.g=a}set b(a){this.type.set(Bg.RGB),this.changed=!0,this.data.b=a}set h(a){this.type.set(Bg.HSL),this.changed=!0,this.data.h=a}set s(a){this.type.set(Bg.HSL),this.changed=!0,this.data.s=a}set l(a){this.type.set(Bg.HSL),this.changed=!0,this.data.l=a}set a(a){this.changed=!0,this.data.a=a}}const oBt=aBt,EX=new oBt({r:0,g:0,b:0,a:0},"transparent"),GRe={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:i=>{if(i.charCodeAt(0)!==35)return;const a=i.match(GRe.re);if(!a)return;const u=a[1],d=parseInt(u,16),p=u.length,v=p%4===0,b=p>4,y=b?1:17,E=b?8:4,_=v?0:-1,A=b?255:15;return EX.set({r:(d>>E*(_+3)&A)*y,g:(d>>E*(_+2)&A)*y,b:(d>>E*(_+1)&A)*y,a:v?(d&A)*y/255:1},i)},stringify:i=>{const{r:a,g:u,b:d,a:p}=i;return p<1?`#${w9[Math.round(a)]}${w9[Math.round(u)]}${w9[Math.round(d)]}${w9[Math.round(p*255)]}`:`#${w9[Math.round(a)]}${w9[Math.round(u)]}${w9[Math.round(d)]}`}},eR=GRe,CX={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 a=i.match(CX.hueRe);if(a){const[,u,d]=a;switch(d){case"grad":return Ka.channel.clamp.h(parseFloat(u)*.9);case"rad":return Ka.channel.clamp.h(parseFloat(u)*180/Math.PI);case"turn":return Ka.channel.clamp.h(parseFloat(u)*360)}}return Ka.channel.clamp.h(parseFloat(i))},parse:i=>{const a=i.charCodeAt(0);if(a!==104&&a!==72)return;const u=i.match(CX.re);if(!u)return;const[,d,p,v,b,y]=u;return EX.set({h:CX._hue2deg(d),s:Ka.channel.clamp.s(parseFloat(p)),l:Ka.channel.clamp.l(parseFloat(v)),a:b?Ka.channel.clamp.a(y?parseFloat(b)/100:parseFloat(b)):1},i)},stringify:i=>{const{h:a,s:u,l:d,a:p}=i;return p<1?`hsla(${Ka.lang.round(a)}, ${Ka.lang.round(u)}%, ${Ka.lang.round(d)}%, ${p})`:`hsl(${Ka.lang.round(a)}, ${Ka.lang.round(u)}%, ${Ka.lang.round(d)}%)`}},SX=CX,_X={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 a=_X.colors[i];if(a)return eR.parse(a)},stringify:i=>{const a=eR.stringify(i);for(const u in _X.colors)if(_X.colors[u]===a)return u}},KRe=_X,WRe={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 a=i.charCodeAt(0);if(a!==114&&a!==82)return;const u=i.match(WRe.re);if(!u)return;const[,d,p,v,b,y,E,_,A]=u;return EX.set({r:Ka.channel.clamp.r(p?parseFloat(d)*2.55:parseFloat(d)),g:Ka.channel.clamp.g(b?parseFloat(v)*2.55:parseFloat(v)),b:Ka.channel.clamp.b(E?parseFloat(y)*2.55:parseFloat(y)),a:_?Ka.channel.clamp.a(A?parseFloat(_)/100:parseFloat(_)):1},i)},stringify:i=>{const{r:a,g:u,b:d,a:p}=i;return p<1?`rgba(${Ka.lang.round(a)}, ${Ka.lang.round(u)}, ${Ka.lang.round(d)}, ${Ka.lang.round(p)})`:`rgb(${Ka.lang.round(a)}, ${Ka.lang.round(u)}, ${Ka.lang.round(d)})`}},AX=WRe,R3={format:{keyword:KRe,hex:eR,rgb:AX,rgba:AX,hsl:SX,hsla:SX},parse:i=>{if(typeof i!="string")return i;const a=eR.parse(i)||AX.parse(i)||SX.parse(i)||KRe.parse(i);if(a)return a;throw new Error(`Unsupported color format: "${i}"`)},stringify:i=>!i.changed&&i.color?i.color:i.type.is(Bg.HSL)||i.data.r===void 0?SX.stringify(i):i.a<1||!Number.isInteger(i.r)||!Number.isInteger(i.g)||!Number.isInteger(i.b)?AX.stringify(i):eR.stringify(i)},YRe=(i,a)=>{const u=R3.parse(i);for(const d in a)u[d]=Ka.channel.clamp[d](a[d]);return R3.stringify(u)},_C=(i,a,u=0,d=1)=>{if(typeof i!="number")return YRe(i,{a});const p=EX.set({r:Ka.channel.clamp.r(i),g:Ka.channel.clamp.g(a),b:Ka.channel.clamp.b(u),a:Ka.channel.clamp.a(d)});return R3.stringify(p)},XRe=(i,a)=>Ka.lang.round(R3.parse(i)[a]),cBt=i=>{const{r:a,g:u,b:d}=R3.parse(i),p=.2126*Ka.channel.toLinear(a)+.7152*Ka.channel.toLinear(u)+.0722*Ka.channel.toLinear(d);return Ka.lang.round(p)},uBt=i=>cBt(i)>=.5,AC=i=>!uBt(i),QRe=(i,a,u)=>{const d=R3.parse(i),p=d[a],v=Ka.channel.clamp[a](p+u);return p!==v&&(d[a]=v),R3.stringify(d)},Ws=(i,a)=>QRe(i,"l",a),ba=(i,a)=>QRe(i,"l",-a),In=(i,a)=>{const u=R3.parse(i),d={};for(const p in a)a[p]&&(d[p]=u[p]+a[p]);return YRe(i,d)},lBt=(i,a,u=50)=>{const{r:d,g:p,b:v,a:b}=R3.parse(i),{r:y,g:E,b:_,a:A}=R3.parse(a),P=u/100,R=P*2-1,B=b-A,W=((R*B===-1?R:(R+B)/(1+R*B))+1)/2,ee=1-W,ie=d*W+y*ee,oe=p*W+E*ee,be=v*W+_*ee,ge=b*P+A*(1-P);return _C(ie,oe,be,ge)},Gi=(i,a=100)=>{const u=R3.parse(i);return u.r=255-u.r,u.g=255-u.g,u.b=255-u.b,lBt(u,i,a)},Lp=(i,a)=>a?In(i,{s:-40,l:10}):In(i,{s:-40,l:-10}),LX="#ffffff",MX="#f2f2f2";let hBt=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,E,_,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||Lp(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Lp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Lp(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Lp(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Gi(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Gi(this.tertiaryColor),this.lineColor=this.lineColor||Gi(this.background),this.arrowheadColor=this.arrowheadColor||Gi(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?ba(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||ba(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Gi(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||Ws(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 B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=ba(this["cScale"+B],75);else for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=ba(this["cScale"+B],25);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleInv"+B]=this["cScaleInv"+B]||Gi(this["cScale"+B]);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this.darkMode?this["cScalePeer"+B]=this["cScalePeer"+B]||Ws(this["cScale"+B],10):this["cScalePeer"+B]=this["cScalePeer"+B]||ba(this["cScale"+B],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleLabel"+B]=this["cScaleLabel"+B]||this.scaleLabelColor;const a=this.darkMode?-4:-1;for(let B=0;B<5;B++)this["surface"+B]=this["surface"+B]||In(this.mainBkg,{h:180,s:-15,l:a*(5+B*3)}),this["surfacePeer"+B]=this["surfacePeer"+B]||In(this.mainBkg,{h:180,s:-15,l:a*(8+B*3)});this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||In(this.primaryColor,{h:64}),this.fillType3=this.fillType3||In(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||In(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||In(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||In(this.primaryColor,{h:128}),this.fillType7=this.fillType7||In(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||In(this.primaryColor,{l:-10}),this.pie5=this.pie5||In(this.secondaryColor,{l:-10}),this.pie6=this.pie6||In(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||In(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||In(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||In(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||In(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||In(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||In(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||In(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||In(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||In(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||In(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||In(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||In(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||AC(this.quadrant1Fill)?Ws(this.quadrant1Fill):ba(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:((u=this.xyChart)==null?void 0:u.backgroundColor)||this.background,titleColor:((d=this.xyChart)==null?void 0:d.titleColor)||this.primaryTextColor,xAxisTitleColor:((p=this.xyChart)==null?void 0:p.xAxisTitleColor)||this.primaryTextColor,xAxisLabelColor:((v=this.xyChart)==null?void 0:v.xAxisLabelColor)||this.primaryTextColor,xAxisTickColor:((b=this.xyChart)==null?void 0:b.xAxisTickColor)||this.primaryTextColor,xAxisLineColor:((y=this.xyChart)==null?void 0:y.xAxisLineColor)||this.primaryTextColor,yAxisTitleColor:((E=this.xyChart)==null?void 0:E.yAxisTitleColor)||this.primaryTextColor,yAxisLabelColor:((_=this.xyChart)==null?void 0:_.yAxisLabelColor)||this.primaryTextColor,yAxisTickColor:((A=this.xyChart)==null?void 0:A.yAxisTickColor)||this.primaryTextColor,yAxisLineColor:((P=this.xyChart)==null?void 0:P.yAxisLineColor)||this.primaryTextColor,plotColorPalette:((R=this.xyChart)==null?void 0:R.plotColorPalette)||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?ba(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||In(this.primaryColor,{h:-30}),this.git4=this.git4||In(this.primaryColor,{h:-60}),this.git5=this.git5||In(this.primaryColor,{h:-90}),this.git6=this.git6||In(this.primaryColor,{h:60}),this.git7=this.git7||In(this.primaryColor,{h:120}),this.darkMode?(this.git0=Ws(this.git0,25),this.git1=Ws(this.git1,25),this.git2=Ws(this.git2,25),this.git3=Ws(this.git3,25),this.git4=Ws(this.git4,25),this.git5=Ws(this.git5,25),this.git6=Ws(this.git6,25),this.git7=Ws(this.git7,25)):(this.git0=ba(this.git0,25),this.git1=ba(this.git1,25),this.git2=ba(this.git2,25),this.git3=ba(this.git3,25),this.git4=ba(this.git4,25),this.git5=ba(this.git5,25),this.git6=ba(this.git6,25),this.git7=ba(this.git7,25)),this.gitInv0=this.gitInv0||Gi(this.git0),this.gitInv1=this.gitInv1||Gi(this.git1),this.gitInv2=this.gitInv2||Gi(this.git2),this.gitInv3=this.gitInv3||Gi(this.git3),this.gitInv4=this.gitInv4||Gi(this.git4),this.gitInv5=this.gitInv5||Gi(this.git5),this.gitInv6=this.gitInv6||Gi(this.git6),this.gitInv7=this.gitInv7||Gi(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||LX,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||MX}calculate(a){if(typeof a!="object"){this.updateColors();return}const u=Object.keys(a);u.forEach(d=>{this[d]=a[d]}),this.updateColors(),u.forEach(d=>{this[d]=a[d]})}};const fBt=i=>{const a=new hBt;return a.calculate(i),a};let dBt=class{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ws(this.primaryColor,16),this.tertiaryColor=In(this.primaryColor,{h:-160}),this.primaryBorderColor=Gi(this.background),this.secondaryBorderColor=Lp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Lp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Gi(this.primaryColor),this.secondaryTextColor=Gi(this.secondaryColor),this.tertiaryTextColor=Gi(this.tertiaryColor),this.lineColor=Gi(this.background),this.textColor=Gi(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ws(Gi("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=_C(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=ba("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=ba(this.sectionBkgColor,10),this.taskBorderColor=_C(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=_C(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 a,u,d,p,v,b,y,E,_,A,P;this.secondBkg=Ws(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=Ws(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=Ws(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.THEME_COLOR_LIMIT;R++)this["cScaleInv"+R]=this["cScaleInv"+R]||Gi(this["cScale"+R]);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScalePeer"+R]=this["cScalePeer"+R]||Ws(this["cScale"+R],10);for(let R=0;R<5;R++)this["surface"+R]=this["surface"+R]||In(this.mainBkg,{h:30,s:-30,l:-(-10+R*4)}),this["surfacePeer"+R]=this["surfacePeer"+R]||In(this.mainBkg,{h:30,s:-30,l:-(-7+R*4)});this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScaleLabel"+R]=this["cScaleLabel"+R]||this.scaleLabelColor;for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["pie"+R]=this["cScale"+R];this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||In(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||In(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||In(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||In(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||In(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||In(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||AC(this.quadrant1Fill)?Ws(this.quadrant1Fill):ba(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:((a=this.xyChart)==null?void 0:a.backgroundColor)||this.background,titleColor:((u=this.xyChart)==null?void 0:u.titleColor)||this.primaryTextColor,xAxisTitleColor:((d=this.xyChart)==null?void 0:d.xAxisTitleColor)||this.primaryTextColor,xAxisLabelColor:((p=this.xyChart)==null?void 0:p.xAxisLabelColor)||this.primaryTextColor,xAxisTickColor:((v=this.xyChart)==null?void 0:v.xAxisTickColor)||this.primaryTextColor,xAxisLineColor:((b=this.xyChart)==null?void 0:b.xAxisLineColor)||this.primaryTextColor,yAxisTitleColor:((y=this.xyChart)==null?void 0:y.yAxisTitleColor)||this.primaryTextColor,yAxisLabelColor:((E=this.xyChart)==null?void 0:E.yAxisLabelColor)||this.primaryTextColor,yAxisTickColor:((_=this.xyChart)==null?void 0:_.yAxisTickColor)||this.primaryTextColor,yAxisLineColor:((A=this.xyChart)==null?void 0:A.yAxisLineColor)||this.primaryTextColor,plotColorPalette:((P=this.xyChart)==null?void 0:P.plotColorPalette)||"#3498db,#2ecc71,#e74c3c,#f1c40f,#bdc3c7,#ffffff,#34495e,#9b59b6,#1abc9c,#e67e22"},this.classText=this.primaryTextColor,this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?ba(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=Ws(this.secondaryColor,20),this.git1=Ws(this.pie2||this.secondaryColor,20),this.git2=Ws(this.pie3||this.tertiaryColor,20),this.git3=Ws(this.pie4||In(this.primaryColor,{h:-30}),20),this.git4=Ws(this.pie5||In(this.primaryColor,{h:-60}),20),this.git5=Ws(this.pie6||In(this.primaryColor,{h:-90}),10),this.git6=Ws(this.pie7||In(this.primaryColor,{h:60}),10),this.git7=Ws(this.pie8||In(this.primaryColor,{h:120}),20),this.gitInv0=this.gitInv0||Gi(this.git0),this.gitInv1=this.gitInv1||Gi(this.git1),this.gitInv2=this.gitInv2||Gi(this.git2),this.gitInv3=this.gitInv3||Gi(this.git3),this.gitInv4=this.gitInv4||Gi(this.git4),this.gitInv5=this.gitInv5||Gi(this.git5),this.gitInv6=this.gitInv6||Gi(this.git6),this.gitInv7=this.gitInv7||Gi(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||Gi(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||Gi(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||Ws(this.background,12),this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||Ws(this.background,2)}calculate(a){if(typeof a!="object"){this.updateColors();return}const u=Object.keys(a);u.forEach(d=>{this[d]=a[d]}),this.updateColors(),u.forEach(d=>{this[d]=a[d]})}};const gBt=i=>{const a=new dBt;return a.calculate(i),a};let pBt=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=Lp(this.primaryColor,this.darkMode),this.secondaryBorderColor=Lp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Lp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Gi(this.primaryColor),this.secondaryTextColor=Gi(this.secondaryColor),this.tertiaryTextColor=Gi(this.tertiaryColor),this.lineColor=Gi(this.background),this.textColor=Gi(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=_C(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 a,u,d,p,v,b,y,E,_,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"]||ba(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||ba(this.tertiaryColor,40);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScale"+R]=ba(this["cScale"+R],10),this["cScalePeer"+R]=this["cScalePeer"+R]||ba(this["cScale"+R],25);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScaleInv"+R]=this["cScaleInv"+R]||In(this["cScale"+R],{h:180});for(let R=0;R<5;R++)this["surface"+R]=this["surface"+R]||In(this.mainBkg,{h:30,l:-(5+R*5)}),this["surfacePeer"+R]=this["surfacePeer"+R]||In(this.mainBkg,{h:30,l:-(7+R*5)});if(this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor,this.labelTextColor!=="calculated"){this.cScaleLabel0=this.cScaleLabel0||Gi(this.labelTextColor),this.cScaleLabel3=this.cScaleLabel3||Gi(this.labelTextColor);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScaleLabel"+R]=this["cScaleLabel"+R]||this.labelTextColor}this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.textColor,this.edgeLabelBackground=this.labelBackground,this.actorBorder=Ws(this.border1,23),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.signalColor=this.textColor,this.signalTextColor=this.textColor,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,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||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,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.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||In(this.tertiaryColor,{l:-40}),this.pie4=this.pie4||In(this.primaryColor,{l:-10}),this.pie5=this.pie5||In(this.secondaryColor,{l:-30}),this.pie6=this.pie6||In(this.tertiaryColor,{l:-20}),this.pie7=this.pie7||In(this.primaryColor,{h:60,l:-20}),this.pie8=this.pie8||In(this.primaryColor,{h:-60,l:-40}),this.pie9=this.pie9||In(this.primaryColor,{h:120,l:-40}),this.pie10=this.pie10||In(this.primaryColor,{h:60,l:-40}),this.pie11=this.pie11||In(this.primaryColor,{h:-90,l:-40}),this.pie12=this.pie12||In(this.primaryColor,{h:120,l:-30}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||In(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||In(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||In(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||In(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||In(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||In(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||AC(this.quadrant1Fill)?Ws(this.quadrant1Fill):ba(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:((a=this.xyChart)==null?void 0:a.backgroundColor)||this.background,titleColor:((u=this.xyChart)==null?void 0:u.titleColor)||this.primaryTextColor,xAxisTitleColor:((d=this.xyChart)==null?void 0:d.xAxisTitleColor)||this.primaryTextColor,xAxisLabelColor:((p=this.xyChart)==null?void 0:p.xAxisLabelColor)||this.primaryTextColor,xAxisTickColor:((v=this.xyChart)==null?void 0:v.xAxisTickColor)||this.primaryTextColor,xAxisLineColor:((b=this.xyChart)==null?void 0:b.xAxisLineColor)||this.primaryTextColor,yAxisTitleColor:((y=this.xyChart)==null?void 0:y.yAxisTitleColor)||this.primaryTextColor,yAxisLabelColor:((E=this.xyChart)==null?void 0:E.yAxisLabelColor)||this.primaryTextColor,yAxisTickColor:((_=this.xyChart)==null?void 0:_.yAxisTickColor)||this.primaryTextColor,yAxisLineColor:((A=this.xyChart)==null?void 0:A.yAxisLineColor)||this.primaryTextColor,plotColorPalette:((P=this.xyChart)==null?void 0:P.plotColorPalette)||"#ECECFF,#8493A6,#FFC3A0,#DCDDE1,#B8E994,#D1A36F,#C3CDE6,#FFB6C1,#496078,#F8F3E3"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.labelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||In(this.primaryColor,{h:-30}),this.git4=this.git4||In(this.primaryColor,{h:-60}),this.git5=this.git5||In(this.primaryColor,{h:-90}),this.git6=this.git6||In(this.primaryColor,{h:60}),this.git7=this.git7||In(this.primaryColor,{h:120}),this.darkMode?(this.git0=Ws(this.git0,25),this.git1=Ws(this.git1,25),this.git2=Ws(this.git2,25),this.git3=Ws(this.git3,25),this.git4=Ws(this.git4,25),this.git5=Ws(this.git5,25),this.git6=Ws(this.git6,25),this.git7=Ws(this.git7,25)):(this.git0=ba(this.git0,25),this.git1=ba(this.git1,25),this.git2=ba(this.git2,25),this.git3=ba(this.git3,25),this.git4=ba(this.git4,25),this.git5=ba(this.git5,25),this.git6=ba(this.git6,25),this.git7=ba(this.git7,25)),this.gitInv0=this.gitInv0||ba(Gi(this.git0),25),this.gitInv1=this.gitInv1||Gi(this.git1),this.gitInv2=this.gitInv2||Gi(this.git2),this.gitInv3=this.gitInv3||Gi(this.git3),this.gitInv4=this.gitInv4||Gi(this.git4),this.gitInv5=this.gitInv5||Gi(this.git5),this.gitInv6=this.gitInv6||Gi(this.git6),this.gitInv7=this.gitInv7||Gi(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||Gi(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||Gi(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||LX,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||MX}calculate(a){if(typeof a!="object"){this.updateColors();return}const u=Object.keys(a);u.forEach(d=>{this[d]=a[d]}),this.updateColors(),u.forEach(d=>{this[d]=a[d]})}};const S2e=i=>{const a=new pBt;return a.calculate(i),a};let bBt=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=Ws("#cde498",10),this.primaryBorderColor=Lp(this.primaryColor,this.darkMode),this.secondaryBorderColor=Lp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Lp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Gi(this.primaryColor),this.secondaryTextColor=Gi(this.secondaryColor),this.tertiaryTextColor=Gi(this.primaryColor),this.lineColor=Gi(this.background),this.textColor=Gi(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 a,u,d,p,v,b,y,E,_,A,P;this.actorBorder=ba(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"]||ba(this.secondaryColor,45),this["cScalePeer2"]=this["cScalePeer2"]||ba(this.tertiaryColor,40);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScale"+R]=ba(this["cScale"+R],10),this["cScalePeer"+R]=this["cScalePeer"+R]||ba(this["cScale"+R],25);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScaleInv"+R]=this["cScaleInv"+R]||In(this["cScale"+R],{h:180});this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor;for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScaleLabel"+R]=this["cScaleLabel"+R]||this.scaleLabelColor;for(let R=0;R<5;R++)this["surface"+R]=this["surface"+R]||In(this.mainBkg,{h:30,s:-30,l:-(5+R*5)}),this["surfacePeer"+R]=this["surfacePeer"+R]||In(this.mainBkg,{h:30,s:-30,l:-(8+R*5)});this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.taskBorderColor=this.border1,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=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||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,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.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||In(this.primaryColor,{l:-30}),this.pie5=this.pie5||In(this.secondaryColor,{l:-30}),this.pie6=this.pie6||In(this.tertiaryColor,{h:40,l:-40}),this.pie7=this.pie7||In(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||In(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||In(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||In(this.primaryColor,{h:60,l:-50}),this.pie11=this.pie11||In(this.primaryColor,{h:-60,l:-50}),this.pie12=this.pie12||In(this.primaryColor,{h:120,l:-50}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||In(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||In(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||In(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||In(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||In(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||In(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||AC(this.quadrant1Fill)?Ws(this.quadrant1Fill):ba(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:((a=this.xyChart)==null?void 0:a.backgroundColor)||this.background,titleColor:((u=this.xyChart)==null?void 0:u.titleColor)||this.primaryTextColor,xAxisTitleColor:((d=this.xyChart)==null?void 0:d.xAxisTitleColor)||this.primaryTextColor,xAxisLabelColor:((p=this.xyChart)==null?void 0:p.xAxisLabelColor)||this.primaryTextColor,xAxisTickColor:((v=this.xyChart)==null?void 0:v.xAxisTickColor)||this.primaryTextColor,xAxisLineColor:((b=this.xyChart)==null?void 0:b.xAxisLineColor)||this.primaryTextColor,yAxisTitleColor:((y=this.xyChart)==null?void 0:y.yAxisTitleColor)||this.primaryTextColor,yAxisLabelColor:((E=this.xyChart)==null?void 0:E.yAxisLabelColor)||this.primaryTextColor,yAxisTickColor:((_=this.xyChart)==null?void 0:_.yAxisTickColor)||this.primaryTextColor,yAxisLineColor:((A=this.xyChart)==null?void 0:A.yAxisLineColor)||this.primaryTextColor,plotColorPalette:((P=this.xyChart)==null?void 0:P.plotColorPalette)||"#CDE498,#FF6B6B,#A0D2DB,#D7BDE2,#F0F0F0,#FFC3A0,#7FD8BE,#FF9A8B,#FAF3E0,#FFF176"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||In(this.primaryColor,{h:-30}),this.git4=this.git4||In(this.primaryColor,{h:-60}),this.git5=this.git5||In(this.primaryColor,{h:-90}),this.git6=this.git6||In(this.primaryColor,{h:60}),this.git7=this.git7||In(this.primaryColor,{h:120}),this.darkMode?(this.git0=Ws(this.git0,25),this.git1=Ws(this.git1,25),this.git2=Ws(this.git2,25),this.git3=Ws(this.git3,25),this.git4=Ws(this.git4,25),this.git5=Ws(this.git5,25),this.git6=Ws(this.git6,25),this.git7=Ws(this.git7,25)):(this.git0=ba(this.git0,25),this.git1=ba(this.git1,25),this.git2=ba(this.git2,25),this.git3=ba(this.git3,25),this.git4=ba(this.git4,25),this.git5=ba(this.git5,25),this.git6=ba(this.git6,25),this.git7=ba(this.git7,25)),this.gitInv0=this.gitInv0||Gi(this.git0),this.gitInv1=this.gitInv1||Gi(this.git1),this.gitInv2=this.gitInv2||Gi(this.git2),this.gitInv3=this.gitInv3||Gi(this.git3),this.gitInv4=this.gitInv4||Gi(this.git4),this.gitInv5=this.gitInv5||Gi(this.git5),this.gitInv6=this.gitInv6||Gi(this.git6),this.gitInv7=this.gitInv7||Gi(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||Gi(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||Gi(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||LX,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||MX}calculate(a){if(typeof a!="object"){this.updateColors();return}const u=Object.keys(a);u.forEach(d=>{this[d]=a[d]}),this.updateColors(),u.forEach(d=>{this[d]=a[d]})}};const mBt=i=>{const a=new bBt;return a.calculate(i),a};class vBt{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Ws(this.contrast,55),this.background="#ffffff",this.tertiaryColor=In(this.primaryColor,{h:-160}),this.primaryBorderColor=Lp(this.primaryColor,this.darkMode),this.secondaryBorderColor=Lp(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Lp(this.tertiaryColor,this.darkMode),this.primaryTextColor=Gi(this.primaryColor),this.secondaryTextColor=Gi(this.secondaryColor),this.tertiaryTextColor=Gi(this.tertiaryColor),this.lineColor=Gi(this.background),this.textColor=Gi(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 a,u,d,p,v,b,y,E,_,A,P;this.secondBkg=Ws(this.contrast,55),this.border2=this.contrast,this.actorBorder=Ws(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.THEME_COLOR_LIMIT;R++)this["cScaleInv"+R]=this["cScaleInv"+R]||Gi(this["cScale"+R]);for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this.darkMode?this["cScalePeer"+R]=this["cScalePeer"+R]||Ws(this["cScale"+R],10):this["cScalePeer"+R]=this["cScalePeer"+R]||ba(this["cScale"+R],10);this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor),this.cScaleLabel0=this.cScaleLabel0||this.cScale1,this.cScaleLabel2=this.cScaleLabel2||this.cScale1;for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["cScaleLabel"+R]=this["cScaleLabel"+R]||this.scaleLabelColor;for(let R=0;R<5;R++)this["surface"+R]=this["surface"+R]||In(this.mainBkg,{l:-(5+R*5)}),this["surfacePeer"+R]=this["surfacePeer"+R]||In(this.mainBkg,{l:-(8+R*5)});this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.text,this.sectionBkgColor=Ws(this.contrast,30),this.sectionBkgColor2=Ws(this.contrast,30),this.taskBorderColor=ba(this.contrast,10),this.taskBkgColor=this.contrast,this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor=this.text,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=this.mainBkg,this.gridColor=Ws(this.border1,30),this.doneTaskBkgColor=this.done,this.doneTaskBorderColor=this.lineColor,this.critBkgColor=this.critical,this.critBorderColor=ba(this.critBkgColor,10),this.todayLineColor=this.critBkgColor,this.transitionColor=this.transitionColor||"#000",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||"#f4f4f4",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.stateBorder=this.stateBorder||"#000",this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#222",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.classText=this.primaryTextColor,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});for(let R=0;R<this.THEME_COLOR_LIMIT;R++)this["pie"+R]=this["cScale"+R];this.pie12=this.pie0,this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||In(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||In(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||In(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||In(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||In(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||In(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||AC(this.quadrant1Fill)?Ws(this.quadrant1Fill):ba(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:((a=this.xyChart)==null?void 0:a.backgroundColor)||this.background,titleColor:((u=this.xyChart)==null?void 0:u.titleColor)||this.primaryTextColor,xAxisTitleColor:((d=this.xyChart)==null?void 0:d.xAxisTitleColor)||this.primaryTextColor,xAxisLabelColor:((p=this.xyChart)==null?void 0:p.xAxisLabelColor)||this.primaryTextColor,xAxisTickColor:((v=this.xyChart)==null?void 0:v.xAxisTickColor)||this.primaryTextColor,xAxisLineColor:((b=this.xyChart)==null?void 0:b.xAxisLineColor)||this.primaryTextColor,yAxisTitleColor:((y=this.xyChart)==null?void 0:y.yAxisTitleColor)||this.primaryTextColor,yAxisLabelColor:((E=this.xyChart)==null?void 0:E.yAxisLabelColor)||this.primaryTextColor,yAxisTickColor:((_=this.xyChart)==null?void 0:_.yAxisTickColor)||this.primaryTextColor,yAxisLineColor:((A=this.xyChart)==null?void 0:A.yAxisLineColor)||this.primaryTextColor,plotColorPalette:((P=this.xyChart)==null?void 0:P.plotColorPalette)||"#EEE,#6BB8E4,#8ACB88,#C7ACD6,#E8DCC2,#FFB2A8,#FFF380,#7E8D91,#FFD8B1,#FAF3E0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=ba(this.pie1,25)||this.primaryColor,this.git1=this.pie2||this.secondaryColor,this.git2=this.pie3||this.tertiaryColor,this.git3=this.pie4||In(this.primaryColor,{h:-30}),this.git4=this.pie5||In(this.primaryColor,{h:-60}),this.git5=this.pie6||In(this.primaryColor,{h:-90}),this.git6=this.pie7||In(this.primaryColor,{h:60}),this.git7=this.pie8||In(this.primaryColor,{h:120}),this.gitInv0=this.gitInv0||Gi(this.git0),this.gitInv1=this.gitInv1||Gi(this.git1),this.gitInv2=this.gitInv2||Gi(this.git2),this.gitInv3=this.gitInv3||Gi(this.git3),this.gitInv4=this.gitInv4||Gi(this.git4),this.gitInv5=this.gitInv5||Gi(this.git5),this.gitInv6=this.gitInv6||Gi(this.git6),this.gitInv7=this.gitInv7||Gi(this.git7),this.branchLabelColor=this.branchLabelColor||this.labelTextColor,this.gitBranchLabel0=this.branchLabelColor,this.gitBranchLabel1="white",this.gitBranchLabel2=this.branchLabelColor,this.gitBranchLabel3="white",this.gitBranchLabel4=this.branchLabelColor,this.gitBranchLabel5=this.branchLabelColor,this.gitBranchLabel6=this.branchLabelColor,this.gitBranchLabel7=this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||LX,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||MX}calculate(a){if(typeof a!="object"){this.updateColors();return}const u=Object.keys(a);u.forEach(d=>{this[d]=a[d]}),this.updateColors(),u.forEach(d=>{this[d]=a[d]})}}const C7={base:{getThemeVariables:fBt},dark:{getThemeVariables:gBt},default:{getThemeVariables:S2e},forest:{getThemeVariables:mBt},neutral:{getThemeVariables:i=>{const a=new vBt;return a.calculate(i),a}}},S7={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},JRe={...S7,deterministicIDSeed:void 0,themeCSS:void 0,themeVariables:C7.default.getThemeVariables(),sequence:{...S7.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:{...S7.gantt,tickInterval:void 0,useWidth:void 0},c4:{...S7.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:{...S7.pie,useWidth:984},xyChart:{...S7.xyChart,useWidth:void 0},requirement:{...S7.requirement,useWidth:void 0},gitGraph:{...S7.gitGraph,useMaxWidth:!1},sankey:{...S7.sankey,useMaxWidth:!1}},ZRe=(i,a="")=>Object.keys(i).reduce((u,d)=>Array.isArray(i[d])?u:typeof i[d]=="object"&&i[d]!==null?[...u,a+d,...ZRe(i[d],"")]:[...u,a+d],[]),wBt=new Set(ZRe(JRe,"")),nh=JRe,DX=i=>{if(Xe.debug("sanitizeDirective called with",i),!(typeof i!="object"||i==null)){if(Array.isArray(i)){i.forEach(a=>DX(a));return}for(const a of Object.keys(i)){if(Xe.debug("Checking key",a),a.startsWith("__")||a.includes("proto")||a.includes("constr")||!wBt.has(a)||i[a]==null){Xe.debug("sanitize deleting key: ",a),delete i[a];continue}if(typeof i[a]=="object"){Xe.debug("sanitizing object",a),DX(i[a]);continue}const u=["themeCSS","fontFamily","altFontFamily"];for(const d of u)a.includes(d)&&(Xe.debug("sanitizing css option",a),i[a]=eje(i[a]))}if(i.themeVariables)for(const a of Object.keys(i.themeVariables)){const u=i.themeVariables[a];u!=null&&u.match&&!u.match(/^[\d "#%(),.;A-Za-z]+$/)&&(i.themeVariables[a]="")}Xe.debug("After sanitization",i)}},eje=i=>{let a=0,u=0;for(const d of i){if(a<u)return"{ /* ERROR: Unbalanced CSS */ }";d==="{"?a++:d==="}"&&u++}return a!==u?"{ /* ERROR: Unbalanced CSS */ }":i},tje=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,tR=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,yBt=/\s*%%.*\n/gm;class nje extends Error{constructor(a){super(a),this.name="UnknownDiagramError"}}const mD={},IX=function(i,a){i=i.replace(tje,"").replace(tR,"").replace(yBt,`12`);for(const[u,{detector:d}]of Object.entries(mD))if(d(i,a))return u;throw new nje(`No diagram type detected matching given configuration for text: ${i}`)},rje=(...i)=>{for(const{id:a,detector:u,loader:d}of i)ije(a,u,d)},ije=(i,a,u)=>{mD[i]?Xe.error(`Detector with key ${i} already exists`):mD[i]={detector:a,loader:u},Xe.debug(`Detector with key ${i} added${u?" with loader":""}`)},xBt=i=>mD[i].loader,_2e=(i,a,{depth:u=2,clobber:d=!1}={})=>{const p={depth:u,clobber:d};return Array.isArray(a)&&!Array.isArray(i)?(a.forEach(v=>_2e(i,v,p)),i):Array.isArray(a)&&Array.isArray(i)?(a.forEach(v=>{i.includes(v)||i.push(v)}),i):i===void 0||u<=0?i!=null&&typeof i=="object"&&typeof a=="object"?Object.assign(i,a):a:(a!==void 0&&typeof i=="object"&&typeof a=="object"&&Object.keys(a).forEach(v=>{typeof a[v]=="object"&&(i[v]===void 0||typeof i[v]=="object")?(i[v]===void 0&&(i[v]=Array.isArray(a[v])?[]:{}),i[v]=_2e(i[v],a[v],{depth:u-1,clobber:d})):(d||typeof i[v]!="object"&&typeof a[v]!="object")&&(i[v]=a[v])}),i)},id=_2e;var kBt=typeof global=="object"&&global&&global.Object===Object&&global;const sje=kBt;var TBt=typeof self=="object"&&self&&self.Object===Object&&self,EBt=sje||TBt||Function("return this")();const j3=EBt;var CBt=j3.Symbol;const zv=CBt;var aje=Object.prototype,SBt=aje.hasOwnProperty,_Bt=aje.toString,nR=zv?zv.toStringTag:void 0;function ABt(i){var a=SBt.call(i,nR),u=i[nR];try{i[nR]=void 0;var d=!0}catch{}var p=_Bt.call(i);return d&&(a?i[nR]=u:delete i[nR]),p}var LBt=Object.prototype,MBt=LBt.toString;function DBt(i){return MBt.call(i)}var IBt="[object Null]",OBt="[object Undefined]",oje=zv?zv.toStringTag:void 0;function LC(i){return i==null?i===void 0?OBt:IBt:oje&&oje in Object(i)?ABt(i):DBt(i)}function dm(i){var a=typeof i;return i!=null&&(a=="object"||a=="function")}var NBt="[object AsyncFunction]",PBt="[object Function]",BBt="[object GeneratorFunction]",FBt="[object Proxy]";function vD(i){if(!dm(i))return!1;var a=LC(i);return a==PBt||a==BBt||a==NBt||a==FBt}var RBt=j3["__core-js_shared__"];const A2e=RBt;var cje=function(){var i=/[^.]+$/.exec(A2e&&A2e.keys&&A2e.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function jBt(i){return!!cje&&cje in i}var $Bt=Function.prototype,zBt=$Bt.toString;function MC(i){if(i!=null){try{return zBt.call(i)}catch{}try{return i+""}catch{}}return""}var qBt=/[\\^$.*+?()[\]{}|]/g,HBt=/^\[object .+?Constructor\]$/,UBt=Function.prototype,VBt=Object.prototype,GBt=UBt.toString,KBt=VBt.hasOwnProperty,WBt=RegExp("^"+GBt.call(KBt).replace(qBt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function YBt(i){if(!dm(i)||jBt(i))return!1;var a=vD(i)?WBt:HBt;return a.test(MC(i))}function XBt(i,a){return i==null?void 0:i[a]}function DC(i,a){var u=XBt(i,a);return YBt(u)?u:void 0}var QBt=DC(Object,"create");const rR=QBt;function JBt(){this.__data__=rR?rR(null):{},this.size=0}function ZBt(i){var a=this.has(i)&&delete this.__data__[i];return this.size-=a?1:0,a}var eFt="__lodash_hash_undefined__",tFt=Object.prototype,nFt=tFt.hasOwnProperty;function rFt(i){var a=this.__data__;if(rR){var u=a[i];return u===eFt?void 0:u}return nFt.call(a,i)?a[i]:void 0}var iFt=Object.prototype,sFt=iFt.hasOwnProperty;function aFt(i){var a=this.__data__;return rR?a[i]!==void 0:sFt.call(a,i)}var oFt="__lodash_hash_undefined__";function cFt(i,a){var u=this.__data__;return this.size+=this.has(i)?0:1,u[i]=rR&&a===void 0?oFt:a,this}function IC(i){var a=-1,u=i==null?0:i.length;for(this.clear();++a<u;){var d=i[a];this.set(d[0],d[1])}}IC.prototype.clear=JBt,IC.prototype.delete=ZBt,IC.prototype.get=rFt,IC.prototype.has=aFt,IC.prototype.set=cFt;function uFt(){this.__data__=[],this.size=0}function wD(i,a){return i===a||i!==i&&a!==a}function OX(i,a){for(var u=i.length;u--;)if(wD(i[u][0],a))return u;return-1}var lFt=Array.prototype,hFt=lFt.splice;function fFt(i){var a=this.__data__,u=OX(a,i);if(u<0)return!1;var d=a.length-1;return u==d?a.pop():hFt.call(a,u,1),--this.size,!0}function dFt(i){var a=this.__data__,u=OX(a,i);return u<0?void 0:a[u][1]}function gFt(i){return OX(this.__data__,i)>-1}function pFt(i,a){var u=this.__data__,d=OX(u,i);return d<0?(++this.size,u.push([i,a])):u[d][1]=a,this}function _7(i){var a=-1,u=i==null?0:i.length;for(this.clear();++a<u;){var d=i[a];this.set(d[0],d[1])}}_7.prototype.clear=uFt,_7.prototype.delete=fFt,_7.prototype.get=dFt,_7.prototype.has=gFt,_7.prototype.set=pFt;var bFt=DC(j3,"Map");const iR=bFt;function mFt(){this.size=0,this.__data__={hash:new IC,map:new(iR||_7),string:new IC}}function vFt(i){var a=typeof i;return a=="string"||a=="number"||a=="symbol"||a=="boolean"?i!=="__proto__":i===null}function NX(i,a){var u=i.__data__;return vFt(a)?u[typeof a=="string"?"string":"hash"]:u.map}function wFt(i){var a=NX(this,i).delete(i);return this.size-=a?1:0,a}function yFt(i){return NX(this,i).get(i)}function xFt(i){return NX(this,i).has(i)}function kFt(i,a){var u=NX(this,i),d=u.size;return u.set(i,a),this.size+=u.size==d?0:1,this}function A7(i){var a=-1,u=i==null?0:i.length;for(this.clear();++a<u;){var d=i[a];this.set(d[0],d[1])}}A7.prototype.clear=mFt,A7.prototype.delete=wFt,A7.prototype.get=yFt,A7.prototype.has=xFt,A7.prototype.set=kFt;var TFt="Expected a function";function yD(i,a){if(typeof i!="function"||a!=null&&typeof a!="function")throw new TypeError(TFt);var u=function(){var d=arguments,p=a?a.apply(this,d):d[0],v=u.cache;if(v.has(p))return v.get(p);var b=i.apply(this,d);return u.cache=v.set(p,b)||v,b};return u.cache=new(yD.Cache||A7),u}yD.Cache=A7;function EFt(){this.__data__=new _7,this.size=0}function CFt(i){var a=this.__data__,u=a.delete(i);return this.size=a.size,u}function SFt(i){return this.__data__.get(i)}function _Ft(i){return this.__data__.has(i)}var AFt=200;function LFt(i,a){var u=this.__data__;if(u instanceof _7){var d=u.__data__;if(!iR||d.length<AFt-1)return d.push([i,a]),this.size=++u.size,this;u=this.__data__=new A7(d)}return u.set(i,a),this.size=u.size,this}function $3(i){var a=this.__data__=new _7(i);this.size=a.size}$3.prototype.clear=EFt,$3.prototype.delete=CFt,$3.prototype.get=SFt,$3.prototype.has=_Ft,$3.prototype.set=LFt;var MFt=function(){try{var i=DC(Object,"defineProperty");return i({},"",{}),i}catch{}}();const PX=MFt;function BX(i,a,u){a=="__proto__"&&PX?PX(i,a,{configurable:!0,enumerable:!0,value:u,writable:!0}):i[a]=u}function L2e(i,a,u){(u!==void 0&&!wD(i[a],u)||u===void 0&&!(a in i))&&BX(i,a,u)}function DFt(i){return function(a,u,d){for(var p=-1,v=Object(a),b=d(a),y=b.length;y--;){var E=b[i?y:++p];if(u(v[E],E,v)===!1)break}return a}}var IFt=DFt();const M2e=IFt;var uje=typeof exports=="object"&&exports&&!exports.nodeType&&exports,lje=uje&&typeof module=="object"&&module&&!module.nodeType&&module,OFt=lje&&lje.exports===uje,hje=OFt?j3.Buffer:void 0,fje=hje?hje.allocUnsafe:void 0;function dje(i,a){if(a)return i.slice();var u=i.length,d=fje?fje(u):new i.constructor(u);return i.copy(d),d}var NFt=j3.Uint8Array;const FX=NFt;function D2e(i){var a=new i.constructor(i.byteLength);return new FX(a).set(new FX(i)),a}function gje(i,a){var u=a?D2e(i.buffer):i.buffer;return new i.constructor(u,i.byteOffset,i.length)}function pje(i,a){var u=-1,d=i.length;for(a||(a=Array(d));++u<d;)a[u]=i[u];return a}var bje=Object.create,PFt=function(){function i(){}return function(a){if(!dm(a))return{};if(bje)return bje(a);i.prototype=a;var u=new i;return i.prototype=void 0,u}}();const BFt=PFt;function mje(i,a){return function(u){return i(a(u))}}var FFt=mje(Object.getPrototypeOf,Object);const I2e=FFt;var RFt=Object.prototype;function RX(i){var a=i&&i.constructor,u=typeof a=="function"&&a.prototype||RFt;return i===u}function vje(i){return typeof i.constructor=="function"&&!RX(i)?BFt(I2e(i)):{}}function V4(i){return i!=null&&typeof i=="object"}var jFt="[object Arguments]";function wje(i){return V4(i)&&LC(i)==jFt}var yje=Object.prototype,$Ft=yje.hasOwnProperty,zFt=yje.propertyIsEnumerable,qFt=wje(function(){return arguments}())?wje:function(i){return V4(i)&&$Ft.call(i,"callee")&&!zFt.call(i,"callee")};const xD=qFt;var HFt=Array.isArray;const D0=HFt;var UFt=9007199254740991;function O2e(i){return typeof i=="number"&&i>-1&&i%1==0&&i<=UFt}function y9(i){return i!=null&&O2e(i.length)&&!vD(i)}function xje(i){return V4(i)&&y9(i)}function VFt(){return!1}var kje=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Tje=kje&&typeof module=="object"&&module&&!module.nodeType&&module,GFt=Tje&&Tje.exports===kje,Eje=GFt?j3.Buffer:void 0,KFt=Eje?Eje.isBuffer:void 0,WFt=KFt||VFt;const kD=WFt;var YFt="[object Object]",XFt=Function.prototype,QFt=Object.prototype,Cje=XFt.toString,JFt=QFt.hasOwnProperty,ZFt=Cje.call(Object);function Sje(i){if(!V4(i)||LC(i)!=YFt)return!1;var a=I2e(i);if(a===null)return!0;var u=JFt.call(a,"constructor")&&a.constructor;return typeof u=="function"&&u instanceof u&&Cje.call(u)==ZFt}var eRt="[object Arguments]",tRt="[object Array]",nRt="[object Boolean]",rRt="[object Date]",iRt="[object Error]",sRt="[object Function]",aRt="[object Map]",oRt="[object Number]",cRt="[object Object]",uRt="[object RegExp]",lRt="[object Set]",hRt="[object String]",fRt="[object WeakMap]",dRt="[object ArrayBuffer]",gRt="[object DataView]",pRt="[object Float32Array]",bRt="[object Float64Array]",mRt="[object Int8Array]",vRt="[object Int16Array]",wRt="[object Int32Array]",yRt="[object Uint8Array]",xRt="[object Uint8ClampedArray]",kRt="[object Uint16Array]",TRt="[object Uint32Array]",rh={};rh[pRt]=rh[bRt]=rh[mRt]=rh[vRt]=rh[wRt]=rh[yRt]=rh[xRt]=rh[kRt]=rh[TRt]=!0,rh[eRt]=rh[tRt]=rh[dRt]=rh[nRt]=rh[gRt]=rh[rRt]=rh[iRt]=rh[sRt]=rh[aRt]=rh[oRt]=rh[cRt]=rh[uRt]=rh[lRt]=rh[hRt]=rh[fRt]=!1;function ERt(i){return V4(i)&&O2e(i.length)&&!!rh[LC(i)]}function jX(i){return function(a){return i(a)}}var _je=typeof exports=="object"&&exports&&!exports.nodeType&&exports,sR=_je&&typeof module=="object"&&module&&!module.nodeType&&module,CRt=sR&&sR.exports===_je,N2e=CRt&&sje.process,SRt=function(){try{var i=sR&&sR.require&&sR.require("util").types;return i||N2e&&N2e.binding&&N2e.binding("util")}catch{}}();const TD=SRt;var Aje=TD&&TD.isTypedArray,_Rt=Aje?jX(Aje):ERt;const $X=_Rt;function P2e(i,a){if(!(a==="constructor"&&typeof i[a]=="function")&&a!="__proto__")return i[a]}var ARt=Object.prototype,LRt=ARt.hasOwnProperty;function zX(i,a,u){var d=i[a];(!(LRt.call(i,a)&&wD(d,u))||u===void 0&&!(a in i))&&BX(i,a,u)}function aR(i,a,u,d){var p=!u;u||(u={});for(var v=-1,b=a.length;++v<b;){var y=a[v],E=d?d(u[y],i[y],y,u,i):void 0;E===void 0&&(E=i[y]),p?BX(u,y,E):zX(u,y,E)}return u}function MRt(i,a){for(var u=-1,d=Array(i);++u<i;)d[u]=a(u);return d}var DRt=9007199254740991,IRt=/^(?:0|[1-9]\d*)$/;function qX(i,a){var u=typeof i;return a=a??DRt,!!a&&(u=="number"||u!="symbol"&&IRt.test(i))&&i>-1&&i%1==0&&i<a}var ORt=Object.prototype,NRt=ORt.hasOwnProperty;function Lje(i,a){var u=D0(i),d=!u&&xD(i),p=!u&&!d&&kD(i),v=!u&&!d&&!p&&$X(i),b=u||d||p||v,y=b?MRt(i.length,String):[],E=y.length;for(var _ in i)(a||NRt.call(i,_))&&!(b&&(_=="length"||p&&(_=="offset"||_=="parent")||v&&(_=="buffer"||_=="byteLength"||_=="byteOffset")||qX(_,E)))&&y.push(_);return y}function PRt(i){var a=[];if(i!=null)for(var u in Object(i))a.push(u);return a}var BRt=Object.prototype,FRt=BRt.hasOwnProperty;function RRt(i){if(!dm(i))return PRt(i);var a=RX(i),u=[];for(var d in i)d=="constructor"&&(a||!FRt.call(i,d))||u.push(d);return u}function OC(i){return y9(i)?Lje(i,!0):RRt(i)}function jRt(i){return aR(i,OC(i))}function $Rt(i,a,u,d,p,v,b){var y=P2e(i,u),E=P2e(a,u),_=b.get(E);if(_){L2e(i,u,_);return}var A=v?v(y,E,u+"",i,a,b):void 0,P=A===void 0;if(P){var R=D0(E),B=!R&&kD(E),j=!R&&!B&&$X(E);A=E,R||B||j?D0(y)?A=y:xje(y)?A=pje(y):B?(P=!1,A=dje(E,!0)):j?(P=!1,A=gje(E,!0)):A=[]:Sje(E)||xD(E)?(A=y,xD(y)?A=jRt(y):(!dm(y)||vD(y))&&(A=vje(E))):P=!1}P&&(b.set(E,A),p(A,E,d,v,b),b.delete(E)),L2e(i,u,A)}function Mje(i,a,u,d,p){i!==a&&M2e(a,function(v,b){if(p||(p=new $3),dm(v))$Rt(i,a,b,u,Mje,d,p);else{var y=d?d(P2e(i,b),v,b+"",i,a,p):void 0;y===void 0&&(y=v),L2e(i,b,y)}},OC)}function NC(i){return i}function zRt(i,a,u){switch(u.length){case 0:return i.call(a);case 1:return i.call(a,u[0]);case 2:return i.call(a,u[0],u[1]);case 3:return i.call(a,u[0],u[1],u[2])}return i.apply(a,u)}var Dje=Math.max;function Ije(i,a,u){return a=Dje(a===void 0?i.length-1:a,0),function(){for(var d=arguments,p=-1,v=Dje(d.length-a,0),b=Array(v);++p<v;)b[p]=d[a+p];p=-1;for(var y=Array(a+1);++p<a;)y[p]=d[p];return y[a]=u(b),zRt(i,this,y)}}function ED(i){return function(){return i}}var qRt=PX?function(i,a){return PX(i,"toString",{configurable:!0,enumerable:!1,value:ED(a),writable:!0})}:NC;const HRt=qRt;var URt=800,VRt=16,GRt=Date.now;function KRt(i){var a=0,u=0;return function(){var d=GRt(),p=VRt-(d-u);if(u=d,p>0){if(++a>=URt)return arguments[0]}else a=0;return i.apply(void 0,arguments)}}var WRt=KRt(HRt);const Oje=WRt;function HX(i,a){return Oje(Ije(i,a,NC),i+"")}function oR(i,a,u){if(!dm(u))return!1;var d=typeof a;return(d=="number"?y9(u)&&qX(a,u.length):d=="string"&&a in u)?wD(u[a],i):!1}function YRt(i){return HX(function(a,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&&oR(u[0],u[1],b)&&(v=p<3?void 0:v,p=1),a=Object(a);++d<p;){var y=u[d];y&&i(a,y,d,v)}return a})}var XRt=YRt(function(i,a,u){Mje(i,a,u)});const UX=XRt,Nje="โ",QRt={curveBasis:VF,curveBasisClosed:sPt,curveBasisOpen:aPt,curveBumpX:rPt,curveBumpY:iPt,curveBundle:oPt,curveCardinalClosed:uPt,curveCardinalOpen:lPt,curveCardinal:cPt,curveCatmullRomClosed:fPt,curveCatmullRomOpen:dPt,curveCatmullRom:hPt,curveLinear:Sp,curveLinearClosed:gPt,curveMonotoneX:pPt,curveMonotoneY:bPt,curveNatural:mPt,curveStep:vPt,curveStepAfter:yPt,curveStepBefore:wPt},JRt=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,ZRt=function(i,a){const u=Pje(i,/(?:init\b)|(?:initialize\b)/);let d={};if(Array.isArray(u)){const b=u.map(y=>y.args);DX(b),d=id(d,[...b])}else d=u.args;if(!d)return;let p=IX(i,a);const v="config";return d[v]!==void 0&&(p==="flowchart-v2"&&(p="flowchart"),d[p]=d[v],delete d[v]),d},Pje=function(i,a=null){try{const u=new RegExp(`[%]{2}(?![{]${JRt.source})(?=[}][%]{2}).*13`,"ig");i=i.trim().replace(u,"").replace(/'/gm,'"'),Xe.debug(`Detecting diagram directive${a!==null?" type:"+a:""} based on the text:${i}`);let d;const p=[];for(;(d=tR.exec(i))!==null;)if(d.index===tR.lastIndex&&tR.lastIndex++,d&&!a||a&&d[1]&&d[1].match(a)||a&&d[2]&&d[2].match(a)){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: '${a}' based on the text: '${i}'`),{type:void 0,args:null}}},ejt=function(i){return i.replace(tR,"")},tjt=function(i,a){for(const[u,d]of a.entries())if(d.match(i))return u;return-1};function qv(i,a){if(!i)return a;const u=`curve${i.charAt(0).toUpperCase()+i.slice(1)}`;return QRt[u]??a}function njt(i,a){const u=i.trim();if(u)return a.securityLevel!=="loose"?b9.sanitizeUrl(u):u}const rjt=(i,...a)=>{const u=i.split("."),d=u.length-1,p=u[d];let v=window;for(let b=0;b<d;b++)if(v=v[u[b]],!v){Xe.error(`Function name: ${i} not found in window`);return}v[p](...a)};function Bje(i,a){return!i||!a?0:Math.sqrt(Math.pow(a.x-i.x,2)+Math.pow(a.y-i.y,2))}function ijt(i){let a,u=0;i.forEach(p=>{u+=Bje(p,a),a=p});const d=u/2;return B2e(i,d)}function sjt(i){return i.length===1?i[0]:ijt(i)}const Fje=(i,a=2)=>{const u=Math.pow(10,a);return Math.round(i*u)/u},B2e=(i,a)=>{let u,d=a;for(const p of i){if(u){const v=Bje(p,u);if(v<d)d-=v;else{const b=d/v;if(b<=0)return u;if(b>=1)return{x:p.x,y:p.y};if(b>0&&b<1)return{x:Fje((1-b)*u.x+b*p.x,5),y:Fje((1-b)*u.y+b*p.y,5)}}}u=p}throw new Error("Could not find a suitable point for the given distance")},ajt=(i,a,u)=>{Xe.info(`our points ${JSON.stringify(a)}`),a[0]!==u&&(a=a.reverse());const p=B2e(a,25),v=i?10:5,b=Math.atan2(a[0].y-p.y,a[0].x-p.x),y={x:0,y:0};return y.x=Math.sin(b)*v+(a[0].x+p.x)/2,y.y=-Math.cos(b)*v+(a[0].y+p.y)/2,y};function ojt(i,a,u){const d=structuredClone(u);Xe.info("our points",d),a!=="start_left"&&a!=="start_right"&&d.reverse();const p=25+i,v=B2e(d,p),b=10+i*.5,y=Math.atan2(d[0].y-v.y,d[0].x-v.x),E={x:0,y:0};return a==="start_left"?(E.x=Math.sin(y+Math.PI)*b+(d[0].x+v.x)/2,E.y=-Math.cos(y+Math.PI)*b+(d[0].y+v.y)/2):a==="end_right"?(E.x=Math.sin(y-Math.PI)*b+(d[0].x+v.x)/2-5,E.y=-Math.cos(y-Math.PI)*b+(d[0].y+v.y)/2-5):a==="end_left"?(E.x=Math.sin(y)*b+(d[0].x+v.x)/2-5,E.y=-Math.cos(y)*b+(d[0].y+v.y)/2-5):(E.x=Math.sin(y)*b+(d[0].x+v.x)/2,E.y=-Math.cos(y)*b+(d[0].y+v.y)/2),E}function gm(i){let a="",u="";for(const d of i)d!==void 0&&(d.startsWith("color:")||d.startsWith("text-align:")?u=u+d+";":a=a+d+";");return{style:a,labelStyle:u}}let Rje=0;const jje=()=>(Rje++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Rje);function cjt(i){let a="";const u="0123456789abcdef",d=u.length;for(let p=0;p<i;p++)a+=u.charAt(Math.floor(Math.random()*d));return a}const $je=i=>cjt(i.length),ujt=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:""}},ljt=function(i,a){const u=a.text.replace(oi.lineBreakRegex," "),[,d]=PC(a.fontSize),p=i.append("text");p.attr("x",a.x),p.attr("y",a.y),p.style("text-anchor",a.anchor),p.style("font-family",a.fontFamily),p.style("font-size",d),p.style("font-weight",a.fontWeight),p.attr("fill",a.fill),a.class!==void 0&&p.attr("class",a.class);const v=p.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.attr("fill",a.fill),v.text(u),p},zje=yD((i,a,u)=>{if(!i||(u=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},u),oi.lineBreakRegex.test(i)))return i;const d=i.split(" "),p=[];let v="";return d.forEach((b,y)=>{const E=G4(`${b} `,u),_=G4(v,u);if(E>a){const{hyphenatedStrings:R,remainingWord:B}=hjt(b,a,"-",u);p.push(v,...R),v=B}else _+E>=a?(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,a,u)=>`${i}${a}${u.fontSize}${u.fontWeight}${u.fontFamily}${u.joinWith}`),hjt=yD((i,a,u="-",d)=>{d=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},d);const p=[...i],v=[];let b="";return p.forEach((y,E)=>{const _=`${b}${y}`;if(G4(_,d)>=a){const P=E+1,R=p.length===P,B=`${_}${u}`;v.push(R?_:B),b=""}else b=_}),{hyphenatedStrings:v,remainingWord:b}},(i,a,u="-",d)=>`${i}${a}${u}${d.fontSize}${d.fontWeight}${d.fontFamily}`);function F2e(i,a){return R2e(i,a).height}function G4(i,a){return R2e(i,a).width}const R2e=yD((i,a)=>{const{fontSize:u=12,fontFamily:d="Arial",fontWeight:p=400}=a;if(!i)return{width:0,height:0};const[,v]=PC(u),b=["sans-serif",d],y=i.split(oi.lineBreakRegex),E=[],_=Dr("body");if(!_.remove)return{width:0,height:0,lineHeight:0};const A=_.append("svg");for(const R of b){let B=0;const j={width:0,height:0,lineHeight:0};for(const W of y){const ee=ujt();ee.text=W||Nje;const ie=ljt(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)),B=Math.round(oe.height),j.height+=B,j.lineHeight=Math.round(Math.max(j.lineHeight,B))}E.push(j)}A.remove();const P=isNaN(E[1].height)||isNaN(E[1].width)||isNaN(E[1].lineHeight)||E[0].height>E[1].height&&E[0].width>E[1].width&&E[0].lineHeight>E[1].lineHeight?0:1;return E[P]},(i,a)=>`${i}${a.fontSize}${a.fontWeight}${a.fontFamily}`);class fjt{constructor(a=!1,u){this.count=0,this.count=u?u.length:0,this.next=a?()=>this.count++:()=>Date.now()}}let VX;const djt=function(i){return VX=VX||document.createElement("div"),i=escape(i).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),VX.innerHTML=i,unescape(VX.textContent)};function qje(i){return"str"in i}const gjt=(i,a,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",a)},PC=i=>{if(typeof i=="number")return[i,i+"px"];const a=parseInt(i??"",10);return Number.isNaN(a)?[void 0,void 0]:i===String(a)?[a,i+"px"]:[a,i]};function cR(i,a){return UX({},i,a)}const So={assignWithDepth:id,wrapLabel:zje,calculateTextHeight:F2e,calculateTextWidth:G4,calculateTextDimensions:R2e,cleanAndMerge:cR,detectInit:ZRt,detectDirective:Pje,isSubstringInArray:tjt,interpolateToCurve:qv,calcLabelPosition:sjt,calcCardinalityPosition:ajt,calcTerminalLabelPosition:ojt,formatUrl:njt,getStylesFromArray:gm,generateId:jje,random:$je,runFunc:rjt,entityDecode:djt,insertTitle:gjt,parseFontSize:PC,InitIDGenerator:fjt},pjt=function(i){let a=i;return a=a.replace(/style.*:\S*#.*;/g,function(u){return u.substring(0,u.length-1)}),a=a.replace(/classDef.*:\S*#.*;/g,function(u){return u.substring(0,u.length-1)}),a=a.replace(/#\w+;/g,function(u){const d=u.substring(1,u.length-1);return/^\+?\d+$/.test(d)?"๏ฌยฐยฐ"+d+"ยถร":"๏ฌยฐ"+d+"ยถร"}),a},uR=function(i){return i.replace(/๏ฌยฐยฐ/g,"&#").replace(/๏ฌยฐ/g,"&").replace(/ยถร/g,";")};var j2e="comm",Hje="rule",Uje="decl",bjt="@media",mjt="@import",vjt="@supports",$2e="@keyframes",Vje="@layer",Gje=Math.abs,z2e=String.fromCharCode;function Kje(i){return i.trim()}function GX(i,a,u){return i.replace(a,u)}function wjt(i,a,u){return i.indexOf(a,u)}function lR(i,a){return i.charCodeAt(a)|0}function hR(i,a,u){return i.slice(a,u)}function L7(i){return i.length}function Wje(i){return i.length}function KX(i,a){return a.push(i),i}var WX=1,CD=1,Yje=0,Hv=0,I0=0,SD="";function q2e(i,a,u,d,p,v,b,y){return{value:i,root:a,parent:u,type:d,props:p,children:v,line:WX,column:CD,length:b,return:"",siblings:y}}function yjt(){return I0}function xjt(){return I0=Hv>0?lR(SD,--Hv):0,CD--,I0===10&&(CD=1,WX--),I0}function z3(){return I0=Hv<Yje?lR(SD,Hv++):0,CD++,I0===10&&(CD=1,WX++),I0}function BC(){return lR(SD,Hv)}function YX(){return Hv}function XX(i,a){return hR(SD,i,a)}function H2e(i){switch(i){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function kjt(i){return WX=CD=1,Yje=L7(SD=i),Hv=0,[]}function Tjt(i){return SD="",i}function U2e(i){return Kje(XX(Hv-1,V2e(i===91?i+2:i===40?i+1:i)))}function Ejt(i){for(;(I0=BC())&&I0<33;)z3();return H2e(i)>2||H2e(I0)>3?"":" "}function Cjt(i,a){for(;--a&&z3()&&!(I0<48||I0>102||I0>57&&I0<65||I0>70&&I0<97););return XX(i,YX()+(a<6&&BC()==32&&z3()==32))}function V2e(i){for(;z3();)switch(I0){case i:return Hv;case 34:case 39:i!==34&&i!==39&&V2e(I0);break;case 40:i===41&&V2e(i);break;case 92:z3();break}return Hv}function Sjt(i,a){for(;z3()&&i+I0!==47+10;)if(i+I0===42+42&&BC()===47)break;return"/*"+XX(a,Hv-1)+"*"+z2e(i===47?i:z3())}function _jt(i){for(;!H2e(BC());)z3();return XX(i,Hv)}function Ajt(i){return Tjt(QX("",null,null,null,[""],i=kjt(i),0,[0],i))}function QX(i,a,u,d,p,v,b,y,E){for(var _=0,A=0,P=b,R=0,B=0,j=0,W=1,ee=1,ie=1,oe=0,be="",ge=p,ae=v,ne=d,se=be;ee;)switch(j=oe,oe=z3()){case 40:if(j!=108&&lR(se,P-1)==58){wjt(se+=GX(U2e(oe),"&","&\f"),"&\f",Gje(_?y[_-1]:0))!=-1&&(ie=-1);break}case 34:case 39:case 91:se+=U2e(oe);break;case 9:case 10:case 13:case 32:se+=Ejt(j);break;case 92:se+=Cjt(YX()-1,7);continue;case 47:switch(BC()){case 42:case 47:KX(Ljt(Sjt(z3(),YX()),a,u,E),E);break;default:se+="/"}break;case 123*W:y[_++]=L7(se)*ie;case 125*W:case 59:case 0:switch(oe){case 0:case 125:ee=0;case 59+A:ie==-1&&(se=GX(se,/\f/g,"")),B>0&&L7(se)-P&&KX(B>32?Qje(se+";",d,u,P-1,E):Qje(GX(se," ","")+";",d,u,P-2,E),E);break;case 59:se+=";";default:if(KX(ne=Xje(se,a,u,_,A,p,y,be,ge=[],ae=[],P,v),v),oe===123)if(A===0)QX(se,a,ne,ne,ge,v,P,y,ae);else switch(R===99&&lR(se,3)===110?100:R){case 100:case 108:case 109:case 115:QX(i,ne,ne,d&&KX(Xje(i,ne,ne,0,0,p,y,be,p,ge=[],P,ae),ae),p,ae,P,y,d?ge:ae);break;default:QX(se,ne,ne,ne,[""],ae,0,y,ae)}}_=A=B=0,W=ie=1,be=se="",P=b;break;case 58:P=1+L7(se),B=j;default:if(W<1){if(oe==123)--W;else if(oe==125&&W++==0&&xjt()==125)continue}switch(se+=z2e(oe),oe*W){case 38:ie=A>0?1:(se+="\f",-1);break;case 44:y[_++]=(L7(se)-1)*ie,ie=1;break;case 64:BC()===45&&(se+=U2e(z3())),R=BC(),A=P=L7(be=se+=_jt(YX())),oe++;break;case 45:j===45&&L7(se)==2&&(W=0)}}return v}function Xje(i,a,u,d,p,v,b,y,E,_,A,P){for(var R=p-1,B=p===0?v:[""],j=Wje(B),W=0,ee=0,ie=0;W<d;++W)for(var oe=0,be=hR(i,R+1,R=Gje(ee=b[W])),ge=i;oe<j;++oe)(ge=Kje(ee>0?B[oe]+" "+be:GX(be,/&\f/g,B[oe])))&&(E[ie++]=ge);return q2e(i,a,u,p===0?Hje:y,E,_,A,P)}function Ljt(i,a,u,d){return q2e(i,a,u,j2e,z2e(yjt()),hR(i,2,-2),0,d)}function Qje(i,a,u,d,p){return q2e(i,a,u,Uje,hR(i,0,d),hR(i,d+1,-1),d,p)}function G2e(i,a){for(var u="",d=0;d<i.length;d++)u+=a(i[d],d,i,a)||"";return u}function Mjt(i,a,u,d){switch(i.type){case Vje:if(i.children.length)break;case mjt:case Uje:return i.return=i.return||i.value;case j2e:return"";case $2e:return i.return=i.value+"{"+G2e(i.children,d)+"}";case Hje:if(!L7(i.value=i.props.join(",")))return""}return L7(u=G2e(i.children,d))?i.return=i.value+"{"+u+"}":""}function Djt(i){var a=Wje(i);return function(u,d,p,v){for(var b="",y=0;y<a;y++)b+=i[y](u,d,p,v)||"";return b}}const Jje="10.9.6",_D=Object.freeze(nh);let G2=id({},_D),Zje,AD=[],fR=id({},_D);const JX=(i,a)=>{let u=id({},i),d={};for(const p of a)n$e(p),d=id(d,p);if(u=id(u,d),d.theme&&d.theme in C7){const p=id({},Zje),v=id(p.themeVariables||{},d.themeVariables);u.theme&&u.theme in C7&&(u.themeVariables=C7[u.theme].getThemeVariables(v))}return fR=u,i$e(fR),fR},Ijt=i=>(G2=id({},_D),G2=id(G2,i),i.theme&&C7[i.theme]&&(G2.themeVariables=C7[i.theme].getThemeVariables(i.themeVariables)),JX(G2,AD),G2),Ojt=i=>{Zje=id({},i)},Njt=i=>(G2=id(G2,i),JX(G2,AD),G2),e$e=()=>id({},G2),t$e=i=>(i$e(i),id(fR,i),mh()),mh=()=>id({},fR),n$e=i=>{i&&(["secure",...G2.secure??[]].forEach(a=>{Object.hasOwn(i,a)&&(Xe.debug(`Denied attempt to modify a secure key ${a}`,i[a]),delete i[a])}),Object.keys(i).forEach(a=>{a.startsWith("__")&&delete i[a]}),Object.keys(i).forEach(a=>{typeof i[a]=="string"&&(i[a].includes("<")||i[a].includes(">")||i[a].includes("url(data:"))&&delete i[a],typeof i[a]=="object"&&n$e(i[a])}))},Pjt=i=>{DX(i),i.fontFamily&&(!i.themeVariables||!i.themeVariables.fontFamily)&&(i.themeVariables={fontFamily:i.fontFamily}),AD.push(i),JX(G2,AD)},ZX=(i=G2)=>{AD=[],JX(i,AD)},Bjt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},r$e={},Fjt=i=>{r$e[i]||(Xe.warn(Bjt[i]),r$e[i]=!0)},i$e=i=>{i&&(i.lazyLoadedDiagrams||i.loadExternalDiagramsAtStartup)&&Fjt("LAZY_LOAD_DEPRECATED")},s$e="c4",Rjt={id:s$e,detector:i=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>$Vt);return{id:s$e,diagram:i}}},a$e="flowchart",jjt={id:a$e,detector:(i,a)=>{var u,d;return((u=a==null?void 0:a.flowchart)==null?void 0:u.defaultRenderer)==="dagre-wrapper"||((d=a==null?void 0:a.flowchart)==null?void 0:d.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Wen);return{id:a$e,diagram:i}}},o$e="flowchart-v2",$jt={id:o$e,detector:(i,a)=>{var u,d,p;return((u=a==null?void 0:a.flowchart)==null?void 0:u.defaultRenderer)==="dagre-d3"||((d=a==null?void 0:a.flowchart)==null?void 0:d.defaultRenderer)==="elk"?!1:/^\s*graph/.test(i)&&((p=a==null?void 0:a.flowchart)==null?void 0:p.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Yen);return{id:o$e,diagram:i}}},c$e="er",zjt={id:c$e,detector:i=>/^\s*erDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>xtn);return{id:c$e,diagram:i}}},u$e="gitGraph",qjt={id:u$e,detector:i=>/^\s*gitGraph/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Ktn);return{id:u$e,diagram:i}}},l$e="gantt",Hjt={id:l$e,detector:i=>/^\s*gantt/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Bnn);return{id:l$e,diagram:i}}},h$e="info",Ujt={id:h$e,detector:i=>/^\s*info/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Rnn);return{id:h$e,diagram:i}}},f$e="pie",Vjt={id:f$e,detector:i=>/^\s*pie/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Unn);return{id:f$e,diagram:i}}},d$e="quadrantChart",Gjt={id:d$e,detector:i=>/^\s*quadrantChart/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>arn);return{id:d$e,diagram:i}}},g$e="xychart",Kjt={id:g$e,detector:i=>/^\s*xychart-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Mrn);return{id:g$e,diagram:i}}},p$e="requirement",Wjt={id:p$e,detector:i=>/^\s*requirement(Diagram)?/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>$rn);return{id:p$e,diagram:i}}},b$e="sequence",Yjt={id:b$e,detector:i=>/^\s*sequenceDiagram/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Hin);return{id:b$e,diagram:i}}},m$e="class",Xjt={id:m$e,detector:(i,a)=>{var u;return((u=a==null?void 0:a.class)==null?void 0:u.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>dsn);return{id:m$e,diagram:i}}},v$e="classDiagram",Qjt={id:v$e,detector:(i,a)=>{var u;return/^\s*classDiagram/.test(i)&&((u=a==null?void 0:a.class)==null?void 0:u.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>wsn);return{id:v$e,diagram:i}}},w$e="state",Jjt={id:w$e,detector:(i,a)=>{var u;return((u=a==null?void 0:a.state)==null?void 0:u.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(i)},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>aan);return{id:w$e,diagram:i}}},y$e="stateDiagram",Zjt={id:y$e,detector:(i,a)=>{var u;return!!(/^\s*stateDiagram-v2/.test(i)||/^\s*stateDiagram/.test(i)&&((u=a==null?void 0:a.state)==null?void 0:u.defaultRenderer)==="dagre-wrapper")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Can);return{id:y$e,diagram:i}}},x$e="journey",e$t={id:x$e,detector:i=>/^\s*journey/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Uan);return{id:x$e,diagram:i}}},t$t=function(i,a){for(let u of a)i.attr(u[0],u[1])},n$t=function(i,a,u){let d=new Map;return u?(d.set("width","100%"),d.set("style",`max-width: ${a}px;`)):(d.set("height",i),d.set("width",a)),d},Fg=function(i,a,u,d){const p=n$t(a,u,d);t$t(i,p)},x9=function(i,a,u,d){const p=a.node().getBBox(),v=p.width,b=p.height;Xe.info(`SVG bounds: ${v}x${b}`,p);let y=0,E=0;Xe.info(`Graph bounds: ${y}x${E}`,i),y=v+u*2,E=b+u*2,Xe.info(`Calculated bounds: ${y}x${E}`),Fg(a,E,y,d);const _=`${p.x-u} ${p.y-u} ${p.width+2*u} ${p.height+2*u}`;a.attr("viewBox",_)},eQ={};function k$e(i){return[...i.cssRules].map(a=>a.cssText).join(`14`)}const r$t=(i,a,u)=>{let d="";return i in eQ&&eQ[i]?d=eQ[i](u):Xe.warn(`No theme found for ${i}`),` & {15 font-family: ${u.fontFamily};16 font-size: ${u.fontSize};17 fill: ${u.textColor}18 }19 20 /* Classes common for multiple diagrams */21 22 & .error-icon {23 fill: ${u.errorBkgColor};24 }25 & .error-text {26 fill: ${u.errorTextColor};27 stroke: ${u.errorTextColor};28 }29 30 & .edge-thickness-normal {31 stroke-width: 2px;32 }33 & .edge-thickness-thick {34 stroke-width: 3.5px35 }36 & .edge-pattern-solid {37 stroke-dasharray: 0;38 }39 40 & .edge-pattern-dashed{41 stroke-dasharray: 3;42 }43 .edge-pattern-dotted {44 stroke-dasharray: 2;45 }46 47 & .marker {48 fill: ${u.lineColor};49 stroke: ${u.lineColor};50 }51 & .marker.cross {52 stroke: ${u.lineColor};53 }54 55 & svg {56 font-family: ${u.fontFamily};57 font-size: ${u.fontSize};58 }59 60 ${d}61 62 ${a}63`},i$t=(i,a)=>{a!==void 0&&(eQ[i]=a)},s$t=r$t;let K2e="",W2e="",Y2e="";const X2e=i=>bh(i,mh()),Rg=()=>{K2e="",Y2e="",W2e=""},jg=i=>{K2e=X2e(i).replace(/^\s+/g,"")},Mp=()=>K2e,Dp=i=>{Y2e=X2e(i).replace(/\n\s+/g,`64`)},Ip=()=>Y2e,pm=i=>{W2e=X2e(i)},Op=()=>W2e,T$e=Object.freeze(Object.defineProperty({__proto__:null,clear:Rg,getAccDescription:Ip,getAccTitle:Mp,getDiagramTitle:Op,setAccDescription:Dp,setAccTitle:jg,setDiagramTitle:pm},Symbol.toStringTag,{value:"Module"})),a$t=Xe,o$t=Spe,qt=mh,c$t=t$e,E$e=_D,u$t=i=>bh(i,qt()),C$e=x9,l$t=()=>T$e,tQ={},nQ=(i,a,u)=>{var d;if(tQ[i])throw new Error(`Diagram ${i} already registered.`);tQ[i]=a,u&&ije(i,u),i$t(i,a.styles),(d=a.injectUtils)==null||d.call(a,a$t,o$t,qt,u$t,C$e,l$t(),()=>{})},Q2e=i=>{if(i in tQ)return tQ[i];throw new h$t(i)};class h$t extends Error{constructor(a){super(`Diagram ${a} not found.`)}}const dR=i=>{var p;const{securityLevel:a}=qt();let u=Dr("body");if(a==="sandbox"){const b=((p=Dr(`#i${i}`).node())==null?void 0:p.contentDocument)??document;u=Dr(b.body)}return u.select(`#${i}`)},S$e={draw:(i,a,u)=>{Xe.debug(`rendering svg for syntax error65`);const d=dR(a),p=d.append("g");d.attr("viewBox","0 0 2412 512"),Fg(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}`)}},f$t=S$e,d$t={db:{},renderer:S$e,parser:{parser:{yy:{}},parse:()=>{}}},_$e="flowchart-elk",g$t={id:_$e,detector:(i,a)=>{var u;return!!(/^\s*flowchart-elk/.test(i)||/^\s*flowchart|graph/.test(i)&&((u=a==null?void 0:a.flowchart)==null?void 0:u.defaultRenderer)==="elk")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>aon);return{id:_$e,diagram:i}}},A$e="timeline",p$t={id:A$e,detector:i=>/^\s*timeline/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Con);return{id:A$e,diagram:i}}},L$e="mindmap",b$t={id:L$e,detector:i=>/^\s*mindmap/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Zon);return{id:L$e,diagram:i}}},M$e="sankey",m$t={id:M$e,detector:i=>/^\s*sankey-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Lcn);return{id:M$e,diagram:i}}},D$e="block",v$t={id:D$e,detector:i=>/^\s*block-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Qcn);return{id:D$e,diagram:i}}};let I$e=!1;const J2e=()=>{I$e||(I$e=!0,nQ("error",d$t,i=>i.toLowerCase().trim()==="error"),nQ("---",{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("---")),rje(Rjt,Qjt,Xjt,zjt,Hjt,Ujt,Vjt,Wjt,Yjt,g$t,$jt,jjt,b$t,p$t,qjt,Zjt,Jjt,e$t,Gjt,m$t,Kjt,v$t))};class O$e{constructor(a,u={}){this.text=a,this.metadata=u,this.type="graph",this.text=pjt(a),this.text+=`66`;const d=mh();try{this.type=IX(a,d)}catch(v){this.type="error",this.detectError=v}const p=Q2e(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 a=mh();(p=this.init)==null||p.call(this,a),this.metadata.title&&((b=(v=this.db).setDiagramTitle)==null||b.call(v,this.metadata.title)),this.parser.parse(this.text)}async render(a,u){await this.renderer.draw(this.text,a,u,this)}getParser(){return this.parser}getType(){return this.type}}const w$t=async(i,a={})=>{const u=IX(i,mh());try{Q2e(u)}catch{const p=xBt(u);if(!p)throw new nje(`Diagram ${u} not found.`);const{id:v,diagram:b}=await p();nQ(v,b)}return new O$e(i,a)};let N$e=[];const y$t=()=>{N$e.forEach(i=>{i()}),N$e=[]};var x$t=mje(Object.keys,Object);const k$t=x$t;var T$t=Object.prototype,E$t=T$t.hasOwnProperty;function P$e(i){if(!RX(i))return k$t(i);var a=[];for(var u in Object(i))E$t.call(i,u)&&u!="constructor"&&a.push(u);return a}var C$t=DC(j3,"DataView");const Z2e=C$t;var S$t=DC(j3,"Promise");const ebe=S$t;var _$t=DC(j3,"Set");const LD=_$t;var A$t=DC(j3,"WeakMap");const tbe=A$t;var B$e="[object Map]",L$t="[object Object]",F$e="[object Promise]",R$e="[object Set]",j$e="[object WeakMap]",$$e="[object DataView]",M$t=MC(Z2e),D$t=MC(iR),I$t=MC(ebe),O$t=MC(LD),N$t=MC(tbe),FC=LC;(Z2e&&FC(new Z2e(new ArrayBuffer(1)))!=$$e||iR&&FC(new iR)!=B$e||ebe&&FC(ebe.resolve())!=F$e||LD&&FC(new LD)!=R$e||tbe&&FC(new tbe)!=j$e)&&(FC=function(i){var a=LC(i),u=a==L$t?i.constructor:void 0,d=u?MC(u):"";if(d)switch(d){case M$t:return $$e;case D$t:return B$e;case I$t:return F$e;case O$t:return R$e;case N$t:return j$e}return a});const MD=FC;var P$t="[object Map]",B$t="[object Set]",F$t=Object.prototype,R$t=F$t.hasOwnProperty;function gR(i){if(i==null)return!0;if(y9(i)&&(D0(i)||typeof i=="string"||typeof i.splice=="function"||kD(i)||$X(i)||xD(i)))return!i.length;var a=MD(i);if(a==P$t||a==B$t)return!i.size;if(RX(i))return!P$e(i).length;for(var u in i)if(R$t.call(i,u))return!1;return!0}const j$t="graphics-document document";function $$t(i,a){i.attr("role",j$t),a!==""&&i.attr("aria-roledescription",a)}function z$t(i,a,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(a){const p=`chart-title-${d}`;i.attr("aria-labelledby",p),i.insert("title",":first-child").attr("id",p).text(a)}}}const q$t=i=>i.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart();/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function z$e(i){return typeof i>"u"||i===null}function H$t(i){return typeof i=="object"&&i!==null}function U$t(i){return Array.isArray(i)?i:z$e(i)?[]:[i]}function V$t(i,a){var u,d,p,v;if(a)for(v=Object.keys(a),u=0,d=v.length;u<d;u+=1)p=v[u],i[p]=a[p];return i}function G$t(i,a){var u="",d;for(d=0;d<a;d+=1)u+=i;return u}function K$t(i){return i===0&&Number.NEGATIVE_INFINITY===1/i}var W$t=z$e,Y$t=H$t,X$t=U$t,Q$t=G$t,J$t=K$t,Z$t=V$t,Np={isNothing:W$t,isObject:Y$t,toArray:X$t,repeat:Q$t,isNegativeZero:J$t,extend:Z$t};function q$e(i,a){var u="",d=i.reason||"(unknown reason)";return i.mark?(i.mark.name&&(u+='in "'+i.mark.name+'" '),u+="("+(i.mark.line+1)+":"+(i.mark.column+1)+")",!a&&i.mark.snippet&&(u+=`67 68`+i.mark.snippet),d+" "+u):d}function pR(i,a){Error.call(this),this.name="YAMLException",this.reason=i,this.mark=a,this.message=q$e(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}pR.prototype=Object.create(Error.prototype),pR.prototype.constructor=pR,pR.prototype.toString=function(a){return this.name+": "+q$e(this,a)};var M7=pR;function nbe(i,a,u,d,p){var v="",b="",y=Math.floor(p/2)-1;return d-a>y&&(v=" ... ",a=d-y+v.length),u-d>y&&(b=" ...",u=d+y-b.length),{str:v+i.slice(a,u).replace(/\t/g,"โ")+b,pos:d-a+v.length}}function rbe(i,a){return Np.repeat(" ",a-i.length)+i}function ezt(i,a){if(a=Object.create(a||null),!i.buffer)return null;a.maxLength||(a.maxLength=79),typeof a.indent!="number"&&(a.indent=1),typeof a.linesBefore!="number"&&(a.linesBefore=3),typeof a.linesAfter!="number"&&(a.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="",E,_,A=Math.min(i.line+a.linesAfter,p.length).toString().length,P=a.maxLength-(a.indent+A+3);for(E=1;E<=a.linesBefore&&!(b-E<0);E++)_=nbe(i.buffer,d[b-E],p[b-E],i.position-(d[b]-d[b-E]),P),y=Np.repeat(" ",a.indent)+rbe((i.line-E+1).toString(),A)+" | "+_.str+`69`+y;for(_=nbe(i.buffer,d[b],p[b],i.position,P),y+=Np.repeat(" ",a.indent)+rbe((i.line+1).toString(),A)+" | "+_.str+`70`,y+=Np.repeat("-",a.indent+A+3+_.pos)+`^71`,E=1;E<=a.linesAfter&&!(b+E>=p.length);E++)_=nbe(i.buffer,d[b+E],p[b+E],i.position-(d[b]-d[b+E]),P),y+=Np.repeat(" ",a.indent)+rbe((i.line+E+1).toString(),A)+" | "+_.str+`72`;return y.replace(/\n$/,"")}var tzt=ezt,nzt=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],rzt=["scalar","sequence","mapping"];function izt(i){var a={};return i!==null&&Object.keys(i).forEach(function(u){i[u].forEach(function(d){a[String(d)]=u})}),a}function szt(i,a){if(a=a||{},Object.keys(a).forEach(function(u){if(nzt.indexOf(u)===-1)throw new M7('Unknown option "'+u+'" is met in definition of "'+i+'" YAML type.')}),this.options=a,this.tag=i,this.kind=a.kind||null,this.resolve=a.resolve||function(){return!0},this.construct=a.construct||function(u){return u},this.instanceOf=a.instanceOf||null,this.predicate=a.predicate||null,this.represent=a.represent||null,this.representName=a.representName||null,this.defaultStyle=a.defaultStyle||null,this.multi=a.multi||!1,this.styleAliases=izt(a.styleAliases||null),rzt.indexOf(this.kind)===-1)throw new M7('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}var $g=szt;function H$e(i,a){var u=[];return i[a].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 azt(){var i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},a,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(a=0,u=arguments.length;a<u;a+=1)arguments[a].forEach(d);return i}function ibe(i){return this.extend(i)}ibe.prototype.extend=function(a){var u=[],d=[];if(a instanceof $g)d.push(a);else if(Array.isArray(a))d=d.concat(a);else if(a&&(Array.isArray(a.implicit)||Array.isArray(a.explicit)))a.implicit&&(u=u.concat(a.implicit)),a.explicit&&(d=d.concat(a.explicit));else throw new M7("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");u.forEach(function(v){if(!(v instanceof $g))throw new M7("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(v.loadKind&&v.loadKind!=="scalar")throw new M7("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(v.multi)throw new M7("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),d.forEach(function(v){if(!(v instanceof $g))throw new M7("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var p=Object.create(ibe.prototype);return p.implicit=(this.implicit||[]).concat(u),p.explicit=(this.explicit||[]).concat(d),p.compiledImplicit=H$e(p,"implicit"),p.compiledExplicit=H$e(p,"explicit"),p.compiledTypeMap=azt(p.compiledImplicit,p.compiledExplicit),p};var ozt=ibe,czt=new $g("tag:yaml.org,2002:str",{kind:"scalar",construct:function(i){return i!==null?i:""}}),uzt=new $g("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(i){return i!==null?i:[]}}),lzt=new $g("tag:yaml.org,2002:map",{kind:"mapping",construct:function(i){return i!==null?i:{}}}),hzt=new ozt({explicit:[czt,uzt,lzt]});function fzt(i){if(i===null)return!0;var a=i.length;return a===1&&i==="~"||a===4&&(i==="null"||i==="Null"||i==="NULL")}function dzt(){return null}function gzt(i){return i===null}var pzt=new $g("tag:yaml.org,2002:null",{kind:"scalar",resolve:fzt,construct:dzt,predicate:gzt,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function bzt(i){if(i===null)return!1;var a=i.length;return a===4&&(i==="true"||i==="True"||i==="TRUE")||a===5&&(i==="false"||i==="False"||i==="FALSE")}function mzt(i){return i==="true"||i==="True"||i==="TRUE"}function vzt(i){return Object.prototype.toString.call(i)==="[object Boolean]"}var wzt=new $g("tag:yaml.org,2002:bool",{kind:"scalar",resolve:bzt,construct:mzt,predicate:vzt,represent:{lowercase:function(i){return i?"true":"false"},uppercase:function(i){return i?"TRUE":"FALSE"},camelcase:function(i){return i?"True":"False"}},defaultStyle:"lowercase"});function yzt(i){return 48<=i&&i<=57||65<=i&&i<=70||97<=i&&i<=102}function xzt(i){return 48<=i&&i<=55}function kzt(i){return 48<=i&&i<=57}function Tzt(i){if(i===null)return!1;var a=i.length,u=0,d=!1,p;if(!a)return!1;if(p=i[u],(p==="-"||p==="+")&&(p=i[++u]),p==="0"){if(u+1===a)return!0;if(p=i[++u],p==="b"){for(u++;u<a;u++)if(p=i[u],p!=="_"){if(p!=="0"&&p!=="1")return!1;d=!0}return d&&p!=="_"}if(p==="x"){for(u++;u<a;u++)if(p=i[u],p!=="_"){if(!yzt(i.charCodeAt(u)))return!1;d=!0}return d&&p!=="_"}if(p==="o"){for(u++;u<a;u++)if(p=i[u],p!=="_"){if(!xzt(i.charCodeAt(u)))return!1;d=!0}return d&&p!=="_"}}if(p==="_")return!1;for(;u<a;u++)if(p=i[u],p!=="_"){if(!kzt(i.charCodeAt(u)))return!1;d=!0}return!(!d||p==="_")}function Ezt(i){var a=i,u=1,d;if(a.indexOf("_")!==-1&&(a=a.replace(/_/g,"")),d=a[0],(d==="-"||d==="+")&&(d==="-"&&(u=-1),a=a.slice(1),d=a[0]),a==="0")return 0;if(d==="0"){if(a[1]==="b")return u*parseInt(a.slice(2),2);if(a[1]==="x")return u*parseInt(a.slice(2),16);if(a[1]==="o")return u*parseInt(a.slice(2),8)}return u*parseInt(a,10)}function Czt(i){return Object.prototype.toString.call(i)==="[object Number]"&&i%1===0&&!Np.isNegativeZero(i)}var Szt=new $g("tag:yaml.org,2002:int",{kind:"scalar",resolve:Tzt,construct:Ezt,predicate:Czt,represent:{binary:function(i){return i>=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"]}}),_zt=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Azt(i){return!(i===null||!_zt.test(i)||i[i.length-1]==="_")}function Lzt(i){var a,u;return a=i.replace(/_/g,"").toLowerCase(),u=a[0]==="-"?-1:1,"+-".indexOf(a[0])>=0&&(a=a.slice(1)),a===".inf"?u===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:a===".nan"?NaN:u*parseFloat(a,10)}var Mzt=/^[-+]?[0-9]+e/;function Dzt(i,a){var u;if(isNaN(i))switch(a){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===i)switch(a){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===i)switch(a){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Np.isNegativeZero(i))return"-0.0";return u=i.toString(10),Mzt.test(u)?u.replace("e",".e"):u}function Izt(i){return Object.prototype.toString.call(i)==="[object Number]"&&(i%1!==0||Np.isNegativeZero(i))}var Ozt=new $g("tag:yaml.org,2002:float",{kind:"scalar",resolve:Azt,construct:Lzt,predicate:Izt,represent:Dzt,defaultStyle:"lowercase"}),U$e=hzt.extend({implicit:[pzt,wzt,Szt,Ozt]}),Nzt=U$e,V$e=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),G$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 Pzt(i){return i===null?!1:V$e.exec(i)!==null||G$e.exec(i)!==null}function Bzt(i){var a,u,d,p,v,b,y,E=0,_=null,A,P,R;if(a=V$e.exec(i),a===null&&(a=G$e.exec(i)),a===null)throw new Error("Date resolve error");if(u=+a[1],d=+a[2]-1,p=+a[3],!a[4])return new Date(Date.UTC(u,d,p));if(v=+a[4],b=+a[5],y=+a[6],a[7]){for(E=a[7].slice(0,3);E.length<3;)E+="0";E=+E}return a[9]&&(A=+a[10],P=+(a[11]||0),_=(A*60+P)*6e4,a[9]==="-"&&(_=-_)),R=new Date(Date.UTC(u,d,p,v,b,y,E)),_&&R.setTime(R.getTime()-_),R}function Fzt(i){return i.toISOString()}var Rzt=new $g("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Pzt,construct:Bzt,instanceOf:Date,represent:Fzt});function jzt(i){return i==="<<"||i===null}var $zt=new $g("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jzt}),sbe=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=73\r`;function zzt(i){if(i===null)return!1;var a,u,d=0,p=i.length,v=sbe;for(u=0;u<p;u++)if(a=v.indexOf(i.charAt(u)),!(a>64)){if(a<0)return!1;d+=6}return d%8===0}function qzt(i){var a,u,d=i.replace(/[\r\n=]/g,""),p=d.length,v=sbe,b=0,y=[];for(a=0;a<p;a++)a%4===0&&a&&(y.push(b>>16&255),y.push(b>>8&255),y.push(b&255)),b=b<<6|v.indexOf(d.charAt(a));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 Hzt(i){var a="",u=0,d,p,v=i.length,b=sbe;for(d=0;d<v;d++)d%3===0&&d&&(a+=b[u>>18&63],a+=b[u>>12&63],a+=b[u>>6&63],a+=b[u&63]),u=(u<<8)+i[d];return p=v%3,p===0?(a+=b[u>>18&63],a+=b[u>>12&63],a+=b[u>>6&63],a+=b[u&63]):p===2?(a+=b[u>>10&63],a+=b[u>>4&63],a+=b[u<<2&63],a+=b[64]):p===1&&(a+=b[u>>2&63],a+=b[u<<4&63],a+=b[64],a+=b[64]),a}function Uzt(i){return Object.prototype.toString.call(i)==="[object Uint8Array]"}var Vzt=new $g("tag:yaml.org,2002:binary",{kind:"scalar",resolve:zzt,construct:qzt,predicate:Uzt,represent:Hzt}),Gzt=Object.prototype.hasOwnProperty,Kzt=Object.prototype.toString;function Wzt(i){if(i===null)return!0;var a=[],u,d,p,v,b,y=i;for(u=0,d=y.length;u<d;u+=1){if(p=y[u],b=!1,Kzt.call(p)!=="[object Object]")return!1;for(v in p)if(Gzt.call(p,v))if(!b)b=!0;else return!1;if(!b)return!1;if(a.indexOf(v)===-1)a.push(v);else return!1}return!0}function Yzt(i){return i!==null?i:[]}var Xzt=new $g("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Wzt,construct:Yzt}),Qzt=Object.prototype.toString;function Jzt(i){if(i===null)return!0;var a,u,d,p,v,b=i;for(v=new Array(b.length),a=0,u=b.length;a<u;a+=1){if(d=b[a],Qzt.call(d)!=="[object Object]"||(p=Object.keys(d),p.length!==1))return!1;v[a]=[p[0],d[p[0]]]}return!0}function Zzt(i){if(i===null)return[];var a,u,d,p,v,b=i;for(v=new Array(b.length),a=0,u=b.length;a<u;a+=1)d=b[a],p=Object.keys(d),v[a]=[p[0],d[p[0]]];return v}var eqt=new $g("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Jzt,construct:Zzt}),tqt=Object.prototype.hasOwnProperty;function nqt(i){if(i===null)return!0;var a,u=i;for(a in u)if(tqt.call(u,a)&&u[a]!==null)return!1;return!0}function rqt(i){return i!==null?i:{}}var iqt=new $g("tag:yaml.org,2002:set",{kind:"mapping",resolve:nqt,construct:rqt}),sqt=Nzt.extend({implicit:[Rzt,$zt],explicit:[Vzt,Xzt,eqt,iqt]}),k9=Object.prototype.hasOwnProperty,rQ=1,K$e=2,W$e=3,iQ=4,abe=1,aqt=2,Y$e=3,oqt=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,cqt=/[\x85\u2028\u2029]/,uqt=/[,\[\]\{\}]/,X$e=/^(?:!|!!|![a-z\-]+!)$/i,Q$e=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function J$e(i){return Object.prototype.toString.call(i)}function K4(i){return i===10||i===13}function RC(i){return i===9||i===32}function K2(i){return i===9||i===32||i===10||i===13}function DD(i){return i===44||i===91||i===93||i===123||i===125}function lqt(i){var a;return 48<=i&&i<=57?i-48:(a=i|32,97<=a&&a<=102?a-97+10:-1)}function hqt(i){return i===120?2:i===117?4:i===85?8:0}function fqt(i){return 48<=i&&i<=57?i-48:-1}function Z$e(i){return i===48?"\0":i===97?"\x07":i===98?"\b":i===116||i===9?" ":i===110?`74`:i===118?"\v":i===102?"\f":i===114?"\r":i===101?"\x1B":i===32?" ":i===34?'"':i===47?"/":i===92?"\\":i===78?"ย
":i===95?"ย ":i===76?"\u2028":i===80?"\u2029":""}function dqt(i){return i<=65535?String.fromCharCode(i):String.fromCharCode((i-65536>>10)+55296,(i-65536&1023)+56320)}for(var eze=new Array(256),tze=new Array(256),ID=0;ID<256;ID++)eze[ID]=Z$e(ID)?1:0,tze[ID]=Z$e(ID);function gqt(i,a){this.input=i,this.filename=a.filename||null,this.schema=a.schema||sqt,this.onWarning=a.onWarning||null,this.legacy=a.legacy||!1,this.json=a.json||!1,this.listener=a.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 nze(i,a){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=tzt(u),new M7(a,u)}function la(i,a){throw nze(i,a)}function sQ(i,a){i.onWarning&&i.onWarning.call(null,nze(i,a))}var rze={YAML:function(a,u,d){var p,v,b;a.version!==null&&la(a,"duplication of %YAML directive"),d.length!==1&&la(a,"YAML directive accepts exactly one argument"),p=/^([0-9]+)\.([0-9]+)$/.exec(d[0]),p===null&&la(a,"ill-formed argument of the YAML directive"),v=parseInt(p[1],10),b=parseInt(p[2],10),v!==1&&la(a,"unacceptable YAML version of the document"),a.version=d[0],a.checkLineBreaks=b<2,b!==1&&b!==2&&sQ(a,"unsupported YAML version of the document")},TAG:function(a,u,d){var p,v;d.length!==2&&la(a,"TAG directive accepts exactly two arguments"),p=d[0],v=d[1],X$e.test(p)||la(a,"ill-formed tag handle (first argument) of the TAG directive"),k9.call(a.tagMap,p)&&la(a,'there is a previously declared suffix for "'+p+'" tag handle'),Q$e.test(v)||la(a,"ill-formed tag prefix (second argument) of the TAG directive");try{v=decodeURIComponent(v)}catch{la(a,"tag prefix is malformed: "+v)}a.tagMap[p]=v}};function T9(i,a,u,d){var p,v,b,y;if(a<u){if(y=i.input.slice(a,u),d)for(p=0,v=y.length;p<v;p+=1)b=y.charCodeAt(p),b===9||32<=b&&b<=1114111||la(i,"expected valid JSON character");else oqt.test(y)&&la(i,"the stream contains non-printable characters");i.result+=y}}function ize(i,a,u,d){var p,v,b,y;for(Np.isObject(u)||la(i,"cannot merge mappings; the provided source object is unacceptable"),p=Object.keys(u),b=0,y=p.length;b<y;b+=1)v=p[b],k9.call(a,v)||(a[v]=u[v],d[v]=!0)}function OD(i,a,u,d,p,v,b,y,E){var _,A;if(Array.isArray(p))for(p=Array.prototype.slice.call(p),_=0,A=p.length;_<A;_+=1)Array.isArray(p[_])&&la(i,"nested arrays are not supported inside keys"),typeof p=="object"&&J$e(p[_])==="[object Object]"&&(p[_]="[object Object]");if(typeof p=="object"&&J$e(p)==="[object Object]"&&(p="[object Object]"),p=String(p),a===null&&(a={}),d==="tag:yaml.org,2002:merge")if(Array.isArray(v))for(_=0,A=v.length;_<A;_+=1)ize(i,a,v[_],u);else ize(i,a,v,u);else!i.json&&!k9.call(u,p)&&k9.call(a,p)&&(i.line=b||i.line,i.lineStart=y||i.lineStart,i.position=E||i.position,la(i,"duplicated mapping key")),p==="__proto__"?Object.defineProperty(a,p,{configurable:!0,enumerable:!0,writable:!0,value:v}):a[p]=v,delete u[p];return a}function obe(i){var a;a=i.input.charCodeAt(i.position),a===10?i.position++:a===13?(i.position++,i.input.charCodeAt(i.position)===10&&i.position++):la(i,"a line break is expected"),i.line+=1,i.lineStart=i.position,i.firstTabInLine=-1}function O0(i,a,u){for(var d=0,p=i.input.charCodeAt(i.position);p!==0;){for(;RC(p);)p===9&&i.firstTabInLine===-1&&(i.firstTabInLine=i.position),p=i.input.charCodeAt(++i.position);if(a&&p===35)do p=i.input.charCodeAt(++i.position);while(p!==10&&p!==13&&p!==0);if(K4(p))for(obe(i),p=i.input.charCodeAt(i.position),d++,i.lineIndent=0;p===32;)i.lineIndent++,p=i.input.charCodeAt(++i.position);else break}return u!==-1&&d!==0&&i.lineIndent<u&&sQ(i,"deficient indentation"),d}function aQ(i){var a=i.position,u;return u=i.input.charCodeAt(a),!!((u===45||u===46)&&u===i.input.charCodeAt(a+1)&&u===i.input.charCodeAt(a+2)&&(a+=3,u=i.input.charCodeAt(a),u===0||K2(u)))}function cbe(i,a){a===1?i.result+=" ":a>1&&(i.result+=Np.repeat(`75`,a-1))}function pqt(i,a,u){var d,p,v,b,y,E,_,A,P=i.kind,R=i.result,B;if(B=i.input.charCodeAt(i.position),K2(B)||DD(B)||B===35||B===38||B===42||B===33||B===124||B===62||B===39||B===34||B===37||B===64||B===96||(B===63||B===45)&&(p=i.input.charCodeAt(i.position+1),K2(p)||u&&DD(p)))return!1;for(i.kind="scalar",i.result="",v=b=i.position,y=!1;B!==0;){if(B===58){if(p=i.input.charCodeAt(i.position+1),K2(p)||u&&DD(p))break}else if(B===35){if(d=i.input.charCodeAt(i.position-1),K2(d))break}else{if(i.position===i.lineStart&&aQ(i)||u&&DD(B))break;if(K4(B))if(E=i.line,_=i.lineStart,A=i.lineIndent,O0(i,!1,-1),i.lineIndent>=a){y=!0,B=i.input.charCodeAt(i.position);continue}else{i.position=b,i.line=E,i.lineStart=_,i.lineIndent=A;break}}y&&(T9(i,v,b,!1),cbe(i,i.line-E),v=b=i.position,y=!1),RC(B)||(b=i.position+1),B=i.input.charCodeAt(++i.position)}return T9(i,v,b,!1),i.result?!0:(i.kind=P,i.result=R,!1)}function bqt(i,a){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(T9(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 K4(u)?(T9(i,d,p,!0),cbe(i,O0(i,!1,a)),d=p=i.position):i.position===i.lineStart&&aQ(i)?la(i,"unexpected end of the document within a single quoted scalar"):(i.position++,p=i.position);la(i,"unexpected end of the stream within a single quoted scalar")}function mqt(i,a){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 T9(i,u,i.position,!0),i.position++,!0;if(y===92){if(T9(i,u,i.position,!0),y=i.input.charCodeAt(++i.position),K4(y))O0(i,!1,a);else if(y<256&&eze[y])i.result+=tze[y],i.position++;else if((b=hqt(y))>0){for(p=b,v=0;p>0;p--)y=i.input.charCodeAt(++i.position),(b=lqt(y))>=0?v=(v<<4)+b:la(i,"expected hexadecimal character");i.result+=dqt(v),i.position++}else la(i,"unknown escape sequence");u=d=i.position}else K4(y)?(T9(i,u,d,!0),cbe(i,O0(i,!1,a)),u=d=i.position):i.position===i.lineStart&&aQ(i)?la(i,"unexpected end of the document within a double quoted scalar"):(i.position++,d=i.position)}la(i,"unexpected end of the stream within a double quoted scalar")}function vqt(i,a){var u=!0,d,p,v,b=i.tag,y,E=i.anchor,_,A,P,R,B,j=Object.create(null),W,ee,ie,oe;if(oe=i.input.charCodeAt(i.position),oe===91)A=93,B=!1,y=[];else if(oe===123)A=125,B=!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,a),oe=i.input.charCodeAt(i.position),oe===A)return i.position++,i.tag=b,i.anchor=E,i.kind=B?"mapping":"sequence",i.result=y,!0;u?oe===44&&la(i,"expected the node content, but found ','"):la(i,"missed comma between flow collection entries"),ee=W=ie=null,P=R=!1,oe===63&&(_=i.input.charCodeAt(i.position+1),K2(_)&&(P=R=!0,i.position++,O0(i,!0,a))),d=i.line,p=i.lineStart,v=i.position,ND(i,a,rQ,!1,!0),ee=i.tag,W=i.result,O0(i,!0,a),oe=i.input.charCodeAt(i.position),(R||i.line===d)&&oe===58&&(P=!0,oe=i.input.charCodeAt(++i.position),O0(i,!0,a),ND(i,a,rQ,!1,!0),ie=i.result),B?OD(i,y,j,ee,W,ie,d,p,v):P?y.push(OD(i,null,j,ee,W,ie,d,p,v)):y.push(W),O0(i,!0,a),oe=i.input.charCodeAt(i.position),oe===44?(u=!0,oe=i.input.charCodeAt(++i.position)):u=!1}la(i,"unexpected end of the stream within a flow collection")}function wqt(i,a){var u,d,p=abe,v=!1,b=!1,y=a,E=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)abe===p?p=P===43?Y$e:aqt:la(i,"repeat of a chomping mode identifier");else if((A=fqt(P))>=0)A===0?la(i,"bad explicit indentation width of a block scalar; it cannot be less than one"):b?la(i,"repeat of an indentation width identifier"):(y=a+A-1,b=!0);else break;if(RC(P)){do P=i.input.charCodeAt(++i.position);while(RC(P));if(P===35)do P=i.input.charCodeAt(++i.position);while(!K4(P)&&P!==0)}for(;P!==0;){for(obe(i),i.lineIndent=0,P=i.input.charCodeAt(i.position);(!b||i.lineIndent<y)&&P===32;)i.lineIndent++,P=i.input.charCodeAt(++i.position);if(!b&&i.lineIndent>y&&(y=i.lineIndent),K4(P)){E++;continue}if(i.lineIndent<y){p===Y$e?i.result+=Np.repeat(`76`,v?1+E:E):p===abe&&v&&(i.result+=`77`);break}for(d?RC(P)?(_=!0,i.result+=Np.repeat(`78`,v?1+E:E)):_?(_=!1,i.result+=Np.repeat(`79`,E+1)):E===0?v&&(i.result+=" "):i.result+=Np.repeat(`80`,E):i.result+=Np.repeat(`81`,v?1+E:E),v=!0,b=!0,E=0,u=i.position;!K4(P)&&P!==0;)P=i.input.charCodeAt(++i.position);T9(i,u,i.position,!1)}return!0}function sze(i,a){var u,d=i.tag,p=i.anchor,v=[],b,y=!1,E;if(i.firstTabInLine!==-1)return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=v),E=i.input.charCodeAt(i.position);E!==0&&(i.firstTabInLine!==-1&&(i.position=i.firstTabInLine,la(i,"tab characters must not be used in indentation")),!(E!==45||(b=i.input.charCodeAt(i.position+1),!K2(b))));){if(y=!0,i.position++,O0(i,!0,-1)&&i.lineIndent<=a){v.push(null),E=i.input.charCodeAt(i.position);continue}if(u=i.line,ND(i,a,W$e,!1,!0),v.push(i.result),O0(i,!0,-1),E=i.input.charCodeAt(i.position),(i.line===u||i.lineIndent>a)&&E!==0)la(i,"bad indentation of a sequence entry");else if(i.lineIndent<a)break}return y?(i.tag=d,i.anchor=p,i.kind="sequence",i.result=v,!0):!1}function yqt(i,a,u){var d,p,v,b,y,E,_=i.tag,A=i.anchor,P={},R=Object.create(null),B=null,j=null,W=null,ee=!1,ie=!1,oe;if(i.firstTabInLine!==-1)return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=P),oe=i.input.charCodeAt(i.position);oe!==0;){if(!ee&&i.firstTabInLine!==-1&&(i.position=i.firstTabInLine,la(i,"tab characters must not be used in indentation")),d=i.input.charCodeAt(i.position+1),v=i.line,(oe===63||oe===58)&&K2(d))oe===63?(ee&&(OD(i,P,R,B,j,null,b,y,E),B=j=W=null),ie=!0,ee=!0,p=!0):ee?(ee=!1,p=!0):la(i,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),i.position+=1,oe=d;else{if(b=i.line,y=i.lineStart,E=i.position,!ND(i,u,K$e,!1,!0))break;if(i.line===v){for(oe=i.input.charCodeAt(i.position);RC(oe);)oe=i.input.charCodeAt(++i.position);if(oe===58)oe=i.input.charCodeAt(++i.position),K2(oe)||la(i,"a whitespace character is expected after the key-value separator within a block mapping"),ee&&(OD(i,P,R,B,j,null,b,y,E),B=j=W=null),ie=!0,ee=!1,p=!1,B=i.tag,j=i.result;else if(ie)la(i,"can not read an implicit mapping pair; a colon is missed");else return i.tag=_,i.anchor=A,!0}else if(ie)la(i,"can not read a block mapping entry; a multiline key may not be an implicit key");else return i.tag=_,i.anchor=A,!0}if((i.line===v||i.lineIndent>a)&&(ee&&(b=i.line,y=i.lineStart,E=i.position),ND(i,a,iQ,!0,p)&&(ee?j=i.result:W=i.result),ee||(OD(i,P,R,B,j,W,b,y,E),B=j=W=null),O0(i,!0,-1),oe=i.input.charCodeAt(i.position)),(i.line===v||i.lineIndent>a)&&oe!==0)la(i,"bad indentation of a mapping entry");else if(i.lineIndent<a)break}return ee&&OD(i,P,R,B,j,null,b,y,E),ie&&(i.tag=_,i.anchor=A,i.kind="mapping",i.result=P),ie}function xqt(i){var a,u=!1,d=!1,p,v,b;if(b=i.input.charCodeAt(i.position),b!==33)return!1;if(i.tag!==null&&la(i,"duplication of a tag property"),b=i.input.charCodeAt(++i.position),b===60?(u=!0,b=i.input.charCodeAt(++i.position)):b===33?(d=!0,p="!!",b=i.input.charCodeAt(++i.position)):p="!",a=i.position,u){do b=i.input.charCodeAt(++i.position);while(b!==0&&b!==62);i.position<i.length?(v=i.input.slice(a,i.position),b=i.input.charCodeAt(++i.position)):la(i,"unexpected end of the stream within a verbatim tag")}else{for(;b!==0&&!K2(b);)b===33&&(d?la(i,"tag suffix cannot contain exclamation marks"):(p=i.input.slice(a-1,i.position+1),X$e.test(p)||la(i,"named tag handle cannot contain such characters"),d=!0,a=i.position+1)),b=i.input.charCodeAt(++i.position);v=i.input.slice(a,i.position),uqt.test(v)&&la(i,"tag suffix cannot contain flow indicator characters")}v&&!Q$e.test(v)&&la(i,"tag name cannot contain such characters: "+v);try{v=decodeURIComponent(v)}catch{la(i,"tag name is malformed: "+v)}return u?i.tag=v:k9.call(i.tagMap,p)?i.tag=i.tagMap[p]+v:p==="!"?i.tag="!"+v:p==="!!"?i.tag="tag:yaml.org,2002:"+v:la(i,'undeclared tag handle "'+p+'"'),!0}function kqt(i){var a,u;if(u=i.input.charCodeAt(i.position),u!==38)return!1;for(i.anchor!==null&&la(i,"duplication of an anchor property"),u=i.input.charCodeAt(++i.position),a=i.position;u!==0&&!K2(u)&&!DD(u);)u=i.input.charCodeAt(++i.position);return i.position===a&&la(i,"name of an anchor node must contain at least one character"),i.anchor=i.input.slice(a,i.position),!0}function Tqt(i){var a,u,d;if(d=i.input.charCodeAt(i.position),d!==42)return!1;for(d=i.input.charCodeAt(++i.position),a=i.position;d!==0&&!K2(d)&&!DD(d);)d=i.input.charCodeAt(++i.position);return i.position===a&&la(i,"name of an alias node must contain at least one character"),u=i.input.slice(a,i.position),k9.call(i.anchorMap,u)||la(i,'unidentified alias "'+u+'"'),i.result=i.anchorMap[u],O0(i,!0,-1),!0}function ND(i,a,u,d,p){var v,b,y,E=1,_=!1,A=!1,P,R,B,j,W,ee;if(i.listener!==null&&i.listener("open",i),i.tag=null,i.anchor=null,i.kind=null,i.result=null,v=b=y=iQ===u||W$e===u,d&&O0(i,!0,-1)&&(_=!0,i.lineIndent>a?E=1:i.lineIndent===a?E=0:i.lineIndent<a&&(E=-1)),E===1)for(;xqt(i)||kqt(i);)O0(i,!0,-1)?(_=!0,y=v,i.lineIndent>a?E=1:i.lineIndent===a?E=0:i.lineIndent<a&&(E=-1)):y=!1;if(y&&(y=_||p),(E===1||iQ===u)&&(rQ===u||K$e===u?W=a:W=a+1,ee=i.position-i.lineStart,E===1?y&&(sze(i,ee)||yqt(i,ee,W))||vqt(i,W)?A=!0:(b&&wqt(i,W)||bqt(i,W)||mqt(i,W)?A=!0:Tqt(i)?(A=!0,(i.tag!==null||i.anchor!==null)&&la(i,"alias node should not have any properties")):pqt(i,W,rQ===u)&&(A=!0,i.tag===null&&(i.tag="?")),i.anchor!==null&&(i.anchorMap[i.anchor]=i.result)):E===0&&(A=y&&sze(i,ee))),i.tag===null)i.anchor!==null&&(i.anchorMap[i.anchor]=i.result);else if(i.tag==="?"){for(i.result!==null&&i.kind!=="scalar"&&la(i,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+i.kind+'"'),P=0,R=i.implicitTypes.length;P<R;P+=1)if(j=i.implicitTypes[P],j.resolve(i.result)){i.result=j.construct(i.result),i.tag=j.tag,i.anchor!==null&&(i.anchorMap[i.anchor]=i.result);break}}else if(i.tag!=="!"){if(k9.call(i.typeMap[i.kind||"fallback"],i.tag))j=i.typeMap[i.kind||"fallback"][i.tag];else for(j=null,B=i.typeMap.multi[i.kind||"fallback"],P=0,R=B.length;P<R;P+=1)if(i.tag.slice(0,B[P].tag.length)===B[P].tag){j=B[P];break}j||la(i,"unknown tag !<"+i.tag+">"),i.result!==null&&j.kind!==i.kind&&la(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)):la(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 Eqt(i){var a=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&&!K2(b);)b=i.input.charCodeAt(++i.position);for(d=i.input.slice(u,i.position),p=[],d.length<1&&la(i,"directive name must not be less than one character in length");b!==0;){for(;RC(b);)b=i.input.charCodeAt(++i.position);if(b===35){do b=i.input.charCodeAt(++i.position);while(b!==0&&!K4(b));break}if(K4(b))break;for(u=i.position;b!==0&&!K2(b);)b=i.input.charCodeAt(++i.position);p.push(i.input.slice(u,i.position))}b!==0&&obe(i),k9.call(rze,d)?rze[d](i,d,p):sQ(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&&la(i,"directives end mark is expected"),ND(i,i.lineIndent-1,iQ,!1,!0),O0(i,!0,-1),i.checkLineBreaks&&cqt.test(i.input.slice(a,i.position))&&sQ(i,"non-ASCII line breaks are interpreted as content"),i.documents.push(i.result),i.position===i.lineStart&&aQ(i)){i.input.charCodeAt(i.position)===46&&(i.position+=3,O0(i,!0,-1));return}if(i.position<i.length-1)la(i,"end of the stream or a document separator is expected");else return}function aze(i,a){i=String(i),a=a||{},i.length!==0&&(i.charCodeAt(i.length-1)!==10&&i.charCodeAt(i.length-1)!==13&&(i+=`82`),i.charCodeAt(0)===65279&&(i=i.slice(1)));var u=new gqt(i,a),d=i.indexOf("\0");for(d!==-1&&(u.position=d,la(u,"null byte is not allowed in input")),u.input+="\0";u.input.charCodeAt(u.position)===32;)u.lineIndent+=1,u.position+=1;for(;u.position<u.length-1;)Eqt(u);return u.documents}function Cqt(i,a,u){a!==null&&typeof a=="object"&&typeof u>"u"&&(u=a,a=null);var d=aze(i,u);if(typeof a!="function")return d;for(var p=0,v=d.length;p<v;p+=1)a(d[p])}function Sqt(i,a){var u=aze(i,a);if(u.length!==0){if(u.length===1)return u[0];throw new M7("expected a single document in the stream, but found more")}}var _qt=Cqt,Aqt=Sqt,Lqt={loadAll:_qt,load:Aqt},Mqt=U$e,Dqt=Lqt.load;function Iqt(i){const a=i.match(tje);if(!a)return{text:i,metadata:{}};let u=Dqt(a[1],{schema:Mqt})??{};u=typeof u=="object"&&!Array.isArray(u)?u:{};const d={};return u.displayMode&&(d.displayMode=u.displayMode.toString()),u.title&&(d.title=u.title.toString()),u.config&&(d.config=u.config),{text:i.slice(a[0].length),metadata:d}}const Oqt=i=>i.replace(/\r\n?/g,`83`).replace(/<(\w+)([^>]*)>/g,(a,u,d)=>"<"+u+d.replace(/="([^"]*)"/g,"='$1'")+">"),Nqt=i=>{const{text:a,metadata:u}=Iqt(i),{displayMode:d,title:p,config:v={}}=u;return d&&(v.gantt||(v.gantt={}),v.gantt.displayMode=d),{title:p,config:v,text:a}},Pqt=i=>{const a=So.detectInit(i)??{},u=So.detectDirective(i,"wrap");return Array.isArray(u)?a.wrap=u.some(({type:d})=>{}):(u==null?void 0:u.type)==="wrap"&&(a.wrap=!0),{text:ejt(i),directive:a}};function oze(i){const a=Oqt(i),u=Nqt(a),d=Pqt(u.text),p=cR(u.config,d.directive);return i=q$t(d.text),{code:i,title:u.title,config:p}}const Bqt=5e4,Fqt="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",Rqt="sandbox",jqt="loose",$qt="http://www.w3.org/2000/svg",zqt="http://www.w3.org/1999/xlink",qqt="http://www.w3.org/1999/xhtml",Hqt="100%",Uqt="100%",Vqt="border:0;margin:0;",Gqt="margin:0",Kqt="allow-top-navigation-by-user-activation allow-popups",Wqt='The "iframe" tag is not supported by your browser.',Yqt=["foreignobject"],Xqt=["dominant-baseline"];function cze(i){const a=oze(i);return ZX(),Pjt(a.config??{}),a}async function Qqt(i,a){J2e(),i=cze(i).code;try{await ube(i)}catch(u){if(a!=null&&a.suppressErrors)return!1;throw u}return!0}const uze=(i,a,u=[])=>{const d=eje(`{ ${u.join(" !important; ")} !important; }`);return`.${i} ${a} ${d}`},Jqt=(i,a={})=>{var p;const u=new CSSStyleSheet;if(i.fontFamily!==void 0&&u.insertRule(`:root { --mermaid-font-family: ${i.fontFamily}}`,u.cssRules.length),i.altFontFamily!==void 0&&u.insertRule(`:root { --mermaid-alt-font-family: ${i.altFontFamily}}`,u.cssRules.length),!gR(a)){const E=i.htmlLabels||((p=i.flowchart)==null?void 0:p.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const _ in a){const A=a[_];gR(A.styles)||E.forEach(P=>{u.insertRule(uze(A.id,P,A.styles),u.cssRules.length)}),gR(A.textStyles)||u.insertRule(uze(A.id,"tspan",A.textStyles),u.cssRules.length)}}let d="";if(i.themeCSS!==void 0)if(typeof u.replaceSync=="function"){const v=new CSSStyleSheet;v.replaceSync(i.themeCSS),d=k$e(v)+`84`}else d+=`${i.themeCSS}85`;return d+k$e(u)},Zqt=(i,a)=>G2e(Ajt(`${i}{${a}}`),Djt([function(d,p,v,b){if(d.type==="rule"&&Array.isArray(d.props)){if(d.parent&&d.parent.type===$2e)return;d.props=d.props.map(y=>y.startsWith(i)?y:`${i} ${y}`)}else d.type.startsWith("@")&&([...[bjt,vjt,Vje,"@scope","@container","@starting-style"],$2e].includes(d.type)||(Xe.warn(`Removing unsupported at-rule ${d.type} from CSS`),d.type=j2e))},Mjt])),eHt=(i,a,u,d)=>{const p=Jqt(i,u),v=s$t(a,p,i.themeVariables);return Zqt(d,v)},tHt=(i="",a,u)=>{let d=i;return!u&&!a&&(d=d.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),d=uR(d),d=d.replace(/<br>/g,"<br/>"),d},nHt=(i="",a)=>{var p,v;const u=(v=(p=a==null?void 0:a.viewBox)==null?void 0:p.baseVal)!=null&&v.height?a.viewBox.baseVal.height+"px":Uqt,d=btoa('<body style="'+Gqt+'">'+i+"</body>");return`<iframe style="width:${Hqt};height:${u};${Vqt}" src="data:text/html;base64,${d}" sandbox="${Kqt}">86 ${Wqt}87</iframe>`},lze=(i,a,u,d,p)=>{const v=i.append("div");v.attr("id",u),d&&v.attr("style",d);const b=v.append("svg").attr("id",a).attr("width","100%").attr("xmlns",$qt);return p&&b.attr("xmlns:xlink",p),b.append("g"),i};function hze(i,a){return i.append("iframe").attr("id",a).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const rHt=(i,a,u,d)=>{var p,v,b;(p=i.getElementById(a))==null||p.remove(),(v=i.getElementById(u))==null||v.remove(),(b=i.getElementById(d))==null||b.remove()},iHt=async function(i,a,u){var U,Be,Pe,je,Ie,Se;J2e();const d=cze(a);a=d.code;const p=mh();Xe.debug(p),a.length>((p==null?void 0:p.maxTextSize)??Bqt)&&(a=Fqt);const v=`#${i}`,b="i"+i,y="#"+b,E="d"+i,_="#"+E;let A=Dr(document.body);const P=p.securityLevel===Rqt,R=p.securityLevel===jqt,B=p.fontFamily;if(u!==void 0){if(u&&(u.innerHTML=""),P){const Ce=hze(Dr(u),b);A=Dr(Ce.nodes()[0].contentDocument.body),A.node().style.margin="0"}else A=Dr(u);lze(A,i,E,`font-family: ${B}`,zqt)}else{if(rHt(document,i,E,b),P){const Ce=hze(Dr(document.body),b);A=Dr(Ce.nodes()[0].contentDocument.body),A.node().style.margin="0"}else A=Dr("body");lze(A,i,E)}let j,W;try{j=await ube(a,{title:d.title})}catch(Ce){j=new O$e("error"),W=Ce}const ee=A.select(_).node(),ie=j.type,oe=ee.firstChild,be=oe.firstChild,ge=(Be=(U=j.renderer).getClasses)==null?void 0:Be.call(U,a,j),ae=eHt(p,ie,ge,v),ne=document.createElement("style");ne.innerHTML=ae,oe.insertBefore(ne,be);try{await j.renderer.draw(a,i,Jje,j)}catch(Ce){throw f$t.draw(a,i,Jje),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);aHt(ie,se,de,X),A.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",qqt);let pe=A.select(_).node().innerHTML;if(Xe.debug("config.arrowMarkerAbsolute",p.arrowMarkerAbsolute),pe=tHt(pe,P,h1(p.arrowMarkerAbsolute)),P){const Ce=A.select(_+" svg").node();pe=nHt(pe,Ce)}else R||(pe=pD.sanitize(pe,{ADD_TAGS:Yqt,ADD_ATTR:Xqt,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(y$t(),W)throw W;const xe=Dr(P?y:_).node();return xe&&"remove"in xe&&xe.remove(),{svg:pe,bindFunctions:j.db.bindFunctions}};function sHt(i={}){var u;i!=null&&i.fontFamily&&!((u=i.themeVariables)!=null&&u.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),Ojt(i),i!=null&&i.theme&&i.theme in C7?i.themeVariables=C7[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=C7.default.getThemeVariables(i.themeVariables));const a=typeof i=="object"?Ijt(i):e$e();Spe(a.logLevel),J2e()}const ube=(i,a={})=>{const{code:u}=oze(i);return w$t(u,a)};function aHt(i,a,u,d){$$t(a,i),z$t(a,u,d,a.attr("id"))}const jC=Object.freeze({render:iHt,parse:Qqt,getDiagramFromText:ube,initialize:sHt,getConfig:mh,setConfig:t$e,getSiteConfig:e$e,updateSiteConfig:Njt,reset:()=>{ZX()},globalReset:()=>{ZX(_D)},defaultConfig:_D});Spe(mh().logLevel),ZX(mh());const oHt=async()=>{Xe.debug("Loading registered diagrams");const a=(await Promise.allSettled(Object.entries(mD).map(async([u,{detector:d,loader:p}])=>{if(p)try{Q2e(u)}catch{try{const{diagram:b,id:y}=await p();nQ(y,b,d)}catch(b){throw Xe.error(`Failed to load external diagram with key ${u}. Removing from detectors.`),delete mD[u],b}}}))).filter(u=>u.status==="rejected");if(a.length>0){Xe.error(`Failed to load ${a.length} external diagrams`);for(const u of a)Xe.error(u);throw new Error(`Failed to load ${a.length} external diagrams`)}},cHt=(i,a,u)=>{Xe.warn(i),qje(i)?(u&&u(i.str,i.hash),a.push({...i,message:i.str,error:i})):(u&&u(i),i instanceof Error&&a.push({str:i.message,message:i.message,hash:i.name,error:i}))},fze=async function(i={querySelector:".mermaid"}){try{await uHt(i)}catch(a){if(qje(a)&&Xe.error(a.str),bm.parseError&&bm.parseError(a),!i.suppressErrors)throw Xe.error("Use the suppressErrors option to suppress these errors"),a}},uHt=async function({postRenderCallback:i,querySelector:a,nodes:u}={querySelector:".mermaid"}){const d=jC.getConfig();Xe.debug(`${i?"":"No "}Callback function found`);let p;if(u)p=u;else if(a)p=document.querySelectorAll(a);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)),jC.updateSiteConfig({startOnLoad:d==null?void 0:d.startOnLoad}));const v=new So.InitIDGenerator(d.deterministicIds,d.deterministicIDSeed);let b;const y=[];for(const E of Array.from(p)){Xe.info("Rendering diagram: "+E.id);/*! Check if previously processed */if(E.getAttribute("data-processed"))continue;E.setAttribute("data-processed","true");const _=`mermaid-${v.next()}`;b=E.innerHTML,b=ZM(So.entityDecode(b)).trim().replace(/<br\s*\/?>/gi,"<br/>");const A=So.detectInit(b);A&&Xe.debug("Detected early reinit: ",A);try{const{svg:P,bindFunctions:R}=await bze(_,b,E);E.innerHTML=P,i&&await i(_),R&&R(E)}catch(P){cHt(P,y,bm.parseError)}}if(y.length>0)throw y[0]},dze=function(i){jC.initialize(i)},lHt=async function(i,a,u){Xe.warn("mermaid.init is deprecated. Please use run instead."),i&&dze(i);const d={postRenderCallback:u,querySelector:".mermaid"};typeof a=="string"?d.querySelector=a:a&&(a instanceof HTMLElement?d.nodes=[a]:d.nodes=a),await fze(d)},hHt=async(i,{lazyLoad:a=!0}={})=>{rje(...i),a===!1&&await oHt()},gze=function(){if(bm.startOnLoad){const{startOnLoad:i}=jC.getConfig();i&&bm.run().catch(a=>Xe.error("Mermaid failed to initialize",a))}};if(typeof document<"u"){/*!88 * Wait for document loaded before starting the execution89 */window.addEventListener("load",gze,!1)}const fHt=function(i){bm.parseError=i},oQ=[];let lbe=!1;const pze=async()=>{if(!lbe){for(lbe=!0;oQ.length>0;){const i=oQ.shift();if(i)try{await i()}catch(a){Xe.error("Error executing queue",a)}}lbe=!1}},dHt=async(i,a)=>new Promise((u,d)=>{const p=()=>new Promise((v,b)=>{jC.parse(i,a).then(y=>{v(y),u(y)},y=>{var E;Xe.error("Error parsing",y),(E=bm.parseError)==null||E.call(bm,y),b(y),d(y)})});oQ.push(p),pze().catch(d)}),bze=(i,a,u)=>new Promise((d,p)=>{const v=()=>new Promise((b,y)=>{jC.render(i,a,u).then(E=>{b(E),d(E)},E=>{var _;Xe.error("Error parsing",E),(_=bm.parseError)==null||_.call(bm,E),y(E),p(E)})});oQ.push(v),pze().catch(p)}),bm={startOnLoad:!0,mermaidAPI:jC,parse:dHt,render:bze,init:lHt,run:fze,registerExternalDiagrams:hHt,initialize:dze,parseError:void 0,contentLoaded:gze,setParseErrorHandler:fHt,detectType:IX};class ki extends Error{constructor(a,u){var d="KaTeX parse error: "+a,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 E=y.slice(p,v).replace(/[^]/g,"$&ฬฒ"),_;p>15?_="โฆ"+y.slice(p-15,p):_=y.slice(0,p);var A;v+15<y.length?A=y.slice(v,v+15)+"โฆ":A=y.slice(v),d+=_+E+A}super(d),this.name="ParseError",Object.setPrototypeOf(this,ki.prototype),this.position=p,p!=null&&v!=null&&(this.length=v-p),this.rawMessage=a}}var gHt=/([A-Z])/g,hbe=i=>i.replace(gHt,"-$1").toLowerCase(),pHt={"&":"&",">":">","<":"<",'"':""","'":"'"},bHt=/[&><"']/g,zg=i=>String(i).replace(bHt,a=>pHt[a]),cQ=i=>i.type==="ordgroup"||i.type==="color"?i.body.length===1?cQ(i.body[0]):i:i.type==="font"?cQ(i.body):i,mHt=new Set(["mathord","textord","atom"]),D7=i=>mHt.has(cQ(i).type),vHt=i=>{var a=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(i);return a?a[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(a[1])?null:a[1].toLowerCase():"_relative"},uQ={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:i=>"#"+i},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(i,a)=>(a.push(i),a)},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 <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:i=>Math.max(0,i),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:i=>Math.max(0,i),cli:"-e, --max-expand <n>",cliProcessor:i=>i==="Infinity"?1/0:parseInt(i)},globalGroup:{type:"boolean",cli:!1}};function wHt(i){if("default"in i)return i.default;var a=i.type,u=Array.isArray(a)?a[0]:a;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 fbe{constructor(a){a===void 0&&(a={}),a=a||{};for(var u of Object.keys(uQ)){var d=uQ[u],p=a[u];this[u]=p!==void 0?d.processor?d.processor(p):p:wHt(d)}}reportNonstrict(a,u,d){var p=this.strict;if(typeof p=="function"&&(p=p(a,u,d)),!(!p||p==="ignore")){if(p===!0||p==="error")throw new ki("LaTeX-incompatible input and strict mode is set to 'error': "+(u+" ["+a+"]"),d);p==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(u+" ["+a+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+p+"': "+u+" ["+a+"]"))}}useStrictBehavior(a,u,d){var p=this.strict;if(typeof p=="function")try{p=p(a,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+" ["+a+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+p+"': "+u+" ["+a+"]")),!1)}isTrusted(a){if("url"in a&&a.url&&!a.protocol){var u=vHt(a.url);if(u==null)return!1;a.protocol=u}var d=typeof this.trust=="function"?this.trust(a):this.trust;return!!d}}class E9{constructor(a,u,d){this.id=a,this.size=u,this.cramped=d}sup(){return W4[yHt[this.id]]}sub(){return W4[xHt[this.id]]}fracNum(){return W4[kHt[this.id]]}fracDen(){return W4[THt[this.id]]}cramp(){return W4[EHt[this.id]]}text(){return W4[CHt[this.id]]}isTight(){return this.size>=2}}var dbe=0,lQ=1,PD=2,I7=3,bR=4,Uv=5,BD=6,Pp=7,W4=[new E9(dbe,0,!1),new E9(lQ,0,!0),new E9(PD,1,!1),new E9(I7,1,!0),new E9(bR,2,!1),new E9(Uv,2,!0),new E9(BD,3,!1),new E9(Pp,3,!0)],yHt=[bR,Uv,bR,Uv,BD,Pp,BD,Pp],xHt=[Uv,Uv,Uv,Uv,Pp,Pp,Pp,Pp],kHt=[PD,I7,bR,Uv,BD,Pp,BD,Pp],THt=[I7,I7,Uv,Uv,Pp,Pp,Pp,Pp],EHt=[lQ,lQ,I7,I7,Uv,Uv,Pp,Pp],CHt=[dbe,lQ,PD,I7,PD,I7,PD,I7],bo={DISPLAY:W4[dbe],TEXT:W4[PD],SCRIPT:W4[bR],SCRIPTSCRIPT:W4[BD]},gbe=[{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 SHt(i){for(var a=0;a<gbe.length;a++)for(var u=gbe[a],d=0;d<u.blocks.length;d++){var p=u.blocks[d];if(i>=p[0]&&i<=p[1])return u.name}return null}var hQ=[];gbe.forEach(i=>i.blocks.forEach(a=>hQ.push(...a)));function mze(i){for(var a=0;a<hQ.length;a+=2)if(i>=hQ[a]&&i<=hQ[a+1])return!0;return!1}var f1=i=>i+" "+i,FD=80,_Ht=function(a,u){return"M95,"+(622+a+u)+`90c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-1491c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-5492c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,1093s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-42994c69,-144,104.5,-217.7,106.5,-22195l`+a/2.075+" -"+a+`96c5.3,-9.3,12,-14,20,-1497H400000v`+(40+a)+`H845.272498s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,799c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z100M`+(834+a)+" "+u+"h400000v"+(40+a)+"h-400000z"},AHt=function(a,u){return"M263,"+(601+a+u)+`c0.7,0,18,39.7,52,119101c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120102c340,-704.7,510.7,-1060.3,512,-1067103l`+a/2.084+" -"+a+`104c4.7,-7.3,11,-11,19,-11105H40000v`+(40+a)+`H1012.3106s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232107c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1108s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26109c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z110M`+(1001+a)+" "+u+"h400000v"+(40+a)+"h-400000z"},LHt=function(a,u){return"M983 "+(10+a+u)+`111l`+a/3.13+" -"+a+`112c4,-6.7,10,-10,18,-10 H400000v`+(40+a)+`113H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7114s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744115c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30116c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722117c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5118c53.7,-170.3,84.5,-266.8,92.5,-289.5z119M`+(1001+a)+" "+u+"h400000v"+(40+a)+"h-400000z"},MHt=function(a,u){return"M424,"+(2398+a+u)+`120c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514121c0,-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,20122s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121123s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081124l`+a/4.223+" -"+a+`c4,-6.7,10,-10,18,-10 H400000125v`+(40+a)+`H1014.6126s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185127c-2,6,-10,9,-24,9128c-8,0,-12,-0.7,-12,-2z M`+(1001+a)+" "+u+`129h400000v`+(40+a)+"h-400000z"},DHt=function(a,u){return"M473,"+(2713+a+u)+`130c339.3,-1799.3,509.3,-2700,510,-2702 l`+a/5.298+" -"+a+`131c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+a)+`H1017.7132s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9133c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200134c0,-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,-26135s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,136606zM`+(1001+a)+" "+u+"h400000v"+(40+a)+"H1017.7z"},IHt=function(a){var u=a/2;return"M400000 "+a+" H0 L"+u+" 0 l65 45 L145 "+(a-80)+" H400000z"},OHt=function(a,u,d){var p=d-54-u-a;return"M702 "+(a+u)+"H400000"+(40+a)+`137H742v`+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 1138h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170139c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667140219 661 l218 661zM702 `+u+"H400000v"+(40+a)+"H742z"},NHt=function(a,u,d){u=1e3*u;var p="";switch(a){case"sqrtMain":p=_Ht(u,FD);break;case"sqrtSize1":p=AHt(u,FD);break;case"sqrtSize2":p=LHt(u,FD);break;case"sqrtSize3":p=MHt(u,FD);break;case"sqrtSize4":p=DHt(u,FD);break;case"sqrtTall":p=OHt(u,FD,d)}return p},PHt=function(a,u){switch(a){case"โ":return f1("M291 0 H417 V"+u+" H291z");case"โฃ":return f1("M145 0 H188 V"+u+" H145z");case"โฅ":return f1("M145 0 H188 V"+u+" H145z")+f1("M367 0 H410 V"+u+" H367z");case"โ":return f1("M457 0 H583 V"+u+" H457z");case"โข":return f1("M319 0 H403 V"+u+" H319z");case"โฅ":return f1("M263 0 H347 V"+u+" H263z");case"โช":return f1("M384 0 H504 V"+u+" H384z");case"โ":return f1("M312 0 H355 V"+u+" H312z");case"โ":return f1("M257 0 H300 V"+u+" H257z")+f1("M478 0 H521 V"+u+" H478z");default:return""}},vze={doubleleftarrow:`M262 157141l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3142 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-28143 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.5144c2 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.5145 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-87146-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7147-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z148m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l149-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-.5150 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 88151-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-68152-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-18153-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782154c-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.3155-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120156 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.8157-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 247158c-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 208159 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.3160 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-202161 l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117162-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7163 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 13164 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688165 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7166-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80167H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0168 435 0h399565z`,leftgroupunder:`M400000 262169H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219170 435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3171-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 5172-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.7173-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.5174 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.3175-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.7176-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z177m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333178 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5179 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667180-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 12181 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.7182-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0183v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5184-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.3185-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 21186 71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:f1("M40 281 V428 H0 V94 H40 V241 H400000 v40z"),leftbracketunder:f1("M0 0 h120 V290 H399995 v120 H0z"),leftbracketover:f1("M0 440 h120 V150 H399995 v-120 H0z"),leftmapsto:f1("M40 281 V448H0V74H40V241H400000v40z"),leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23187-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8188c28.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.3189 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:f1("M0 50 h400000 v40H0z m0 194h40000v40H0z"),midbrace:`M200428 334190c-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 14191-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7192 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 11193 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214194c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14195 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3196 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 0197-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.6198-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z199m368.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.820060.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.8201-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z202m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2203c0 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.6204-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z205m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 020685.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.8207-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z208m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1209c0 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 128210-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 20211 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.7212 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-85213-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.5214-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 67215 151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l216-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.5217s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1218c124.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.3219 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237220-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 0221 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 18222 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.3223-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-2224-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 58225 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-11226-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.7227 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.5z228m0 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.8229 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.5230-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 95231-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-.8232 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.3233 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.3234-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z235m0-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.3236 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 0237-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 21238 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:f1("M399960 241 V94 h40 V428 h-40 V281 H0 v-40z"),rightbracketunder:f1("M399995 0 h-120 V290 H0 v120 H400000z"),rightbracketover:f1("M399995 440 h-120 V150 H0 v-120 H399995z"),rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23239 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32240-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 142241-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40242 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-69243-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3244-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19245-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101246 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 167247c-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.3248 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 42249 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333250-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70251 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-7252-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0253 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 0254 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128255-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418256-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.9257 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114258c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751259 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.457260-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0261 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697262 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696263 -338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345264-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409265 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9266 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409267 -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 52683.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 1126910.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63270-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 1271-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59272H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359273c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22274c-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 10275-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 10276-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 10277-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,278-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,279-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,280-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,281-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 -202282c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5283c-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 130284s-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 47285121.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 6286s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11287c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z288M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32289-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 029013.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 39291-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.5292-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.5293-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 67294151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11295c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17296c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21297c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40298c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z299M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0300c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,301-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6302c-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.5z303M0 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,11304c1.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,3051c0,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,306-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z307M93 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,0308c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,309-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6310c-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.5z311M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},BHt=function(a,u){switch(a){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+u+` v1759 h347 v-84312H403z M403 1759 V0 H319 V1759 v`+u+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+u+` v1759 H0 v84 H347z313M347 1759 V0 H263 V1759 v`+u+" v1759 h84z";case"vert":return"M145 15 v585 v"+u+` v585 c2.667,10,9.667,15,21,15314c10,0,16.667,-5,20,-15 v-585 v`+-u+` v-585 c-2.667,-10,-9.667,-15,-21,-15315c-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,15316c10,0,16.667,-5,20,-15 v-585 v`+-u+` v-585 c-2.667,-10,-9.667,-15,-21,-15317c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+u+` v585 h43z318M367 15 v585 v`+u+` v585 c2.667,10,9.667,15,21,15319c10,0,16.667,-5,20,-15 v-585 v`+-u+` v-585 c-2.667,-10,-9.667,-15,-21,-15320c-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 H319z321MM319 602 V0 H403 V602 v`+u+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+u+` v1799 H0 v-84 H319z322MM319 602 V0 H403 V602 v`+u+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+u+` v602 h84z323M403 1759 V0 H319 V1759 v`+u+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+u+` v602 h84z324M347 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,1325c-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,326-36,557 l0,`+(u+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,327949.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,-9328c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,329-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189330l0,-`+(u+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,331-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,33263,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5333c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(u+9)+`334c-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,664335c-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,11336c0,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,-17337c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558338l0,-`+(u+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,339-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 RD{constructor(a){this.children=a,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(a){return this.classes.includes(a)}toNode(){for(var a=document.createDocumentFragment(),u=0;u<this.children.length;u++)a.appendChild(this.children[u].toNode());return a}toMarkup(){for(var a="",u=0;u<this.children.length;u++)a+=this.children[u].toMarkup();return a}toText(){var a=u=>u.toText();return this.children.map(a).join("")}}var pbe={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},FHt={ex:!0,em:!0,mu:!0},wze=function(a){return typeof a!="string"&&(a=a.unit),a in pbe||a in FHt||a==="ex"},Uh=function(a,u){var d;if(a.unit in pbe)d=pbe[a.unit]/u.fontMetrics().ptPerEm/u.sizeMultiplier;else if(a.unit==="mu")d=u.fontMetrics().cssEmPerMu;else{var p;if(u.style.isTight()?p=u.havingStyle(u.style.text()):p=u,a.unit==="ex")d=p.fontMetrics().xHeight;else if(a.unit==="em")d=p.fontMetrics().quad;else throw new ki("Invalid unit: '"+a.unit+"'");p!==u&&(d*=p.sizeMultiplier/u.sizeMultiplier)}return Math.min(a.number*d,u.maxSize)},Oi=function(a){return+a.toFixed(4)+"em"},C9=function(a){return a.filter(u=>u).join(" ")},yze=function(a,u,d){if(this.classes=a||[],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)}},xze=function(a){var u=document.createElement(a);u.className=C9(this.classes);for(var d of Object.keys(this.style))u.style[d]=this.style[d];for(var p of Object.keys(this.attributes))u.setAttribute(p,this.attributes[p]);for(var v=0;v<this.children.length;v++)u.appendChild(this.children[v].toNode());return u},RHt=/[\s"'>/=\x00-\x1f]/,kze=function(a){var u="<"+a;this.classes.length&&(u+=' class="'+zg(C9(this.classes))+'"');var d="";for(var p of Object.keys(this.style))d+=hbe(p)+":"+this.style[p]+";";d&&(u+=' style="'+zg(d)+'"');for(var v of Object.keys(this.attributes)){if(RHt.test(v))throw new ki("Invalid attribute name '"+v+"'");u+=" "+v+'="'+zg(this.attributes[v])+'"'}u+=">";for(var b=0;b<this.children.length;b++)u+=this.children[b].toMarkup();return u+="</"+a+">",u};class jD{constructor(a,u,d,p){yze.call(this,a,d,p),this.children=u||[]}setAttribute(a,u){this.attributes[a]=u}hasClass(a){return this.classes.includes(a)}toNode(){return xze.call(this,"span")}toMarkup(){return kze.call(this,"span")}}class fQ{constructor(a,u,d,p){yze.call(this,u,p),this.children=d||[],this.setAttribute("href",a)}setAttribute(a,u){this.attributes[a]=u}hasClass(a){return this.classes.includes(a)}toNode(){return xze.call(this,"a")}toMarkup(){return kze.call(this,"a")}}class jHt{constructor(a,u,d){this.alt=u,this.src=a,this.classes=["mord"],this.height=0,this.depth=0,this.maxFontSize=0,this.style=d}hasClass(a){return this.classes.includes(a)}toNode(){var a=document.createElement("img");a.src=this.src,a.alt=this.alt,a.className="mord";for(var u of Object.keys(this.style))a.style[u]=this.style[u];return a}toMarkup(){var a='<img src="'+zg(this.src)+'"'+(' alt="'+zg(this.alt)+'"'),u="";for(var d of Object.keys(this.style))u+=hbe(d)+":"+this.style[d]+";";return u&&(a+=' style="'+zg(u)+'"'),a+="'/>",a}}var $Ht={รฎ:"ฤฑฬ",รฏ:"ฤฑฬ",รญ:"ฤฑฬ",รฌ:"ฤฑฬ"};class mm{constructor(a,u,d,p,v,b,y,E){this.text=a,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=E||{},this.maxFontSize=0;var _=SHt(this.text.charCodeAt(0));_&&this.classes.push(_+"_fallback"),/[รฎรฏรญรฌ]/.test(this.text)&&(this.text=$Ht[this.text])}hasClass(a){return this.classes.includes(a)}toNode(){var a=document.createTextNode(this.text),u=null;this.italic>0&&(u=document.createElement("span"),u.style.marginRight=Oi(this.italic)),this.classes.length>0&&(u=u||document.createElement("span"),u.className=C9(this.classes));for(var d of Object.keys(this.style))u=u||document.createElement("span"),u.style[d]=this.style[d];return u?(u.appendChild(a),u):a}toMarkup(){var a=!1,u="<span";this.classes.length&&(a=!0,u+=' class="',u+=zg(C9(this.classes)),u+='"');var d="";this.italic>0&&(d+="margin-right:"+Oi(this.italic)+";");for(var p of Object.keys(this.style))d+=hbe(p)+":"+this.style[p]+";";d&&(a=!0,u+=' style="'+zg(d)+'"');var v=zg(this.text);return a?(u+=">",u+=v,u+="</span>",u):v}}class O7{constructor(a,u){this.children=a||[],this.attributes=u||{}}toNode(){var a="http://www.w3.org/2000/svg",u=document.createElementNS(a,"svg");for(var d of Object.keys(this.attributes))u.setAttribute(d,this.attributes[d]);for(var p=0;p<this.children.length;p++)u.appendChild(this.children[p].toNode());return u}toMarkup(){var a='<svg xmlns="http://www.w3.org/2000/svg"';for(var u of Object.keys(this.attributes))a+=" "+u+'="'+zg(this.attributes[u])+'"';a+=">";for(var d=0;d<this.children.length;d++)a+=this.children[d].toMarkup();return a+="</svg>",a}}class S9{constructor(a,u){this.pathName=a,this.alternate=u}toNode(){var a="http://www.w3.org/2000/svg",u=document.createElementNS(a,"path");return this.alternate?u.setAttribute("d",this.alternate):u.setAttribute("d",vze[this.pathName]),u}toMarkup(){return this.alternate?'<path d="'+zg(this.alternate)+'"/>':'<path d="'+zg(vze[this.pathName])+'"/>'}}class bbe{constructor(a){this.attributes=a||{}}toNode(){var a="http://www.w3.org/2000/svg",u=document.createElementNS(a,"line");for(var d of Object.keys(this.attributes))u.setAttribute(d,this.attributes[d]);return u}toMarkup(){var a="<line";for(var u of Object.keys(this.attributes))a+=" "+u+'="'+zg(this.attributes[u])+'"';return a+="/>",a}}function zHt(i){if(i instanceof mm)return i;throw new Error("Expected symbolNode but got "+String(i)+".")}function qHt(i){if(i instanceof jD)return i;throw new Error("Expected span<HtmlDomNode> but got "+String(i)+".")}var HHt=i=>i instanceof jD||i instanceof fQ||i instanceof RD,Y4={"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]}},dQ={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]},Tze={ร
:"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 Eze(i,a){Y4[i]=a}function mbe(i,a,u){if(!Y4[a])throw new Error("Font metrics not found for font: "+a+".");var d=i.charCodeAt(0),p=Y4[a][d];if(!p&&i[0]in Tze&&(d=Tze[i[0]].charCodeAt(0),p=Y4[a][d]),!p&&u==="text"&&mze(d)&&(p=Y4[a][77]),p)return{depth:p[0],height:p[1],italic:p[2],skew:p[3],width:p[4]}}var vbe={};function UHt(i){var a;if(i>=5?a=0:i>=3?a=1:a=2,!vbe[a]){var u=vbe[a]={cssEmPerMu:dQ.quad[a]/18};for(var d in dQ)dQ.hasOwnProperty(d)&&(u[d]=dQ[d][a])}return vbe[a]}var VHt={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},vh={math:{},text:{}};function we(i,a,u,d,p,v){vh[i][p]={font:a,group:u,replace:d},v&&d&&(vh[i][d]=vh[i][p])}var Ae="math",ti="text",He="main",jt="ams",wh="accent-token",ls="bin",Bp="close",$D="inner",Sa="mathord",N0="op-token",vm="open",mR="punct",Ht="rel",N7="spacing",bn="textord";we(Ae,He,Ht,"โก","\\equiv",!0),we(Ae,He,Ht,"โบ","\\prec",!0),we(Ae,He,Ht,"โป","\\succ",!0),we(Ae,He,Ht,"โผ","\\sim",!0),we(Ae,He,Ht,"โฅ","\\perp"),we(Ae,He,Ht,"โชฏ","\\preceq",!0),we(Ae,He,Ht,"โชฐ","\\succeq",!0),we(Ae,He,Ht,"โ","\\simeq",!0),we(Ae,He,Ht,"โฃ","\\mid",!0),we(Ae,He,Ht,"โช","\\ll",!0),we(Ae,He,Ht,"โซ","\\gg",!0),we(Ae,He,Ht,"โ","\\asymp",!0),we(Ae,He,Ht,"โฅ","\\parallel"),we(Ae,He,Ht,"โ","\\bowtie",!0),we(Ae,He,Ht,"โฃ","\\smile",!0),we(Ae,He,Ht,"โ","\\sqsubseteq",!0),we(Ae,He,Ht,"โ","\\sqsupseteq",!0),we(Ae,He,Ht,"โ","\\doteq",!0),we(Ae,He,Ht,"โข","\\frown",!0),we(Ae,He,Ht,"โ","\\ni",!0),we(Ae,He,Ht,"โ","\\propto",!0),we(Ae,He,Ht,"โข","\\vdash",!0),we(Ae,He,Ht,"โฃ","\\dashv",!0),we(Ae,He,Ht,"โ","\\owns"),we(Ae,He,mR,".","\\ldotp"),we(Ae,He,mR,"โ
","\\cdotp"),we(Ae,He,mR,"โ
","ยท"),we(ti,He,bn,"โ
","ยท"),we(Ae,He,bn,"#","\\#"),we(ti,He,bn,"#","\\#"),we(Ae,He,bn,"&","\\&"),we(ti,He,bn,"&","\\&"),we(Ae,He,bn,"โต","\\aleph",!0),we(Ae,He,bn,"โ","\\forall",!0),we(Ae,He,bn,"โ","\\hbar",!0),we(Ae,He,bn,"โ","\\exists",!0),we(Ae,He,bn,"โ","\\nabla",!0),we(Ae,He,bn,"โญ","\\flat",!0),we(Ae,He,bn,"โ","\\ell",!0),we(Ae,He,bn,"โฎ","\\natural",!0),we(Ae,He,bn,"โฃ","\\clubsuit",!0),we(Ae,He,bn,"โ","\\wp",!0),we(Ae,He,bn,"โฏ","\\sharp",!0),we(Ae,He,bn,"โข","\\diamondsuit",!0),we(Ae,He,bn,"โ","\\Re",!0),we(Ae,He,bn,"โก","\\heartsuit",!0),we(Ae,He,bn,"โ","\\Im",!0),we(Ae,He,bn,"โ ","\\spadesuit",!0),we(Ae,He,bn,"ยง","\\S",!0),we(ti,He,bn,"ยง","\\S"),we(Ae,He,bn,"ยถ","\\P",!0),we(ti,He,bn,"ยถ","\\P"),we(Ae,He,bn,"โ ","\\dag"),we(ti,He,bn,"โ ","\\dag"),we(ti,He,bn,"โ ","\\textdagger"),we(Ae,He,bn,"โก","\\ddag"),we(ti,He,bn,"โก","\\ddag"),we(ti,He,bn,"โก","\\textdaggerdbl"),we(Ae,He,Bp,"โฑ","\\rmoustache",!0),we(Ae,He,vm,"โฐ","\\lmoustache",!0),we(Ae,He,Bp,"โฏ","\\rgroup",!0),we(Ae,He,vm,"โฎ","\\lgroup",!0),we(Ae,He,ls,"โ","\\mp",!0),we(Ae,He,ls,"โ","\\ominus",!0),we(Ae,He,ls,"โ","\\uplus",!0),we(Ae,He,ls,"โ","\\sqcap",!0),we(Ae,He,ls,"โ","\\ast"),we(Ae,He,ls,"โ","\\sqcup",!0),we(Ae,He,ls,"โฏ","\\bigcirc",!0),we(Ae,He,ls,"โ","\\bullet",!0),we(Ae,He,ls,"โก","\\ddagger"),we(Ae,He,ls,"โ","\\wr",!0),we(Ae,He,ls,"โจฟ","\\amalg"),we(Ae,He,ls,"&","\\And"),we(Ae,He,Ht,"โต","\\longleftarrow",!0),we(Ae,He,Ht,"โ","\\Leftarrow",!0),we(Ae,He,Ht,"โธ","\\Longleftarrow",!0),we(Ae,He,Ht,"โถ","\\longrightarrow",!0),we(Ae,He,Ht,"โ","\\Rightarrow",!0),we(Ae,He,Ht,"โน","\\Longrightarrow",!0),we(Ae,He,Ht,"โ","\\leftrightarrow",!0),we(Ae,He,Ht,"โท","\\longleftrightarrow",!0),we(Ae,He,Ht,"โ","\\Leftrightarrow",!0),we(Ae,He,Ht,"โบ","\\Longleftrightarrow",!0),we(Ae,He,Ht,"โฆ","\\mapsto",!0),we(Ae,He,Ht,"โผ","\\longmapsto",!0),we(Ae,He,Ht,"โ","\\nearrow",!0),we(Ae,He,Ht,"โฉ","\\hookleftarrow",!0),we(Ae,He,Ht,"โช","\\hookrightarrow",!0),we(Ae,He,Ht,"โ","\\searrow",!0),we(Ae,He,Ht,"โผ","\\leftharpoonup",!0),we(Ae,He,Ht,"โ","\\rightharpoonup",!0),we(Ae,He,Ht,"โ","\\swarrow",!0),we(Ae,He,Ht,"โฝ","\\leftharpoondown",!0),we(Ae,He,Ht,"โ","\\rightharpoondown",!0),we(Ae,He,Ht,"โ","\\nwarrow",!0),we(Ae,He,Ht,"โ","\\rightleftharpoons",!0),we(Ae,jt,Ht,"โฎ","\\nless",!0),we(Ae,jt,Ht,"๎","\\@nleqslant"),we(Ae,jt,Ht,"๎","\\@nleqq"),we(Ae,jt,Ht,"โช","\\lneq",!0),we(Ae,jt,Ht,"โจ","\\lneqq",!0),we(Ae,jt,Ht,"๎","\\@lvertneqq"),we(Ae,jt,Ht,"โฆ","\\lnsim",!0),we(Ae,jt,Ht,"โช","\\lnapprox",!0),we(Ae,jt,Ht,"โ","\\nprec",!0),we(Ae,jt,Ht,"โ ","\\npreceq",!0),we(Ae,jt,Ht,"โจ","\\precnsim",!0),we(Ae,jt,Ht,"โชน","\\precnapprox",!0),we(Ae,jt,Ht,"โ","\\nsim",!0),we(Ae,jt,Ht,"๎","\\@nshortmid"),we(Ae,jt,Ht,"โค","\\nmid",!0),we(Ae,jt,Ht,"โฌ","\\nvdash",!0),we(Ae,jt,Ht,"โญ","\\nvDash",!0),we(Ae,jt,Ht,"โช","\\ntriangleleft"),we(Ae,jt,Ht,"โฌ","\\ntrianglelefteq",!0),we(Ae,jt,Ht,"โ","\\subsetneq",!0),we(Ae,jt,Ht,"๎","\\@varsubsetneq"),we(Ae,jt,Ht,"โซ","\\subsetneqq",!0),we(Ae,jt,Ht,"๎","\\@varsubsetneqq"),we(Ae,jt,Ht,"โฏ","\\ngtr",!0),we(Ae,jt,Ht,"๎","\\@ngeqslant"),we(Ae,jt,Ht,"๎","\\@ngeqq"),we(Ae,jt,Ht,"โช","\\gneq",!0),we(Ae,jt,Ht,"โฉ","\\gneqq",!0),we(Ae,jt,Ht,"๎","\\@gvertneqq"),we(Ae,jt,Ht,"โง","\\gnsim",!0),we(Ae,jt,Ht,"โช","\\gnapprox",!0),we(Ae,jt,Ht,"โ","\\nsucc",!0),we(Ae,jt,Ht,"โก","\\nsucceq",!0),we(Ae,jt,Ht,"โฉ","\\succnsim",!0),we(Ae,jt,Ht,"โชบ","\\succnapprox",!0),we(Ae,jt,Ht,"โ","\\ncong",!0),we(Ae,jt,Ht,"๎","\\@nshortparallel"),we(Ae,jt,Ht,"โฆ","\\nparallel",!0),we(Ae,jt,Ht,"โฏ","\\nVDash",!0),we(Ae,jt,Ht,"โซ","\\ntriangleright"),we(Ae,jt,Ht,"โญ","\\ntrianglerighteq",!0),we(Ae,jt,Ht,"๎","\\@nsupseteqq"),we(Ae,jt,Ht,"โ","\\supsetneq",!0),we(Ae,jt,Ht,"๎","\\@varsupsetneq"),we(Ae,jt,Ht,"โซ","\\supsetneqq",!0),we(Ae,jt,Ht,"๎","\\@varsupsetneqq"),we(Ae,jt,Ht,"โฎ","\\nVdash",!0),we(Ae,jt,Ht,"โชต","\\precneqq",!0),we(Ae,jt,Ht,"โชถ","\\succneqq",!0),we(Ae,jt,Ht,"๎","\\@nsubseteqq"),we(Ae,jt,ls,"โด","\\unlhd"),we(Ae,jt,ls,"โต","\\unrhd"),we(Ae,jt,Ht,"โ","\\nleftarrow",!0),we(Ae,jt,Ht,"โ","\\nrightarrow",!0),we(Ae,jt,Ht,"โ","\\nLeftarrow",!0),we(Ae,jt,Ht,"โ","\\nRightarrow",!0),we(Ae,jt,Ht,"โฎ","\\nleftrightarrow",!0),we(Ae,jt,Ht,"โ","\\nLeftrightarrow",!0),we(Ae,jt,Ht,"โณ","\\vartriangle"),we(Ae,jt,bn,"โ","\\hslash"),we(Ae,jt,bn,"โฝ","\\triangledown"),we(Ae,jt,bn,"โ","\\lozenge"),we(Ae,jt,bn,"โ","\\circledS"),we(Ae,jt,bn,"ยฎ","\\circledR"),we(ti,jt,bn,"ยฎ","\\circledR"),we(Ae,jt,bn,"โก","\\measuredangle",!0),we(Ae,jt,bn,"โ","\\nexists"),we(Ae,jt,bn,"โง","\\mho"),we(Ae,jt,bn,"โฒ","\\Finv",!0),we(Ae,jt,bn,"โ
","\\Game",!0),we(Ae,jt,bn,"โต","\\backprime"),we(Ae,jt,bn,"โฒ","\\blacktriangle"),we(Ae,jt,bn,"โผ","\\blacktriangledown"),we(Ae,jt,bn,"โ ","\\blacksquare"),we(Ae,jt,bn,"โงซ","\\blacklozenge"),we(Ae,jt,bn,"โ
","\\bigstar"),we(Ae,jt,bn,"โข","\\sphericalangle",!0),we(Ae,jt,bn,"โ","\\complement",!0),we(Ae,jt,bn,"รฐ","\\eth",!0),we(ti,He,bn,"รฐ","รฐ"),we(Ae,jt,bn,"โฑ","\\diagup"),we(Ae,jt,bn,"โฒ","\\diagdown"),we(Ae,jt,bn,"โก","\\square"),we(Ae,jt,bn,"โก","\\Box"),we(Ae,jt,bn,"โ","\\Diamond"),we(Ae,jt,bn,"ยฅ","\\yen",!0),we(ti,jt,bn,"ยฅ","\\yen",!0),we(Ae,jt,bn,"โ","\\checkmark",!0),we(ti,jt,bn,"โ","\\checkmark"),we(Ae,jt,bn,"โถ","\\beth",!0),we(Ae,jt,bn,"โธ","\\daleth",!0),we(Ae,jt,bn,"โท","\\gimel",!0),we(Ae,jt,bn,"ฯ","\\digamma",!0),we(Ae,jt,bn,"ฯฐ","\\varkappa"),we(Ae,jt,vm,"โ","\\@ulcorner",!0),we(Ae,jt,Bp,"โ","\\@urcorner",!0),we(Ae,jt,vm,"โ","\\@llcorner",!0),we(Ae,jt,Bp,"โ","\\@lrcorner",!0),we(Ae,jt,Ht,"โฆ","\\leqq",!0),we(Ae,jt,Ht,"โฉฝ","\\leqslant",!0),we(Ae,jt,Ht,"โช","\\eqslantless",!0),we(Ae,jt,Ht,"โฒ","\\lesssim",!0),we(Ae,jt,Ht,"โช
","\\lessapprox",!0),we(Ae,jt,Ht,"โ","\\approxeq",!0),we(Ae,jt,ls,"โ","\\lessdot"),we(Ae,jt,Ht,"โ","\\lll",!0),we(Ae,jt,Ht,"โถ","\\lessgtr",!0),we(Ae,jt,Ht,"โ","\\lesseqgtr",!0),we(Ae,jt,Ht,"โช","\\lesseqqgtr",!0),we(Ae,jt,Ht,"โ","\\doteqdot"),we(Ae,jt,Ht,"โ","\\risingdotseq",!0),we(Ae,jt,Ht,"โ","\\fallingdotseq",!0),we(Ae,jt,Ht,"โฝ","\\backsim",!0),we(Ae,jt,Ht,"โ","\\backsimeq",!0),we(Ae,jt,Ht,"โซ
","\\subseteqq",!0),we(Ae,jt,Ht,"โ","\\Subset",!0),we(Ae,jt,Ht,"โ","\\sqsubset",!0),we(Ae,jt,Ht,"โผ","\\preccurlyeq",!0),we(Ae,jt,Ht,"โ","\\curlyeqprec",!0),we(Ae,jt,Ht,"โพ","\\precsim",!0),we(Ae,jt,Ht,"โชท","\\precapprox",!0),we(Ae,jt,Ht,"โฒ","\\vartriangleleft"),we(Ae,jt,Ht,"โด","\\trianglelefteq"),we(Ae,jt,Ht,"โจ","\\vDash",!0),we(Ae,jt,Ht,"โช","\\Vvdash",!0),we(Ae,jt,Ht,"โฃ","\\smallsmile"),we(Ae,jt,Ht,"โข","\\smallfrown"),we(Ae,jt,Ht,"โ","\\bumpeq",!0),we(Ae,jt,Ht,"โ","\\Bumpeq",!0),we(Ae,jt,Ht,"โง","\\geqq",!0),we(Ae,jt,Ht,"โฉพ","\\geqslant",!0),we(Ae,jt,Ht,"โช","\\eqslantgtr",!0),we(Ae,jt,Ht,"โณ","\\gtrsim",!0),we(Ae,jt,Ht,"โช","\\gtrapprox",!0),we(Ae,jt,ls,"โ","\\gtrdot"),we(Ae,jt,Ht,"โ","\\ggg",!0),we(Ae,jt,Ht,"โท","\\gtrless",!0),we(Ae,jt,Ht,"โ","\\gtreqless",!0),we(Ae,jt,Ht,"โช","\\gtreqqless",!0),we(Ae,jt,Ht,"โ","\\eqcirc",!0),we(Ae,jt,Ht,"โ","\\circeq",!0),we(Ae,jt,Ht,"โ","\\triangleq",!0),we(Ae,jt,Ht,"โผ","\\thicksim"),we(Ae,jt,Ht,"โ","\\thickapprox"),we(Ae,jt,Ht,"โซ","\\supseteqq",!0),we(Ae,jt,Ht,"โ","\\Supset",!0),we(Ae,jt,Ht,"โ","\\sqsupset",!0),we(Ae,jt,Ht,"โฝ","\\succcurlyeq",!0),we(Ae,jt,Ht,"โ","\\curlyeqsucc",!0),we(Ae,jt,Ht,"โฟ","\\succsim",!0),we(Ae,jt,Ht,"โชธ","\\succapprox",!0),we(Ae,jt,Ht,"โณ","\\vartriangleright"),we(Ae,jt,Ht,"โต","\\trianglerighteq"),we(Ae,jt,Ht,"โฉ","\\Vdash",!0),we(Ae,jt,Ht,"โฃ","\\shortmid"),we(Ae,jt,Ht,"โฅ","\\shortparallel"),we(Ae,jt,Ht,"โฌ","\\between",!0),we(Ae,jt,Ht,"โ","\\pitchfork",!0),we(Ae,jt,Ht,"โ","\\varpropto"),we(Ae,jt,Ht,"โ","\\blacktriangleleft"),we(Ae,jt,Ht,"โด","\\therefore",!0),we(Ae,jt,Ht,"โ","\\backepsilon"),we(Ae,jt,Ht,"โถ","\\blacktriangleright"),we(Ae,jt,Ht,"โต","\\because",!0),we(Ae,jt,Ht,"โ","\\llless"),we(Ae,jt,Ht,"โ","\\gggtr"),we(Ae,jt,ls,"โฒ","\\lhd"),we(Ae,jt,ls,"โณ","\\rhd"),we(Ae,jt,Ht,"โ","\\eqsim",!0),we(Ae,He,Ht,"โ","\\Join"),we(Ae,jt,Ht,"โ","\\Doteq",!0),we(Ae,jt,ls,"โ","\\dotplus",!0),we(Ae,jt,ls,"โ","\\smallsetminus"),we(Ae,jt,ls,"โ","\\Cap",!0),we(Ae,jt,ls,"โ","\\Cup",!0),we(Ae,jt,ls,"โฉ","\\doublebarwedge",!0),we(Ae,jt,ls,"โ","\\boxminus",!0),we(Ae,jt,ls,"โ","\\boxplus",!0),we(Ae,jt,ls,"โ","\\divideontimes",!0),we(Ae,jt,ls,"โ","\\ltimes",!0),we(Ae,jt,ls,"โ","\\rtimes",!0),we(Ae,jt,ls,"โ","\\leftthreetimes",!0),we(Ae,jt,ls,"โ","\\rightthreetimes",!0),we(Ae,jt,ls,"โ","\\curlywedge",!0),we(Ae,jt,ls,"โ","\\curlyvee",!0),we(Ae,jt,ls,"โ","\\circleddash",!0),we(Ae,jt,ls,"โ","\\circledast",!0),we(Ae,jt,ls,"โ
","\\centerdot"),we(Ae,jt,ls,"โบ","\\intercal",!0),we(Ae,jt,ls,"โ","\\doublecap"),we(Ae,jt,ls,"โ","\\doublecup"),we(Ae,jt,ls,"โ ","\\boxtimes",!0),we(Ae,jt,Ht,"โข","\\dashrightarrow",!0),we(Ae,jt,Ht,"โ ","\\dashleftarrow",!0),we(Ae,jt,Ht,"โ","\\leftleftarrows",!0),we(Ae,jt,Ht,"โ","\\leftrightarrows",!0),we(Ae,jt,Ht,"โ","\\Lleftarrow",!0),we(Ae,jt,Ht,"โ","\\twoheadleftarrow",!0),we(Ae,jt,Ht,"โข","\\leftarrowtail",!0),we(Ae,jt,Ht,"โซ","\\looparrowleft",!0),we(Ae,jt,Ht,"โ","\\leftrightharpoons",!0),we(Ae,jt,Ht,"โถ","\\curvearrowleft",!0),we(Ae,jt,Ht,"โบ","\\circlearrowleft",!0),we(Ae,jt,Ht,"โฐ","\\Lsh",!0),we(Ae,jt,Ht,"โ","\\upuparrows",!0),we(Ae,jt,Ht,"โฟ","\\upharpoonleft",!0),we(Ae,jt,Ht,"โ","\\downharpoonleft",!0),we(Ae,He,Ht,"โถ","\\origof",!0),we(Ae,He,Ht,"โท","\\imageof",!0),we(Ae,jt,Ht,"โธ","\\multimap",!0),we(Ae,jt,Ht,"โญ","\\leftrightsquigarrow",!0),we(Ae,jt,Ht,"โ","\\rightrightarrows",!0),we(Ae,jt,Ht,"โ","\\rightleftarrows",!0),we(Ae,jt,Ht,"โ ","\\twoheadrightarrow",!0),we(Ae,jt,Ht,"โฃ","\\rightarrowtail",!0),we(Ae,jt,Ht,"โฌ","\\looparrowright",!0),we(Ae,jt,Ht,"โท","\\curvearrowright",!0),we(Ae,jt,Ht,"โป","\\circlearrowright",!0),we(Ae,jt,Ht,"โฑ","\\Rsh",!0),we(Ae,jt,Ht,"โ","\\downdownarrows",!0),we(Ae,jt,Ht,"โพ","\\upharpoonright",!0),we(Ae,jt,Ht,"โ","\\downharpoonright",!0),we(Ae,jt,Ht,"โ","\\rightsquigarrow",!0),we(Ae,jt,Ht,"โ","\\leadsto"),we(Ae,jt,Ht,"โ","\\Rrightarrow",!0),we(Ae,jt,Ht,"โพ","\\restriction"),we(Ae,He,bn,"โ","`"),we(Ae,He,bn,"$","\\$"),we(ti,He,bn,"$","\\$"),we(ti,He,bn,"$","\\textdollar"),we(Ae,He,bn,"%","\\%"),we(ti,He,bn,"%","\\%"),we(Ae,He,bn,"_","\\_"),we(ti,He,bn,"_","\\_"),we(ti,He,bn,"_","\\textunderscore"),we(Ae,He,bn,"โ ","\\angle",!0),we(Ae,He,bn,"โ","\\infty",!0),we(Ae,He,bn,"โฒ","\\prime"),we(Ae,He,bn,"โณ","\\triangle"),we(Ae,He,bn,"ฮ","\\Gamma",!0),we(Ae,He,bn,"ฮ","\\Delta",!0),we(Ae,He,bn,"ฮ","\\Theta",!0),we(Ae,He,bn,"ฮ","\\Lambda",!0),we(Ae,He,bn,"ฮ","\\Xi",!0),we(Ae,He,bn,"ฮ ","\\Pi",!0),we(Ae,He,bn,"ฮฃ","\\Sigma",!0),we(Ae,He,bn,"ฮฅ","\\Upsilon",!0),we(Ae,He,bn,"ฮฆ","\\Phi",!0),we(Ae,He,bn,"ฮจ","\\Psi",!0),we(Ae,He,bn,"ฮฉ","\\Omega",!0),we(Ae,He,bn,"A","ฮ"),we(Ae,He,bn,"B","ฮ"),we(Ae,He,bn,"E","ฮ"),we(Ae,He,bn,"Z","ฮ"),we(Ae,He,bn,"H","ฮ"),we(Ae,He,bn,"I","ฮ"),we(Ae,He,bn,"K","ฮ"),we(Ae,He,bn,"M","ฮ"),we(Ae,He,bn,"N","ฮ"),we(Ae,He,bn,"O","ฮ"),we(Ae,He,bn,"P","ฮก"),we(Ae,He,bn,"T","ฮค"),we(Ae,He,bn,"X","ฮง"),we(Ae,He,bn,"ยฌ","\\neg",!0),we(Ae,He,bn,"ยฌ","\\lnot"),we(Ae,He,bn,"โค","\\top"),we(Ae,He,bn,"โฅ","\\bot"),we(Ae,He,bn,"โ
","\\emptyset"),we(Ae,jt,bn,"โ
","\\varnothing"),we(Ae,He,Sa,"ฮฑ","\\alpha",!0),we(Ae,He,Sa,"ฮฒ","\\beta",!0),we(Ae,He,Sa,"ฮณ","\\gamma",!0),we(Ae,He,Sa,"ฮด","\\delta",!0),we(Ae,He,Sa,"ฯต","\\epsilon",!0),we(Ae,He,Sa,"ฮถ","\\zeta",!0),we(Ae,He,Sa,"ฮท","\\eta",!0),we(Ae,He,Sa,"ฮธ","\\theta",!0),we(Ae,He,Sa,"ฮน","\\iota",!0),we(Ae,He,Sa,"ฮบ","\\kappa",!0),we(Ae,He,Sa,"ฮป","\\lambda",!0),we(Ae,He,Sa,"ฮผ","\\mu",!0),we(Ae,He,Sa,"ฮฝ","\\nu",!0),we(Ae,He,Sa,"ฮพ","\\xi",!0),we(Ae,He,Sa,"ฮฟ","\\omicron",!0),we(Ae,He,Sa,"ฯ","\\pi",!0),we(Ae,He,Sa,"ฯ","\\rho",!0),we(Ae,He,Sa,"ฯ","\\sigma",!0),we(Ae,He,Sa,"ฯ","\\tau",!0),we(Ae,He,Sa,"ฯ
","\\upsilon",!0),we(Ae,He,Sa,"ฯ","\\phi",!0),we(Ae,He,Sa,"ฯ","\\chi",!0),we(Ae,He,Sa,"ฯ","\\psi",!0),we(Ae,He,Sa,"ฯ","\\omega",!0),we(Ae,He,Sa,"ฮต","\\varepsilon",!0),we(Ae,He,Sa,"ฯ","\\vartheta",!0),we(Ae,He,Sa,"ฯ","\\varpi",!0),we(Ae,He,Sa,"ฯฑ","\\varrho",!0),we(Ae,He,Sa,"ฯ","\\varsigma",!0),we(Ae,He,Sa,"ฯ","\\varphi",!0),we(Ae,He,ls,"โ","*",!0),we(Ae,He,ls,"+","+"),we(Ae,He,ls,"โ","-",!0),we(Ae,He,ls,"โ
","\\cdot",!0),we(Ae,He,ls,"โ","\\circ",!0),we(Ae,He,ls,"รท","\\div",!0),we(Ae,He,ls,"ยฑ","\\pm",!0),we(Ae,He,ls,"ร","\\times",!0),we(Ae,He,ls,"โฉ","\\cap",!0),we(Ae,He,ls,"โช","\\cup",!0),we(Ae,He,ls,"โ","\\setminus",!0),we(Ae,He,ls,"โง","\\land"),we(Ae,He,ls,"โจ","\\lor"),we(Ae,He,ls,"โง","\\wedge",!0),we(Ae,He,ls,"โจ","\\vee",!0),we(Ae,He,bn,"โ","\\surd"),we(Ae,He,vm,"โจ","\\langle",!0),we(Ae,He,vm,"โฃ","\\lvert"),we(Ae,He,vm,"โฅ","\\lVert"),we(Ae,He,Bp,"?","?"),we(Ae,He,Bp,"!","!"),we(Ae,He,Bp,"โฉ","\\rangle",!0),we(Ae,He,Bp,"โฃ","\\rvert"),we(Ae,He,Bp,"โฅ","\\rVert"),we(Ae,He,Ht,"=","="),we(Ae,He,Ht,":",":"),we(Ae,He,Ht,"โ","\\approx",!0),we(Ae,He,Ht,"โ
","\\cong",!0),we(Ae,He,Ht,"โฅ","\\ge"),we(Ae,He,Ht,"โฅ","\\geq",!0),we(Ae,He,Ht,"โ","\\gets"),we(Ae,He,Ht,">","\\gt",!0),we(Ae,He,Ht,"โ","\\in",!0),we(Ae,He,Ht,"๎ ","\\@not"),we(Ae,He,Ht,"โ","\\subset",!0),we(Ae,He,Ht,"โ","\\supset",!0),we(Ae,He,Ht,"โ","\\subseteq",!0),we(Ae,He,Ht,"โ","\\supseteq",!0),we(Ae,jt,Ht,"โ","\\nsubseteq",!0),we(Ae,jt,Ht,"โ","\\nsupseteq",!0),we(Ae,He,Ht,"โจ","\\models"),we(Ae,He,Ht,"โ","\\leftarrow",!0),we(Ae,He,Ht,"โค","\\le"),we(Ae,He,Ht,"โค","\\leq",!0),we(Ae,He,Ht,"<","\\lt",!0),we(Ae,He,Ht,"โ","\\rightarrow",!0),we(Ae,He,Ht,"โ","\\to"),we(Ae,jt,Ht,"โฑ","\\ngeq",!0),we(Ae,jt,Ht,"โฐ","\\nleq",!0),we(Ae,He,N7,"ย ","\\ "),we(Ae,He,N7,"ย ","\\space"),we(Ae,He,N7,"ย ","\\nobreakspace"),we(ti,He,N7,"ย ","\\ "),we(ti,He,N7,"ย "," "),we(ti,He,N7,"ย ","\\space"),we(ti,He,N7,"ย ","\\nobreakspace"),we(Ae,He,N7,null,"\\nobreak"),we(Ae,He,N7,null,"\\allowbreak"),we(Ae,He,mR,",",","),we(Ae,He,mR,";",";"),we(Ae,jt,ls,"โผ","\\barwedge",!0),we(Ae,jt,ls,"โป","\\veebar",!0),we(Ae,He,ls,"โ","\\odot",!0),we(Ae,He,ls,"โ","\\oplus",!0),we(Ae,He,ls,"โ","\\otimes",!0),we(Ae,He,bn,"โ","\\partial",!0),we(Ae,He,ls,"โ","\\oslash",!0),we(Ae,jt,ls,"โ","\\circledcirc",!0),we(Ae,jt,ls,"โก","\\boxdot",!0),we(Ae,He,ls,"โณ","\\bigtriangleup"),we(Ae,He,ls,"โฝ","\\bigtriangledown"),we(Ae,He,ls,"โ ","\\dagger"),we(Ae,He,ls,"โ","\\diamond"),we(Ae,He,ls,"โ","\\star"),we(Ae,He,ls,"โ","\\triangleleft"),we(Ae,He,ls,"โน","\\triangleright"),we(Ae,He,vm,"{","\\{"),we(ti,He,bn,"{","\\{"),we(ti,He,bn,"{","\\textbraceleft"),we(Ae,He,Bp,"}","\\}"),we(ti,He,bn,"}","\\}"),we(ti,He,bn,"}","\\textbraceright"),we(Ae,He,vm,"{","\\lbrace"),we(Ae,He,Bp,"}","\\rbrace"),we(Ae,He,vm,"[","\\lbrack",!0),we(ti,He,bn,"[","\\lbrack",!0),we(Ae,He,Bp,"]","\\rbrack",!0),we(ti,He,bn,"]","\\rbrack",!0),we(Ae,He,vm,"(","\\lparen",!0),we(Ae,He,Bp,")","\\rparen",!0),we(ti,He,bn,"<","\\textless",!0),we(ti,He,bn,">","\\textgreater",!0),we(Ae,He,vm,"โ","\\lfloor",!0),we(Ae,He,Bp,"โ","\\rfloor",!0),we(Ae,He,vm,"โ","\\lceil",!0),we(Ae,He,Bp,"โ","\\rceil",!0),we(Ae,He,bn,"\\","\\backslash"),we(Ae,He,bn,"โฃ","|"),we(Ae,He,bn,"โฃ","\\vert"),we(ti,He,bn,"|","\\textbar",!0),we(Ae,He,bn,"โฅ","\\|"),we(Ae,He,bn,"โฅ","\\Vert"),we(ti,He,bn,"โฅ","\\textbardbl"),we(ti,He,bn,"~","\\textasciitilde"),we(ti,He,bn,"\\","\\textbackslash"),we(ti,He,bn,"^","\\textasciicircum"),we(Ae,He,Ht,"โ","\\uparrow",!0),we(Ae,He,Ht,"โ","\\Uparrow",!0),we(Ae,He,Ht,"โ","\\downarrow",!0),we(Ae,He,Ht,"โ","\\Downarrow",!0),we(Ae,He,Ht,"โ","\\updownarrow",!0),we(Ae,He,Ht,"โ","\\Updownarrow",!0),we(Ae,He,N0,"โ","\\coprod"),we(Ae,He,N0,"โ","\\bigvee"),we(Ae,He,N0,"โ","\\bigwedge"),we(Ae,He,N0,"โจ","\\biguplus"),we(Ae,He,N0,"โ","\\bigcap"),we(Ae,He,N0,"โ","\\bigcup"),we(Ae,He,N0,"โซ","\\int"),we(Ae,He,N0,"โซ","\\intop"),we(Ae,He,N0,"โฌ","\\iint"),we(Ae,He,N0,"โญ","\\iiint"),we(Ae,He,N0,"โ","\\prod"),we(Ae,He,N0,"โ","\\sum"),we(Ae,He,N0,"โจ","\\bigotimes"),we(Ae,He,N0,"โจ","\\bigoplus"),we(Ae,He,N0,"โจ","\\bigodot"),we(Ae,He,N0,"โฎ","\\oint"),we(Ae,He,N0,"โฏ","\\oiint"),we(Ae,He,N0,"โฐ","\\oiiint"),we(Ae,He,N0,"โจ","\\bigsqcup"),we(Ae,He,N0,"โซ","\\smallint"),we(ti,He,$D,"โฆ","\\textellipsis"),we(Ae,He,$D,"โฆ","\\mathellipsis"),we(ti,He,$D,"โฆ","\\ldots",!0),we(Ae,He,$D,"โฆ","\\ldots",!0),we(Ae,He,$D,"โฏ","\\@cdots",!0),we(Ae,He,$D,"โฑ","\\ddots",!0),we(Ae,He,bn,"โฎ","\\varvdots"),we(ti,He,bn,"โฎ","\\varvdots"),we(Ae,He,wh,"ห","\\acute"),we(Ae,He,wh,"ห","\\grave"),we(Ae,He,wh,"ยจ","\\ddot"),we(Ae,He,wh,"~","\\tilde"),we(Ae,He,wh,"ห","\\bar"),we(Ae,He,wh,"ห","\\breve"),we(Ae,He,wh,"ห","\\check"),we(Ae,He,wh,"^","\\hat"),we(Ae,He,wh,"โ","\\vec"),we(Ae,He,wh,"ห","\\dot"),we(Ae,He,wh,"ห","\\mathring"),we(Ae,He,Sa,"๎ฑ","\\@imath"),we(Ae,He,Sa,"๎ท","\\@jmath"),we(Ae,He,bn,"ฤฑ","ฤฑ"),we(Ae,He,bn,"ศท","ศท"),we(ti,He,bn,"ฤฑ","\\i",!0),we(ti,He,bn,"ศท","\\j",!0),we(ti,He,bn,"ร","\\ss",!0),we(ti,He,bn,"รฆ","\\ae",!0),we(ti,He,bn,"ล","\\oe",!0),we(ti,He,bn,"รธ","\\o",!0),we(ti,He,bn,"ร","\\AE",!0),we(ti,He,bn,"ล","\\OE",!0),we(ti,He,bn,"ร","\\O",!0),we(ti,He,wh,"ห","\\'"),we(ti,He,wh,"ห","\\`"),we(ti,He,wh,"ห","\\^"),we(ti,He,wh,"ห","\\~"),we(ti,He,wh,"ห","\\="),we(ti,He,wh,"ห","\\u"),we(ti,He,wh,"ห","\\."),we(ti,He,wh,"ยธ","\\c"),we(ti,He,wh,"ห","\\r"),we(ti,He,wh,"ห","\\v"),we(ti,He,wh,"ยจ",'\\"'),we(ti,He,wh,"ห","\\H"),we(ti,He,wh,"โฏ","\\textcircled");var Cze={"--":!0,"---":!0,"``":!0,"''":!0};we(ti,He,bn,"โ","--",!0),we(ti,He,bn,"โ","\\textendash"),we(ti,He,bn,"โ","---",!0),we(ti,He,bn,"โ","\\textemdash"),we(ti,He,bn,"โ","`",!0),we(ti,He,bn,"โ","\\textquoteleft"),we(ti,He,bn,"โ","'",!0),we(ti,He,bn,"โ","\\textquoteright"),we(ti,He,bn,"โ","``",!0),we(ti,He,bn,"โ","\\textquotedblleft"),we(ti,He,bn,"โ","''",!0),we(ti,He,bn,"โ","\\textquotedblright"),we(Ae,He,bn,"ยฐ","\\degree",!0),we(ti,He,bn,"ยฐ","\\degree"),we(ti,He,bn,"ยฐ","\\textdegree",!0),we(Ae,He,bn,"ยฃ","\\pounds"),we(Ae,He,bn,"ยฃ","\\mathsterling",!0),we(ti,He,bn,"ยฃ","\\pounds"),we(ti,He,bn,"ยฃ","\\textsterling",!0),we(Ae,jt,bn,"โ ","\\maltese"),we(ti,jt,bn,"โ ","\\maltese");for(var Sze='0123456789/@."',wbe=0;wbe<Sze.length;wbe++){var _ze=Sze.charAt(wbe);we(Ae,He,bn,_ze,_ze)}for(var Aze='0123456789!@*()-=+";:?/.,',ybe=0;ybe<Aze.length;ybe++){var Lze=Aze.charAt(ybe);we(ti,He,bn,Lze,Lze)}for(var gQ="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",xbe=0;xbe<gQ.length;xbe++){var pQ=gQ.charAt(xbe);we(Ae,He,Sa,pQ,pQ),we(ti,He,bn,pQ,pQ)}we(Ae,jt,bn,"C","โ"),we(ti,jt,bn,"C","โ"),we(Ae,jt,bn,"H","โ"),we(ti,jt,bn,"H","โ"),we(Ae,jt,bn,"N","โ"),we(ti,jt,bn,"N","โ"),we(Ae,jt,bn,"P","โ"),we(ti,jt,bn,"P","โ"),we(Ae,jt,bn,"Q","โ"),we(ti,jt,bn,"Q","โ"),we(Ae,jt,bn,"R","โ"),we(ti,jt,bn,"R","โ"),we(Ae,jt,bn,"Z","โค"),we(ti,jt,bn,"Z","โค"),we(Ae,He,Sa,"h","โ"),we(ti,He,Sa,"h","โ");for(var Wa="",Fp=0;Fp<gQ.length;Fp++){var Tf=gQ.charAt(Fp);Wa=String.fromCharCode(55349,56320+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56372+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56424+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56580+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56684+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56736+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56788+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56840+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56944+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Fp<26&&(Wa=String.fromCharCode(55349,56632+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa),Wa=String.fromCharCode(55349,56476+Fp),we(Ae,He,Sa,Tf,Wa),we(ti,He,bn,Tf,Wa))}Wa=String.fromCharCode(55349,56668),we(Ae,He,Sa,"k",Wa),we(ti,He,bn,"k",Wa);for(var $C=0;$C<10;$C++){var _9=$C.toString();Wa=String.fromCharCode(55349,57294+$C),we(Ae,He,Sa,_9,Wa),we(ti,He,bn,_9,Wa),Wa=String.fromCharCode(55349,57314+$C),we(Ae,He,Sa,_9,Wa),we(ti,He,bn,_9,Wa),Wa=String.fromCharCode(55349,57324+$C),we(Ae,He,Sa,_9,Wa),we(ti,He,bn,_9,Wa),Wa=String.fromCharCode(55349,57334+$C),we(Ae,He,Sa,_9,Wa),we(ti,He,bn,_9,Wa)}for(var kbe="รรรพ",Tbe=0;Tbe<kbe.length;Tbe++){var bQ=kbe.charAt(Tbe);we(Ae,He,Sa,bQ,bQ),we(ti,He,bn,bQ,bQ)}var mQ=[["mathbf","textbf","Main-Bold"],["mathbf","textbf","Main-Bold"],["mathnormal","textit","Math-Italic"],["mathnormal","textit","Math-Italic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["mathscr","textscr","Script-Regular"],["","",""],["","",""],["","",""],["mathfrak","textfrak","Fraktur-Regular"],["mathfrak","textfrak","Fraktur-Regular"],["mathbb","textbb","AMS-Regular"],["mathbb","textbb","AMS-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathitsf","textitsf","SansSerif-Italic"],["mathitsf","textitsf","SansSerif-Italic"],["","",""],["","",""],["mathtt","texttt","Typewriter-Regular"],["mathtt","texttt","Typewriter-Regular"]],Mze=[["mathbf","textbf","Main-Bold"],["","",""],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathtt","texttt","Typewriter-Regular"]],KHt=(i,a)=>{var u=i.charCodeAt(0),d=i.charCodeAt(1),p=(u-55296)*1024+(d-56320)+65536,v=a==="math"?0:1;if(119808<=p&&p<120484){var b=Math.floor((p-119808)/26);return[mQ[b][2],mQ[b][v]]}else if(120782<=p&&p<=120831){var y=Math.floor((p-120782)/10);return[Mze[y][2],Mze[y][v]]}else{if(p===120485||p===120486)return[mQ[0][2],mQ[0][v]];if(120486<p&&p<120782)return["",""];throw new ki("Unsupported character: "+i)}},vQ=function(a,u,d){if(vh[d][a]){var p=vh[d][a].replace;p&&(a=p)}return{value:a,metrics:mbe(a,u,d)}},Rp=function(a,u,d,p,v){var b=vQ(a,u,d),y=b.metrics;a=b.value;var E;if(y){var _=y.italic;(d==="text"||p&&p.font==="mathit")&&(_=0),E=new mm(a,y.height,y.depth,_,y.skew,y.width,v)}else typeof console<"u"&&console.warn("No character metrics "+("for '"+a+"' in style '"+u+"' and mode '"+d+"'")),E=new mm(a,0,0,0,0,0,v);if(p){E.maxFontSize=p.sizeMultiplier,p.style.isTight()&&E.classes.push("mtight");var A=p.getColor();A&&(E.style.color=A)}return E},Ebe=function(a,u,d,p){return p===void 0&&(p=[]),d.font==="boldsymbol"&&vQ(a,"Main-Bold",u).metrics?Rp(a,"Main-Bold",u,d,p.concat(["mathbf"])):a==="\\"||vh[u][a].font==="main"?Rp(a,"Main-Regular",u,d,p):Rp(a,"AMS-Regular",u,d,p.concat(["amsrm"]))},WHt=function(a,u,d,p,v){return v!=="textord"&&vQ(a,"Math-BoldItalic",u).metrics?{fontName:"Math-BoldItalic",fontClass:"boldsymbol"}:{fontName:"Main-Bold",fontClass:"mathbf"}},wQ=function(a,u,d){var p=a.mode,v=a.text,b=["mord"],y=p==="math"||p==="text"&&u.font,E=y?u.font:u.fontFamily,_="",A="";if(v.charCodeAt(0)===55349&&([_,A]=KHt(v,p)),_.length>0)return Rp(v,_,p,u,b.concat(A));if(E){var P,R;if(E==="boldsymbol"){var B=WHt(v,p,u,b,d);P=B.fontName,R=[B.fontClass]}else y?(P=Sbe[E].fontName,R=[E]):(P=yQ(E,u.fontWeight,u.fontShape),R=[E,u.fontWeight,u.fontShape]);if(vQ(v,P,p).metrics)return Rp(v,P,p,u,b.concat(R));if(Cze.hasOwnProperty(v)&&P.slice(0,10)==="Typewriter"){for(var j=[],W=0;W<v.length;W++)j.push(Rp(v[W],P,p,u,b.concat(R)));return P7(j)}}if(d==="mathord")return Rp(v,"Math-Italic",p,u,b.concat(["mathnormal"]));if(d==="textord"){var ee=vh[p][v]&&vh[p][v].font;if(ee==="ams"){var ie=yQ("amsrm",u.fontWeight,u.fontShape);return Rp(v,ie,p,u,b.concat("amsrm",u.fontWeight,u.fontShape))}else if(ee==="main"||!ee){var oe=yQ("textrm",u.fontWeight,u.fontShape);return Rp(v,oe,p,u,b.concat(u.fontWeight,u.fontShape))}else{var be=yQ(ee,u.fontWeight,u.fontShape);return Rp(v,be,p,u,b.concat(be,u.fontWeight,u.fontShape))}}else throw new Error("unexpected type: "+d+" in makeOrd")},YHt=(i,a)=>{if(C9(i.classes)!==C9(a.classes)||i.skew!==a.skew||i.maxFontSize!==a.maxFontSize||i.italic!==0&&i.hasClass("mathnormal"))return!1;if(i.classes.length===1){var u=i.classes[0];if(u==="mbin"||u==="mord")return!1}for(var d of Object.keys(i.style))if(i.style[d]!==a.style[d])return!1;for(var p of Object.keys(a.style))if(i.style[p]!==a.style[p])return!1;return!0},Dze=i=>{for(var a=0;a<i.length-1;a++){var u=i[a],d=i[a+1];u instanceof mm&&d instanceof mm&&YHt(u,d)&&(u.text+=d.text,u.height=Math.max(u.height,d.height),u.depth=Math.max(u.depth,d.depth),u.italic=d.italic,i.splice(a+1,1),a--)}return i},Cbe=function(a){for(var u=0,d=0,p=0,v=0;v<a.children.length;v++){var b=a.children[v];b.height>u&&(u=b.height),b.depth>d&&(d=b.depth),b.maxFontSize>p&&(p=b.maxFontSize)}a.height=u,a.depth=d,a.maxFontSize=p},di=function(a,u,d,p){var v=new jD(a,u,d,p);return Cbe(v),v},A9=(i,a,u,d)=>new jD(i,a,u,d),zD=function(a,u,d){var p=di([a],[],u);return p.height=Math.max(d||u.fontMetrics().defaultRuleThickness,u.minRuleThickness),p.style.borderBottomWidth=Oi(p.height),p.maxFontSize=1,p},XHt=function(a,u,d,p){var v=new fQ(a,u,d,p);return Cbe(v),v},P7=function(a){var u=new RD(a);return Cbe(u),u},qD=function(a,u){return a instanceof RD?di([],[a],u):a},QHt=function(a){if(a.positionType==="individualShift"){for(var u=a.children,d=[u[0]],p=-u[0].shift-u[0].elem.depth,v=p,b=1;b<u.length;b++){var y=-u[b].shift-v-u[b].elem.depth,E=y-(u[b-1].elem.height+u[b-1].elem.depth);v=v+y,d.push({type:"kern",size:E}),d.push(u[b])}return{children:d,depth:p}}var _;if(a.positionType==="top"){for(var A=a.positionData,P=0;P<a.children.length;P++){var R=a.children[P];A-=R.type==="kern"?R.size:R.elem.height+R.elem.depth}_=A}else if(a.positionType==="bottom")_=-a.positionData;else{var B=a.children[0];if(B.type!=="elem")throw new Error('First child must have type "elem".');if(a.positionType==="shift")_=-B.elem.depth-a.positionData;else if(a.positionType==="firstBaseline")_=-B.elem.depth;else throw new Error("Invalid positionType "+a.positionType+".")}return{children:a.children,depth:_}},Mu=function(a,u){for(var{children:d,depth:p}=QHt(a),v=0,b=0;b<d.length;b++){var y=d[b];if(y.type==="elem"){var E=y.elem;v=Math.max(v,E.maxFontSize,E.height)}}v+=2;var _=di(["pstrut"],[]);_.style.height=Oi(v);for(var A=[],P=p,R=p,B=p,j=0;j<d.length;j++){var W=d[j];if(W.type==="kern")B+=W.size;else{var ee=W.elem,ie=W.wrapperClasses||[],oe=W.wrapperStyle||{},be=di(ie,[_,ee],void 0,oe);be.style.top=Oi(-v-B-ee.depth),W.marginLeft&&(be.style.marginLeft=W.marginLeft),W.marginRight&&(be.style.marginRight=W.marginRight),A.push(be),B+=ee.height+ee.depth}P=Math.min(P,B),R=Math.max(R,B)}var ge=di(["vlist"],A);ge.style.height=Oi(R);var ae;if(P<0){var ne=di([],[]),se=di(["vlist"],[ne]);se.style.height=Oi(-P);var de=di(["vlist-s"],[new mm("โ")]);ae=[di(["vlist-r"],[ge,de]),di(["vlist-r"],[se])]}else ae=[di(["vlist-r"],[ge])];var X=di(["vlist-t"],ae);return ae.length===2&&X.classes.push("vlist-t2"),X.height=R,X.depth=-P,X},Ize=(i,a)=>{var u=di(["mspace"],[],a),d=Uh(i,a);return u.style.marginRight=Oi(d),u},yQ=function(a,u,d){var p="";switch(a){case"amsrm":p="AMS";break;case"textrm":p="Main";break;case"textsf":p="SansSerif";break;case"texttt":p="Typewriter";break;default:p=a}var v;return u==="textbf"&&d==="textit"?v="BoldItalic":u==="textbf"?v="Bold":u==="textit"?v="Italic":v="Regular",p+"-"+v},Sbe={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},Oze={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Nze=function(a,u){var[d,p,v]=Oze[a],b=new S9(d),y=new O7([b],{width:Oi(p),height:Oi(v),style:"width:"+Oi(p),viewBox:"0 0 "+1e3*p+" "+1e3*v,preserveAspectRatio:"xMinYMin"}),E=A9(["overlay"],[y],u);return E.height=v,E.style.height=Oi(v),E.style.width=Oi(p),E},Vh={number:3,unit:"mu"},zC={number:4,unit:"mu"},B7={number:5,unit:"mu"},JHt={mord:{mop:Vh,mbin:zC,mrel:B7,minner:Vh},mop:{mord:Vh,mop:Vh,mrel:B7,minner:Vh},mbin:{mord:zC,mop:zC,mopen:zC,minner:zC},mrel:{mord:B7,mop:B7,mopen:B7,minner:B7},mopen:{},mclose:{mop:Vh,mbin:zC,mrel:B7,minner:Vh},mpunct:{mord:Vh,mop:Vh,mrel:B7,mopen:Vh,mclose:Vh,mpunct:Vh,minner:Vh},minner:{mord:Vh,mop:Vh,mbin:zC,mrel:B7,mopen:Vh,mpunct:Vh,minner:Vh}},ZHt={mord:{mop:Vh},mop:{mord:Vh,mop:Vh},mbin:{},mrel:{},mopen:{},mclose:{mop:Vh},mpunct:{},minner:{mop:Vh}},Pze={},xQ={},kQ={};function es(i){for(var{type:a,names:u,props:d,handler:p,htmlBuilder:v,mathmlBuilder:b}=i,y={type:a,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},E=0;E<u.length;++E)Pze[u[E]]=y;a&&(v&&(xQ[a]=v),b&&(kQ[a]=b))}function qC(i){var{type:a,htmlBuilder:u,mathmlBuilder:d}=i;es({type:a,names:[],props:{numArgs:0},handler(){throw new Error("Should never be called.")},htmlBuilder:u,mathmlBuilder:d})}var TQ=function(a){return a.type==="ordgroup"&&a.body.length===1?a.body[0]:a},P0=function(a){return a.type==="ordgroup"?a.body:[a]},eUt=new Set(["leftmost","mbin","mopen","mrel","mop","mpunct"]),tUt=new Set(["rightmost","mrel","mclose","mpunct"]),nUt={display:bo.DISPLAY,text:bo.TEXT,script:bo.SCRIPT,scriptscript:bo.SCRIPTSCRIPT},rUt={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},d1=function(a,u,d,p){p===void 0&&(p=[null,null]);for(var v=[],b=0;b<a.length;b++){var y=Du(a[b],u);if(y instanceof RD){var E=y.children;v.push(...E)}else v.push(y)}if(Dze(v),!d)return v;var _=u;if(a.length===1){var A=a[0];A.type==="sizing"?_=u.havingSize(A.size):A.type==="styling"&&(_=u.havingStyle(nUt[A.style]))}var P=di([p[0]||"leftmost"],[],u),R=di([p[1]||"rightmost"],[],u),B=d==="root";return _be(v,(j,W)=>{var ee=W.classes[0],ie=j.classes[0];ee==="mbin"&&tUt.has(ie)?W.classes[0]="mord":ie==="mbin"&&eUt.has(ee)&&(j.classes[0]="mord")},{node:P},R,B),_be(v,(j,W)=>{var ee,ie,oe=Lbe(W),be=Lbe(j),ge=oe&&be?j.hasClass("mtight")?(ee=ZHt[oe])==null?void 0:ee[be]:(ie=JHt[oe])==null?void 0:ie[be]:null;if(ge)return Ize(ge,_)},{node:P},R,B),v},_be=function(a,u,d,p,v){p&&a.push(p);for(var b=0;b<a.length;b++){var y=a[b],E=Bze(y);if(E){_be(E.children,u,d,null,v);continue}var _=!y.hasClass("mspace");if(_){var A=u(y,d.node);A&&(d.insertAfter?d.insertAfter(A):(a.unshift(A),b++))}_?d.node=y:v&&y.hasClass("newline")&&(d.node=di(["leftmost"])),d.insertAfter=(P=>R=>{a.splice(P+1,0,R),b++})(b)}p&&a.pop()},Bze=function(a){return a instanceof RD||a instanceof fQ||a instanceof jD&&a.hasClass("enclosing")?a:null},Abe=function(a,u){var d=Bze(a);if(d){var p=d.children;if(p.length){if(u==="right")return Abe(p[p.length-1],"right");if(u==="left")return Abe(p[0],"left")}}return a},Lbe=function(a,u){if(!a)return null;u&&(a=Abe(a,u));var d=a.classes[0];return rUt[d]||null},vR=function(a,u){var d=["nulldelimiter"].concat(a.baseSizingClasses());return di(u.concat(d))},Du=function(a,u,d){if(!a)return di();if(xQ[a.type]){var p=xQ[a.type](a,u);if(d&&u.size!==d.size){p=di(u.sizingClasses(d),[p],u);var v=u.sizeMultiplier/d.sizeMultiplier;p.height*=v,p.depth*=v}return p}else throw new ki("Got group of unknown type: '"+a.type+"'")};function EQ(i,a){var u=di(["base"],i,a),d=di(["strut"]);return d.style.height=Oi(u.height+u.depth),u.depth&&(d.style.verticalAlign=Oi(-u.depth)),u.children.unshift(d),u}function Mbe(i,a){var u=null;i.length===1&&i[0].type==="tag"&&(u=i[0].tag,i=i[0].body);var d=d1(i,a,"root"),p;d.length===2&&d[1].hasClass("tag")&&(p=d.pop());for(var v=[],b=[],y=0;y<d.length;y++)if(b.push(d[y]),d[y].hasClass("mbin")||d[y].hasClass("mrel")||d[y].hasClass("allowbreak")){for(var E=!1;y<d.length-1&&d[y+1].hasClass("mspace")&&!d[y+1].hasClass("newline");)y++,b.push(d[y]),d[y].hasClass("nobreak")&&(E=!0);E||(v.push(EQ(b,a)),b=[])}else d[y].hasClass("newline")&&(b.pop(),b.length>0&&(v.push(EQ(b,a)),b=[]),v.push(d[y]));b.length>0&&v.push(EQ(b,a));var _;u?(_=EQ(d1(u,a,!0),a),_.classes=["tag"],v.push(_)):p&&v.push(p);var A=di(["katex-html"],v);if(A.setAttribute("aria-hidden","true"),_){var P=_.children[0];P.style.height=Oi(A.height+A.depth),A.depth&&(P.style.verticalAlign=Oi(-A.depth))}return A}function Fze(i){return new RD(i)}class Si{constructor(a,u,d){this.type=a,this.attributes={},this.children=u||[],this.classes=d||[]}setAttribute(a,u){this.attributes[a]=u}getAttribute(a){return this.attributes[a]}toNode(){var a=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var u in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,u)&&a.setAttribute(u,this.attributes[u]);this.classes.length>0&&(a.className=C9(this.classes));for(var d=0;d<this.children.length;d++)if(this.children[d]instanceof B0&&this.children[d+1]instanceof B0){for(var p=this.children[d].toText()+this.children[++d].toText();this.children[d+1]instanceof B0;)p+=this.children[++d].toText();a.appendChild(new B0(p).toNode())}else a.appendChild(this.children[d].toNode());return a}toMarkup(){var a="<"+this.type;for(var u in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,u)&&(a+=" "+u+'="',a+=zg(this.attributes[u]),a+='"');this.classes.length>0&&(a+=' class ="'+zg(C9(this.classes))+'"'),a+=">";for(var d=0;d<this.children.length;d++)a+=this.children[d].toMarkup();return a+="</"+this.type+">",a}toText(){return this.children.map(a=>a.toText()).join("")}}class B0{constructor(a){this.text=a}toNode(){return document.createTextNode(this.text)}toMarkup(){return zg(this.toText())}toText(){return this.text}}class Rze{constructor(a){this.width=a,a>=.05555&&a<=.05556?this.character="โ":a>=.1666&&a<=.1667?this.character="โ":a>=.2222&&a<=.2223?this.character="โ
":a>=.2777&&a<=.2778?this.character="โ
โ":a>=-.05556&&a<=-.05555?this.character="โโฃ":a>=-.1667&&a<=-.1666?this.character="โโฃ":a>=-.2223&&a<=-.2222?this.character="โโฃ":a>=-.2778&&a<=-.2777?this.character="โ
โฃ":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var a=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return a.setAttribute("width",Oi(this.width)),a}toMarkup(){return this.character?"<mtext>"+this.character+"</mtext>":'<mspace width="'+Oi(this.width)+'"/>'}toText(){return this.character?this.character:" "}}var iUt=new Set(["\\imath","\\jmath"]),sUt=new Set(["mrow","mtable"]),Vv=function(a,u,d){return vh[u][a]&&vh[u][a].replace&&a.charCodeAt(0)!==55349&&!(Cze.hasOwnProperty(a)&&d&&(d.fontFamily&&d.fontFamily.slice(4,6)==="tt"||d.font&&d.font.slice(4,6)==="tt"))&&(a=vh[u][a].replace),new B0(a)},Dbe=function(a){return a.length===1?a[0]:new Si("mrow",a)},Ibe=function(a,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=a.mode;if(d==="mathit")return"italic";if(d==="boldsymbol")return a.type==="textord"?"bold":"bold-italic";if(d==="mathbf")return"bold";if(d==="mathbb")return"double-struck";if(d==="mathsfit")return"sans-serif-italic";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=a.text;if(iUt.has(v))return null;if(vh[p][v]){var b=vh[p][v].replace;b&&(v=b)}var y=Sbe[d].fontName;return mbe(v,y,p)?Sbe[d].variant:null};function Obe(i){if(!i)return!1;if(i.type==="mi"&&i.children.length===1){var a=i.children[0];return a instanceof B0&&a.text==="."}else if(i.type==="mo"&&i.children.length===1&&i.getAttribute("separator")==="true"&&i.getAttribute("lspace")==="0em"&&i.getAttribute("rspace")==="0em"){var u=i.children[0];return u instanceof B0&&u.text===","}else return!1}var wm=function(a,u,d){if(a.length===1){var p=Al(a[0],u);return d&&p instanceof Si&&p.type==="mo"&&(p.setAttribute("lspace","0em"),p.setAttribute("rspace","0em")),[p]}for(var v=[],b,y=0;y<a.length;y++){var E=Al(a[y],u);if(E instanceof Si&&b instanceof Si){if(E.type==="mtext"&&b.type==="mtext"&&E.getAttribute("mathvariant")===b.getAttribute("mathvariant")){b.children.push(...E.children);continue}else if(E.type==="mn"&&b.type==="mn"){b.children.push(...E.children);continue}else if(Obe(E)&&b.type==="mn"){b.children.push(...E.children);continue}else if(E.type==="mn"&&Obe(b))E.children=[...b.children,...E.children],v.pop();else if((E.type==="msup"||E.type==="msub")&&E.children.length>=1&&(b.type==="mn"||Obe(b))){var _=E.children[0];_ instanceof Si&&_.type==="mn"&&(_.children=[...b.children,..._.children],v.pop())}else if(b.type==="mi"&&b.children.length===1){var A=b.children[0];if(A instanceof B0&&A.text==="ฬธ"&&(E.type==="mo"||E.type==="mi"||E.type==="mn")){var P=E.children[0];P instanceof B0&&P.text.length>0&&(P.text=P.text.slice(0,1)+"ฬธ"+P.text.slice(1),v.pop())}}}v.push(E),b=E}return v},L9=function(a,u,d){return Dbe(wm(a,u,d))},Al=function(a,u){if(!a)return new Si("mrow");if(kQ[a.type]){var d=kQ[a.type](a,u);return d}else throw new ki("Got group of unknown type: '"+a.type+"'")};function jze(i,a,u,d,p){var v=wm(i,u),b;v.length===1&&v[0]instanceof Si&&sUt.has(v[0].type)?b=v[0]:b=new Si("mrow",v);var y=new Si("annotation",[new B0(a)]);y.setAttribute("encoding","application/x-tex");var E=new Si("semantics",[b,y]),_=new Si("math",[E]);_.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),d&&_.setAttribute("display","block");var A=p?"katex":"katex-mathml";return di([A],[_])}var aUt=[[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]],$ze=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],zze=function(a,u){return u.size<2?a:aUt[a-1][u.size-1]};class F7{constructor(a){this.style=a.style,this.color=a.color,this.size=a.size||F7.BASESIZE,this.textSize=a.textSize||this.size,this.phantom=!!a.phantom,this.font=a.font||"",this.fontFamily=a.fontFamily||"",this.fontWeight=a.fontWeight||"",this.fontShape=a.fontShape||"",this.sizeMultiplier=$ze[this.size-1],this.maxSize=a.maxSize,this.minRuleThickness=a.minRuleThickness,this._fontMetrics=void 0}extend(a){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};return Object.assign(u,a),new F7(u)}havingStyle(a){return this.style===a?this:this.extend({style:a,size:zze(this.textSize,a)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(a){return this.size===a&&this.textSize===a?this:this.extend({style:this.style.text(),size:a,textSize:a,sizeMultiplier:$ze[a-1]})}havingBaseStyle(a){a=a||this.style.text();var u=zze(F7.BASESIZE,a);return this.size===u&&this.textSize===F7.BASESIZE&&this.style===a?this:this.extend({style:a,size:u})}havingBaseSizing(){var a;switch(this.style.id){case 4:case 5:a=3;break;case 6:case 7:a=1;break;default:a=6}return this.extend({style:this.style.text(),size:a})}withColor(a){return this.extend({color:a})}withPhantom(){return this.extend({phantom:!0})}withFont(a){return this.extend({font:a})}withTextFontFamily(a){return this.extend({fontFamily:a,font:""})}withTextFontWeight(a){return this.extend({fontWeight:a,font:""})}withTextFontShape(a){return this.extend({fontShape:a,font:""})}sizingClasses(a){return a.size!==this.size?["sizing","reset-size"+a.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==F7.BASESIZE?["sizing","reset-size"+this.size,"size"+F7.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=UHt(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}}F7.BASESIZE=6;var qze=function(a){return new F7({style:a.displayMode?bo.DISPLAY:bo.TEXT,maxSize:a.maxSize,minRuleThickness:a.minRuleThickness})},Hze=function(a,u){if(u.displayMode){var d=["katex-display"];u.leqno&&d.push("leqno"),u.fleqn&&d.push("fleqn"),a=di(d,[a])}return a},oUt=function(a,u,d){var p=qze(d),v;if(d.output==="mathml")return jze(a,u,p,d.displayMode,!0);if(d.output==="html"){var b=Mbe(a,p);v=di(["katex"],[b])}else{var y=jze(a,u,p,d.displayMode,!1),E=Mbe(a,p);v=di(["katex"],[y,E])}return Hze(v,d)},cUt=function(a,u,d){var p=qze(d),v=Mbe(a,p),b=di(["katex"],[v]);return Hze(b,d)},uUt={widehat:"^",widecheck:"ห",widetilde:"~",utilde:"~",overleftarrow:"โ",underleftarrow:"โ",xleftarrow:"โ",overrightarrow:"โ",underrightarrow:"โ",xrightarrow:"โ",underbrace:"โ",overbrace:"โ",underbracket:"โต",overbracket:"โด",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":"="},CQ=function(a){var u=new Si("mo",[new B0(uUt[a.replace(/^\\/,"")])]);return u.setAttribute("stretchy","true"),u},lUt={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overbracket:[["leftbracketover","rightbracketover"],1.6,440],underbracket:[["leftbracketunder","rightbracketunder"],1.6,410],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},hUt=new Set(["widehat","widecheck","widetilde","utilde"]),SQ=function(a,u){function d(){var y=4e5,E=a.label.slice(1);if(hUt.has(E)){var _=a,A=_.base.type==="ordgroup"?_.base.body.length:1,P,R,B;if(A>5)E==="widehat"||E==="widecheck"?(P=420,y=2364,B=.42,R=E+"4"):(P=312,y=2340,B=.34,R="tilde4");else{var j=[1,1,2,2,3,3][A];E==="widehat"||E==="widecheck"?(y=[0,1062,2364,2364,2364][j],P=[0,239,300,360,420][j],B=[0,.24,.3,.3,.36,.42][j],R=E+j):(y=[0,600,1033,2339,2340][j],P=[0,260,286,306,312][j],B=[0,.26,.286,.3,.306,.34][j],R="tilde"+j)}var W=new S9(R),ee=new O7([W],{width:"100%",height:Oi(B),viewBox:"0 0 "+y+" "+P,preserveAspectRatio:"none"});return{span:A9([],[ee],u),minWidth:0,height:B}}else{var ie=[],oe=lUt[E],[be,ge,ae]=oe,ne=ae/1e3,se=be.length,de,X;if(se===1){var pe=oe[3];de=["hide-tail"],X=[pe]}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 support340 `+se+" children.");for(var G=0;G<se;G++){var xe=new S9(be[G]),U=new O7([xe],{width:"400em",height:Oi(ne),viewBox:"0 0 "+y+" "+ae,preserveAspectRatio:X[G]+" slice"}),Be=A9([de[G]],[U],u);if(se===1)return{span:Be,minWidth:ge,height:ne};Be.style.height=Oi(ne),ie.push(Be)}return{span:di(["stretchy"],ie,u),minWidth:ge,height:ne}}}var{span:p,minWidth:v,height:b}=d();return p.height=b,p.style.height=Oi(b),v>0&&(p.style.minWidth=Oi(v)),p},fUt=function(a,u,d,p,v){var b,y=a.height+a.depth+d+p;if(/fbox|color|angl/.test(u)){if(b=di(["stretchy",u],[],v),u==="fbox"){var E=v.color&&v.getColor();E&&(b.style.borderColor=E)}}else{var _=[];/^[bx]cancel$/.test(u)&&_.push(new bbe({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(u)&&_.push(new bbe({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var A=new O7(_,{width:"100%",height:Oi(y)});b=A9([],[A],v)}return b.height=y,b.style.height=Oi(y),b};function Xo(i,a){if(!i||i.type!==a)throw new Error("Expected node of type "+a+", but got "+(i?"node of type "+i.type:String(i)));return i}function _Q(i){var a=AQ(i);if(!a)throw new Error("Expected node of symbol group type, but got "+(i?"node of type "+i.type:String(i)));return a}function AQ(i){return i&&(i.type==="atom"||GHt.hasOwnProperty(i.type))?i:null}var Uze=i=>{if(i instanceof mm)return i;if(HHt(i)&&i.children.length===1)return Uze(i.children[0])},Nbe=(i,a)=>{var u,d,p;i&&i.type==="supsub"?(d=Xo(i.base,"accent"),u=d.base,i.base=u,p=qHt(Du(i,a)),i.base=d):(d=Xo(i,"accent"),u=d.base);var v=Du(u,a.havingCrampedStyle()),b=d.isShifty&&D7(u),y=0;if(b){var E,_;y=(E=(_=Uze(v))==null?void 0:_.skew)!=null?E:0}var A=d.label==="\\c",P=A?v.height+v.depth:Math.min(v.height,a.fontMetrics().xHeight),R;if(d.isStretchy)R=SQ(d,a),R=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:v},{type:"elem",elem:R,wrapperClasses:["svg-align"],wrapperStyle:y>0?{width:"calc(100% - "+Oi(2*y)+")",marginLeft:Oi(2*y)}:void 0}]});else{var B,j;d.label==="\\vec"?(B=Nze("vec",a),j=Oze.vec[1]):(B=wQ({type:"textord",mode:d.mode,text:d.label},a,"textord"),B=zHt(B),B.italic=0,j=B.width,A&&(P+=B.depth)),R=di(["accent-body"],[B]);var W=d.label==="\\textcircled";W&&(R.classes.push("accent-full"),P=v.height);var ee=y;W||(ee-=j/2),R.style.left=Oi(ee),d.label==="\\textcircled"&&(R.style.top=".2em"),R=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:v},{type:"kern",size:-P},{type:"elem",elem:R}]})}var ie=di(["mord","accent"],[R],a);return p?(p.children[0]=ie,p.height=Math.max(ie.height,p.height),p.classes[0]="mord",p):ie},Vze=(i,a)=>{var u=i.isStretchy?CQ(i.label):new Si("mo",[Vv(i.label,i.mode)]),d=new Si("mover",[Al(i.base,a),u]);return d.setAttribute("accent","true"),d},dUt=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(i=>"\\"+i).join("|"));es({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,a)=>{var u=TQ(a[0]),d=!dUt.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:Nbe,mathmlBuilder:Vze}),es({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(i,a)=>{var u=a[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:Nbe,mathmlBuilder:Vze}),es({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=a[0];return{type:"accentUnder",mode:u.mode,label:d,base:p}},htmlBuilder:(i,a)=>{var u=Du(i.base,a),d=SQ(i,a),p=i.label==="\\utilde"?.12:0,v=Mu({positionType:"top",positionData:u.height,children:[{type:"elem",elem:d,wrapperClasses:["svg-align"]},{type:"kern",size:p},{type:"elem",elem:u}]});return di(["mord","accentunder"],[v],a)},mathmlBuilder:(i,a)=>{var u=CQ(i.label),d=new Si("munder",[Al(i.base,a),u]);return d.setAttribute("accentunder","true"),d}});var LQ=i=>{var a=new Si("mpadded",i?[i]:[]);return a.setAttribute("width","+0.6em"),a.setAttribute("lspace","0.3em"),a};es({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,a,u){var{parser:d,funcName:p}=i;return{type:"xArrow",mode:d.mode,label:p,body:a[0],below:u[0]}},htmlBuilder(i,a){var u=a.style,d=a.havingStyle(u.sup()),p=qD(Du(i.body,d,a),a),v=i.label.slice(0,2)==="\\x"?"x":"cd";p.classes.push(v+"-arrow-pad");var b;i.below&&(d=a.havingStyle(u.sub()),b=qD(Du(i.below,d,a),a),b.classes.push(v+"-arrow-pad"));var y=SQ(i,a),E=-a.fontMetrics().axisHeight+.5*y.height,_=-a.fontMetrics().axisHeight-.5*y.height-.111;(p.depth>.25||i.label==="\\xleftequilibrium")&&(_-=p.depth);var A;if(b){var P=-a.fontMetrics().axisHeight+b.height+.5*y.height+.111;A=Mu({positionType:"individualShift",children:[{type:"elem",elem:p,shift:_},{type:"elem",elem:y,shift:E},{type:"elem",elem:b,shift:P}]})}else A=Mu({positionType:"individualShift",children:[{type:"elem",elem:p,shift:_},{type:"elem",elem:y,shift:E}]});return A.children[0].children[0].children[1].classes.push("svg-align"),di(["mrel","x-arrow"],[A],a)},mathmlBuilder(i,a){var u=CQ(i.label);u.setAttribute("minsize",i.label.charAt(0)==="x"?"1.75em":"3.0em");var d;if(i.body){var p=LQ(Al(i.body,a));if(i.below){var v=LQ(Al(i.below,a));d=new Si("munderover",[u,v,p])}else d=new Si("mover",[u,p])}else if(i.below){var b=LQ(Al(i.below,a));d=new Si("munder",[u,b])}else d=LQ(),d=new Si("mover",[u,d]);return d}});function Gze(i,a){var u=d1(i.body,a,!0);return di([i.mclass],u,a)}function Kze(i,a){var u,d=wm(i.body,a);return i.mclass==="minner"?u=new Si("mpadded",d):i.mclass==="mord"?i.isCharacterBox?(u=d[0],u.type="mi"):u=new Si("mi",d):(i.isCharacterBox?(u=d[0],u.type="mo"):u=new Si("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}es({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(i,a){var{parser:u,funcName:d}=i,p=a[0];return{type:"mclass",mode:u.mode,mclass:"m"+d.slice(5),body:P0(p),isCharacterBox:D7(p)}},htmlBuilder:Gze,mathmlBuilder:Kze});var MQ=i=>{var a=i.type==="ordgroup"&&i.body.length?i.body[0]:i;return a.type==="atom"&&(a.family==="bin"||a.family==="rel")?"m"+a.family:"mord"};es({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(i,a){var{parser:u}=i;return{type:"mclass",mode:u.mode,mclass:MQ(a[0]),body:P0(a[1]),isCharacterBox:D7(a[1])}}}),es({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(i,a){var{parser:u,funcName:d}=i,p=a[1],v=a[0],b;d!=="\\stackrel"?b=MQ(p):b="mrel";var y={type:"op",mode:p.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:d!=="\\stackrel",body:P0(p)},E={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:[E],isCharacterBox:D7(E)}},htmlBuilder:Gze,mathmlBuilder:Kze}),es({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(i,a){var{parser:u}=i;return{type:"pmb",mode:u.mode,mclass:MQ(a[0]),body:P0(a[0])}},htmlBuilder(i,a){var u=d1(i.body,a,!0),d=di([i.mclass],u,a);return d.style.textShadow="0.02em 0.01em 0.04px",d},mathmlBuilder(i,a){var u=wm(i.body,a),d=new Si("mstyle",u);return d.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),d}});var gUt={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},Wze=()=>({type:"styling",body:[],mode:"math",style:"display"}),Yze=i=>i.type==="textord"&&i.text==="@",pUt=(i,a)=>(i.type==="mathord"||i.type==="atom")&&i.text===a;function bUt(i,a,u){var d=gUt[i];switch(d){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return u.callFunction(d,[a[0]],[a[1]]);case"\\uparrow":case"\\downarrow":{var p=u.callFunction("\\\\cdleft",[a[0]],[]),v={type:"atom",text:d,mode:"math",family:"rel"},b=u.callFunction("\\Big",[v],[]),y=u.callFunction("\\\\cdright",[a[1]],[]),E={type:"ordgroup",mode:"math",body:[p,b,y]};return u.callFunction("\\\\cdparent",[E],[])}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 mUt(i){var a=[];for(i.gullet.beginGroup(),i.gullet.macros.set("\\cr","\\\\\\relax"),i.gullet.beginGroup();;){a.push(i.parseExpression(!1,"\\\\")),i.gullet.endGroup(),i.gullet.beginGroup();var u=i.fetch().text;if(u==="&"||u==="\\\\")i.consume();else if(u==="\\end"){a[a.length-1].length===0&&a.pop();break}else throw new ki("Expected \\\\ or \\cr or \\end",i.nextToken)}for(var d=[],p=[d],v=0;v<a.length;v++){for(var b=a[v],y=Wze(),E=0;E<b.length;E++)if(!Yze(b[E]))y.body.push(b[E]);else{d.push(y),E+=1;var _=_Q(b[E]).text,A=new Array(2);if(A[0]={type:"ordgroup",mode:"math",body:[]},A[1]={type:"ordgroup",mode:"math",body:[]},!"=|.".includes(_))if("<>AV".includes(_))for(var P=0;P<2;P++){for(var R=!0,B=E+1;B<b.length;B++){if(pUt(b[B],_)){R=!1,E=B;break}if(Yze(b[B]))throw new ki("Missing a "+_+" character to complete a CD arrow.",b[B]);A[P].body.push(b[B])}if(R)throw new ki("Missing a "+_+" character to complete a CD arrow.",b[E])}else throw new ki('Expected one of "<>AV=|." after @',b[E]);var j=bUt(_,A,i),W={type:"styling",body:[j],mode:"math",style:"display"};d.push(W),y=Wze()}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([])}}es({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(i,a){var{parser:u,funcName:d}=i;return{type:"cdlabel",mode:u.mode,side:d.slice(4),label:a[0]}},htmlBuilder(i,a){var u=a.havingStyle(a.style.sup()),d=qD(Du(i.label,u,a),a);return d.classes.push("cd-label-"+i.side),d.style.bottom=Oi(.8-d.depth),d.height=0,d.depth=0,d},mathmlBuilder(i,a){var u=new Si("mrow",[Al(i.label,a)]);return u=new Si("mpadded",[u]),u.setAttribute("width","0"),i.side==="left"&&u.setAttribute("lspace","-1width"),u.setAttribute("voffset","0.7em"),u=new Si("mstyle",[u]),u.setAttribute("displaystyle","false"),u.setAttribute("scriptlevel","1"),u}}),es({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(i,a){var{parser:u}=i;return{type:"cdlabelparent",mode:u.mode,fragment:a[0]}},htmlBuilder(i,a){var u=qD(Du(i.fragment,a),a);return u.classes.push("cd-vert-arrow"),u},mathmlBuilder(i,a){return new Si("mrow",[Al(i.fragment,a)])}}),es({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(i,a){for(var{parser:u}=i,d=Xo(a[0],"ordgroup"),p=d.body,v="",b=0;b<p.length;b++){var y=Xo(p[b],"textord");v+=y.text}var E=parseInt(v),_;if(isNaN(E))throw new ki("\\@char has non-numeric argument "+v);if(E<0||E>=1114111)throw new ki("\\@char with invalid code point "+v);return E<=65535?_=String.fromCharCode(E):(E-=65536,_=String.fromCharCode((E>>10)+55296,(E&1023)+56320)),{type:"textord",mode:u.mode,text:_}}});var Xze=(i,a)=>{var u=d1(i.body,a.withColor(i.color),!1);return P7(u)},Qze=(i,a)=>{var u=wm(i.body,a.withColor(i.color)),d=new Si("mstyle",u);return d.setAttribute("mathcolor",i.color),d};es({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(i,a){var{parser:u}=i,d=Xo(a[0],"color-token").color,p=a[1];return{type:"color",mode:u.mode,color:d,body:P0(p)}},htmlBuilder:Xze,mathmlBuilder:Qze}),es({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(i,a){var{parser:u,breakOnTokenText:d}=i,p=Xo(a[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:Xze,mathmlBuilder:Qze}),es({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(i,a,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&&Xo(p,"size").value}},htmlBuilder(i,a){var u=di(["mspace"],[],a);return i.newLine&&(u.classes.push("newline"),i.size&&(u.style.marginTop=Oi(Uh(i.size,a)))),u},mathmlBuilder(i,a){var u=new Si("mspace");return i.newLine&&(u.setAttribute("linebreak","newline"),i.size&&u.setAttribute("height",Oi(Uh(i.size,a)))),u}});var Pbe={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},Jze=i=>{var a=i.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(a))throw new ki("Expected a control sequence",i);return a},vUt=i=>{var a=i.gullet.popToken();return a.text==="="&&(a=i.gullet.popToken(),a.text===" "&&(a=i.gullet.popToken())),a},Zze=(i,a,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(a,p,d)};es({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(i){var{parser:a,funcName:u}=i;a.consumeSpaces();var d=a.fetch();if(Pbe[d.text])return(u==="\\global"||u==="\\\\globallong")&&(d.text=Pbe[d.text]),Xo(a.parseFunction(),"internal");throw new ki("Invalid token after macro prefix",d)}}),es({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i){var{parser:a,funcName:u}=i,d=a.gullet.popToken(),p=d.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(p))throw new ki("Expected a control sequence",d);for(var v=0,b,y=[[]];a.gullet.future().text!=="{";)if(d=a.gullet.popToken(),d.text==="#"){if(a.gullet.future().text==="{"){b=a.gullet.future(),y[v].push("{");break}if(d=a.gullet.popToken(),!/^[1-9]$/.test(d.text))throw new ki('Invalid argument number "'+d.text+'"');if(parseInt(d.text)!==v+1)throw new ki('Argument number "'+d.text+'" out of order');v++,y.push([])}else{if(d.text==="EOF")throw new ki("Expected a macro definition");y[v].push(d.text)}var{tokens:E}=a.gullet.consumeArg();return b&&E.unshift(b),(u==="\\edef"||u==="\\xdef")&&(E=a.gullet.expandTokens(E),E.reverse()),a.gullet.macros.set(p,{tokens:E,numArgs:v,delimiters:y},u===Pbe[u]),{type:"internal",mode:a.mode}}}),es({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i){var{parser:a,funcName:u}=i,d=Jze(a.gullet.popToken());a.gullet.consumeSpaces();var p=vUt(a);return Zze(a,d,p,u==="\\\\globallet"),{type:"internal",mode:a.mode}}}),es({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i){var{parser:a,funcName:u}=i,d=Jze(a.gullet.popToken()),p=a.gullet.popToken(),v=a.gullet.popToken();return Zze(a,d,v,u==="\\\\globalfuture"),a.gullet.pushToken(v),a.gullet.pushToken(p),{type:"internal",mode:a.mode}}});var wR=function(a,u,d){var p=vh.math[a]&&vh.math[a].replace,v=mbe(p||a,u,d);if(!v)throw new Error("Unsupported symbol "+a+" and font size "+u+".");return v},Bbe=function(a,u,d,p){var v=d.havingBaseStyle(u),b=di(p.concat(v.sizingClasses(d)),[a],d),y=v.sizeMultiplier/d.sizeMultiplier;return b.height*=y,b.depth*=y,b.maxFontSize=v.sizeMultiplier,b},eqe=function(a,u,d){var p=u.havingBaseStyle(d),v=(1-u.sizeMultiplier/p.sizeMultiplier)*u.fontMetrics().axisHeight;a.classes.push("delimcenter"),a.style.top=Oi(v),a.height-=v,a.depth+=v},wUt=function(a,u,d,p,v,b){var y=Rp(a,"Main-Regular",v,p),E=Bbe(y,u,p,b);return d&&eqe(E,p,u),E},yUt=function(a,u,d,p){return Rp(a,"Size"+u+"-Regular",d,p)},tqe=function(a,u,d,p,v,b){var y=yUt(a,u,v,p),E=Bbe(di(["delimsizing","size"+u],[y],p),bo.TEXT,p,b);return d&&eqe(E,p,bo.TEXT),E},Fbe=function(a,u,d){var p;u==="Size1-Regular"?p="delim-size1":p="delim-size4";var v=di(["delimsizinginner",p],[di([],[Rp(a,u,d)])]);return{type:"elem",elem:v}},Rbe=function(a,u,d){var p=Y4["Size4-Regular"][a.charCodeAt(0)]?Y4["Size4-Regular"][a.charCodeAt(0)][4]:Y4["Size1-Regular"][a.charCodeAt(0)][4],v=new S9("inner",PHt(a,Math.round(1e3*u))),b=new O7([v],{width:Oi(p),height:Oi(u),style:"width:"+Oi(p),viewBox:"0 0 "+1e3*p+" "+Math.round(1e3*u),preserveAspectRatio:"xMinYMin"}),y=A9([],[b],d);return y.height=u,y.style.height=Oi(u),y.style.width=Oi(p),{type:"elem",elem:y}},jbe=.008,DQ={type:"kern",size:-1*jbe},xUt=new Set(["|","\\lvert","\\rvert","\\vert"]),kUt=new Set(["\\|","\\lVert","\\rVert","\\Vert"]),nqe=function(a,u,d,p,v,b){var y,E,_,A,P="",R=0;y=_=A=a,E=null;var B="Size1-Regular";a==="\\uparrow"?_=A="โ":a==="\\Uparrow"?_=A="โ":a==="\\downarrow"?y=_="โ":a==="\\Downarrow"?y=_="โ":a==="\\updownarrow"?(y="\\uparrow",_="โ",A="\\downarrow"):a==="\\Updownarrow"?(y="\\Uparrow",_="โ",A="\\Downarrow"):xUt.has(a)?(_="โฃ",P="vert",R=333):kUt.has(a)?(_="โฅ",P="doublevert",R=556):a==="["||a==="\\lbrack"?(y="โก",_="โข",A="โฃ",B="Size4-Regular",P="lbrack",R=667):a==="]"||a==="\\rbrack"?(y="โค",_="โฅ",A="โฆ",B="Size4-Regular",P="rbrack",R=667):a==="\\lfloor"||a==="โ"?(_=y="โข",A="โฃ",B="Size4-Regular",P="lfloor",R=667):a==="\\lceil"||a==="โ"?(y="โก",_=A="โข",B="Size4-Regular",P="lceil",R=667):a==="\\rfloor"||a==="โ"?(_=y="โฅ",A="โฆ",B="Size4-Regular",P="rfloor",R=667):a==="\\rceil"||a==="โ"?(y="โค",_=A="โฅ",B="Size4-Regular",P="rceil",R=667):a==="("||a==="\\lparen"?(y="โ",_="โ",A="โ",B="Size4-Regular",P="lparen",R=875):a===")"||a==="\\rparen"?(y="โ",_="โ",A="โ ",B="Size4-Regular",P="rparen",R=875):a==="\\{"||a==="\\lbrace"?(y="โง",E="โจ",A="โฉ",_="โช",B="Size4-Regular"):a==="\\}"||a==="\\rbrace"?(y="โซ",E="โฌ",A="โญ",_="โช",B="Size4-Regular"):a==="\\lgroup"||a==="โฎ"?(y="โง",A="โฉ",_="โช",B="Size4-Regular"):a==="\\rgroup"||a==="โฏ"?(y="โซ",A="โญ",_="โช",B="Size4-Regular"):a==="\\lmoustache"||a==="โฐ"?(y="โง",A="โญ",_="โช",B="Size4-Regular"):(a==="\\rmoustache"||a==="โฑ")&&(y="โซ",A="โฉ",_="โช",B="Size4-Regular");var j=wR(y,B,v),W=j.height+j.depth,ee=wR(_,B,v),ie=ee.height+ee.depth,oe=wR(A,B,v),be=oe.height+oe.depth,ge=0,ae=1;if(E!==null){var ne=wR(E,B,v);ge=ne.height+ne.depth,ae=2}var se=W+be+ge,de=Math.max(0,Math.ceil((u-se)/(ae*ie))),X=se+de*ae*ie,pe=p.fontMetrics().axisHeight;d&&(pe*=p.sizeMultiplier);var G=X/2-pe,xe=[];if(P.length>0){var U=X-W-be,Be=Math.round(X*1e3),Pe=BHt(P,Math.round(U*1e3)),je=new S9(P,Pe),Ie=Oi(R/1e3),Se=Oi(Be/1e3),Ce=new O7([je],{width:Ie,height:Se,viewBox:"0 0 "+R+" "+Be}),ke=A9([],[Ce],p);ke.height=Be/1e3,ke.style.width=Ie,ke.style.height=Se,xe.push({type:"elem",elem:ke})}else{if(xe.push(Fbe(A,B,v)),xe.push(DQ),E===null){var Ke=X-W-be+2*jbe;xe.push(Rbe(_,Ke,p))}else{var zt=(X-W-be-ge)/2+2*jbe;xe.push(Rbe(_,zt,p)),xe.push(DQ),xe.push(Fbe(E,B,v)),xe.push(DQ),xe.push(Rbe(_,zt,p))}xe.push(DQ),xe.push(Fbe(y,B,v))}var Ne=p.havingBaseStyle(bo.TEXT),pn=Mu({positionType:"bottom",positionData:G,children:xe});return Bbe(di(["delimsizing","mult"],[pn],Ne),bo.TEXT,p,b)},$be=80,zbe=.08,qbe=function(a,u,d,p,v){var b=NHt(a,p,d),y=new S9(a,b),E=new O7([y],{width:"400em",height:Oi(u),viewBox:"0 0 400000 "+d,preserveAspectRatio:"xMinYMin slice"});return A9(["hide-tail"],[E],v)},TUt=function(a,u){var d=u.havingBaseSizing(),p=oqe("\\surd",a*d.sizeMultiplier,aqe,d),v=d.sizeMultiplier,b=Math.max(0,u.minRuleThickness-u.fontMetrics().sqrtRuleThickness),y,E=0,_=0,A=0,P;return p.type==="small"?(A=1e3+1e3*b+$be,a<1?v=1:a<1.4&&(v=.7),E=(1+b+zbe)/v,_=(1+b)/v,y=qbe("sqrtMain",E,A,b,u),y.style.minWidth="0.853em",P=.833/v):p.type==="large"?(A=(1e3+$be)*yR[p.size],_=(yR[p.size]+b)/v,E=(yR[p.size]+b+zbe)/v,y=qbe("sqrtSize"+p.size,E,A,b,u),y.style.minWidth="1.02em",P=1/v):(E=a+b+zbe,_=a+b,A=Math.floor(1e3*a+b)+$be,y=qbe("sqrtTall",E,A,b,u),y.style.minWidth="0.742em",P=1.056),y.height=_,y.style.height=Oi(E),{span:y,advanceWidth:P,ruleWidth:(u.fontMetrics().sqrtRuleThickness+b)*v}},rqe=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","โ","โ","\\lceil","\\rceil","โ","โ","\\surd"]),EUt=new Set(["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","โฎ","โฏ","\\lmoustache","\\rmoustache","โฐ","โฑ"]),iqe=new Set(["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"]),yR=[0,1.2,1.8,2.4,3],sqe=function(a,u,d,p,v){if(a==="<"||a==="\\lt"||a==="โจ"?a="\\langle":(a===">"||a==="\\gt"||a==="โฉ")&&(a="\\rangle"),rqe.has(a)||iqe.has(a))return tqe(a,u,!1,d,p,v);if(EUt.has(a))return nqe(a,yR[u],!1,d,p,v);throw new ki("Illegal delimiter: '"+a+"'")},CUt=[{type:"small",style:bo.SCRIPTSCRIPT},{type:"small",style:bo.SCRIPT},{type:"small",style:bo.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],SUt=[{type:"small",style:bo.SCRIPTSCRIPT},{type:"small",style:bo.SCRIPT},{type:"small",style:bo.TEXT},{type:"stack"}],aqe=[{type:"small",style:bo.SCRIPTSCRIPT},{type:"small",style:bo.SCRIPT},{type:"small",style:bo.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],_Ut=function(a){if(a.type==="small")return"Main-Regular";if(a.type==="large")return"Size"+a.size+"-Regular";if(a.type==="stack")return"Size4-Regular";var u=a.type;throw new Error("Add support for delim type '"+u+"' here.")},oqe=function(a,u,d,p){for(var v=Math.min(2,3-p.style.size),b=v;b<d.length;b++){var y=d[b];if(y.type==="stack")break;var E=wR(a,_Ut(y),"math"),_=E.height+E.depth;if(y.type==="small"){var A=p.havingBaseStyle(y.style);_*=A.sizeMultiplier}if(_>u)return y}return d[d.length-1]},Hbe=function(a,u,d,p,v,b){a==="<"||a==="\\lt"||a==="โจ"?a="\\langle":(a===">"||a==="\\gt"||a==="โฉ")&&(a="\\rangle");var y;iqe.has(a)?y=CUt:rqe.has(a)?y=aqe:y=SUt;var E=oqe(a,u,y,p);return E.type==="small"?wUt(a,E.style,d,p,v,b):E.type==="large"?tqe(a,E.size,d,p,v,b):nqe(a,u,d,p,v,b)},Ube=function(a,u,d,p,v,b){var y=p.fontMetrics().axisHeight*p.sizeMultiplier,E=901,_=5/p.fontMetrics().ptPerEm,A=Math.max(u-y,d+y),P=Math.max(A/500*E,2*A-_);return Hbe(a,P,!0,p,v,b)},cqe={"\\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}},AUt=new Set(["(","\\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 IQ(i,a){var u=AQ(i);if(u&&AUt.has(u.text))return u;throw u?new ki("Invalid delimiter '"+u.text+"' after '"+a.funcName+"'",i):new ki("Invalid delimiter type '"+i.type+"'",i)}es({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,a)=>{var u=IQ(a[0],i);return{type:"delimsizing",mode:i.parser.mode,size:cqe[i.funcName].size,mclass:cqe[i.funcName].mclass,delim:u.text}},htmlBuilder:(i,a)=>i.delim==="."?di([i.mclass]):sqe(i.delim,i.size,a,i.mode,[i.mclass]),mathmlBuilder:i=>{var a=[];i.delim!=="."&&a.push(Vv(i.delim,i.mode));var u=new Si("mo",a);i.mclass==="mopen"||i.mclass==="mclose"?u.setAttribute("fence","true"):u.setAttribute("fence","false"),u.setAttribute("stretchy","true");var d=Oi(yR[i.size]);return u.setAttribute("minsize",d),u.setAttribute("maxsize",d),u}});function uqe(i){if(!i.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}es({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(i,a)=>{var u=i.parser.gullet.macros.get("\\current@color");if(u&&typeof u!="string")throw new ki("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:i.parser.mode,delim:IQ(a[0],i).text,color:u}}}),es({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(i,a)=>{var u=IQ(a[0],i),d=i.parser;++d.leftrightDepth;var p=d.parseExpression(!1);--d.leftrightDepth,d.expect("\\right",!1);var v=Xo(d.parseFunction(),"leftright-right");return{type:"leftright",mode:d.mode,body:p,left:u.text,right:v.delim,rightColor:v.color}},htmlBuilder:(i,a)=>{uqe(i);for(var u=d1(i.body,a,!0,["mopen","mclose"]),d=0,p=0,v=!1,b=0;b<u.length;b++)u[b].isMiddle?v=!0:(d=Math.max(u[b].height,d),p=Math.max(u[b].depth,p));d*=a.sizeMultiplier,p*=a.sizeMultiplier;var y;if(i.left==="."?y=vR(a,["mopen"]):y=Ube(i.left,d,p,a,i.mode,["mopen"]),u.unshift(y),v)for(var E=1;E<u.length;E++){var _=u[E],A=_.isMiddle;A&&(u[E]=Ube(A.delim,d,p,A.options,i.mode,[]))}var P;if(i.right===".")P=vR(a,["mclose"]);else{var R=i.rightColor?a.withColor(i.rightColor):a;P=Ube(i.right,d,p,R,i.mode,["mclose"])}return u.push(P),di(["minner"],u,a)},mathmlBuilder:(i,a)=>{uqe(i);var u=wm(i.body,a);if(i.left!=="."){var d=new Si("mo",[Vv(i.left,i.mode)]);d.setAttribute("fence","true"),u.unshift(d)}if(i.right!=="."){var p=new Si("mo",[Vv(i.right,i.mode)]);p.setAttribute("fence","true"),i.rightColor&&p.setAttribute("mathcolor",i.rightColor),u.push(p)}return Dbe(u)}}),es({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(i,a)=>{var u=IQ(a[0],i);if(!i.parser.leftrightDepth)throw new ki("\\middle without preceding \\left",u);return{type:"middle",mode:i.parser.mode,delim:u.text}},htmlBuilder:(i,a)=>{var u;if(i.delim===".")u=vR(a,[]);else{u=sqe(i.delim,1,a,i.mode,[]);var d={delim:i.delim,options:a};u.isMiddle=d}return u},mathmlBuilder:(i,a)=>{var u=i.delim==="\\vert"||i.delim==="|"?Vv("|","text"):Vv(i.delim,i.mode),d=new Si("mo",[u]);return d.setAttribute("fence","true"),d.setAttribute("lspace","0.05em"),d.setAttribute("rspace","0.05em"),d}});var OQ=(i,a)=>{var u=qD(Du(i.body,a),a),d=i.label.slice(1),p=a.sizeMultiplier,v,b=0,y=D7(i.body);if(d==="sout")v=di(["stretchy","sout"]),v.height=a.fontMetrics().defaultRuleThickness/p,b=-.5*a.fontMetrics().xHeight;else if(d==="phase"){var E=Uh({number:.6,unit:"pt"},a),_=Uh({number:.35,unit:"ex"},a),A=a.havingBaseSizing();p=p/A.sizeMultiplier;var P=u.height+u.depth+E+_;u.style.paddingLeft=Oi(P/2+E);var R=Math.floor(1e3*P*p),B=IHt(R),j=new O7([new S9("phase",B)],{width:"400em",height:Oi(R/1e3),viewBox:"0 0 400000 "+R,preserveAspectRatio:"xMinYMin slice"});v=A9(["hide-tail"],[j],a),v.style.height=Oi(P),b=u.depth+E+_}else{/cancel/.test(d)?y||u.classes.push("cancel-pad"):d==="angl"?u.classes.push("anglpad"):u.classes.push("boxpad");var W=0,ee=0,ie=0;/box/.test(d)?(ie=Math.max(a.fontMetrics().fboxrule,a.minRuleThickness),W=a.fontMetrics().fboxsep+(d==="colorbox"?0:ie),ee=W):d==="angl"?(ie=Math.max(a.fontMetrics().defaultRuleThickness,a.minRuleThickness),W=4*ie,ee=Math.max(0,.25-u.depth)):(W=y?.2:0,ee=W),v=fUt(u,d,W,ee,a),/fbox|boxed|fcolorbox/.test(d)?(v.style.borderStyle="solid",v.style.borderWidth=Oi(ie)):d==="angl"&&ie!==.049&&(v.style.borderTopWidth=Oi(ie),v.style.borderRightWidth=Oi(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=Mu({positionType:"individualShift",children:[{type:"elem",elem:v,shift:b},{type:"elem",elem:u,shift:0}]});else{var be=/cancel|phase/.test(d)?["svg-align"]:[];oe=Mu({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:v,shift:b,wrapperClasses:be}]})}return/cancel/.test(d)&&(oe.height=u.height,oe.depth=u.depth),/cancel/.test(d)&&!y?di(["mord","cancel-lap"],[oe],a):di(["mord"],[oe],a)},NQ=(i,a)=>{var u=0,d=new Si(i.label.includes("colorbox")?"mpadded":"menclose",[Al(i.body,a)]);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=a.fontMetrics().fboxsep*a.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(a.fontMetrics().fboxrule,a.minRuleThickness);d.setAttribute("style","border: "+Oi(p)+" solid "+i.borderColor)}break;case"\\xcancel":d.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return i.backgroundColor&&d.setAttribute("mathbackground",i.backgroundColor),d};es({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(i,a,u){var{parser:d,funcName:p}=i,v=Xo(a[0],"color-token").color,b=a[1];return{type:"enclose",mode:d.mode,label:p,backgroundColor:v,body:b}},htmlBuilder:OQ,mathmlBuilder:NQ}),es({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(i,a,u){var{parser:d,funcName:p}=i,v=Xo(a[0],"color-token").color,b=Xo(a[1],"color-token").color,y=a[2];return{type:"enclose",mode:d.mode,label:p,backgroundColor:b,borderColor:v,body:y}},htmlBuilder:OQ,mathmlBuilder:NQ}),es({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(i,a){var{parser:u}=i;return{type:"enclose",mode:u.mode,label:"\\fbox",body:a[0]}}}),es({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\phase"],props:{numArgs:1},handler(i,a){var{parser:u,funcName:d}=i,p=a[0];return{type:"enclose",mode:u.mode,label:d,body:p}},htmlBuilder:OQ,mathmlBuilder:NQ}),es({type:"enclose",names:["\\sout"],props:{numArgs:1,allowedInText:!0},handler(i,a){var{parser:u,funcName:d}=i;u.mode==="math"&&u.settings.reportNonstrict("mathVsSout","LaTeX's \\sout works only in text mode");var p=a[0];return{type:"enclose",mode:u.mode,label:d,body:p}},htmlBuilder:OQ,mathmlBuilder:NQ}),es({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(i,a){var{parser:u}=i;return{type:"enclose",mode:u.mode,label:"\\angl",body:a[0]}}});var lqe={};function X4(i){for(var{type:a,names:u,props:d,handler:p,htmlBuilder:v,mathmlBuilder:b}=i,y={type:a,numArgs:d.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:p},E=0;E<u.length;++E)lqe[u[E]]=y;v&&(xQ[a]=v),b&&(kQ[a]=b)}var hqe={};function et(i,a){hqe[i]=a}class W2{constructor(a,u,d){this.lexer=a,this.start=u,this.end=d}static range(a,u){return u?!a||!a.loc||!u.loc||a.loc.lexer!==u.loc.lexer?null:new W2(a.loc.lexer,a.loc.start,u.loc.end):a&&a.loc}}class ym{constructor(a,u){this.text=a,this.loc=u}range(a,u){return new ym(u,W2.range(this,a))}}function fqe(i){var a=[];i.consumeSpaces();var u=i.fetch().text;for(u==="\\relax"&&(i.consume(),i.consumeSpaces(),u=i.fetch().text);u==="\\hline"||u==="\\hdashline";)i.consume(),a.push(u==="\\hdashline"),i.consumeSpaces(),u=i.fetch().text;return a}var PQ=i=>{var a=i.parser.settings;if(!a.displayMode)throw new ki("{"+i.envName+"} can be used only in display mode.")},LUt=new Set(["gather","gather*"]);function Vbe(i){if(!i.includes("ed"))return!i.includes("*")}function M9(i,a,u){var{hskipBeforeAndAfter:d,addJot:p,cols:v,arraystretch:b,colSeparationType:y,autoTag:E,singleRow:_,emptySingleRow:A,maxNumCols:P,leqno:R}=a;if(i.gullet.beginGroup(),_||i.gullet.macros.set("\\cr","\\\\\\relax"),!b){var B=i.gullet.expandMacroAsText("\\arraystretch");if(B==null)b=1;else if(b=parseFloat(B),!b||b<0)throw new ki("Invalid \\arraystretch: "+B)}i.gullet.beginGroup();var j=[],W=[j],ee=[],ie=[],oe=E!=null?[]:void 0;function be(){E&&i.gullet.macros.set("\\@eqnsw","1",!0)}function ge(){oe&&(i.gullet.macros.get("\\df@tag")?(oe.push(i.subparse([new ym("\\df@tag")])),i.gullet.macros.set("\\df@tag",void 0,!0)):oe.push(!!E&&i.gullet.macros.get("\\@eqnsw")==="1"))}for(be(),ie.push(fqe(i));;){var ae=i.parseExpression(!1,_?"\\end":"\\\\");i.gullet.endGroup(),i.gullet.beginGroup();var ne={type:"ordgroup",mode:i.mode,body:ae};u&&(ne={type:"styling",mode:i.mode,style:u,body:[ne]}),j.push(ne);var se=i.fetch().text;if(se==="&"){if(P&&j.length===P){if(_||y)throw new ki("Too many tab characters: &",i.nextToken);i.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}i.consume()}else if(se==="\\end"){ge(),j.length===1&&ne.type==="styling"&&ne.body.length===1&&ne.body[0].type==="ordgroup"&&ne.body[0].body.length===0&&(W.length>1||!A)&&W.pop(),ie.length<W.length+1&&ie.push([]);break}else if(se==="\\\\"){i.consume();var de=void 0;i.gullet.future().text!==" "&&(de=i.parseSizeGroup(!0)),ee.push(de?de.value:null),ge(),ie.push(fqe(i)),j=[],W.push(j),be()}else throw new ki("Expected & or \\\\ or \\cr or \\end",i.nextToken)}return i.gullet.endGroup(),i.gullet.endGroup(),{type:"array",mode:i.mode,addJot:p,arraystretch:b,body:W,cols:v,rowGaps:ee,hskipBeforeAndAfter:d,hLinesBeforeRow:ie,colSeparationType:y,tags:oe,leqno:R}}function Gbe(i){return i.slice(0,1)==="d"?"display":"text"}var Q4=function(a,u){var d,p,v=a.body.length,b=a.hLinesBeforeRow,y=0,E=new Array(v),_=[],A=Math.max(u.fontMetrics().arrayRuleWidth,u.minRuleThickness),P=1/u.fontMetrics().ptPerEm,R=5*P;if(a.colSeparationType&&a.colSeparationType==="small"){var B=u.havingStyle(bo.SCRIPT).sizeMultiplier;R=.2778*(B/u.sizeMultiplier)}var j=a.colSeparationType==="CD"?Uh({number:3,unit:"ex"},u):12*P,W=3*P,ee=a.arraystretch*j,ie=.7*ee,oe=.3*ee,be=0;function ge(gt){for(var on=0;on<gt.length;++on)on>0&&(be+=.25),_.push({pos:be,isDashed:gt[on]})}for(ge(b[0]),d=0;d<a.body.length;++d){var ae=a.body[d],ne=ie,se=oe;y<ae.length&&(y=ae.length);var de=new Array(ae.length);for(p=0;p<ae.length;++p){var X=Du(ae[p],u);se<X.depth&&(se=X.depth),ne<X.height&&(ne=X.height),de[p]=X}var pe=a.rowGaps[d],G=0;pe&&(G=Uh(pe,u),G>0&&(G+=oe,se<G&&(se=G),G=0)),a.addJot&&d<a.body.length-1&&(se+=W),de.height=ne,de.depth=se,be+=ne,de.pos=be,be+=se+G,E[d]=de,ge(b[d+1])}var xe=be/2+u.fontMetrics().axisHeight,U=a.cols||[],Be=[],Pe,je,Ie=[];if(a.tags&&a.tags.some(gt=>gt))for(d=0;d<v;++d){var Se=E[d],Ce=Se.pos-xe,ke=a.tags[d],Ke=void 0;ke===!0?Ke=di(["eqn-num"],[],u):ke===!1?Ke=di([],[],u):Ke=di([],d1(ke,u,!0),u),Ke.depth=Se.depth,Ke.height=Se.height,Ie.push({type:"elem",elem:Ke,shift:Ce})}for(p=0,je=0;p<y||je<U.length;++p,++je){for(var zt,Ne=U[je],pn=!0;((Tt=Ne)==null?void 0:Tt.type)==="separator";){var Tt;if(pn||(Pe=di(["arraycolsep"],[]),Pe.style.width=Oi(u.fontMetrics().doubleRuleSep),Be.push(Pe)),Ne.separator==="|"||Ne.separator===":"){var Et=Ne.separator==="|"?"solid":"dashed",Wt=di(["vertical-separator"],[],u);Wt.style.height=Oi(be),Wt.style.borderRightWidth=Oi(A),Wt.style.borderRightStyle=Et,Wt.style.margin="0 "+Oi(-A/2);var un=be-xe;un&&(Wt.style.verticalAlign=Oi(-un)),Be.push(Wt)}else throw new ki("Invalid separator type: "+Ne.separator);je++,Ne=U[je],pn=!1}if(!(p>=y)){var yt=void 0;if(p>0||a.hskipBeforeAndAfter){var Bt,Ze;yt=(Bt=(Ze=Ne)==null?void 0:Ze.pregap)!=null?Bt:R,yt!==0&&(Pe=di(["arraycolsep"],[]),Pe.style.width=Oi(yt),Be.push(Pe))}var Dt=[];for(d=0;d<v;++d){var kt=E[d],Nn=kt[p];if(Nn){var ht=kt.pos-xe;Nn.depth=kt.depth,Nn.height=kt.height,Dt.push({type:"elem",elem:Nn,shift:ht})}}var qr=Mu({positionType:"individualShift",children:Dt}),xt=di(["col-align-"+(((zt=Ne)==null?void 0:zt.align)||"c")],[qr]);if(Be.push(xt),p<y-1||a.hskipBeforeAndAfter){var Ri,wi;yt=(Ri=(wi=Ne)==null?void 0:wi.postgap)!=null?Ri:R,yt!==0&&(Pe=di(["arraycolsep"],[]),Pe.style.width=Oi(yt),Be.push(Pe))}}}var ia=di(["mtable"],Be);if(_.length>0){for(var Hs=zD("hline",u,A),mo=zD("hdashline",u,A),Tr=[{type:"elem",elem:ia,shift:0}];_.length>0;){var On=_.pop(),Rn=On.pos-xe;On.isDashed?Tr.push({type:"elem",elem:mo,shift:Rn}):Tr.push({type:"elem",elem:Hs,shift:Rn})}ia=Mu({positionType:"individualShift",children:Tr})}if(Ie.length===0)return di(["mord"],[ia],u);var zn=Mu({positionType:"individualShift",children:Ie}),Ct=di(["tag"],[zn],u);return P7([ia,Ct])},MUt={c:"center ",l:"left ",r:"right "},J4=function(a,u){for(var d=[],p=new Si("mtd",[],["mtr-glue"]),v=new Si("mtd",[],["mml-eqn-num"]),b=0;b<a.body.length;b++){for(var y=a.body[b],E=[],_=0;_<y.length;_++)E.push(new Si("mtd",[Al(y[_],u)]));a.tags&&a.tags[b]&&(E.unshift(p),E.push(p),a.leqno?E.unshift(v):E.push(v)),d.push(new Si("mtr",E))}var A=new Si("mtable",d),P=a.arraystretch===.5?.1:.16+a.arraystretch-1+(a.addJot?.09:0);A.setAttribute("rowspacing",Oi(P));var R="",B="";if(a.cols&&a.cols.length>0){var j=a.cols,W="",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 be=ie;be<oe;be++){var ge=j[be];ge.type==="align"?(B+=MUt[ge.align],ee&&(W+="none "),ee=!0):ge.type==="separator"&&ee&&(W+=ge.separator==="|"?"solid ":"dashed ",ee=!1)}A.setAttribute("columnalign",B.trim()),/[sd]/.test(W)&&A.setAttribute("columnlines",W.trim())}if(a.colSeparationType==="align"){for(var ae=a.cols||[],ne="",se=1;se<ae.length;se++)ne+=se%2?"0em ":"1em ";A.setAttribute("columnspacing",ne.trim())}else a.colSeparationType==="alignat"||a.colSeparationType==="gather"?A.setAttribute("columnspacing","0em"):a.colSeparationType==="small"?A.setAttribute("columnspacing","0.2778em"):a.colSeparationType==="CD"?A.setAttribute("columnspacing","0.5em"):A.setAttribute("columnspacing","1em");var de="",X=a.hLinesBeforeRow;R+=X[0].length>0?"left ":"",R+=X[X.length-1].length>0?"right ":"";for(var pe=1;pe<X.length-1;pe++)de+=X[pe].length===0?"none ":X[pe][0]?"dashed ":"solid ";return/[sd]/.test(de)&&A.setAttribute("rowlines",de.trim()),R!==""&&(A=new Si("menclose",[A]),A.setAttribute("notation",R.trim())),a.arraystretch&&a.arraystretch<1&&(A=new Si("mstyle",[A]),A.setAttribute("scriptlevel","1")),A},dqe=function(a,u){a.envName.includes("ed")||PQ(a);var d=[],p=a.envName.includes("at")?"alignat":"align",v=a.envName==="split",b=M9(a.parser,{cols:d,addJot:!0,autoTag:v?void 0:Vbe(a.envName),emptySingleRow:!0,colSeparationType:p,maxNumCols:v?2:void 0,leqno:a.parser.settings.leqno},"display"),y=0,E=0,_={type:"ordgroup",mode:a.mode,body:[]};if(u[0]&&u[0].type==="ordgroup"){for(var A="",P=0;P<u[0].body.length;P++){var R=Xo(u[0].body[P],"textord");A+=R.text}y=Number(A),E=y*2}var B=!E;b.body.forEach(function(ie){for(var oe=1;oe<ie.length;oe+=2){var be=Xo(ie[oe],"styling"),ge=Xo(be.body[0],"ordgroup");ge.body.unshift(_)}if(B)E<ie.length&&(E=ie.length);else{var ae=ie.length/2;if(y<ae)throw new ki("Too many math in a row: "+("expected "+y+", but got "+ae),ie[0])}});for(var j=0;j<E;++j){var W="r",ee=0;j%2===1?W="l":j>0&&B&&(ee=1),d[j]={type:"align",align:W,pregap:ee,postgap:0}}return b.colSeparationType=B?"align":"alignat",b};X4({type:"array",names:["array","darray"],props:{numArgs:1},handler(i,a){var u=AQ(a[0]),d=u?[a[0]]:Xo(a[0],"ordgroup").body,p=d.map(function(b){var y=_Q(b),E=y.text;if("lcr".includes(E))return{type:"align",align:E};if(E==="|")return{type:"separator",separator:"|"};if(E===":")return{type:"separator",separator:":"};throw new ki("Unknown column alignment: "+E,b)}),v={cols:p,hskipBeforeAndAfter:!0,maxNumCols:p.length};return M9(i.parser,v,Gbe(i.envName))},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(i){var a={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".includes(u))throw new ki("Expected l or c or r",p.nextToken);p.consume(),p.consumeSpaces(),p.expect("]"),p.consume(),d.cols=[{type:"align",align:u}]}}var v=M9(i.parser,d,Gbe(i.envName)),b=Math.max(0,...v.body.map(y=>y.length));return v.cols=new Array(b).fill({type:"align",align:u}),a?{type:"leftright",mode:i.mode,body:[v],left:a[0],right:a[1],rightColor:void 0}:v},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(i){var a={arraystretch:.5},u=M9(i.parser,a,"script");return u.colSeparationType="small",u},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["subarray"],props:{numArgs:1},handler(i,a){var u=AQ(a[0]),d=u?[a[0]]:Xo(a[0],"ordgroup").body,p=d.map(function(y){var E=_Q(y),_=E.text;if("lc".includes(_))return{type:"align",align:_};throw new ki("Unknown column alignment: "+_,y)});if(p.length>1)throw new ki("{subarray} can contain only one column");var v={cols:p,hskipBeforeAndAfter:!1,arraystretch:.5},b=M9(i.parser,v,"script");if(b.body.length>0&&b.body[0].length>1)throw new ki("{subarray} can contain only one column");return b},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(i){var a={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},u=M9(i.parser,a,Gbe(i.envName));return{type:"leftright",mode:i.mode,body:[u],left:i.envName.includes("r")?".":"\\{",right:i.envName.includes("r")?"\\}":".",rightColor:void 0}},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:dqe,htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(i){LUt.has(i.envName)&&PQ(i);var a={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Vbe(i.envName),emptySingleRow:!0,leqno:i.parser.settings.leqno};return M9(i.parser,a,"display")},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:dqe,htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(i){PQ(i);var a={autoTag:Vbe(i.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:i.parser.settings.leqno};return M9(i.parser,a,"display")},htmlBuilder:Q4,mathmlBuilder:J4}),X4({type:"array",names:["CD"],props:{numArgs:0},handler(i){return PQ(i),mUt(i.parser)},htmlBuilder:Q4,mathmlBuilder:J4}),et("\\nonumber","\\gdef\\@eqnsw{0}"),et("\\notag","\\nonumber"),es({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(i,a){throw new ki(i.funcName+" valid only within array environment")}});var gqe=lqe;es({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(i,a){var{parser:u,funcName:d}=i,p=a[0];if(p.type!=="ordgroup")throw new ki("Invalid environment name",p);for(var v="",b=0;b<p.body.length;++b)v+=Xo(p.body[b],"textord").text;if(d==="\\begin"){if(!gqe.hasOwnProperty(v))throw new ki("No such environment: "+v,p);var y=gqe[v],{args:E,optArgs:_}=u.parseArguments("\\begin{"+v+"}",y),A={mode:u.mode,envName:v,parser:u},P=y.handler(A,E,_);u.expect("\\end",!1);var R=u.nextToken,B=Xo(u.parseFunction(),"environment");if(B.name!==v)throw new ki("Mismatch: \\begin{"+v+"} matched by \\end{"+B.name+"}",R);return P}return{type:"environment",mode:u.mode,name:v,nameGroup:p}}});var pqe=(i,a)=>{var u=i.font,d=a.withFont(u);return Du(i.body,d)},bqe=(i,a)=>{var u=i.font,d=a.withFont(u);return Al(i.body,d)},mqe={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};es({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=TQ(a[0]),v=d;return v in mqe&&(v=mqe[v]),{type:"font",mode:u.mode,font:v.slice(1),body:p}},htmlBuilder:pqe,mathmlBuilder:bqe}),es({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(i,a)=>{var{parser:u}=i,d=a[0];return{type:"mclass",mode:u.mode,mclass:MQ(d),body:[{type:"font",mode:u.mode,font:"boldsymbol",body:d}],isCharacterBox:D7(d)}}}),es({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(i,a)=>{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:pqe,mathmlBuilder:bqe});var DUt=(i,a)=>{var u=a.style,d=u.fracNum(),p=u.fracDen(),v;v=a.havingStyle(d);var b=Du(i.numer,v,a);if(i.continued){var y=8.5/a.fontMetrics().ptPerEm,E=3.5/a.fontMetrics().ptPerEm;b.height=b.height<y?y:b.height,b.depth=b.depth<E?E:b.depth}v=a.havingStyle(p);var _=Du(i.denom,v,a),A,P,R;i.hasBarLine?(i.barSize?(P=Uh(i.barSize,a),A=zD("frac-line",a,P)):A=zD("frac-line",a),P=A.height,R=A.height):(A=null,P=0,R=a.fontMetrics().defaultRuleThickness);var B,j,W;u.size===bo.DISPLAY.size?(B=a.fontMetrics().num1,P>0?j=3*R:j=7*R,W=a.fontMetrics().denom1):(P>0?(B=a.fontMetrics().num2,j=R):(B=a.fontMetrics().num3,j=3*R),W=a.fontMetrics().denom2);var ee;if(A){var oe=a.fontMetrics().axisHeight;B-b.depth-(oe+.5*P)<j&&(B+=j-(B-b.depth-(oe+.5*P))),oe-.5*P-(_.height-W)<j&&(W+=j-(oe-.5*P-(_.height-W)));var be=-(oe-.5*P);ee=Mu({positionType:"individualShift",children:[{type:"elem",elem:_,shift:W},{type:"elem",elem:A,shift:be},{type:"elem",elem:b,shift:-B}]})}else{var ie=B-b.depth-(_.height-W);ie<j&&(B+=.5*(j-ie),W+=.5*(j-ie)),ee=Mu({positionType:"individualShift",children:[{type:"elem",elem:_,shift:W},{type:"elem",elem:b,shift:-B}]})}v=a.havingStyle(u),ee.height*=v.sizeMultiplier/a.sizeMultiplier,ee.depth*=v.sizeMultiplier/a.sizeMultiplier;var ge;u.size===bo.DISPLAY.size?ge=a.fontMetrics().delim1:u.size===bo.SCRIPTSCRIPT.size?ge=a.havingStyle(bo.SCRIPT).fontMetrics().delim2:ge=a.fontMetrics().delim2;var ae,ne;return i.leftDelim==null?ae=vR(a,["mopen"]):ae=Hbe(i.leftDelim,ge,!0,a.havingStyle(u),i.mode,["mopen"]),i.continued?ne=di([]):i.rightDelim==null?ne=vR(a,["mclose"]):ne=Hbe(i.rightDelim,ge,!0,a.havingStyle(u),i.mode,["mclose"]),di(["mord"].concat(v.sizingClasses(a)),[ae,di(["mfrac"],[ee]),ne],a)},IUt=(i,a)=>{var u=new Si("mfrac",[Al(i.numer,a),Al(i.denom,a)]);if(!i.hasBarLine)u.setAttribute("linethickness","0px");else if(i.barSize){var d=Uh(i.barSize,a);u.setAttribute("linethickness",Oi(d))}if(i.leftDelim!=null||i.rightDelim!=null){var p=[];if(i.leftDelim!=null){var v=new Si("mo",[new B0(i.leftDelim.replace("\\",""))]);v.setAttribute("fence","true"),p.push(v)}if(p.push(u),i.rightDelim!=null){var b=new Si("mo",[new B0(i.rightDelim.replace("\\",""))]);b.setAttribute("fence","true"),p.push(b)}return Dbe(p)}return u},vqe=(i,a)=>{if(!a)return i;var u={type:"styling",mode:i.mode,style:a,body:[i]};return u};es({type:"genfrac",names:["\\cfrac","\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=a[0],v=a[1],b,y=null,E=null;switch(d){case"\\cfrac":case"\\dfrac":case"\\frac":case"\\tfrac":b=!0;break;case"\\\\atopfrac":b=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":b=!1,y="(",E=")";break;case"\\\\bracefrac":b=!1,y="\\{",E="\\}";break;case"\\\\brackfrac":b=!1,y="[",E="]";break;default:throw new Error("Unrecognized genfrac command")}var _=d==="\\cfrac",A=null;return _||d.startsWith("\\d")?A="display":d.startsWith("\\t")&&(A="text"),vqe({type:"genfrac",mode:u.mode,numer:p,denom:v,continued:_,hasBarLine:b,leftDelim:y,rightDelim:E,barSize:null},A)},htmlBuilder:DUt,mathmlBuilder:IUt}),es({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(i){var{parser:a,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:a.mode,replaceWith:p,token:d}}});var wqe=["display","text","script","scriptscript"],yqe=function(a){var u=null;return a.length>0&&(u=a,u=u==="."?null:u),u};es({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(i,a){var{parser:u}=i,d=a[4],p=a[5],v=TQ(a[0]),b=v.type==="atom"&&v.family==="open"?yqe(v.text):null,y=TQ(a[1]),E=y.type==="atom"&&y.family==="close"?yqe(y.text):null,_=Xo(a[2],"size"),A,P=null;_.isBlank?A=!0:(P=_.value,A=P.number>0);var R=null,B=a[3];if(B.type==="ordgroup"){if(B.body.length>0){var j=Xo(B.body[0],"textord");R=wqe[Number(j.text)]}}else B=Xo(B,"textord"),R=wqe[Number(B.text)];return vqe({type:"genfrac",mode:u.mode,numer:d,denom:p,continued:!1,hasBarLine:A,barSize:P,leftDelim:b,rightDelim:E},R)}}),es({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(i,a){var{parser:u,funcName:d,token:p}=i;return{type:"infix",mode:u.mode,replaceWith:"\\\\abovefrac",size:Xo(a[0],"size").value,token:p}}}),es({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=a[0],v=Xo(a[1],"infix").size;if(!v)throw new Error("\\\\abovefrac expected size, but got "+String(v));var b=a[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}}});var xqe=(i,a)=>{var u=a.style,d,p;i.type==="supsub"?(d=i.sup?Du(i.sup,a.havingStyle(u.sup()),a):Du(i.sub,a.havingStyle(u.sub()),a),p=Xo(i.base,"horizBrace")):p=Xo(i,"horizBrace");var v=Du(p.base,a.havingBaseStyle(bo.DISPLAY)),b=SQ(p,a),y;if(p.isOver?(y=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:v},{type:"kern",size:.1},{type:"elem",elem:b}]}),y.children[0].children[0].children[1].classes.push("svg-align")):(y=Mu({positionType:"bottom",positionData:v.depth+.1+b.height,children:[{type:"elem",elem:b},{type:"kern",size:.1},{type:"elem",elem:v}]}),y.children[0].children[0].children[0].classes.push("svg-align")),d){var E=di(["minner",p.isOver?"mover":"munder"],[y],a);p.isOver?y=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:E},{type:"kern",size:.2},{type:"elem",elem:d}]}):y=Mu({positionType:"bottom",positionData:E.depth+.2+d.height+d.depth,children:[{type:"elem",elem:d},{type:"kern",size:.2},{type:"elem",elem:E}]})}return di(["minner",p.isOver?"mover":"munder"],[y],a)},OUt=(i,a)=>{var u=CQ(i.label);return new Si(i.isOver?"mover":"munder",[Al(i.base,a),u])};es({type:"horizBrace",names:["\\overbrace","\\underbrace","\\overbracket","\\underbracket"],props:{numArgs:1},handler(i,a){var{parser:u,funcName:d}=i;return{type:"horizBrace",mode:u.mode,label:d,isOver:d.includes("\\over"),base:a[0]}},htmlBuilder:xqe,mathmlBuilder:OUt}),es({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(i,a)=>{var{parser:u}=i,d=a[1],p=Xo(a[0],"url").url;return u.settings.isTrusted({command:"\\href",url:p})?{type:"href",mode:u.mode,href:p,body:P0(d)}:u.formatUnsupportedCmd("\\href")},htmlBuilder:(i,a)=>{var u=d1(i.body,a,!1);return XHt(i.href,[],u,a)},mathmlBuilder:(i,a)=>{var u=L9(i.body,a);return u instanceof Si||(u=new Si("mrow",[u])),u.setAttribute("href",i.href),u}}),es({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(i,a)=>{var{parser:u}=i,d=Xo(a[0],"url").url;if(!u.settings.isTrusted({command:"\\url",url:d}))return u.formatUnsupportedCmd("\\url");for(var p=[],v=0;v<d.length;v++){var b=d[v];b==="~"&&(b="\\textasciitilde"),p.push({type:"textord",mode:"text",text:b})}var y={type:"text",mode:u.mode,font:"\\texttt",body:p};return{type:"href",mode:u.mode,href:d,body:P0(y)}}}),es({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(i,a){var{parser:u}=i;return{type:"hbox",mode:u.mode,body:P0(a[0])}},htmlBuilder(i,a){var u=d1(i.body,a,!1);return P7(u)},mathmlBuilder(i,a){return new Si("mrow",wm(i.body,a))}}),es({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(i,a)=>{var{parser:u,funcName:d,token:p}=i,v=Xo(a[0],"raw").string,b=a[1];u.settings.strict&&u.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var y,E={};switch(d){case"\\htmlClass":E.class=v,y={command:"\\htmlClass",class:v};break;case"\\htmlId":E.id=v,y={command:"\\htmlId",id:v};break;case"\\htmlStyle":E.style=v,y={command:"\\htmlStyle",style:v};break;case"\\htmlData":{for(var _=v.split(","),A=0;A<_.length;A++){var P=_[A],R=P.indexOf("=");if(R<0)throw new ki("\\htmlData key/value '"+P+"' missing equals sign");var B=P.slice(0,R),j=P.slice(R+1);E["data-"+B.trim()]=j}y={command:"\\htmlData",attributes:E};break}default:throw new Error("Unrecognized html command")}return u.settings.isTrusted(y)?{type:"html",mode:u.mode,attributes:E,body:P0(b)}:u.formatUnsupportedCmd(d)},htmlBuilder:(i,a)=>{var u=d1(i.body,a,!1),d=["enclosing"];i.attributes.class&&d.push(...i.attributes.class.trim().split(/\s+/));var p=di(d,u,a);for(var v in i.attributes)v!=="class"&&i.attributes.hasOwnProperty(v)&&p.setAttribute(v,i.attributes[v]);return p},mathmlBuilder:(i,a)=>L9(i.body,a)}),es({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInArgument:!0,allowedInText:!0},handler:(i,a)=>{var{parser:u}=i;return{type:"htmlmathml",mode:u.mode,html:P0(a[0]),mathml:P0(a[1])}},htmlBuilder:(i,a)=>{var u=d1(i.html,a,!1);return P7(u)},mathmlBuilder:(i,a)=>L9(i.mathml,a)});var Kbe=function(a){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(a))return{number:+a,unit:"bp"};var u=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(a);if(!u)throw new ki("Invalid size: '"+a+"' in \\includegraphics");var d={number:+(u[1]+u[2]),unit:u[3]};if(!wze(d))throw new ki("Invalid unit: '"+d.unit+"' in \\includegraphics.");return d};es({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(i,a,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 E=Xo(u[0],"raw").string,_=E.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=Kbe(R);break;case"height":v=Kbe(R);break;case"totalheight":b=Kbe(R);break;default:throw new ki("Invalid key: '"+P[0]+"' in \\includegraphics.")}}}var B=Xo(a[0],"url").url;return y===""&&(y=B,y=y.replace(/^.*[\\/]/,""),y=y.substring(0,y.lastIndexOf("."))),d.settings.isTrusted({command:"\\includegraphics",url:B})?{type:"includegraphics",mode:d.mode,alt:y,width:p,height:v,totalheight:b,src:B}:d.formatUnsupportedCmd("\\includegraphics")},htmlBuilder:(i,a)=>{var u=Uh(i.height,a),d=0;i.totalheight.number>0&&(d=Uh(i.totalheight,a)-u);var p=0;i.width.number>0&&(p=Uh(i.width,a));var v={height:Oi(u+d)};p>0&&(v.width=Oi(p)),d>0&&(v.verticalAlign=Oi(-d));var b=new jHt(i.src,i.alt,v);return b.height=u,b.depth=d,b},mathmlBuilder:(i,a)=>{var u=new Si("mglyph",[]);u.setAttribute("alt",i.alt);var d=Uh(i.height,a),p=0;if(i.totalheight.number>0&&(p=Uh(i.totalheight,a)-d,u.setAttribute("valign",Oi(-p))),u.setAttribute("height",Oi(d+p)),i.width.number>0){var v=Uh(i.width,a);u.setAttribute("width",Oi(v))}return u.setAttribute("src",i.src),u}}),es({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(i,a){var{parser:u,funcName:d}=i,p=Xo(a[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,a){return Ize(i.dimension,a)},mathmlBuilder(i,a){var u=Uh(i.dimension,a);return new Rze(u)}}),es({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=a[0];return{type:"lap",mode:u.mode,alignment:d.slice(5),body:p}},htmlBuilder:(i,a)=>{var u;i.alignment==="clap"?(u=di([],[Du(i.body,a)]),u=di(["inner"],[u],a)):u=di(["inner"],[Du(i.body,a)]);var d=di(["fix"],[]),p=di([i.alignment],[u,d],a),v=di(["strut"]);return v.style.height=Oi(p.height+p.depth),p.depth&&(v.style.verticalAlign=Oi(-p.depth)),p.children.unshift(v),p=di(["thinbox"],[p],a),di(["mord","vbox"],[p],a)},mathmlBuilder:(i,a)=>{var u=new Si("mpadded",[Al(i.body,a)]);if(i.alignment!=="rlap"){var d=i.alignment==="llap"?"-1":"-0.5";u.setAttribute("lspace",d+"width")}return u.setAttribute("width","0px"),u}}),es({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(i,a){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}}}),es({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(i,a){throw new ki("Mismatched "+i.funcName)}});var kqe=(i,a)=>{switch(a.style.size){case bo.DISPLAY.size:return i.display;case bo.TEXT.size:return i.text;case bo.SCRIPT.size:return i.script;case bo.SCRIPTSCRIPT.size:return i.scriptscript;default:return i.text}};es({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(i,a)=>{var{parser:u}=i;return{type:"mathchoice",mode:u.mode,display:P0(a[0]),text:P0(a[1]),script:P0(a[2]),scriptscript:P0(a[3])}},htmlBuilder:(i,a)=>{var u=kqe(i,a),d=d1(u,a,!1);return P7(d)},mathmlBuilder:(i,a)=>{var u=kqe(i,a);return L9(u,a)}});var Tqe=(i,a,u,d,p,v,b)=>{i=di([],[i]);var y=u&&D7(u),E,_;if(a){var A=Du(a,d.havingStyle(p.sup()),d);_={elem:A,kern:Math.max(d.fontMetrics().bigOpSpacing1,d.fontMetrics().bigOpSpacing3-A.depth)}}if(u){var P=Du(u,d.havingStyle(p.sub()),d);E={elem:P,kern:Math.max(d.fontMetrics().bigOpSpacing2,d.fontMetrics().bigOpSpacing4-P.height)}}var R;if(_&&E){var B=d.fontMetrics().bigOpSpacing5+E.elem.height+E.elem.depth+E.kern+i.depth+b;R=Mu({positionType:"bottom",positionData:B,children:[{type:"kern",size:d.fontMetrics().bigOpSpacing5},{type:"elem",elem:E.elem,marginLeft:Oi(-v)},{type:"kern",size:E.kern},{type:"elem",elem:i},{type:"kern",size:_.kern},{type:"elem",elem:_.elem,marginLeft:Oi(v)},{type:"kern",size:d.fontMetrics().bigOpSpacing5}]})}else if(E){var j=i.height-b;R=Mu({positionType:"top",positionData:j,children:[{type:"kern",size:d.fontMetrics().bigOpSpacing5},{type:"elem",elem:E.elem,marginLeft:Oi(-v)},{type:"kern",size:E.kern},{type:"elem",elem:i}]})}else if(_){var W=i.depth+b;R=Mu({positionType:"bottom",positionData:W,children:[{type:"elem",elem:i},{type:"kern",size:_.kern},{type:"elem",elem:_.elem,marginLeft:Oi(v)},{type:"kern",size:d.fontMetrics().bigOpSpacing5}]})}else return i;var ee=[R];if(E&&v!==0&&!y){var ie=di(["mspace"],[],d);ie.style.marginRight=Oi(v),ee.unshift(ie)}return di(["mop","op-limits"],ee,d)},Eqe=new Set(["\\smallint"]),HD=(i,a)=>{var u,d,p=!1,v;i.type==="supsub"?(u=i.sup,d=i.sub,v=Xo(i.base,"op"),p=!0):v=Xo(i,"op");var b=a.style,y=!1;b.size===bo.DISPLAY.size&&v.symbol&&!Eqe.has(v.name)&&(y=!0);var E;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"),E=Rp(v.name,_,"math",a,["mop","op-symbol",y?"large-op":"small-op"]),A.length>0){var P=E.italic,R=Nze(A+"Size"+(y?"2":"1"),a);E=Mu({positionType:"individualShift",children:[{type:"elem",elem:E,shift:0},{type:"elem",elem:R,shift:y?.08:0}]}),v.name="\\"+A,E.classes.unshift("mop"),E.italic=P}}else if(v.body){var B=d1(v.body,a,!0);B.length===1&&B[0]instanceof mm?(E=B[0],E.classes[0]="mop"):E=di(["mop"],B,a)}else{for(var j=[],W=1;W<v.name.length;W++)j.push(Ebe(v.name[W],v.mode,a));E=di(["mop"],j,a)}var ee=0,ie=0;return(E instanceof mm||v.name==="\\oiint"||v.name==="\\oiiint")&&!v.suppressBaseShift&&(ee=(E.height-E.depth)/2-a.fontMetrics().axisHeight,ie=E.italic||0),p?Tqe(E,u,d,a,b,ie,ee):(ee&&(E.style.position="relative",E.style.top=Oi(ee)),E)},xR=(i,a)=>{var u;if(i.symbol)u=new Si("mo",[Vv(i.name,i.mode)]),Eqe.has(i.name)&&u.setAttribute("largeop","false");else if(i.body)u=new Si("mo",wm(i.body,a));else{u=new Si("mi",[new B0(i.name.slice(1))]);var d=new Si("mo",[Vv("โก","text")]);i.parentIsSupSub?u=new Si("mrow",[u,d]):u=Fze([u,d])}return u},NUt={"โ":"\\prod","โ":"\\coprod","โ":"\\sum","โ":"\\bigwedge","โ":"\\bigvee","โ":"\\bigcap","โ":"\\bigcup","โจ":"\\bigodot","โจ":"\\bigoplus","โจ":"\\bigotimes","โจ":"\\biguplus","โจ":"\\bigsqcup"};es({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","โ","โ","โ","โ","โ","โ","โ","โจ","โจ","โจ","โจ","โจ"],props:{numArgs:0},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=d;return p.length===1&&(p=NUt[p]),{type:"op",mode:u.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:p}},htmlBuilder:HD,mathmlBuilder:xR}),es({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(i,a)=>{var{parser:u}=i,d=a[0];return{type:"op",mode:u.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:P0(d)}},htmlBuilder:HD,mathmlBuilder:xR});var PUt={"โซ":"\\int","โฌ":"\\iint","โญ":"\\iiint","โฎ":"\\oint","โฏ":"\\oiint","โฐ":"\\oiiint"};es({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:a,funcName:u}=i;return{type:"op",mode:a.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:u}},htmlBuilder:HD,mathmlBuilder:xR}),es({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(i){var{parser:a,funcName:u}=i;return{type:"op",mode:a.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:u}},htmlBuilder:HD,mathmlBuilder:xR}),es({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","โซ","โฌ","โญ","โฎ","โฏ","โฐ"],props:{numArgs:0,allowedInArgument:!0},handler(i){var{parser:a,funcName:u}=i,d=u;return d.length===1&&(d=PUt[d]),{type:"op",mode:a.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:d}},htmlBuilder:HD,mathmlBuilder:xR});var Cqe=(i,a)=>{var u,d,p=!1,v;i.type==="supsub"?(u=i.sup,d=i.sub,v=Xo(i.base,"operatorname"),p=!0):v=Xo(i,"operatorname");var b;if(v.body.length>0){for(var y=v.body.map(P=>{var R="text"in P?P.text:void 0;return typeof R=="string"?{type:"textord",mode:P.mode,text:R}:P}),E=d1(y,a.withFont("mathrm"),!0),_=0;_<E.length;_++){var A=E[_];A instanceof mm&&(A.text=A.text.replace(/\u2212/,"-").replace(/\u2217/,"*"))}b=di(["mop"],E,a)}else b=di(["mop"],[],a);return p?Tqe(b,u,d,a,a.style,0,0):b},BUt=(i,a)=>{for(var u=wm(i.body,a.withFont("mathrm")),d=!0,p=0;p<u.length;p++){var v=u[p];if(!(v instanceof Rze))if(v instanceof Si)switch(v.type){case"mi":case"mn":case"mspace":case"mtext":break;case"mo":{var b=v.children[0];v.children.length===1&&b instanceof B0?b.text=b.text.replace(/\u2212/,"-").replace(/\u2217/,"*"):d=!1;break}default:d=!1}else d=!1}if(d){var y=u.map(A=>A.toText()).join("");u=[new B0(y)]}var E=new Si("mi",u);E.setAttribute("mathvariant","normal");var _=new Si("mo",[Vv("โก","text")]);return i.parentIsSupSub?new Si("mrow",[E,_]):Fze([E,_])};es({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(i,a)=>{var{parser:u,funcName:d}=i,p=a[0];return{type:"operatorname",mode:u.mode,body:P0(p),alwaysHandleSupSub:d==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:Cqe,mathmlBuilder:BUt}),et("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@"),qC({type:"ordgroup",htmlBuilder(i,a){return i.semisimple?P7(d1(i.body,a,!1)):di(["mord"],d1(i.body,a,!0),a)},mathmlBuilder(i,a){return L9(i.body,a,!0)}}),es({type:"overline",names:["\\overline"],props:{numArgs:1},handler(i,a){var{parser:u}=i,d=a[0];return{type:"overline",mode:u.mode,body:d}},htmlBuilder(i,a){var u=Du(i.body,a.havingCrampedStyle()),d=zD("overline-line",a),p=a.fontMetrics().defaultRuleThickness,v=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:3*p},{type:"elem",elem:d},{type:"kern",size:p}]});return di(["mord","overline"],[v],a)},mathmlBuilder(i,a){var u=new Si("mo",[new B0("โพ")]);u.setAttribute("stretchy","true");var d=new Si("mover",[Al(i.body,a),u]);return d.setAttribute("accent","true"),d}}),es({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(i,a)=>{var{parser:u}=i,d=a[0];return{type:"phantom",mode:u.mode,body:P0(d)}},htmlBuilder:(i,a)=>{var u=d1(i.body,a.withPhantom(),!1);return P7(u)},mathmlBuilder:(i,a)=>{var u=wm(i.body,a);return new Si("mphantom",u)}}),et("\\hphantom","\\smash{\\phantom{#1}}"),es({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(i,a)=>{var{parser:u}=i,d=a[0];return{type:"vphantom",mode:u.mode,body:d}},htmlBuilder:(i,a)=>{var u=di(["inner"],[Du(i.body,a.withPhantom())]),d=di(["fix"],[]);return di(["mord","rlap"],[u,d],a)},mathmlBuilder:(i,a)=>{var u=wm(P0(i.body),a),d=new Si("mphantom",u),p=new Si("mpadded",[d]);return p.setAttribute("width","0px"),p}}),es({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(i,a){var{parser:u}=i,d=Xo(a[0],"size").value,p=a[1];return{type:"raisebox",mode:u.mode,dy:d,body:p}},htmlBuilder(i,a){var u=Du(i.body,a),d=Uh(i.dy,a);return Mu({positionType:"shift",positionData:-d,children:[{type:"elem",elem:u}]})},mathmlBuilder(i,a){var u=new Si("mpadded",[Al(i.body,a)]),d=i.dy.number+i.dy.unit;return u.setAttribute("voffset",d),u}}),es({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(i){var{parser:a}=i;return{type:"internal",mode:a.mode}}}),es({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(i,a,u){var{parser:d}=i,p=u[0],v=Xo(a[0],"size"),b=Xo(a[1],"size");return{type:"rule",mode:d.mode,shift:p&&Xo(p,"size").value,width:v.value,height:b.value}},htmlBuilder(i,a){var u=di(["mord","rule"],[],a),d=Uh(i.width,a),p=Uh(i.height,a),v=i.shift?Uh(i.shift,a):0;return u.style.borderRightWidth=Oi(d),u.style.borderTopWidth=Oi(p),u.style.bottom=Oi(v),u.width=d,u.height=p+v,u.depth=-v,u.maxFontSize=p*1.125*a.sizeMultiplier,u},mathmlBuilder(i,a){var u=Uh(i.width,a),d=Uh(i.height,a),p=i.shift?Uh(i.shift,a):0,v=a.color&&a.getColor()||"black",b=new Si("mspace");b.setAttribute("mathbackground",v),b.setAttribute("width",Oi(u)),b.setAttribute("height",Oi(d));var y=new Si("mpadded",[b]);return p>=0?y.setAttribute("height",Oi(p)):(y.setAttribute("height",Oi(p)),y.setAttribute("depth",Oi(-p))),y.setAttribute("voffset",Oi(p)),y}});function Sqe(i,a,u){for(var d=d1(i,a,!1),p=a.sizeMultiplier/u.sizeMultiplier,v=0;v<d.length;v++){var b=d[v].classes.indexOf("sizing");b<0?Array.prototype.push.apply(d[v].classes,a.sizingClasses(u)):d[v].classes[b+1]==="reset-size"+a.size&&(d[v].classes[b+1]="reset-size"+u.size),d[v].height*=p,d[v].depth*=p}return P7(d)}var _qe=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],FUt=(i,a)=>{var u=a.havingSize(i.size);return Sqe(i.body,u,a)};es({type:"sizing",names:_qe,props:{numArgs:0,allowedInText:!0},handler:(i,a)=>{var{breakOnTokenText:u,funcName:d,parser:p}=i,v=p.parseExpression(!1,u);return{type:"sizing",mode:p.mode,size:_qe.indexOf(d)+1,body:v}},htmlBuilder:FUt,mathmlBuilder:(i,a)=>{var u=a.havingSize(i.size),d=wm(i.body,u),p=new Si("mstyle",d);return p.setAttribute("mathsize",Oi(u.sizeMultiplier)),p}}),es({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(i,a,u)=>{var{parser:d}=i,p=!1,v=!1,b=u[0]&&Xo(u[0],"ordgroup");if(b)for(var y="",E=0;E<b.body.length;++E){var _=b.body[E];if(y=_Q(_).text,y==="t")p=!0;else if(y==="b")v=!0;else{p=!1,v=!1;break}}else p=!0,v=!0;var A=a[0];return{type:"smash",mode:d.mode,body:A,smashHeight:p,smashDepth:v}},htmlBuilder:(i,a)=>{var u=di([],[Du(i.body,a)]);if(!i.smashHeight&&!i.smashDepth)return u;if(i.smashHeight&&(u.height=0),i.smashDepth&&(u.depth=0),i.smashHeight&&i.smashDepth)return di(["mord","smash"],[u],a);if(u.children)for(var d=0;d<u.children.length;d++)i.smashHeight&&(u.children[d].height=0),i.smashDepth&&(u.children[d].depth=0);var p=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:u}]});return di(["mord"],[p],a)},mathmlBuilder:(i,a)=>{var u=new Si("mpadded",[Al(i.body,a)]);return i.smashHeight&&u.setAttribute("height","0px"),i.smashDepth&&u.setAttribute("depth","0px"),u}}),es({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(i,a,u){var{parser:d}=i,p=u[0],v=a[0];return{type:"sqrt",mode:d.mode,body:v,index:p}},htmlBuilder(i,a){var u=Du(i.body,a.havingCrampedStyle());u.height===0&&(u.height=a.fontMetrics().xHeight),u=qD(u,a);var d=a.fontMetrics(),p=d.defaultRuleThickness,v=p;a.style.id<bo.TEXT.id&&(v=a.fontMetrics().xHeight);var b=p+v/4,y=u.height+u.depth+b+p,{span:E,ruleWidth:_,advanceWidth:A}=TUt(y,a),P=E.height-_;P>u.height+u.depth+b&&(b=(b+P-u.height-u.depth)/2);var R=E.height-u.height-b-_;u.style.paddingLeft=Oi(A);var B=Mu({positionType:"firstBaseline",children:[{type:"elem",elem:u,wrapperClasses:["svg-align"]},{type:"kern",size:-(u.height+R)},{type:"elem",elem:E},{type:"kern",size:_}]});if(i.index){var j=a.havingStyle(bo.SCRIPTSCRIPT),W=Du(i.index,j,a),ee=.6*(B.height-B.depth),ie=Mu({positionType:"shift",positionData:-ee,children:[{type:"elem",elem:W}]}),oe=di(["root"],[ie]);return di(["mord","sqrt"],[oe,B],a)}else return di(["mord","sqrt"],[B],a)},mathmlBuilder(i,a){var{body:u,index:d}=i;return d?new Si("mroot",[Al(u,a),Al(d,a)]):new Si("msqrt",[Al(u,a)])}});var Aqe={display:bo.DISPLAY,text:bo.TEXT,script:bo.SCRIPT,scriptscript:bo.SCRIPTSCRIPT};es({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(i,a){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,a){var u=Aqe[i.style],d=a.havingStyle(u).withFont("");return Sqe(i.body,d,a)},mathmlBuilder(i,a){var u=Aqe[i.style],d=a.havingStyle(u),p=wm(i.body,d),v=new Si("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 RUt=function(a,u){var d=a.base;if(d)if(d.type==="op"){var p=d.limits&&(u.style.size===bo.DISPLAY.size||d.alwaysHandleSupSub);return p?HD:null}else if(d.type==="operatorname"){var v=d.alwaysHandleSupSub&&(u.style.size===bo.DISPLAY.size||d.limits);return v?Cqe:null}else{if(d.type==="accent")return D7(d.base)?Nbe:null;if(d.type==="horizBrace"){var b=!a.sub;return b===d.isOver?xqe:null}else return null}else return null};qC({type:"supsub",htmlBuilder(i,a){var u=RUt(i,a);if(u)return u(i,a);var{base:d,sup:p,sub:v}=i,b=Du(d,a),y,E,_=a.fontMetrics(),A=0,P=0,R=d&&D7(d);if(p){var B=a.havingStyle(a.style.sup());y=Du(p,B,a),R||(A=b.height-B.fontMetrics().supDrop*B.sizeMultiplier/a.sizeMultiplier)}if(v){var j=a.havingStyle(a.style.sub());E=Du(v,j,a),R||(P=b.depth+j.fontMetrics().subDrop*j.sizeMultiplier/a.sizeMultiplier)}var W;a.style===bo.DISPLAY?W=_.sup1:a.style.cramped?W=_.sup3:W=_.sup2;var ee=a.sizeMultiplier,ie=Oi(.5/_.ptPerEm/ee),oe=null;if(E){var be=i.base&&i.base.type==="op"&&i.base.name&&(i.base.name==="\\oiint"||i.base.name==="\\oiiint");(b instanceof mm||be)&&(oe=Oi(-b.italic))}var ge;if(y&&E){A=Math.max(A,W,y.depth+.25*_.xHeight),P=Math.max(P,_.sub2);var ae=_.defaultRuleThickness,ne=4*ae;if(A-y.depth-(E.height-P)<ne){P=ne-(A-y.depth)+E.height;var se=.8*_.xHeight-(A-y.depth);se>0&&(A+=se,P-=se)}var de=[{type:"elem",elem:E,shift:P,marginRight:ie,marginLeft:oe},{type:"elem",elem:y,shift:-A,marginRight:ie}];ge=Mu({positionType:"individualShift",children:de})}else if(E){P=Math.max(P,_.sub1,E.height-.8*_.xHeight);var X=[{type:"elem",elem:E,marginLeft:oe,marginRight:ie}];ge=Mu({positionType:"shift",positionData:P,children:X})}else if(y)A=Math.max(A,W,y.depth+.25*_.xHeight),ge=Mu({positionType:"shift",positionData:-A,children:[{type:"elem",elem:y,marginRight:ie}]});else throw new Error("supsub must have either sup or sub.");var pe=Lbe(b,"right")||"mord";return di([pe],[b,di(["msupsub"],[ge])],a)},mathmlBuilder(i,a){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=[Al(i.base,a)];i.sub&&v.push(Al(i.sub,a)),i.sup&&v.push(Al(i.sup,a));var b;if(u)b=d?"mover":"munder";else if(i.sub)if(i.sup){var _=i.base;_&&_.type==="op"&&_.limits&&a.style===bo.DISPLAY||_&&_.type==="operatorname"&&_.alwaysHandleSupSub&&(a.style===bo.DISPLAY||_.limits)?b="munderover":b="msubsup"}else{var E=i.base;E&&E.type==="op"&&E.limits&&(a.style===bo.DISPLAY||E.alwaysHandleSupSub)||E&&E.type==="operatorname"&&E.alwaysHandleSupSub&&(E.limits||a.style===bo.DISPLAY)?b="munder":b="msub"}else{var y=i.base;y&&y.type==="op"&&y.limits&&(a.style===bo.DISPLAY||y.alwaysHandleSupSub)||y&&y.type==="operatorname"&&y.alwaysHandleSupSub&&(y.limits||a.style===bo.DISPLAY)?b="mover":b="msup"}return new Si(b,v)}}),qC({type:"atom",htmlBuilder(i,a){return Ebe(i.text,i.mode,a,["m"+i.family])},mathmlBuilder(i,a){var u=new Si("mo",[Vv(i.text,i.mode)]);if(i.family==="bin"){var d=Ibe(i,a);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 Lqe={mi:"italic",mn:"normal",mtext:"normal"};qC({type:"mathord",htmlBuilder(i,a){return wQ(i,a,"mathord")},mathmlBuilder(i,a){var u=new Si("mi",[Vv(i.text,i.mode,a)]),d=Ibe(i,a)||"italic";return d!==Lqe[u.type]&&u.setAttribute("mathvariant",d),u}}),qC({type:"textord",htmlBuilder(i,a){return wQ(i,a,"textord")},mathmlBuilder(i,a){var u=Vv(i.text,i.mode,a),d=Ibe(i,a)||"normal",p;return i.mode==="text"?p=new Si("mtext",[u]):/[0-9]/.test(i.text)?p=new Si("mn",[u]):i.text==="\\prime"?p=new Si("mo",[u]):p=new Si("mi",[u]),d!==Lqe[p.type]&&p.setAttribute("mathvariant",d),p}});var Wbe={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Ybe={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};qC({type:"spacing",htmlBuilder(i,a){if(Ybe.hasOwnProperty(i.text)){var u=Ybe[i.text].className||"";if(i.mode==="text"){var d=wQ(i,a,"textord");return d.classes.push(u),d}else return di(["mspace",u],[Ebe(i.text,i.mode,a)],a)}else{if(Wbe.hasOwnProperty(i.text))return di(["mspace",Wbe[i.text]],[],a);throw new ki('Unknown type of space "'+i.text+'"')}},mathmlBuilder(i,a){var u;if(Ybe.hasOwnProperty(i.text))u=new Si("mtext",[new B0("ย ")]);else{if(Wbe.hasOwnProperty(i.text))return new Si("mspace");throw new ki('Unknown type of space "'+i.text+'"')}return u}});var Mqe=()=>{var i=new Si("mtd",[]);return i.setAttribute("width","50%"),i};qC({type:"tag",mathmlBuilder(i,a){var u=new Si("mtable",[new Si("mtr",[Mqe(),new Si("mtd",[L9(i.body,a)]),Mqe(),new Si("mtd",[L9(i.tag,a)])])]);return u.setAttribute("width","100%"),u}});var Dqe={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Iqe={"\\textbf":"textbf","\\textmd":"textmd"},jUt={"\\textit":"textit","\\textup":"textup"},Oqe=(i,a)=>{var u=i.font;if(u){if(Dqe[u])return a.withTextFontFamily(Dqe[u]);if(Iqe[u])return a.withTextFontWeight(Iqe[u]);if(u==="\\emph")return a.fontShape==="textit"?a.withTextFontShape("textup"):a.withTextFontShape("textit")}else return a;return a.withTextFontShape(jUt[u])};es({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(i,a){var{parser:u,funcName:d}=i,p=a[0];return{type:"text",mode:u.mode,body:P0(p),font:d}},htmlBuilder(i,a){var u=Oqe(i,a),d=d1(i.body,u,!0);return di(["mord","text"],d,u)},mathmlBuilder(i,a){var u=Oqe(i,a);return L9(i.body,u)}}),es({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(i,a){var{parser:u}=i;return{type:"underline",mode:u.mode,body:a[0]}},htmlBuilder(i,a){var u=Du(i.body,a),d=zD("underline-line",a),p=a.fontMetrics().defaultRuleThickness,v=Mu({positionType:"top",positionData:u.height,children:[{type:"kern",size:p},{type:"elem",elem:d},{type:"kern",size:3*p},{type:"elem",elem:u}]});return di(["mord","underline"],[v],a)},mathmlBuilder(i,a){var u=new Si("mo",[new B0("โพ")]);u.setAttribute("stretchy","true");var d=new Si("munder",[Al(i.body,a),u]);return d.setAttribute("accentunder","true"),d}}),es({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(i,a){var{parser:u}=i;return{type:"vcenter",mode:u.mode,body:a[0]}},htmlBuilder(i,a){var u=Du(i.body,a),d=a.fontMetrics().axisHeight,p=.5*(u.height-d-(u.depth+d));return Mu({positionType:"shift",positionData:p,children:[{type:"elem",elem:u}]})},mathmlBuilder(i,a){var u=new Si("mpadded",[Al(i.body,a)],["vcenter"]);return new Si("mrow",[u])}}),es({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(i,a,u){throw new ki("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(i,a){for(var u=Nqe(i),d=[],p=a.havingStyle(a.style.text()),v=0;v<u.length;v++){var b=u[v];b==="~"&&(b="\\textasciitilde"),d.push(Rp(b,"Typewriter-Regular",i.mode,p,["mord","texttt"]))}return di(["mord","text"].concat(p.sizingClasses(a)),Dze(d),p)},mathmlBuilder(i,a){var u=new B0(Nqe(i)),d=new Si("mtext",[u]);return d.setAttribute("mathvariant","monospace"),d}});var Nqe=i=>i.body.replace(/ /g,i.star?"โฃ":"ย "),D9=Pze,Pqe=`[ \r341 ]`,$Ut="\\\\[a-zA-Z@]+",zUt="\\\\[^\uD800-\uDFFF]",qUt="("+$Ut+")"+Pqe+"*",HUt=`\\\\(342|[ \r ]+343?)[ \r ]*`,Xbe="[ฬ-อฏ]",UUt=new RegExp(Xbe+"+$"),VUt="("+Pqe+"+)|"+(HUt+"|")+"([!-\\[\\]-โงโช-ํฟ๏ค-๏ฟฟ]"+(Xbe+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(Xbe+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+qUt)+("|"+zUt+")");class Bqe{constructor(a,u){this.input=a,this.settings=u,this.tokenRegex=new RegExp(VUt,"g"),this.catcodes={"%":14,"~":13}}setCatcode(a,u){this.catcodes[a]=u}lex(){var a=this.input,u=this.tokenRegex.lastIndex;if(u===a.length)return new ym("EOF",new W2(this,u,u));var d=this.tokenRegex.exec(a);if(d===null||d.index!==u)throw new ki("Unexpected character: '"+a[u]+"'",new ym(a[u],new W2(this,u,u+1)));var p=d[6]||d[3]||(d[2]?"\\ ":" ");if(this.catcodes[p]===14){var v=a.indexOf(`344`,this.tokenRegex.lastIndex);return v===-1?(this.tokenRegex.lastIndex=a.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 ym(p,new W2(this,u,this.tokenRegex.lastIndex))}}class GUt{constructor(a,u){a===void 0&&(a={}),u===void 0&&(u={}),this.current=u,this.builtins=a,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new ki("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var a=this.undefStack.pop();for(var u in a)a.hasOwnProperty(u)&&(a[u]==null?delete this.current[u]:this.current[u]=a[u])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(a){return this.current.hasOwnProperty(a)||this.builtins.hasOwnProperty(a)}get(a){return this.current.hasOwnProperty(a)?this.current[a]:this.builtins[a]}set(a,u,d){if(d===void 0&&(d=!1),d){for(var p=0;p<this.undefStack.length;p++)delete this.undefStack[p][a];this.undefStack.length>0&&(this.undefStack[this.undefStack.length-1][a]=u)}else{var v=this.undefStack[this.undefStack.length-1];v&&!v.hasOwnProperty(a)&&(v[a]=this.current[a])}u==null?delete this.current[a]:this.current[a]=u}}var KUt=hqe;et("\\noexpand",function(i){var a=i.popToken();return i.isExpandable(a.text)&&(a.noexpand=!0,a.treatAsRelax=!0),{tokens:[a],numArgs:0}}),et("\\expandafter",function(i){var a=i.popToken();return i.expandOnce(!0),{tokens:[a],numArgs:0}}),et("\\@firstoftwo",function(i){var a=i.consumeArgs(2);return{tokens:a[0],numArgs:0}}),et("\\@secondoftwo",function(i){var a=i.consumeArgs(2);return{tokens:a[1],numArgs:0}}),et("\\@ifnextchar",function(i){var a=i.consumeArgs(3);i.consumeSpaces();var u=i.future();return a[0].length===1&&a[0][0].text===u.text?{tokens:a[1],numArgs:0}:{tokens:a[2],numArgs:0}}),et("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),et("\\TextOrMath",function(i){var a=i.consumeArgs(2);return i.mode==="text"?{tokens:a[0],numArgs:0}:{tokens:a[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 a=i.popToken(),u,d=0;if(a.text==="'")u=8,a=i.popToken();else if(a.text==='"')u=16,a=i.popToken();else if(a.text==="`")if(a=i.popToken(),a.text[0]==="\\")d=a.text.charCodeAt(1);else{if(a.text==="EOF")throw new ki("\\char` missing argument");d=a.text.charCodeAt(0)}else u=10;if(u){if(d=Fqe[a.text],d==null||d>=u)throw new ki("Invalid base-"+u+" digit "+a.text);for(var p;(p=Fqe[i.future().text])!=null&&p<u;)d*=u,d+=p,i.popToken()}return"\\@char{"+d+"}"});var Qbe=(i,a,u,d)=>{var p=i.consumeArg().tokens;if(p.length!==1)throw new ki("\\newcommand's first argument must be a macro name");var v=p[0].text,b=i.isDefined(v);if(b&&!a)throw new ki("\\newcommand{"+v+"} attempting to redefine "+(v+"; use \\renewcommand"));if(!b&&!u)throw new ki("\\renewcommand{"+v+"} when command "+v+" does not yet exist; use \\newcommand");var y=0;if(p=i.consumeArg().tokens,p.length===1&&p[0].text==="["){for(var E="",_=i.expandNextToken();_.text!=="]"&&_.text!=="EOF";)E+=_.text,_=i.expandNextToken();if(!E.match(/^\s*[0-9]+\s*$/))throw new ki("Invalid number of arguments: "+E);y=parseInt(E),p=i.consumeArg().tokens}return b&&d||i.macros.set(v,{tokens:p,numArgs:y}),""};et("\\newcommand",i=>Qbe(i,!1,!0,!1)),et("\\renewcommand",i=>Qbe(i,!0,!1,!1)),et("\\providecommand",i=>Qbe(i,!0,!0,!0)),et("\\message",i=>{var a=i.consumeArgs(1)[0];return console.log(a.reverse().map(u=>u.text).join("")),""}),et("\\errmessage",i=>{var a=i.consumeArgs(1)[0];return console.error(a.reverse().map(u=>u.text).join("")),""}),et("\\show",i=>{var a=i.popToken(),u=a.text;return console.log(a,i.macros.get(u),D9[u],vh.math[u],vh.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("\\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}\\nobreak}{\\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("\\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","{\\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\\;"),et("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}"),et("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");var Rqe={",":"\\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"},WUt=new Set(["bin","rel"]);et("\\dots",function(i){var a="\\dotso",u=i.expandAfterFuture().text;return u in Rqe?a=Rqe[u]:(u.slice(0,4)==="\\not"||u in vh.math&&WUt.has(vh.math[u].group))&&(a="\\dotsb"),a});var Jbe={")":!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 a=i.future().text;return a in Jbe?"\\ldots\\,":"\\ldots"}),et("\\dotsc",function(i){var a=i.future().text;return a in Jbe&&a!==","?"\\ldots\\,":"\\ldots"}),et("\\cdots",function(i){var a=i.future().text;return a in Jbe?"\\@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 ki("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 jqe=Oi(Y4["Main-Regular"]["T".charCodeAt(0)][1]-.7*Y4["Main-Regular"]["A".charCodeAt(0)][1]);et("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+jqe+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}"),et("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+jqe+"}{\\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 $qe=i=>a=>{var u=a.consumeArg().tokens,d=a.consumeArg().tokens,p=a.consumeArg().tokens,v=a.consumeArg().tokens,b=a.macros.get("|"),y=a.macros.get("\\|");a.macros.beginGroup();var E=P=>R=>{i&&(R.macros.set("|",b),p.length&&R.macros.set("\\|",y));var B=P;if(!P&&p.length){var j=R.future();j.text==="|"&&(R.popToken(),B=!0)}return{tokens:B?p:d,numArgs:0}};a.macros.set("|",E(!1)),p.length&&a.macros.set("\\|",E(!0));var _=a.consumeArg().tokens,A=a.expandTokens([...v,..._,...u]);return a.macros.endGroup(),{tokens:A.reverse(),numArgs:0}};et("\\bra@ket",$qe(!1)),et("\\bra@set",$qe(!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 zqe={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};class YUt{constructor(a,u,d){this.settings=u,this.expansionCount=0,this.feed(a),this.macros=new GUt(KUt,u.macros),this.mode=d,this.stack=[]}feed(a){this.lexer=new Bqe(a,this.settings)}switchMode(a){this.mode=a}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(a){this.stack.push(a)}pushTokens(a){this.stack.push(...a)}scanArgument(a){var u,d,p;if(a){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 ym("EOF",d.loc)),this.pushTokens(p),new ym("",W2.range(u,d))}consumeSpaces(){for(;;){var a=this.future();if(a.text===" ")this.stack.pop();else break}}consumeArg(a){var u=[],d=a&&a.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 ki("Extra }",v)}else if(v.text==="EOF")throw new ki("Unexpected end of input in a macro argument, expected '"+(a&&d?a[y]:"}")+"'",v);if(a&&d)if((b===0||b===1&&a[y]==="{")&&v.text===a[y]){if(++y,y===a.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(a,u){if(u){if(u.length!==a+1)throw new ki("The length of delimiters doesn't match the number of args!");for(var d=u[0],p=0;p<d.length;p++){var v=this.popToken();if(d[p]!==v.text)throw new ki("Use of the macro doesn't match its definition",v)}}for(var b=[],y=0;y<a;y++)b.push(this.consumeArg(u&&u[y+1]).tokens);return b}countExpansion(a){if(this.expansionCount+=a,this.expansionCount>this.settings.maxExpand)throw new ki("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(a){var u=this.popToken(),d=u.text,p=u.noexpand?null:this._getExpansion(d);if(p==null||a&&p.unexpandable){if(a&&p==null&&d[0]==="\\"&&!this.isDefined(d))throw new ki("Undefined control sequence: "+d);return this.pushToken(u),!1}this.countExpansion(1);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 E=v[y];if(E.text==="#"){if(y===0)throw new ki("Incomplete placeholder at end of macro body",E);if(E=v[--y],E.text==="#")v.splice(y+1,1);else if(/^[1-9]$/.test(E.text))v.splice(y,2,...b[+E.text-1]);else throw new ki("Not a valid argument number",E)}}}return this.pushTokens(v),v.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var a=this.stack.pop();return a.treatAsRelax&&(a.text="\\relax"),a}}expandMacro(a){return this.macros.has(a)?this.expandTokens([new ym(a)]):void 0}expandTokens(a){var u=[],d=this.stack.length;for(this.pushTokens(a);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 this.countExpansion(u.length),u}expandMacroAsText(a){var u=this.expandMacro(a);return u&&u.map(d=>d.text).join("")}_getExpansion(a){var u=this.macros.get(a);if(u==null)return u;if(a.length===1){var d=this.lexer.catcodes[a];if(d!=null&&d!==13)return}var p=typeof u=="function"?u(this):u;if(typeof p=="string"){var v=0;if(p.includes("#"))for(var b=p.replace(/##/g,"");b.includes("#"+(v+1));)++v;for(var y=new Bqe(p,this.settings),E=[],_=y.lex();_.text!=="EOF";)E.push(_),_=y.lex();E.reverse();var A={tokens:E,numArgs:v};return A}return p}isDefined(a){return this.macros.has(a)||D9.hasOwnProperty(a)||vh.math.hasOwnProperty(a)||vh.text.hasOwnProperty(a)||zqe.hasOwnProperty(a)}isExpandable(a){var u=this.macros.get(a);return u!=null?typeof u=="string"||typeof u=="function"||!u.unexpandable:D9.hasOwnProperty(a)&&!D9[a].primitive}}var qqe=/^[โโโโโโโโโโโ
โโโโโโโแตขโฑผโโโโโโแตฃโโแตคแตฅโแตฆแตงแตจแตฉแตช]/,BQ=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","แต":"ฮฒ","แต":"ฮณ","แต":"ฮด","แต ":"ฯ","แตก":"ฯ","แถฟ":"ฮธ"}),Zbe={"ฬ":{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"}},Hqe={รก:"aฬ",ร :"aฬ",รค:"aฬ",ว:"aฬฬ",รฃ:"aฬ",ฤ:"aฬ",ฤ:"aฬ",แบฏ:"aฬฬ",แบฑ:"aฬฬ",แบต:"aฬฬ",ว:"aฬ",รข:"aฬ",แบฅ:"aฬฬ",แบง:"aฬฬ",แบซ:"aฬฬ",ศง:"aฬ",วก:"aฬฬ",รฅ:"aฬ",วป:"aฬฬ",แธ:"bฬ",ฤ:"cฬ",แธ:"cฬงฬ",ฤ:"cฬ",ฤ:"cฬ",ฤ:"cฬ",รง:"cฬง",ฤ:"dฬ",แธ:"dฬ",แธ:"dฬง",รฉ:"eฬ",รจ:"eฬ",รซ:"eฬ",แบฝ:"eฬ",ฤ:"eฬ",แธ:"eฬฬ",แธ:"eฬฬ",ฤ:"eฬ",แธ:"eฬงฬ",ฤ:"eฬ",รช:"eฬ",แบฟ:"eฬฬ",แป:"eฬฬ",แป
:"eฬฬ",ฤ:"eฬ",ศฉ:"eฬง",แธ:"fฬ",วต:"gฬ",แธก:"gฬ",ฤ:"gฬ",วง:"gฬ",ฤ:"gฬ",ฤก:"gฬ",ฤฃ:"gฬง",แธง:"hฬ",ศ:"hฬ",ฤฅ:"hฬ",แธฃ:"hฬ",แธฉ:"hฬง",รญ:"iฬ",รฌ:"iฬ",รฏ:"iฬ",แธฏ:"iฬฬ",ฤฉ:"iฬ",ฤซ:"iฬ",ฤญ:"iฬ",ว:"iฬ",รฎ:"iฬ",วฐ:"jฬ",ฤต:"jฬ",แธฑ:"kฬ",วฉ:"kฬ",ฤท:"kฬง",ฤบ:"lฬ",ฤพ:"lฬ",ฤผ:"lฬง",แธฟ:"mฬ",แน:"mฬ",ล:"nฬ",วน:"nฬ",รฑ:"nฬ",ล:"nฬ",แน
:"nฬ",ล:"nฬง",รณ:"oฬ",รฒ:"oฬ",รถ:"oฬ",ศซ:"oฬฬ",รต:"oฬ",แน:"oฬฬ",แน:"oฬฬ",ศญ:"oฬฬ",ล:"oฬ",แน:"oฬฬ",แน:"oฬฬ",ล:"oฬ",ว:"oฬ",รด:"oฬ",แป:"oฬฬ",แป:"oฬฬ",แป:"oฬฬ",ศฏ:"oฬ",ศฑ:"oฬฬ",ล:"oฬ",แน:"pฬ",แน:"pฬ",ล:"rฬ",ล:"rฬ",แน:"rฬ",ล:"rฬง",ล:"sฬ",แนฅ:"sฬฬ",ลก:"sฬ",แนง:"sฬฬ",ล:"sฬ",แนก:"sฬ",ล:"sฬง",แบ:"tฬ",ลฅ:"tฬ",แนซ:"tฬ",ลฃ:"tฬง",รบ:"uฬ",รน:"uฬ",รผ:"uฬ",ว:"uฬฬ",ว:"uฬฬ",ว:"uฬฬ",ว:"uฬฬ",ลฉ:"uฬ",แนน:"uฬฬ",ลซ:"uฬ",แนป:"uฬฬ",ลญ:"uฬ",ว:"uฬ",รป:"uฬ",ลฏ:"uฬ",ลฑ:"uฬ",แนฝ:"vฬ",แบ:"wฬ",แบ:"wฬ",แบ
:"wฬ",ลต:"wฬ",แบ:"wฬ",แบ:"wฬ",แบ:"xฬ",แบ:"xฬ",รฝ:"yฬ",แปณ:"yฬ",รฟ:"yฬ",แปน:"yฬ",ศณ:"yฬ",ลท:"yฬ",แบ:"yฬ",แบ:"yฬ",ลบ:"zฬ",ลพ:"zฬ",แบ:"zฬ",ลผ:"zฬ",ร:"Aฬ",ร:"Aฬ",ร:"Aฬ",ว:"Aฬฬ",ร:"Aฬ",ฤ:"Aฬ",ฤ:"Aฬ",แบฎ:"Aฬฬ",แบฐ:"Aฬฬ",แบด:"Aฬฬ",ว:"Aฬ",ร:"Aฬ",แบค:"Aฬฬ",แบฆ:"Aฬฬ",แบช:"Aฬฬ",ศฆ:"Aฬ",ว :"Aฬฬ",ร
:"Aฬ",วบ:"Aฬฬ",แธ:"Bฬ",ฤ:"Cฬ",แธ:"Cฬงฬ",ฤ:"Cฬ",ฤ:"Cฬ",ฤ:"Cฬ",ร:"Cฬง",ฤ:"Dฬ",แธ:"Dฬ",แธ:"Dฬง",ร:"Eฬ",ร:"Eฬ",ร:"Eฬ",แบผ:"Eฬ",ฤ:"Eฬ",แธ:"Eฬฬ",แธ:"Eฬฬ",ฤ:"Eฬ",แธ:"Eฬงฬ",ฤ:"Eฬ",ร:"Eฬ",แบพ:"Eฬฬ",แป:"Eฬฬ",แป:"Eฬฬ",ฤ:"Eฬ",ศจ:"Eฬง",แธ:"Fฬ",วด:"Gฬ",แธ :"Gฬ",ฤ:"Gฬ",วฆ:"Gฬ",ฤ:"Gฬ",ฤ :"Gฬ",ฤข:"Gฬง",แธฆ:"Hฬ",ศ:"Hฬ",ฤค:"Hฬ",แธข:"Hฬ",แธจ:"Hฬง",ร:"Iฬ",ร:"Iฬ",ร:"Iฬ",แธฎ:"Iฬฬ",ฤจ:"Iฬ",ฤช:"Iฬ",ฤฌ:"Iฬ",ว:"Iฬ",ร:"Iฬ",ฤฐ:"Iฬ",ฤด:"Jฬ",แธฐ:"Kฬ",วจ:"Kฬ",ฤถ:"Kฬง",ฤน:"Lฬ",ฤฝ:"Lฬ",ฤป:"Lฬง",แธพ:"Mฬ",แน:"Mฬ",ล:"Nฬ",วธ:"Nฬ",ร:"Nฬ",ล:"Nฬ",แน:"Nฬ",ล
:"Nฬง",ร:"Oฬ",ร:"Oฬ",ร:"Oฬ",ศช:"Oฬฬ",ร:"Oฬ",แน:"Oฬฬ",แน:"Oฬฬ",ศฌ:"Oฬฬ",ล:"Oฬ",แน:"Oฬฬ",แน:"Oฬฬ",ล:"Oฬ",ว:"Oฬ",ร:"Oฬ",แป:"Oฬฬ",แป:"Oฬฬ",แป:"Oฬฬ",ศฎ:"Oฬ",ศฐ:"Oฬฬ",ล:"Oฬ",แน:"Pฬ",แน:"Pฬ",ล:"Rฬ",ล:"Rฬ",แน:"Rฬ",ล:"Rฬง",ล:"Sฬ",แนค:"Sฬฬ",ล :"Sฬ",แนฆ:"Sฬฬ",ล:"Sฬ",แน :"Sฬ",ล:"Sฬง",ลค:"Tฬ",แนช:"Tฬ",ลข:"Tฬง",ร:"Uฬ",ร:"Uฬ",ร:"Uฬ",ว:"Uฬฬ",ว:"Uฬฬ",ว:"Uฬฬ",ว:"Uฬฬ",ลจ:"Uฬ",แนธ:"Uฬฬ",ลช:"Uฬ",แนบ:"Uฬฬ",ลฌ:"Uฬ",ว:"Uฬ",ร:"Uฬ",ลฎ:"Uฬ",ลฐ:"Uฬ",แนผ:"Vฬ",แบ:"Wฬ",แบ:"Wฬ",แบ:"Wฬ",ลด:"Wฬ",แบ:"Wฬ",แบ:"Xฬ",แบ:"Xฬ",ร:"Yฬ",แปฒ:"Yฬ",ลธ:"Yฬ",แปธ:"Yฬ",ศฒ:"Yฬ",ลถ:"Yฬ",แบ:"Yฬ",ลน:"Zฬ",ลฝ:"Zฬ",แบ:"Zฬ",ลป:"Zฬ",ฮฌ:"ฮฑฬ",แฝฐ:"ฮฑฬ",แพฑ:"ฮฑฬ",แพฐ:"ฮฑฬ",ฮญ:"ฮตฬ",แฝฒ:"ฮตฬ",ฮฎ:"ฮทฬ",แฝด:"ฮทฬ",ฮฏ:"ฮนฬ",แฝถ:"ฮนฬ",ฯ:"ฮนฬ",ฮ:"ฮนฬฬ",แฟ:"ฮนฬฬ",แฟ:"ฮนฬ",แฟ:"ฮนฬ",ฯ:"ฮฟฬ",แฝธ:"ฮฟฬ",ฯ:"ฯ
ฬ",แฝบ:"ฯ
ฬ",ฯ:"ฯ
ฬ",ฮฐ:"ฯ
ฬฬ",แฟข:"ฯ
ฬฬ",แฟก:"ฯ
ฬ",แฟ :"ฯ
ฬ",ฯ:"ฯฬ",แฝผ:"ฯฬ",ฮ:"ฮฅฬ",แฟช:"ฮฅฬ",ฮซ:"ฮฅฬ",แฟฉ:"ฮฅฬ",แฟจ:"ฮฅฬ",ฮ:"ฮฉฬ",แฟบ:"ฮฉฬ"};class FQ{constructor(a,u){this.mode="math",this.gullet=new YUt(a,u,this.mode),this.settings=u,this.leftrightDepth=0,this.nextToken=null}expect(a,u){if(u===void 0&&(u=!0),this.fetch().text!==a)throw new ki("Expected '"+a+"', 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(a){this.mode=a,this.gullet.switchMode(a)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var a=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),a}finally{this.gullet.endGroups()}}subparse(a){var u=this.nextToken;this.consume(),this.gullet.pushToken(new ym("}")),this.gullet.pushTokens(a);var d=this.parseExpression(!1);return this.expect("}"),this.nextToken=u,d}parseExpression(a,u){for(var d=[];;){this.mode==="math"&&this.consumeSpaces();var p=this.fetch();if(FQ.endOfExpression.has(p.text)||u&&p.text===u||a&&D9[p.text]&&D9[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(a){for(var u=-1,d,p=0;p<a.length;p++){var v=a[p];if(v.type==="infix"){if(u!==-1)throw new ki("only one infix operator per group",v.token);u=p,d=v.replaceWith}}if(u!==-1&&d){var b,y,E=a.slice(0,u),_=a.slice(u+1);E.length===1&&E[0].type==="ordgroup"?b=E[0]:b={type:"ordgroup",mode:this.mode,body:E},_.length===1&&_[0].type==="ordgroup"?y=_[0]:y={type:"ordgroup",mode:this.mode,body:_};var A;return d==="\\\\abovefrac"?A=this.callFunction(d,[b,a[u],y],[]):A=this.callFunction(d,[b,y],[]),[A]}else return a}handleSupSubscript(a){var u=this.fetch(),d=u.text;this.consume(),this.consumeSpaces();var p;do{var v;p=this.parseGroup(a)}while(((v=p)==null?void 0:v.type)==="internal");if(!p)throw new ki("Expected group after '"+d+"'",u);return p}formatUnsupportedCmd(a){for(var u=[],d=0;d<a.length;d++)u.push({type:"textord",mode:"text",text:a[d]});var p={type:"text",mode:this.mode,body:u},v={type:"color",mode:this.mode,color:this.settings.errorColor,body:[p]};return v}parseAtom(a){var u=this.parseGroup("atom",a);if((u==null?void 0:u.type)==="internal"||this.mode==="text")return u;for(var d,p;;){this.consumeSpaces();var v=this.fetch();if(v.text==="\\limits"||v.text==="\\nolimits"){if(u&&u.type==="op"){var b=v.text==="\\limits";u.limits=b,u.alwaysHandleSupSub=!0}else if(u&&u.type==="operatorname")u.alwaysHandleSupSub&&(u.limits=v.text==="\\limits");else throw new ki("Limit controls must follow a math operator",v);this.consume()}else if(v.text==="^"){if(d)throw new ki("Double superscript",v);d=this.handleSupSubscript("superscript")}else if(v.text==="_"){if(p)throw new ki("Double subscript",v);p=this.handleSupSubscript("subscript")}else if(v.text==="'"){if(d)throw new ki("Double superscript",v);var y={type:"textord",mode:this.mode,text:"\\prime"},E=[y];for(this.consume();this.fetch().text==="'";)E.push(y),this.consume();this.fetch().text==="^"&&E.push(this.handleSupSubscript("superscript")),d={type:"ordgroup",mode:this.mode,body:E}}else if(BQ[v.text]){var _=qqe.test(v.text),A=[];for(A.push(new ym(BQ[v.text])),this.consume();;){var P=this.fetch().text;if(!BQ[P]||qqe.test(P)!==_)break;A.unshift(new ym(BQ[P])),this.consume()}var R=this.subparse(A);_?p={type:"ordgroup",mode:"math",body:R}:d={type:"ordgroup",mode:"math",body:R}}else break}return d||p?{type:"supsub",mode:this.mode,base:u,sup:d,sub:p}:u}parseFunction(a,u){var d=this.fetch(),p=d.text,v=D9[p];if(!v)return null;if(this.consume(),u&&u!=="atom"&&!v.allowedInArgument)throw new ki("Got function '"+p+"' with no arguments"+(u?" as "+u:""),d);if(this.mode==="text"&&!v.allowedInText)throw new ki("Can't use function '"+p+"' in text mode",d);if(this.mode==="math"&&v.allowedInMath===!1)throw new ki("Can't use function '"+p+"' in math mode",d);var{args:b,optArgs:y}=this.parseArguments(p,v);return this.callFunction(p,b,y,d,a)}callFunction(a,u,d,p,v){var b={funcName:a,parser:this,token:p,breakOnTokenText:v},y=D9[a];if(y&&y.handler)return y.handler(b,u,d);throw new ki("No function handler for "+a)}parseArguments(a,u){var d=u.numArgs+u.numOptionalArgs;if(d===0)return{args:[],optArgs:[]};for(var p=[],v=[],b=0;b<d;b++){var y=u.argTypes&&u.argTypes[b],E=b<u.numOptionalArgs;("primitive"in u&&u.primitive&&y==null||u.type==="sqrt"&&b===1&&v[0]==null)&&(y="primitive");var _=this.parseGroupOfType("argument to '"+a+"'",y,E);if(E)v.push(_);else if(_!=null)p.push(_);else throw new ki("Null argument, please report this as a bug")}return{args:p,optArgs:v}}parseGroupOfType(a,u,d){switch(u){case"color":return this.parseColorGroup(d);case"size":return this.parseSizeGroup(d);case"url":return this.parseUrlGroup(d);case"math":case"text":return this.parseArgumentGroup(d,u);case"hbox":{var p=this.parseArgumentGroup(d,"text");return p!=null?{type:"styling",mode:p.mode,body:[p],style:"text"}:null}case"raw":{var v=this.parseStringGroup("raw",d);return v!=null?{type:"raw",mode:"text",string:v.text}:null}case"primitive":{if(d)throw new ki("A primitive argument cannot be optional");var b=this.parseGroup(a);if(b==null)throw new ki("Expected group as "+a,this.fetch());return b}case"original":case null:case void 0:return this.parseArgumentGroup(d);default:throw new ki("Unknown group type as "+a,this.fetch())}}consumeSpaces(){for(;this.fetch().text===" ";)this.consume()}parseStringGroup(a,u){var d=this.gullet.scanArgument(u);if(d==null)return null;for(var p="",v;(v=this.fetch()).text!=="EOF";)p+=v.text,this.consume();return this.consume(),d.text=p,d}parseRegexGroup(a,u){for(var d=this.fetch(),p=d,v="",b;(b=this.fetch()).text!=="EOF"&&a.test(v+b.text);)p=b,v+=p.text,this.consume();if(v==="")throw new ki("Invalid "+u+": '"+d.text+"'",d);return d.range(p,v)}parseColorGroup(a){var u=this.parseStringGroup("color",a);if(u==null)return null;var d=/^(#[a-f0-9]{3,4}|#[a-f0-9]{6}|#[a-f0-9]{8}|[a-f0-9]{6}|[a-z]+)$/i.exec(u.text);if(!d)throw new ki("Invalid color: '"+u.text+"'",u);var p=d[0];return/^[0-9a-f]{6}$/i.test(p)&&(p="#"+p),{type:"color-token",mode:this.mode,color:p}}parseSizeGroup(a){var u,d=!1;if(this.gullet.consumeSpaces(),!a&&this.gullet.future().text!=="{"?u=this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size"):u=this.parseStringGroup("size",a),!u)return null;!a&&u.text.length===0&&(u.text="0pt",d=!0);var p=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(u.text);if(!p)throw new ki("Invalid size: '"+u.text+"'",u);var v={number:+(p[1]+p[2]),unit:p[3]};if(!wze(v))throw new ki("Invalid unit: '"+v.unit+"'",u);return{type:"size",mode:this.mode,value:v,isBlank:d}}parseUrlGroup(a){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var u=this.parseStringGroup("url",a);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),u==null)return null;var d=u.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:d}}parseArgumentGroup(a,u){var d=this.gullet.scanArgument(a);if(d==null)return null;var p=this.mode;u&&this.switchMode(u),this.gullet.beginGroup();var v=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var b={type:"ordgroup",mode:this.mode,loc:d.loc,body:v};return u&&this.switchMode(p),b}parseGroup(a,u){var d=this.fetch(),p=d.text,v;if(p==="{"||p==="\\begingroup"){this.consume();var b=p==="{"?"}":"\\endgroup";this.gullet.beginGroup();var y=this.parseExpression(!1,b),E=this.fetch();this.expect(b),this.gullet.endGroup(),v={type:"ordgroup",mode:this.mode,loc:W2.range(d,E),body:y,semisimple:p==="\\begingroup"||void 0}}else if(v=this.parseFunction(u,a)||this.parseSymbol(),v==null&&p[0]==="\\"&&!zqe.hasOwnProperty(p)){if(this.settings.throwOnError)throw new ki("Undefined control sequence: "+p,d);v=this.formatUnsupportedCmd(p),this.consume()}return v}formLigatures(a){for(var u=a.length-1,d=0;d<u;++d){var p=a[d];if(p.type==="textord"){var v=p.text,b=a[d+1];if(!(!b||b.type!=="textord")){if(v==="-"&&b.text==="-"){var y=a[d+2];d+1<u&&y&&y.type==="textord"&&y.text==="-"?(a.splice(d,3,{type:"textord",mode:"text",loc:W2.range(p,y),text:"---"}),u-=2):(a.splice(d,2,{type:"textord",mode:"text",loc:W2.range(p,b),text:"--"}),u-=1)}(v==="'"||v==="`")&&b.text===v&&(a.splice(d,2,{type:"textord",mode:"text",loc:W2.range(p,b),text:v+v}),u-=1)}}}}parseSymbol(){var a=this.fetch(),u=a.text;if(/^\\verb[^a-zA-Z]/.test(u)){this.consume();var d=u.slice(5),p=d.charAt(0)==="*";if(p&&(d=d.slice(1)),d.length<2||d.charAt(0)!==d.slice(-1))throw new ki(`\\verb assertion failed --345 please report what input caused this bug`);return d=d.slice(1,-1),{type:"verb",mode:"text",body:d,star:p}}Hqe.hasOwnProperty(u[0])&&!vh[this.mode][u[0]]&&(this.settings.strict&&this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+u[0]+'" used in math mode',a),u=Hqe[u[0]]+u.slice(1));var v=UUt.exec(u);v&&(u=u.substring(0,v.index),u==="i"?u="ฤฑ":u==="j"&&(u="ศท"));var b;if(vh[this.mode][u]){this.settings.strict&&this.mode==="math"&&kbe.includes(u)&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+u[0]+'" used in math mode',a);var y=vh[this.mode][u].group,E=W2.range(a),_;if(VHt.hasOwnProperty(y)){var A=y;_={type:"atom",mode:this.mode,family:A,loc:E,text:u}}else _={type:y,mode:this.mode,loc:E,text:u};b=_}else if(u.charCodeAt(0)>=128)this.settings.strict&&(mze(u.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+u[0]+'" used in math mode',a):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+u[0]+'"'+(" ("+u.charCodeAt(0)+")"),a)),b={type:"textord",mode:"text",loc:W2.range(a),text:u};else return null;if(this.consume(),v)for(var P=0;P<v[0].length;P++){var R=v[0][P];if(!Zbe[R])throw new ki("Unknown accent ' "+R+"'",a);var B=Zbe[R][this.mode]||Zbe[R].text;if(!B)throw new ki("Accent "+R+" unsupported in "+this.mode+" mode",a);b={type:"accent",mode:this.mode,loc:W2.range(a),label:B,isStretchy:!1,isShifty:!0,base:b}}return b}}FQ.endOfExpression=new Set(["}","\\endgroup","\\end","\\right","&"]);var eme=function(a,u){if(!(typeof a=="string"||a instanceof String))throw new TypeError("KaTeX can only parse string typed expression");var d=new FQ(a,u);delete d.gullet.macros.current["\\df@tag"];var p=d.parse();if(delete d.gullet.macros.current["\\current@color"],delete d.gullet.macros.current["\\color"],d.gullet.macros.get("\\df@tag")){if(!u.displayMode)throw new ki("\\tag works only in display equations");p=[{type:"tag",mode:"text",body:p,tag:d.subparse([new ym("\\df@tag")])}]}return p},tme=function(a,u,d){u.textContent="";var p=RQ(a,d).toNode();u.appendChild(p)};typeof document<"u"&&document.compatMode!=="CSS1Compat"&&(typeof console<"u"&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),tme=function(){throw new ki("KaTeX doesn't work in quirks mode.")});var Uqe=function(a,u){var d=RQ(a,u).toMarkup();return d},Vqe=function(a,u){var d=new fbe(u);return eme(a,d)},Gqe=function(a,u,d){if(d.throwOnError||!(a instanceof ki))throw a;var p=di(["katex-error"],[new mm(u)]);return p.setAttribute("title",a.toString()),p.setAttribute("style","color:"+d.errorColor),p},RQ=function(a,u){var d=new fbe(u);try{var p=eme(a,d);return oUt(p,a,d)}catch(v){return Gqe(v,a,d)}},Kqe=function(a,u){var d=new fbe(u);try{var p=eme(a,d);return cUt(p,a,d)}catch(v){return Gqe(v,a,d)}},Wqe="0.16.45",Yqe={Span:jD,Anchor:fQ,SymbolNode:mm,SvgNode:O7,PathNode:S9,LineNode:bbe},XUt={version:Wqe,render:tme,renderToString:Uqe,ParseError:ki,SETTINGS_SCHEMA:uQ,__parse:Vqe,__renderToDomTree:RQ,__renderToHTMLTree:Kqe,__setFontMetrics:Eze,__defineSymbol:we,__defineFunction:es,__defineMacro:et,__domTree:Yqe};const QUt=Object.freeze(Object.defineProperty({__proto__:null,ParseError:ki,SETTINGS_SCHEMA:uQ,__defineFunction:es,__defineMacro:et,__defineSymbol:we,__domTree:Yqe,__parse:Vqe,__renderToDomTree:RQ,__renderToHTMLTree:Kqe,__setFontMetrics:Eze,default:XUt,get render(){return tme},renderToString:Uqe,version:Wqe},Symbol.toStringTag,{value:"Module"}));var jQ=function(){var i=function(Tr,On,Rn,zn){for(Rn=Rn||{},zn=Tr.length;zn--;Rn[Tr[zn]]=On);return Rn},a=[1,24],u=[1,25],d=[1,26],p=[1,27],v=[1,28],b=[1,63],y=[1,64],E=[1,65],_=[1,66],A=[1,67],P=[1,68],R=[1,69],B=[1,29],j=[1,30],W=[1,31],ee=[1,32],ie=[1,33],oe=[1,34],be=[1,35],ge=[1,36],ae=[1,37],ne=[1,38],se=[1,39],de=[1,40],X=[1,41],pe=[1,42],G=[1,43],xe=[1,44],U=[1,45],Be=[1,46],Pe=[1,47],je=[1,48],Ie=[1,50],Se=[1,51],Ce=[1,52],ke=[1,53],Ke=[1,54],zt=[1,55],Ne=[1,56],pn=[1,57],Tt=[1,58],Et=[1,59],Wt=[1,60],un=[14,42],yt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Bt=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ze=[1,82],Dt=[1,83],kt=[1,84],Nn=[1,85],ht=[12,14,42],qr=[12,14,33,42],xt=[12,14,33,42,76,77,79,80],Ri=[12,33],wi=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ia={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:function(On,Rn,zn,Ct,gt,on,dn){var Ln=on.length-1;switch(gt){case 3:Ct.setDirection("TB");break;case 4:Ct.setDirection("BT");break;case 5:Ct.setDirection("RL");break;case 6:Ct.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:Ct.setC4Type(on[Ln-3]);break;case 19:Ct.setTitle(on[Ln].substring(6)),this.$=on[Ln].substring(6);break;case 20:Ct.setAccDescription(on[Ln].substring(15)),this.$=on[Ln].substring(15);break;case 21:this.$=on[Ln].trim(),Ct.setTitle(this.$);break;case 22:case 23:this.$=on[Ln].trim(),Ct.setAccDescription(this.$);break;case 28:case 29:on[Ln].splice(2,0,"ENTERPRISE"),Ct.addPersonOrSystemBoundary(...on[Ln]),this.$=on[Ln];break;case 30:Ct.addPersonOrSystemBoundary(...on[Ln]),this.$=on[Ln];break;case 31:on[Ln].splice(2,0,"CONTAINER"),Ct.addContainerBoundary(...on[Ln]),this.$=on[Ln];break;case 32:Ct.addDeploymentNode("node",...on[Ln]),this.$=on[Ln];break;case 33:Ct.addDeploymentNode("nodeL",...on[Ln]),this.$=on[Ln];break;case 34:Ct.addDeploymentNode("nodeR",...on[Ln]),this.$=on[Ln];break;case 35:Ct.popBoundaryParseStack();break;case 39:Ct.addPersonOrSystem("person",...on[Ln]),this.$=on[Ln];break;case 40:Ct.addPersonOrSystem("external_person",...on[Ln]),this.$=on[Ln];break;case 41:Ct.addPersonOrSystem("system",...on[Ln]),this.$=on[Ln];break;case 42:Ct.addPersonOrSystem("system_db",...on[Ln]),this.$=on[Ln];break;case 43:Ct.addPersonOrSystem("system_queue",...on[Ln]),this.$=on[Ln];break;case 44:Ct.addPersonOrSystem("external_system",...on[Ln]),this.$=on[Ln];break;case 45:Ct.addPersonOrSystem("external_system_db",...on[Ln]),this.$=on[Ln];break;case 46:Ct.addPersonOrSystem("external_system_queue",...on[Ln]),this.$=on[Ln];break;case 47:Ct.addContainer("container",...on[Ln]),this.$=on[Ln];break;case 48:Ct.addContainer("container_db",...on[Ln]),this.$=on[Ln];break;case 49:Ct.addContainer("container_queue",...on[Ln]),this.$=on[Ln];break;case 50:Ct.addContainer("external_container",...on[Ln]),this.$=on[Ln];break;case 51:Ct.addContainer("external_container_db",...on[Ln]),this.$=on[Ln];break;case 52:Ct.addContainer("external_container_queue",...on[Ln]),this.$=on[Ln];break;case 53:Ct.addComponent("component",...on[Ln]),this.$=on[Ln];break;case 54:Ct.addComponent("component_db",...on[Ln]),this.$=on[Ln];break;case 55:Ct.addComponent("component_queue",...on[Ln]),this.$=on[Ln];break;case 56:Ct.addComponent("external_component",...on[Ln]),this.$=on[Ln];break;case 57:Ct.addComponent("external_component_db",...on[Ln]),this.$=on[Ln];break;case 58:Ct.addComponent("external_component_queue",...on[Ln]),this.$=on[Ln];break;case 60:Ct.addRel("rel",...on[Ln]),this.$=on[Ln];break;case 61:Ct.addRel("birel",...on[Ln]),this.$=on[Ln];break;case 62:Ct.addRel("rel_u",...on[Ln]),this.$=on[Ln];break;case 63:Ct.addRel("rel_d",...on[Ln]),this.$=on[Ln];break;case 64:Ct.addRel("rel_l",...on[Ln]),this.$=on[Ln];break;case 65:Ct.addRel("rel_r",...on[Ln]),this.$=on[Ln];break;case 66:Ct.addRel("rel_b",...on[Ln]),this.$=on[Ln];break;case 67:on[Ln].splice(0,1),Ct.addRel("rel",...on[Ln]),this.$=on[Ln];break;case 68:Ct.updateElStyle("update_el_style",...on[Ln]),this.$=on[Ln];break;case 69:Ct.updateRelStyle("update_rel_style",...on[Ln]),this.$=on[Ln];break;case 70:Ct.updateLayoutConfig("update_layout_config",...on[Ln]),this.$=on[Ln];break;case 71:this.$=[on[Ln]];break;case 72:on[Ln].unshift(on[Ln-1]),this.$=on[Ln];break;case 73:case 75:this.$=on[Ln].trim();break;case 74:let Io={};Io[on[Ln-1].trim()]=on[Ln].trim(),this.$=Io;break;case 76:this.$="";break}},table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:a,23:u,24:d,26:p,28:v,29:49,30:61,32:62,34:b,36:y,37:E,38:_,39:A,40:P,41:R,43:23,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt},{13:70,19:20,20:21,21:22,22:a,23:u,24:d,26:p,28:v,29:49,30:61,32:62,34:b,36:y,37:E,38:_,39:A,40:P,41:R,43:23,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt},{13:71,19:20,20:21,21:22,22:a,23:u,24:d,26:p,28:v,29:49,30:61,32:62,34:b,36:y,37:E,38:_,39:A,40:P,41:R,43:23,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt},{13:72,19:20,20:21,21:22,22:a,23:u,24:d,26:p,28:v,29:49,30:61,32:62,34:b,36:y,37:E,38:_,39:A,40:P,41:R,43:23,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt},{13:73,19:20,20:21,21:22,22:a,23:u,24:d,26:p,28:v,29:49,30:61,32:62,34:b,36:y,37:E,38:_,39:A,40:P,41:R,43:23,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt},{14:[1,74]},i(un,[2,13],{43:23,29:49,30:61,32:62,20:75,34:b,36:y,37:E,38:_,39:A,40:P,41:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt}),i(un,[2,14]),i(yt,[2,16],{12:[1,76]}),i(un,[2,36],{12:[1,77]}),i(Bt,[2,19]),i(Bt,[2,20]),{25:[1,78]},{27:[1,79]},i(Bt,[2,23]),{35:80,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:86,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:87,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:88,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:89,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:90,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:91,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:92,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:93,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:94,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:95,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:96,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:97,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:98,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:99,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:100,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:101,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:102,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:103,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:104,75:81,76:Ze,77:Dt,79:kt,80:Nn},i(ht,[2,59]),{35:105,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:106,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:107,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:108,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:109,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:110,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:111,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:112,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:113,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:114,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:115,75:81,76:Ze,77:Dt,79:kt,80:Nn},{20:116,29:49,30:61,32:62,34:b,36:y,37:E,38:_,39:A,40:P,41:R,43:23,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt},{12:[1,118],33:[1,117]},{35:119,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:120,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:121,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:122,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:123,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:124,75:81,76:Ze,77:Dt,79:kt,80:Nn},{35:125,75:81,76:Ze,77:Dt,79:kt,80:Nn},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},i(un,[2,15]),i(yt,[2,17],{21:22,19:130,22:a,23:u,24:d,26:p,28:v}),i(un,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:a,23:u,24:d,26:p,28:v,34:b,36:y,37:E,38:_,39:A,40:P,41:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be,51:ge,52:ae,53:ne,54:se,55:de,56:X,57:pe,58:G,59:xe,60:U,61:Be,62:Pe,63:je,64:Ie,65:Se,66:Ce,67:ke,68:Ke,69:zt,70:Ne,71:pn,72:Tt,73:Et,74:Wt}),i(Bt,[2,21]),i(Bt,[2,22]),i(ht,[2,39]),i(qr,[2,71],{75:81,35:132,76:Ze,77:Dt,79:kt,80:Nn}),i(xt,[2,73]),{78:[1,133]},i(xt,[2,75]),i(xt,[2,76]),i(ht,[2,40]),i(ht,[2,41]),i(ht,[2,42]),i(ht,[2,43]),i(ht,[2,44]),i(ht,[2,45]),i(ht,[2,46]),i(ht,[2,47]),i(ht,[2,48]),i(ht,[2,49]),i(ht,[2,50]),i(ht,[2,51]),i(ht,[2,52]),i(ht,[2,53]),i(ht,[2,54]),i(ht,[2,55]),i(ht,[2,56]),i(ht,[2,57]),i(ht,[2,58]),i(ht,[2,60]),i(ht,[2,61]),i(ht,[2,62]),i(ht,[2,63]),i(ht,[2,64]),i(ht,[2,65]),i(ht,[2,66]),i(ht,[2,67]),i(ht,[2,68]),i(ht,[2,69]),i(ht,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},i(Ri,[2,28]),i(Ri,[2,29]),i(Ri,[2,30]),i(Ri,[2,31]),i(Ri,[2,32]),i(Ri,[2,33]),i(Ri,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},i(yt,[2,18]),i(un,[2,38]),i(qr,[2,72]),i(xt,[2,74]),i(ht,[2,24]),i(ht,[2,35]),i(wi,[2,25]),i(wi,[2,26],{12:[1,138]}),i(wi,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:function(On,Rn){if(Rn.recoverable)this.trace(On);else{var zn=new Error(On);throw zn.hash=Rn,zn}},parse:function(On){var Rn=this,zn=[0],Ct=[],gt=[null],on=[],dn=this.table,Ln="",Io=0,Oo=0,No=2,Us=1,uo=on.slice.call(arguments,1),Es=Object.create(this.lexer),Ou={yy:{}};for(var _c in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_c)&&(Ou.yy[_c]=this.yy[_c]);Es.setInput(On,Ou.yy),Ou.yy.lexer=Es,Ou.yy.parser=this,typeof Es.yylloc>"u"&&(Es.yylloc={});var Kd=Es.yylloc;on.push(Kd);var qp=Es.options&&Es.options.ranges;typeof Ou.yy.parseError=="function"?this.parseError=Ou.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ul(){var Kh;return Kh=Ct.pop()||Es.lex()||Us,typeof Kh!="number"&&(Kh instanceof Array&&(Ct=Kh,Kh=Ct.pop()),Kh=Rn.symbols_[Kh]||Kh),Kh}for(var Ac,Jc,Ya,Ba,ha={},$o,Lc,Fa,Ra;;){if(Jc=zn[zn.length-1],this.defaultActions[Jc]?Ya=this.defaultActions[Jc]:((Ac===null||typeof Ac>"u")&&(Ac=Ul()),Ya=dn[Jc]&&dn[Jc][Ac]),typeof Ya>"u"||!Ya.length||!Ya[0]){var ma="";Ra=[];for($o in dn[Jc])this.terminals_[$o]&&$o>No&&Ra.push("'"+this.terminals_[$o]+"'");Es.showPosition?ma="Parse error on line "+(Io+1)+`:346`+Es.showPosition()+`347Expecting `+Ra.join(", ")+", got '"+(this.terminals_[Ac]||Ac)+"'":ma="Parse error on line "+(Io+1)+": Unexpected "+(Ac==Us?"end of input":"'"+(this.terminals_[Ac]||Ac)+"'"),this.parseError(ma,{text:Es.match,token:this.terminals_[Ac]||Ac,line:Es.yylineno,loc:Kd,expected:Ra})}if(Ya[0]instanceof Array&&Ya.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Jc+", token: "+Ac);switch(Ya[0]){case 1:zn.push(Ac),gt.push(Es.yytext),on.push(Es.yylloc),zn.push(Ya[1]),Ac=null,Oo=Es.yyleng,Ln=Es.yytext,Io=Es.yylineno,Kd=Es.yylloc;break;case 2:if(Lc=this.productions_[Ya[1]][1],ha.$=gt[gt.length-Lc],ha._$={first_line:on[on.length-(Lc||1)].first_line,last_line:on[on.length-1].last_line,first_column:on[on.length-(Lc||1)].first_column,last_column:on[on.length-1].last_column},qp&&(ha._$.range=[on[on.length-(Lc||1)].range[0],on[on.length-1].range[1]]),Ba=this.performAction.apply(ha,[Ln,Oo,Io,Ou.yy,Ya[1],gt,on].concat(uo)),typeof Ba<"u")return Ba;Lc&&(zn=zn.slice(0,-1*Lc*2),gt=gt.slice(0,-1*Lc),on=on.slice(0,-1*Lc)),zn.push(this.productions_[Ya[1]][0]),gt.push(ha.$),on.push(ha._$),Fa=dn[zn[zn.length-2]][zn[zn.length-1]],zn.push(Fa);break;case 3:return!0}}return!0}},Hs=function(){var Tr={EOF:1,parseError:function(Rn,zn){if(this.yy.parser)this.yy.parser.parseError(Rn,zn);else throw new Error(Rn)},setInput:function(On,Rn){return this.yy=Rn||this.yy||{},this._input=On,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 On=this._input[0];this.yytext+=On,this.yyleng++,this.offset++,this.match+=On,this.matched+=On;var Rn=On.match(/(?:\r\n?|\n).*/g);return Rn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),On},unput:function(On){var Rn=On.length,zn=On.split(/(?:\r\n?|\n)/g);this._input=On+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Rn),this.offset-=Rn;var Ct=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),zn.length-1&&(this.yylineno-=zn.length-1);var gt=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:zn?(zn.length===Ct.length?this.yylloc.first_column:0)+Ct[Ct.length-zn.length].length-zn[0].length:this.yylloc.first_column-Rn},this.options.ranges&&(this.yylloc.range=[gt[0],gt[0]+this.yyleng-Rn]),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).348`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(On){this.unput(this.match.slice(On))},pastInput:function(){var On=this.matched.substr(0,this.matched.length-this.match.length);return(On.length>20?"...":"")+On.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var On=this.match;return On.length<20&&(On+=this._input.substr(0,20-On.length)),(On.substr(0,20)+(On.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var On=this.pastInput(),Rn=new Array(On.length+1).join("-");return On+this.upcomingInput()+`349`+Rn+"^"},test_match:function(On,Rn){var zn,Ct,gt;if(this.options.backtrack_lexer&&(gt={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&&(gt.yylloc.range=this.yylloc.range.slice(0))),Ct=On[0].match(/(?:\r\n?|\n).*/g),Ct&&(this.yylineno+=Ct.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ct?Ct[Ct.length-1].length-Ct[Ct.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+On[0].length},this.yytext+=On[0],this.match+=On[0],this.matches=On,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(On[0].length),this.matched+=On[0],zn=this.performAction.call(this,this.yy,this,Rn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),zn)return zn;if(this._backtrack){for(var on in gt)this[on]=gt[on];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var On,Rn,zn,Ct;this._more||(this.yytext="",this.match="");for(var gt=this._currentRules(),on=0;on<gt.length;on++)if(zn=this._input.match(this.rules[gt[on]]),zn&&(!Rn||zn[0].length>Rn[0].length)){if(Rn=zn,Ct=on,this.options.backtrack_lexer){if(On=this.test_match(zn,gt[on]),On!==!1)return On;if(this._backtrack){Rn=!1;continue}else return!1}else if(!this.options.flex)break}return Rn?(On=this.test_match(Rn,gt[Ct]),On!==!1?On:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.350`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Rn=this.next();return Rn||this.lex()},begin:function(Rn){this.conditionStack.push(Rn)},popState:function(){var Rn=this.conditionStack.length-1;return Rn>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(Rn){return Rn=this.conditionStack.length-1-Math.abs(Rn||0),Rn>=0?this.conditionStack[Rn]:"INITIAL"},pushState:function(Rn){this.begin(Rn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Rn,zn,Ct,gt){switch(Ct){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}();ia.lexer=Hs;function mo(){this.yy={}}return mo.prototype=ia,ia.Parser=mo,new mo}();jQ.parser=jQ;const JUt=jQ;let q3=[],I9=[""],jp="global",H3="",Z4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],kR=[],nme="",rme=!1,$Q=4,zQ=2;var Xqe;const ZUt=function(){return Xqe},eVt=function(i){Xqe=bh(i,qt())},tVt=function(i,a,u,d,p,v,b,y,E){if(i==null||a===void 0||a===null||u===void 0||u===null||d===void 0||d===null)return;let _={};const A=kR.find(P=>P.from===a&&P.to===u);if(A?_=A:kR.push(_),_.type=i,_.from=a,_.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 E=="object"){let[P,R]=Object.entries(E)[0];_[P]=R}else _.link=E;_.wrap=O9()},nVt=function(i,a,u,d,p,v,b){if(a===null||u===null)return;let y={};const E=q3.find(_=>_.alias===a);if(E&&a===E.alias?y=E:(y.alias=a,q3.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=jp,y.wrap=O9()},rVt=function(i,a,u,d,p,v,b,y){if(a===null||u===null)return;let E={};const _=q3.find(A=>A.alias===a);if(_&&a===_.alias?E=_:(E.alias=a,q3.push(E)),u==null?E.label={text:""}:E.label={text:u},d==null)E.techn={text:""};else if(typeof d=="object"){let[A,P]=Object.entries(d)[0];E[A]={text:P}}else E.techn={text:d};if(p==null)E.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];E[A]={text:P}}else E.descr={text:p};if(typeof v=="object"){let[A,P]=Object.entries(v)[0];E[A]=P}else E.sprite=v;if(typeof b=="object"){let[A,P]=Object.entries(b)[0];E[A]=P}else E.tags=b;if(typeof y=="object"){let[A,P]=Object.entries(y)[0];E[A]=P}else E.link=y;E.wrap=O9(),E.typeC4Shape={text:i},E.parentBoundary=jp},iVt=function(i,a,u,d,p,v,b,y){if(a===null||u===null)return;let E={};const _=q3.find(A=>A.alias===a);if(_&&a===_.alias?E=_:(E.alias=a,q3.push(E)),u==null?E.label={text:""}:E.label={text:u},d==null)E.techn={text:""};else if(typeof d=="object"){let[A,P]=Object.entries(d)[0];E[A]={text:P}}else E.techn={text:d};if(p==null)E.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];E[A]={text:P}}else E.descr={text:p};if(typeof v=="object"){let[A,P]=Object.entries(v)[0];E[A]=P}else E.sprite=v;if(typeof b=="object"){let[A,P]=Object.entries(b)[0];E[A]=P}else E.tags=b;if(typeof y=="object"){let[A,P]=Object.entries(y)[0];E[A]=P}else E.link=y;E.wrap=O9(),E.typeC4Shape={text:i},E.parentBoundary=jp},sVt=function(i,a,u,d,p){if(i===null||a===null)return;let v={};const b=Z4.find(y=>y.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,Z4.push(v)),a==null?v.label={text:""}:v.label={text:a},u==null)v.type={text:"system"};else if(typeof u=="object"){let[y,E]=Object.entries(u)[0];v[y]={text:E}}else v.type={text:u};if(typeof d=="object"){let[y,E]=Object.entries(d)[0];v[y]=E}else v.tags=d;if(typeof p=="object"){let[y,E]=Object.entries(p)[0];v[y]=E}else v.link=p;v.parentBoundary=jp,v.wrap=O9(),H3=jp,jp=i,I9.push(H3)},aVt=function(i,a,u,d,p){if(i===null||a===null)return;let v={};const b=Z4.find(y=>y.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,Z4.push(v)),a==null?v.label={text:""}:v.label={text:a},u==null)v.type={text:"container"};else if(typeof u=="object"){let[y,E]=Object.entries(u)[0];v[y]={text:E}}else v.type={text:u};if(typeof d=="object"){let[y,E]=Object.entries(d)[0];v[y]=E}else v.tags=d;if(typeof p=="object"){let[y,E]=Object.entries(p)[0];v[y]=E}else v.link=p;v.parentBoundary=jp,v.wrap=O9(),H3=jp,jp=i,I9.push(H3)},oVt=function(i,a,u,d,p,v,b,y){if(a===null||u===null)return;let E={};const _=Z4.find(A=>A.alias===a);if(_&&a===_.alias?E=_:(E.alias=a,Z4.push(E)),u==null?E.label={text:""}:E.label={text:u},d==null)E.type={text:"node"};else if(typeof d=="object"){let[A,P]=Object.entries(d)[0];E[A]={text:P}}else E.type={text:d};if(p==null)E.descr={text:""};else if(typeof p=="object"){let[A,P]=Object.entries(p)[0];E[A]={text:P}}else E.descr={text:p};if(typeof b=="object"){let[A,P]=Object.entries(b)[0];E[A]=P}else E.tags=b;if(typeof y=="object"){let[A,P]=Object.entries(y)[0];E[A]=P}else E.link=y;E.nodeType=i,E.parentBoundary=jp,E.wrap=O9(),H3=jp,jp=a,I9.push(H3)},cVt=function(){jp=H3,I9.pop(),H3=I9.pop(),I9.push(H3)},uVt=function(i,a,u,d,p,v,b,y,E,_,A){let P=q3.find(R=>R.alias===a);if(!(P===void 0&&(P=Z4.find(R=>R.alias===a),P===void 0))){if(u!=null)if(typeof u=="object"){let[R,B]=Object.entries(u)[0];P[R]=B}else P.bgColor=u;if(d!=null)if(typeof d=="object"){let[R,B]=Object.entries(d)[0];P[R]=B}else P.fontColor=d;if(p!=null)if(typeof p=="object"){let[R,B]=Object.entries(p)[0];P[R]=B}else P.borderColor=p;if(v!=null)if(typeof v=="object"){let[R,B]=Object.entries(v)[0];P[R]=B}else P.shadowing=v;if(b!=null)if(typeof b=="object"){let[R,B]=Object.entries(b)[0];P[R]=B}else P.shape=b;if(y!=null)if(typeof y=="object"){let[R,B]=Object.entries(y)[0];P[R]=B}else P.sprite=y;if(E!=null)if(typeof E=="object"){let[R,B]=Object.entries(E)[0];P[R]=B}else P.techn=E;if(_!=null)if(typeof _=="object"){let[R,B]=Object.entries(_)[0];P[R]=B}else P.legendText=_;if(A!=null)if(typeof A=="object"){let[R,B]=Object.entries(A)[0];P[R]=B}else P.legendSprite=A}},lVt=function(i,a,u,d,p,v,b){const y=kR.find(E=>E.from===a&&E.to===u);if(y!==void 0){if(d!=null)if(typeof d=="object"){let[E,_]=Object.entries(d)[0];y[E]=_}else y.textColor=d;if(p!=null)if(typeof p=="object"){let[E,_]=Object.entries(p)[0];y[E]=_}else y.lineColor=p;if(v!=null)if(typeof v=="object"){let[E,_]=Object.entries(v)[0];y[E]=parseInt(_)}else y.offsetX=parseInt(v);if(b!=null)if(typeof b=="object"){let[E,_]=Object.entries(b)[0];y[E]=parseInt(_)}else y.offsetY=parseInt(b)}},hVt=function(i,a,u){let d=$Q,p=zQ;if(typeof a=="object"){const v=Object.values(a)[0];d=parseInt(v)}else d=parseInt(a);if(typeof u=="object"){const v=Object.values(u)[0];p=parseInt(v)}else p=parseInt(u);d>=1&&($Q=d),p>=1&&(zQ=p)},fVt=function(){return $Q},dVt=function(){return zQ},gVt=function(){return jp},pVt=function(){return H3},Qqe=function(i){return i==null?q3:q3.filter(a=>a.parentBoundary===i)},bVt=function(i){return q3.find(a=>a.alias===i)},mVt=function(i){return Object.keys(Qqe(i))},Jqe=function(i){return i==null?Z4:Z4.filter(a=>a.parentBoundary===i)},vVt=Jqe,wVt=function(){return kR},yVt=function(){return nme},xVt=function(i){rme=i},O9=function(){return rme},ime={addPersonOrSystem:nVt,addPersonOrSystemBoundary:sVt,addContainer:rVt,addContainerBoundary:aVt,addComponent:iVt,addDeploymentNode:oVt,popBoundaryParseStack:cVt,addRel:tVt,updateElStyle:uVt,updateRelStyle:lVt,updateLayoutConfig:hVt,autoWrap:O9,setWrap:xVt,getC4ShapeArray:Qqe,getC4Shape:bVt,getC4ShapeKeys:mVt,getBoundaries:Jqe,getBoundarys:vVt,getCurrentBoundaryParse:gVt,getParentBoundaryParse:pVt,getRels:wVt,getTitle:yVt,getC4Type:ZUt,getC4ShapeInRow:fVt,getC4BoundaryInRow:dVt,setAccTitle:jg,getAccTitle:Mp,getAccDescription:Ip,setAccDescription:Dp,getConfig:()=>qt().c4,clear:function(){q3=[],Z4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],H3="",jp="global",I9=[""],kR=[],I9=[""],nme="",rme=!1,$Q=4,zQ=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){nme=bh(i,qt())},setC4Type:eVt},qQ=(i,a)=>{const u=i.append("rect");if(u.attr("x",a.x),u.attr("y",a.y),u.attr("fill",a.fill),u.attr("stroke",a.stroke),u.attr("width",a.width),u.attr("height",a.height),a.name&&u.attr("name",a.name),a.rx!==void 0&&u.attr("rx",a.rx),a.ry!==void 0&&u.attr("ry",a.ry),a.attrs!==void 0)for(const d in a.attrs)u.attr(d,a.attrs[d]);return a.class!==void 0&&u.attr("class",a.class),u},Zqe=(i,a)=>{const u={x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,stroke:a.stroke,class:"rect"};qQ(i,u).lower()},kVt=(i,a)=>{const u=a.text.replace(bD," "),d=i.append("text");d.attr("x",a.x),d.attr("y",a.y),d.attr("class","legend"),d.style("text-anchor",a.anchor),a.class!==void 0&&d.attr("class",a.class);const p=d.append("tspan");return p.attr("x",a.x+a.textMargin*2),p.text(u),d},TVt=(i,a,u,d)=>{const p=i.append("image");p.attr("x",a),p.attr("y",u);const v=b9.sanitizeUrl(d);p.attr("xlink:href",v)},EVt=(i,a,u,d)=>{const p=i.append("use");p.attr("x",a),p.attr("y",u);const v=b9.sanitizeUrl(d);p.attr("xlink:href",`#${v}`)},HC=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),sme=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),ame=function(i,a){return qQ(i,a)},eHe=function(i,a,u,d,p,v){const b=i.append("image");b.attr("width",a),b.attr("height",u),b.attr("x",d),b.attr("y",p);let y=v.startsWith("data:image/png;base64")?v:b9.sanitizeUrl(v);b.attr("xlink:href",y)},CVt=(i,a,u)=>{const d=i.append("g");let p=0;for(let v of a){let b=v.textColor?v.textColor:"#444444",y=v.lineColor?v.lineColor:"#444444",E=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();R7(u)(v.label.text,d,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+E,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(),R7(u)("["+v.techn.text+"]",d,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+E,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))}},SVt=function(i,a,u){const d=i.append("g");let p=a.bgColor?a.bgColor:"none",v=a.borderColor?a.borderColor:"#444444",b=a.fontColor?a.fontColor:"black",y={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};a.nodeType&&(y={"stroke-width":1});let E={x:a.x,y:a.y,fill:p,stroke:v,width:a.width,height:a.height,rx:2.5,ry:2.5,attrs:y};ame(d,E);let _=u.boundaryFont();_.fontWeight="bold",_.fontSize=_.fontSize+2,_.fontColor=b,R7(u)(a.label.text,d,a.x,a.y+a.label.Y,a.width,a.height,{fill:"#444444"},_),a.type&&a.type.text!==""&&(_=u.boundaryFont(),_.fontColor=b,R7(u)(a.type.text,d,a.x,a.y+a.type.Y,a.width,a.height,{fill:"#444444"},_)),a.descr&&a.descr.text!==""&&(_=u.boundaryFont(),_.fontSize=_.fontSize-2,_.fontColor=b,R7(u)(a.descr.text,d,a.x,a.y+a.descr.Y,a.width,a.height,{fill:"#444444"},_))},_Vt=function(i,a,u){var P;let d=a.bgColor?a.bgColor:u[a.typeC4Shape.text+"_bg_color"],p=a.borderColor?a.borderColor:u[a.typeC4Shape.text+"_border_color"],v=a.fontColor?a.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(a.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 E=HC();switch(a.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":E.x=a.x,E.y=a.y,E.fill=d,E.width=a.width,E.height=a.height,E.stroke=p,E.rx=2.5,E.ry=2.5,E.attrs={"stroke-width":.5},ame(y,E);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",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2).replaceAll("height",a.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",a.x).replaceAll("starty",a.y).replaceAll("half",a.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",a.x).replaceAll("starty",a.y).replaceAll("width",a.width).replaceAll("half",a.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",a.x+a.width).replaceAll("starty",a.y).replaceAll("half",a.height/2));break}let _=BVt(u,a.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",a.typeC4Shape.width).attr("x",a.x+a.width/2-a.typeC4Shape.width/2).attr("y",a.y+a.typeC4Shape.Y).text("<<"+a.typeC4Shape.text+">>"),a.typeC4Shape.text){case"person":case"external_person":eHe(y,48,48,a.x+a.width/2-24,a.y+a.image.Y,b);break}let A=u[a.typeC4Shape.text+"Font"]();return A.fontWeight="bold",A.fontSize=A.fontSize+2,A.fontColor=v,R7(u)(a.label.text,y,a.x,a.y+a.label.Y,a.width,a.height,{fill:v},A),A=u[a.typeC4Shape.text+"Font"](),A.fontColor=v,a.techn&&((P=a.techn)==null?void 0:P.text)!==""?R7(u)(a.techn.text,y,a.x,a.y+a.techn.Y,a.width,a.height,{fill:v,"font-style":"italic"},A):a.type&&a.type.text!==""&&R7(u)(a.type.text,y,a.x,a.y+a.type.Y,a.width,a.height,{fill:v,"font-style":"italic"},A),a.descr&&a.descr.text!==""&&(A=u.personFont(),A.fontColor=v,R7(u)(a.descr.text,y,a.x,a.y+a.descr.Y,a.width,a.height,{fill:v},A)),a.height},AVt=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")},LVt=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")},MVt=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")},DVt=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")},IVt=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")},OVt=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")},NVt=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)},PVt=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")},BVt=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),R7=function(){function i(p,v,b,y,E,_,A){const P=v.append("text").attr("x",b+E/2).attr("y",y+_/2+5).style("text-anchor","middle").text(p);d(P,A)}function a(p,v,b,y,E,_,A,P){const{fontSize:R,fontFamily:B,fontWeight:j}=P,W=p.split(oi.lineBreakRegex);for(let ee=0;ee<W.length;ee++){const ie=ee*R-R*(W.length-1)/2,oe=v.append("text").attr("x",b+E/2).attr("y",y).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",R).style("font-weight",j).style("font-family",B);oe.append("tspan").attr("dy",ie).text(W[ee]).attr("alignment-baseline","mathematical"),d(oe,A)}}function u(p,v,b,y,E,_,A,P){const R=v.append("switch"),j=R.append("foreignObject").attr("x",b).attr("y",y).attr("width",E).attr("height",_).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");j.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(p),a(p,R,b,y,E,_,A,P),d(j,A)}function d(p,v){for(const b in v)v.hasOwnProperty(b)&&p.attr(b,v[b])}return function(p){return p.textPlacement==="fo"?u:p.textPlacement==="old"?i:a}}(),e5={drawRect:ame,drawBoundary:SVt,drawC4Shape:_Vt,drawRels:CVt,drawImage:eHe,insertArrowHead:DVt,insertArrowEnd:IVt,insertArrowFilledHead:OVt,insertDynamicNumber:NVt,insertArrowCrossHead:PVt,insertDatabaseIcon:AVt,insertComputerIcon:LVt,insertClockIcon:MVt};let HQ=0,UQ=0,tHe=4,ome=2;jQ.yy=ime;let $s={};class nHe{constructor(a){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,cme(a.db.getConfig())}setData(a,u,d,p){this.nextData.startx=this.data.startx=a,this.nextData.stopx=this.data.stopx=u,this.nextData.starty=this.data.starty=d,this.nextData.stopy=this.data.stopy=p}updateVal(a,u,d,p){a[u]===void 0?a[u]=d:a[u]=p(d,a[u])}insert(a){this.nextData.cnt=this.nextData.cnt+1;let u=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+a.margin:this.nextData.stopx+a.margin*2,d=u+a.width,p=this.nextData.starty+a.margin*2,v=p+a.height;(u>=this.data.widthLimit||d>=this.data.widthLimit||this.nextData.cnt>tHe)&&(u=this.nextData.startx+a.margin+$s.nextLinePaddingX,p=this.nextData.stopy+a.margin*2,this.nextData.stopx=d=u+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=v=p+a.height,this.nextData.cnt=1),a.x=u,a.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(a){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},cme(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}}const cme=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)},TR=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),VQ=i=>({fontFamily:i.boundaryFontFamily,fontSize:i.boundaryFontSize,fontWeight:i.boundaryFontWeight}),FVt=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight});function U3(i,a,u,d,p){if(!a[i].width)if(u)a[i].text=zje(a[i].text,p,d),a[i].textLines=a[i].text.split(oi.lineBreakRegex).length,a[i].width=p,a[i].height=F2e(a[i].text,d);else{let v=a[i].text.split(oi.lineBreakRegex);a[i].textLines=v.length;let b=0;a[i].height=0,a[i].width=0;for(const y of v)a[i].width=Math.max(G4(y,d),a[i].width),b=F2e(y,d),a[i].height=a[i].height+b}}const rHe=function(i,a,u){a.x=u.data.startx,a.y=u.data.starty,a.width=u.data.stopx-u.data.startx,a.height=u.data.stopy-u.data.starty,a.label.y=$s.c4ShapeMargin-35;let d=a.wrap&&$s.wrap,p=VQ($s);p.fontSize=p.fontSize+2,p.fontWeight="bold";let v=G4(a.label.text,p);U3("label",a,d,p,v),e5.drawBoundary(i,a,$s)},iHe=function(i,a,u,d){let p=0;for(const v of d){p=0;const b=u[v];let y=TR($s,b.typeC4Shape.text);switch(y.fontSize=y.fontSize-2,b.typeC4Shape.width=G4("ยซ"+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 E=b.wrap&&$s.wrap,_=$s.width-$s.c4ShapePadding*2,A=TR($s,b.typeC4Shape.text);if(A.fontSize=A.fontSize+2,A.fontWeight="bold",U3("label",b,E,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 B=TR($s,b.typeC4Shape.text);U3("type",b,E,B,_),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 B=TR($s,b.techn.text);U3("techn",b,E,B,_),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 B=TR($s,b.typeC4Shape.text);U3("descr",b,E,B,_),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),e5.drawC4Shape(a,b,$s)}i.bumpLastMargin($s.c4ShapeMargin)};let Gv=class{constructor(a,u){this.x=a,this.y=u}},sHe=function(i,a){let u=i.x,d=i.y,p=a.x,v=a.y,b=u+i.width/2,y=d+i.height/2,E=Math.abs(u-p),_=Math.abs(d-v),A=_/E,P=i.height/i.width,R=null;return d==v&&u<p?R=new Gv(u+i.width,y):d==v&&u>p?R=new Gv(u,y):u==p&&d<v?R=new Gv(b,d+i.height):u==p&&d>v&&(R=new Gv(b,d)),u>p&&d<v?P>=A?R=new Gv(u,y+A*i.width/2):R=new Gv(b-E/_*i.height/2,d+i.height):u<p&&d<v?P>=A?R=new Gv(u+i.width,y+A*i.width/2):R=new Gv(b+E/_*i.height/2,d+i.height):u<p&&d>v?P>=A?R=new Gv(u+i.width,y-A*i.width/2):R=new Gv(b+i.height/2*E/_,d):u>p&&d>v&&(P>=A?R=new Gv(u,y-i.width/2*A):R=new Gv(b-i.height/2*E/_,d)),R},RVt=function(i,a){let u={x:0,y:0};u.x=a.x+a.width/2,u.y=a.y+a.height/2;let d=sHe(i,u);u.x=i.x+i.width/2,u.y=i.y+i.height/2;let p=sHe(a,u);return{startPoint:d,endPoint:p}};const jVt=function(i,a,u,d){let p=0;for(let v of a){p=p+1;let b=v.wrap&&$s.wrap,y=FVt($s);d.db.getC4Type()==="C4Dynamic"&&(v.label.text=p+": "+v.label.text);let _=G4(v.label.text,y);U3("label",v,b,y,_),v.techn&&v.techn.text!==""&&(_=G4(v.techn.text,y),U3("techn",v,b,y,_)),v.descr&&v.descr.text!==""&&(_=G4(v.descr.text,y),U3("descr",v,b,y,_));let A=u(v.from),P=u(v.to),R=RVt(A,P);v.startPoint=R.startPoint,v.endPoint=R.endPoint}e5.drawRels(i,a,$s)};function aHe(i,a,u,d,p){let v=new nHe(p);v.data.widthLimit=u.data.widthLimit/Math.min(ome,d.length);for(let[b,y]of d.entries()){let E=0;y.image={width:0,height:0,Y:0},y.sprite&&(y.image.width=48,y.image.height=48,y.image.Y=E,E=y.image.Y+y.image.height);let _=y.wrap&&$s.wrap,A=VQ($s);if(A.fontSize=A.fontSize+2,A.fontWeight="bold",U3("label",y,_,A,v.data.widthLimit),y.label.Y=E+8,E=y.label.Y+y.label.height,y.type&&y.type.text!==""){y.type.text="["+y.type.text+"]";let j=VQ($s);U3("type",y,_,j,v.data.widthLimit),y.type.Y=E+5,E=y.type.Y+y.type.height}if(y.descr&&y.descr.text!==""){let j=VQ($s);j.fontSize=j.fontSize-2,U3("descr",y,_,j,v.data.widthLimit),y.descr.Y=E+20,E=y.descr.Y+y.descr.height}if(b==0||b%ome===0){let j=u.data.startx+$s.diagramMarginX,W=u.data.stopy+$s.diagramMarginY+E;v.setData(j,j,W,W)}else{let j=v.data.stopx!==v.data.startx?v.data.stopx+$s.diagramMarginX:v.data.startx,W=v.data.starty;v.setData(j,j,W,W)}v.name=y.alias;let P=p.db.getC4ShapeArray(y.alias),R=p.db.getC4ShapeKeys(y.alias);R.length>0&&iHe(v,i,P,R),a=y.alias;let B=p.db.getBoundarys(a);B.length>0&&aHe(i,a,v,B,p),y.alias!=="global"&&rHe(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),HQ=Math.max(HQ,u.data.stopx),UQ=Math.max(UQ,u.data.stopy)}}const oHe={drawPersonOrSystemArray:iHe,drawBoundary:rHe,setConf:cme,draw:function(i,a,u,d){$s=qt().c4;const p=qt().securityLevel;let v;p==="sandbox"&&(v=Dr("#i"+a));const b=Dr(p==="sandbox"?v.nodes()[0].contentDocument.body:"body");let y=d.db;d.db.setWrap($s.wrap),tHe=y.getC4ShapeInRow(),ome=y.getC4BoundaryInRow(),Xe.debug(`C:${JSON.stringify($s,null,2)}`);const E=p==="sandbox"?b.select(`[id="${a}"]`):Dr(`[id="${a}"]`);e5.insertComputerIcon(E),e5.insertDatabaseIcon(E),e5.insertClockIcon(E);let _=new nHe(d);_.setData($s.diagramMarginX,$s.diagramMarginX,$s.diagramMarginY,$s.diagramMarginY),_.data.widthLimit=screen.availWidth,HQ=$s.diagramMarginX,UQ=$s.diagramMarginY;const A=d.db.getTitle();let P=d.db.getBoundarys("");aHe(E,"",_,P,d),e5.insertArrowHead(E),e5.insertArrowEnd(E),e5.insertArrowCrossHead(E),e5.insertArrowFilledHead(E),jVt(E,d.db.getRels(),d.db.getC4Shape,d),_.data.stopx=HQ,_.data.stopy=UQ;const R=_.data;let j=R.stopy-R.starty+2*$s.diagramMarginY;const ee=R.stopx-R.startx+2*$s.diagramMarginX;A&&E.append("text").text(A).attr("x",(R.stopx-R.startx)/2-4*$s.diagramMarginX).attr("y",R.starty+$s.diagramMarginY),Fg(E,j,ee,$s.useMaxWidth);const ie=A?60:0;E.attr("viewBox",R.startx-$s.diagramMarginX+" -"+($s.diagramMarginY+ie)+" "+ee+" "+(j+ie)),Xe.debug("models:",R)}},$Vt=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:JUt,db:ime,renderer:oHe,styles:i=>`.person {351 stroke: ${i.personBorder};352 fill: ${i.personBkg};353 }354`,init:({c4:i,wrap:a})=>{oHe.setConf(i),ime.setWrap(a)}}},Symbol.toStringTag,{value:"Module"}));var ume=function(){var i=function(Qo,Hi,Ui,zs){for(Ui=Ui||{},zs=Qo.length;zs--;Ui[Qo[zs]]=Hi);return Ui},a=[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],E=[1,15],_=[1,16],A=[1,23],P=[1,25],R=[1,26],B=[1,27],j=[1,49],W=[1,48],ee=[1,29],ie=[1,30],oe=[1,31],be=[1,32],ge=[1,33],ae=[1,44],ne=[1,46],se=[1,42],de=[1,47],X=[1,43],pe=[1,50],G=[1,45],xe=[1,51],U=[1,52],Be=[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],zt=[1,62],Ne=[8,9,11,73,75],pn=[1,88],Tt=[1,93],Et=[1,92],Wt=[1,89],un=[1,85],yt=[1,91],Bt=[1,87],Ze=[1,94],Dt=[1,90],kt=[1,95],Nn=[1,86],ht=[8,9,10,11,73,75],qr=[8,9,10,11,44,73,75],xt=[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],Ri=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],wi=[42,58,86,99,102,103,106,108,111,112,113],ia=[1,121],Hs=[1,120],mo=[1,128],Tr=[1,142],On=[1,143],Rn=[1,144],zn=[1,145],Ct=[1,130],gt=[1,132],on=[1,136],dn=[1,137],Ln=[1,138],Io=[1,139],Oo=[1,140],No=[1,141],Us=[1,146],uo=[1,147],Es=[1,126],Ou=[1,127],_c=[1,134],Kd=[1,129],qp=[1,133],Ul=[1,131],Ac=[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],Jc=[1,149],Ya=[8,9,11],Ba=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],ha=[1,169],$o=[1,165],Lc=[1,166],Fa=[1,170],Ra=[1,167],ma=[1,168],Kh=[75,113,116],Po=[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],Hp=[10,103],Ug=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],od=[1,235],cd=[1,233],w1=[1,237],kh=[1,231],Wd=[1,232],Yd=[1,234],Xd=[1,236],Zf=[1,238],Up=[1,255],u5=[8,9,11,103],bs=[8,9,10,11,58,81,102,103,106,107,108,109],Vt={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(Hi,Ui,zs,gi,Bo,Ot,zu){var Gt=Ot.length-1;switch(Bo){case 2:this.$=[];break;case 3:(!Array.isArray(Ot[Gt])||Ot[Gt].length>0)&&Ot[Gt-1].push(Ot[Gt]),this.$=Ot[Gt-1];break;case 4:case 176:this.$=Ot[Gt];break;case 11:gi.setDirection("TB"),this.$="TB";break;case 12:gi.setDirection(Ot[Gt-1]),this.$=Ot[Gt-1];break;case 27:this.$=Ot[Gt-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=gi.addSubGraph(Ot[Gt-6],Ot[Gt-1],Ot[Gt-4]);break;case 34:this.$=gi.addSubGraph(Ot[Gt-3],Ot[Gt-1],Ot[Gt-3]);break;case 35:this.$=gi.addSubGraph(void 0,Ot[Gt-1],void 0);break;case 37:this.$=Ot[Gt].trim(),gi.setAccTitle(this.$);break;case 38:case 39:this.$=Ot[Gt].trim(),gi.setAccDescription(this.$);break;case 43:gi.addLink(Ot[Gt-2].stmt,Ot[Gt],Ot[Gt-1]),this.$={stmt:Ot[Gt],nodes:Ot[Gt].concat(Ot[Gt-2].nodes)};break;case 44:gi.addLink(Ot[Gt-3].stmt,Ot[Gt-1],Ot[Gt-2]),this.$={stmt:Ot[Gt-1],nodes:Ot[Gt-1].concat(Ot[Gt-3].nodes)};break;case 45:this.$={stmt:Ot[Gt-1],nodes:Ot[Gt-1]};break;case 46:this.$={stmt:Ot[Gt],nodes:Ot[Gt]};break;case 47:this.$=[Ot[Gt]];break;case 48:this.$=Ot[Gt-4].concat(Ot[Gt]);break;case 49:this.$=Ot[Gt];break;case 50:this.$=Ot[Gt-2],gi.setClass(Ot[Gt-2],Ot[Gt]);break;case 51:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"square");break;case 52:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"doublecircle");break;case 53:this.$=Ot[Gt-5],gi.addVertex(Ot[Gt-5],Ot[Gt-2],"circle");break;case 54:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"ellipse");break;case 55:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"stadium");break;case 56:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"subroutine");break;case 57:this.$=Ot[Gt-7],gi.addVertex(Ot[Gt-7],Ot[Gt-1],"rect",void 0,void 0,void 0,Object.fromEntries([[Ot[Gt-5],Ot[Gt-3]]]));break;case 58:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"cylinder");break;case 59:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"round");break;case 60:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"diamond");break;case 61:this.$=Ot[Gt-5],gi.addVertex(Ot[Gt-5],Ot[Gt-2],"hexagon");break;case 62:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"odd");break;case 63:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"trapezoid");break;case 64:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"inv_trapezoid");break;case 65:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"lean_right");break;case 66:this.$=Ot[Gt-3],gi.addVertex(Ot[Gt-3],Ot[Gt-1],"lean_left");break;case 67:this.$=Ot[Gt],gi.addVertex(Ot[Gt]);break;case 68:Ot[Gt-1].text=Ot[Gt],this.$=Ot[Gt-1];break;case 69:case 70:Ot[Gt-2].text=Ot[Gt-1],this.$=Ot[Gt-2];break;case 71:this.$=Ot[Gt];break;case 72:var Wh=gi.destructLink(Ot[Gt],Ot[Gt-2]);this.$={type:Wh.type,stroke:Wh.stroke,length:Wh.length,text:Ot[Gt-1]};break;case 73:this.$={text:Ot[Gt],type:"text"};break;case 74:this.$={text:Ot[Gt-1].text+""+Ot[Gt],type:Ot[Gt-1].type};break;case 75:this.$={text:Ot[Gt],type:"string"};break;case 76:this.$={text:Ot[Gt],type:"markdown"};break;case 77:var Wh=gi.destructLink(Ot[Gt]);this.$={type:Wh.type,stroke:Wh.stroke,length:Wh.length};break;case 78:this.$=Ot[Gt-1];break;case 79:this.$={text:Ot[Gt],type:"text"};break;case 80:this.$={text:Ot[Gt-1].text+""+Ot[Gt],type:Ot[Gt-1].type};break;case 81:this.$={text:Ot[Gt],type:"string"};break;case 82:case 97:this.$={text:Ot[Gt],type:"markdown"};break;case 94:this.$={text:Ot[Gt],type:"text"};break;case 95:this.$={text:Ot[Gt-1].text+""+Ot[Gt],type:Ot[Gt-1].type};break;case 96:this.$={text:Ot[Gt],type:"text"};break;case 98:this.$=Ot[Gt-4],gi.addClass(Ot[Gt-2],Ot[Gt]);break;case 99:this.$=Ot[Gt-4],gi.setClass(Ot[Gt-2],Ot[Gt]);break;case 100:case 108:this.$=Ot[Gt-1],gi.setClickEvent(Ot[Gt-1],Ot[Gt]);break;case 101:case 109:this.$=Ot[Gt-3],gi.setClickEvent(Ot[Gt-3],Ot[Gt-2]),gi.setTooltip(Ot[Gt-3],Ot[Gt]);break;case 102:this.$=Ot[Gt-2],gi.setClickEvent(Ot[Gt-2],Ot[Gt-1],Ot[Gt]);break;case 103:this.$=Ot[Gt-4],gi.setClickEvent(Ot[Gt-4],Ot[Gt-3],Ot[Gt-2]),gi.setTooltip(Ot[Gt-4],Ot[Gt]);break;case 104:this.$=Ot[Gt-2],gi.setLink(Ot[Gt-2],Ot[Gt]);break;case 105:this.$=Ot[Gt-4],gi.setLink(Ot[Gt-4],Ot[Gt-2]),gi.setTooltip(Ot[Gt-4],Ot[Gt]);break;case 106:this.$=Ot[Gt-4],gi.setLink(Ot[Gt-4],Ot[Gt-2],Ot[Gt]);break;case 107:this.$=Ot[Gt-6],gi.setLink(Ot[Gt-6],Ot[Gt-4],Ot[Gt]),gi.setTooltip(Ot[Gt-6],Ot[Gt-2]);break;case 110:this.$=Ot[Gt-1],gi.setLink(Ot[Gt-1],Ot[Gt]);break;case 111:this.$=Ot[Gt-3],gi.setLink(Ot[Gt-3],Ot[Gt-2]),gi.setTooltip(Ot[Gt-3],Ot[Gt]);break;case 112:this.$=Ot[Gt-3],gi.setLink(Ot[Gt-3],Ot[Gt-2],Ot[Gt]);break;case 113:this.$=Ot[Gt-5],gi.setLink(Ot[Gt-5],Ot[Gt-4],Ot[Gt]),gi.setTooltip(Ot[Gt-5],Ot[Gt-2]);break;case 114:this.$=Ot[Gt-4],gi.addVertex(Ot[Gt-2],void 0,void 0,Ot[Gt]);break;case 115:this.$=Ot[Gt-4],gi.updateLink([Ot[Gt-2]],Ot[Gt]);break;case 116:this.$=Ot[Gt-4],gi.updateLink(Ot[Gt-2],Ot[Gt]);break;case 117:this.$=Ot[Gt-8],gi.updateLinkInterpolate([Ot[Gt-6]],Ot[Gt-2]),gi.updateLink([Ot[Gt-6]],Ot[Gt]);break;case 118:this.$=Ot[Gt-8],gi.updateLinkInterpolate(Ot[Gt-6],Ot[Gt-2]),gi.updateLink(Ot[Gt-6],Ot[Gt]);break;case 119:this.$=Ot[Gt-6],gi.updateLinkInterpolate([Ot[Gt-4]],Ot[Gt]);break;case 120:this.$=Ot[Gt-6],gi.updateLinkInterpolate(Ot[Gt-4],Ot[Gt]);break;case 121:case 123:this.$=[Ot[Gt]];break;case 122:case 124:Ot[Gt-2].push(Ot[Gt]),this.$=Ot[Gt-2];break;case 126:this.$=Ot[Gt-1]+Ot[Gt];break;case 174:this.$=Ot[Gt];break;case 175:this.$=Ot[Gt-1]+""+Ot[Gt];break;case 177:this.$=Ot[Gt-1]+""+Ot[Gt];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:a,10:u,12:d},{1:[3]},i(p,v,{5:6}),{4:7,9:a,10:u,12:d},{4:8,9:a,10:u,12:d},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:b,9:y,10:E,11:_,20:17,22:18,23:19,24:20,25:21,26:22,27:A,33:24,34:P,36:R,38:B,40:28,41:38,42:j,43:39,45:40,58:W,81:ee,82:ie,83:oe,84:be,85:ge,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U,118:Be,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:zt,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:ke,9:Ke,11:zt,21:66},{8:ke,9:Ke,11:zt,21:67},{8:ke,9:Ke,11:zt,21:68},{8:ke,9:Ke,11:zt,21:69},{8:ke,9:Ke,11:zt,21:70},{8:ke,9:Ke,10:[1,71],11:zt,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:pn,42:Tt,58:Et,77:[1,83],86:Wt,92:[1,80],94:[1,81],98:82,102:un,103:yt,106:Bt,108:Ze,111:Dt,112:kt,113:Nn,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(qr,[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:W,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:pe,111:G,112:xe,113:U}),i(xt,[2,174]),i(xt,[2,135]),i(xt,[2,136]),i(xt,[2,137]),i(xt,[2,138]),i(xt,[2,139]),i(xt,[2,140]),i(xt,[2,141]),i(xt,[2,142]),i(xt,[2,143]),i(xt,[2,144]),i(xt,[2,145]),i(p,[2,12]),i(p,[2,18]),i(p,[2,19]),{9:[1,110]},i(Ri,[2,26],{18:111,10:Se}),i(Ce,[2,27]),{40:112,41:38,42:j,43:39,45:40,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},i(Ce,[2,40]),i(Ce,[2,41]),i(Ce,[2,42]),i(wi,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:ia,116:Hs},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:mo,12:Tr,14:On,27:Rn,28:122,32:zn,42:Ct,58:gt,73:on,77:[1,124],78:[1,125],80:135,81:dn,82:Ln,83:Io,84:Oo,85:No,86:Us,87:uo,88:123,102:Es,106:Ou,108:_c,111:Kd,112:qp,113:Ul},i(Ac,v,{5:148}),i(Ce,[2,37]),i(Ce,[2,38]),i(Ne,[2,45],{42:Jc}),{42:j,45:150,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},{99:[1,151],100:152,102:[1,153]},{42:j,45:154,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},{42:j,45:155,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},i(Ya,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},i(Ya,[2,108],{117:160,10:[1,159],14:pn,42:Tt,58:Et,86:Wt,102:un,103:yt,106:Bt,108:Ze,111:Dt,112:kt,113:Nn}),i(Ya,[2,110],{10:[1,161]}),i(Ba,[2,176]),i(Ba,[2,163]),i(Ba,[2,164]),i(Ba,[2,165]),i(Ba,[2,166]),i(Ba,[2,167]),i(Ba,[2,168]),i(Ba,[2,169]),i(Ba,[2,170]),i(Ba,[2,171]),i(Ba,[2,172]),i(Ba,[2,173]),{42:j,45:162,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},{30:163,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:171,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:173,48:[1,172],65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:174,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:175,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:176,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{106:[1,177]},{30:178,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:179,63:[1,180],65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:181,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:182,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{30:183,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},i(xt,[2,175]),i(p,[2,20]),i(Ri,[2,25]),i(Ne,[2,43],{18:184,10:Se}),i(wi,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{75:[1,188],76:189,113:ia,116:Hs},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:mo,11:zt,12:Tr,14:On,21:191,27:Rn,29:[1,190],32:zn,42:Ct,58:gt,73:on,80:135,81:dn,82:Ln,83:Io,84:Oo,85:No,86:Us,87:uo,88:192,102:Es,106:Ou,108:_c,111:Kd,112:qp,113:Ul},i(Po,[2,94]),i(Po,[2,96]),i(Po,[2,97]),i(Po,[2,150]),i(Po,[2,151]),i(Po,[2,152]),i(Po,[2,153]),i(Po,[2,154]),i(Po,[2,155]),i(Po,[2,156]),i(Po,[2,157]),i(Po,[2,158]),i(Po,[2,159]),i(Po,[2,160]),i(Po,[2,83]),i(Po,[2,84]),i(Po,[2,85]),i(Po,[2,86]),i(Po,[2,87]),i(Po,[2,88]),i(Po,[2,89]),i(Po,[2,90]),i(Po,[2,91]),i(Po,[2,92]),i(Po,[2,93]),{6:11,7:12,8:b,9:y,10:E,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:B,40:28,41:38,42:j,43:39,45:40,58:W,81:ee,82:ie,83:oe,84:be,85:ge,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U,118:Be,119:Pe,120:je,121:Ie},{10:Se,18:194},{10:[1,195],42:j,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:109,111:G,112:xe,113:U},{10:[1,196]},{10:[1,197],103:[1,198]},i(Hp,[2,121]),{10:[1,199],42:j,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:109,111:G,112:xe,113:U},{10:[1,200],42:j,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:109,111:G,112:xe,113:U},{77:[1,201]},i(Ya,[2,102],{10:[1,202]}),i(Ya,[2,104],{10:[1,203]}),{77:[1,204]},i(Ba,[2,177]),{77:[1,205],95:[1,206]},i(ht,[2,50],{110:109,42:j,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,111:G,112:xe,113:U}),{31:[1,207],65:ha,79:208,113:Fa,114:Ra,115:ma},i(Ug,[2,79]),i(Ug,[2,81]),i(Ug,[2,82]),i(Ug,[2,146]),i(Ug,[2,147]),i(Ug,[2,148]),i(Ug,[2,149]),{47:[1,209],65:ha,79:208,113:Fa,114:Ra,115:ma},{30:210,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{49:[1,211],65:ha,79:208,113:Fa,114:Ra,115:ma},{51:[1,212],65:ha,79:208,113:Fa,114:Ra,115:ma},{53:[1,213],65:ha,79:208,113:Fa,114:Ra,115:ma},{55:[1,214],65:ha,79:208,113:Fa,114:Ra,115:ma},{58:[1,215]},{62:[1,216],65:ha,79:208,113:Fa,114:Ra,115:ma},{64:[1,217],65:ha,79:208,113:Fa,114:Ra,115:ma},{30:218,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},{31:[1,219],65:ha,79:208,113:Fa,114:Ra,115:ma},{65:ha,67:[1,220],69:[1,221],79:208,113:Fa,114:Ra,115:ma},{65:ha,67:[1,223],69:[1,222],79:208,113:Fa,114:Ra,115:ma},i(Ne,[2,44],{42:Jc}),i(wi,[2,70]),i(wi,[2,69]),{60:[1,224],65:ha,79:208,113:Fa,114:Ra,115:ma},i(wi,[2,72]),i(Kh,[2,74]),{30:225,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},i(Ac,v,{5:226}),i(Po,[2,95]),i(Ce,[2,35]),{41:227,42:j,43:39,45:40,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},{10:od,58:cd,81:w1,89:228,102:kh,104:229,105:230,106:Wd,107:Yd,108:Xd,109:Zf},{10:od,58:cd,81:w1,89:239,101:[1,240],102:kh,104:229,105:230,106:Wd,107:Yd,108:Xd,109:Zf},{10:od,58:cd,81:w1,89:241,101:[1,242],102:kh,104:229,105:230,106:Wd,107:Yd,108:Xd,109:Zf},{102:[1,243]},{10:od,58:cd,81:w1,89:244,102:kh,104:229,105:230,106:Wd,107:Yd,108:Xd,109:Zf},{42:j,45:245,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U},i(Ya,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},i(Ya,[2,109]),i(Ya,[2,111],{10:[1,249]}),i(Ya,[2,112]),i(qr,[2,51]),i(Ug,[2,80]),i(qr,[2,52]),{49:[1,250],65:ha,79:208,113:Fa,114:Ra,115:ma},i(qr,[2,59]),i(qr,[2,54]),i(qr,[2,55]),i(qr,[2,56]),{106:[1,251]},i(qr,[2,58]),i(qr,[2,60]),{64:[1,252],65:ha,79:208,113:Fa,114:Ra,115:ma},i(qr,[2,62]),i(qr,[2,63]),i(qr,[2,65]),i(qr,[2,64]),i(qr,[2,66]),i([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:ha,79:208,113:Fa,114:Ra,115:ma},{6:11,7:12,8:b,9:y,10:E,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:B,40:28,41:38,42:j,43:39,45:40,58:W,81:ee,82:ie,83:oe,84:be,85:ge,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U,118:Be,119:Pe,120:je,121:Ie},i(ht,[2,48]),i(Ya,[2,114],{103:Up}),i(u5,[2,123],{105:256,10:od,58:cd,81:w1,102:kh,106:Wd,107:Yd,108:Xd,109:Zf}),i(bs,[2,125]),i(bs,[2,127]),i(bs,[2,128]),i(bs,[2,129]),i(bs,[2,130]),i(bs,[2,131]),i(bs,[2,132]),i(bs,[2,133]),i(bs,[2,134]),i(Ya,[2,115],{103:Up}),{10:[1,257]},i(Ya,[2,116],{103:Up}),{10:[1,258]},i(Hp,[2,122]),i(Ya,[2,98],{103:Up}),i(Ya,[2,99],{110:109,42:j,58:W,86:ae,99:ne,102:se,103:de,106:X,108:pe,111:G,112:xe,113:U}),i(Ya,[2,103]),i(Ya,[2,105],{10:[1,259]}),i(Ya,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:ke,9:Ke,11:zt,21:264},i(Ce,[2,34]),{10:od,58:cd,81:w1,102:kh,104:265,105:230,106:Wd,107:Yd,108:Xd,109:Zf},i(bs,[2,126]),{14:pn,42:Tt,58:Et,86:Wt,98:266,102:un,103:yt,106:Bt,108:Ze,111:Dt,112:kt,113:Nn,117:84},{14:pn,42:Tt,58:Et,86:Wt,98:267,102:un,103:yt,106:Bt,108:Ze,111:Dt,112:kt,113:Nn,117:84},{95:[1,268]},i(Ya,[2,113]),i(qr,[2,53]),{30:269,65:ha,77:$o,78:Lc,79:164,113:Fa,114:Ra,115:ma},i(qr,[2,61]),i(Ac,v,{5:270}),i(u5,[2,124],{105:256,10:od,58:cd,81:w1,102:kh,106:Wd,107:Yd,108:Xd,109:Zf}),i(Ya,[2,119],{117:160,10:[1,271],14:pn,42:Tt,58:Et,86:Wt,102:un,103:yt,106:Bt,108:Ze,111:Dt,112:kt,113:Nn}),i(Ya,[2,120],{117:160,10:[1,272],14:pn,42:Tt,58:Et,86:Wt,102:un,103:yt,106:Bt,108:Ze,111:Dt,112:kt,113:Nn}),i(Ya,[2,107]),{31:[1,273],65:ha,79:208,113:Fa,114:Ra,115:ma},{6:11,7:12,8:b,9:y,10:E,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:B,40:28,41:38,42:j,43:39,45:40,58:W,81:ee,82:ie,83:oe,84:be,85:ge,86:ae,99:ne,102:se,103:de,106:X,108:pe,110:41,111:G,112:xe,113:U,118:Be,119:Pe,120:je,121:Ie},{10:od,58:cd,81:w1,89:275,102:kh,104:229,105:230,106:Wd,107:Yd,108:Xd,109:Zf},{10:od,58:cd,81:w1,89:276,102:kh,104:229,105:230,106:Wd,107:Yd,108:Xd,109:Zf},i(qr,[2,57]),i(Ce,[2,33]),i(Ya,[2,117],{103:Up}),i(Ya,[2,118],{103:Up})],defaultActions:{},parseError:function(Hi,Ui){if(Ui.recoverable)this.trace(Hi);else{var zs=new Error(Hi);throw zs.hash=Ui,zs}},parse:function(Hi){var Ui=this,zs=[0],gi=[],Bo=[null],Ot=[],zu=this.table,Gt="",Wh=0,Vp=0,J3=2,q9=1,l5=Ot.slice.call(arguments,1),Th=Object.create(this.lexer),Vg={yy:{}};for(var Em in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Em)&&(Vg.yy[Em]=this.yy[Em]);Th.setInput(Hi,Vg.yy),Vg.yy.lexer=Th,Vg.yy.parser=this,typeof Th.yylloc>"u"&&(Th.yylloc={});var H9=Th.yylloc;Ot.push(H9);var Cm=Th.options&&Th.options.ranges;typeof Vg.yy.parseError=="function"?this.parseError=Vg.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function h5(){var Gp;return Gp=gi.pop()||Th.lex()||q9,typeof Gp!="number"&&(Gp instanceof Array&&(gi=Gp,Gp=gi.pop()),Gp=Ui.symbols_[Gp]||Gp),Gp}for(var y1,ud,ld,U9,Qv={},X7,tb,Q7,f5;;){if(ud=zs[zs.length-1],this.defaultActions[ud]?ld=this.defaultActions[ud]:((y1===null||typeof y1>"u")&&(y1=h5()),ld=zu[ud]&&zu[ud][y1]),typeof ld>"u"||!ld.length||!ld[0]){var Z3="";f5=[];for(X7 in zu[ud])this.terminals_[X7]&&X7>J3&&f5.push("'"+this.terminals_[X7]+"'");Th.showPosition?Z3="Parse error on line "+(Wh+1)+`:355`+Th.showPosition()+`356Expecting `+f5.join(", ")+", got '"+(this.terminals_[y1]||y1)+"'":Z3="Parse error on line "+(Wh+1)+": Unexpected "+(y1==q9?"end of input":"'"+(this.terminals_[y1]||y1)+"'"),this.parseError(Z3,{text:Th.match,token:this.terminals_[y1]||y1,line:Th.yylineno,loc:H9,expected:f5})}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:zs.push(y1),Bo.push(Th.yytext),Ot.push(Th.yylloc),zs.push(ld[1]),y1=null,Vp=Th.yyleng,Gt=Th.yytext,Wh=Th.yylineno,H9=Th.yylloc;break;case 2:if(tb=this.productions_[ld[1]][1],Qv.$=Bo[Bo.length-tb],Qv._$={first_line:Ot[Ot.length-(tb||1)].first_line,last_line:Ot[Ot.length-1].last_line,first_column:Ot[Ot.length-(tb||1)].first_column,last_column:Ot[Ot.length-1].last_column},Cm&&(Qv._$.range=[Ot[Ot.length-(tb||1)].range[0],Ot[Ot.length-1].range[1]]),U9=this.performAction.apply(Qv,[Gt,Vp,Wh,Vg.yy,ld[1],Bo,Ot].concat(l5)),typeof U9<"u")return U9;tb&&(zs=zs.slice(0,-1*tb*2),Bo=Bo.slice(0,-1*tb),Ot=Ot.slice(0,-1*tb)),zs.push(this.productions_[ld[1]][0]),Bo.push(Qv.$),Ot.push(Qv._$),Q7=zu[zs[zs.length-2]][zs[zs.length-1]],zs.push(Q7);break;case 3:return!0}}return!0}},jr=function(){var Qo={EOF:1,parseError:function(Ui,zs){if(this.yy.parser)this.yy.parser.parseError(Ui,zs);else throw new Error(Ui)},setInput:function(Hi,Ui){return this.yy=Ui||this.yy||{},this._input=Hi,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 Hi=this._input[0];this.yytext+=Hi,this.yyleng++,this.offset++,this.match+=Hi,this.matched+=Hi;var Ui=Hi.match(/(?:\r\n?|\n).*/g);return Ui?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Hi},unput:function(Hi){var Ui=Hi.length,zs=Hi.split(/(?:\r\n?|\n)/g);this._input=Hi+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ui),this.offset-=Ui;var gi=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),zs.length-1&&(this.yylineno-=zs.length-1);var Bo=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:zs?(zs.length===gi.length?this.yylloc.first_column:0)+gi[gi.length-zs.length].length-zs[0].length:this.yylloc.first_column-Ui},this.options.ranges&&(this.yylloc.range=[Bo[0],Bo[0]+this.yyleng-Ui]),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).357`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Hi){this.unput(this.match.slice(Hi))},pastInput:function(){var Hi=this.matched.substr(0,this.matched.length-this.match.length);return(Hi.length>20?"...":"")+Hi.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Hi=this.match;return Hi.length<20&&(Hi+=this._input.substr(0,20-Hi.length)),(Hi.substr(0,20)+(Hi.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Hi=this.pastInput(),Ui=new Array(Hi.length+1).join("-");return Hi+this.upcomingInput()+`358`+Ui+"^"},test_match:function(Hi,Ui){var zs,gi,Bo;if(this.options.backtrack_lexer&&(Bo={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&&(Bo.yylloc.range=this.yylloc.range.slice(0))),gi=Hi[0].match(/(?:\r\n?|\n).*/g),gi&&(this.yylineno+=gi.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:gi?gi[gi.length-1].length-gi[gi.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Hi[0].length},this.yytext+=Hi[0],this.match+=Hi[0],this.matches=Hi,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(Hi[0].length),this.matched+=Hi[0],zs=this.performAction.call(this,this.yy,this,Ui,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),zs)return zs;if(this._backtrack){for(var Ot in Bo)this[Ot]=Bo[Ot];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Hi,Ui,zs,gi;this._more||(this.yytext="",this.match="");for(var Bo=this._currentRules(),Ot=0;Ot<Bo.length;Ot++)if(zs=this._input.match(this.rules[Bo[Ot]]),zs&&(!Ui||zs[0].length>Ui[0].length)){if(Ui=zs,gi=Ot,this.options.backtrack_lexer){if(Hi=this.test_match(zs,Bo[Ot]),Hi!==!1)return Hi;if(this._backtrack){Ui=!1;continue}else return!1}else if(!this.options.flex)break}return Ui?(Hi=this.test_match(Ui,Bo[gi]),Hi!==!1?Hi:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.359`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ui=this.next();return Ui||this.lex()},begin:function(Ui){this.conditionStack.push(Ui)},popState:function(){var Ui=this.conditionStack.length-1;return Ui>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(Ui){return Ui=this.conditionStack.length-1-Math.abs(Ui||0),Ui>=0?this.conditionStack[Ui]:"INITIAL"},pushState:function(Ui){this.begin(Ui)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Ui,zs,gi,Bo){switch(gi){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 Ui.lex.firstGraph()&&this.begin("dir"),12;case 30:return Ui.lex.firstGraph()&&this.begin("dir"),12;case 31:return Ui.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 Qo}();Vt.lexer=jr;function Ji(){this.yy={}}return Ji.prototype=Vt,Vt.Parser=Ji,new Ji}();ume.parser=ume;const lme=ume,zVt="flowchart-";let cHe=0,UD=qt(),ih={},V3=[],VD={},j7=[],GQ={},KQ={},WQ=0,hme=!0,Kv,YQ,XQ=[];const QQ=i=>oi.sanitizeText(i,UD),ER=function(i){const a=Object.keys(ih);for(const u of a)if(ih[u].id===i)return ih[u].domId;return i},uHe=function(i,a,u,d,p,v,b={}){let y,E=i;E!==void 0&&E.trim().length!==0&&(ih[E]===void 0&&(ih[E]={id:E,labelType:"text",domId:zVt+E+"-"+cHe,styles:[],classes:[]}),cHe++,a!==void 0?(UD=qt(),y=QQ(a.text.trim()),ih[E].labelType=a.type,y[0]==='"'&&y[y.length-1]==='"'&&(y=y.substring(1,y.length-1)),ih[E].text=y):ih[E].text===void 0&&(ih[E].text=i),u!==void 0&&(ih[E].type=u),d!=null&&d.forEach(function(_){ih[E].styles.push(_)}),p!=null&&p.forEach(function(_){ih[E].classes.push(_)}),v!==void 0&&(ih[E].dir=v),ih[E].props===void 0?ih[E].props=b:b!==void 0&&Object.assign(ih[E].props,b))},lHe=function(i,a,u){const v={start:i,end:a,type:void 0,text:"",labelType:"text"};Xe.info("abc78 Got edge...",v);const b=u.text;if(b!==void 0&&(v.text=QQ(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),V3.length<(UD.maxEdges??500))Xe.info("abc78 pushing edge..."),V3.push(v);else throw new Error(`Edge limit exceeded. ${V3.length} edges found, but the limit is ${UD.maxEdges}.360 361Initialize mermaid with maxEdges set to a higher number to allow more edges.362You cannot set this config via configuration inside the diagram as it is a secure config.363You have to call mermaid.initialize.`)},hHe=function(i,a,u){Xe.info("addLink (abc78)",i,a,u);let d,p;for(d=0;d<i.length;d++)for(p=0;p<a.length;p++)lHe(i[d],a[p],u)},fHe=function(i,a){i.forEach(function(u){u==="default"?V3.defaultInterpolate=a:V3[u].interpolate=a})},dHe=function(i,a){i.forEach(function(u){if(u>=V3.length)throw new Error(`The index ${u} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${V3.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);u==="default"?V3.defaultStyle=a:(So.isSubstringInArray("fill",a)===-1&&a.push("fill:none"),V3[u].style=a)})},gHe=function(i,a){i.split(",").forEach(function(u){VD[u]===void 0&&(VD[u]={id:u,styles:[],textStyles:[]}),a!=null&&a.forEach(function(d){if(d.match("color")){const p=d.replace("fill","bgFill").replace("color","fill");VD[u].textStyles.push(p)}VD[u].styles.push(d)})})},pHe=function(i){Kv=i,Kv.match(/.*</)&&(Kv="RL"),Kv.match(/.*\^/)&&(Kv="BT"),Kv.match(/.*>/)&&(Kv="LR"),Kv.match(/.*v/)&&(Kv="TB"),Kv==="TD"&&(Kv="TB")},JQ=function(i,a){i.split(",").forEach(function(u){let d=u;ih[d]!==void 0&&ih[d].classes.push(a),GQ[d]!==void 0&&GQ[d].classes.push(a)})},qVt=function(i,a){i.split(",").forEach(function(u){a!==void 0&&(KQ[YQ==="gen-1"?ER(u):u]=QQ(a))})},HVt=function(i,a,u){let d=ER(i);if(qt().securityLevel!=="loose"||a===void 0)return;let p=[];if(typeof u=="string"){p=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v<p.length;v++){let b=p[v].trim();b.charAt(0)==='"'&&b.charAt(b.length-1)==='"'&&(b=b.substr(1,b.length-2)),p[v]=b}}p.length===0&&p.push(i),ih[i]!==void 0&&(ih[i].haveCallback=!0,XQ.push(function(){const v=document.querySelector(`[id="${d}"]`);v!==null&&v.addEventListener("click",function(){So.runFunc(a,...p)},!1)}))},bHe=function(i,a,u){i.split(",").forEach(function(d){ih[d]!==void 0&&(ih[d].link=So.formatUrl(a,UD),ih[d].linkTarget=u)}),JQ(i,"clickable")},mHe=function(i){if(KQ.hasOwnProperty(i))return KQ[i]},vHe=function(i,a,u){i.split(",").forEach(function(d){HVt(d,a,u)}),JQ(i,"clickable")},wHe=function(i){XQ.forEach(function(a){a(i)})},yHe=function(){return Kv.trim()},xHe=function(){return ih},kHe=function(){return V3},THe=function(){return VD},EHe=function(i){let a=Dr(".mermaidTooltip");(a._groups||a)[0][0]===null&&(a=Dr("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),Dr(i).select("svg").selectAll("g.node").on("mouseover",function(){const p=Dr(this);if(p.attr("title")===null)return;const b=this.getBoundingClientRect();a.transition().duration(200).style("opacity",".9"),a.text(p.attr("title")).style("left",window.scrollX+b.left+(b.right-b.left)/2+"px").style("top",window.scrollY+b.bottom+"px"),a.html(a.html().replace(/<br\/>/g,"<br/>")),p.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),Dr(this).classed("hover",!1)})};XQ.push(EHe);const CHe=function(i="gen-1"){ih={},VD={},V3=[],XQ=[EHe],j7=[],GQ={},WQ=0,KQ={},hme=!0,YQ=i,UD=qt(),Rg()},SHe=i=>{YQ=i||"gen-2"},_He=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},AHe=function(i,a,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 B;return{nodeList:A.filter(function(W){const ee=typeof W;return W.stmt&&W.stmt==="dir"?(B=W.value,!1):W.trim()===""?!1:ee in P?P[ee].hasOwnProperty(W)?!1:P[ee][W]=!0:R.includes(W)?!1:R.push(W)}),dir:B}}let b=[];const{nodeList:y,dir:E}=v(b.concat.apply(b,a));if(b=y,YQ==="gen-1")for(let A=0;A<b.length;A++)b[A]=ER(b[A]);d=d||"subGraph"+WQ,p=p||"",p=QQ(p),WQ=WQ+1;const _={id:d,nodes:b,title:p.trim(),classes:[],dir:E,labelType:u.type};return Xe.info("Adding",_.id,_.nodes,_.dir),_.nodes=FHe(_,j7).nodes,j7.push(_),GQ[d]=_,d},UVt=function(i){for(const[a,u]of j7.entries())if(u.id===i)return a;return-1};let CR=-1;const LHe=[],MHe=function(i,a){const u=j7[a].nodes;if(CR=CR+1,CR>2e3)return;if(LHe[CR]=a,j7[a].id===i)return{result:!0,count:0};let d=0,p=1;for(;d<u.length;){const v=UVt(u[d]);if(v>=0){const b=MHe(i,v);if(b.result)return{result:!0,count:p+b.count};p=p+b.count}d=d+1}return{result:!1,count:p}},DHe=function(i){return LHe[i]},IHe=function(){CR=-1,j7.length>0&&MHe("none",j7.length-1)},OHe=function(){return j7},NHe=()=>hme?(hme=!1,!0):!1,VVt=i=>{let a=i.trim(),u="arrow_open";switch(a[0]){case"<":u="arrow_point",a=a.slice(1);break;case"x":u="arrow_cross",a=a.slice(1);break;case"o":u="arrow_circle",a=a.slice(1);break}let d="normal";return a.includes("=")&&(d="thick"),a.includes(".")&&(d="dotted"),{type:u,stroke:d}},GVt=(i,a)=>{const u=a.length;let d=0;for(let p=0;p<u;++p)a[p]===i&&++d;return d},KVt=i=>{const a=i.trim();let u=a.slice(0,-1),d="arrow_open";switch(a.slice(-1)){case"x":d="arrow_cross",a[0]==="x"&&(d="double_"+d,u=u.slice(1));break;case">":d="arrow_point",a[0]==="<"&&(d="double_"+d,u=u.slice(1));break;case"o":d="arrow_circle",a[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=GVt(".",u);return b&&(p="dotted",v=b),{type:d,stroke:p,length:v}},PHe=(i,a)=>{const u=KVt(i);let d;if(a){if(d=VVt(a),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},BHe=(i,a)=>{let u=!1;return i.forEach(d=>{d.nodes.indexOf(a)>=0&&(u=!0)}),u},FHe=(i,a)=>{const u=[];return i.nodes.forEach((d,p)=>{BHe(a,d)||u.push(i.nodes[p])}),{nodes:u}},RHe={firstGraph:NHe},UC={defaultConfig:()=>E$e.flowchart,setAccTitle:jg,getAccTitle:Mp,getAccDescription:Ip,setAccDescription:Dp,addVertex:uHe,lookUpDomId:ER,addLink:hHe,updateLinkInterpolate:fHe,updateLink:dHe,addClass:gHe,setDirection:pHe,setClass:JQ,setTooltip:qVt,getTooltip:mHe,setClickEvent:vHe,setLink:bHe,bindFunctions:wHe,getDirection:yHe,getVertices:xHe,getEdges:kHe,getClasses:THe,clear:CHe,setGen:SHe,defaultStyle:_He,addSubGraph:AHe,getDepthFirstPos:DHe,indexNodes:IHe,getSubGraphs:OHe,destructLink:PHe,lex:RHe,exists:BHe,makeUniq:FHe,setDiagramTitle:pm,getDiagramTitle:Op},WVt=Object.freeze(Object.defineProperty({__proto__:null,addClass:gHe,addLink:hHe,addSingleLink:lHe,addSubGraph:AHe,addVertex:uHe,bindFunctions:wHe,clear:CHe,default:UC,defaultStyle:_He,destructLink:PHe,firstGraph:NHe,getClasses:THe,getDepthFirstPos:DHe,getDirection:yHe,getEdges:kHe,getSubGraphs:OHe,getTooltip:mHe,getVertices:xHe,indexNodes:IHe,lex:RHe,lookUpDomId:ER,setClass:JQ,setClickEvent:vHe,setDirection:pHe,setGen:SHe,setLink:bHe,updateLink:dHe,updateLinkInterpolate:fHe},Symbol.toStringTag,{value:"Module"}));var YVt="[object Symbol]";function VC(i){return typeof i=="symbol"||V4(i)&&LC(i)==YVt}function GD(i,a){for(var u=-1,d=i==null?0:i.length,p=Array(d);++u<d;)p[u]=a(i[u],u,i);return p}var XVt=1/0,jHe=zv?zv.prototype:void 0,$He=jHe?jHe.toString:void 0;function zHe(i){if(typeof i=="string")return i;if(D0(i))return GD(i,zHe)+"";if(VC(i))return $He?$He.call(i):"";var a=i+"";return a=="0"&&1/i==-XVt?"-0":a}var QVt=/\s/;function JVt(i){for(var a=i.length;a--&&QVt.test(i.charAt(a)););return a}var ZVt=/^\s+/;function eGt(i){return i&&i.slice(0,JVt(i)+1).replace(ZVt,"")}var qHe=0/0,tGt=/^[-+]0x[0-9a-f]+$/i,nGt=/^0b[01]+$/i,rGt=/^0o[0-7]+$/i,iGt=parseInt;function sGt(i){if(typeof i=="number")return i;if(VC(i))return qHe;if(dm(i)){var a=typeof i.valueOf=="function"?i.valueOf():i;i=dm(a)?a+"":a}if(typeof i!="string")return i===0?i:+i;i=eGt(i);var u=nGt.test(i);return u||rGt.test(i)?iGt(i.slice(2),u?2:8):tGt.test(i)?qHe:+i}var HHe=1/0,aGt=17976931348623157e292;function ZQ(i){if(!i)return i===0?i:0;if(i=sGt(i),i===HHe||i===-HHe){var a=i<0?-1:1;return a*aGt}return i===i?i:0}function oGt(i){var a=ZQ(i),u=a%1;return a===a?u?a-u:a:0}function cGt(){}function UHe(i,a){for(var u=-1,d=i==null?0:i.length;++u<d&&a(i[u],u,i)!==!1;);return i}function VHe(i,a,u,d){for(var p=i.length,v=u+(d?1:-1);d?v--:++v<p;)if(a(i[v],v,i))return v;return-1}function uGt(i){return i!==i}function lGt(i,a,u){for(var d=u-1,p=i.length;++d<p;)if(i[d]===a)return d;return-1}function hGt(i,a,u){return a===a?lGt(i,a,u):VHe(i,uGt,u)}function fGt(i,a){var u=i==null?0:i.length;return!!u&&hGt(i,a,0)>-1}function xm(i){return y9(i)?Lje(i):P$e(i)}var dGt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,gGt=/^\w*$/;function fme(i,a){if(D0(i))return!1;var u=typeof i;return u=="number"||u=="symbol"||u=="boolean"||i==null||VC(i)?!0:gGt.test(i)||!dGt.test(i)||a!=null&&i in Object(a)}var pGt=500;function bGt(i){var a=yD(i,function(d){return u.size===pGt&&u.clear(),d}),u=a.cache;return a}var mGt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,vGt=/\\(\\)?/g,wGt=bGt(function(i){var a=[];return i.charCodeAt(0)===46&&a.push(""),i.replace(mGt,function(u,d,p,v){a.push(p?v.replace(vGt,"$1"):d||u)}),a});const yGt=wGt;function GHe(i){return i==null?"":zHe(i)}function eJ(i,a){return D0(i)?i:fme(i,a)?[i]:yGt(GHe(i))}var xGt=1/0;function SR(i){if(typeof i=="string"||VC(i))return i;var a=i+"";return a=="0"&&1/i==-xGt?"-0":a}function tJ(i,a){a=eJ(a,i);for(var u=0,d=a.length;i!=null&&u<d;)i=i[SR(a[u++])];return u&&u==d?i:void 0}function kGt(i,a,u){var d=i==null?void 0:tJ(i,a);return d===void 0?u:d}function dme(i,a){for(var u=-1,d=a.length,p=i.length;++u<d;)i[p+u]=a[u];return i}var KHe=zv?zv.isConcatSpreadable:void 0;function TGt(i){return D0(i)||xD(i)||!!(KHe&&i&&i[KHe])}function nJ(i,a,u,d,p){var v=-1,b=i.length;for(u||(u=TGt),p||(p=[]);++v<b;){var y=i[v];a>0&&u(y)?a>1?nJ(y,a-1,u,d,p):dme(p,y):d||(p[p.length]=y)}return p}function KD(i){var a=i==null?0:i.length;return a?nJ(i,1):[]}function EGt(i){return Oje(Ije(i,void 0,KD),i+"")}function CGt(i,a,u,d){var p=-1,v=i==null?0:i.length;for(d&&v&&(u=i[++p]);++p<v;)u=a(u,i[p],p,i);return u}function SGt(i,a){return i&&aR(a,xm(a),i)}function _Gt(i,a){return i&&aR(a,OC(a),i)}function WHe(i,a){for(var u=-1,d=i==null?0:i.length,p=0,v=[];++u<d;){var b=i[u];a(b,u,i)&&(v[p++]=b)}return v}function YHe(){return[]}var AGt=Object.prototype,LGt=AGt.propertyIsEnumerable,XHe=Object.getOwnPropertySymbols,MGt=XHe?function(i){return i==null?[]:(i=Object(i),WHe(XHe(i),function(a){return LGt.call(i,a)}))}:YHe;const gme=MGt;function DGt(i,a){return aR(i,gme(i),a)}var IGt=Object.getOwnPropertySymbols,OGt=IGt?function(i){for(var a=[];i;)dme(a,gme(i)),i=I2e(i);return a}:YHe;const QHe=OGt;function NGt(i,a){return aR(i,QHe(i),a)}function JHe(i,a,u){var d=a(i);return D0(i)?d:dme(d,u(i))}function pme(i){return JHe(i,xm,gme)}function PGt(i){return JHe(i,OC,QHe)}var BGt=Object.prototype,FGt=BGt.hasOwnProperty;function RGt(i){var a=i.length,u=new i.constructor(a);return a&&typeof i[0]=="string"&&FGt.call(i,"index")&&(u.index=i.index,u.input=i.input),u}function jGt(i,a){var u=a?D2e(i.buffer):i.buffer;return new i.constructor(u,i.byteOffset,i.byteLength)}var $Gt=/\w*$/;function zGt(i){var a=new i.constructor(i.source,$Gt.exec(i));return a.lastIndex=i.lastIndex,a}var ZHe=zv?zv.prototype:void 0,eUe=ZHe?ZHe.valueOf:void 0;function qGt(i){return eUe?Object(eUe.call(i)):{}}var HGt="[object Boolean]",UGt="[object Date]",VGt="[object Map]",GGt="[object Number]",KGt="[object RegExp]",WGt="[object Set]",YGt="[object String]",XGt="[object Symbol]",QGt="[object ArrayBuffer]",JGt="[object DataView]",ZGt="[object Float32Array]",eKt="[object Float64Array]",tKt="[object Int8Array]",nKt="[object Int16Array]",rKt="[object Int32Array]",iKt="[object Uint8Array]",sKt="[object Uint8ClampedArray]",aKt="[object Uint16Array]",oKt="[object Uint32Array]";function cKt(i,a,u){var d=i.constructor;switch(a){case QGt:return D2e(i);case HGt:case UGt:return new d(+i);case JGt:return jGt(i,u);case ZGt:case eKt:case tKt:case nKt:case rKt:case iKt:case sKt:case aKt:case oKt:return gje(i,u);case VGt:return new d;case GGt:case YGt:return new d(i);case KGt:return zGt(i);case WGt:return new d;case XGt:return qGt(i)}}var uKt="[object Map]";function lKt(i){return V4(i)&&MD(i)==uKt}var tUe=TD&&TD.isMap,hKt=tUe?jX(tUe):lKt;const fKt=hKt;var dKt="[object Set]";function gKt(i){return V4(i)&&MD(i)==dKt}var nUe=TD&&TD.isSet,pKt=nUe?jX(nUe):gKt;const bKt=pKt;var mKt=1,vKt=2,wKt=4,rUe="[object Arguments]",yKt="[object Array]",xKt="[object Boolean]",kKt="[object Date]",TKt="[object Error]",iUe="[object Function]",EKt="[object GeneratorFunction]",CKt="[object Map]",SKt="[object Number]",sUe="[object Object]",_Kt="[object RegExp]",AKt="[object Set]",LKt="[object String]",MKt="[object Symbol]",DKt="[object WeakMap]",IKt="[object ArrayBuffer]",OKt="[object DataView]",NKt="[object Float32Array]",PKt="[object Float64Array]",BKt="[object Int8Array]",FKt="[object Int16Array]",RKt="[object Int32Array]",jKt="[object Uint8Array]",$Kt="[object Uint8ClampedArray]",zKt="[object Uint16Array]",qKt="[object Uint32Array]",ql={};ql[rUe]=ql[yKt]=ql[IKt]=ql[OKt]=ql[xKt]=ql[kKt]=ql[NKt]=ql[PKt]=ql[BKt]=ql[FKt]=ql[RKt]=ql[CKt]=ql[SKt]=ql[sUe]=ql[_Kt]=ql[AKt]=ql[LKt]=ql[MKt]=ql[jKt]=ql[$Kt]=ql[zKt]=ql[qKt]=!0,ql[TKt]=ql[iUe]=ql[DKt]=!1;function _R(i,a,u,d,p,v){var b,y=a&mKt,E=a&vKt,_=a&wKt;if(u&&(b=p?u(i,d,p,v):u(i)),b!==void 0)return b;if(!dm(i))return i;var A=D0(i);if(A){if(b=RGt(i),!y)return pje(i,b)}else{var P=MD(i),R=P==iUe||P==EKt;if(kD(i))return dje(i,y);if(P==sUe||P==rUe||R&&!p){if(b=E||R?{}:vje(i),!y)return E?NGt(i,_Gt(b,i)):DGt(i,SGt(b,i))}else{if(!ql[P])return p?i:{};b=cKt(i,P,y)}}v||(v=new $3);var B=v.get(i);if(B)return B;v.set(i,b),bKt(i)?i.forEach(function(ee){b.add(_R(ee,a,u,ee,i,v))}):fKt(i)&&i.forEach(function(ee,ie){b.set(ie,_R(ee,a,u,ie,i,v))});var j=_?E?PGt:pme:E?OC:xm,W=A?void 0:j(i);return UHe(W||i,function(ee,ie){W&&(ie=ee,ee=i[ie]),zX(b,ie,_R(ee,a,u,ie,i,v))}),b}var HKt=4;function aUe(i){return _R(i,HKt)}var UKt=1,VKt=4;function GKt(i){return _R(i,UKt|VKt)}var KKt="__lodash_hash_undefined__";function WKt(i){return this.__data__.set(i,KKt),this}function YKt(i){return this.__data__.has(i)}function AR(i){var a=-1,u=i==null?0:i.length;for(this.__data__=new A7;++a<u;)this.add(i[a])}AR.prototype.add=AR.prototype.push=WKt,AR.prototype.has=YKt;function XKt(i,a){for(var u=-1,d=i==null?0:i.length;++u<d;)if(a(i[u],u,i))return!0;return!1}function oUe(i,a){return i.has(a)}var QKt=1,JKt=2;function cUe(i,a,u,d,p,v){var b=u&QKt,y=i.length,E=a.length;if(y!=E&&!(b&&E>y))return!1;var _=v.get(i),A=v.get(a);if(_&&A)return _==a&&A==i;var P=-1,R=!0,B=u&JKt?new AR:void 0;for(v.set(i,a),v.set(a,i);++P<y;){var j=i[P],W=a[P];if(d)var ee=b?d(W,j,P,a,i,v):d(j,W,P,i,a,v);if(ee!==void 0){if(ee)continue;R=!1;break}if(B){if(!XKt(a,function(ie,oe){if(!oUe(B,oe)&&(j===ie||p(j,ie,u,d,v)))return B.push(oe)})){R=!1;break}}else if(!(j===W||p(j,W,u,d,v))){R=!1;break}}return v.delete(i),v.delete(a),R}function ZKt(i){var a=-1,u=Array(i.size);return i.forEach(function(d,p){u[++a]=[p,d]}),u}function bme(i){var a=-1,u=Array(i.size);return i.forEach(function(d){u[++a]=d}),u}var eWt=1,tWt=2,nWt="[object Boolean]",rWt="[object Date]",iWt="[object Error]",sWt="[object Map]",aWt="[object Number]",oWt="[object RegExp]",cWt="[object Set]",uWt="[object String]",lWt="[object Symbol]",hWt="[object ArrayBuffer]",fWt="[object DataView]",uUe=zv?zv.prototype:void 0,mme=uUe?uUe.valueOf:void 0;function dWt(i,a,u,d,p,v,b){switch(u){case fWt:if(i.byteLength!=a.byteLength||i.byteOffset!=a.byteOffset)return!1;i=i.buffer,a=a.buffer;case hWt:return!(i.byteLength!=a.byteLength||!v(new FX(i),new FX(a)));case nWt:case rWt:case aWt:return wD(+i,+a);case iWt:return i.name==a.name&&i.message==a.message;case oWt:case uWt:return i==a+"";case sWt:var y=ZKt;case cWt:var E=d&eWt;if(y||(y=bme),i.size!=a.size&&!E)return!1;var _=b.get(i);if(_)return _==a;d|=tWt,b.set(i,a);var A=cUe(y(i),y(a),d,p,v,b);return b.delete(i),A;case lWt:if(mme)return mme.call(i)==mme.call(a)}return!1}var gWt=1,pWt=Object.prototype,bWt=pWt.hasOwnProperty;function mWt(i,a,u,d,p,v){var b=u&gWt,y=pme(i),E=y.length,_=pme(a),A=_.length;if(E!=A&&!b)return!1;for(var P=E;P--;){var R=y[P];if(!(b?R in a:bWt.call(a,R)))return!1}var B=v.get(i),j=v.get(a);if(B&&j)return B==a&&j==i;var W=!0;v.set(i,a),v.set(a,i);for(var ee=b;++P<E;){R=y[P];var ie=i[R],oe=a[R];if(d)var be=b?d(oe,ie,R,a,i,v):d(ie,oe,R,i,a,v);if(!(be===void 0?ie===oe||p(ie,oe,u,d,v):be)){W=!1;break}ee||(ee=R=="constructor")}if(W&&!ee){var ge=i.constructor,ae=a.constructor;ge!=ae&&"constructor"in i&&"constructor"in a&&!(typeof ge=="function"&&ge instanceof ge&&typeof ae=="function"&&ae instanceof ae)&&(W=!1)}return v.delete(i),v.delete(a),W}var vWt=1,lUe="[object Arguments]",hUe="[object Array]",rJ="[object Object]",wWt=Object.prototype,fUe=wWt.hasOwnProperty;function yWt(i,a,u,d,p,v){var b=D0(i),y=D0(a),E=b?hUe:MD(i),_=y?hUe:MD(a);E=E==lUe?rJ:E,_=_==lUe?rJ:_;var A=E==rJ,P=_==rJ,R=E==_;if(R&&kD(i)){if(!kD(a))return!1;b=!0,A=!1}if(R&&!A)return v||(v=new $3),b||$X(i)?cUe(i,a,u,d,p,v):dWt(i,a,E,u,d,p,v);if(!(u&vWt)){var B=A&&fUe.call(i,"__wrapped__"),j=P&&fUe.call(a,"__wrapped__");if(B||j){var W=B?i.value():i,ee=j?a.value():a;return v||(v=new $3),p(W,ee,u,d,v)}}return R?(v||(v=new $3),mWt(i,a,u,d,p,v)):!1}function vme(i,a,u,d,p){return i===a?!0:i==null||a==null||!V4(i)&&!V4(a)?i!==i&&a!==a:yWt(i,a,u,d,vme,p)}var xWt=1,kWt=2;function TWt(i,a,u,d){var p=u.length,v=p,b=!d;if(i==null)return!v;for(i=Object(i);p--;){var y=u[p];if(b&&y[2]?y[1]!==i[y[0]]:!(y[0]in i))return!1}for(;++p<v;){y=u[p];var E=y[0],_=i[E],A=y[1];if(b&&y[2]){if(_===void 0&&!(E in i))return!1}else{var P=new $3;if(d)var R=d(_,A,E,i,a,P);if(!(R===void 0?vme(A,_,xWt|kWt,d,P):R))return!1}}return!0}function dUe(i){return i===i&&!dm(i)}function EWt(i){for(var a=xm(i),u=a.length;u--;){var d=a[u],p=i[d];a[u]=[d,p,dUe(p)]}return a}function gUe(i,a){return function(u){return u==null?!1:u[i]===a&&(a!==void 0||i in Object(u))}}function CWt(i){var a=EWt(i);return a.length==1&&a[0][2]?gUe(a[0][0],a[0][1]):function(u){return u===i||TWt(u,i,a)}}function SWt(i,a){return i!=null&&a in Object(i)}function pUe(i,a,u){a=eJ(a,i);for(var d=-1,p=a.length,v=!1;++d<p;){var b=SR(a[d]);if(!(v=i!=null&&u(i,b)))break;i=i[b]}return v||++d!=p?v:(p=i==null?0:i.length,!!p&&O2e(p)&&qX(b,p)&&(D0(i)||xD(i)))}function bUe(i,a){return i!=null&&pUe(i,a,SWt)}var _Wt=1,AWt=2;function LWt(i,a){return fme(i)&&dUe(a)?gUe(SR(i),a):function(u){var d=kGt(u,i);return d===void 0&&d===a?bUe(u,i):vme(a,d,_Wt|AWt)}}function MWt(i){return function(a){return a==null?void 0:a[i]}}function DWt(i){return function(a){return tJ(a,i)}}function IWt(i){return fme(i)?MWt(SR(i)):DWt(i)}function N9(i){return typeof i=="function"?i:i==null?NC:typeof i=="object"?D0(i)?LWt(i[0],i[1]):CWt(i):IWt(i)}function wme(i,a){return i&&M2e(i,a,xm)}function OWt(i,a){return function(u,d){if(u==null)return u;if(!y9(u))return i(u,d);for(var p=u.length,v=a?p:-1,b=Object(u);(a?v--:++v<p)&&d(b[v],v,b)!==!1;);return u}}var NWt=OWt(wme);const iJ=NWt;var PWt=function(){return j3.Date.now()};const mUe=PWt;var vUe=Object.prototype,BWt=vUe.hasOwnProperty,FWt=HX(function(i,a){i=Object(i);var u=-1,d=a.length,p=d>2?a[2]:void 0;for(p&&oR(a[0],a[1],p)&&(d=1);++u<d;)for(var v=a[u],b=OC(v),y=-1,E=b.length;++y<E;){var _=b[y],A=i[_];(A===void 0||wD(A,vUe[_])&&!BWt.call(i,_))&&(i[_]=v[_])}return i});const WD=FWt;function RWt(i,a,u){for(var d=-1,p=i==null?0:i.length;++d<p;)if(u(a,i[d]))return!0;return!1}function sJ(i){var a=i==null?0:i.length;return a?i[a-1]:void 0}function yme(i){return typeof i=="function"?i:NC}function Ar(i,a){var u=D0(i)?UHe:iJ;return u(i,yme(a))}function jWt(i,a){var u=[];return iJ(i,function(d,p,v){a(d,p,v)&&u.push(d)}),u}function $7(i,a){var u=D0(i)?WHe:jWt;return u(i,N9(a))}function $Wt(i){return function(a,u,d){var p=Object(a);if(!y9(a)){var v=N9(u);a=xm(a),u=function(y){return v(p[y],y,p)}}var b=i(a,u,d);return b>-1?p[v?a[b]:b]:void 0}}var zWt=Math.max;function qWt(i,a,u){var d=i==null?0:i.length;if(!d)return-1;var p=u==null?0:oGt(u);return p<0&&(p=zWt(d+p,0)),VHe(i,N9(a),p)}var HWt=$Wt(qWt);const xme=HWt;function wUe(i,a){var u=-1,d=y9(i)?Array(i.length):[];return iJ(i,function(p,v,b){d[++u]=a(p,v,b)}),d}function F0(i,a){var u=D0(i)?GD:wUe;return u(i,N9(a))}function UWt(i,a){return i==null?i:M2e(i,yme(a),OC)}function VWt(i,a){return i&&wme(i,yme(a))}function GWt(i,a){return i>a}var KWt=Object.prototype,WWt=KWt.hasOwnProperty;function YWt(i,a){return i!=null&&WWt.call(i,a)}function yUe(i,a){return i!=null&&pUe(i,a,YWt)}function XWt(i,a){return GD(a,function(u){return i[u]})}function z7(i){return i==null?[]:XWt(i,xm(i))}function Yf(i){return i===void 0}function xUe(i,a){return i<a}function aJ(i,a){var u={};return a=N9(a),wme(i,function(d,p,v){BX(u,p,a(d,p,v))}),u}function kme(i,a,u){for(var d=-1,p=i.length;++d<p;){var v=i[d],b=a(v);if(b!=null&&(y===void 0?b===b&&!VC(b):u(b,y)))var y=b,E=v}return E}function GC(i){return i&&i.length?kme(i,NC,GWt):void 0}function LR(i){return i&&i.length?kme(i,NC,xUe):void 0}function Tme(i,a){return i&&i.length?kme(i,N9(a),xUe):void 0}function QWt(i,a,u,d){if(!dm(i))return i;a=eJ(a,i);for(var p=-1,v=a.length,b=v-1,y=i;y!=null&&++p<v;){var E=SR(a[p]),_=u;if(E==="__proto__"||E==="constructor"||E==="prototype")return i;if(p!=b){var A=y[E];_=d?d(A,E,y):void 0,_===void 0&&(_=dm(A)?A:qX(a[p+1])?[]:{})}zX(y,E,_),y=y[E]}return i}function JWt(i,a,u){for(var d=-1,p=a.length,v={};++d<p;){var b=a[d],y=tJ(i,b);u(y,b)&&QWt(v,eJ(b,i),y)}return v}function ZWt(i,a){var u=i.length;for(i.sort(a);u--;)i[u]=i[u].value;return i}function eYt(i,a){if(i!==a){var u=i!==void 0,d=i===null,p=i===i,v=VC(i),b=a!==void 0,y=a===null,E=a===a,_=VC(a);if(!y&&!_&&!v&&i>a||v&&b&&E&&!y&&!_||d&&b&&E||!u&&E||!p)return 1;if(!d&&!v&&!_&&i<a||_&&u&&p&&!d&&!v||y&&u&&p||!b&&p||!E)return-1}return 0}function tYt(i,a,u){for(var d=-1,p=i.criteria,v=a.criteria,b=p.length,y=u.length;++d<b;){var E=eYt(p[d],v[d]);if(E){if(d>=y)return E;var _=u[d];return E*(_=="desc"?-1:1)}}return i.index-a.index}function nYt(i,a,u){a.length?a=GD(a,function(v){return D0(v)?function(b){return tJ(b,v.length===1?v[0]:v)}:v}):a=[NC];var d=-1;a=GD(a,jX(N9));var p=wUe(i,function(v,b,y){var E=GD(a,function(_){return _(v)});return{criteria:E,index:++d,value:v}});return ZWt(p,function(v,b){return tYt(v,b,u)})}function rYt(i,a){return JWt(i,a,function(u,d){return bUe(i,d)})}var iYt=EGt(function(i,a){return i==null?{}:rYt(i,a)});const MR=iYt;var sYt=Math.ceil,aYt=Math.max;function oYt(i,a,u,d){for(var p=-1,v=aYt(sYt((a-i)/(u||1)),0),b=Array(v);v--;)b[d?v:++p]=i,i+=u;return b}function cYt(i){return function(a,u,d){return d&&typeof d!="number"&&oR(a,u,d)&&(u=d=void 0),a=ZQ(a),u===void 0?(u=a,a=0):u=ZQ(u),d=d===void 0?a<u?1:-1:ZQ(d),oYt(a,u,d,i)}}var uYt=cYt();const KC=uYt;function lYt(i,a,u,d,p){return p(i,function(v,b,y){u=d?(d=!1,v):a(u,v,b,y)}),u}function DR(i,a,u){var d=D0(i)?CGt:lYt,p=arguments.length<3;return d(i,N9(a),u,p,iJ)}var hYt=HX(function(i,a){if(i==null)return[];var u=a.length;return u>1&&oR(i,a[0],a[1])?a=[]:u>2&&oR(a[0],a[1],a[2])&&(a=[a[0]]),nYt(i,nJ(a,1),[])});const IR=hYt;var fYt=1/0,dYt=LD&&1/bme(new LD([,-0]))[1]==fYt?function(i){return new LD(i)}:cGt;const gYt=dYt;var pYt=200;function bYt(i,a,u){var d=-1,p=fGt,v=i.length,b=!0,y=[],E=y;if(u)b=!1,p=RWt;else if(v>=pYt){var _=a?null:gYt(i);if(_)return bme(_);b=!1,p=oUe,E=new AR}else E=a?[]:y;e:for(;++d<v;){var A=i[d],P=a?a(A):A;if(A=u||A!==0?A:0,b&&P===P){for(var R=E.length;R--;)if(E[R]===P)continue e;a&&E.push(P),y.push(A)}else p(E,P,u)||(E!==y&&E.push(P),y.push(A))}return y}var mYt=HX(function(i){return bYt(nJ(i,1,xje,!0))});const vYt=mYt;var wYt=0;function oJ(i){var a=++wYt;return GHe(i)+a}function yYt(i,a,u){for(var d=-1,p=i.length,v=a.length,b={};++d<p;){var y=d<v?a[d]:void 0;u(b,i[d],y)}return b}function xYt(i,a){return yYt(i||[],a||[],zX)}var kYt="\0",WC="\0",kUe="";class R0{constructor(a={}){this._isDirected=Object.prototype.hasOwnProperty.call(a,"directed")?a.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(a,"multigraph")?a.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(a,"compound")?a.compound:!1,this._label=void 0,this._defaultNodeLabelFn=ED(void 0),this._defaultEdgeLabelFn=ED(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[WC]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(a){return this._label=a,this}graph(){return this._label}setDefaultNodeLabel(a){return vD(a)||(a=ED(a)),this._defaultNodeLabelFn=a,this}nodeCount(){return this._nodeCount}nodes(){return xm(this._nodes)}sources(){var a=this;return $7(this.nodes(),function(u){return gR(a._in[u])})}sinks(){var a=this;return $7(this.nodes(),function(u){return gR(a._out[u])})}setNodes(a,u){var d=arguments,p=this;return Ar(a,function(v){d.length>1?p.setNode(v,u):p.setNode(v)}),this}setNode(a,u){return Object.prototype.hasOwnProperty.call(this._nodes,a)?(arguments.length>1&&(this._nodes[a]=u),this):(this._nodes[a]=arguments.length>1?u:this._defaultNodeLabelFn(a),this._isCompound&&(this._parent[a]=WC,this._children[a]={},this._children[WC][a]=!0),this._in[a]={},this._preds[a]={},this._out[a]={},this._sucs[a]={},++this._nodeCount,this)}node(a){return this._nodes[a]}hasNode(a){return Object.prototype.hasOwnProperty.call(this._nodes,a)}removeNode(a){if(Object.prototype.hasOwnProperty.call(this._nodes,a)){var u=d=>this.removeEdge(this._edgeObjs[d]);delete this._nodes[a],this._isCompound&&(this._removeFromParentsChildList(a),delete this._parent[a],Ar(this.children(a),d=>{this.setParent(d)}),delete this._children[a]),Ar(xm(this._in[a]),u),delete this._in[a],delete this._preds[a],Ar(xm(this._out[a]),u),delete this._out[a],delete this._sucs[a],--this._nodeCount}return this}setParent(a,u){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Yf(u))u=WC;else{u+="";for(var d=u;!Yf(d);d=this.parent(d))if(d===a)throw new Error("Setting "+u+" as parent of "+a+" would create a cycle");this.setNode(u)}return this.setNode(a),this._removeFromParentsChildList(a),this._parent[a]=u,this._children[u][a]=!0,this}_removeFromParentsChildList(a){delete this._children[this._parent[a]][a]}parent(a){if(this._isCompound){var u=this._parent[a];if(u!==WC)return u}}children(a){if(Yf(a)&&(a=WC),this._isCompound){var u=this._children[a];if(u)return xm(u)}else{if(a===WC)return this.nodes();if(this.hasNode(a))return[]}}predecessors(a){var u=this._preds[a];if(u)return xm(u)}successors(a){var u=this._sucs[a];if(u)return xm(u)}neighbors(a){var u=this.predecessors(a);if(u)return vYt(u,this.successors(a))}isLeaf(a){var u;return this.isDirected()?u=this.successors(a):u=this.neighbors(a),u.length===0}filterNodes(a){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){a(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(a){return vD(a)||(a=ED(a)),this._defaultEdgeLabelFn=a,this}edgeCount(){return this._edgeCount}edges(){return z7(this._edgeObjs)}setPath(a,u){var d=this,p=arguments;return DR(a,function(v,b){return p.length>1?d.setEdge(v,b,u):d.setEdge(v,b),b}),this}setEdge(){var a,u,d,p,v=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(a=b.v,u=b.w,d=b.name,arguments.length===2&&(p=arguments[1],v=!0)):(a=b,u=arguments[1],d=arguments[3],arguments.length>2&&(p=arguments[2],v=!0)),a=""+a,u=""+u,Yf(d)||(d=""+d);var y=OR(this._isDirected,a,u,d);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,y))return v&&(this._edgeLabels[y]=p),this;if(!Yf(d)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(a),this.setNode(u),this._edgeLabels[y]=v?p:this._defaultEdgeLabelFn(a,u,d);var E=TYt(this._isDirected,a,u,d);return a=E.v,u=E.w,Object.freeze(E),this._edgeObjs[y]=E,TUe(this._preds[u],a),TUe(this._sucs[a],u),this._in[u][y]=E,this._out[a][y]=E,this._edgeCount++,this}edge(a,u,d){var p=arguments.length===1?Eme(this._isDirected,arguments[0]):OR(this._isDirected,a,u,d);return this._edgeLabels[p]}hasEdge(a,u,d){var p=arguments.length===1?Eme(this._isDirected,arguments[0]):OR(this._isDirected,a,u,d);return Object.prototype.hasOwnProperty.call(this._edgeLabels,p)}removeEdge(a,u,d){var p=arguments.length===1?Eme(this._isDirected,arguments[0]):OR(this._isDirected,a,u,d),v=this._edgeObjs[p];return v&&(a=v.v,u=v.w,delete this._edgeLabels[p],delete this._edgeObjs[p],EUe(this._preds[u],a),EUe(this._sucs[a],u),delete this._in[u][p],delete this._out[a][p],this._edgeCount--),this}inEdges(a,u){var d=this._in[a];if(d){var p=z7(d);return u?$7(p,function(v){return v.v===u}):p}}outEdges(a,u){var d=this._out[a];if(d){var p=z7(d);return u?$7(p,function(v){return v.w===u}):p}}nodeEdges(a,u){var d=this.inEdges(a,u);if(d)return d.concat(this.outEdges(a,u))}}R0.prototype._nodeCount=0,R0.prototype._edgeCount=0;function TUe(i,a){i[a]?i[a]++:i[a]=1}function EUe(i,a){--i[a]||delete i[a]}function OR(i,a,u,d){var p=""+a,v=""+u;if(!i&&p>v){var b=p;p=v,v=b}return p+kUe+v+kUe+(Yf(d)?kYt:d)}function TYt(i,a,u,d){var p=""+a,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 Eme(i,a){return OR(i,a.v,a.w,a.name)}class EYt{constructor(){var a={};a._next=a._prev=a,this._sentinel=a}dequeue(){var a=this._sentinel,u=a._prev;if(u!==a)return CUe(u),u}enqueue(a){var u=this._sentinel;a._prev&&a._next&&CUe(a),a._next=u._next,u._next._prev=a,u._next=a,a._prev=u}toString(){for(var a=[],u=this._sentinel,d=u._prev;d!==u;)a.push(JSON.stringify(d,CYt)),d=d._prev;return"["+a.join(", ")+"]"}}function CUe(i){i._prev._next=i._next,i._next._prev=i._prev,delete i._next,delete i._prev}function CYt(i,a){if(i!=="_next"&&i!=="_prev")return a}var SYt=ED(1);function _Yt(i,a){if(i.nodeCount()<=1)return[];var u=LYt(i,a||SYt),d=AYt(u.graph,u.buckets,u.zeroIdx);return KD(F0(d,function(p){return i.outEdges(p.v,p.w)}))}function AYt(i,a,u){for(var d=[],p=a[a.length-1],v=a[0],b;i.nodeCount();){for(;b=v.dequeue();)Cme(i,a,u,b);for(;b=p.dequeue();)Cme(i,a,u,b);if(i.nodeCount()){for(var y=a.length-2;y>0;--y)if(b=a[y].dequeue(),b){d=d.concat(Cme(i,a,u,b,!0));break}}}return d}function Cme(i,a,u,d,p){var v=p?[]:void 0;return Ar(i.inEdges(d.v),function(b){var y=i.edge(b),E=i.node(b.v);p&&v.push({v:b.v,w:b.w}),E.out-=y,Sme(a,u,E)}),Ar(i.outEdges(d.v),function(b){var y=i.edge(b),E=b.w,_=i.node(E);_.in-=y,Sme(a,u,_)}),i.removeNode(d.v),v}function LYt(i,a){var u=new R0,d=0,p=0;Ar(i.nodes(),function(y){u.setNode(y,{v:y,in:0,out:0})}),Ar(i.edges(),function(y){var E=u.edge(y.v,y.w)||0,_=a(y),A=E+_;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=KC(p+d+3).map(function(){return new EYt}),b=d+1;return Ar(u.nodes(),function(y){Sme(v,b,u.node(y))}),{graph:u,buckets:v,zeroIdx:b}}function Sme(i,a,u){u.out?u.in?i[u.out-u.in+a].enqueue(u):i[i.length-1].enqueue(u):i[0].enqueue(u)}function MYt(i){var a=i.graph().acyclicer==="greedy"?_Yt(i,u(i)):DYt(i);Ar(a,function(d){var p=i.edge(d);i.removeEdge(d),p.forwardName=d.name,p.reversed=!0,i.setEdge(d.w,d.v,p,oJ("rev"))});function u(d){return function(p){return d.edge(p).weight}}}function DYt(i){var a=[],u={},d={};function p(v){Object.prototype.hasOwnProperty.call(d,v)||(d[v]=!0,u[v]=!0,Ar(i.outEdges(v),function(b){Object.prototype.hasOwnProperty.call(u,b.w)?a.push(b):p(b.w)}),delete u[v])}return Ar(i.nodes(),p),a}function IYt(i){Ar(i.edges(),function(a){var u=i.edge(a);if(u.reversed){i.removeEdge(a);var d=u.forwardName;delete u.reversed,delete u.forwardName,i.setEdge(a.w,a.v,u,d)}})}function YD(i,a,u,d){var p;do p=oJ(d);while(i.hasNode(p));return u.dummy=a,i.setNode(p,u),p}function OYt(i){var a=new R0().setGraph(i.graph());return Ar(i.nodes(),function(u){a.setNode(u,i.node(u))}),Ar(i.edges(),function(u){var d=a.edge(u.v,u.w)||{weight:0,minlen:1},p=i.edge(u);a.setEdge(u.v,u.w,{weight:d.weight+p.weight,minlen:Math.max(d.minlen,p.minlen)})}),a}function SUe(i){var a=new R0({multigraph:i.isMultigraph()}).setGraph(i.graph());return Ar(i.nodes(),function(u){i.children(u).length||a.setNode(u,i.node(u))}),Ar(i.edges(),function(u){a.setEdge(u,i.edge(u))}),a}function _Ue(i,a){var u=i.x,d=i.y,p=a.x-u,v=a.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 E,_;return Math.abs(v)*b>Math.abs(p)*y?(v<0&&(y=-y),E=y*p/v,_=y):(p<0&&(b=-b),E=b,_=b*v/p),{x:u+E,y:d+_}}function cJ(i){var a=F0(KC(LUe(i)+1),function(){return[]});return Ar(i.nodes(),function(u){var d=i.node(u),p=d.rank;Yf(p)||(a[p][d.order]=u)}),a}function NYt(i){var a=LR(F0(i.nodes(),function(u){return i.node(u).rank}));Ar(i.nodes(),function(u){var d=i.node(u);yUe(d,"rank")&&(d.rank-=a)})}function PYt(i){var a=LR(F0(i.nodes(),function(v){return i.node(v).rank})),u=[];Ar(i.nodes(),function(v){var b=i.node(v).rank-a;u[b]||(u[b]=[]),u[b].push(v)});var d=0,p=i.graph().nodeRankFactor;Ar(u,function(v,b){Yf(v)&&b%p!==0?--d:d&&Ar(v,function(y){i.node(y).rank+=d})})}function AUe(i,a,u,d){var p={width:0,height:0};return arguments.length>=4&&(p.rank=u,p.order=d),YD(i,"border",p,a)}function LUe(i){return GC(F0(i.nodes(),function(a){var u=i.node(a).rank;if(!Yf(u))return u}))}function BYt(i,a){var u={lhs:[],rhs:[]};return Ar(i,function(d){a(d)?u.lhs.push(d):u.rhs.push(d)}),u}function FYt(i,a){var u=mUe();try{return a()}finally{console.log(i+" time: "+(mUe()-u)+"ms")}}function RYt(i,a){return a()}function jYt(i){function a(u){var d=i.children(u),p=i.node(u);if(d.length&&Ar(d,a),Object.prototype.hasOwnProperty.call(p,"minRank")){p.borderLeft=[],p.borderRight=[];for(var v=p.minRank,b=p.maxRank+1;v<b;++v)MUe(i,"borderLeft","_bl",u,p,v),MUe(i,"borderRight","_br",u,p,v)}}Ar(i.children(),a)}function MUe(i,a,u,d,p,v){var b={width:0,height:0,rank:v,borderType:a},y=p[a][v-1],E=YD(i,"border",b,u);p[a][v]=E,i.setParent(E,d),y&&i.setEdge(y,E,{weight:1})}function $Yt(i){var a=i.graph().rankdir.toLowerCase();(a==="lr"||a==="rl")&&DUe(i)}function zYt(i){var a=i.graph().rankdir.toLowerCase();(a==="bt"||a==="rl")&&qYt(i),(a==="lr"||a==="rl")&&(HYt(i),DUe(i))}function DUe(i){Ar(i.nodes(),function(a){IUe(i.node(a))}),Ar(i.edges(),function(a){IUe(i.edge(a))})}function IUe(i){var a=i.width;i.width=i.height,i.height=a}function qYt(i){Ar(i.nodes(),function(a){_me(i.node(a))}),Ar(i.edges(),function(a){var u=i.edge(a);Ar(u.points,_me),Object.prototype.hasOwnProperty.call(u,"y")&&_me(u)})}function _me(i){i.y=-i.y}function HYt(i){Ar(i.nodes(),function(a){Ame(i.node(a))}),Ar(i.edges(),function(a){var u=i.edge(a);Ar(u.points,Ame),Object.prototype.hasOwnProperty.call(u,"x")&&Ame(u)})}function Ame(i){var a=i.x;i.x=i.y,i.y=a}function UYt(i){i.graph().dummyChains=[],Ar(i.edges(),function(a){VYt(i,a)})}function VYt(i,a){var u=a.v,d=i.node(u).rank,p=a.w,v=i.node(p).rank,b=a.name,y=i.edge(a),E=y.labelRank;if(v!==d+1){i.removeEdge(a);var _=void 0,A,P;for(P=0,++d;d<v;++P,++d)y.points=[],_={width:0,height:0,edgeLabel:y,edgeObj:a,rank:d},A=YD(i,"edge",_,"_d"),d===E&&(_.width=y.width,_.height=y.height,_.dummy="edge-label",_.labelpos=y.labelpos),i.setEdge(u,A,{weight:y.weight},b),P===0&&i.graph().dummyChains.push(A),u=A;i.setEdge(u,p,{weight:y.weight},b)}}function GYt(i){Ar(i.graph().dummyChains,function(a){var u=i.node(a),d=u.edgeLabel,p;for(i.setEdge(u.edgeObj,d);u.dummy;)p=i.successors(a)[0],i.removeNode(a),d.points.push({x:u.x,y:u.y}),u.dummy==="edge-label"&&(d.x=u.x,d.y=u.y,d.width=u.width,d.height=u.height),a=p,u=i.node(a)})}function Lme(i){var a={};function u(d){var p=i.node(d);if(Object.prototype.hasOwnProperty.call(a,d))return p.rank;a[d]=!0;var v=LR(F0(i.outEdges(d),function(b){return u(b.w)-i.edge(b).minlen}));return(v===Number.POSITIVE_INFINITY||v===void 0||v===null)&&(v=0),p.rank=v}Ar(i.sources(),u)}function NR(i,a){return i.node(a.w).rank-i.node(a.v).rank-i.edge(a).minlen}function OUe(i){var a=new R0({directed:!1}),u=i.nodes()[0],d=i.nodeCount();a.setNode(u,{});for(var p,v;KYt(a,i)<d;)p=WYt(a,i),v=a.hasNode(p.v)?NR(i,p):-NR(i,p),YYt(a,i,v);return a}function KYt(i,a){function u(d){Ar(a.nodeEdges(d),function(p){var v=p.v,b=d===v?p.w:v;!i.hasNode(b)&&!NR(a,p)&&(i.setNode(b,{}),i.setEdge(d,b,{}),u(b))})}return Ar(i.nodes(),u),i.nodeCount()}function WYt(i,a){return Tme(a.edges(),function(u){if(i.hasNode(u.v)!==i.hasNode(u.w))return NR(a,u)})}function YYt(i,a,u){Ar(i.nodes(),function(d){a.node(d).rank+=u})}function XYt(){}XYt.prototype=new Error;function NUe(i,a,u){D0(a)||(a=[a]);var d=(i.isDirected()?i.successors:i.neighbors).bind(i),p=[],v={};return Ar(a,function(b){if(!i.hasNode(b))throw new Error("Graph does not have node: "+b);PUe(i,b,u==="post",v,d,p)}),p}function PUe(i,a,u,d,p,v){Object.prototype.hasOwnProperty.call(d,a)||(d[a]=!0,u||v.push(a),Ar(p(a),function(b){PUe(i,b,u,d,p,v)}),u&&v.push(a))}function QYt(i,a){return NUe(i,a,"post")}function JYt(i,a){return NUe(i,a,"pre")}YC.initLowLimValues=Dme,YC.initCutValues=Mme,YC.calcCutValue=BUe,YC.leaveEdge=RUe,YC.enterEdge=jUe,YC.exchangeEdges=$Ue;function YC(i){i=OYt(i),Lme(i);var a=OUe(i);Dme(a),Mme(a,i);for(var u,d;u=RUe(a);)d=jUe(a,i,u),$Ue(a,i,u,d)}function Mme(i,a){var u=QYt(i,i.nodes());u=u.slice(0,u.length-1),Ar(u,function(d){ZYt(i,a,d)})}function ZYt(i,a,u){var d=i.node(u),p=d.parent;i.edge(u,p).cutvalue=BUe(i,a,u)}function BUe(i,a,u){var d=i.node(u),p=d.parent,v=!0,b=a.edge(u,p),y=0;return b||(v=!1,b=a.edge(p,u)),y=b.weight,Ar(a.nodeEdges(u),function(E){var _=E.v===u,A=_?E.w:E.v;if(A!==p){var P=_===v,R=a.edge(E).weight;if(y+=P?R:-R,tXt(i,u,A)){var B=i.edge(u,A).cutvalue;y+=P?-B:B}}}),y}function Dme(i,a){arguments.length<2&&(a=i.nodes()[0]),FUe(i,{},1,a)}function FUe(i,a,u,d,p){var v=u,b=i.node(d);return a[d]=!0,Ar(i.neighbors(d),function(y){Object.prototype.hasOwnProperty.call(a,y)||(u=FUe(i,a,u,y,d))}),b.low=v,b.lim=u++,p?b.parent=p:delete b.parent,u}function RUe(i){return xme(i.edges(),function(a){return i.edge(a).cutvalue<0})}function jUe(i,a,u){var d=u.v,p=u.w;a.hasEdge(d,p)||(d=u.w,p=u.v);var v=i.node(d),b=i.node(p),y=v,E=!1;v.lim>b.lim&&(y=b,E=!0);var _=$7(a.edges(),function(A){return E===zUe(i,i.node(A.v),y)&&E!==zUe(i,i.node(A.w),y)});return Tme(_,function(A){return NR(a,A)})}function $Ue(i,a,u,d){var p=u.v,v=u.w;i.removeEdge(p,v),i.setEdge(d.v,d.w,{}),Dme(i),Mme(i,a),eXt(i,a)}function eXt(i,a){var u=xme(i.nodes(),function(p){return!a.node(p).parent}),d=JYt(i,u);d=d.slice(1),Ar(d,function(p){var v=i.node(p).parent,b=a.edge(p,v),y=!1;b||(b=a.edge(v,p),y=!0),a.node(p).rank=a.node(v).rank+(y?b.minlen:-b.minlen)})}function tXt(i,a,u){return i.hasEdge(a,u)}function zUe(i,a,u){return u.low<=a.lim&&a.lim<=u.lim}function nXt(i){switch(i.graph().ranker){case"network-simplex":qUe(i);break;case"tight-tree":iXt(i);break;case"longest-path":rXt(i);break;default:qUe(i)}}var rXt=Lme;function iXt(i){Lme(i),OUe(i)}function qUe(i){YC(i)}function sXt(i){var a=YD(i,"root",{},"_root"),u=aXt(i),d=GC(z7(u))-1,p=2*d+1;i.graph().nestingRoot=a,Ar(i.edges(),function(b){i.edge(b).minlen*=p});var v=oXt(i)+1;Ar(i.children(),function(b){HUe(i,a,p,v,d,u,b)}),i.graph().nodeRankFactor=p}function HUe(i,a,u,d,p,v,b){var y=i.children(b);if(!y.length){b!==a&&i.setEdge(a,b,{weight:0,minlen:u});return}var E=AUe(i,"_bt"),_=AUe(i,"_bb"),A=i.node(b);i.setParent(E,b),A.borderTop=E,i.setParent(_,b),A.borderBottom=_,Ar(y,function(P){HUe(i,a,u,d,p,v,P);var R=i.node(P),B=R.borderTop?R.borderTop:P,j=R.borderBottom?R.borderBottom:P,W=R.borderTop?d:2*d,ee=B!==j?1:p-v[b]+1;i.setEdge(E,B,{weight:W,minlen:ee,nestingEdge:!0}),i.setEdge(j,_,{weight:W,minlen:ee,nestingEdge:!0})}),i.parent(b)||i.setEdge(a,E,{weight:0,minlen:p+v[b]})}function aXt(i){var a={};function u(d,p){var v=i.children(d);v&&v.length&&Ar(v,function(b){u(b,p+1)}),a[d]=p}return Ar(i.children(),function(d){u(d,1)}),a}function oXt(i){return DR(i.edges(),function(a,u){return a+i.edge(u).weight},0)}function cXt(i){var a=i.graph();i.removeNode(a.nestingRoot),delete a.nestingRoot,Ar(i.edges(),function(u){var d=i.edge(u);d.nestingEdge&&i.removeEdge(u)})}function uXt(i,a,u){var d={},p;Ar(u,function(v){for(var b=i.parent(v),y,E;b;){if(y=i.parent(b),y?(E=d[y],d[y]=b):(E=p,p=b),E&&E!==b){a.setEdge(E,b);return}b=y}})}function lXt(i,a,u){var d=hXt(i),p=new R0({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===a||b.minRank<=a&&a<=b.maxRank)&&(p.setNode(v),p.setParent(v,y||d),Ar(i[u](v),function(E){var _=E.v===v?E.w:E.v,A=p.edge(_,v),P=Yf(A)?0:A.weight;p.setEdge(_,v,{weight:i.edge(E).weight+P})}),Object.prototype.hasOwnProperty.call(b,"minRank")&&p.setNode(v,{borderLeft:b.borderLeft[a],borderRight:b.borderRight[a]}))}),p}function hXt(i){for(var a;i.hasNode(a=oJ("_root")););return a}function fXt(i,a){for(var u=0,d=1;d<a.length;++d)u+=dXt(i,a[d-1],a[d]);return u}function dXt(i,a,u){for(var d=xYt(u,F0(u,function(_,A){return A})),p=KD(F0(a,function(_){return IR(F0(i.outEdges(_),function(A){return{pos:d[A.w],weight:i.edge(A).weight}}),"pos")})),v=1;v<u.length;)v<<=1;var b=2*v-1;v-=1;var y=F0(new Array(b),function(){return 0}),E=0;return Ar(p.forEach(function(_){var A=_.pos+v;y[A]+=_.weight;for(var P=0;A>0;)A%2&&(P+=y[A+1]),A=A-1>>1,y[A]+=_.weight;E+=_.weight*P})),E}function gXt(i){var a={},u=$7(i.nodes(),function(y){return!i.children(y).length}),d=GC(F0(u,function(y){return i.node(y).rank})),p=F0(KC(d+1),function(){return[]});function v(y){if(!yUe(a,y)){a[y]=!0;var E=i.node(y);p[E.rank].push(y),Ar(i.successors(y),v)}}var b=IR(u,function(y){return i.node(y).rank});return Ar(b,v),p}function pXt(i,a){return F0(a,function(u){var d=i.inEdges(u);if(d.length){var p=DR(d,function(v,b){var y=i.edge(b),E=i.node(b.v);return{sum:v.sum+y.weight*E.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 bXt(i,a){var u={};Ar(i,function(p,v){var b=u[p.v]={indegree:0,in:[],out:[],vs:[p.v],i:v};Yf(p.barycenter)||(b.barycenter=p.barycenter,b.weight=p.weight)}),Ar(a.edges(),function(p){var v=u[p.v],b=u[p.w];!Yf(v)&&!Yf(b)&&(b.indegree++,v.out.push(u[p.w]))});var d=$7(u,function(p){return!p.indegree});return mXt(d)}function mXt(i){var a=[];function u(v){return function(b){b.merged||(Yf(b.barycenter)||Yf(v.barycenter)||b.barycenter>=v.barycenter)&&vXt(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();a.push(p),Ar(p.in.reverse(),u(p)),Ar(p.out,d(p))}return F0($7(a,function(v){return!v.merged}),function(v){return MR(v,["vs","i","barycenter","weight"])})}function vXt(i,a){var u=0,d=0;i.weight&&(u+=i.barycenter*i.weight,d+=i.weight),a.weight&&(u+=a.barycenter*a.weight,d+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=u/d,i.weight=d,i.i=Math.min(a.i,i.i),a.merged=!0}function wXt(i,a){var u=BYt(i,function(A){return Object.prototype.hasOwnProperty.call(A,"barycenter")}),d=u.lhs,p=IR(u.rhs,function(A){return-A.i}),v=[],b=0,y=0,E=0;d.sort(yXt(!!a)),E=UUe(v,p,E),Ar(d,function(A){E+=A.vs.length,v.push(A.vs),b+=A.barycenter*A.weight,y+=A.weight,E=UUe(v,p,E)});var _={vs:KD(v)};return y&&(_.barycenter=b/y,_.weight=y),_}function UUe(i,a,u){for(var d;a.length&&(d=sJ(a)).i<=u;)a.pop(),i.push(d.vs),u++;return u}function yXt(i){return function(a,u){return a.barycenter<u.barycenter?-1:a.barycenter>u.barycenter?1:i?u.i-a.i:a.i-u.i}}function VUe(i,a,u,d){var p=i.children(a),v=i.node(a),b=v?v.borderLeft:void 0,y=v?v.borderRight:void 0,E={};b&&(p=$7(p,function(j){return j!==b&&j!==y}));var _=pXt(i,p);Ar(_,function(j){if(i.children(j.v).length){var W=VUe(i,j.v,u,d);E[j.v]=W,Object.prototype.hasOwnProperty.call(W,"barycenter")&&kXt(j,W)}});var A=bXt(_,u);xXt(A,E);var P=wXt(A,d);if(b&&(P.vs=KD([b,P.vs,y]),i.predecessors(b).length)){var R=i.node(i.predecessors(b)[0]),B=i.node(i.predecessors(y)[0]);Object.prototype.hasOwnProperty.call(P,"barycenter")||(P.barycenter=0,P.weight=0),P.barycenter=(P.barycenter*P.weight+R.order+B.order)/(P.weight+2),P.weight+=2}return P}function xXt(i,a){Ar(i,function(u){u.vs=KD(u.vs.map(function(d){return a[d]?a[d].vs:d}))})}function kXt(i,a){Yf(i.barycenter)?(i.barycenter=a.barycenter,i.weight=a.weight):(i.barycenter=(i.barycenter*i.weight+a.barycenter*a.weight)/(i.weight+a.weight),i.weight+=a.weight)}function TXt(i){var a=LUe(i),u=GUe(i,KC(1,a+1),"inEdges"),d=GUe(i,KC(a-1,-1,-1),"outEdges"),p=gXt(i);KUe(i,p);for(var v=Number.POSITIVE_INFINITY,b,y=0,E=0;E<4;++y,++E){EXt(y%2?u:d,y%4>=2),p=cJ(i);var _=fXt(i,p);_<v&&(E=0,b=GKt(p),v=_)}KUe(i,b)}function GUe(i,a,u){return F0(a,function(d){return lXt(i,d,u)})}function EXt(i,a){var u=new R0;Ar(i,function(d){var p=d.graph().root,v=VUe(d,p,u,a);Ar(v.vs,function(b,y){d.node(b).order=y}),uXt(d,u,v.vs)})}function KUe(i,a){Ar(a,function(u){Ar(u,function(d,p){i.node(d).order=p})})}function CXt(i){var a=_Xt(i);Ar(i.graph().dummyChains,function(u){for(var d=i.node(u),p=d.edgeObj,v=SXt(i,a,p.v,p.w),b=v.path,y=v.lca,E=0,_=b[E],A=!0;u!==p.w;){if(d=i.node(u),A){for(;(_=b[E])!==y&&i.node(_).maxRank<d.rank;)E++;_===y&&(A=!1)}if(!A){for(;E<b.length-1&&i.node(_=b[E+1]).minRank<=d.rank;)E++;_=b[E]}i.setParent(u,_),u=i.successors(u)[0]}})}function SXt(i,a,u,d){var p=[],v=[],b=Math.min(a[u].low,a[d].low),y=Math.max(a[u].lim,a[d].lim),E,_;E=u;do E=i.parent(E),p.push(E);while(E&&(a[E].low>b||y>a[E].lim));for(_=E,E=d;(E=i.parent(E))!==_;)v.push(E);return{path:p.concat(v.reverse()),lca:_}}function _Xt(i){var a={},u=0;function d(p){var v=u;Ar(i.children(p),d),a[p]={low:v,lim:u++}}return Ar(i.children(),d),a}function AXt(i,a){var u={};function d(p,v){var b=0,y=0,E=p.length,_=sJ(v);return Ar(v,function(A,P){var R=MXt(i,A),B=R?i.node(R).order:E;(R||A===_)&&(Ar(v.slice(y,P+1),function(j){Ar(i.predecessors(j),function(W){var ee=i.node(W),ie=ee.order;(ie<b||B<ie)&&!(ee.dummy&&i.node(j).dummy)&&WUe(u,W,j)})}),y=P+1,b=B)}),v}return DR(a,d),u}function LXt(i,a){var u={};function d(v,b,y,E,_){var A;Ar(KC(b,y),function(P){A=v[P],i.node(A).dummy&&Ar(i.predecessors(A),function(R){var B=i.node(R);B.dummy&&(B.order<E||B.order>_)&&WUe(u,R,A)})})}function p(v,b){var y=-1,E,_=0;return Ar(b,function(A,P){if(i.node(A).dummy==="border"){var R=i.predecessors(A);R.length&&(E=i.node(R[0]).order,d(b,_,P,y,E),_=P,y=E)}d(b,_,b.length,E,v.length)}),b}return DR(a,p),u}function MXt(i,a){if(i.node(a).dummy)return xme(i.predecessors(a),function(u){return i.node(u).dummy})}function WUe(i,a,u){if(a>u){var d=a;a=u,u=d}Object.prototype.hasOwnProperty.call(i,a)||Object.defineProperty(i,a,{enumerable:!0,configurable:!0,value:{},writable:!0});var p=i[a];Object.defineProperty(p,u,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function DXt(i,a,u){if(a>u){var d=a;a=u,u=d}return!!i[a]&&Object.prototype.hasOwnProperty.call(i[a],u)}function IXt(i,a,u,d){var p={},v={},b={};return Ar(a,function(y){Ar(y,function(E,_){p[E]=E,v[E]=E,b[E]=_})}),Ar(a,function(y){var E=-1;Ar(y,function(_){var A=d(_);if(A.length){A=IR(A,function(W){return b[W]});for(var P=(A.length-1)/2,R=Math.floor(P),B=Math.ceil(P);R<=B;++R){var j=A[R];v[_]===_&&E<b[j]&&!DXt(u,_,j)&&(v[j]=_,v[_]=p[_]=p[j],E=b[j])}}})}),{root:p,align:v}}function OXt(i,a,u,d,p){var v={},b=NXt(i,a,u,p),y=p?"borderLeft":"borderRight";function E(P,R){for(var B=b.nodes(),j=B.pop(),W={};j;)W[j]?P(j):(W[j]=!0,B.push(j),B=B.concat(R(j))),j=B.pop()}function _(P){v[P]=b.inEdges(P).reduce(function(R,B){return Math.max(R,v[B.v]+b.edge(B))},0)}function A(P){var R=b.outEdges(P).reduce(function(j,W){return Math.min(j,v[W.w]-b.edge(W))},Number.POSITIVE_INFINITY),B=i.node(P);R!==Number.POSITIVE_INFINITY&&B.borderType!==y&&(v[P]=Math.max(v[P],R))}return E(_,b.predecessors.bind(b)),E(A,b.successors.bind(b)),Ar(d,function(P){v[P]=v[u[P]]}),v}function NXt(i,a,u,d){var p=new R0,v=i.graph(),b=jXt(v.nodesep,v.edgesep,d);return Ar(a,function(y){var E;Ar(y,function(_){var A=u[_];if(p.setNode(A),E){var P=u[E],R=p.edge(P,A);p.setEdge(P,A,Math.max(b(i,_,E),R||0))}E=_})}),p}function PXt(i,a){return Tme(z7(a),function(u){var d=Number.NEGATIVE_INFINITY,p=Number.POSITIVE_INFINITY;return UWt(u,function(v,b){var y=$Xt(i,b)/2;d=Math.max(v+y,d),p=Math.min(v-y,p)}),d-p})}function BXt(i,a){var u=z7(a),d=LR(u),p=GC(u);Ar(["u","d"],function(v){Ar(["l","r"],function(b){var y=v+b,E=i[y],_;if(E!==a){var A=z7(E);_=b==="l"?d-LR(A):p-GC(A),_&&(i[y]=aJ(E,function(P){return P+_}))}})})}function FXt(i,a){return aJ(i.ul,function(u,d){if(a)return i[a.toLowerCase()][d];var p=IR(F0(i,d));return(p[1]+p[2])/2})}function RXt(i){var a=cJ(i),u=UX(AXt(i,a),LXt(i,a)),d={},p;Ar(["u","d"],function(b){p=b==="u"?a:z7(a).reverse(),Ar(["l","r"],function(y){y==="r"&&(p=F0(p,function(P){return z7(P).reverse()}));var E=(b==="u"?i.predecessors:i.successors).bind(i),_=IXt(i,p,u,E),A=OXt(i,p,_.root,_.align,y==="r");y==="r"&&(A=aJ(A,function(P){return-P})),d[b+y]=A})});var v=PXt(i,d);return BXt(d,v),FXt(d,i.graph().align)}function jXt(i,a,u){return function(d,p,v){var b=d.node(p),y=d.node(v),E=0,_;if(E+=b.width/2,Object.prototype.hasOwnProperty.call(b,"labelpos"))switch(b.labelpos.toLowerCase()){case"l":_=-b.width/2;break;case"r":_=b.width/2;break}if(_&&(E+=u?_:-_),_=0,E+=(b.dummy?a:i)/2,E+=(y.dummy?a:i)/2,E+=y.width/2,Object.prototype.hasOwnProperty.call(y,"labelpos"))switch(y.labelpos.toLowerCase()){case"l":_=y.width/2;break;case"r":_=-y.width/2;break}return _&&(E+=u?_:-_),_=0,E}}function $Xt(i,a){return i.node(a).width}function zXt(i){i=SUe(i),qXt(i),VWt(RXt(i),function(a,u){i.node(u).x=a})}function qXt(i){var a=cJ(i),u=i.graph().ranksep,d=0;Ar(a,function(p){var v=GC(F0(p,function(b){return i.node(b).height}));Ar(p,function(b){i.node(b).y=d+v/2}),d+=v+u})}function XD(i,a){var u=a&&a.debugTiming?FYt:RYt;u("layout",()=>{var d=u(" buildLayoutGraph",()=>ZXt(i));u(" runLayout",()=>HXt(d,u)),u(" updateInputGraph",()=>UXt(i,d))})}function HXt(i,a){a(" makeSpaceForEdgeLabels",()=>eQt(i)),a(" removeSelfEdges",()=>uQt(i)),a(" acyclic",()=>MYt(i)),a(" nestingGraph.run",()=>sXt(i)),a(" rank",()=>nXt(SUe(i))),a(" injectEdgeLabelProxies",()=>tQt(i)),a(" removeEmptyRanks",()=>PYt(i)),a(" nestingGraph.cleanup",()=>cXt(i)),a(" normalizeRanks",()=>NYt(i)),a(" assignRankMinMax",()=>nQt(i)),a(" removeEdgeLabelProxies",()=>rQt(i)),a(" normalize.run",()=>UYt(i)),a(" parentDummyChains",()=>CXt(i)),a(" addBorderSegments",()=>jYt(i)),a(" order",()=>TXt(i)),a(" insertSelfEdges",()=>lQt(i)),a(" adjustCoordinateSystem",()=>$Yt(i)),a(" position",()=>zXt(i)),a(" positionSelfEdges",()=>hQt(i)),a(" removeBorderNodes",()=>cQt(i)),a(" normalize.undo",()=>GYt(i)),a(" fixupEdgeLabelCoords",()=>aQt(i)),a(" undoCoordinateSystem",()=>zYt(i)),a(" translateGraph",()=>iQt(i)),a(" assignNodeIntersects",()=>sQt(i)),a(" reversePoints",()=>oQt(i)),a(" acyclic.undo",()=>IYt(i))}function UXt(i,a){Ar(i.nodes(),function(u){var d=i.node(u),p=a.node(u);d&&(d.x=p.x,d.y=p.y,a.children(u).length&&(d.width=p.width,d.height=p.height))}),Ar(i.edges(),function(u){var d=i.edge(u),p=a.edge(u);d.points=p.points,Object.prototype.hasOwnProperty.call(p,"x")&&(d.x=p.x,d.y=p.y)}),i.graph().width=a.graph().width,i.graph().height=a.graph().height}var VXt=["nodesep","edgesep","ranksep","marginx","marginy"],GXt={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},KXt=["acyclicer","ranker","rankdir","align"],WXt=["width","height"],YXt={width:0,height:0},XXt=["minlen","weight","width","height","labeloffset"],QXt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},JXt=["labelpos"];function ZXt(i){var a=new R0({multigraph:!0,compound:!0}),u=Ome(i.graph());return a.setGraph(UX({},GXt,Ime(u,VXt),MR(u,KXt))),Ar(i.nodes(),function(d){var p=Ome(i.node(d));a.setNode(d,WD(Ime(p,WXt),YXt)),a.setParent(d,i.parent(d))}),Ar(i.edges(),function(d){var p=Ome(i.edge(d));a.setEdge(d,UX({},QXt,Ime(p,XXt),MR(p,JXt)))}),a}function eQt(i){var a=i.graph();a.ranksep/=2,Ar(i.edges(),function(u){var d=i.edge(u);d.minlen*=2,d.labelpos.toLowerCase()!=="c"&&(a.rankdir==="TB"||a.rankdir==="BT"?d.width+=d.labeloffset:d.height+=d.labeloffset)})}function tQt(i){Ar(i.edges(),function(a){var u=i.edge(a);if(u.width&&u.height){var d=i.node(a.v),p=i.node(a.w),v={rank:(p.rank-d.rank)/2+d.rank,e:a};YD(i,"edge-proxy",v,"_ep")}})}function nQt(i){var a=0;Ar(i.nodes(),function(u){var d=i.node(u);d.borderTop&&(d.minRank=i.node(d.borderTop).rank,d.maxRank=i.node(d.borderBottom).rank,a=GC(a,d.maxRank))}),i.graph().maxRank=a}function rQt(i){Ar(i.nodes(),function(a){var u=i.node(a);u.dummy==="edge-proxy"&&(i.edge(u.e).labelRank=u.rank,i.removeNode(a))})}function iQt(i){var a=Number.POSITIVE_INFINITY,u=0,d=Number.POSITIVE_INFINITY,p=0,v=i.graph(),b=v.marginx||0,y=v.marginy||0;function E(_){var A=_.x,P=_.y,R=_.width,B=_.height;a=Math.min(a,A-R/2),u=Math.max(u,A+R/2),d=Math.min(d,P-B/2),p=Math.max(p,P+B/2)}Ar(i.nodes(),function(_){E(i.node(_))}),Ar(i.edges(),function(_){var A=i.edge(_);Object.prototype.hasOwnProperty.call(A,"x")&&E(A)}),a-=b,d-=y,Ar(i.nodes(),function(_){var A=i.node(_);A.x-=a,A.y-=d}),Ar(i.edges(),function(_){var A=i.edge(_);Ar(A.points,function(P){P.x-=a,P.y-=d}),Object.prototype.hasOwnProperty.call(A,"x")&&(A.x-=a),Object.prototype.hasOwnProperty.call(A,"y")&&(A.y-=d)}),v.width=u-a+b,v.height=p-d+y}function sQt(i){Ar(i.edges(),function(a){var u=i.edge(a),d=i.node(a.v),p=i.node(a.w),v,b;u.points?(v=u.points[0],b=u.points[u.points.length-1]):(u.points=[],v=p,b=d),u.points.unshift(_Ue(d,v)),u.points.push(_Ue(p,b))})}function aQt(i){Ar(i.edges(),function(a){var u=i.edge(a);if(Object.prototype.hasOwnProperty.call(u,"x"))switch((u.labelpos==="l"||u.labelpos==="r")&&(u.width-=u.labeloffset),u.labelpos){case"l":u.x-=u.width/2+u.labeloffset;break;case"r":u.x+=u.width/2+u.labeloffset;break}})}function oQt(i){Ar(i.edges(),function(a){var u=i.edge(a);u.reversed&&u.points.reverse()})}function cQt(i){Ar(i.nodes(),function(a){if(i.children(a).length){var u=i.node(a),d=i.node(u.borderTop),p=i.node(u.borderBottom),v=i.node(sJ(u.borderLeft)),b=i.node(sJ(u.borderRight));u.width=Math.abs(b.x-v.x),u.height=Math.abs(p.y-d.y),u.x=v.x+u.width/2,u.y=d.y+u.height/2}}),Ar(i.nodes(),function(a){i.node(a).dummy==="border"&&i.removeNode(a)})}function uQt(i){Ar(i.edges(),function(a){if(a.v===a.w){var u=i.node(a.v);u.selfEdges||(u.selfEdges=[]),u.selfEdges.push({e:a,label:i.edge(a)}),i.removeEdge(a)}})}function lQt(i){var a=cJ(i);Ar(a,function(u){var d=0;Ar(u,function(p,v){var b=i.node(p);b.order=v+d,Ar(b.selfEdges,function(y){YD(i,"selfedge",{width:y.label.width,height:y.label.height,rank:b.rank,order:v+ ++d,e:y.e,label:y.label},"_se")}),delete b.selfEdges})})}function hQt(i){Ar(i.nodes(),function(a){var u=i.node(a);if(u.dummy==="selfedge"){var d=i.node(u.e.v),p=d.x+d.width/2,v=d.y,b=u.x-p,y=d.height/2;i.setEdge(u.e,u.label),i.removeNode(a),u.label.points=[{x:p+2*b/3,y:v-y},{x:p+5*b/6,y:v-y},{x:p+b,y:v},{x:p+5*b/6,y:v+y},{x:p+2*b/3,y:v+y}],u.label.x=u.x,u.label.y=u.y}})}function Ime(i,a){return aJ(MR(i,a),Number)}function Ome(i){var a={};return Ar(i,function(u,d){a[d.toLowerCase()]=u}),a}function YUe(i,a){return!!i.children(a).length}function XUe(i){return Nme(i.v)+":"+Nme(i.w)+":"+Nme(i.name)}var fQt=/:/g;function Nme(i){return i?String(i).replace(fQt,"\\:"):""}function t5(i,a){a&&i.attr("style",a)}function QUe(i,a,u){a&&i.attr("class",a).attr("class",u+" "+i.attr("class"))}function G3(i,a){var u=a.graph();if(Sje(u)){var d=u.transition;if(vD(d))return d(i)}return i}var Pme={normal:gQt,vee:pQt,undirected:bQt};function dQt(i){Pme=i}function gQt(i,a,u,d){var p=i.append("marker").attr("id",a).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),v=p.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");t5(v,u[d+"Style"]),u[d+"Class"]&&v.attr("class",u[d+"Class"])}function pQt(i,a,u,d){var p=i.append("marker").attr("id",a).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),v=p.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");t5(v,u[d+"Style"]),u[d+"Class"]&&v.attr("class",u[d+"Class"])}function bQt(i,a,u,d){var p=i.append("marker").attr("id",a).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),v=p.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");t5(v,u[d+"Style"]),u[d+"Class"]&&v.attr("class",u[d+"Class"])}function Bme(i,a){var u=i.append("foreignObject").attr("width","100000"),d=u.append("xhtml:div");d.attr("xmlns","http://www.w3.org/1999/xhtml");var p=a.label;switch(typeof p){case"function":d.insert(p);break;case"object":d.insert(function(){return p});break;default:d.html(p)}t5(d,a.labelStyle),d.style("display","inline-block"),d.style("white-space","nowrap");var v=d.node().getBoundingClientRect();return u.attr("width",v.width).attr("height",v.height),u}function mQt(i,a){var u=i;return u.node().appendChild(a.label),t5(u,a.labelStyle),u}function vQt(i,a){for(var u=i.append("text"),d=wQt(a.label).split(`364`),p=0;p<d.length;p++)u.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(d[p]);return t5(u,a.labelStyle),u}function wQt(i){for(var a="",u=!1,d,p=0;p<i.length;++p)if(d=i[p],u){switch(d){case"n":a+=`365`;break;default:a+=d}u=!1}else d==="\\"?u=!0:a+=d;return a}function Fme(i,a,u){var d=a.label,p=i.append("g");a.labelType==="svg"?mQt(p,a):typeof d!="string"||a.labelType==="html"?Bme(p,a):vQt(p,a);var v=p.node().getBBox(),b;switch(u){case"top":b=-a.height/2;break;case"bottom":b=a.height/2-v.height;break;default:b=-v.height/2}return p.attr("transform","translate("+-v.width/2+","+b+")"),p}var Rme=function(i,a){var u=a.nodes().filter(function(v){return YUe(a,v)}),d=i.selectAll("g.cluster").data(u,function(v){return v});G3(d.exit(),a).style("opacity",0).remove();var p=d.enter().append("g").attr("class","cluster").attr("id",function(v){var b=a.node(v);return b.id}).style("opacity",0).each(function(v){var b=a.node(v),y=Dr(this);Dr(this).append("rect");var E=y.append("g").attr("class","label");Fme(E,b,b.clusterLabelPos)});return d=d.merge(p),d=G3(d,a).style("opacity",1),d.selectAll("rect").each(function(v){var b=a.node(v),y=Dr(this);t5(y,b.style)}),d};function yQt(i){Rme=i}let jme=function(i,a){var u=i.selectAll("g.edgeLabel").data(a.edges(),function(p){return XUe(p)}).classed("update",!0);u.exit().remove(),u.enter().append("g").classed("edgeLabel",!0).style("opacity",0),u=i.selectAll("g.edgeLabel"),u.each(function(p){var v=Dr(this);v.select(".label").remove();var b=a.edge(p),y=Fme(v,a.edge(p),0).classed("label",!0),E=y.node().getBBox();b.labelId&&y.attr("id",b.labelId),Object.prototype.hasOwnProperty.call(b,"width")||(b.width=E.width),Object.prototype.hasOwnProperty.call(b,"height")||(b.height=E.height)});var d;return u.exit?d=u.exit():d=u.selectAll(null),G3(d,a).style("opacity",0).remove(),u};function xQt(i){jme=i}function JUe(i,a){return i.intersect(a)}var $me=function(i,a,u){var d=i.selectAll("g.edgePath").data(a.edges(),function(b){return XUe(b)}).classed("update",!0),p=SQt(d,a);_Qt(d,a);var v=d.merge!==void 0?d.merge(p):d;return G3(v,a).style("opacity",1),v.each(function(b){var y=Dr(this),E=a.edge(b);E.elem=this,E.id&&y.attr("id",E.id),QUe(y,E.class,(y.classed("update")?"update ":"")+"edgePath")}),v.selectAll("path.path").each(function(b){var y=a.edge(b);y.arrowheadId=oJ("arrowhead");var E=Dr(this).attr("marker-end",function(){return"url("+TQt(location.href,y.arrowheadId)+")"}).style("fill","none");G3(E,a).attr("d",function(_){return EQt(a,_)}),t5(E,y.style)}),v.selectAll("defs *").remove(),v.selectAll("defs").each(function(b){var y=a.edge(b),E=u[y.arrowhead];E(Dr(this),y.arrowheadId,y,"arrowhead")}),v};function kQt(i){$me=i}function TQt(i,a){var u=i.split("#")[0];return u+"#"+a}function EQt(i,a){var u=i.edge(a),d=i.node(a.v),p=i.node(a.w),v=u.points.slice(1,u.points.length-1);return v.unshift(JUe(d,v[0])),v.push(JUe(p,v[v.length-1])),ZUe(u,v)}function ZUe(i,a){var u=(E7||hOt.line)().x(function(d){return d.x}).y(function(d){return d.y});return(u.curve||u.interpolate)(i.curve),u(a)}function CQt(i){var a=i.getBBox(),u=i.ownerSVGElement.getScreenCTM().inverse().multiply(i.getScreenCTM()).translate(a.width/2,a.height/2);return{x:u.e,y:u.f}}function SQt(i,a){var u=i.enter().append("g").attr("class","edgePath").style("opacity",0);return u.append("path").attr("class","path").attr("d",function(d){var p=a.edge(d),v=a.node(d.v).elem,b=KC(p.points.length).map(function(){return CQt(v)});return ZUe(p,b)}),u.append("defs"),u}function _Qt(i,a){var u=i.exit();G3(u,a).style("opacity",0).remove()}var zme=function(i,a,u){var d=a.nodes().filter(function(b){return!YUe(a,b)}),p=i.selectAll("g.node").data(d,function(b){return b}).classed("update",!0);p.exit().remove(),p.enter().append("g").attr("class","node").style("opacity",0),p=i.selectAll("g.node"),p.each(function(b){var y=a.node(b),E=Dr(this);QUe(E,y.class,(E.classed("update")?"update ":"")+"node"),E.select("g.label").remove();var _=E.append("g").attr("class","label"),A=Fme(_,y),P=u[y.shape],R=MR(A.node().getBBox(),"width","height");y.elem=this,y.id&&E.attr("id",y.id),y.labelId&&_.attr("id",y.labelId),Object.prototype.hasOwnProperty.call(y,"width")&&(R.width=y.width),Object.prototype.hasOwnProperty.call(y,"height")&&(R.height=y.height),R.width+=y.paddingLeft+y.paddingRight,R.height+=y.paddingTop+y.paddingBottom,_.attr("transform","translate("+(y.paddingLeft-y.paddingRight)/2+","+(y.paddingTop-y.paddingBottom)/2+")");var B=Dr(this);B.select(".label-container").remove();var j=P(B,R,y).classed("label-container",!0);t5(j,y.style);var W=j.node().getBBox();y.width=W.width,y.height=W.height});var v;return p.exit?v=p.exit():v=p.selectAll(null),G3(v,a).style("opacity",0).remove(),p};function AQt(i){zme=i}function LQt(i,a){var u=i.filter(function(){return!Dr(this).classed("update")});function d(p){var v=a.node(p);return"translate("+v.x+","+v.y+")"}u.attr("transform",d),G3(i,a).style("opacity",1).attr("transform",d),G3(u.selectAll("rect"),a).attr("width",function(p){return a.node(p).width}).attr("height",function(p){return a.node(p).height}).attr("x",function(p){var v=a.node(p);return-v.width/2}).attr("y",function(p){var v=a.node(p);return-v.height/2})}function MQt(i,a){var u=i.filter(function(){return!Dr(this).classed("update")});function d(p){var v=a.edge(p);return Object.prototype.hasOwnProperty.call(v,"x")?"translate("+v.x+","+v.y+")":""}u.attr("transform",d),G3(i,a).style("opacity",1).attr("transform",d)}function DQt(i,a){var u=i.filter(function(){return!Dr(this).classed("update")});function d(p){var v=a.node(p);return"translate("+v.x+","+v.y+")"}u.attr("transform",d),G3(i,a).style("opacity",1).attr("transform",d)}function eVe(i,a,u,d){var p=i.x,v=i.y,b=p-d.x,y=v-d.y,E=Math.sqrt(a*a*y*y+u*u*b*b),_=Math.abs(a*u*b/E);d.x<p&&(_=-_);var A=Math.abs(a*u*y/E);return d.y<v&&(A=-A),{x:p+_,y:v+A}}function IQt(i,a,u){return eVe(i,a,a,u)}function OQt(i,a,u,d){var p,v,b,y,E,_,A,P,R,B,j,W,ee,ie,oe;if(p=a.y-i.y,b=i.x-a.x,E=a.x*i.y-i.x*a.y,R=p*u.x+b*u.y+E,B=p*d.x+b*d.y+E,!(R!==0&&B!==0&&tVe(R,B))&&(v=d.y-u.y,y=u.x-d.x,_=d.x*u.y-u.x*d.y,A=v*i.x+y*i.y+_,P=v*a.x+y*a.y+_,!(A!==0&&P!==0&&tVe(A,P))&&(j=p*y-v*b,j!==0)))return W=Math.abs(j/2),ee=b*_-y*E,ie=ee<0?(ee-W)/j:(ee+W)/j,ee=v*E-p*_,oe=ee<0?(ee-W)/j:(ee+W)/j,{x:ie,y:oe}}function tVe(i,a){return i*a>0}function n5(i,a,u){var d=i.x,p=i.y,v=[],b=Number.POSITIVE_INFINITY,y=Number.POSITIVE_INFINITY;a.forEach(function(j){b=Math.min(b,j.x),y=Math.min(y,j.y)});for(var E=d-i.width/2-b,_=p-i.height/2-y,A=0;A<a.length;A++){var P=a[A],R=a[A<a.length-1?A+1:0],B=OQt(i,u,{x:E+P.x,y:_+P.y},{x:E+R.x,y:_+R.y});B&&v.push(B)}return v.length?(v.length>1&&v.sort(function(j,W){var ee=j.x-u.x,ie=j.y-u.y,oe=Math.sqrt(ee*ee+ie*ie),be=W.x-u.x,ge=W.y-u.y,ae=Math.sqrt(be*be+ge*ge);return oe<ae?-1:oe===ae?0:1}),v[0]):(console.log("NO INTERSECTION FOUND, RETURN NODE CENTER",i),i)}function qme(i,a){var u=i.x,d=i.y,p=a.x-u,v=a.y-d,b=i.width/2,y=i.height/2,E,_;return Math.abs(v)*b>Math.abs(p)*y?(v<0&&(y=-y),E=v===0?0:y*p/v,_=y):(p<0&&(b=-b),E=b,_=p===0?0:b*v/p),{x:u+E,y:d+_}}var Hme={rect:PQt,ellipse:BQt,circle:FQt,diamond:RQt};function NQt(i){Hme=i}function PQt(i,a,u){var d=i.insert("rect",":first-child").attr("rx",u.rx).attr("ry",u.ry).attr("x",-a.width/2).attr("y",-a.height/2).attr("width",a.width).attr("height",a.height);return u.intersect=function(p){return qme(u,p)},d}function BQt(i,a,u){var d=a.width/2,p=a.height/2,v=i.insert("ellipse",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("rx",d).attr("ry",p);return u.intersect=function(b){return eVe(u,d,p,b)},v}function FQt(i,a,u){var d=Math.max(a.width,a.height)/2,p=i.insert("circle",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("r",d);return u.intersect=function(v){return IQt(u,d,v)},p}function RQt(i,a,u){var d=a.width*Math.SQRT2/2,p=a.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 n5(u,v,y)},b}function jQt(){var i=function(a,u){qQt(u);var d=PR(a,"output"),p=PR(d,"clusters"),v=PR(d,"edgePaths"),b=jme(PR(d,"edgeLabels"),u),y=zme(PR(d,"nodes"),u,Hme);XD(u),DQt(y,u),MQt(b,u),$me(v,u,Pme);var E=Rme(p,u);LQt(E,u),HQt(u)};return i.createNodes=function(a){return arguments.length?(AQt(a),i):zme},i.createClusters=function(a){return arguments.length?(yQt(a),i):Rme},i.createEdgeLabels=function(a){return arguments.length?(xQt(a),i):jme},i.createEdgePaths=function(a){return arguments.length?(kQt(a),i):$me},i.shapes=function(a){return arguments.length?(NQt(a),i):Hme},i.arrows=function(a){return arguments.length?(dQt(a),i):Pme},i}var $Qt={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},zQt={arrowhead:"normal",curve:Sp};function qQt(i){i.nodes().forEach(a=>{const u=i.node(a);!Object.prototype.hasOwnProperty.call(u,"label")&&!i.children(a).length&&(u.label=a),Object.prototype.hasOwnProperty.call(u,"paddingX")&&WD(u,{paddingLeft:u.paddingX,paddingRight:u.paddingX}),Object.prototype.hasOwnProperty.call(u,"paddingY")&&WD(u,{paddingTop:u.paddingY,paddingBottom:u.paddingY}),Object.prototype.hasOwnProperty.call(u,"padding")&&WD(u,{paddingLeft:u.padding,paddingRight:u.padding,paddingTop:u.padding,paddingBottom:u.padding}),WD(u,$Qt),["paddingLeft","paddingRight","paddingTop","paddingBottom"].forEach(d=>{u[d]=Number(u[d])}),Object.prototype.hasOwnProperty.call(u,"width")&&(u._prevWidth=u.width),Object.prototype.hasOwnProperty.call(u,"height")&&(u._prevHeight=u.height)}),i.edges().forEach(function(a){var u=i.edge(a);Object.prototype.hasOwnProperty.call(u,"label")||(u.label=""),WD(u,zQt)})}function HQt(i){i.nodes().forEach(a=>{var u=i.node(a);Object.prototype.hasOwnProperty.call(u,"_prevWidth")?u.width=u._prevWidth:delete u.width,Object.prototype.hasOwnProperty.call(u,"_prevHeight")?u.height=u._prevHeight:delete u.height,delete u._prevWidth,delete u._prevHeight})}function PR(i,a){var u=i.select("g."+a);return u.empty()&&(u=i.append("g").attr("class",a)),u}function nVe(i,a,u){const d=a.width,p=a.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=q7(i,v,v,b);return u.intersect=function(E){return n5(u,b,E)},y}function rVe(i,a,u){const p=a.height,v=p/4,b=a.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}],E=q7(i,b,p,y);return u.intersect=function(_){return n5(u,y,_)},E}function iVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function sVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function aVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function oVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function cVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function uVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function lVe(i,a,u){const d=a.height,p=a.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 qme(u,b)},v}function hVe(i,a,u){const d=a.width,p=a.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=q7(i,d,p,v);return u.intersect=function(y){return n5(u,v,y)},b}function fVe(i,a,u){const d=a.width,p=d/2,v=p/(2.5+d/50),b=a.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,E=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=qme(u,_),P=A.x-u.x;if(p!=0&&(Math.abs(P)<u.width/2||Math.abs(P)==u.width/2&&Math.abs(A.y-u.y)>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},E}function UQt(i){i.shapes().question=nVe,i.shapes().hexagon=rVe,i.shapes().stadium=lVe,i.shapes().subroutine=hVe,i.shapes().cylinder=fVe,i.shapes().rect_left_inv_arrow=iVe,i.shapes().lean_right=sVe,i.shapes().lean_left=aVe,i.shapes().trapezoid=oVe,i.shapes().inv_trapezoid=cVe,i.shapes().rect_right_inv_arrow=uVe}function VQt(i){i({question:nVe}),i({hexagon:rVe}),i({stadium:lVe}),i({subroutine:hVe}),i({cylinder:fVe}),i({rect_left_inv_arrow:iVe}),i({lean_right:sVe}),i({lean_left:aVe}),i({trapezoid:oVe}),i({inv_trapezoid:cVe}),i({rect_right_inv_arrow:uVe})}function q7(i,a,u,d){return i.insert("polygon",":first-child").attr("points",d.map(function(p){return p.x+","+p.y}).join(" ")).attr("transform","translate("+-a/2+","+u/2+")")}const GQt={addToRender:UQt,addToRenderV2:VQt},dVe={},KQt=function(i){const a=Object.keys(i);for(const u of a)dVe[u]=i[u]},gVe=async function(i,a,u,d,p,v){const b=d?d.select(`[id="${u}"]`):Dr(`[id="${u}"]`),y=p||document,E=Object.keys(i);for(const _ of E){const A=i[_];let P="default";A.classes.length>0&&(P=A.classes.join(" "));const R=gm(A.styles);let B=A.text!==void 0?A.text:A.id,j;if(h1(qt().flowchart.htmlLabels)){const ie={label:await SC(B.replace(/fa[blrs]?:fa-[\w-]+/g,oe=>`<i class='${oe.replace(":"," ")}'></i>`),qt())};j=Bme(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=B.split(oi.lineBreakRegex);for(const be of oe){const ge=y.createElementNS("http://www.w3.org/2000/svg","tspan");ge.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),ge.setAttribute("dy","1em"),ge.setAttribute("x","1"),ge.textContent=be,ie.appendChild(ge)}j=ie}let W=0,ee="";switch(A.type){case"round":W=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),a.setNode(v.db.lookUpDomId(A.id),{labelType:"svg",labelStyle:R.labelStyle,shape:ee,label:j,rx:W,ry:W,class:P,style:R.style,id:v.db.lookUpDomId(A.id)})}},pVe=async function(i,a,u){let d=0,p,v;if(i.defaultStyle!==void 0){const b=gm(i.defaultStyle);p=b.style,v=b.labelStyle}for(const b of i){d++;const y="L-"+b.start+"-"+b.end,E="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 B=gm(b.style);P=B.style,R=B.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=qv(b.interpolate,Sp):i.defaultInterpolate!==void 0?A.curve=qv(i.defaultInterpolate,Sp):A.curve=qv(dVe.curve,Sp),b.text===void 0?b.style!==void 0&&(A.arrowheadStyle="fill: #333"):(A.arrowheadStyle="fill: #333",A.labelpos="c",h1(qt().flowchart.htmlLabels)?(A.labelType="html",A.label=`<span id="L-${y}" class="edgeLabel L-${E}' L-${_}" style="${A.labelStyle}">${await SC(b.text.replace(/fa[blrs]?:fa-[\w-]+/g,B=>`<i class='${B.replace(":"," ")}'></i>`),qt())}</span>`):(A.labelType="text",A.label=b.text.replace(oi.lineBreakRegex,`366`),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=E+" "+_,A.minlen=b.length||1,a.setEdge(u.db.lookUpDomId(b.start),u.db.lookUpDomId(b.end),A,d)}},WQt={setConf:KQt,addVertices:gVe,addEdges:pVe,getClasses:function(i,a){return Xe.info("Extracting classes"),a.db.getClasses()},draw:async function(i,a,u,d){Xe.info("Drawing flowchart");const{securityLevel:p,flowchart:v}=qt();let b;p==="sandbox"&&(b=Dr("#i"+a));const y=Dr(p==="sandbox"?b.nodes()[0].contentDocument.body:"body"),E=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 R0({multigraph:!0,compound:!0}).setGraph({rankdir:_,nodesep:A,ranksep:P,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let B;const j=d.db.getSubGraphs();for(let ne=j.length-1;ne>=0;ne--)B=j[ne],d.db.addVertex(B.id,B.title,"group",void 0,B.classes);const W=d.db.getVertices();Xe.warn("Get vertices",W);const ee=d.db.getEdges();let ie=0;for(ie=j.length-1;ie>=0;ie--){B=j[ie],VBe("cluster").append("text");for(let ne=0;ne<B.nodes.length;ne++)Xe.warn("Setting subgraph",B.nodes[ne],d.db.lookUpDomId(B.nodes[ne]),d.db.lookUpDomId(B.id)),R.setParent(d.db.lookUpDomId(B.nodes[ne]),d.db.lookUpDomId(B.id))}await gVe(W,R,a,y,E,d),await pVe(ee,R,d);const oe=new jQt;GQt.addToRender(oe),oe.arrows().none=function(se,de,X,pe){const xe=se.append("marker").attr("id",de).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 0 0 L 0 0 z");t5(xe,X[pe+"Style"])},oe.arrows().normal=function(se,de){se.append("marker").attr("id",de).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowheadPath").style("stroke-width",1).style("stroke-dasharray","1,0")};const be=y.select(`[id="${a}"]`),ge=y.select("#"+a+" g");for(oe(ge,R),ge.selectAll("g.node").attr("title",function(){return d.db.getTooltip(this.id)}),d.db.indexNodes("subGraph"+ie),ie=0;ie<j.length;ie++)if(B=j[ie],B.title!=="undefined"){const ne=E.querySelectorAll("#"+a+' [id="'+d.db.lookUpDomId(B.id)+'"] rect'),se=E.querySelectorAll("#"+a+' [id="'+d.db.lookUpDomId(B.id)+'"]'),de=ne[0].x.baseVal.value,X=ne[0].y.baseVal.value,pe=ne[0].width.baseVal.value,xe=Dr(se[0]).select(".label");xe.attr("transform",`translate(${de+pe/2}, ${X+14})`),xe.attr("id",a+"Text");for(let U=0;U<B.classes.length;U++)se[0].classList.add(B.classes[U])}if(!v.htmlLabels){const ne=E.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const se of ne){const de=se.getBBox(),X=E.createElementNS("http://www.w3.org/2000/svg","rect");X.setAttribute("rx",0),X.setAttribute("ry",0),X.setAttribute("width",de.width),X.setAttribute("height",de.height),se.insertBefore(X,se.firstChild)}}x9(R,be,v.diagramPadding,v.useMaxWidth),Object.keys(W).forEach(function(ne){const se=W[ne];if(se.link){const de=y.select("#"+a+' [id="'+d.db.lookUpDomId(ne)+'"]');if(de){const X=E.createElementNS("http://www.w3.org/2000/svg","a");X.setAttributeNS("http://www.w3.org/2000/svg","class",se.classes.join(" ")),X.setAttributeNS("http://www.w3.org/2000/svg","href",se.link),X.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),p==="sandbox"?X.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):se.linkTarget&&X.setAttributeNS("http://www.w3.org/2000/svg","target",se.linkTarget);const pe=de.insert(function(){return X},":first-child"),G=de.select(".label-container");G&&pe.append(function(){return G.node()});const xe=de.select(".label");xe&&pe.append(function(){return xe.node()})}}})}};function H7(i){var a={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:YQt(i),edges:XQt(i)};return Yf(i.graph())||(a.value=aUe(i.graph())),a}function YQt(i){return F0(i.nodes(),function(a){var u=i.node(a),d=i.parent(a),p={v:a};return Yf(u)||(p.value=u),Yf(d)||(p.parent=d),p})}function XQt(i){return F0(i.edges(),function(a){var u=i.edge(a),d={v:a.v,w:a.w};return Yf(a.name)||(d.name=a.name),Yf(u)||(d.value=u),d})}const QQt=(i,a,u,d)=>{a.forEach(p=>{JQt[p](i,u,d)})},JQt={extension:(i,a,u)=>{Xe.trace("Making markers for ",u),i.append("defs").append("marker").attr("id",u+"_"+a+"-extensionStart").attr("class","marker extension "+a).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+"_"+a+"-extensionEnd").attr("class","marker extension "+a).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,a,u)=>{i.append("defs").append("marker").attr("id",u+"_"+a+"-compositionStart").attr("class","marker composition "+a).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+"_"+a+"-compositionEnd").attr("class","marker composition "+a).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,a,u)=>{i.append("defs").append("marker").attr("id",u+"_"+a+"-aggregationStart").attr("class","marker aggregation "+a).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+"_"+a+"-aggregationEnd").attr("class","marker aggregation "+a).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,a,u)=>{i.append("defs").append("marker").attr("id",u+"_"+a+"-dependencyStart").attr("class","marker dependency "+a).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+"_"+a+"-dependencyEnd").attr("class","marker dependency "+a).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,a,u)=>{i.append("defs").append("marker").attr("id",u+"_"+a+"-lollipopStart").attr("class","marker lollipop "+a).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+"_"+a+"-lollipopEnd").attr("class","marker lollipop "+a).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,a,u)=>{i.append("marker").attr("id",u+"_"+a+"-pointEnd").attr("class","marker "+a).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+"_"+a+"-pointStart").attr("class","marker "+a).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,a,u)=>{i.append("marker").attr("id",u+"_"+a+"-circleEnd").attr("class","marker "+a).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+"_"+a+"-circleStart").attr("class","marker "+a).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,a,u)=>{i.append("marker").attr("id",u+"_"+a+"-crossEnd").attr("class","marker cross "+a).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+"_"+a+"-crossStart").attr("class","marker cross "+a).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,a,u)=>{i.append("defs").append("marker").attr("id",u+"_"+a+"-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")}},Ume=QQt;function ZQt(i,a){a&&i.attr("style",a)}function eJt(i,a){const u=Dr(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),d=u.append("xhtml:div"),p=i.label,v=i.isNode?"nodeLabel":"edgeLabel";return d.html(bh('<span class="'+v+'" '+(i.labelStyle?'style="'+i.labelStyle+'"':"")+">"+p+"</span>",a)),ZQt(d,i.labelStyle),d.style("display","inline-block"),d.style("white-space","nowrap"),d.attr("xmlns","http://www.w3.org/1999/xhtml"),u.node()}const Y2=(i,a,u,d)=>{let p=i||"";typeof p=="object"&&(p=p[0]);const v=qt();if(h1(v.flowchart.htmlLabels)){p=p.replace(/\\n|\n/g,"<br />"),Xe.debug("vertexText"+p);const b={isNode:d,label:uR(p).replace(/fa[blrs]?:fa-[\w-]+/g,E=>`<i class='${E.replace(":"," ")}'></i>`),labelStyle:a.replace("fill:","color:")};return eJt(b,v)}else{const b=document.createElementNS("http://www.w3.org/2000/svg","text");b.setAttribute("style",a.replace("color:","fill:"));let y=[];typeof p=="string"?y=p.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(p)?y=p:y=[];for(const E of y){const _=document.createElementNS("http://www.w3.org/2000/svg","tspan");_.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),_.setAttribute("dy","1em"),_.setAttribute("x","0"),u?_.setAttribute("class","title-row"):_.setAttribute("class","row"),_.textContent=E.trim(),b.appendChild(_)}return b}},tJt={};function nJt(i,a){const u=a||tJt,d=typeof u.includeImageAlt=="boolean"?u.includeImageAlt:!0,p=typeof u.includeHtml=="boolean"?u.includeHtml:!0;return bVe(i,d,p)}function bVe(i,a,u){if(rJt(i)){if("value"in i)return i.type==="html"&&!u?"":i.value;if(a&&"alt"in i&&i.alt)return i.alt;if("children"in i)return mVe(i.children,a,u)}return Array.isArray(i)?mVe(i,a,u):""}function mVe(i,a,u){const d=[];let p=-1;for(;++p<i.length;)d[p]=bVe(i[p],a,u);return d.join("")}function rJt(i){return!!(i&&typeof i=="object")}function r5(i,a,u,d){const p=i.length;let v=0,b;if(a<0?a=-a>p?0:p+a:a=a>p?p:a,u=u>0?u:0,d.length<1e4)b=Array.from(d),b.unshift(a,u),i.splice(...b);else for(u&&i.splice(a,u);v<d.length;)b=d.slice(v,v+1e4),b.unshift(a,0),i.splice(...b),v+=1e4,a+=1e4}function Wv(i,a){return i.length>0?(r5(i,i.length,0,a),i):a}const vVe={}.hasOwnProperty;function iJt(i){const a={};let u=-1;for(;++u<i.length;)sJt(a,i[u]);return a}function sJt(i,a){let u;for(u in a){const p=(vVe.call(i,u)?i[u]:void 0)||(i[u]={}),v=a[u];let b;if(v)for(b in v){vVe.call(p,b)||(p[b]=[]);const y=v[b];aJt(p[b],Array.isArray(y)?y:y?[y]:[])}}}function aJt(i,a){let u=-1;const d=[];for(;++u<a.length;)(a[u].add==="after"?i:d).push(a[u]);r5(i,0,0,d)}const oJt=/[!-\/:-@\[-`\{-~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/,i5=P9(/[A-Za-z]/),K3=P9(/[\dA-Za-z]/),cJt=P9(/[#-'*+\--9=?A-Z^-~]/);function Vme(i){return i!==null&&(i<32||i===127)}const Gme=P9(/\d/),uJt=P9(/[\dA-Fa-f]/),lJt=P9(/[!-/:-@[-`{-~]/);function ro(i){return i!==null&&i<-2}function X2(i){return i!==null&&(i<0||i===32)}function Iu(i){return i===-2||i===-1||i===32}const hJt=P9(oJt),fJt=P9(/\s/);function P9(i){return a;function a(u){return u!==null&&i.test(String.fromCharCode(u))}}function Hl(i,a,u,d){const p=d?d-1:Number.POSITIVE_INFINITY;let v=0;return b;function b(E){return Iu(E)?(i.enter(u),y(E)):a(E)}function y(E){return Iu(E)&&v++<p?(i.consume(E),y):(i.exit(u),a(E))}}const dJt={tokenize:gJt};function gJt(i){const a=i.attempt(this.parser.constructs.contentInitial,d,p);let u;return a;function d(y){if(y===null){i.consume(y);return}return i.enter("lineEnding"),i.consume(y),i.exit("lineEnding"),Hl(i,a,"linePrefix")}function p(y){return i.enter("paragraph"),v(y)}function v(y){const E=i.enter("chunkText",{contentType:"text",previous:u});return u&&(u.next=E),u=E,b(y)}function b(y){if(y===null){i.exit("chunkText"),i.exit("paragraph"),i.consume(y);return}return ro(y)?(i.consume(y),i.exit("chunkText"),v):(i.consume(y),b)}}const pJt={tokenize:bJt},wVe={tokenize:mJt};function bJt(i){const a=this,u=[];let d=0,p,v,b;return y;function y(be){if(d<u.length){const ge=u[d];return a.containerState=ge[1],i.attempt(ge[0].continuation,E,_)(be)}return _(be)}function E(be){if(d++,a.containerState._closeFlow){a.containerState._closeFlow=void 0,p&&oe();const ge=a.events.length;let ae=ge,ne;for(;ae--;)if(a.events[ae][0]==="exit"&&a.events[ae][1].type==="chunkFlow"){ne=a.events[ae][1].end;break}ie(d);let se=ge;for(;se<a.events.length;)a.events[se][1].end=Object.assign({},ne),se++;return r5(a.events,ae+1,0,a.events.slice(ge)),a.events.length=se,_(be)}return y(be)}function _(be){if(d===u.length){if(!p)return R(be);if(p.currentConstruct&&p.currentConstruct.concrete)return j(be);a.interrupt=!!(p.currentConstruct&&!p._gfmTableDynamicInterruptHack)}return a.containerState={},i.check(wVe,A,P)(be)}function A(be){return p&&oe(),ie(d),R(be)}function P(be){return a.parser.lazy[a.now().line]=d!==u.length,b=a.now().offset,j(be)}function R(be){return a.containerState={},i.attempt(wVe,B,j)(be)}function B(be){return d++,u.push([a.currentConstruct,a.containerState]),R(be)}function j(be){if(be===null){p&&oe(),ie(0),i.consume(be);return}return p=p||a.parser.flow(a.now()),i.enter("chunkFlow",{contentType:"flow",previous:v,_tokenizer:p}),W(be)}function W(be){if(be===null){ee(i.exit("chunkFlow"),!0),ie(0),i.consume(be);return}return ro(be)?(i.consume(be),ee(i.exit("chunkFlow")),d=0,a.interrupt=void 0,y):(i.consume(be),W)}function ee(be,ge){const ae=a.sliceStream(be);if(ge&&ae.push(null),be.previous=v,v&&(v.next=be),v=be,p.defineSkip(be.start),p.write(ae),a.parser.lazy[be.start.line]){let ne=p.events.length;for(;ne--;)if(p.events[ne][1].start.offset<b&&(!p.events[ne][1].end||p.events[ne][1].end.offset>b))return;const se=a.events.length;let de=se,X,pe;for(;de--;)if(a.events[de][0]==="exit"&&a.events[de][1].type==="chunkFlow"){if(X){pe=a.events[de][1].end;break}X=!0}for(ie(d),ne=se;ne<a.events.length;)a.events[ne][1].end=Object.assign({},pe),ne++;r5(a.events,de+1,0,a.events.slice(se)),a.events.length=ne}}function ie(be){let ge=u.length;for(;ge-- >be;){const ae=u[ge];a.containerState=ae[1],ae[0].exit.call(a,i)}u.length=be}function oe(){p.write([null]),v=void 0,p=void 0,a.containerState._closeFlow=void 0}}function mJt(i,a,u){return Hl(i,i.attempt(this.parser.constructs.document,a,u),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function yVe(i){if(i===null||X2(i)||fJt(i))return 1;if(hJt(i))return 2}function Kme(i,a,u){const d=[];let p=-1;for(;++p<i.length;){const v=i[p].resolveAll;v&&!d.includes(v)&&(a=v(a,u),d.push(v))}return a}const Wme={name:"attention",tokenize:wJt,resolveAll:vJt};function vJt(i,a){let u=-1,d,p,v,b,y,E,_,A;for(;++u<i.length;)if(i[u][0]==="enter"&&i[u][1].type==="attentionSequence"&&i[u][1]._close){for(d=u;d--;)if(i[d][0]==="exit"&&i[d][1].type==="attentionSequence"&&i[d][1]._open&&a.sliceSerialize(i[d][1]).charCodeAt(0)===a.sliceSerialize(i[u][1]).charCodeAt(0)){if((i[d][1]._close||i[u][1]._open)&&(i[u][1].end.offset-i[u][1].start.offset)%3&&!((i[d][1].end.offset-i[d][1].start.offset+i[u][1].end.offset-i[u][1].start.offset)%3))continue;E=i[d][1].end.offset-i[d][1].start.offset>1&&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);xVe(P,-E),xVe(R,E),b={type:E>1?"strongSequence":"emphasisSequence",start:P,end:Object.assign({},i[d][1].end)},y={type:E>1?"strongSequence":"emphasisSequence",start:Object.assign({},i[u][1].start),end:R},v={type:E>1?"strongText":"emphasisText",start:Object.assign({},i[d][1].end),end:Object.assign({},i[u][1].start)},p={type:E>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&&(_=Wv(_,[["enter",i[d][1],a],["exit",i[d][1],a]])),_=Wv(_,[["enter",p,a],["enter",b,a],["exit",b,a],["enter",v,a]]),_=Wv(_,Kme(a.parser.constructs.insideSpan.null,i.slice(d+1,u),a)),_=Wv(_,[["exit",v,a],["enter",y,a],["exit",y,a],["exit",p,a]]),i[u][1].end.offset-i[u][1].start.offset?(A=2,_=Wv(_,[["enter",i[u][1],a],["exit",i[u][1],a]])):A=0,r5(i,d-1,u-d+3,_),u=d+_.length-A-2;break}}for(u=-1;++u<i.length;)i[u][1].type==="attentionSequence"&&(i[u][1].type="data");return i}function wJt(i,a){const u=this.parser.constructs.attentionMarkers.null,d=this.previous,p=yVe(d);let v;return b;function b(E){return v=E,i.enter("attentionSequence"),y(E)}function y(E){if(E===v)return i.consume(E),y;const _=i.exit("attentionSequence"),A=yVe(E),P=!A||A===2&&p||u.includes(E),R=!p||p===2&&A||u.includes(d);return _._open=!!(v===42?P:P&&(p||!R)),_._close=!!(v===42?R:R&&(A||!P)),a(E)}}function xVe(i,a){i.column+=a,i.offset+=a,i._bufferIndex+=a}const yJt={name:"autolink",tokenize:xJt};function xJt(i,a,u){let d=0;return p;function p(B){return i.enter("autolink"),i.enter("autolinkMarker"),i.consume(B),i.exit("autolinkMarker"),i.enter("autolinkProtocol"),v}function v(B){return i5(B)?(i.consume(B),b):_(B)}function b(B){return B===43||B===45||B===46||K3(B)?(d=1,y(B)):_(B)}function y(B){return B===58?(i.consume(B),d=0,E):(B===43||B===45||B===46||K3(B))&&d++<32?(i.consume(B),y):(d=0,_(B))}function E(B){return B===62?(i.exit("autolinkProtocol"),i.enter("autolinkMarker"),i.consume(B),i.exit("autolinkMarker"),i.exit("autolink"),a):B===null||B===32||B===60||Vme(B)?u(B):(i.consume(B),E)}function _(B){return B===64?(i.consume(B),A):cJt(B)?(i.consume(B),_):u(B)}function A(B){return K3(B)?P(B):u(B)}function P(B){return B===46?(i.consume(B),d=0,A):B===62?(i.exit("autolinkProtocol").type="autolinkEmail",i.enter("autolinkMarker"),i.consume(B),i.exit("autolinkMarker"),i.exit("autolink"),a):R(B)}function R(B){if((B===45||K3(B))&&d++<63){const j=B===45?R:P;return i.consume(B),j}return u(B)}}const uJ={tokenize:kJt,partial:!0};function kJt(i,a,u){return d;function d(v){return Iu(v)?Hl(i,p,"linePrefix")(v):p(v)}function p(v){return v===null||ro(v)?a(v):u(v)}}const kVe={name:"blockQuote",tokenize:TJt,continuation:{tokenize:EJt},exit:CJt};function TJt(i,a,u){const d=this;return p;function p(b){if(b===62){const y=d.containerState;return y.open||(i.enter("blockQuote",{_container:!0}),y.open=!0),i.enter("blockQuotePrefix"),i.enter("blockQuoteMarker"),i.consume(b),i.exit("blockQuoteMarker"),v}return u(b)}function v(b){return Iu(b)?(i.enter("blockQuotePrefixWhitespace"),i.consume(b),i.exit("blockQuotePrefixWhitespace"),i.exit("blockQuotePrefix"),a):(i.exit("blockQuotePrefix"),a(b))}}function EJt(i,a,u){const d=this;return p;function p(b){return Iu(b)?Hl(i,v,"linePrefix",d.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(b):v(b)}function v(b){return i.attempt(kVe,a,u)(b)}}function CJt(i){i.exit("blockQuote")}const TVe={name:"characterEscape",tokenize:SJt};function SJt(i,a,u){return d;function d(v){return i.enter("characterEscape"),i.enter("escapeMarker"),i.consume(v),i.exit("escapeMarker"),p}function p(v){return lJt(v)?(i.enter("characterEscapeValue"),i.consume(v),i.exit("characterEscapeValue"),i.exit("characterEscape"),a):u(v)}}const EVe=document.createElement("i");function Yme(i){const a="&"+i+";";EVe.innerHTML=a;const u=EVe.textContent;return u.charCodeAt(u.length-1)===59&&i!=="semi"||u===a?!1:u}const CVe={name:"characterReference",tokenize:_Jt};function _Jt(i,a,u){const d=this;let p=0,v,b;return y;function y(P){return i.enter("characterReference"),i.enter("characterReferenceMarker"),i.consume(P),i.exit("characterReferenceMarker"),E}function E(P){return P===35?(i.enter("characterReferenceMarkerNumeric"),i.consume(P),i.exit("characterReferenceMarkerNumeric"),_):(i.enter("characterReferenceValue"),v=31,b=K3,A(P))}function _(P){return P===88||P===120?(i.enter("characterReferenceMarkerHexadecimal"),i.consume(P),i.exit("characterReferenceMarkerHexadecimal"),i.enter("characterReferenceValue"),v=6,b=uJt,A):(i.enter("characterReferenceValue"),v=7,b=Gme,A(P))}function A(P){if(P===59&&p){const R=i.exit("characterReferenceValue");return b===K3&&!Yme(d.sliceSerialize(R))?u(P):(i.enter("characterReferenceMarker"),i.consume(P),i.exit("characterReferenceMarker"),i.exit("characterReference"),a)}return b(P)&&p++<v?(i.consume(P),A):u(P)}}const SVe={tokenize:LJt,partial:!0},_Ve={name:"codeFenced",tokenize:AJt,concrete:!0};function AJt(i,a,u){const d=this,p={tokenize:ae,partial:!0};let v=0,b=0,y;return E;function E(ne){return _(ne)}function _(ne){const se=d.events[d.events.length-1];return v=se&&se[1].type==="linePrefix"?se[2].sliceSerialize(se[1],!0).length:0,y=ne,i.enter("codeFenced"),i.enter("codeFencedFence"),i.enter("codeFencedFenceSequence"),A(ne)}function A(ne){return ne===y?(b++,i.consume(ne),A):b<3?u(ne):(i.exit("codeFencedFenceSequence"),Iu(ne)?Hl(i,P,"whitespace")(ne):P(ne))}function P(ne){return ne===null||ro(ne)?(i.exit("codeFencedFence"),d.interrupt?a(ne):i.check(SVe,W,ge)(ne)):(i.enter("codeFencedFenceInfo"),i.enter("chunkString",{contentType:"string"}),R(ne))}function R(ne){return ne===null||ro(ne)?(i.exit("chunkString"),i.exit("codeFencedFenceInfo"),P(ne)):Iu(ne)?(i.exit("chunkString"),i.exit("codeFencedFenceInfo"),Hl(i,B,"whitespace")(ne)):ne===96&&ne===y?u(ne):(i.consume(ne),R)}function B(ne){return ne===null||ro(ne)?P(ne):(i.enter("codeFencedFenceMeta"),i.enter("chunkString",{contentType:"string"}),j(ne))}function j(ne){return ne===null||ro(ne)?(i.exit("chunkString"),i.exit("codeFencedFenceMeta"),P(ne)):ne===96&&ne===y?u(ne):(i.consume(ne),j)}function W(ne){return i.attempt(p,ge,ee)(ne)}function ee(ne){return i.enter("lineEnding"),i.consume(ne),i.exit("lineEnding"),ie}function ie(ne){return v>0&&Iu(ne)?Hl(i,oe,"linePrefix",v+1)(ne):oe(ne)}function oe(ne){return ne===null||ro(ne)?i.check(SVe,W,ge)(ne):(i.enter("codeFlowValue"),be(ne))}function be(ne){return ne===null||ro(ne)?(i.exit("codeFlowValue"),oe(ne)):(i.consume(ne),be)}function ge(ne){return i.exit("codeFenced"),a(ne)}function ae(ne,se,de){let X=0;return pe;function pe(Pe){return ne.enter("lineEnding"),ne.consume(Pe),ne.exit("lineEnding"),G}function G(Pe){return ne.enter("codeFencedFence"),Iu(Pe)?Hl(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)?Hl(ne,Be,"whitespace")(Pe):Be(Pe)):de(Pe)}function Be(Pe){return Pe===null||ro(Pe)?(ne.exit("codeFencedFence"),se(Pe)):de(Pe)}}}function LJt(i,a,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):a(b)}}const Xme={name:"codeIndented",tokenize:DJt},MJt={tokenize:IJt,partial:!0};function DJt(i,a,u){const d=this;return p;function p(_){return i.enter("codeIndented"),Hl(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?E(_):ro(_)?i.attempt(MJt,b,E)(_):(i.enter("codeFlowValue"),y(_))}function y(_){return _===null||ro(_)?(i.exit("codeFlowValue"),b(_)):(i.consume(_),y)}function E(_){return i.exit("codeIndented"),a(_)}}function IJt(i,a,u){const d=this;return p;function p(b){return d.parser.lazy[d.now().line]?u(b):ro(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),p):Hl(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?a(b):ro(b)?p(b):u(b)}}const OJt={name:"codeText",tokenize:BJt,resolve:NJt,previous:PJt};function NJt(i){let a=i.length-4,u=3,d,p;if((i[u][1].type==="lineEnding"||i[u][1].type==="space")&&(i[a][1].type==="lineEnding"||i[a][1].type==="space")){for(d=u;++d<a;)if(i[d][1].type==="codeTextData"){i[u][1].type="codeTextPadding",i[a][1].type="codeTextPadding",u+=2,a-=2;break}}for(d=u-1,a++;++d<=a;)p===void 0?d!==a&&i[d][1].type!=="lineEnding"&&(p=d):(d===a||i[d][1].type==="lineEnding")&&(i[p][1].type="codeTextData",d!==p+2&&(i[p][1].end=i[d-1][1].end,i.splice(p+2,d-p-2),a-=d-p-2,d=p+2),p=void 0);return i}function PJt(i){return i!==96||this.events[this.events.length-1][1].type==="characterEscape"}function BJt(i,a,u){let d=0,p,v;return b;function b(P){return i.enter("codeText"),i.enter("codeTextSequence"),y(P)}function y(P){return P===96?(i.consume(P),d++,y):(i.exit("codeTextSequence"),E(P))}function E(P){return P===null?u(P):P===32?(i.enter("space"),i.consume(P),i.exit("space"),E):P===96?(v=i.enter("codeTextSequence"),p=0,A(P)):ro(P)?(i.enter("lineEnding"),i.consume(P),i.exit("lineEnding"),E):(i.enter("codeTextData"),_(P))}function _(P){return P===null||P===32||P===96||ro(P)?(i.exit("codeTextData"),E(P)):(i.consume(P),_)}function A(P){return P===96?(i.consume(P),p++,A):p===d?(i.exit("codeTextSequence"),i.exit("codeText"),a(P)):(v.type="codeTextData",_(P))}}function AVe(i){const a={};let u=-1,d,p,v,b,y,E,_;for(;++u<i.length;){for(;u in a;)u=a[u];if(d=i[u],u&&d[1].type==="chunkFlow"&&i[u-1][1].type==="listItemPrefix"&&(E=d[1]._tokenizer.events,v=0,v<E.length&&E[v][1].type==="lineEndingBlank"&&(v+=2),v<E.length&&E[v][1].type==="content"))for(;++v<E.length&&E[v][1].type!=="content";)E[v][1].type==="chunkText"&&(E[v][1]._isInFirstContentOfListItem=!0,v++);if(d[0]==="enter")d[1].contentType&&(Object.assign(a,FJt(i,u)),u=a[u],_=!0);else if(d[1]._container){for(v=u,p=void 0;v--&&(b=i[v],b[1].type==="lineEnding"||b[1].type==="lineEndingBlank");)b[0]==="enter"&&(p&&(i[p][1].type="lineEndingBlank"),b[1].type="lineEnding",p=v);p&&(d[1].end=Object.assign({},i[p][1].start),y=i.slice(p,u),y.unshift(d),r5(i,p,u-p+1,y))}}return!_}function FJt(i,a){const u=i[a][1],d=i[a][2];let p=a-1;const v=[],b=u._tokenizer||d.parser[u.contentType](u.start),y=b.events,E=[],_={};let A,P,R=-1,B=u,j=0,W=0;const ee=[W];for(;B;){for(;i[++p][1]!==B;);v.push(p),B._tokenizer||(A=d.sliceStream(B),B.next||A.push(null),P&&b.defineSkip(B.start),B._isInFirstContentOfListItem&&(b._gfmTasklistFirstContentOfListItem=!0),b.write(A),B._isInFirstContentOfListItem&&(b._gfmTasklistFirstContentOfListItem=void 0)),P=B,B=B.next}for(B=u;++R<y.length;)y[R][0]==="exit"&&y[R-1][0]==="enter"&&y[R][1].type===y[R-1][1].type&&y[R][1].start.line!==y[R][1].end.line&&(W=R+1,ee.push(W),B._tokenizer=void 0,B.previous=void 0,B=B.next);for(b.events=[],B?(B._tokenizer=void 0,B.previous=void 0):ee.pop(),R=ee.length;R--;){const ie=y.slice(ee[R],ee[R+1]),oe=v.pop();E.unshift([oe,oe+ie.length-1]),r5(i,oe,2,ie)}for(R=-1;++R<E.length;)_[j+E[R][0]]=j+E[R][1],j+=E[R][1]-E[R][0]-1;return _}const RJt={tokenize:zJt,resolve:$Jt},jJt={tokenize:qJt,partial:!0};function $Jt(i){return AVe(i),i}function zJt(i,a){let u;return d;function d(y){return i.enter("content"),u=i.enter("chunkContent",{contentType:"content"}),p(y)}function p(y){return y===null?v(y):ro(y)?i.check(jJt,b,v)(y):(i.consume(y),p)}function v(y){return i.exit("chunkContent"),i.exit("content"),a(y)}function b(y){return i.consume(y),i.exit("chunkContent"),u.next=i.enter("chunkContent",{contentType:"content",previous:u}),u=u.next,p}}function qJt(i,a,u){const d=this;return p;function p(b){return i.exit("chunkContent"),i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),Hl(i,v,"linePrefix")}function v(b){if(b===null||ro(b))return u(b);const y=d.events[d.events.length-1];return!d.parser.constructs.disable.null.includes("codeIndented")&&y&&y[1].type==="linePrefix"&&y[2].sliceSerialize(y[1],!0).length>=4?a(b):i.interrupt(d.parser.constructs.flow,u,a)(b)}}function LVe(i,a,u,d,p,v,b,y,E){const _=E||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||Vme(ie)?u(ie):(i.enter(d),i.enter(b),i.enter(y),i.enter("chunkString",{contentType:"string"}),W(ie))}function R(ie){return ie===62?(i.enter(v),i.consume(ie),i.exit(v),i.exit(p),i.exit(d),a):(i.enter(y),i.enter("chunkString",{contentType:"string"}),B(ie))}function B(ie){return ie===62?(i.exit("chunkString"),i.exit(y),R(ie)):ie===null||ie===60||ro(ie)?u(ie):(i.consume(ie),ie===92?j:B)}function j(ie){return ie===60||ie===62||ie===92?(i.consume(ie),B):B(ie)}function W(ie){return!A&&(ie===null||ie===41||X2(ie))?(i.exit("chunkString"),i.exit(y),i.exit(b),i.exit(d),a(ie)):A<_&&ie===40?(i.consume(ie),A++,W):ie===41?(i.consume(ie),A--,W):ie===null||ie===32||ie===40||Vme(ie)?u(ie):(i.consume(ie),ie===92?ee:W)}function ee(ie){return ie===40||ie===41||ie===92?(i.consume(ie),W):W(ie)}}function MVe(i,a,u,d,p,v){const b=this;let y=0,E;return _;function _(B){return i.enter(d),i.enter(p),i.consume(B),i.exit(p),i.enter(v),A}function A(B){return y>999||B===null||B===91||B===93&&!E||B===94&&!y&&"_hiddenFootnoteSupport"in b.parser.constructs?u(B):B===93?(i.exit(v),i.enter(p),i.consume(B),i.exit(p),i.exit(d),a):ro(B)?(i.enter("lineEnding"),i.consume(B),i.exit("lineEnding"),A):(i.enter("chunkString",{contentType:"string"}),P(B))}function P(B){return B===null||B===91||B===93||ro(B)||y++>999?(i.exit("chunkString"),A(B)):(i.consume(B),E||(E=!Iu(B)),B===92?R:P)}function R(B){return B===91||B===92||B===93?(i.consume(B),y++,P):P(B)}}function DVe(i,a,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,E):u(R)}function E(R){return R===b?(i.enter(p),i.consume(R),i.exit(p),i.exit(d),a):(i.enter(v),_(R))}function _(R){return R===b?(i.exit(v),E(b)):R===null?u(R):ro(R)?(i.enter("lineEnding"),i.consume(R),i.exit("lineEnding"),Hl(i,_,"linePrefix")):(i.enter("chunkString",{contentType:"string"}),A(R))}function A(R){return R===b||R===null||ro(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 BR(i,a){let u;return d;function d(p){return ro(p)?(i.enter("lineEnding"),i.consume(p),i.exit("lineEnding"),u=!0,d):Iu(p)?Hl(i,d,u?"linePrefix":"lineSuffix")(p):a(p)}}function QD(i){return i.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const HJt={name:"definition",tokenize:VJt},UJt={tokenize:GJt,partial:!0};function VJt(i,a,u){const d=this;let p;return v;function v(B){return i.enter("definition"),b(B)}function b(B){return MVe.call(d,i,y,u,"definitionLabel","definitionLabelMarker","definitionLabelString")(B)}function y(B){return p=QD(d.sliceSerialize(d.events[d.events.length-1][1]).slice(1,-1)),B===58?(i.enter("definitionMarker"),i.consume(B),i.exit("definitionMarker"),E):u(B)}function E(B){return X2(B)?BR(i,_)(B):_(B)}function _(B){return LVe(i,A,u,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(B)}function A(B){return i.attempt(UJt,P,P)(B)}function P(B){return Iu(B)?Hl(i,R,"whitespace")(B):R(B)}function R(B){return B===null||ro(B)?(i.exit("definition"),d.parser.defined.push(p),a(B)):u(B)}}function GJt(i,a,u){return d;function d(y){return X2(y)?BR(i,p)(y):u(y)}function p(y){return DVe(i,v,u,"definitionTitle","definitionTitleMarker","definitionTitleString")(y)}function v(y){return Iu(y)?Hl(i,b,"whitespace")(y):b(y)}function b(y){return y===null||ro(y)?a(y):u(y)}}const KJt={name:"hardBreakEscape",tokenize:WJt};function WJt(i,a,u){return d;function d(v){return i.enter("hardBreakEscape"),i.consume(v),p}function p(v){return ro(v)?(i.exit("hardBreakEscape"),a(v)):u(v)}}const YJt={name:"headingAtx",tokenize:QJt,resolve:XJt};function XJt(i,a){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"},r5(i,d,u-d+1,[["enter",p,a],["enter",v,a],["exit",v,a],["exit",p,a]])),i}function QJt(i,a,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||X2(A)?(i.exit("atxHeadingSequence"),y(A)):u(A)}function y(A){return A===35?(i.enter("atxHeadingSequence"),E(A)):A===null||ro(A)?(i.exit("atxHeading"),a(A)):Iu(A)?Hl(i,y,"whitespace")(A):(i.enter("atxHeadingText"),_(A))}function E(A){return A===35?(i.consume(A),E):(i.exit("atxHeadingSequence"),y(A))}function _(A){return A===null||A===35||X2(A)?(i.exit("atxHeadingText"),y(A)):(i.consume(A),_)}}const JJt=["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"],IVe=["pre","script","style","textarea"],ZJt={name:"htmlFlow",tokenize:rZt,resolveTo:nZt,concrete:!0},eZt={tokenize:sZt,partial:!0},tZt={tokenize:iZt,partial:!0};function nZt(i){let a=i.length;for(;a--&&!(i[a][0]==="enter"&&i[a][1].type==="htmlFlow"););return a>1&&i[a-2][1].type==="linePrefix"&&(i[a][1].start=i[a-2][1].start,i[a+1][1].start=i[a-2][1].start,i.splice(a-2,2)),i}function rZt(i,a,u){const d=this;let p,v,b,y,E;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,W):Ne===63?(i.consume(Ne),p=3,d.interrupt?a:ke):i5(Ne)?(i.consume(Ne),b=String.fromCharCode(Ne),ee):u(Ne)}function R(Ne){return Ne===45?(i.consume(Ne),p=2,B):Ne===91?(i.consume(Ne),p=5,y=0,j):i5(Ne)?(i.consume(Ne),p=4,d.interrupt?a:ke):u(Ne)}function B(Ne){return Ne===45?(i.consume(Ne),d.interrupt?a:ke):u(Ne)}function j(Ne){const pn="CDATA[";return Ne===pn.charCodeAt(y++)?(i.consume(Ne),y===pn.length?d.interrupt?a:xe:j):u(Ne)}function W(Ne){return i5(Ne)?(i.consume(Ne),b=String.fromCharCode(Ne),ee):u(Ne)}function ee(Ne){if(Ne===null||Ne===47||Ne===62||X2(Ne)){const pn=Ne===47,Tt=b.toLowerCase();return!pn&&!v&&IVe.includes(Tt)?(p=1,d.interrupt?a(Ne):xe(Ne)):JJt.includes(b.toLowerCase())?(p=6,pn?(i.consume(Ne),ie):d.interrupt?a(Ne):xe(Ne)):(p=7,d.interrupt&&!d.parser.lazy[d.now().line]?u(Ne):v?oe(Ne):be(Ne))}return Ne===45||K3(Ne)?(i.consume(Ne),b+=String.fromCharCode(Ne),ee):u(Ne)}function ie(Ne){return Ne===62?(i.consume(Ne),d.interrupt?a:xe):u(Ne)}function oe(Ne){return Iu(Ne)?(i.consume(Ne),oe):pe(Ne)}function be(Ne){return Ne===47?(i.consume(Ne),pe):Ne===58||Ne===95||i5(Ne)?(i.consume(Ne),ge):Iu(Ne)?(i.consume(Ne),be):pe(Ne)}function ge(Ne){return Ne===45||Ne===46||Ne===58||Ne===95||K3(Ne)?(i.consume(Ne),ge):ae(Ne)}function ae(Ne){return Ne===61?(i.consume(Ne),ne):Iu(Ne)?(i.consume(Ne),ae):be(Ne)}function ne(Ne){return Ne===null||Ne===60||Ne===61||Ne===62||Ne===96?u(Ne):Ne===34||Ne===39?(i.consume(Ne),E=Ne,se):Iu(Ne)?(i.consume(Ne),ne):de(Ne)}function se(Ne){return Ne===E?(i.consume(Ne),E=null,X):Ne===null||ro(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||X2(Ne)?ae(Ne):(i.consume(Ne),de)}function X(Ne){return Ne===47||Ne===62||Iu(Ne)?be(Ne):u(Ne)}function pe(Ne){return Ne===62?(i.consume(Ne),G):u(Ne)}function G(Ne){return Ne===null||ro(Ne)?xe(Ne):Iu(Ne)?(i.consume(Ne),G):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):ro(Ne)&&(p===6||p===7)?(i.exit("htmlFlowData"),i.check(eZt,zt,U)(Ne)):Ne===null||ro(Ne)?(i.exit("htmlFlowData"),U(Ne)):(i.consume(Ne),xe)}function U(Ne){return i.check(tZt,Be,zt)(Ne)}function Be(Ne){return i.enter("lineEnding"),i.consume(Ne),i.exit("lineEnding"),Pe}function Pe(Ne){return Ne===null||ro(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 pn=b.toLowerCase();return IVe.includes(pn)?(i.consume(Ne),Ke):xe(Ne)}return i5(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||ro(Ne)?(i.exit("htmlFlowData"),zt(Ne)):(i.consume(Ne),Ke)}function zt(Ne){return i.exit("htmlFlow"),a(Ne)}}function iZt(i,a,u){const d=this;return p;function p(b){return ro(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):a(b)}}function sZt(i,a,u){return d;function d(p){return i.enter("lineEnding"),i.consume(p),i.exit("lineEnding"),i.attempt(uJ,a,u)}}const aZt={name:"htmlText",tokenize:oZt};function oZt(i,a,u){const d=this;let p,v,b;return y;function y(ke){return i.enter("htmlText"),i.enter("htmlTextData"),i.consume(ke),E}function E(ke){return ke===33?(i.consume(ke),_):ke===47?(i.consume(ke),ae):ke===63?(i.consume(ke),be):i5(ke)?(i.consume(ke),de):u(ke)}function _(ke){return ke===45?(i.consume(ke),A):ke===91?(i.consume(ke),v=0,j):i5(ke)?(i.consume(ke),oe):u(ke)}function A(ke){return ke===45?(i.consume(ke),B):u(ke)}function P(ke){return ke===null?u(ke):ke===45?(i.consume(ke),R):ro(ke)?(b=P,Ie(ke)):(i.consume(ke),P)}function R(ke){return ke===45?(i.consume(ke),B):P(ke)}function B(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?W:j):u(ke)}function W(ke){return ke===null?u(ke):ke===93?(i.consume(ke),ee):ro(ke)?(b=W,Ie(ke)):(i.consume(ke),W)}function ee(ke){return ke===93?(i.consume(ke),ie):W(ke)}function ie(ke){return ke===62?je(ke):ke===93?(i.consume(ke),ie):W(ke)}function oe(ke){return ke===null||ke===62?je(ke):ro(ke)?(b=oe,Ie(ke)):(i.consume(ke),oe)}function be(ke){return ke===null?u(ke):ke===63?(i.consume(ke),ge):ro(ke)?(b=be,Ie(ke)):(i.consume(ke),be)}function ge(ke){return ke===62?je(ke):be(ke)}function ae(ke){return i5(ke)?(i.consume(ke),ne):u(ke)}function ne(ke){return ke===45||K3(ke)?(i.consume(ke),ne):se(ke)}function se(ke){return ro(ke)?(b=se,Ie(ke)):Iu(ke)?(i.consume(ke),se):je(ke)}function de(ke){return ke===45||K3(ke)?(i.consume(ke),de):ke===47||ke===62||X2(ke)?X(ke):u(ke)}function X(ke){return ke===47?(i.consume(ke),je):ke===58||ke===95||i5(ke)?(i.consume(ke),pe):ro(ke)?(b=X,Ie(ke)):Iu(ke)?(i.consume(ke),X):je(ke)}function pe(ke){return ke===45||ke===46||ke===58||ke===95||K3(ke)?(i.consume(ke),pe):G(ke)}function G(ke){return ke===61?(i.consume(ke),xe):ro(ke)?(b=G,Ie(ke)):Iu(ke)?(i.consume(ke),G):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):ro(ke)?(b=xe,Ie(ke)):Iu(ke)?(i.consume(ke),xe):(i.consume(ke),Be)}function U(ke){return ke===p?(i.consume(ke),p=void 0,Pe):ke===null?u(ke):ro(ke)?(b=U,Ie(ke)):(i.consume(ke),U)}function Be(ke){return ke===null||ke===34||ke===39||ke===60||ke===61||ke===96?u(ke):ke===47||ke===62||X2(ke)?X(ke):(i.consume(ke),Be)}function Pe(ke){return ke===47||ke===62||X2(ke)?X(ke):u(ke)}function je(ke){return ke===62?(i.consume(ke),i.exit("htmlTextData"),i.exit("htmlText"),a):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)?Hl(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 Qme={name:"labelEnd",tokenize:dZt,resolveTo:fZt,resolveAll:hZt},cZt={tokenize:gZt},uZt={tokenize:pZt},lZt={tokenize:bZt};function hZt(i){let a=-1;for(;++a<i.length;){const u=i[a][1];(u.type==="labelImage"||u.type==="labelLink"||u.type==="labelEnd")&&(i.splice(a+1,u.type==="labelImage"?4:2),u.type="data",a++)}return i}function fZt(i,a){let u=i.length,d=0,p,v,b,y;for(;u--;)if(p=i[u][1],v){if(p.type==="link"||p.type==="labelLink"&&p._inactive)break;i[u][0]==="enter"&&p.type==="labelLink"&&(p._inactive=!0)}else if(b){if(i[u][0]==="enter"&&(p.type==="labelImage"||p.type==="labelLink")&&!p._balanced&&(v=u,p.type!=="labelLink")){d=2;break}}else p.type==="labelEnd"&&(b=u);const E={type:i[v][1].type==="labelLink"?"link":"image",start:Object.assign({},i[v][1].start),end:Object.assign({},i[i.length-1][1].end)},_={type:"label",start:Object.assign({},i[v][1].start),end:Object.assign({},i[b][1].end)},A={type:"labelText",start:Object.assign({},i[v+d+2][1].end),end:Object.assign({},i[b-2][1].start)};return y=[["enter",E,a],["enter",_,a]],y=Wv(y,i.slice(v+1,v+d+3)),y=Wv(y,[["enter",A,a]]),y=Wv(y,Kme(a.parser.constructs.insideSpan.null,i.slice(v+d+4,b-3),a)),y=Wv(y,[["exit",A,a],i[b-2],i[b-1],["exit",_,a]]),y=Wv(y,i.slice(b+1)),y=Wv(y,[["exit",E,a]]),r5(i,v,i.length,y),i}function dZt(i,a,u){const d=this;let p=d.events.length,v,b;for(;p--;)if((d.events[p][1].type==="labelImage"||d.events[p][1].type==="labelLink")&&!d.events[p][1]._balanced){v=d.events[p][1];break}return y;function y(R){return v?v._inactive?P(R):(b=d.parser.defined.includes(QD(d.sliceSerialize({start:v.end,end:d.now()}))),i.enter("labelEnd"),i.enter("labelMarker"),i.consume(R),i.exit("labelMarker"),i.exit("labelEnd"),E):u(R)}function E(R){return R===40?i.attempt(cZt,A,b?A:P)(R):R===91?i.attempt(uZt,A,b?_:P)(R):b?A(R):P(R)}function _(R){return i.attempt(lZt,A,P)(R)}function A(R){return a(R)}function P(R){return v._balanced=!0,u(R)}}function gZt(i,a,u){return d;function d(P){return i.enter("resource"),i.enter("resourceMarker"),i.consume(P),i.exit("resourceMarker"),p}function p(P){return X2(P)?BR(i,v)(P):v(P)}function v(P){return P===41?A(P):LVe(i,b,y,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(P)}function b(P){return X2(P)?BR(i,E)(P):A(P)}function y(P){return u(P)}function E(P){return P===34||P===39||P===40?DVe(i,_,u,"resourceTitle","resourceTitleMarker","resourceTitleString")(P):A(P)}function _(P){return X2(P)?BR(i,A)(P):A(P)}function A(P){return P===41?(i.enter("resourceMarker"),i.consume(P),i.exit("resourceMarker"),i.exit("resource"),a):u(P)}}function pZt(i,a,u){const d=this;return p;function p(y){return MVe.call(d,i,v,b,"reference","referenceMarker","referenceString")(y)}function v(y){return d.parser.defined.includes(QD(d.sliceSerialize(d.events[d.events.length-1][1]).slice(1,-1)))?a(y):u(y)}function b(y){return u(y)}}function bZt(i,a,u){return d;function d(v){return i.enter("reference"),i.enter("referenceMarker"),i.consume(v),i.exit("referenceMarker"),p}function p(v){return v===93?(i.enter("referenceMarker"),i.consume(v),i.exit("referenceMarker"),i.exit("reference"),a):u(v)}}const mZt={name:"labelStartImage",tokenize:vZt,resolveAll:Qme.resolveAll};function vZt(i,a,u){const d=this;return p;function p(y){return i.enter("labelImage"),i.enter("labelImageMarker"),i.consume(y),i.exit("labelImageMarker"),v}function v(y){return y===91?(i.enter("labelMarker"),i.consume(y),i.exit("labelMarker"),i.exit("labelImage"),b):u(y)}function b(y){return y===94&&"_hiddenFootnoteSupport"in d.parser.constructs?u(y):a(y)}}const wZt={name:"labelStartLink",tokenize:yZt,resolveAll:Qme.resolveAll};function yZt(i,a,u){const d=this;return p;function p(b){return i.enter("labelLink"),i.enter("labelMarker"),i.consume(b),i.exit("labelMarker"),i.exit("labelLink"),v}function v(b){return b===94&&"_hiddenFootnoteSupport"in d.parser.constructs?u(b):a(b)}}const Jme={name:"lineEnding",tokenize:xZt};function xZt(i,a){return u;function u(d){return i.enter("lineEnding"),i.consume(d),i.exit("lineEnding"),Hl(i,a,"linePrefix")}}const lJ={name:"thematicBreak",tokenize:kZt};function kZt(i,a,u){let d=0,p;return v;function v(_){return i.enter("thematicBreak"),b(_)}function b(_){return p=_,y(_)}function y(_){return _===p?(i.enter("thematicBreakSequence"),E(_)):d>=3&&(_===null||ro(_))?(i.exit("thematicBreak"),a(_)):u(_)}function E(_){return _===p?(i.consume(_),d++,E):(i.exit("thematicBreakSequence"),Iu(_)?Hl(i,y,"whitespace")(_):y(_))}}const Q2={name:"list",tokenize:CZt,continuation:{tokenize:SZt},exit:AZt},TZt={tokenize:LZt,partial:!0},EZt={tokenize:_Zt,partial:!0};function CZt(i,a,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(B){const j=d.containerState.type||(B===42||B===43||B===45?"listUnordered":"listOrdered");if(j==="listUnordered"?!d.containerState.marker||B===d.containerState.marker:Gme(B)){if(d.containerState.type||(d.containerState.type=j,i.enter(j,{_container:!0})),j==="listUnordered")return i.enter("listItemPrefix"),B===42||B===45?i.check(lJ,u,_)(B):_(B);if(!d.interrupt||B===49)return i.enter("listItemPrefix"),i.enter("listItemValue"),E(B)}return u(B)}function E(B){return Gme(B)&&++b<10?(i.consume(B),E):(!d.interrupt||b<2)&&(d.containerState.marker?B===d.containerState.marker:B===41||B===46)?(i.exit("listItemValue"),_(B)):u(B)}function _(B){return i.enter("listItemMarker"),i.consume(B),i.exit("listItemMarker"),d.containerState.marker=d.containerState.marker||B,i.check(uJ,d.interrupt?u:A,i.attempt(TZt,R,P))}function A(B){return d.containerState.initialBlankLine=!0,v++,R(B)}function P(B){return Iu(B)?(i.enter("listItemPrefixWhitespace"),i.consume(B),i.exit("listItemPrefixWhitespace"),R):u(B)}function R(B){return d.containerState.size=v+d.sliceSerialize(i.exit("listItemPrefix"),!0).length,a(B)}}function SZt(i,a,u){const d=this;return d.containerState._closeFlow=void 0,i.check(uJ,p,v);function p(y){return d.containerState.furtherBlankLines=d.containerState.furtherBlankLines||d.containerState.initialBlankLine,Hl(i,a,"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(EZt,a,b)(y))}function b(y){return d.containerState._closeFlow=!0,d.interrupt=void 0,Hl(i,i.attempt(Q2,a,u),"linePrefix",d.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(y)}}function _Zt(i,a,u){const d=this;return Hl(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?a(v):u(v)}}function AZt(i){i.exit(this.containerState.type)}function LZt(i,a,u){const d=this;return Hl(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"?a(v):u(v)}}const OVe={name:"setextUnderline",tokenize:DZt,resolveTo:MZt};function MZt(i,a){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,a]),i.splice(v+1,0,["exit",i[d][1],a]),i[d][1].end=Object.assign({},i[v][1].end)):i[d][1]=b,i.push(["exit",b,a]),i}function DZt(i,a,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(_)?Hl(i,E,"lineSuffix")(_):E(_))}function E(_){return _===null||ro(_)?(i.exit("setextHeadingLine"),a(_)):u(_)}}const IZt={tokenize:OZt};function OZt(i){const a=this,u=i.attempt(uJ,d,i.attempt(this.parser.constructs.flowInitial,p,Hl(i,i.attempt(this.parser.constructs.flow,p,i.attempt(RJt,p)),"linePrefix")));return u;function d(v){if(v===null){i.consume(v);return}return i.enter("lineEndingBlank"),i.consume(v),i.exit("lineEndingBlank"),a.currentConstruct=void 0,u}function p(v){if(v===null){i.consume(v);return}return i.enter("lineEnding"),i.consume(v),i.exit("lineEnding"),a.currentConstruct=void 0,u}}const NZt={resolveAll:PVe()},PZt=NVe("string"),BZt=NVe("text");function NVe(i){return{tokenize:a,resolveAll:PVe(i==="text"?FZt:void 0)};function a(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),E}function E(A){return _(A)?(u.exit("data"),v(A)):(u.consume(A),E)}function _(A){if(A===null)return!0;const P=p[A];let R=-1;if(P)for(;++R<P.length;){const B=P[R];if(!B.previous||B.previous.call(d,d.previous))return!0}return!1}}}function PVe(i){return a;function a(u,d){let p=-1,v;for(;++p<=u.length;)v===void 0?u[p]&&u[p][1].type==="data"&&(v=p,p++):(!u[p]||u[p][1].type!=="data")&&(p!==v+2&&(u[v][1].end=u[p-1][1].end,u.splice(v+2,p-v-2),p=v+2),v=void 0);return i?i(u,d):u}}function FZt(i,a){let u=0;for(;++u<=i.length;)if((u===i.length||i[u][1].type==="lineEnding")&&i[u-1][1].type==="data"){const d=i[u-1][1],p=a.sliceStream(d);let v=p.length,b=-1,y=0,E;for(;v--;){const _=p[v];if(typeof _=="string"){for(b=_.length;_.charCodeAt(b-1)===32;)y++,b--;if(b)break;b=-1}else if(_===-2)E=!0,y++;else if(_!==-1){v++;break}}if(y){const _={type:u===i.length||E||y<2?"lineSuffix":"hardBreakTrailing",start:{line:d.end.line,column:d.end.column-y,offset:d.end.offset-y,_index:d.start._index+v,_bufferIndex:v?b:d.start._bufferIndex+b},end:Object.assign({},d.end)};d.end=Object.assign({},_.start),d.start.offset===d.end.offset?Object.assign(d,_):(i.splice(u,0,["enter",_,a],["exit",_,a]),u+=2)}u++}return i}function RZt(i,a,u){let d=Object.assign(u?Object.assign({},u):{line:1,column:1,offset:0},{_index:0,_bufferIndex:-1});const p={},v=[];let b=[],y=[];const E={consume:oe,enter:be,exit:ge,attempt:se(ae),check:se(ne),interrupt:se(ne,{interrupt:!0})},_={previous:null,code:null,containerState:{},events:[],parser:i,sliceStream:B,sliceSerialize:R,now:j,defineSkip:W,write:P};let A=a.tokenize.call(_,E);return a.resolveAll&&v.push(a),_;function P(G){return b=Wv(b,G),ee(),b[b.length-1]!==null?[]:(de(a,0),_.events=Kme(v,_.events,_),_.events)}function R(G,xe){return $Zt(B(G),xe)}function B(G){return jZt(b,G)}function j(){const{line:G,column:xe,offset:U,_index:Be,_bufferIndex:Pe}=d;return{line:G,column:xe,offset:U,_index:Be,_bufferIndex:Pe}}function W(G){p[G.line]=G.column,pe()}function ee(){let G;for(;d._index<b.length;){const xe=b[d._index];if(typeof xe=="string")for(G=d._index,d._bufferIndex<0&&(d._bufferIndex=0);d._index===G&&d._bufferIndex<xe.length;)ie(xe.charCodeAt(d._bufferIndex));else ie(xe)}}function ie(G){A=A(G)}function oe(G){ro(G)?(d.line++,d.column=1,d.offset+=G===-3?2:1,pe()):G!==-1&&(d.column++,d.offset++),d._bufferIndex<0?d._index++:(d._bufferIndex++,d._bufferIndex===b[d._index].length&&(d._bufferIndex=-1,d._index++)),_.previous=G}function be(G,xe){const U=xe||{};return U.type=G,U.start=j(),_.events.push(["enter",U,_]),y.push(U),U}function ge(G){const xe=y.pop();return xe.end=j(),_.events.push(["exit",xe,_]),xe}function ae(G,xe){de(G,xe.from)}function ne(G,xe){xe.restore()}function se(G,xe){return U;function U(Be,Pe,je){let Ie,Se,Ce,ke;return Array.isArray(Be)?zt(Be):"tokenize"in Be?zt([Be]):Ke(Be);function Ke(Et){return Wt;function Wt(un){const yt=un!==null&&Et[un],Bt=un!==null&&Et.null,Ze=[...Array.isArray(yt)?yt:yt?[yt]:[],...Array.isArray(Bt)?Bt:Bt?[Bt]:[]];return zt(Ze)(un)}}function zt(Et){return Ie=Et,Se=0,Et.length===0?je:Ne(Et[Se])}function Ne(Et){return Wt;function Wt(un){return ke=X(),Ce=Et,Et.partial||(_.currentConstruct=Et),Et.name&&_.parser.constructs.disable.null.includes(Et.name)?Tt():Et.tokenize.call(xe?Object.assign(Object.create(_),xe):_,E,pn,Tt)(un)}}function pn(Et){return G(Ce,ke),Pe}function Tt(Et){return ke.restore(),++Se<Ie.length?Ne(Ie[Se]):je}}}function de(G,xe){G.resolveAll&&!v.includes(G)&&v.push(G),G.resolve&&r5(_.events,xe,_.events.length-xe,G.resolve(_.events.slice(xe),_)),G.resolveTo&&(_.events=G.resolveTo(_.events,_))}function X(){const G=j(),xe=_.previous,U=_.currentConstruct,Be=_.events.length,Pe=Array.from(y);return{restore:je,from:Be};function je(){d=G,_.previous=xe,_.currentConstruct=U,_.events.length=Be,y=Pe,pe()}}function pe(){d.line in p&&d.column<2&&(d.column=p[d.line],d.offset+=p[d.line]-1)}}function jZt(i,a){const u=a.start._index,d=a.start._bufferIndex,p=a.end._index,v=a.end._bufferIndex;let b;if(u===p)b=[i[u].slice(d,v)];else{if(b=i.slice(u,p),d>-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 $Zt(i,a){let u=-1;const d=[];let p;for(;++u<i.length;){const v=i[u];let b;if(typeof v=="string")b=v;else switch(v){case-5:{b="\r";break}case-4:{b=`367`;break}case-3:{b=`\r368`;break}case-2:{b=a?" ":" ";break}case-1:{if(!a&&p)continue;b=" ";break}default:b=String.fromCharCode(v)}p=v===-2,d.push(b)}return d.join("")}const zZt=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:{91:HJt},disable:{null:[]},document:{42:Q2,43:Q2,45:Q2,48:Q2,49:Q2,50:Q2,51:Q2,52:Q2,53:Q2,54:Q2,55:Q2,56:Q2,57:Q2,62:kVe},flow:{35:YJt,42:lJ,45:[OVe,lJ],60:ZJt,61:OVe,95:lJ,96:_Ve,126:_Ve},flowInitial:{[-2]:Xme,[-1]:Xme,32:Xme},insideSpan:{null:[Wme,NZt]},string:{38:CVe,92:TVe},text:{[-5]:Jme,[-4]:Jme,[-3]:Jme,33:mZt,38:CVe,42:Wme,60:[yJt,aZt],91:wZt,92:[KJt,TVe],93:Qme,95:Wme,96:OJt}},Symbol.toStringTag,{value:"Module"}));function qZt(i){const u=iJt([zZt,...(i||{}).extensions||[]]),d={defined:[],lazy:{},constructs:u,content:p(dJt),document:p(pJt),flow:p(IZt),string:p(PZt),text:p(BZt)};return d;function p(v){return b;function b(y){return RZt(d,v,y)}}}const BVe=/[\0\t\n\r]/g;function HZt(){let i=1,a="",u=!0,d;return p;function p(v,b,y){const E=[];let _,A,P,R,B;for(v=a+v.toString(b),P=0,a="",u&&(v.charCodeAt(0)===65279&&P++,u=void 0);P<v.length;){if(BVe.lastIndex=P,_=BVe.exec(v),R=_&&_.index!==void 0?_.index:v.length,B=v.charCodeAt(R),!_){a=v.slice(P);break}if(B===10&&P===R&&d)E.push(-3),d=void 0;else switch(d&&(E.push(-5),d=void 0),P<R&&(E.push(v.slice(P,R)),i+=R-P),B){case 0:{E.push(65533),i++;break}case 9:{for(A=Math.ceil(i/4)*4,E.push(-2);i++<A;)E.push(-1);break}case 10:{E.push(-4),i=1;break}default:d=!0,i=1}P=R+1}return y&&(d&&E.push(-5),a&&E.push(a),E.push(null)),E}}function UZt(i){for(;!AVe(i););return i}function FVe(i,a){const u=Number.parseInt(i,a);return u<9||u===11||u>13&&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 VZt=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function GZt(i){return i.replace(VZt,KZt)}function KZt(i,a,u){if(a)return a;if(u.charCodeAt(0)===35){const p=u.charCodeAt(1),v=p===120||p===88;return FVe(u.slice(v?2:1),v?16:10)}return Yme(u)||i}function hJ(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?RVe(i.position):"start"in i||"end"in i?RVe(i):"line"in i||"column"in i?Zme(i):""}function Zme(i){return jVe(i&&i.line)+":"+jVe(i&&i.column)}function RVe(i){return Zme(i&&i.start)+"-"+Zme(i&&i.end)}function jVe(i){return i&&typeof i=="number"?i:1}const $Ve={}.hasOwnProperty,zVe=function(i,a,u){return typeof a!="string"&&(u=a,a=void 0),WZt(u)(UZt(qZt(u).document().write(HZt()(i,a,!0))))};function WZt(i){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:y(ia),autolinkProtocol:G,autolinkEmail:G,atxHeading:y(qr),blockQuote:y(Ze),characterEscape:G,characterReference:G,codeFenced:y(Dt),codeFencedFenceInfo:E,codeFencedFenceMeta:E,codeIndented:y(Dt,E),codeText:y(kt,E),codeTextData:G,data:G,codeFlowValue:G,definition:y(Nn),definitionDestinationString:E,definitionLabelString:E,definitionTitleString:E,emphasis:y(ht),hardBreakEscape:y(xt),hardBreakTrailing:y(xt),htmlFlow:y(Ri,E),htmlFlowData:G,htmlText:y(Ri,E),htmlTextData:G,image:y(wi),label:E,link:y(ia),listItem:y(mo),listItemValue:j,listOrdered:y(Hs,B),listUnordered:y(Hs),paragraph:y(Tr),reference:Tt,referenceString:E,resourceDestinationString:E,resourceTitleString:E,setextHeading:y(qr),strong:y(On),thematicBreak:y(zn)},exit:{atxHeading:A(),atxHeadingSequence:se,autolink:A(),autolinkEmail:Bt,autolinkProtocol:yt,blockQuote:A(),characterEscapeValue:xe,characterReferenceMarkerHexadecimal:Wt,characterReferenceMarkerNumeric:Wt,characterReferenceValue:un,codeFenced:A(oe),codeFencedFence:ie,codeFencedFenceInfo:W,codeFencedFenceMeta:ee,codeFlowValue:xe,codeIndented:A(be),codeText:A(Ie),codeTextData:xe,data:xe,definition:A(),definitionDestinationString:ne,definitionLabelString:ge,definitionTitleString:ae,emphasis:A(),hardBreakEscape:A(Be),hardBreakTrailing:A(Be),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:zt,resourceTitleString:Ne,resource:pn,setextHeading:A(pe),setextHeadingLineSequence:X,setextHeadingText:de,strong:A(),thematicBreak:A()}};qVe(a,(i||{}).mdastExtensions||[]);const u={};return d;function d(Ct){let gt={type:"root",children:[]};const on={stack:[gt],tokenStack:[],config:a,enter:_,exit:P,buffer:E,resume:R,setData:v,getData:b},dn=[];let Ln=-1;for(;++Ln<Ct.length;)if(Ct[Ln][1].type==="listOrdered"||Ct[Ln][1].type==="listUnordered")if(Ct[Ln][0]==="enter")dn.push(Ln);else{const Io=dn.pop();Ln=p(Ct,Io,Ln)}for(Ln=-1;++Ln<Ct.length;){const Io=a[Ct[Ln][0]];$Ve.call(Io,Ct[Ln][1].type)&&Io[Ct[Ln][1].type].call(Object.assign({sliceSerialize:Ct[Ln][2].sliceSerialize},on),Ct[Ln][1])}if(on.tokenStack.length>0){const Io=on.tokenStack[on.tokenStack.length-1];(Io[1]||HVe).call(on,void 0,Io[0])}for(gt.position={start:B9(Ct.length>0?Ct[0][1].start:{line:1,column:1,offset:0}),end:B9(Ct.length>0?Ct[Ct.length-2][1].end:{line:1,column:1,offset:0})},Ln=-1;++Ln<a.transforms.length;)gt=a.transforms[Ln](gt)||gt;return gt}function p(Ct,gt,on){let dn=gt-1,Ln=-1,Io=!1,Oo,No,Us,uo;for(;++dn<=on;){const Es=Ct[dn];if(Es[1].type==="listUnordered"||Es[1].type==="listOrdered"||Es[1].type==="blockQuote"?(Es[0]==="enter"?Ln++:Ln--,uo=void 0):Es[1].type==="lineEndingBlank"?Es[0]==="enter"&&(Oo&&!uo&&!Ln&&!Us&&(Us=dn),uo=void 0):Es[1].type==="linePrefix"||Es[1].type==="listItemValue"||Es[1].type==="listItemMarker"||Es[1].type==="listItemPrefix"||Es[1].type==="listItemPrefixWhitespace"||(uo=void 0),!Ln&&Es[0]==="enter"&&Es[1].type==="listItemPrefix"||Ln===-1&&Es[0]==="exit"&&(Es[1].type==="listUnordered"||Es[1].type==="listOrdered")){if(Oo){let Ou=dn;for(No=void 0;Ou--;){const _c=Ct[Ou];if(_c[1].type==="lineEnding"||_c[1].type==="lineEndingBlank"){if(_c[0]==="exit")continue;No&&(Ct[No][1].type="lineEndingBlank",Io=!0),_c[1].type="lineEnding",No=Ou}else if(!(_c[1].type==="linePrefix"||_c[1].type==="blockQuotePrefix"||_c[1].type==="blockQuotePrefixWhitespace"||_c[1].type==="blockQuoteMarker"||_c[1].type==="listItemIndent"))break}Us&&(!No||Us<No)&&(Oo._spread=!0),Oo.end=Object.assign({},No?Ct[No][1].start:Es[1].end),Ct.splice(No||dn,0,["exit",Oo,Es[2]]),dn++,on++}Es[1].type==="listItemPrefix"&&(Oo={type:"listItem",_spread:!1,start:Object.assign({},Es[1].start),end:void 0},Ct.splice(dn,0,["enter",Oo,Es[2]]),dn++,on++,Us=void 0,uo=!0)}}return Ct[gt][1]._spread=Io,on}function v(Ct,gt){u[Ct]=gt}function b(Ct){return u[Ct]}function y(Ct,gt){return on;function on(dn){_.call(this,Ct(dn),dn),gt&>.call(this,dn)}}function E(){this.stack.push({type:"fragment",children:[]})}function _(Ct,gt,on){return this.stack[this.stack.length-1].children.push(Ct),this.stack.push(Ct),this.tokenStack.push([gt,on]),Ct.position={start:B9(gt.start)},Ct}function A(Ct){return gt;function gt(on){Ct&&Ct.call(this,on),P.call(this,on)}}function P(Ct,gt){const on=this.stack.pop(),dn=this.tokenStack.pop();if(dn)dn[0].type!==Ct.type&&(gt?gt.call(this,Ct,dn[0]):(dn[1]||HVe).call(this,Ct,dn[0]));else throw new Error("Cannot close `"+Ct.type+"` ("+hJ({start:Ct.start,end:Ct.end})+"): itโs not open");return on.position.end=B9(Ct.end),on}function R(){return nJt(this.stack.pop())}function B(){v("expectingFirstListItemValue",!0)}function j(Ct){if(b("expectingFirstListItemValue")){const gt=this.stack[this.stack.length-2];gt.start=Number.parseInt(this.sliceSerialize(Ct),10),v("expectingFirstListItemValue")}}function W(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.lang=Ct}function ee(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.meta=Ct}function ie(){b("flowCodeInside")||(this.buffer(),v("flowCodeInside",!0))}function oe(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.value=Ct.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),v("flowCodeInside")}function be(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.value=Ct.replace(/(\r?\n|\r)$/g,"")}function ge(Ct){const gt=this.resume(),on=this.stack[this.stack.length-1];on.label=gt,on.identifier=QD(this.sliceSerialize(Ct)).toLowerCase()}function ae(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.title=Ct}function ne(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.url=Ct}function se(Ct){const gt=this.stack[this.stack.length-1];if(!gt.depth){const on=this.sliceSerialize(Ct).length;gt.depth=on}}function de(){v("setextHeadingSlurpLineEnding",!0)}function X(Ct){const gt=this.stack[this.stack.length-1];gt.depth=this.sliceSerialize(Ct).charCodeAt(0)===61?1:2}function pe(){v("setextHeadingSlurpLineEnding")}function G(Ct){const gt=this.stack[this.stack.length-1];let on=gt.children[gt.children.length-1];(!on||on.type!=="text")&&(on=Rn(),on.position={start:B9(Ct.start)},gt.children.push(on)),this.stack.push(on)}function xe(Ct){const gt=this.stack.pop();gt.value+=this.sliceSerialize(Ct),gt.position.end=B9(Ct.end)}function U(Ct){const gt=this.stack[this.stack.length-1];if(b("atHardBreak")){const on=gt.children[gt.children.length-1];on.position.end=B9(Ct.end),v("atHardBreak");return}!b("setextHeadingSlurpLineEnding")&&a.canContainEols.includes(gt.type)&&(G.call(this,Ct),xe.call(this,Ct))}function Be(){v("atHardBreak",!0)}function Pe(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.value=Ct}function je(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.value=Ct}function Ie(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.value=Ct}function Se(){const Ct=this.stack[this.stack.length-1];if(b("inReference")){const gt=b("referenceType")||"shortcut";Ct.type+="Reference",Ct.referenceType=gt,delete Ct.url,delete Ct.title}else delete Ct.identifier,delete Ct.label;v("referenceType")}function Ce(){const Ct=this.stack[this.stack.length-1];if(b("inReference")){const gt=b("referenceType")||"shortcut";Ct.type+="Reference",Ct.referenceType=gt,delete Ct.url,delete Ct.title}else delete Ct.identifier,delete Ct.label;v("referenceType")}function ke(Ct){const gt=this.sliceSerialize(Ct),on=this.stack[this.stack.length-2];on.label=GZt(gt),on.identifier=QD(gt).toLowerCase()}function Ke(){const Ct=this.stack[this.stack.length-1],gt=this.resume(),on=this.stack[this.stack.length-1];if(v("inReference",!0),on.type==="link"){const dn=Ct.children;on.children=dn}else on.alt=gt}function zt(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.url=Ct}function Ne(){const Ct=this.resume(),gt=this.stack[this.stack.length-1];gt.title=Ct}function pn(){v("inReference")}function Tt(){v("referenceType","collapsed")}function Et(Ct){const gt=this.resume(),on=this.stack[this.stack.length-1];on.label=gt,on.identifier=QD(this.sliceSerialize(Ct)).toLowerCase(),v("referenceType","full")}function Wt(Ct){v("characterReferenceType",Ct.type)}function un(Ct){const gt=this.sliceSerialize(Ct),on=b("characterReferenceType");let dn;on?(dn=FVe(gt,on==="characterReferenceMarkerNumeric"?10:16),v("characterReferenceType")):dn=Yme(gt);const Ln=this.stack.pop();Ln.value+=dn,Ln.position.end=B9(Ct.end)}function yt(Ct){xe.call(this,Ct);const gt=this.stack[this.stack.length-1];gt.url=this.sliceSerialize(Ct)}function Bt(Ct){xe.call(this,Ct);const gt=this.stack[this.stack.length-1];gt.url="mailto:"+this.sliceSerialize(Ct)}function Ze(){return{type:"blockquote",children:[]}}function Dt(){return{type:"code",lang:null,meta:null,value:""}}function kt(){return{type:"inlineCode",value:""}}function Nn(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function ht(){return{type:"emphasis",children:[]}}function qr(){return{type:"heading",depth:void 0,children:[]}}function xt(){return{type:"break"}}function Ri(){return{type:"html",value:""}}function wi(){return{type:"image",title:null,url:"",alt:null}}function ia(){return{type:"link",title:null,url:"",children:[]}}function Hs(Ct){return{type:"list",ordered:Ct.type==="listOrdered",start:null,spread:Ct._spread,children:[]}}function mo(Ct){return{type:"listItem",spread:Ct._spread,checked:null,children:[]}}function Tr(){return{type:"paragraph",children:[]}}function On(){return{type:"strong",children:[]}}function Rn(){return{type:"text",value:""}}function zn(){return{type:"thematicBreak"}}}function B9(i){return{line:i.line,column:i.column,offset:i.offset}}function qVe(i,a){let u=-1;for(;++u<a.length;){const d=a[u];Array.isArray(d)?qVe(i,d):YZt(i,d)}}function YZt(i,a){let u;for(u in a)if($Ve.call(a,u)){if(u==="canContainEols"){const d=a[u];d&&i[u].push(...d)}else if(u==="transforms"){const d=a[u];d&&i[u].push(...d)}else if(u==="enter"||u==="exit"){const d=a[u];d&&Object.assign(i[u],d)}}}function HVe(i,a){throw i?new Error("Cannot close `"+i.type+"` ("+hJ({start:i.start,end:i.end})+"): a different token (`"+a.type+"`, "+hJ({start:a.start,end:a.end})+") is open"):new Error("Cannot close document, a token (`"+a.type+"`, "+hJ({start:a.start,end:a.end})+") is still open")}function XZt(i){const a=i.replace(/\n{2,}/g,`369`);return ZM(a)}function QZt(i){const a=XZt(i),{children:u}=zVe(a),d=[[]];let p=0;function v(b,y="normal"){b.type==="text"?b.value.split(`370`).forEach((_,A)=>{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(E=>{v(E,b.type)})}return u.forEach(b=>{b.type==="paragraph"&&b.children.forEach(y=>{v(y)})}),d}function JZt(i){const{children:a}=zVe(i);function u(d){return d.type==="text"?d.value.replace(/\n/g,"<br/>"):d.type==="strong"?`<strong>${d.children.map(u).join("")}</strong>`:d.type==="emphasis"?`<em>${d.children.map(u).join("")}</em>`:d.type==="paragraph"?`<p>${d.children.map(u).join("")}</p>`:`Unsupported markdown: ${d.type}`}return a.map(u).join("")}function ZZt(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function een(i,a){const u=ZZt(a.content);return UVe(i,[],u,a.type)}function UVe(i,a,u,d){if(u.length===0)return[{content:a.join(""),type:d},{content:"",type:d}];const[p,...v]=u,b=[...a,p];return i([{content:b.join(""),type:d}])?UVe(i,b,v,d):(a.length===0&&p&&(a.push(p),u.shift()),[{content:a.join(""),type:d},{content:u.join(""),type:d}])}function ten(i,a){if(i.some(({content:u})=>u.includes(`371`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return eve(i,a)}function eve(i,a,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),a(b))return eve(i,a,u,b);if(d.length>0)u.push(d),i.unshift(v);else if(v.content){const[y,E]=een(a,v);u.push([y]),E.content&&i.unshift(E)}return eve(i,a,u)}function nen(i,a){a&&i.attr("style",a)}function ren(i,a,u,d,p=!1){const v=i.append("foreignObject"),b=v.append("xhtml:div"),y=a.label,E=a.isNode?"nodeLabel":"edgeLabel";b.html(bh(`372 <span class="${E} ${d}" `+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+y+"</span>",mh())),nen(b,a.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 tve(i,a,u){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*u-.1+"em").attr("dy",u+"em")}function ien(i,a,u){const d=i.append("text"),p=tve(d,1,a);nve(p,u);const v=p.node().getComputedTextLength();return d.remove(),v}function sen(i,a,u){var b;const d=i.append("text"),p=tve(d,1,a);nve(p,[{content:u,type:"normal"}]);const v=(b=p.node())==null?void 0:b.getBoundingClientRect();return v&&d.remove(),v}function aen(i,a,u,d=!1){const v=a.append("g"),b=v.insert("rect").attr("class","background"),y=v.append("text").attr("y","-10.1");let E=0;for(const _ of u){const A=R=>ien(v,1.1,R)<=i,P=A(_)?[_]:ten(_,A);for(const R of P){const B=tve(y,E,1.1);nve(B,R),E++}}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 nve(i,a){i.text(""),a.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 fJ=(i,a="",{style:u="",isTitle:d=!1,classes:p="",useHtmlLabels:v=!0,isNode:b=!0,width:y=200,addSvgBackground:E=!1}={})=>{if(Xe.info("createText",a,u,d,p,v,b,E),v){const _=JZt(a),A={isNode:b,label:uR(_).replace(/fa[blrs]?:fa-[\w-]+/g,R=>`<i class='${R.replace(":"," ")}'></i>`),labelStyle:u.replace("fill:","color:")};return ren(i,A,y,p,E)}else{const _=QZt(a);return aen(y,i,_,E)}},g1=async(i,a,u,d)=>{let p;const v=a.useHtmlLabels||h1(qt().flowchart.htmlLabels);u?p=u:p="node default";const b=i.insert("g").attr("class",p).attr("id",a.domId||a.id),y=b.insert("g").attr("class","label").attr("style",a.labelStyle);let E;a.labelText===void 0?E="":E=typeof a.labelText=="string"?a.labelText:a.labelText[0];const _=y.node();let A;a.labelType==="markdown"?A=fJ(y,bh(uR(E),qt()),{useHtmlLabels:v,width:a.width||qt().flowchart.wrappingWidth,classes:"markdown-node-label"}):A=_.appendChild(Y2(bh(uR(E),qt()),a.labelStyle,!1,d));let P=A.getBBox();const R=a.padding/2;if(h1(qt().flowchart.htmlLabels)){const B=A.children[0],j=Dr(A),W=B.getElementsByTagName("img");if(W){const ee=E.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...W].map(ie=>new Promise(oe=>{function be(){if(ie.style.display="flex",ie.style.flexDirection="column",ee){const ge=qt().fontSize?qt().fontSize:window.getComputedStyle(document.body).fontSize,ae=5,ne=parseInt(ge,10)*ae+"px";ie.style.minWidth=ne,ie.style.maxWidth=ne}else ie.style.width="100%";oe(ie)}setTimeout(()=>{ie.complete&&be()}),ie.addEventListener("error",be),ie.addEventListener("load",be)})))}P=B.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+")"),a.centerLabel&&y.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),y.insert("rect",":first-child"),{shapeSvg:b,bbox:P,halfPadding:R,label:y}},Gh=(i,a)=>{const u=a.node().getBBox();i.width=u.width,i.height=u.height};function s5(i,a,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("+-a/2+","+u/2+")")}let _o={},W3={},VVe={};const oen=()=>{W3={},VVe={},_o={}},dJ=(i,a)=>(Xe.trace("In isDescendant",a," ",i," = ",W3[a].includes(i)),!!W3[a].includes(i)),cen=(i,a)=>(Xe.info("Descendants of ",a," is ",W3[a]),Xe.info("Edge is ",i),i.v===a||i.w===a?!1:W3[a]?W3[a].includes(i.v)||dJ(i.v,a)||dJ(i.w,a)||W3[a].includes(i.w):(Xe.debug("Tilt, ",a,",not in descendants"),!1)),GVe=(i,a,u,d)=>{Xe.warn("Copying children of ",i,"root",d,"data",a.node(i),d);const p=a.children(i)||[];i!==d&&p.push(i),Xe.warn("Copying (nodes) clusterId",i,"nodes",p),p.forEach(v=>{if(a.children(v).length>0)GVe(v,a,u,d);else{const b=a.node(v);Xe.info("cp ",v," to ",d," with parent ",i),u.setNode(v,b),d!==a.parent(v)&&(Xe.warn("Setting parent",v,a.parent(v)),u.setParent(v,a.parent(v))),i!==d&&v!==i?(Xe.debug("Setting parent",v,i),u.setParent(v,i)):(Xe.info("In copy ",i,"root",d,"data",a.node(i),d),Xe.debug("Not Setting parent for node=",v,"cluster!==rootId",i!==d,"node!==clusterId",v!==i));const y=a.edges(v);Xe.debug("Copying Edges",y),y.forEach(E=>{Xe.info("Edge",E);const _=a.edge(E.v,E.w,E.name);Xe.info("Edge data",_,d);try{cen(E,d)?(Xe.info("Copying as ",E.v,E.w,_,E.name),u.setEdge(E.v,E.w,_,E.name),Xe.info("newGraph edges ",u.edges(),u.edge(u.edges()[0]))):Xe.info("Skipping copy of edge ",E.v,"-->",E.w," rootId: ",d," clusterId:",i)}catch(A){Xe.error(A)}})}Xe.debug("Removing node",v),a.removeNode(v)})},KVe=(i,a)=>{const u=a.children(i);let d=[...u];for(const p of u)VVe[p]=i,d=[...d,...KVe(p,a)];return d},FR=(i,a)=>{Xe.trace("Searching",i);const u=a.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=FR(d,a);if(p)return Xe.trace("Found replacement for",i," => ",p),p}},gJ=i=>!_o[i]||!_o[i].externalConnections?i:_o[i]?_o[i].id:i,uen=(i,a)=>{if(!i||a>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: ",FR(u,i)),W3[u]=KVe(u,i),_o[u]={id:FR(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,W3),p.forEach(v=>{if(v.v!==u&&v.w!==u){const b=dJ(v.v,u),y=dJ(v.w,u);b^y&&(Xe.warn("Edge: ",v," leaves cluster ",u),Xe.warn("Descendants of XXX ",u,": ",W3[u]),_o[u].externalConnections=!0)}})):Xe.debug("Not a cluster ",u,W3)});for(let u of Object.keys(_o)){const d=_o[u].id,p=i.parent(d);p!==u&&_o[p]&&!_o[p].externalConnections&&(_o[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",_o,"ids:",u.v,u.w,"Translating: ",_o[u.v]," --- ",_o[u.w]),_o[u.v]&&_o[u.w]&&_o[u.v]===_o[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=gJ(u.v),v=gJ(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),E=structuredClone(d);y.label="",y.arrowTypeEnd="none",E.label="",y.fromCluster=u.v,E.toCluster=u.v,i.setEdge(p,b,y,u.name+"-cyclic-special"),i.setEdge(b,v,E,u.name+"-cyclic-special")}else if(_o[u.v]||_o[u.w]){if(Xe.warn("Fixing and trixing - removing XXX",u.v,u.w,u.name),p=gJ(u.v),v=gJ(u.w),i.removeEdge(u.v,u.w,u.name),p!==u.v){const b=i.parent(p);_o[b].externalConnections=!0,d.fromCluster=u.v}if(v!==u.w){const b=i.parent(v);_o[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",H7(i)),WVe(i,0),Xe.trace(_o)},WVe=(i,a)=>{if(Xe.warn("extractor - ",a,H7(i),i.children("D")),a>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,a);for(const p of u)if(Xe.debug("Extracting node",p,_o,_o[p]&&!_o[p].externalConnections,!i.parent(p),i.node(p),i.children("D")," Depth ",a),!_o[p])Xe.debug("Not a cluster",p,a);else if(!_o[p].externalConnections&&i.children(p)&&i.children(p).length>0){Xe.warn("Cluster without external connections, without a parent and with children",p,a);let b=i.graph().rankdir==="TB"?"LR":"TB";_o[p]&&_o[p].clusterData&&_o[p].clusterData.dir&&(b=_o[p].clusterData.dir,Xe.warn("Fixing dir",_o[p].clusterData.dir,b));const y=new R0({multigraph:!0,compound:!0}).setGraph({rankdir:b,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Xe.warn("Old graph before copy",H7(i)),GVe(p,i,y,p),i.setNode(p,{clusterNode:!0,id:p,clusterData:_o[p].clusterData,labelText:_o[p].labelText,graph:y}),Xe.warn("New graph after copy node: (",p,")",H7(y)),Xe.debug("Old graph after copy",H7(i))}else Xe.warn("Cluster ** ",p," **not meeting the criteria !externalConnections:",!_o[p].externalConnections," no parent: ",!i.parent(p)," children ",i.children(p)&&i.children(p).length>0,i.children("D"),a),Xe.debug(_o);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&&WVe(v.graph,a+1)}},YVe=(i,a)=>{if(a.length===0)return[];let u=Object.assign(a);return a.forEach(d=>{const p=i.children(d),v=YVe(i,p);u=[...u,...v]}),u},len=i=>YVe(i,i.children());function hen(i,a){return i.intersect(a)}function XVe(i,a,u,d){var p=i.x,v=i.y,b=p-d.x,y=v-d.y,E=Math.sqrt(a*a*y*y+u*u*b*b),_=Math.abs(a*u*b/E);d.x<p&&(_=-_);var A=Math.abs(a*u*y/E);return d.y<v&&(A=-A),{x:p+_,y:v+A}}function fen(i,a,u){return XVe(i,a,a,u)}function den(i,a,u,d){var p,v,b,y,E,_,A,P,R,B,j,W,ee,ie,oe;if(p=a.y-i.y,b=i.x-a.x,E=a.x*i.y-i.x*a.y,R=p*u.x+b*u.y+E,B=p*d.x+b*d.y+E,!(R!==0&&B!==0&&QVe(R,B))&&(v=d.y-u.y,y=u.x-d.x,_=d.x*u.y-u.x*d.y,A=v*i.x+y*i.y+_,P=v*a.x+y*a.y+_,!(A!==0&&P!==0&&QVe(A,P))&&(j=p*y-v*b,j!==0)))return W=Math.abs(j/2),ee=b*_-y*E,ie=ee<0?(ee-W)/j:(ee+W)/j,ee=v*E-p*_,oe=ee<0?(ee-W)/j:(ee+W)/j,{x:ie,y:oe}}function QVe(i,a){return i*a>0}function gen(i,a,u){var d=i.x,p=i.y,v=[],b=Number.POSITIVE_INFINITY,y=Number.POSITIVE_INFINITY;typeof a.forEach=="function"?a.forEach(function(j){b=Math.min(b,j.x),y=Math.min(y,j.y)}):(b=Math.min(b,a.x),y=Math.min(y,a.y));for(var E=d-i.width/2-b,_=p-i.height/2-y,A=0;A<a.length;A++){var P=a[A],R=a[A<a.length-1?A+1:0],B=den(i,u,{x:E+P.x,y:_+P.y},{x:E+R.x,y:_+R.y});B&&v.push(B)}return v.length?(v.length>1&&v.sort(function(j,W){var ee=j.x-u.x,ie=j.y-u.y,oe=Math.sqrt(ee*ee+ie*ie),be=W.x-u.x,ge=W.y-u.y,ae=Math.sqrt(be*be+ge*ge);return oe<ae?-1:oe===ae?0:1}),v[0]):i}const RR=(i,a)=>{var u=i.x,d=i.y,p=a.x-u,v=a.y-d,b=i.width/2,y=i.height/2,E,_;return Math.abs(v)*b>Math.abs(p)*y?(v<0&&(y=-y),E=v===0?0:y*p/v,_=y):(p<0&&(b=-b),E=b,_=p===0?0:b*v/p),{x:u+E,y:d+_}},yh={node:hen,circle:fen,ellipse:XVe,polygon:gen,rect:RR},pen=async(i,a)=>{a.useHtmlLabels||qt().flowchart.htmlLabels||(a.centerLabel=!0);const{shapeSvg:d,bbox:p,halfPadding:v}=await g1(i,a,"node "+a.classes,!0);Xe.info("Classes = ",a.classes);const b=d.insert("rect",":first-child");return b.attr("rx",a.rx).attr("ry",a.ry).attr("x",-p.width/2-v).attr("y",-p.height/2-v).attr("width",p.width+a.padding).attr("height",p.height+a.padding),Gh(a,b),a.intersect=function(y){return yh.rect(a,y)},d},ben=i=>{const a=new Set;for(const u of i)switch(u){case"x":a.add("right"),a.add("left");break;case"y":a.add("up"),a.add("down");break;default:a.add(u);break}return a},men=(i,a,u)=>{const d=ben(i),p=2,v=a.height+2*u.padding,b=v/p,y=a.width+2*b+u.padding,E=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*E},{x:y-b,y:0},{x:y,y:0},{x:y,y:-v/3},{x:y+2*E,y:-v/2},{x:y,y:-2*v/3},{x:y,y:-v},{x:y-b,y:-v},{x:y/2,y:-v-2*E},{x:b,y:-v},{x:0,y:-v},{x:0,y:-2*v/3},{x:-2*E,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:-E},{x:y-b,y:-E},{x:y-b,y:0},{x:y,y:-v/2},{x:y-b,y:-v},{x:y-b,y:-v+E},{x:b,y:-v+E},{x:b,y:-v},{x:0,y:-v/2}]:d.has("up")&&d.has("down")?[{x:y/2,y:0},{x:0,y:-E},{x:b,y:-E},{x:b,y:-v+E},{x:0,y:-v+E},{x:y/2,y:-v},{x:y,y:-v+E},{x:y-b,y:-v+E},{x:y-b,y:-E},{x:y,y:-E}]: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:-E},{x:b,y:-E},{x:y-b,y:-E},{x:y-b,y:0},{x:y,y:-v/2},{x:y-b,y:-v},{x:y-b,y:-v+E},{x:b,y:-v+E},{x:b,y:-v+E}]:d.has("left")?[{x:b,y:0},{x:b,y:-E},{x:y-b,y:-E},{x:y-b,y:-v+E},{x:b,y:-v+E},{x:b,y:-v},{x:0,y:-v/2}]:d.has("up")?[{x:b,y:-E},{x:b,y:-v+E},{x:0,y:-v+E},{x:y/2,y:-v},{x:y,y:-v+E},{x:y-b,y:-v+E},{x:y-b,y:-E}]:d.has("down")?[{x:y/2,y:0},{x:0,y:-E},{x:b,y:-E},{x:b,y:-v+E},{x:y-b,y:-v+E},{x:y-b,y:-E},{x:y,y:-E}]:[{x:0,y:0}]},JVe=i=>i?" "+i:"",km=(i,a)=>`${a||"node default"}${JVe(i.classes)} ${JVe(i.class)}`,ZVe=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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 E=s5(u,b,b,y);return E.attr("style",a.style),Gh(a,E),a.intersect=function(_){return Xe.warn("Intersect called"),yh.polygon(a,y,_)},u},ven=(i,a)=>{const u=i.insert("g").attr("class","node default").attr("id",a.domId||a.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),a.width=28,a.height=28,a.intersect=function(b){return yh.circle(a,14,b)},u},wen=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=4,v=d.height+a.padding,b=v/p,y=d.width+2*b+a.padding,E=[{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}],_=s5(u,y,v,E);return _.attr("style",a.style),Gh(a,_),a.intersect=function(A){return yh.polygon(a,E,A)},u},yen=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,void 0,!0),p=2,v=d.height+2*a.padding,b=v/p,y=d.width+2*b+a.padding,E=men(a.directions,d,a),_=s5(u,y,v,E);return _.attr("style",a.style),Gh(a,_),a.intersect=function(A){return yh.polygon(a,E,A)},u},xen=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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 s5(u,p,v,b).attr("style",a.style),a.width=p+v,a.height=v,a.intersect=function(E){return yh.polygon(a,b,E)},u},ken=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a),!0),p=d.width+a.padding,v=d.height+a.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=s5(u,p,v,b);return y.attr("style",a.style),Gh(a,y),a.intersect=function(E){return yh.polygon(a,b,E)},u},Ten=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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=s5(u,p,v,b);return y.attr("style",a.style),Gh(a,y),a.intersect=function(E){return yh.polygon(a,b,E)},u},Een=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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=s5(u,p,v,b);return y.attr("style",a.style),Gh(a,y),a.intersect=function(E){return yh.polygon(a,b,E)},u},Cen=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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=s5(u,p,v,b);return y.attr("style",a.style),Gh(a,y),a.intersect=function(E){return yh.polygon(a,b,E)},u},Sen=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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=s5(u,p,v,b);return y.attr("style",a.style),Gh(a,y),a.intersect=function(E){return yh.polygon(a,b,E)},u},_en=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=p/2,b=v/(2.5+p/50),y=d.height+b+a.padding,E="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",a.style).attr("d",E).attr("transform","translate("+-p/2+","+-(y/2+b)+")");return Gh(a,_),a.intersect=function(A){const P=yh.rect(a,A),R=P.x-a.x;if(v!=0&&(Math.abs(R)<a.width/2||Math.abs(R)==a.width/2&&Math.abs(P.y-a.y)>a.height/2-b)){let B=b*b*(1-R*R/(v*v));B!=0&&(B=Math.sqrt(B)),B=b-B,A.y-a.y>0&&(B=-B),P.y+=B}return P},u},Aen=async(i,a)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,a,"node "+a.classes+" "+a.class,!0),v=u.insert("rect",":first-child"),b=a.positioned?a.width:d.width+a.padding,y=a.positioned?a.height:d.height+a.padding,E=a.positioned?-b/2:-d.width/2-p,_=a.positioned?-y/2:-d.height/2-p;if(v.attr("class","basic label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",E).attr("y",_).attr("width",b).attr("height",y),a.props){const A=new Set(Object.keys(a.props));a.props.borders&&(rve(v,a.props.borders,b,y),A.delete("borders")),A.forEach(P=>{Xe.warn(`Unknown node property ${P}`)})}return Gh(a,v),a.intersect=function(A){return yh.rect(a,A)},u},Len=async(i,a)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,a,"node "+a.classes,!0),v=u.insert("rect",":first-child"),b=a.positioned?a.width:d.width+a.padding,y=a.positioned?a.height:d.height+a.padding,E=a.positioned?-b/2:-d.width/2-p,_=a.positioned?-y/2:-d.height/2-p;if(v.attr("class","basic cluster composite label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",E).attr("y",_).attr("width",b).attr("height",y),a.props){const A=new Set(Object.keys(a.props));a.props.borders&&(rve(v,a.props.borders,b,y),A.delete("borders")),A.forEach(P=>{Xe.warn(`Unknown node property ${P}`)})}return Gh(a,v),a.intersect=function(A){return yh.rect(a,A)},u},Men=async(i,a)=>{const{shapeSvg:u}=await g1(i,a,"label",!0);Xe.trace("Classes = ",a.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"),a.props){const b=new Set(Object.keys(a.props));a.props.borders&&(rve(d,a.props.borders,p,v),b.delete("borders")),b.forEach(y=>{Xe.warn(`Unknown node property ${y}`)})}return Gh(a,d),a.intersect=function(b){return yh.rect(a,b)},u};function rve(i,a,u,d){const p=[],v=y=>{p.push(y,0)},b=y=>{p.push(0,y)};a.includes("t")?(Xe.debug("add top border"),v(u)):b(u),a.includes("r")?(Xe.debug("add right border"),v(d)):b(d),a.includes("b")?(Xe.debug("add bottom border"),v(u)):b(u),a.includes("l")?(Xe.debug("add left border"),v(d)):b(d),i.attr("stroke-dasharray",p.join(" "))}const Den=(i,a)=>{let u;a.classes?u="node "+a.classes:u="node default";const d=i.insert("g").attr("class",u).attr("id",a.domId||a.id),p=d.insert("rect",":first-child"),v=d.insert("line"),b=d.insert("g").attr("class","label"),y=a.labelText.flat?a.labelText.flat():a.labelText;let E="";typeof y=="object"?E=y[0]:E=y,Xe.info("Label text abc79",E,y,typeof y=="object");const _=b.node().appendChild(Y2(E,a.labelStyle,!0,!0));let A={width:0,height:0};if(h1(qt().flowchart.htmlLabels)){const W=_.children[0],ee=Dr(_);A=W.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 B=b.node().appendChild(Y2(P.join?P.join("<br/>"):P,a.labelStyle,!0,!0));if(h1(qt().flowchart.htmlLabels)){const W=B.children[0],ee=Dr(B);A=W.getBoundingClientRect(),ee.attr("width",A.width),ee.attr("height",A.height)}const j=a.padding/2;return Dr(B).attr("transform","translate( "+(A.width>R.width?0:(R.width-A.width)/2)+", "+(R.height+j+5)+")"),Dr(_).attr("transform","translate( "+(A.width<R.width?0:-(R.width-A.width)/2)+", 0)"),A=b.node().getBBox(),b.attr("transform","translate("+-A.width/2+", "+(-A.height/2-j+3)+")"),p.attr("class","outer title-state").attr("x",-A.width/2-j).attr("y",-A.height/2-j).attr("width",A.width+a.padding).attr("height",A.height+a.padding),v.attr("class","divider").attr("x1",-A.width/2-j).attr("x2",A.width/2+j).attr("y1",-A.height/2-j+R.height+j).attr("y2",-A.height/2-j+R.height+j),Gh(a,p),a.intersect=function(W){return yh.rect(a,W)},d},Ien=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.height+a.padding,v=d.width+p/4+a.padding,b=u.insert("rect",":first-child").attr("style",a.style).attr("rx",p/2).attr("ry",p/2).attr("x",-v/2).attr("y",-p/2).attr("width",v).attr("height",p);return Gh(a,b),a.intersect=function(y){return yh.rect(a,y)},u},Oen=async(i,a)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,a,km(a,void 0),!0),v=u.insert("circle",":first-child");return v.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",d.width/2+p).attr("width",d.width+a.padding).attr("height",d.height+a.padding),Xe.info("Circle main"),Gh(a,v),a.intersect=function(b){return Xe.info("Circle intersect",a,d.width/2+p,b),yh.circle(a,d.width/2+p,b)},u},Nen=async(i,a)=>{const{shapeSvg:u,bbox:d,halfPadding:p}=await g1(i,a,km(a,void 0),!0),v=5,b=u.insert("g",":first-child"),y=b.insert("circle"),E=b.insert("circle");return b.attr("class",a.class),y.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",d.width/2+p+v).attr("width",d.width+a.padding+v*2).attr("height",d.height+a.padding+v*2),E.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",d.width/2+p).attr("width",d.width+a.padding).attr("height",d.height+a.padding),Xe.info("DoubleCircle main"),Gh(a,y),a.intersect=function(_){return Xe.info("DoubleCircle intersect",a,d.width/2+p+v,_),yh.circle(a,d.width/2+p+v,_)},u},Pen=async(i,a)=>{const{shapeSvg:u,bbox:d}=await g1(i,a,km(a,void 0),!0),p=d.width+a.padding,v=d.height+a.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=s5(u,p,v,b);return y.attr("style",a.style),Gh(a,y),a.intersect=function(E){return yh.polygon(a,b,E)},u},Ben=(i,a)=>{const u=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),d=u.insert("circle",":first-child");return d.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Gh(a,d),a.intersect=function(p){return yh.circle(a,7,p)},u},eGe=(i,a,u)=>{const d=i.insert("g").attr("class","node default").attr("id",a.domId||a.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 Gh(a,b),a.height=a.height+a.padding/2,a.width=a.width+a.padding/2,a.intersect=function(y){return yh.rect(a,y)},d},tGe={rhombus:ZVe,composite:Len,question:ZVe,rect:Aen,labelRect:Men,rectWithTitle:Den,choice:ven,circle:Oen,doublecircle:Nen,stadium:Ien,hexagon:wen,block_arrow:yen,rect_left_inv_arrow:xen,lean_right:ken,lean_left:Ten,trapezoid:Een,inv_trapezoid:Cen,rect_right_inv_arrow:Sen,cylinder:_en,start:Ben,end:(i,a)=>{const u=i.insert("g").attr("class","node default").attr("id",a.domId||a.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),Gh(a,p),a.intersect=function(v){return yh.circle(a,7,v)},u},note:pen,subroutine:Pen,fork:eGe,join:eGe,class_box:(i,a)=>{const u=a.padding/2,d=4,p=8;let v;a.classes?v="node "+a.classes:v="node default";const b=i.insert("g").attr("class",v).attr("id",a.domId||a.id),y=b.insert("rect",":first-child"),E=b.insert("line"),_=b.insert("line");let A=0,P=d;const R=b.insert("g").attr("class","label");let B=0;const j=a.classData.annotations&&a.classData.annotations[0],W=a.classData.annotations[0]?"ยซ"+a.classData.annotations[0]+"ยป":"",ee=R.node().appendChild(Y2(W,a.labelStyle,!0,!0));let ie=ee.getBBox();if(h1(qt().flowchart.htmlLabels)){const de=ee.children[0],X=Dr(ee);ie=de.getBoundingClientRect(),X.attr("width",ie.width),X.attr("height",ie.height)}a.classData.annotations[0]&&(P+=ie.height+d,A+=ie.width);let oe=a.classData.label;a.classData.type!==void 0&&a.classData.type!==""&&(qt().flowchart.htmlLabels?oe+="<"+a.classData.type+">":oe+="<"+a.classData.type+">");const be=R.node().appendChild(Y2(oe,a.labelStyle,!0,!0));Dr(be).attr("class","classTitle");let ge=be.getBBox();if(h1(qt().flowchart.htmlLabels)){const de=be.children[0],X=Dr(be);ge=de.getBoundingClientRect(),X.attr("width",ge.width),X.attr("height",ge.height)}P+=ge.height+d,ge.width>A&&(A=ge.width);const ae=[];a.classData.members.forEach(de=>{const X=de.getDisplayDetails();let pe=X.displayText;qt().flowchart.htmlLabels&&(pe=pe.replace(/</g,"<").replace(/>/g,">"));const G=R.node().appendChild(Y2(pe,X.cssStyle?X.cssStyle:a.labelStyle,!0,!0));let xe=G.getBBox();if(h1(qt().flowchart.htmlLabels)){const U=G.children[0],Be=Dr(G);xe=U.getBoundingClientRect(),Be.attr("width",xe.width),Be.attr("height",xe.height)}xe.width>A&&(A=xe.width),P+=xe.height+d,ae.push(G)}),P+=p;const ne=[];if(a.classData.methods.forEach(de=>{const X=de.getDisplayDetails();let pe=X.displayText;qt().flowchart.htmlLabels&&(pe=pe.replace(/</g,"<").replace(/>/g,">"));const G=R.node().appendChild(Y2(pe,X.cssStyle?X.cssStyle:a.labelStyle,!0,!0));let xe=G.getBBox();if(h1(qt().flowchart.htmlLabels)){const U=G.children[0],Be=Dr(G);xe=U.getBoundingClientRect(),Be.attr("width",xe.width),Be.attr("height",xe.height)}xe.width>A&&(A=xe.width),P+=xe.height+d,ne.push(G)}),P+=p,j){let de=(A-ie.width)/2;Dr(ee).attr("transform","translate( "+(-1*A/2+de)+", "+-1*P/2+")"),B=ie.height+d}let se=(A-ge.width)/2;return Dr(be).attr("transform","translate( "+(-1*A/2+se)+", "+(-1*P/2+B)+")"),B+=ge.height+d,E.attr("class","divider").attr("x1",-A/2-u).attr("x2",A/2+u).attr("y1",-P/2-u+p+B).attr("y2",-P/2-u+p+B),B+=p,ae.forEach(de=>{Dr(de).attr("transform","translate( "+-A/2+", "+(-1*P/2+B+p/2)+")");const X=de==null?void 0:de.getBBox();B+=((X==null?void 0:X.height)??0)+d}),B+=p,_.attr("class","divider").attr("x1",-A/2-u).attr("x2",A/2+u).attr("y1",-P/2-u+p+B).attr("y2",-P/2-u+p+B),B+=p,ne.forEach(de=>{Dr(de).attr("transform","translate( "+-A/2+", "+(-1*P/2+B)+")");const X=de==null?void 0:de.getBBox();B+=((X==null?void 0:X.height)??0)+d}),y.attr("style",a.style).attr("class","outer title-state").attr("x",-A/2-u).attr("y",-(P/2)-u).attr("width",A+a.padding).attr("height",P+a.padding),Gh(a,y),a.intersect=function(de){return yh.rect(a,de)},b}};let JD={};const pJ=async(i,a,u)=>{let d,p;if(a.link){let v;qt().securityLevel==="sandbox"?v="_top":a.linkTarget&&(v=a.linkTarget||"_blank"),d=i.insert("svg:a").attr("xlink:href",a.link).attr("target",v),p=await tGe[a.shape](d,a,u)}else p=await tGe[a.shape](i,a,u),d=p;return a.tooltip&&p.attr("title",a.tooltip),a.class&&p.attr("class","node default "+a.class),d.attr("data-node","true"),d.attr("data-id",a.id),JD[a.id]=d,a.haveCallback&&JD[a.id].attr("class",JD[a.id].attr("class")+" clickable"),d},Fen=(i,a)=>{JD[a.id]=i},Ren=()=>{JD={}},ive=i=>{const a=JD[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?a.attr("transform","translate("+(i.x+d-i.width/2)+", "+(i.y-i.height/2-u)+")"):a.attr("transform","translate("+i.x+", "+i.y+")"),d},bJ=({flowchart:i})=>{var p,v;const a=((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=a+u;return{subGraphTitleTopMargin:a,subGraphTitleBottomMargin:u,subGraphTitleTotalMargin:d}},jen={rect:(i,a)=>{Xe.info("Creating subgraph rect for ",a.id,a);const u=qt(),d=i.insert("g").attr("class","cluster"+(a.class?" "+a.class:"")).attr("id",a.id),p=d.insert("rect",":first-child"),v=h1(u.flowchart.htmlLabels),b=d.insert("g").attr("class","cluster-label"),y=a.labelType==="markdown"?fJ(b,a.labelText,{style:a.labelStyle,useHtmlLabels:v}):b.node().appendChild(Y2(a.labelText,a.labelStyle,void 0,!0));let E=y.getBBox();if(h1(u.flowchart.htmlLabels)){const j=y.children[0],W=Dr(y);E=j.getBoundingClientRect(),W.attr("width",E.width),W.attr("height",E.height)}const _=0*a.padding,A=_/2,P=a.width<=E.width+_?E.width+_:a.width;a.width<=E.width+_?a.diff=(E.width-a.width)/2-a.padding/2:a.diff=-a.padding/2,Xe.trace("Data ",a,JSON.stringify(a)),p.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-P/2).attr("y",a.y-a.height/2-A).attr("width",P).attr("height",a.height+_);const{subGraphTitleTopMargin:R}=bJ(u);v?b.attr("transform",`translate(${a.x-E.width/2}, ${a.y-a.height/2+R})`):b.attr("transform",`translate(${a.x}, ${a.y-a.height/2+R})`);const B=p.node().getBBox();return a.width=B.width,a.height=B.height,a.intersect=function(j){return RR(a,j)},d},roundedWithTitle:(i,a)=>{const u=qt(),d=i.insert("g").attr("class",a.classes).attr("id",a.id),p=d.insert("rect",":first-child"),v=d.insert("g").attr("class","cluster-label"),b=d.append("rect"),y=v.node().appendChild(Y2(a.labelText,a.labelStyle,void 0,!0));let E=y.getBBox();if(h1(u.flowchart.htmlLabels)){const j=y.children[0],W=Dr(y);E=j.getBoundingClientRect(),W.attr("width",E.width),W.attr("height",E.height)}E=y.getBBox();const _=0*a.padding,A=_/2,P=a.width<=E.width+a.padding?E.width+a.padding:a.width;a.width<=E.width+a.padding?a.diff=(E.width+a.padding*0-a.width)/2:a.diff=-a.padding/2,p.attr("class","outer").attr("x",a.x-P/2-A).attr("y",a.y-a.height/2-A).attr("width",P+_).attr("height",a.height+_),b.attr("class","inner").attr("x",a.x-P/2-A).attr("y",a.y-a.height/2-A+E.height-1).attr("width",P+_).attr("height",a.height+_-E.height-3);const{subGraphTitleTopMargin:R}=bJ(u);v.attr("transform",`translate(${a.x-E.width/2}, ${a.y-a.height/2-a.padding/3+(h1(u.flowchart.htmlLabels)?5:3)+R})`);const B=p.node().getBBox();return a.height=B.height,a.intersect=function(j){return RR(a,j)},d},noteGroup:(i,a)=>{const u=i.insert("g").attr("class","note-cluster").attr("id",a.id),d=u.insert("rect",":first-child"),p=0*a.padding,v=p/2;d.attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-a.width/2-v).attr("y",a.y-a.height/2-v).attr("width",a.width+p).attr("height",a.height+p).attr("fill","none");const b=d.node().getBBox();return a.width=b.width,a.height=b.height,a.intersect=function(y){return RR(a,y)},u},divider:(i,a)=>{const u=i.insert("g").attr("class",a.classes).attr("id",a.id),d=u.insert("rect",":first-child"),p=0*a.padding,v=p/2;d.attr("class","divider").attr("x",a.x-a.width/2-v).attr("y",a.y-a.height/2).attr("width",a.width+p).attr("height",a.height+p);const b=d.node().getBBox();return a.width=b.width,a.height=b.height,a.diff=-a.padding/2,a.intersect=function(y){return RR(a,y)},u}};let nGe={};const $en=(i,a)=>{Xe.trace("Inserting cluster");const u=a.shape||"rect";nGe[a.id]=jen[u](i,a)},zen=()=>{nGe={}},F9={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function mJ(i,a){if(i===void 0||a===void 0)return{angle:0,deltaX:0,deltaY:0};i=vJ(i),a=vJ(a);const[u,d]=[i.x,i.y],[p,v]=[a.x,a.y],b=p-u,y=v-d;return{angle:Math.atan(y/b),deltaX:b,deltaY:y}}const vJ=i=>Array.isArray(i)?{x:i[0],y:i[1]}:i,rGe=i=>({x:function(a,u,d){let p=0;if(u===0&&Object.hasOwn(F9,i.arrowTypeStart)){const{angle:v,deltaX:b}=mJ(d[0],d[1]);p=F9[i.arrowTypeStart]*Math.cos(v)*(b>=0?1:-1)}else if(u===d.length-1&&Object.hasOwn(F9,i.arrowTypeEnd)){const{angle:v,deltaX:b}=mJ(d[d.length-1],d[d.length-2]);p=F9[i.arrowTypeEnd]*Math.cos(v)*(b>=0?1:-1)}return vJ(a).x+p},y:function(a,u,d){let p=0;if(u===0&&Object.hasOwn(F9,i.arrowTypeStart)){const{angle:v,deltaY:b}=mJ(d[0],d[1]);p=F9[i.arrowTypeStart]*Math.abs(Math.sin(v))*(b>=0?1:-1)}else if(u===d.length-1&&Object.hasOwn(F9,i.arrowTypeEnd)){const{angle:v,deltaY:b}=mJ(d[d.length-1],d[d.length-2]);p=F9[i.arrowTypeEnd]*Math.abs(Math.sin(v))*(b>=0?1:-1)}return vJ(a).y+p}}),iGe=(i,a,u,d,p)=>{a.arrowTypeStart&&sGe(i,"start",a.arrowTypeStart,u,d,p),a.arrowTypeEnd&&sGe(i,"end",a.arrowTypeEnd,u,d,p)},qen={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},sGe=(i,a,u,d,p,v)=>{const b=qen[u];if(!b){Xe.warn(`Unknown arrow type: ${u}`);return}const y=a==="start"?"Start":"End";i.attr(`marker-${a}`,`url(${d}#${p}_${v}-${b}${y})`)};let wJ={},Vd={};const Hen=()=>{wJ={},Vd={}},sve=(i,a)=>{const u=h1(qt().flowchart.htmlLabels),d=a.labelType==="markdown"?fJ(i,a.label,{style:a.labelStyle,useHtmlLabels:u,addSvgBackground:!0}):Y2(a.label,a.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 E=d.children[0],_=Dr(d);b=E.getBoundingClientRect(),_.attr("width",b.width),_.attr("height",b.height)}v.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),wJ[a.id]=p,a.width=b.width,a.height=b.height;let y;if(a.startLabelLeft){const E=Y2(a.startLabelLeft,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=A.node().appendChild(E);const P=E.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),Vd[a.id]||(Vd[a.id]={}),Vd[a.id].startLeft=_,yJ(y,a.startLabelLeft)}if(a.startLabelRight){const E=Y2(a.startLabelRight,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=_.node().appendChild(E),A.node().appendChild(E);const P=E.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),Vd[a.id]||(Vd[a.id]={}),Vd[a.id].startRight=_,yJ(y,a.startLabelRight)}if(a.endLabelLeft){const E=Y2(a.endLabelLeft,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=A.node().appendChild(E);const P=E.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),_.node().appendChild(E),Vd[a.id]||(Vd[a.id]={}),Vd[a.id].endLeft=_,yJ(y,a.endLabelLeft)}if(a.endLabelRight){const E=Y2(a.endLabelRight,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),A=_.insert("g").attr("class","inner");y=A.node().appendChild(E);const P=E.getBBox();A.attr("transform","translate("+-P.width/2+", "+-P.height/2+")"),_.node().appendChild(E),Vd[a.id]||(Vd[a.id]={}),Vd[a.id].endRight=_,yJ(y,a.endLabelRight)}return d};function yJ(i,a){qt().flowchart.htmlLabels&&i&&(i.style.width=a.length*9+"px",i.style.height="12px")}const aGe=(i,a)=>{Xe.debug("Moving label abc88 ",i.id,i.label,wJ[i.id],a);let u=a.updatedPath?a.updatedPath:a.originalPath;const d=qt(),{subGraphTitleTotalMargin:p}=bJ(d);if(i.label){const v=wJ[i.id];let b=i.x,y=i.y;if(u){const E=So.calcLabelPosition(u);Xe.debug("Moving label "+i.label+" from (",b,",",y,") to (",E.x,",",E.y,") abc88"),a.updatedPath&&(b=E.x,y=E.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 E=So.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_left",u);b=E.x,y=E.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 E=So.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_right",u);b=E.x,y=E.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 E=So.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_left",u);b=E.x,y=E.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 E=So.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_right",u);b=E.x,y=E.y}v.attr("transform",`translate(${b}, ${y})`)}},Uen=(i,a)=>{const u=i.x,d=i.y,p=Math.abs(a.x-u),v=Math.abs(a.y-d),b=i.width/2,y=i.height/2;return p>=b||v>=y},Ven=(i,a,u)=>{Xe.debug(`intersection calc abc89:373 outsidePoint: ${JSON.stringify(a)}374 insidePoint : ${JSON.stringify(u)}375 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.x<a.x?b-v:b+v;const E=i.height/2,_=Math.abs(a.y-u.y),A=Math.abs(a.x-u.x);if(Math.abs(p-a.y)*b>Math.abs(d-a.x)*E){let P=u.y<a.y?a.y-E-p:p-E-a.y;y=A*P/_;const R={x:u.x<a.x?u.x+y:u.x-A+y,y:u.y<a.y?u.y+_-P:u.y-_+P};return y===0&&(R.x=a.x,R.y=a.y),A===0&&(R.x=a.x),_===0&&(R.y=a.y),Xe.debug(`abc89 topp/bott calc, Q ${_}, q ${P}, R ${A}, r ${y}`,R),R}else{u.x<a.x?y=a.x-b-d:y=d-b-a.x;let P=_*y/A,R=u.x<a.x?u.x+A-y:u.x-A+y,B=u.y<a.y?u.y+P:u.y-P;return Xe.debug(`sides calc abc89, Q ${_}, q ${P}, R ${A}, r ${y}`,{_x:R,_y:B}),y===0&&(R=a.x,B=a.y),A===0&&(R=a.x),_===0&&(B=a.y),{x:R,y:B}}},oGe=(i,a)=>{Xe.debug("abc88 cutPathAtIntersect",i,a);let u=[],d=i[0],p=!1;return i.forEach(v=>{if(!Uen(a,v)&&!p){const b=Ven(a,d,v);let y=!1;u.forEach(E=>{y=y||E.x===b.x&&E.y===b.y}),u.some(E=>E.x===b.x&&E.y===b.y)||u.push(b),p=!0}else d=v,p||u.push(v)}),u},cGe=function(i,a,u,d,p,v,b){let y=u.points;Xe.debug("abc88 InsertEdge: edge=",u,"e=",a);let E=!1;const _=v.node(a.v);var A=v.node(a.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=oGe(u.points,d[u.toCluster].node),E=!0),u.fromCluster&&(Xe.debug("from cluster abc88",d[u.fromCluster]),y=oGe(y.reverse(),d[u.fromCluster].node).reverse(),E=!0);const P=y.filter(ge=>!Number.isNaN(ge.y));let R=VF;u.curve&&(p==="graph"||p==="flowchart")&&(R=u.curve);const{x:B,y:j}=rGe(u),W=E7().x(B).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",W(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,"\\)")),iGe(ie,u,oe,b,p);let be={};return E&&(be.updatedPath=y),be.originalPath=u.points,be},uGe=async(i,a,u,d,p,v)=>{Xe.info("Graph in recursive render: XXX",H7(a),p);const b=a.graph().rankdir;Xe.trace("Dir in recursive render - dir:",b);const y=i.insert("g").attr("class","root");a.nodes()?Xe.info("Recursive render XXX",a.nodes()):Xe.info("No nodes found for",a),a.edges().length>0&&Xe.trace("Recursive edges",a.edge(a.edges()[0]));const E=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(a.nodes().map(async function(j){const W=a.node(j);if(p!==void 0){const ee=JSON.parse(JSON.stringify(p.clusterData));Xe.info("Setting data for cluster XXX (",j,") ",ee,p),a.setNode(p.id,ee),a.parent(j)||(Xe.trace("Setting parent",j,p.id),a.setParent(j,p.id,ee))}if(Xe.info("(Insert) Node XXX"+j+": "+JSON.stringify(a.node(j))),W&&W.clusterNode){Xe.info("Cluster identified",j,W.width,a.node(j));const ee=await uGe(P,W.graph,u,d,a.node(j),v),ie=ee.elem;Gh(W,ie),W.diff=ee.diff||0,Xe.info("Node bounds (abc123)",j,W,W.width,W.x,W.y),Fen(ie,W),Xe.warn("Recursive render complete ",ie,W)}else a.children(j).length>0?(Xe.info("Cluster - the non recursive path XXX",j,W.id,W,a),Xe.info(FR(W.id,a)),_o[W.id]={id:FR(W.id,a),node:W}):(Xe.info("Node - the non recursive path",j,W.id,W),await pJ(P,a.node(j),b))})),a.edges().forEach(function(j){const W=a.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(a.edge(j))),Xe.info("Fix",_o,"ids:",j.v,j.w,"Translating: ",_o[j.v],_o[j.w]),sve(A,W)}),a.edges().forEach(function(j){Xe.info("Edge "+j.v+" -> "+j.w+": "+JSON.stringify(j))}),Xe.info("#############################################"),Xe.info("### Layout ###"),Xe.info("#############################################"),Xe.info(a),XD(a),Xe.info("Graph after layout:",H7(a));let R=0;const{subGraphTitleTotalMargin:B}=bJ(v);return len(a).forEach(function(j){const W=a.node(j);Xe.info("Position "+j+": "+JSON.stringify(a.node(j))),Xe.info("Position "+j+": ("+W.x,","+W.y,") width: ",W.width," height: ",W.height),W&&W.clusterNode?(W.y+=B,ive(W)):a.children(j).length>0?(W.height+=B,$en(E,W),_o[W.id].node=W):(W.y+=B/2,ive(W))}),a.edges().forEach(function(j){const W=a.edge(j);Xe.info("Edge "+j.v+" -> "+j.w+": "+JSON.stringify(W),W),W.points.forEach(ie=>ie.y+=B/2);const ee=cGe(_,j,W,_o,u,a,d);aGe(W,ee)}),a.nodes().forEach(function(j){const W=a.node(j);Xe.info(j,W.type,W.diff),W.type==="group"&&(R=W.diff)}),{elem:y,diff:R}},ave=async(i,a,u,d,p)=>{Ume(i,u,d,p),Ren(),Hen(),zen(),oen(),Xe.warn("Graph at first:",JSON.stringify(H7(a))),uen(a),Xe.warn("Graph after:",JSON.stringify(H7(a)));const v=qt();await uGe(i,a,d,p,void 0,v)},lGe={},Gen=function(i){const a=Object.keys(i);for(const u of a)lGe[u]=i[u]},hGe=async function(i,a,u,d,p,v){const b=d.select(`[id="${u}"]`),y=Object.keys(i);for(const E of y){const _=i[E];let A="default";_.classes.length>0&&(A=_.classes.join(" ")),A=A+" flowchart-label";const P=gm(_.styles);let R=_.text!==void 0?_.text:_.id,B;if(Xe.info("vertex",_,_.labelType),_.labelType==="markdown")Xe.info("vertex",_,_.labelType);else if(h1(qt().flowchart.htmlLabels))B=Bme(b,{label:R}).node(),B.parentNode.removeChild(B);else{const ie=p.createElementNS("http://www.w3.org/2000/svg","text");ie.setAttribute("style",P.labelStyle.replace("color:","fill:"));const oe=R.split(oi.lineBreakRegex);for(const be of oe){const ge=p.createElementNS("http://www.w3.org/2000/svg","tspan");ge.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),ge.setAttribute("dy","1em"),ge.setAttribute("x","1"),ge.textContent=be,ie.appendChild(ge)}B=ie}let j=0,W="";switch(_.type){case"round":j=5,W="rect";break;case"square":W="rect";break;case"diamond":W="question";break;case"hexagon":W="hexagon";break;case"odd":W="rect_left_inv_arrow";break;case"lean_right":W="lean_right";break;case"lean_left":W="lean_left";break;case"trapezoid":W="trapezoid";break;case"inv_trapezoid":W="inv_trapezoid";break;case"odd_right":W="rect_left_inv_arrow";break;case"circle":W="circle";break;case"ellipse":W="ellipse";break;case"stadium":W="stadium";break;case"subroutine":W="subroutine";break;case"cylinder":W="cylinder";break;case"group":W="rect";break;case"doublecircle":W="doublecircle";break;default:W="rect"}const ee=await SC(R,qt());a.setNode(_.id,{labelStyle:P.labelStyle,shape:W,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:W,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})}},fGe=async function(i,a,u){Xe.info("abc78 edges = ",i);let d=0,p={},v,b;if(i.defaultStyle!==void 0){const y=gm(i.defaultStyle);v=y.style,b=y.labelStyle}for(const y of i){d++;const E="L-"+y.start+"-"+y.end;p[E]===void 0?(p[E]=0,Xe.info("abc78 new entry",E,p[E])):(p[E]++,Xe.info("abc78 new entry",E,p[E]));let _=E+"-"+p[E];Xe.info("abc78 new link id to be used is",E,_,p[E]);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 B="",j="";switch(y.stroke){case"normal":B="fill:none;",v!==void 0&&(B=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 W=gm(y.style);B=W.style,j=W.labelStyle}R.style=R.style+=B,R.labelStyle=R.labelStyle+=j,y.interpolate!==void 0?R.curve=qv(y.interpolate,Sp):i.defaultInterpolate!==void 0?R.curve=qv(i.defaultInterpolate,Sp):R.curve=qv(lGe.curve,Sp),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 SC(y.text.replace(oi.lineBreakRegex,`376`),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,a.setEdge(y.start,y.end,R,d)}},ove={setConf:Gen,addVertices:hGe,addEdges:fGe,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,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,E=b.rankSpacing||50;let _;v==="sandbox"&&(_=Dr("#i"+a));const A=Dr(v==="sandbox"?_.nodes()[0].contentDocument.body:"body"),P=v==="sandbox"?_.nodes()[0].contentDocument:document,R=new R0({multigraph:!0,compound:!0}).setGraph({rankdir:p,nodesep:y,ranksep:E,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let B;const j=d.db.getSubGraphs();Xe.info("Subgraphs - ",j);for(let ae=j.length-1;ae>=0;ae--)B=j[ae],Xe.info("Subgraph - ",B),d.db.addVertex(B.id,{text:B.title,type:B.labelType},"group",void 0,B.classes,B.dir);const W=d.db.getVertices(),ee=d.db.getEdges();Xe.info("Edges",ee);let ie=0;for(ie=j.length-1;ie>=0;ie--){B=j[ie],VBe("cluster").append("text");for(let ae=0;ae<B.nodes.length;ae++)Xe.info("Setting up subgraphs",B.nodes[ae],B.id),R.setParent(B.nodes[ae],B.id)}await hGe(W,R,a,A,P,d),await fGe(ee,R);const oe=A.select(`[id="${a}"]`),be=A.select("#"+a+" g");if(await ave(be,R,["point","circle","cross"],"flowchart",a),So.insertTitle(oe,"flowchartTitleText",b.titleTopMargin,d.db.getDiagramTitle()),x9(R,oe,b.diagramPadding,b.useMaxWidth),d.db.indexNodes("subGraph"+ie),!b.htmlLabels){const ae=P.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const ne of ae){const se=ne.getBBox(),de=P.createElementNS("http://www.w3.org/2000/svg","rect");de.setAttribute("rx",0),de.setAttribute("ry",0),de.setAttribute("width",se.width),de.setAttribute("height",se.height),ne.insertBefore(de,ne.firstChild)}}Object.keys(W).forEach(function(ae){const ne=W[ae];if(ne.link){const se=Dr("#"+a+' [id="'+ae+'"]');if(se){const de=P.createElementNS("http://www.w3.org/2000/svg","a");de.setAttributeNS("http://www.w3.org/2000/svg","class",ne.classes.join(" ")),de.setAttributeNS("http://www.w3.org/2000/svg","href",ne.link),de.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),v==="sandbox"?de.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):ne.linkTarget&&de.setAttributeNS("http://www.w3.org/2000/svg","target",ne.linkTarget);const X=se.insert(function(){return de},":first-child"),pe=se.select(".label-container");pe&&X.append(function(){return pe.node()});const G=se.select(".label");G&&X.append(function(){return G.node()})}}})}},Ken=(i,a)=>{const u=XRe,d=u(i,"r"),p=u(i,"g"),v=u(i,"b");return _C(d,p,v,a)},dGe=i=>`.label {377 font-family: ${i.fontFamily};378 color: ${i.nodeTextColor||i.textColor};379 }380 .cluster-label text {381 fill: ${i.titleColor};382 }383 .cluster-label span,p {384 color: ${i.titleColor};385 }386 387 .label text,span,p {388 fill: ${i.nodeTextColor||i.textColor};389 color: ${i.nodeTextColor||i.textColor};390 }391 392 .node rect,393 .node circle,394 .node ellipse,395 .node polygon,396 .node path {397 fill: ${i.mainBkg};398 stroke: ${i.nodeBorder};399 stroke-width: 1px;400 }401 .flowchart-label text {402 text-anchor: middle;403 }404 // .flowchart-label .text-outer-tspan {405 // text-anchor: middle;406 // }407 // .flowchart-label .text-inner-tspan {408 // text-anchor: start;409 // }410 411 .node .katex path {412 fill: #000;413 stroke: #000;414 stroke-width: 1px;415 }416 417 .node .label {418 text-align: center;419 }420 .node.clickable {421 cursor: pointer;422 }423 424 .arrowheadPath {425 fill: ${i.arrowheadColor};426 }427 428 .edgePath .path {429 stroke: ${i.lineColor};430 stroke-width: 2.0px;431 }432 433 .flowchart-link {434 stroke: ${i.lineColor};435 fill: none;436 }437 438 .edgeLabel {439 background-color: ${i.edgeLabelBackground};440 rect {441 opacity: 0.5;442 background-color: ${i.edgeLabelBackground};443 fill: ${i.edgeLabelBackground};444 }445 text-align: center;446 }447 448 /* For html labels only */449 .labelBkg {450 background-color: ${Ken(i.edgeLabelBackground,.5)};451 // background-color: 452 }453 454 .cluster rect {455 fill: ${i.clusterBkg};456 stroke: ${i.clusterBorder};457 stroke-width: 1px;458 }459 460 .cluster text {461 fill: ${i.titleColor};462 }463 464 .cluster span,p {465 color: ${i.titleColor};466 }467 /* .cluster div {468 color: ${i.titleColor};469 } */470 471 div.mermaidTooltip {472 position: absolute;473 text-align: center;474 max-width: 200px;475 padding: 2px;476 font-family: ${i.fontFamily};477 font-size: 12px;478 background: ${i.tertiaryColor};479 border: 1px solid ${i.border2};480 border-radius: 2px;481 pointer-events: none;482 z-index: 100;483 }484 485 .flowchartTitleText {486 text-anchor: middle;487 font-size: 18px;488 fill: ${i.textColor};489 }490`,Wen=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:lme,db:UC,renderer:ove,styles:dGe,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,WQt.setConf(i.flowchart),UC.clear(),UC.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),Yen=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:lme,db:UC,renderer:ove,styles:dGe,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,c$t({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),ove.setConf(i.flowchart),UC.clear(),UC.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var cve=function(){var i=function(de,X,pe,G){for(pe=pe||{},G=de.length;G--;pe[de[G]]=X);return pe},a=[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],E=[1,21],_=[1,22],A=[1,23],P=[1,24],R=[1,25],B=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],j=[1,34],W=[27,28,46,47],ee=[41,42,43,44,45],ie=[17,34],oe=[1,54],be=[1,53],ge=[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,pe,G,xe,U,Be,Pe){var je=Be.length-1;switch(U){case 1:break;case 2:this.$=[];break;case 3:Be[je-1].push(Be[je]),this.$=Be[je-1];break;case 4:case 5:this.$=Be[je];break;case 6:case 7:this.$=[];break;case 8:xe.addEntity(Be[je-4]),xe.addEntity(Be[je-2]),xe.addRelationship(Be[je-4],Be[je],Be[je-2],Be[je-3]);break;case 9:xe.addEntity(Be[je-3]),xe.addAttributes(Be[je-3],Be[je-1]);break;case 10:xe.addEntity(Be[je-2]);break;case 11:xe.addEntity(Be[je]);break;case 12:xe.addEntity(Be[je-6],Be[je-4]),xe.addAttributes(Be[je-6],Be[je-1]);break;case 13:xe.addEntity(Be[je-5],Be[je-3]);break;case 14:xe.addEntity(Be[je-3],Be[je-1]);break;case 15:case 16:this.$=Be[je].trim(),xe.setAccTitle(this.$);break;case 17:case 18:this.$=Be[je].trim(),xe.setAccDescription(this.$);break;case 19:case 43:this.$=Be[je];break;case 20:case 41:case 42:this.$=Be[je].replace(/"/g,"");break;case 21:case 29:this.$=[Be[je]];break;case 22:Be[je].push(Be[je-1]),this.$=Be[je];break;case 23:this.$={attributeType:Be[je-1],attributeName:Be[je]};break;case 24:this.$={attributeType:Be[je-2],attributeName:Be[je-1],attributeKeyTypeList:Be[je]};break;case 25:this.$={attributeType:Be[je-2],attributeName:Be[je-1],attributeComment:Be[je]};break;case 26:this.$={attributeType:Be[je-3],attributeName:Be[je-2],attributeKeyTypeList:Be[je-1],attributeComment:Be[je]};break;case 27:case 28:case 31:this.$=Be[je];break;case 30:Be[je-2].push(Be[je]),this.$=Be[je-2];break;case 32:this.$=Be[je].replace(/"/g,"");break;case 33:this.$={cardA:Be[je],relType:Be[je-1],cardB:Be[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(a,[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(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:16,11:9,20:u,22:d,24:p,26:v,27:b,28:y},i(a,[2,5]),i(a,[2,6]),i(a,[2,11],{12:17,39:20,15:[1,18],18:[1,19],41:E,42:_,43:A,44:P,45:R}),{21:[1,26]},{23:[1,27]},{25:[1,28]},i(a,[2,18]),i(B,[2,19]),i(B,[2,20]),i(a,[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(W,[2,34]),i(W,[2,35]),i(W,[2,36]),i(W,[2,37]),i(W,[2,38]),i(a,[2,15]),i(a,[2,16]),i(a,[2,17]),{13:[1,39]},{17:[1,40]},i(a,[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:E,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(a,[2,9]),{17:[2,22]},i(ie,[2,23],{32:50,33:51,35:52,37:oe,38:be}),i([17,34,37,38],[2,28]),i(a,[2,14],{15:[1,55]}),i([27,28],[2,33]),i(a,[2,8]),i(a,[2,41]),i(a,[2,42]),i(a,[2,43]),i(ie,[2,24],{33:56,36:[1,57],38:be}),i(ie,[2,25]),i(ge,[2,29]),i(ie,[2,32]),i(ge,[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(a,[2,13]),i(ge,[2,30]),i(a,[2,12])],defaultActions:{34:[2,27],41:[2,22]},parseError:function(X,pe){if(pe.recoverable)this.trace(X);else{var G=new Error(X);throw G.hash=pe,G}},parse:function(X){var pe=this,G=[0],xe=[],U=[null],Be=[],Pe=this.table,je="",Ie=0,Se=0,Ce=2,ke=1,Ke=Be.slice.call(arguments,1),zt=Object.create(this.lexer),Ne={yy:{}};for(var pn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,pn)&&(Ne.yy[pn]=this.yy[pn]);zt.setInput(X,Ne.yy),Ne.yy.lexer=zt,Ne.yy.parser=this,typeof zt.yylloc>"u"&&(zt.yylloc={});var Tt=zt.yylloc;Be.push(Tt);var Et=zt.options&&zt.options.ranges;typeof Ne.yy.parseError=="function"?this.parseError=Ne.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Wt(){var Ri;return Ri=xe.pop()||zt.lex()||ke,typeof Ri!="number"&&(Ri instanceof Array&&(xe=Ri,Ri=xe.pop()),Ri=pe.symbols_[Ri]||Ri),Ri}for(var un,yt,Bt,Ze,Dt={},kt,Nn,ht,qr;;){if(yt=G[G.length-1],this.defaultActions[yt]?Bt=this.defaultActions[yt]:((un===null||typeof un>"u")&&(un=Wt()),Bt=Pe[yt]&&Pe[yt][un]),typeof Bt>"u"||!Bt.length||!Bt[0]){var xt="";qr=[];for(kt in Pe[yt])this.terminals_[kt]&&kt>Ce&&qr.push("'"+this.terminals_[kt]+"'");zt.showPosition?xt="Parse error on line "+(Ie+1)+`:491`+zt.showPosition()+`492Expecting `+qr.join(", ")+", got '"+(this.terminals_[un]||un)+"'":xt="Parse error on line "+(Ie+1)+": Unexpected "+(un==ke?"end of input":"'"+(this.terminals_[un]||un)+"'"),this.parseError(xt,{text:zt.match,token:this.terminals_[un]||un,line:zt.yylineno,loc:Tt,expected:qr})}if(Bt[0]instanceof Array&&Bt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+yt+", token: "+un);switch(Bt[0]){case 1:G.push(un),U.push(zt.yytext),Be.push(zt.yylloc),G.push(Bt[1]),un=null,Se=zt.yyleng,je=zt.yytext,Ie=zt.yylineno,Tt=zt.yylloc;break;case 2:if(Nn=this.productions_[Bt[1]][1],Dt.$=U[U.length-Nn],Dt._$={first_line:Be[Be.length-(Nn||1)].first_line,last_line:Be[Be.length-1].last_line,first_column:Be[Be.length-(Nn||1)].first_column,last_column:Be[Be.length-1].last_column},Et&&(Dt._$.range=[Be[Be.length-(Nn||1)].range[0],Be[Be.length-1].range[1]]),Ze=this.performAction.apply(Dt,[je,Se,Ie,Ne.yy,Bt[1],U,Be].concat(Ke)),typeof Ze<"u")return Ze;Nn&&(G=G.slice(0,-1*Nn*2),U=U.slice(0,-1*Nn),Be=Be.slice(0,-1*Nn)),G.push(this.productions_[Bt[1]][0]),U.push(Dt.$),Be.push(Dt._$),ht=Pe[G[G.length-2]][G[G.length-1]],G.push(ht);break;case 3:return!0}}return!0}},ne=function(){var de={EOF:1,parseError:function(pe,G){if(this.yy.parser)this.yy.parser.parseError(pe,G);else throw new Error(pe)},setInput:function(X,pe){return this.yy=pe||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 pe=X.match(/(?:\r\n?|\n).*/g);return pe?(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 pe=X.length,G=X.split(/(?:\r\n?|\n)/g);this._input=X+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-pe),this.offset-=pe;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),G.length-1&&(this.yylineno-=G.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:G?(G.length===xe.length?this.yylloc.first_column:0)+xe[xe.length-G.length].length-G[0].length:this.yylloc.first_column-pe},this.options.ranges&&(this.yylloc.range=[U[0],U[0]+this.yyleng-pe]),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).493`+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(),pe=new Array(X.length+1).join("-");return X+this.upcomingInput()+`494`+pe+"^"},test_match:function(X,pe){var G,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],G=this.performAction.call(this,this.yy,this,pe,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),G)return G;if(this._backtrack){for(var Be in U)this[Be]=U[Be];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var X,pe,G,xe;this._more||(this.yytext="",this.match="");for(var U=this._currentRules(),Be=0;Be<U.length;Be++)if(G=this._input.match(this.rules[U[Be]]),G&&(!pe||G[0].length>pe[0].length)){if(pe=G,xe=Be,this.options.backtrack_lexer){if(X=this.test_match(G,U[Be]),X!==!1)return X;if(this._backtrack){pe=!1;continue}else return!1}else if(!this.options.flex)break}return pe?(X=this.test_match(pe,U[xe]),X!==!1?X:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.495`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var pe=this.next();return pe||this.lex()},begin:function(pe){this.conditionStack.push(pe)},popState:function(){var pe=this.conditionStack.length-1;return pe>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(pe){return pe=this.conditionStack.length-1-Math.abs(pe||0),pe>=0?this.conditionStack[pe]:"INITIAL"},pushState:function(pe){this.begin(pe)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(pe,G,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 G.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 G.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}();cve.parser=cve;const Xen=cve;let R9={},uve=[];const Qen={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"},Jen={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},gGe=function(i,a=void 0){return R9[i]===void 0?(R9[i]={attributes:[],alias:a},Xe.info("Added new entity :",i)):R9[i]&&!R9[i].alias&&a&&(R9[i].alias=a,Xe.info(`Add alias '${a}' to entity '${i}'`)),R9[i]},Zen={Cardinality:Qen,Identification:Jen,getConfig:()=>qt().er,addEntity:gGe,addAttributes:function(i,a){let u=gGe(i),d;for(d=a.length-1;d>=0;d--)u.attributes.push(a[d]),Xe.debug("Added attribute ",a[d].attributeName)},getEntities:()=>R9,addRelationship:function(i,a,u,d){let p={entityA:i,roleA:a,entityB:u,relSpec:d};uve.push(p),Xe.debug("Added new relationship :",p)},getRelationships:()=>uve,clear:function(){R9={},uve=[],Rg()},setAccTitle:jg,getAccTitle:Mp,setAccDescription:Dp,getAccDescription:Ip,setDiagramTitle:pm,getDiagramTitle:Op},Y3={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"},X3={ERMarkers:Y3,insertMarkers:function(i,a){let u;i.append("defs").append("marker").attr("id",Y3.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",Y3.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",Y3.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),i.append("defs").append("marker").attr("id",Y3.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),u=i.append("defs").append("marker").attr("id",Y3.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),u.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),u.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M9,0 L9,18"),u=i.append("defs").append("marker").attr("id",Y3.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),u.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),u.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,0 L21,18"),i.append("defs").append("marker").attr("id",Y3.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.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",Y3.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",a.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",Y3.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),u.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),u.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),u=i.append("defs").append("marker").attr("id",Y3.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),u.append("circle").attr("stroke",a.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),u.append("path").attr("stroke",a.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}},etn=/^(?:[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 ttn(i){return typeof i=="string"&&etn.test(i)}const Gd=[];for(let i=0;i<256;++i)Gd.push((i+256).toString(16).slice(1));function ntn(i,a=0){return Gd[i[a+0]]+Gd[i[a+1]]+Gd[i[a+2]]+Gd[i[a+3]]+"-"+Gd[i[a+4]]+Gd[i[a+5]]+"-"+Gd[i[a+6]]+Gd[i[a+7]]+"-"+Gd[i[a+8]]+Gd[i[a+9]]+"-"+Gd[i[a+10]]+Gd[i[a+11]]+Gd[i[a+12]]+Gd[i[a+13]]+Gd[i[a+14]]+Gd[i[a+15]]}function rtn(i){if(!ttn(i))throw TypeError("Invalid UUID");let a;const u=new Uint8Array(16);return u[0]=(a=parseInt(i.slice(0,8),16))>>>24,u[1]=a>>>16&255,u[2]=a>>>8&255,u[3]=a&255,u[4]=(a=parseInt(i.slice(9,13),16))>>>8,u[5]=a&255,u[6]=(a=parseInt(i.slice(14,18),16))>>>8,u[7]=a&255,u[8]=(a=parseInt(i.slice(19,23),16))>>>8,u[9]=a&255,u[10]=(a=parseInt(i.slice(24,36),16))/1099511627776&255,u[11]=a/4294967296&255,u[12]=a>>>24&255,u[13]=a>>>16&255,u[14]=a>>>8&255,u[15]=a&255,u}function itn(i){i=unescape(encodeURIComponent(i));const a=[];for(let u=0;u<i.length;++u)a.push(i.charCodeAt(u));return a}const stn="6ba7b810-9dad-11d1-80b4-00c04fd430c8",atn="6ba7b811-9dad-11d1-80b4-00c04fd430c8";function otn(i,a,u){function d(p,v,b,y){var E;if(typeof p=="string"&&(p=itn(p)),typeof v=="string"&&(v=rtn(v)),((E=v)===null||E===void 0?void 0:E.length)!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let _=new Uint8Array(16+p.length);if(_.set(v),_.set(p,v.length),_=u(_),_[6]=_[6]&15|a,_[8]=_[8]&63|128,b){y=y||0;for(let A=0;A<16;++A)b[y+A]=_[A];return b}return ntn(_)}try{d.name=i}catch{}return d.DNS=stn,d.URL=atn,d}function ctn(i,a,u,d){switch(i){case 0:return a&u^~a&d;case 1:return a^u^d;case 2:return a&u^a&d^u&d;case 3:return a^u^d}}function lve(i,a){return i<<a|i>>>32-a}function utn(i){const a=[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<b.length;++y)i.push(b.charCodeAt(y))}else Array.isArray(i)||(i=Array.prototype.slice.call(i));i.push(128);const d=i.length/4+2,p=Math.ceil(d/16),v=new Array(p);for(let b=0;b<p;++b){const y=new Uint32Array(16);for(let E=0;E<16;++E)y[E]=i[b*64+E*4]<<24|i[b*64+E*4+1]<<16|i[b*64+E*4+2]<<8|i[b*64+E*4+3];v[b]=y}v[p-1][14]=(i.length-1)*8/Math.pow(2,32),v[p-1][14]=Math.floor(v[p-1][14]),v[p-1][15]=(i.length-1)*8&4294967295;for(let b=0;b<p;++b){const y=new Uint32Array(80);for(let B=0;B<16;++B)y[B]=v[b][B];for(let B=16;B<80;++B)y[B]=lve(y[B-3]^y[B-8]^y[B-14]^y[B-16],1);let E=u[0],_=u[1],A=u[2],P=u[3],R=u[4];for(let B=0;B<80;++B){const j=Math.floor(B/20),W=lve(E,5)+ctn(j,_,A,P)+R+a[j]+y[B]>>>0;R=P,P=A,A=lve(_,30)>>>0,_=E,E=W}u[0]=u[0]+E>>>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 ltn=otn("v5",80,utn),htn=/[^\dA-Za-z](\W)*/g;let p1={},jR=new Map;const ftn=function(i){const a=Object.keys(i);for(const u of a)p1[u]=i[u]},dtn=(i,a,u)=>{const d=p1.entityPadding/3,p=p1.entityPadding/3,v=p1.fontSize*.85,b=a.node().getBBox(),y=[];let E=!1,_=!1,A=0,P=0,R=0,B=0,j=b.height+d*2,W=1;u.forEach(be=>{be.attributeKeyTypeList!==void 0&&be.attributeKeyTypeList.length>0&&(E=!0),be.attributeComment!==void 0&&(_=!0)}),u.forEach(be=>{const ge=`${a.node().id}-attr-${W}`;let ae=0;const ne=JF(be.attributeType),se=i.append("text").classed("er entityLabel",!0).attr("id",`${ge}-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",`${ge}-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(be.attributeName),X={};X.tn=se,X.nn=de;const pe=se.node().getBBox(),G=de.node().getBBox();if(A=Math.max(A,pe.width),P=Math.max(P,G.width),ae=Math.max(pe.height,G.height),E){const xe=be.attributeKeyTypeList!==void 0?be.attributeKeyTypeList.join(","):"",U=i.append("text").classed("er entityLabel",!0).attr("id",`${ge}-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 Be=U.node().getBBox();R=Math.max(R,Be.width),ae=Math.max(ae,Be.height)}if(_){const xe=i.append("text").classed("er entityLabel",!0).attr("id",`${ge}-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(be.attributeComment||"");X.cn=xe;const U=xe.node().getBBox();B=Math.max(B,U.width),ae=Math.max(ae,U.height)}X.height=ae,y.push(X),j+=ae+d*2,W+=1});let ee=4;E&&(ee+=2),_&&(ee+=2);const ie=A+P+R+B,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 be=Math.max(0,(oe.width-ie-p*ee)/(ee/2));a.attr("transform","translate("+oe.width/2+","+(d+b.height/2)+")");let ge=b.height+d*2,ae="attributeBoxOdd";y.forEach(ne=>{const se=ge+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",ge).attr("width",A+p*2+be).attr("height",ne.height+d*2),X=parseFloat(de.attr("x"))+parseFloat(de.attr("width"));ne.nn.attr("transform","translate("+(X+p)+","+se+")");const pe=i.insert("rect","#"+ne.nn.node().id).classed(`er ${ae}`,!0).attr("x",X).attr("y",ge).attr("width",P+p*2+be).attr("height",ne.height+d*2);let G=parseFloat(pe.attr("x"))+parseFloat(pe.attr("width"));if(E){ne.kn.attr("transform","translate("+(G+p)+","+se+")");const xe=i.insert("rect","#"+ne.kn.node().id).classed(`er ${ae}`,!0).attr("x",G).attr("y",ge).attr("width",R+p*2+be).attr("height",ne.height+d*2);G=parseFloat(xe.attr("x"))+parseFloat(xe.attr("width"))}_&&(ne.cn.attr("transform","translate("+(G+p)+","+se+")"),i.insert("rect","#"+ne.cn.node().id).classed(`er ${ae}`,"true").attr("x",G).attr("y",ge).attr("width",B+p*2+be).attr("height",ne.height+d*2)),ge+=ne.height+d*2,ae=ae==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else oe.height=Math.max(p1.minEntityHeight,j),a.attr("transform","translate("+oe.width/2+","+oe.height/2+")");return oe},gtn=function(i,a,u){const d=Object.keys(a);let p;return d.forEach(function(v){const b=ytn(v,"entity");jR.set(v,b);const y=i.append("g").attr("id",b);p=p===void 0?b:p;const E="text-"+b,_=y.append("text").classed("er entityLabel",!0).attr("id",E).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(a[v].alias??v),{width:A,height:P}=dtn(y,_,a[v].attributes),B=y.insert("rect","#"+E).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",A).attr("height",P).node().getBBox();u.setNode(b,{width:B.width,height:B.height,shape:"rect",id:b})}),p},ptn=function(i,a){a.nodes().forEach(function(u){u!==void 0&&a.node(u)!==void 0&&i.select("#"+u).attr("transform","translate("+(a.node(u).x-a.node(u).width/2)+","+(a.node(u).y-a.node(u).height/2)+" )")})},pGe=function(i){return(i.entityA+i.roleA+i.entityB).replace(/\s/g,"")},btn=function(i,a){return i.forEach(function(u){a.setEdge(jR.get(u.entityA),jR.get(u.entityB),{relationship:u},pGe(u))}),i};let bGe=0;const mtn=function(i,a,u,d,p){bGe++;const v=u.edge(jR.get(a.entityA),jR.get(a.entityB),pGe(a)),b=E7().x(function(j){return j.x}).y(function(j){return j.y}).curve(VF),y=i.insert("path","#"+d).classed("er relationshipLine",!0).attr("d",b(v.points)).style("stroke",p1.stroke).style("fill","none");a.relSpec.relType===p.db.Identification.NON_IDENTIFYING&&y.attr("stroke-dasharray","8,8");let E="";switch(p1.arrowMarkerAbsolute&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\("),E=E.replace(/\)/g,"\\)")),a.relSpec.cardA){case p.db.Cardinality.ZERO_OR_ONE:y.attr("marker-end","url("+E+"#"+X3.ERMarkers.ZERO_OR_ONE_END+")");break;case p.db.Cardinality.ZERO_OR_MORE:y.attr("marker-end","url("+E+"#"+X3.ERMarkers.ZERO_OR_MORE_END+")");break;case p.db.Cardinality.ONE_OR_MORE:y.attr("marker-end","url("+E+"#"+X3.ERMarkers.ONE_OR_MORE_END+")");break;case p.db.Cardinality.ONLY_ONE:y.attr("marker-end","url("+E+"#"+X3.ERMarkers.ONLY_ONE_END+")");break;case p.db.Cardinality.MD_PARENT:y.attr("marker-end","url("+E+"#"+X3.ERMarkers.MD_PARENT_END+")");break}switch(a.relSpec.cardB){case p.db.Cardinality.ZERO_OR_ONE:y.attr("marker-start","url("+E+"#"+X3.ERMarkers.ZERO_OR_ONE_START+")");break;case p.db.Cardinality.ZERO_OR_MORE:y.attr("marker-start","url("+E+"#"+X3.ERMarkers.ZERO_OR_MORE_START+")");break;case p.db.Cardinality.ONE_OR_MORE:y.attr("marker-start","url("+E+"#"+X3.ERMarkers.ONE_OR_MORE_START+")");break;case p.db.Cardinality.ONLY_ONE:y.attr("marker-start","url("+E+"#"+X3.ERMarkers.ONLY_ONE_START+")");break;case p.db.Cardinality.MD_PARENT:y.attr("marker-start","url("+E+"#"+X3.ERMarkers.MD_PARENT_START+")");break}const _=y.node().getTotalLength(),A=y.node().getPointAtLength(_*.5),P="rel"+bGe,B=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(a.roleA).node().getBBox();i.insert("rect","#"+P).classed("er relationshipLabelBox",!0).attr("x",A.x-B.width/2).attr("y",A.y-B.height/2).attr("width",B.width).attr("height",B.height)},vtn=function(i,a,u,d){p1=qt().er,Xe.info("Drawing ER diagram");const p=qt().securityLevel;let v;p==="sandbox"&&(v=Dr("#i"+a));const y=Dr(p==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);X3.insertMarkers(y,p1);let E;E=new R0({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:p1.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const _=gtn(y,d.db.getEntities(),E),A=btn(d.db.getRelationships(),E);XD(E),ptn(y,E),A.forEach(function(W){mtn(y,W,E,_,d)});const P=p1.diagramPadding;So.insertTitle(y,"entityTitleText",p1.titleTopMargin,d.db.getDiagramTitle());const R=y.node().getBBox(),B=R.width+P*2,j=R.height+P*2;Fg(y,j,B,p1.useMaxWidth),y.attr("viewBox",`${R.x-P} ${R.y-P} ${B} ${j}`)},wtn="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function ytn(i="",a=""){const u=i.replace(htn,"");return`${mGe(a)}${mGe(u)}${ltn(i,wtn)}`}function mGe(i=""){return i.length>0?`${i}-`:""}const xtn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Xen,db:Zen,renderer:{setConf:ftn,draw:vtn},styles:i=>`496 .entityBox {497 fill: ${i.mainBkg};498 stroke: ${i.nodeBorder};499 }500 501 .attributeBoxOdd {502 fill: ${i.attributeBackgroundColorOdd};503 stroke: ${i.nodeBorder};504 }505 506 .attributeBoxEven {507 fill: ${i.attributeBackgroundColorEven};508 stroke: ${i.nodeBorder};509 }510 511 .relationshipLabelBox {512 fill: ${i.tertiaryColor};513 opacity: 0.7;514 background-color: ${i.tertiaryColor};515 rect {516 opacity: 0.5;517 }518 }519 520 .relationshipLine {521 stroke: ${i.lineColor};522 }523 524 .entityTitleText {525 text-anchor: middle;526 font-size: 18px;527 fill: ${i.textColor};528 } 529 #MD_PARENT_START {530 fill: #f5f5f5 !important;531 stroke: ${i.lineColor} !important;532 stroke-width: 1;533 }534 #MD_PARENT_END {535 fill: #f5f5f5 !important;536 stroke: ${i.lineColor} !important;537 stroke-width: 1;538 }539 540`}},Symbol.toStringTag,{value:"Module"}));var hve=function(){var i=function(ae,ne,se,de){for(se=se||{},de=ae.length;de--;se[ae[de]]=ne);return se},a=[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],E=[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],B=[7,13,29,32,35,38,47],j=[1,55],W=[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,pe,G,xe){var U=G.length-1;switch(pe){case 2:return G[U];case 3:return G[U-1];case 4:return X.setDirection(G[U-3]),G[U-1];case 6:X.setOptions(G[U-1]),this.$=G[U];break;case 7:G[U-1]+=G[U],this.$=G[U-1];break;case 9:this.$=[];break;case 10:G[U-1].push(G[U]),this.$=G[U-1];break;case 11:this.$=G[U-1];break;case 16:this.$=G[U].trim(),X.setAccTitle(this.$);break;case 17:case 18:this.$=G[U].trim(),X.setAccDescription(this.$);break;case 19:X.addSection(G[U].substr(8)),this.$=G[U].substr(8);break;case 21:X.checkout(G[U]);break;case 22:X.branch(G[U]);break;case 23:X.branch(G[U-2],G[U]);break;case 24:X.cherryPick(G[U],"",void 0);break;case 25:X.cherryPick(G[U-2],"",void 0,G[U]);break;case 26:X.cherryPick(G[U-2],"",G[U]);break;case 27:X.cherryPick(G[U-4],"",G[U],G[U-2]);break;case 28:X.cherryPick(G[U-4],"",G[U-2],G[U]);break;case 29:X.cherryPick(G[U],"",G[U-2]);break;case 30:X.cherryPick(G[U],"","");break;case 31:X.cherryPick(G[U-2],"","");break;case 32:X.cherryPick(G[U-4],"","",G[U-2]);break;case 33:X.cherryPick(G[U-4],"","",G[U]);break;case 34:X.cherryPick(G[U-2],"",G[U-4],G[U]);break;case 35:X.cherryPick(G[U-2],"","",G[U]);break;case 36:X.merge(G[U],"","","");break;case 37:X.merge(G[U-2],G[U],"","");break;case 38:X.merge(G[U-2],"",G[U],"");break;case 39:X.merge(G[U-2],"","",G[U]);break;case 40:X.merge(G[U-4],G[U],"",G[U-2]);break;case 41:X.merge(G[U-4],"",G[U],G[U-2]);break;case 42:X.merge(G[U-4],"",G[U-2],G[U]);break;case 43:X.merge(G[U-4],G[U-2],G[U],"");break;case 44:X.merge(G[U-4],G[U-2],"",G[U]);break;case 45:X.merge(G[U-4],G[U],G[U-2],"");break;case 46:X.merge(G[U-6],G[U-4],G[U-2],G[U]);break;case 47:X.merge(G[U-6],G[U],G[U-4],G[U-2]);break;case 48:X.merge(G[U-6],G[U-4],G[U],G[U-2]);break;case 49:X.merge(G[U-6],G[U-2],G[U-4],G[U]);break;case 50:X.merge(G[U-6],G[U],G[U-2],G[U-4]);break;case 51:X.merge(G[U-6],G[U-2],G[U],G[U-4]);break;case 52:X.commit(G[U]);break;case 53:X.commit("","",X.commitType.NORMAL,G[U]);break;case 54:X.commit("","",G[U],"");break;case 55:X.commit("","",G[U],G[U-2]);break;case 56:X.commit("","",G[U-2],G[U]);break;case 57:X.commit("",G[U],X.commitType.NORMAL,"");break;case 58:X.commit("",G[U-2],X.commitType.NORMAL,G[U]);break;case 59:X.commit("",G[U],X.commitType.NORMAL,G[U-2]);break;case 60:X.commit("",G[U-2],G[U],"");break;case 61:X.commit("",G[U],G[U-2],"");break;case 62:X.commit("",G[U-4],G[U-2],G[U]);break;case 63:X.commit("",G[U-4],G[U],G[U-2]);break;case 64:X.commit("",G[U-2],G[U-4],G[U]);break;case 65:X.commit("",G[U],G[U-4],G[U-2]);break;case 66:X.commit("",G[U],G[U-2],G[U-4]);break;case 67:X.commit("",G[U-2],G[U],G[U-4]);break;case 68:X.commit(G[U],"",X.commitType.NORMAL,"");break;case 69:X.commit(G[U],"",X.commitType.NORMAL,G[U-2]);break;case 70:X.commit(G[U-2],"",X.commitType.NORMAL,G[U]);break;case 71:X.commit(G[U-2],"",G[U],"");break;case 72:X.commit(G[U],"",G[U-2],"");break;case 73:X.commit(G[U],G[U-2],X.commitType.NORMAL,"");break;case 74:X.commit(G[U-2],G[U],X.commitType.NORMAL,"");break;case 75:X.commit(G[U-4],"",G[U-2],G[U]);break;case 76:X.commit(G[U-4],"",G[U],G[U-2]);break;case 77:X.commit(G[U-2],"",G[U-4],G[U]);break;case 78:X.commit(G[U],"",G[U-4],G[U-2]);break;case 79:X.commit(G[U],"",G[U-2],G[U-4]);break;case 80:X.commit(G[U-2],"",G[U],G[U-4]);break;case 81:X.commit(G[U-4],G[U],G[U-2],"");break;case 82:X.commit(G[U-4],G[U-2],G[U],"");break;case 83:X.commit(G[U-2],G[U],G[U-4],"");break;case 84:X.commit(G[U],G[U-2],G[U-4],"");break;case 85:X.commit(G[U],G[U-4],G[U-2],"");break;case 86:X.commit(G[U-2],G[U-4],G[U],"");break;case 87:X.commit(G[U-4],G[U],X.commitType.NORMAL,G[U-2]);break;case 88:X.commit(G[U-4],G[U-2],X.commitType.NORMAL,G[U]);break;case 89:X.commit(G[U-2],G[U],X.commitType.NORMAL,G[U-4]);break;case 90:X.commit(G[U],G[U-2],X.commitType.NORMAL,G[U-4]);break;case 91:X.commit(G[U],G[U-4],X.commitType.NORMAL,G[U-2]);break;case 92:X.commit(G[U-2],G[U-4],X.commitType.NORMAL,G[U]);break;case 93:X.commit(G[U-6],G[U-4],G[U-2],G[U]);break;case 94:X.commit(G[U-6],G[U-4],G[U],G[U-2]);break;case 95:X.commit(G[U-6],G[U-2],G[U-4],G[U]);break;case 96:X.commit(G[U-6],G[U],G[U-4],G[U-2]);break;case 97:X.commit(G[U-6],G[U-2],G[U],G[U-4]);break;case 98:X.commit(G[U-6],G[U],G[U-2],G[U-4]);break;case 99:X.commit(G[U-4],G[U-6],G[U-2],G[U]);break;case 100:X.commit(G[U-4],G[U-6],G[U],G[U-2]);break;case 101:X.commit(G[U-2],G[U-6],G[U-4],G[U]);break;case 102:X.commit(G[U],G[U-6],G[U-4],G[U-2]);break;case 103:X.commit(G[U-2],G[U-6],G[U],G[U-4]);break;case 104:X.commit(G[U],G[U-6],G[U-2],G[U-4]);break;case 105:X.commit(G[U],G[U-4],G[U-2],G[U-6]);break;case 106:X.commit(G[U-2],G[U-4],G[U],G[U-6]);break;case 107:X.commit(G[U],G[U-2],G[U-4],G[U-6]);break;case 108:X.commit(G[U-2],G[U],G[U-4],G[U-6]);break;case 109:X.commit(G[U-4],G[U-2],G[U],G[U-6]);break;case 110:X.commit(G[U-4],G[U],G[U-2],G[U-6]);break;case 111:X.commit(G[U-2],G[U-4],G[U-6],G[U]);break;case 112:X.commit(G[U],G[U-4],G[U-6],G[U-2]);break;case 113:X.commit(G[U-2],G[U],G[U-6],G[U-4]);break;case 114:X.commit(G[U],G[U-2],G[U-6],G[U-4]);break;case 115:X.commit(G[U-4],G[U-2],G[U-6],G[U]);break;case 116:X.commit(G[U-4],G[U],G[U-6],G[U-2]);break;case 117:this.$="";break;case 118:this.$=G[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:a,7:u,13:d,47:p},{1:[3]},{3:7,4:2,5:a,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(E,[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(E,[2,10]),{4:37,7:u,13:d,47:p},i(E,[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(E,[2,11]),i(A,[2,16]),i(A,[2,17]),i(A,[2,21]),i(B,[2,122]),i(B,[2,123]),i(A,[2,52]),{33:[1,53]},{39:54,43:j,44:W,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:W,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:W,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:W,45:ee},{33:[1,95]},{33:[1,96]},{39:97,43:j,44:W,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:W,45:ee},{33:[1,135]},{33:[1,136]},{33:[1,137]},{33:[1,138]},{39:139,43:j,44:W,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:W,45:ee},{33:[1,148]},{39:149,43:j,44:W,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:W,45:ee},{33:[1,158]},{33:[1,159]},{33:[1,160]},{39:161,43:j,44:W,45:ee},{33:[1,162]},{39:163,43:j,44:W,45:ee},{33:[1,164]},{33:[1,165]},{33:[1,166]},{39:167,43:j,44:W,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:W,45:ee},{33:[1,207]},{33:[1,208]},{39:209,43:j,44:W,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:W,45:ee},{33:[1,215]},{39:216,43:j,44:W,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:W,45:ee},{33:[1,225]},{33:[1,226]},{33:[1,227]},{39:228,43:j,44:W,45:ee},{33:[1,229]},{39:230,43:j,44:W,45:ee},{33:[1,231]},{33:[1,232]},{33:[1,233]},{39:234,43:j,44:W,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=[],pe=[null],G=[],xe=this.table,U="",Be=0,Pe=0,je=2,Ie=1,Se=G.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 zt=Ce.yylloc;G.push(zt);var Ne=Ce.options&&Ce.options.ranges;typeof ke.yy.parseError=="function"?this.parseError=ke.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function pn(){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 Tt,Et,Wt,un,yt={},Bt,Ze,Dt,kt;;){if(Et=de[de.length-1],this.defaultActions[Et]?Wt=this.defaultActions[Et]:((Tt===null||typeof Tt>"u")&&(Tt=pn()),Wt=xe[Et]&&xe[Et][Tt]),typeof Wt>"u"||!Wt.length||!Wt[0]){var Nn="";kt=[];for(Bt in xe[Et])this.terminals_[Bt]&&Bt>je&&kt.push("'"+this.terminals_[Bt]+"'");Ce.showPosition?Nn="Parse error on line "+(Be+1)+`:541`+Ce.showPosition()+`542Expecting `+kt.join(", ")+", got '"+(this.terminals_[Tt]||Tt)+"'":Nn="Parse error on line "+(Be+1)+": Unexpected "+(Tt==Ie?"end of input":"'"+(this.terminals_[Tt]||Tt)+"'"),this.parseError(Nn,{text:Ce.match,token:this.terminals_[Tt]||Tt,line:Ce.yylineno,loc:zt,expected:kt})}if(Wt[0]instanceof Array&&Wt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Et+", token: "+Tt);switch(Wt[0]){case 1:de.push(Tt),pe.push(Ce.yytext),G.push(Ce.yylloc),de.push(Wt[1]),Tt=null,Pe=Ce.yyleng,U=Ce.yytext,Be=Ce.yylineno,zt=Ce.yylloc;break;case 2:if(Ze=this.productions_[Wt[1]][1],yt.$=pe[pe.length-Ze],yt._$={first_line:G[G.length-(Ze||1)].first_line,last_line:G[G.length-1].last_line,first_column:G[G.length-(Ze||1)].first_column,last_column:G[G.length-1].last_column},Ne&&(yt._$.range=[G[G.length-(Ze||1)].range[0],G[G.length-1].range[1]]),un=this.performAction.apply(yt,[U,Pe,Be,ke.yy,Wt[1],pe,G].concat(Se)),typeof un<"u")return un;Ze&&(de=de.slice(0,-1*Ze*2),pe=pe.slice(0,-1*Ze),G=G.slice(0,-1*Ze)),de.push(this.productions_[Wt[1]][0]),pe.push(yt.$),G.push(yt._$),Dt=xe[de[de.length-2]][de[de.length-1]],de.push(Dt);break;case 3:return!0}}return!0}},be=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 pe=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=[pe[0],pe[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).543`+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()+`544`+se+"^"},test_match:function(ne,se){var de,X,pe;if(this.options.backtrack_lexer&&(pe={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&&(pe.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 G in pe)this[G]=pe[G];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 pe=this._currentRules(),G=0;G<pe.length;G++)if(de=this._input.match(this.rules[pe[G]]),de&&(!se||de[0].length>se[0].length)){if(se=de,X=G,this.options.backtrack_lexer){if(ne=this.test_match(de,pe[G]),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,pe[X]),ne!==!1?ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.545`+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,pe){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=be;function ge(){this.yy={}}return ge.prototype=oe,oe.Parser=ge,new ge}();hve.parser=hve;const ktn=hve;let xJ=qt().gitGraph.mainBranchName,Ttn=qt().gitGraph.mainBranchOrder,b1={},$p=null,$R={};$R[xJ]={name:xJ,order:Ttn};let j0={};j0[xJ]=$p;let sd=xJ,vGe="LR",XC=0;function fve(){return $je({length:7})}function Etn(i,a){const u=Object.create(null);return i.reduce((d,p)=>{const v=a(p);return u[v]||(u[v]=!0,d.push(p)),d},[])}const Ctn=function(i){vGe=i};let wGe={};const Stn=function(i){Xe.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{wGe=JSON.parse(i)}catch(a){Xe.error("error while parsing gitGraph options",a.message)}},_tn=function(){return wGe},Atn=function(i,a,u,d){Xe.debug("Entering commit:",i,a,u,d),a=oi.sanitizeText(a,qt()),i=oi.sanitizeText(i,qt()),d=oi.sanitizeText(d,qt());const p={id:a||XC+"-"+fve(),message:i,seq:XC++,type:u||ZD.NORMAL,tag:d||"",parents:$p==null?[]:[$p.id],branch:sd};$p=p,b1[p.id]=p,j0[sd]=p.id,Xe.debug("in pushCommit "+p.id)},Ltn=function(i,a){if(i=oi.sanitizeText(i,qt()),j0[i]===void 0)j0[i]=$p!=null?$p.id:null,$R[i]={name:i,order:a?parseInt(a,10):null},yGe(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}},Mtn=function(i,a,u,d){i=oi.sanitizeText(i,qt()),a=oi.sanitizeText(a,qt());const p=b1[j0[sd]],v=b1[j0[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(j0[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(a&&b1[a]!==void 0){let y=new Error('Incorrect usage of "merge". Commit with id:'+a+" already exists, use different custom Id");throw y.hash={text:"merge "+i+a+u+d,token:"merge "+i+a+u+d,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+i+" "+a+"_UNIQUE "+u+" "+d]},y}const b={id:a||XC+"-"+fve(),message:"merged branch "+i+" into "+sd,seq:XC++,parents:[$p==null?null:$p.id,j0[i]],branch:sd,type:ZD.MERGE,customType:u,customId:!!a,tag:d||""};$p=b,b1[b.id]=b,j0[sd]=b.id,Xe.debug(j0),Xe.debug("in mergeBranch")},Dtn=function(i,a,u,d){if(Xe.debug("Entering cherryPick:",i,a,u),i=oi.sanitizeText(i,qt()),a=oi.sanitizeText(a,qt()),u=oi.sanitizeText(u,qt()),d=oi.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+" "+a,token:"cherryPick "+i+" "+a,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===ZD.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(!a||b1[a]===void 0){if(v===sd){let E=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw E.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},E}const b=b1[j0[sd]];if(b===void 0||!b){let E=new Error('Incorrect usage of "cherry-pick". Current branch ('+sd+")has no commits");throw E.hash={text:"cherryPick "+i+" "+a,token:"cherryPick "+i+" "+a,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},E}const y={id:XC+"-"+fve(),message:"cherry-picked "+p+" into "+sd,seq:XC++,parents:[$p==null?null:$p.id,p.id],branch:sd,type:ZD.CHERRY_PICK,tag:u??`cherry-pick:${p.id}${p.type===ZD.MERGE?`|parent:${d}`:""}`};$p=y,b1[y.id]=y,j0[sd]=y.id,Xe.debug(j0),Xe.debug("in cherryPick")}},yGe=function(i){if(i=oi.sanitizeText(i,qt()),j0[i]===void 0){let a=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+i+'")');throw a.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+'"']},a}else{sd=i;const a=j0[sd];$p=b1[a]}};function xGe(i,a,u){const d=i.indexOf(a);d===-1?i.push(u):i.splice(d,1,u)}function kGe(i){const a=i.reduce((p,v)=>p.seq>v.seq?p:v,i[0]);let u="";i.forEach(function(p){p===a?u+=" *":u+=" |"});const d=[u,a.id,a.seq];for(let p in j0)j0[p]===a.id&&d.push(p);if(Xe.debug(d.join(" ")),a.parents&&a.parents.length==2){const p=b1[a.parents[0]];xGe(i,a,p),i.push(b1[a.parents[1]])}else{if(a.parents.length==0)return;{const p=b1[a.parents];xGe(i,a,p)}}i=Etn(i,p=>p.id),kGe(i)}const Itn=function(){Xe.debug(b1);const i=TGe()[0];kGe([i])},Otn=function(){b1={},$p=null;let i=qt().gitGraph.mainBranchName,a=qt().gitGraph.mainBranchOrder;j0={},j0[i]=null,$R={},$R[i]={name:i,order:a},sd=i,XC=0,Rg()},Ntn=function(){return Object.values($R).map((a,u)=>a.order!==null?a:{...a,order:parseFloat(`0.${u}`,10)}).sort((a,u)=>a.order-u.order).map(({name:a})=>({name:a}))},Ptn=function(){return j0},Btn=function(){return b1},TGe=function(){const i=Object.keys(b1).map(function(a){return b1[a]});return i.forEach(function(a){Xe.debug(a.id)}),i.sort((a,u)=>a.seq-u.seq),i},Ftn=function(){return sd},Rtn=function(){return vGe},jtn=function(){return $p},ZD={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},$tn={getConfig:()=>qt().gitGraph,setDirection:Ctn,setOptions:Stn,getOptions:_tn,commit:Atn,branch:Ltn,merge:Mtn,cherryPick:Dtn,checkout:yGe,prettyPrint:Itn,clear:Otn,getBranchesAsObjArray:Ntn,getBranches:Ptn,getCommits:Btn,getCommitsArray:TGe,getCurrentBranch:Ftn,getDirection:Rtn,getHead:jtn,setAccTitle:jg,getAccTitle:Mp,getAccDescription:Ip,setAccDescription:Dp,setDiagramTitle:pm,getDiagramTitle:Op,commitType:ZD};let zR={};const ad={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},QC=8;let J2={},U7={},kJ=[],qR=0,$0="LR";const ztn=()=>{J2={},U7={},zR={},qR=0,kJ=[],$0="LR"},EGe=i=>{const a=document.createElementNS("http://www.w3.org/2000/svg","text");let u=[];typeof i=="string"?u=i.split(/\\n|\n|<br\s*\/?>/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(),a.appendChild(p)}return a},qtn=i=>{let a="",u=0;return i.forEach(d=>{const p=$0==="TB"?U7[d].y:U7[d].x;p>=u&&(a=d,u=p)}),a||void 0},CGe=(i,a,u)=>{const d=qt().gitGraph,p=i.append("g").attr("class","commit-bullets"),v=i.append("g").attr("class","commit-labels");let b=0;$0==="TB"&&(b=30);const E=Object.keys(a).sort((R,B)=>a[R].seq-a[B].seq),_=d.parallelCommits,A=10,P=40;E.forEach(R=>{const B=a[R];if(_)if(B.parents.length){const ie=qtn(B.parents);b=$0==="TB"?U7[ie].y+P:U7[ie].x+P}else b=0,$0==="TB"&&(b=30);const j=b+A,W=$0==="TB"?j:J2[B.branch].pos,ee=$0==="TB"?J2[B.branch].pos:j;if(u){let ie,oe=B.customType!==void 0&&B.customType!==""?B.customType:B.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 be=p.append("rect");be.attr("x",ee-10),be.attr("y",W-10),be.attr("height",20),be.attr("width",20),be.attr("class",`commit ${B.id} commit-highlight${J2[B.branch].index%QC} ${ie}-outer`),p.append("rect").attr("x",ee-6).attr("y",W-6).attr("height",12).attr("width",12).attr("class",`commit ${B.id} commit${J2[B.branch].index%QC} ${ie}-inner`)}else if(oe===ad.CHERRY_PICK)p.append("circle").attr("cx",ee).attr("cy",W).attr("r",10).attr("class",`commit ${B.id} ${ie}`),p.append("circle").attr("cx",ee-3).attr("cy",W+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${B.id} ${ie}`),p.append("circle").attr("cx",ee+3).attr("cy",W+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${B.id} ${ie}`),p.append("line").attr("x1",ee+3).attr("y1",W+1).attr("x2",ee).attr("y2",W-5).attr("stroke","#fff").attr("class",`commit ${B.id} ${ie}`),p.append("line").attr("x1",ee-3).attr("y1",W+1).attr("x2",ee).attr("y2",W-5).attr("stroke","#fff").attr("class",`commit ${B.id} ${ie}`);else{const be=p.append("circle");if(be.attr("cx",ee),be.attr("cy",W),be.attr("r",B.type===ad.MERGE?9:10),be.attr("class",`commit ${B.id} commit${J2[B.branch].index%QC}`),oe===ad.MERGE){const ge=p.append("circle");ge.attr("cx",ee),ge.attr("cy",W),ge.attr("r",6),ge.attr("class",`commit ${ie} ${B.id} commit${J2[B.branch].index%QC}`)}oe===ad.REVERSE&&p.append("path").attr("d",`M ${ee-5},${W-5}L${ee+5},${W+5}M${ee-5},${W+5}L${ee+5},${W-5}`).attr("class",`commit ${ie} ${B.id} commit${J2[B.branch].index%QC}`)}}if($0==="TB"?U7[B.id]={x:ee,y:j}:U7[B.id]={x:j,y:W},u){if(B.type!==ad.CHERRY_PICK&&(B.customId&&B.type===ad.MERGE||B.type!==ad.MERGE)&&d.showCommitLabel){const be=v.append("g"),ge=be.insert("rect").attr("class","commit-label-bkg"),ae=be.append("text").attr("x",b).attr("y",W+25).attr("class","commit-label").text(B.id);let ne=ae.node().getBBox();if(ge.attr("x",j-ne.width/2-2).attr("y",W+13.5).attr("width",ne.width+2*2).attr("height",ne.height+2*2),$0==="TB"&&(ge.attr("x",ee-(ne.width+4*4+5)).attr("y",W-12),ae.attr("x",ee-(ne.width+4*4)).attr("y",W+ne.height-12)),$0!=="TB"&&ae.attr("x",j-ne.width/2),d.rotateCommitLabel)if($0==="TB")ae.attr("transform","rotate(-45, "+ee+", "+W+")"),ge.attr("transform","rotate(-45, "+ee+", "+W+")");else{let se=-7.5-(ne.width+10)/25*9.5,de=10+ne.width/25*8.5;be.attr("transform","translate("+se+", "+de+") rotate(-45, "+b+", "+W+")")}}if(B.tag){const be=v.insert("polygon"),ge=v.append("circle"),ae=v.append("text").attr("y",W-16).attr("class","tag-label").text(B.tag);let ne=ae.node().getBBox();ae.attr("x",j-ne.width/2);const se=ne.height/2,de=W-19.2;be.attr("class","tag-label-bkg").attr("points",`546 ${b-ne.width/2-4/2},${de+2}547 ${b-ne.width/2-4/2},${de-2}548 ${j-ne.width/2-4},${de-se-2}549 ${j+ne.width/2+4},${de-se-2}550 ${j+ne.width/2+4},${de+se+2}551 ${j-ne.width/2-4},${de+se+2}`),ge.attr("cx",b-ne.width/2+4/2).attr("cy",de).attr("r",1.5).attr("class","tag-hole"),$0==="TB"&&(be.attr("class","tag-label-bkg").attr("points",`552 ${ee},${b+2}553 ${ee},${b-2}554 ${ee+A},${b-se-2}555 ${ee+A+ne.width+4},${b-se-2}556 ${ee+A+ne.width+4},${b+se+2}557 ${ee+A},${b+se+2}`).attr("transform","translate(12,12) rotate(45, "+ee+","+b+")"),ge.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>qR&&(qR=b)})},Htn=(i,a,u,d,p)=>{const b=($0==="TB"?u.x<d.x:u.y<d.y)?a.branch:i.branch,y=_=>_.branch===b,E=_=>_.seq>i.seq&&_.seq<a.seq;return Object.values(p).some(_=>E(_)&&y(_))},HR=(i,a,u=0)=>{const d=i+Math.abs(i-a)/2;if(u>5)return d;if(kJ.every(b=>Math.abs(b-d)>=10))return kJ.push(d),d;const v=Math.abs(i-a);return HR(i,a-v/5,u+1)},Utn=(i,a,u,d)=>{const p=U7[a.id],v=U7[u.id],b=Htn(a,u,p,v,d);let y="",E="",_=0,A=0,P=J2[u.branch].index;u.type===ad.MERGE&&a.id!==u.parents[0]&&(P=J2[a.branch].index);let R;if(b){y="A 10 10, 0, 0, 0,",E="A 10 10, 0, 0, 1,",_=10,A=10;const B=p.y<v.y?HR(p.y,v.y):HR(v.y,p.y),j=p.x<v.x?HR(p.x,v.x):HR(v.x,p.x);$0==="TB"?p.x<v.x?R=`M ${p.x} ${p.y} L ${j-_} ${p.y} ${E} ${j} ${p.y+A} L ${j} ${v.y-_} ${y} ${j+A} ${v.y} L ${v.x} ${v.y}`:(P=J2[a.branch].index,R=`M ${p.x} ${p.y} L ${j+_} ${p.y} ${y} ${j} ${p.y+A} L ${j} ${v.y-_} ${E} ${j-A} ${v.y} L ${v.x} ${v.y}`):p.y<v.y?R=`M ${p.x} ${p.y} L ${p.x} ${B-_} ${y} ${p.x+A} ${B} L ${v.x-_} ${B} ${E} ${v.x} ${B+A} L ${v.x} ${v.y}`:(P=J2[a.branch].index,R=`M ${p.x} ${p.y} L ${p.x} ${B+_} ${E} ${p.x+A} ${B} L ${v.x-_} ${B} ${y} ${v.x} ${B-A} L ${v.x} ${v.y}`)}else y="A 20 20, 0, 0, 0,",E="A 20 20, 0, 0, 1,",_=20,A=20,$0==="TB"?(p.x<v.x&&(u.type===ad.MERGE&&a.id!==u.parents[0]?R=`M ${p.x} ${p.y} L ${p.x} ${v.y-_} ${y} ${p.x+A} ${v.y} L ${v.x} ${v.y}`:R=`M ${p.x} ${p.y} L ${v.x-_} ${p.y} ${E} ${v.x} ${p.y+A} L ${v.x} ${v.y}`),p.x>v.x&&(y="A 20 20, 0, 0, 0,",E="A 20 20, 0, 0, 1,",_=20,A=20,u.type===ad.MERGE&&a.id!==u.parents[0]?R=`M ${p.x} ${p.y} L ${p.x} ${v.y-_} ${E} ${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.y<v.y&&(u.type===ad.MERGE&&a.id!==u.parents[0]?R=`M ${p.x} ${p.y} L ${v.x-_} ${p.y} ${E} ${v.x} ${p.y+A} L ${v.x} ${v.y}`:R=`M ${p.x} ${p.y} L ${p.x} ${v.y-_} ${y} ${p.x+A} ${v.y} L ${v.x} ${v.y}`),p.y>v.y&&(u.type===ad.MERGE&&a.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+_} ${E} ${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%QC)},Vtn=(i,a)=>{const u=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(d=>{const p=a[d];p.parents&&p.parents.length>0&&p.parents.forEach(v=>{Utn(u,a[v],p,a)})})},Gtn=(i,a)=>{const u=qt().gitGraph,d=i.append("g");a.forEach((p,v)=>{const b=v%QC,y=J2[p.name].pos,E=d.append("line");E.attr("x1",0),E.attr("y1",y),E.attr("x2",qR),E.attr("y2",y),E.attr("class","branch branch"+b),$0==="TB"&&(E.attr("y1",30),E.attr("x1",y),E.attr("y2",qR),E.attr("x2",y)),kJ.push(y);let _=p.name;const A=EGe(_),P=d.insert("rect"),B=d.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);B.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),B.attr("transform","translate("+(-j.width-14-(u.rotateCommitLabel===!0?30:0))+", "+(y-j.height/2-1)+")"),$0==="TB"&&(P.attr("x",y-j.width/2-10).attr("y",0),B.attr("transform","translate("+(y-j.width/2-5)+", 0)")),$0!=="TB"&&P.attr("transform","translate(-19, "+(y-j.height/2)+")")})},Ktn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ktn,db:$tn,renderer:{draw:function(i,a,u,d){ztn();const p=qt(),v=p.gitGraph;Xe.debug("in gitgraph renderer",i+`558`,"id:",a,u),zR=d.db.getCommits();const b=d.db.getBranchesAsObjArray();$0=d.db.getDirection();const y=Dr(`[id="${a}"]`);let E=0;b.forEach((_,A)=>{const P=EGe(_.name),R=y.append("g"),B=R.insert("g").attr("class","branchLabel"),j=B.insert("g").attr("class","label branch-label");j.node().appendChild(P);let W=P.getBBox();J2[_.name]={pos:E,index:A},E+=50+(v.rotateCommitLabel?40:0)+($0==="TB"?W.width/2:0),j.remove(),B.remove(),R.remove()}),CGe(y,zR,!1),v.showBranches&&Gtn(y,b),Vtn(y,zR),CGe(y,zR,!0),So.insertTitle(y,"gitTitleText",v.titleTopMargin,d.db.getDiagramTitle()),C$e(void 0,y,v.diagramPadding,v.useMaxWidth??p.useMaxWidth)}},styles:i=>`559 .commit-id,560 .commit-msg,561 .branch-label {562 fill: lightgrey;563 color: lightgrey;564 font-family: 'trebuchet ms', verdana, arial, sans-serif;565 font-family: var(--mermaid-font-family);566 }567 ${[0,1,2,3,4,5,6,7].map(a=>`568 .branch-label${a} { fill: ${i["gitBranchLabel"+a]}; }569 .commit${a} { stroke: ${i["git"+a]}; fill: ${i["git"+a]}; }570 .commit-highlight${a} { stroke: ${i["gitInv"+a]}; fill: ${i["gitInv"+a]}; }571 .label${a} { fill: ${i["git"+a]}; }572 .arrow${a} { stroke: ${i["git"+a]}; }573 `).join(`574`)}575 576 .branch {577 stroke-width: 1;578 stroke: ${i.lineColor};579 stroke-dasharray: 2;580 }581 .commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};}582 .commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; }583 .tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};}584 .tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; }585 .tag-hole { fill: ${i.textColor}; }586 587 .commit-merge {588 stroke: ${i.primaryColor};589 fill: ${i.primaryColor};590 }591 .commit-reverse {592 stroke: ${i.primaryColor};593 fill: ${i.primaryColor};594 stroke-width: 3;595 }596 .commit-highlight-outer {597 }598 .commit-highlight-inner {599 stroke: ${i.primaryColor};600 fill: ${i.primaryColor};601 }602 603 .arrow { stroke-width: 8; stroke-linecap: round; fill: none}604 .gitTitleText {605 text-anchor: middle;606 font-size: 18px;607 fill: ${i.textColor};608 }609`}},Symbol.toStringTag,{value:"Module"}));var dve=function(){var i=function(G,xe,U,Be){for(U=U||{},Be=G.length;Be--;U[G[Be]]=xe);return U},a=[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],E=[1,31],_=[1,9],A=[1,10],P=[1,11],R=[1,12],B=[1,13],j=[1,14],W=[1,15],ee=[1,16],ie=[1,18],oe=[1,19],be=[1,20],ge=[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,Be,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(a,[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:E,19:_,20:A,21:P,22:R,23:B,24:j,25:W,26:ee,27:ie,28:oe,30:be,32:ge,33:ae,34:23,35:ne,37:se},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:33,11:17,12:u,13:d,14:p,15:v,16:b,17:y,18:E,19:_,20:A,21:P,22:R,23:B,24:j,25:W,26:ee,27:ie,28:oe,30:be,32:ge,33:ae,34:23,35:ne,37:se},i(a,[2,5]),i(a,[2,6]),i(a,[2,15]),i(a,[2,16]),i(a,[2,17]),i(a,[2,18]),i(a,[2,19]),i(a,[2,20]),i(a,[2,21]),i(a,[2,22]),i(a,[2,23]),i(a,[2,24]),{29:[1,34]},{31:[1,35]},i(a,[2,27]),i(a,[2,28]),i(a,[2,29]),{36:[1,36]},i(a,[2,8]),i(a,[2,9]),i(a,[2,10]),i(a,[2,11]),i(a,[2,12]),i(a,[2,13]),i(a,[2,14]),{38:[1,37],40:[1,38]},i(a,[2,4]),i(a,[2,25]),i(a,[2,26]),i(a,[2,30]),i(a,[2,31],{39:[1,39],40:[1,40]}),i(a,[2,37],{38:[1,41]}),i(a,[2,32],{40:[1,42]}),i(a,[2,33]),i(a,[2,35],{39:[1,43]}),i(a,[2,34]),i(a,[2,36])],defaultActions:{},parseError:function(xe,U){if(U.recoverable)this.trace(xe);else{var Be=new Error(xe);throw Be.hash=U,Be}},parse:function(xe){var U=this,Be=[0],Pe=[],je=[null],Ie=[],Se=this.table,Ce="",ke=0,Ke=0,zt=2,Ne=1,pn=Ie.slice.call(arguments,1),Tt=Object.create(this.lexer),Et={yy:{}};for(var Wt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Wt)&&(Et.yy[Wt]=this.yy[Wt]);Tt.setInput(xe,Et.yy),Et.yy.lexer=Tt,Et.yy.parser=this,typeof Tt.yylloc>"u"&&(Tt.yylloc={});var un=Tt.yylloc;Ie.push(un);var yt=Tt.options&&Tt.options.ranges;typeof Et.yy.parseError=="function"?this.parseError=Et.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Bt(){var Hs;return Hs=Pe.pop()||Tt.lex()||Ne,typeof Hs!="number"&&(Hs instanceof Array&&(Pe=Hs,Hs=Pe.pop()),Hs=U.symbols_[Hs]||Hs),Hs}for(var Ze,Dt,kt,Nn,ht={},qr,xt,Ri,wi;;){if(Dt=Be[Be.length-1],this.defaultActions[Dt]?kt=this.defaultActions[Dt]:((Ze===null||typeof Ze>"u")&&(Ze=Bt()),kt=Se[Dt]&&Se[Dt][Ze]),typeof kt>"u"||!kt.length||!kt[0]){var ia="";wi=[];for(qr in Se[Dt])this.terminals_[qr]&&qr>zt&&wi.push("'"+this.terminals_[qr]+"'");Tt.showPosition?ia="Parse error on line "+(ke+1)+`:610`+Tt.showPosition()+`611Expecting `+wi.join(", ")+", got '"+(this.terminals_[Ze]||Ze)+"'":ia="Parse error on line "+(ke+1)+": Unexpected "+(Ze==Ne?"end of input":"'"+(this.terminals_[Ze]||Ze)+"'"),this.parseError(ia,{text:Tt.match,token:this.terminals_[Ze]||Ze,line:Tt.yylineno,loc:un,expected:wi})}if(kt[0]instanceof Array&&kt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Dt+", token: "+Ze);switch(kt[0]){case 1:Be.push(Ze),je.push(Tt.yytext),Ie.push(Tt.yylloc),Be.push(kt[1]),Ze=null,Ke=Tt.yyleng,Ce=Tt.yytext,ke=Tt.yylineno,un=Tt.yylloc;break;case 2:if(xt=this.productions_[kt[1]][1],ht.$=je[je.length-xt],ht._$={first_line:Ie[Ie.length-(xt||1)].first_line,last_line:Ie[Ie.length-1].last_line,first_column:Ie[Ie.length-(xt||1)].first_column,last_column:Ie[Ie.length-1].last_column},yt&&(ht._$.range=[Ie[Ie.length-(xt||1)].range[0],Ie[Ie.length-1].range[1]]),Nn=this.performAction.apply(ht,[Ce,Ke,ke,Et.yy,kt[1],je,Ie].concat(pn)),typeof Nn<"u")return Nn;xt&&(Be=Be.slice(0,-1*xt*2),je=je.slice(0,-1*xt),Ie=Ie.slice(0,-1*xt)),Be.push(this.productions_[kt[1]][0]),je.push(ht.$),Ie.push(ht._$),Ri=Se[Be[Be.length-2]][Be[Be.length-1]],Be.push(Ri);break;case 3:return!0}}return!0}},X=function(){var G={EOF:1,parseError:function(U,Be){if(this.yy.parser)this.yy.parser.parseError(U,Be);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,Be=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),Be.length-1&&(this.yylineno-=Be.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:Be?(Be.length===Pe.length?this.yylloc.first_column:0)+Pe[Pe.length-Be.length].length-Be[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).612`+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()+`613`+U+"^"},test_match:function(xe,U){var Be,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],Be=this.performAction.call(this,this.yy,this,U,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Be)return Be;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,Be,Pe;this._more||(this.yytext="",this.match="");for(var je=this._currentRules(),Ie=0;Ie<je.length;Ie++)if(Be=this._input.match(this.rules[je[Ie]]),Be&&(!U||Be[0].length>U[0].length)){if(U=Be,Pe=Ie,this.options.backtrack_lexer){if(xe=this.test_match(Be,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.614`+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,Be,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 G}();de.lexer=X;function pe(){this.yy={}}return pe.prototype=de,de.Parser=pe,new pe}();dve.parser=dve;const Wtn=dve;var SGe={exports:{}};(function(i,a){(function(u,d){i.exports=d()})(Dg,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,B,j=b(this),W=(A=this.isoWeekYear(),P=this.$u,R=(P?v.utc:v)().year(A).startOf("year"),B=4-R.isoWeekday(),R.isoWeekday()>4&&(B+=7),R.add(B,u));return j.diff(W,"week")+1},y.isoWeekday=function(_){return this.$utils().u(_)?this.day()||7:this.day(this.day()%7?_:_-7)};var E=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"):E.bind(this)(_,A)}}})})(SGe);var Ytn=SGe.exports;const Xtn=dC(Ytn);var _Ge={exports:{}};(function(i,a){(function(u,d){i.exports=d()})(Dg,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={},E=function(W){return(W=+W)+(W>68?1900:2e3)},_=function(W){return function(ee){this[W]=+ee}},A=[/[+-]\d\d:?(\d\d)?|Z/,function(W){(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}(W)}],P=function(W){var ee=y[W];return ee&&(ee.indexOf?ee:ee.s.concat(ee.f))},R=function(W,ee){var ie,oe=y.meridiem;if(oe){for(var be=1;be<=24;be+=1)if(W.indexOf(oe(be,0,ee))>-1){ie=be>12;break}}else ie=W===(ee?"pm":"PM");return ie},B={A:[b,function(W){this.afternoon=R(W,!1)}],a:[b,function(W){this.afternoon=R(W,!0)}],S:[/\d/,function(W){this.milliseconds=100*+W}],SS:[p,function(W){this.milliseconds=10*+W}],SSS:[/\d{3}/,function(W){this.milliseconds=+W}],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(W){var ee=y.ordinal,ie=W.match(/\d+/);if(this.day=ie[0],ee)for(var oe=1;oe<=31;oe+=1)ee(oe).replace(/\[|\]/g,"")===W&&(this.day=oe)}],M:[v,_("month")],MM:[p,_("month")],MMM:[b,function(W){var ee=P("months"),ie=(P("monthsShort")||ee.map(function(oe){return oe.slice(0,3)})).indexOf(W)+1;if(ie<1)throw new Error;this.month=ie%12||ie}],MMMM:[b,function(W){var ee=P("months").indexOf(W)+1;if(ee<1)throw new Error;this.month=ee%12||ee}],Y:[/[+-]?\d+/,_("year")],YY:[p,function(W){this.year=E(W)}],YYYY:[/\d{4}/,_("year")],Z:A,ZZ:A};function j(W){var ee,ie;ee=W,ie=y&&y.formats;for(var oe=(W=ee.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(X,pe,G){var xe=G&&G.toUpperCase();return pe||ie[G]||u[G]||ie[xe].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(U,Be,Pe){return Be||Pe.slice(1)})})).match(d),be=oe.length,ge=0;ge<be;ge+=1){var ae=oe[ge],ne=B[ae],se=ne&&ne[0],de=ne&&ne[1];oe[ge]=de?{regex:se,parser:de}:ae.replace(/^\[|\]$/g,"")}return function(X){for(var pe={},G=0,xe=0;G<be;G+=1){var U=oe[G];if(typeof U=="string")xe+=U.length;else{var Be=U.regex,Pe=U.parser,je=X.slice(xe),Ie=Be.exec(je)[0];Pe.call(pe,Ie),X=X.replace(Ie,"")}}return function(Se){var Ce=Se.afternoon;if(Ce!==void 0){var ke=Se.hours;Ce?ke<12&&(Se.hours+=12):ke===12&&(Se.hours=0),delete Se.afternoon}}(pe),pe}}return function(W,ee,ie){ie.p.customParseFormat=!0,W&&W.parseTwoDigitYear&&(E=W.parseTwoDigitYear);var oe=ee.prototype,be=oe.parse;oe.parse=function(ge){var ae=ge.date,ne=ge.utc,se=ge.args;this.$u=ne;var de=se[1];if(typeof de=="string"){var X=se[2]===!0,pe=se[3]===!0,G=X||pe,xe=se[2];pe&&(xe=se[2]),y=this.$locale(),!X&&xe&&(y=ie.Ls[xe]),this.$d=function(je,Ie,Se){try{if(["x","X"].indexOf(Ie)>-1)return new Date((Ie==="X"?1e3:1)*je);var Ce=j(Ie)(je),ke=Ce.year,Ke=Ce.month,zt=Ce.day,Ne=Ce.hours,pn=Ce.minutes,Tt=Ce.seconds,Et=Ce.milliseconds,Wt=Ce.zone,un=new Date,yt=zt||(ke||Ke?1:un.getDate()),Bt=ke||un.getFullYear(),Ze=0;ke&&!Ke||(Ze=Ke>0?Ke-1:un.getMonth());var Dt=Ne||0,kt=pn||0,Nn=Tt||0,ht=Et||0;return Wt?new Date(Date.UTC(Bt,Ze,yt,Dt,kt,Nn,ht+60*Wt.offset*1e3)):Se?new Date(Date.UTC(Bt,Ze,yt,Dt,kt,Nn,ht)):new Date(Bt,Ze,yt,Dt,kt,Nn,ht)}catch{return new Date("")}}(ae,de,ne),this.init(),xe&&xe!==!0&&(this.$L=this.locale(xe).$L),G&&ae!=this.format(de)&&(this.$d=new Date("")),y={}}else if(de instanceof Array)for(var U=de.length,Be=1;Be<=U;Be+=1){se[1]=de[Be-1];var Pe=ie.apply(this,se);if(Pe.isValid()){this.$d=Pe.$d,this.$L=Pe.$L,this.init();break}Be===U&&(this.$d=new Date(""))}else be.call(this,ge)}}})})(_Ge);var Qtn=_Ge.exports;const Jtn=dC(Qtn);var AGe={exports:{}};(function(i,a){(function(u,d){i.exports=d()})(Dg,function(){return function(u,d){var p=d.prototype,v=p.format;p.format=function(b){var y=this,E=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 E.ordinal(y.$D);case"gggg":return y.weekYear();case"GGGG":return y.isoWeekYear();case"wo":return E.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)}}})})(AGe);var Ztn=AGe.exports;const enn=dC(Ztn);Ig.extend(Xtn),Ig.extend(Jtn),Ig.extend(enn);let a5="",gve="",pve,bve="",UR=[],VR=[],mve={},vve=[],TJ=[],eI="",wve="";const LGe=["active","done","crit","milestone"];let yve=[],GR=!1,xve=!1,kve="sunday",Tve=0;const tnn=function(){vve=[],TJ=[],eI="",yve=[],EJ=0,Cve=void 0,CJ=void 0,m1=[],a5="",gve="",wve="",pve=void 0,bve="",UR=[],VR=[],GR=!1,xve=!1,Tve=0,mve={},Rg(),kve="sunday"},nnn=function(i){gve=i},rnn=function(){return gve},inn=function(i){pve=i},snn=function(){return pve},ann=function(i){bve=i},onn=function(){return bve},cnn=function(i){a5=i},unn=function(){GR=!0},lnn=function(){return GR},hnn=function(){xve=!0},fnn=function(){return xve},dnn=function(i){wve=i},gnn=function(){return wve},pnn=function(){return a5},bnn=function(i){UR=i.toLowerCase().split(/[\s,]+/)},mnn=function(){return UR},vnn=function(i){VR=i.toLowerCase().split(/[\s,]+/)},wnn=function(){return VR},ynn=function(){return mve},xnn=function(i){eI=i,vve.push(i)},knn=function(){return vve},Tnn=function(){let i=PGe();const a=10;let u=0;for(;!i&&u<a;)i=PGe(),u++;return TJ=m1,TJ},MGe=function(i,a,u,d){return d.includes(i.format(a.trim()))?!1:i.isoWeekday()>=6&&u.includes("weekends")||u.includes(i.format("dddd").toLowerCase())?!0:u.includes(i.format(a.trim()))},Enn=function(i){kve=i},Cnn=function(){return kve},DGe=function(i,a,u,d){if(!u.length||i.manualEndTime)return;let p;i.startTime instanceof Date?p=Ig(i.startTime):p=Ig(i.startTime,a,!0),p=p.add(1,"d");let v;i.endTime instanceof Date?v=Ig(i.endTime):v=Ig(i.endTime,a,!0);const[b,y]=Snn(p,v,a,u,d);i.endTime=b.toDate(),i.renderEndTime=y},Snn=function(i,a,u,d,p){let v=!1,b=null;const y=a.add(1e4,"d");for(;i<=a;){if(v||(b=a.toDate()),v=MGe(i,u,d,p),v&&(a=a.add(1,"d"),a>y))throw new Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.");i=i.add(1,"d")}return[a,b]},Eve=function(i,a,u){u=u.trim();const p=/^after\s+(?<ids>[\d\w- ]+)/.exec(u);if(p!==null){let b=null;for(const E of p.groups.ids.split(" ")){let _=JC(E);_!==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=Ig(u,a.trim(),!0);if(v.isValid())return v.toDate();{Xe.debug("Invalid date:"+u),Xe.debug("With date format:"+a.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}},IGe=function(i){const a=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(i.trim());return a!==null?[Number.parseFloat(a[1]),a[2]]:[NaN,"ms"]},OGe=function(i,a,u,d=!1){u=u.trim();const v=/^until\s+(?<ids>[\d\w- ]+)/.exec(u);if(v!==null){let A=null;for(const R of v.groups.ids.split(" ")){let B=JC(R);B!==void 0&&(!A||B.startTime<A.startTime)&&(A=B)}if(A)return A.startTime;const P=new Date;return P.setHours(0,0,0,0),P}let b=Ig(u,a.trim(),!0);if(b.isValid())return d&&(b=b.add(1,"d")),b.toDate();let y=Ig(i);const[E,_]=IGe(u);if(!Number.isNaN(E)){const A=y.add(E,_);A.isValid()&&(y=A)}return y.toDate()};let EJ=0;const tI=function(i){return i===void 0?(EJ=EJ+1,"task"+EJ):i},_nn=function(i,a){let u;a.substr(0,1)===":"?u=a.substr(1,a.length):u=a;const d=u.split(","),p={};RGe(d,p,LGe);for(let b=0;b<d.length;b++)d[b]=d[b].trim();let v="";switch(d.length){case 1:p.id=tI(),p.startTime=i.endTime,v=d[0];break;case 2:p.id=tI(),p.startTime=Eve(void 0,a5,d[0]),v=d[1];break;case 3:p.id=tI(d[0]),p.startTime=Eve(void 0,a5,d[1]),v=d[2];break}return v&&(p.endTime=OGe(p.startTime,a5,v,GR),p.manualEndTime=Ig(v,"YYYY-MM-DD",!0).isValid(),DGe(p,a5,VR,UR)),p},Ann=function(i,a){let u;a.substr(0,1)===":"?u=a.substr(1,a.length):u=a;const d=u.split(","),p={};RGe(d,p,LGe);for(let v=0;v<d.length;v++)d[v]=d[v].trim();switch(d.length){case 1:p.id=tI(),p.startTime={type:"prevTaskEnd",id:i},p.endTime={data:d[0]};break;case 2:p.id=tI(),p.startTime={type:"getStartDate",startData:d[0]},p.endTime={data:d[1]};break;case 3:p.id=tI(d[0]),p.startTime={type:"getStartDate",startData:d[1]},p.endTime={data:d[2]};break}return p};let Cve,CJ,m1=[];const NGe={},Lnn=function(i,a){const u={section:eI,type:eI,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:a},task:i,classes:[]},d=Ann(CJ,a);u.raw.startTime=d.startTime,u.raw.endTime=d.endTime,u.id=d.id,u.prevTaskId=CJ,u.active=d.active,u.done=d.done,u.crit=d.crit,u.milestone=d.milestone,u.order=Tve,Tve++;const p=m1.push(u);CJ=u.id,NGe[u.id]=p-1},JC=function(i){const a=NGe[i];return m1[a]},Mnn=function(i,a){const u={section:eI,type:eI,description:i,task:i,classes:[]},d=_nn(Cve,a);u.startTime=d.startTime,u.endTime=d.endTime,u.id=d.id,u.active=d.active,u.done=d.done,u.crit=d.crit,u.milestone=d.milestone,Cve=u,TJ.push(u)},PGe=function(){const i=function(u){const d=m1[u];let p="";switch(m1[u].raw.startTime.type){case"prevTaskEnd":{const v=JC(d.prevTaskId);d.startTime=v.endTime;break}case"getStartDate":p=Eve(void 0,a5,m1[u].raw.startTime.startData),p&&(m1[u].startTime=p);break}return m1[u].startTime&&(m1[u].endTime=OGe(m1[u].startTime,a5,m1[u].raw.endTime.data,GR),m1[u].endTime&&(m1[u].processed=!0,m1[u].manualEndTime=Ig(m1[u].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),DGe(m1[u],a5,VR,UR))),m1[u].processed};let a=!0;for(const[u,d]of m1.entries())i(u),a=a&&d.processed;return a},Dnn=function(i,a){let u=a;qt().securityLevel!=="loose"&&(u=b9.sanitizeUrl(a)),i.split(",").forEach(function(d){JC(d)!==void 0&&(FGe(d,()=>{window.open(u,"_self")}),mve[d]=u)}),BGe(i,"clickable")},BGe=function(i,a){i.split(",").forEach(function(u){let d=JC(u);d!==void 0&&d.classes.push(a)})},Inn=function(i,a,u){if(qt().securityLevel!=="loose"||a===void 0)return;let d=[];if(typeof u=="string"){d=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v<d.length;v++){let b=d[v].trim();b.charAt(0)==='"'&&b.charAt(b.length-1)==='"'&&(b=b.substr(1,b.length-2)),d[v]=b}}d.length===0&&d.push(i),JC(i)!==void 0&&FGe(i,()=>{So.runFunc(a,...d)})},FGe=function(i,a){yve.push(function(){const u=document.querySelector(`[id="${i}"]`);u!==null&&u.addEventListener("click",function(){a()})},function(){const u=document.querySelector(`[id="${i}-text"]`);u!==null&&u.addEventListener("click",function(){a()})})},Onn={getConfig:()=>qt().gantt,clear:tnn,setDateFormat:cnn,getDateFormat:pnn,enableInclusiveEndDates:unn,endDatesAreInclusive:lnn,enableTopAxis:hnn,topAxisEnabled:fnn,setAxisFormat:nnn,getAxisFormat:rnn,setTickInterval:inn,getTickInterval:snn,setTodayMarker:ann,getTodayMarker:onn,setAccTitle:jg,getAccTitle:Mp,setDiagramTitle:pm,getDiagramTitle:Op,setDisplayMode:dnn,getDisplayMode:gnn,setAccDescription:Dp,getAccDescription:Ip,addSection:xnn,getSections:knn,getTasks:Tnn,addTask:Lnn,findTaskById:JC,addTaskOrg:Mnn,setIncludes:bnn,getIncludes:mnn,setExcludes:vnn,getExcludes:wnn,setClickEvent:function(i,a,u){i.split(",").forEach(function(d){Inn(d,a,u)}),BGe(i,"clickable")},setLink:Dnn,getLinks:ynn,bindFunctions:function(i){yve.forEach(function(a){a(i)})},parseDuration:IGe,isInvalidDate:MGe,setWeekday:Enn,getWeekday:Cnn};function RGe(i,a,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)&&(a[p]=!0,i.shift(1),d=!0)})}const Nnn=function(){Xe.debug("Something is calling, setConf, remove the call")},jGe={monday:jF,tuesday:jFe,wednesday:$Fe,thursday:kC,friday:zFe,saturday:qFe,sunday:RF},Pnn=(i,a)=>{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.length;b++)if(v.startTime>=u[b]){u[b]=v.endTime,v.order=b+a,b>p&&(p=b);break}return p};let V7;const Bnn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Wtn,db:Onn,renderer:{setConf:Nnn,draw:function(i,a,u,d){const p=qt().gantt,v=qt().securityLevel;let b;v==="sandbox"&&(b=Dr("#i"+a));const y=Dr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),E=v==="sandbox"?b.nodes()[0].contentDocument:document,_=E.getElementById(a);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 B=2*p.topPadding;if(d.db.getDisplayMode()==="compact"||p.displayMode==="compact"){const de={};for(const pe of A)de[pe.section]===void 0?de[pe.section]=[pe]:de[pe.section].push(pe);let X=0;for(const pe of Object.keys(de)){const G=Pnn(de[pe],X)+1;X+=G,B+=G*(p.barHeight+p.barGap),R[pe]=G}}else{B+=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+" "+B);const j=y.select(`[id="${a}"]`),W=qNt().domain([ELt(A,function(de){return de.startTime}),TLt(A,function(de){return de.endTime})]).rangeRound([0,V7-p.leftPadding-p.rightPadding]);function ee(de,X){const pe=de.startTime,G=X.startTime;let xe=0;return pe>G?xe=1:pe<G&&(xe=-1),xe}A.sort(ee),ie(A,V7,B),Fg(j,B,V7,p.useMaxWidth),j.append("text").text(d.db.getDiagramTitle()).attr("x",V7/2).attr("y",p.titleTopMargin).attr("class","titleText");function ie(de,X,pe){const G=p.barHeight,xe=G+p.barGap,U=p.topPadding,Be=p.leftPadding,Pe=aD().domain([0,P.length]).range(["#00B9FA","#F95002"]).interpolate(GDt);be(xe,U,Be,X,pe,de,d.db.getExcludes(),d.db.getIncludes()),ge(Be,U,X,pe),oe(de,xe,U,Be,G,Pe,X),ae(xe,U),ne(Be,U,X,pe)}function oe(de,X,pe,G,xe,U,Be){const je=[...new Set(de.map(ke=>ke.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+pe-2}).attr("width",function(){return Be-p.rightPadding/2}).attr("height",X).attr("class",function(ke){for(const[Ke,zt]of P.entries())if(ke.type===zt)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?W(ke.startTime)+G+.5*(W(ke.endTime)-W(ke.startTime))-.5*xe:W(ke.startTime)+G}).attr("y",function(ke,Ke){return Ke=ke.order,Ke*X+pe}).attr("width",function(ke){return ke.milestone?xe:W(ke.renderEndTime||ke.endTime)-W(ke.startTime)}).attr("height",xe).attr("transform-origin",function(ke,Ke){return Ke=ke.order,(W(ke.startTime)+G+.5*(W(ke.endTime)-W(ke.startTime))).toString()+"px "+(Ke*X+pe+.5*xe).toString()+"px"}).attr("class",function(ke){const Ke="task";let zt="";ke.classes.length>0&&(zt=ke.classes.join(" "));let Ne=0;for(const[Tt,Et]of P.entries())ke.type===Et&&(Ne=Tt%p.numberSectionStyles);let pn="";return ke.active?ke.crit?pn+=" activeCrit":pn=" active":ke.done?ke.crit?pn=" doneCrit":pn=" done":ke.crit&&(pn+=" crit"),pn.length===0&&(pn=" task"),ke.milestone&&(pn=" milestone "+pn),pn+=Ne,pn+=" "+zt,Ke+pn}),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=W(ke.startTime),zt=W(ke.renderEndTime||ke.endTime);ke.milestone&&(Ke+=.5*(W(ke.endTime)-W(ke.startTime))-.5*xe),ke.milestone&&(zt=Ke+xe);const Ne=this.getBBox().width;return Ne>zt-Ke?zt+Ne+1.5*p.leftPadding>Be?Ke+G-5:zt+G+5:(zt-Ke)/2+Ke+G}).attr("y",function(ke,Ke){return Ke=ke.order,Ke*X+p.barHeight/2+(p.fontSize/2-2)+pe}).attr("text-height",xe).attr("class",function(ke){const Ke=W(ke.startTime);let zt=W(ke.endTime);ke.milestone&&(zt=Ke+xe);const Ne=this.getBBox().width;let pn="";ke.classes.length>0&&(pn=ke.classes.join(" "));let Tt=0;for(const[Wt,un]of P.entries())ke.type===un&&(Tt=Wt%p.numberSectionStyles);let Et="";return ke.active&&(ke.crit?Et="activeCritText"+Tt:Et="activeText"+Tt),ke.done?ke.crit?Et=Et+" doneCritText"+Tt:Et=Et+" doneText"+Tt:ke.crit&&(Et=Et+" critText"+Tt),ke.milestone&&(Et+=" milestoneText"),Ne>zt-Ke?zt+Ne+1.5*p.leftPadding>Be?pn+" taskTextOutsideLeft taskTextOutside"+Tt+" "+Et:pn+" taskTextOutsideRight taskTextOutside"+Tt+" "+Et+" width-"+Ne:pn+" taskText taskText"+Tt+" "+Et+" width-"+Ne}),qt().securityLevel==="sandbox"){let ke;ke=Dr("#i"+a);const Ke=ke.nodes()[0].contentDocument;Ie.filter(function(zt){return Se[zt.id]!==void 0}).each(function(zt){var Ne=Ke.querySelector("#"+zt.id),pn=Ke.querySelector("#"+zt.id+"-text");const Tt=Ne.parentNode;var Et=Ke.createElement("a");Et.setAttribute("xlink:href",Se[zt.id]),Et.setAttribute("target","_top"),Tt.appendChild(Et),Et.appendChild(Ne),Et.appendChild(pn)})}}function be(de,X,pe,G,xe,U,Be,Pe){if(Be.length===0&&Pe.length===0)return;let je,Ie;for(const{startTime:Ne,endTime:pn}of U)(je===void 0||Ne<je)&&(je=Ne),(Ie===void 0||pn>Ie)&&(Ie=pn);if(!je||!Ie)return;if(Ig(Ie).diff(Ig(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=Ig(je);for(;Ke.valueOf()<=Ie;)d.db.isInvalidDate(Ke,Se,Be,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 W(Ne.start)+pe}).attr("y",p.gridLineStartPadding).attr("width",function(Ne){const pn=Ne.end.add(1,"day");return W(pn)-W(Ne.start)}).attr("height",xe-X-p.gridLineStartPadding).attr("transform-origin",function(Ne,pn){return(W(Ne.start)+pe+.5*(W(Ne.end)-W(Ne.start))).toString()+"px "+(pn*de+.5*xe).toString()+"px"}).attr("class","exclude-range")}function ge(de,X,pe,G){let xe=OLt(W).tickSize(-G+X+p.gridLineStartPadding).tickFormat(fX(d.db.getAxisFormat()||p.axisFormat||"%Y-%m-%d"));const Be=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(d.db.getTickInterval()||p.tickInterval);if(Be!==null){const Pe=Be[1],je=Be[2],Ie=d.db.getWeekday()||p.weekday;switch(je){case"millisecond":xe.ticks(oD.every(Pe));break;case"second":xe.ticks(m9.every(Pe));break;case"minute":xe.ticks(BF.every(Pe));break;case"hour":xe.ticks(FF.every(Pe));break;case"day":xe.ticks(yC.every(Pe));break;case"week":xe.ticks(jGe[Ie].every(Pe));break;case"month":xe.ticks($F.every(Pe));break}}if(j.append("g").attr("class","grid").attr("transform","translate("+de+", "+(G-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=ILt(W).tickSize(-G+X+p.gridLineStartPadding).tickFormat(fX(d.db.getAxisFormat()||p.axisFormat||"%Y-%m-%d"));if(Be!==null){const je=Be[1],Ie=Be[2],Se=d.db.getWeekday()||p.weekday;switch(Ie){case"millisecond":Pe.ticks(oD.every(je));break;case"second":Pe.ticks(m9.every(je));break;case"minute":Pe.ticks(BF.every(je));break;case"hour":Pe.ticks(FF.every(je));break;case"day":Pe.ticks(yC.every(je));break;case"week":Pe.ticks(jGe[Se].every(je));break;case"month":Pe.ticks($F.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 pe=0;const G=Object.keys(R).map(xe=>[xe,R[xe]]);j.append("g").selectAll("text").data(G).enter().append(function(xe){const U=xe[0].split(oi.lineBreakRegex),Be=-(U.length-1)/2,Pe=E.createElementNS("http://www.w3.org/2000/svg","text");Pe.setAttribute("dy",Be+"em");for(const[je,Ie]of U.entries()){const Se=E.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 Be=0;Be<U;Be++)return pe+=G[U-1][1],xe[1]*de/2+pe*de+X;else return xe[1]*de/2+X}).attr("font-size",p.sectionFontSize).attr("class",function(xe){for(const[U,Be]of P.entries())if(xe[0]===Be)return"sectionTitle sectionTitle"+U%p.numberSectionStyles;return"sectionTitle"})}function ne(de,X,pe,G){const xe=d.db.getTodayMarker();if(xe==="off")return;const U=j.append("g").attr("class","today"),Be=new Date,Pe=U.append("line");Pe.attr("x1",W(Be)+de).attr("x2",W(Be)+de).attr("y1",p.titleTopMargin).attr("y2",G-p.titleTopMargin).attr("class","today"),xe!==""&&Pe.attr("style",xe.replace(/,/g,";"))}function se(de){const X={},pe=[];for(let G=0,xe=de.length;G<xe;++G)Object.prototype.hasOwnProperty.call(X,de[G])||(X[de[G]]=!0,pe.push(de[G]));return pe}}},styles:i=>`615 .mermaid-main-font {616 font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);617 }618 619 .exclude-range {620 fill: ${i.excludeBkgColor};621 }622 623 .section {624 stroke: none;625 opacity: 0.2;626 }627 628 .section0 {629 fill: ${i.sectionBkgColor};630 }631 632 .section2 {633 fill: ${i.sectionBkgColor2};634 }635 636 .section1,637 .section3 {638 fill: ${i.altSectionBkgColor};639 opacity: 0.2;640 }641 642 .sectionTitle0 {643 fill: ${i.titleColor};644 }645 646 .sectionTitle1 {647 fill: ${i.titleColor};648 }649 650 .sectionTitle2 {651 fill: ${i.titleColor};652 }653 654 .sectionTitle3 {655 fill: ${i.titleColor};656 }657 658 .sectionTitle {659 text-anchor: start;660 font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);661 }662 663 664 /* Grid and axis */665 666 .grid .tick {667 stroke: ${i.gridColor};668 opacity: 0.8;669 shape-rendering: crispEdges;670 }671 672 .grid .tick text {673 font-family: ${i.fontFamily};674 fill: ${i.textColor};675 }676 677 .grid path {678 stroke-width: 0;679 }680 681 682 /* Today line */683 684 .today {685 fill: none;686 stroke: ${i.todayLineColor};687 stroke-width: 2px;688 }689 690 691 /* Task styling */692 693 /* Default task */694 695 .task {696 stroke-width: 2;697 }698 699 .taskText {700 text-anchor: middle;701 font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);702 }703 704 .taskTextOutsideRight {705 fill: ${i.taskTextDarkColor};706 text-anchor: start;707 font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);708 }709 710 .taskTextOutsideLeft {711 fill: ${i.taskTextDarkColor};712 text-anchor: end;713 }714 715 716 /* Special case clickable */717 718 .task.clickable {719 cursor: pointer;720 }721 722 .taskText.clickable {723 cursor: pointer;724 fill: ${i.taskTextClickableColor} !important;725 font-weight: bold;726 }727 728 .taskTextOutsideLeft.clickable {729 cursor: pointer;730 fill: ${i.taskTextClickableColor} !important;731 font-weight: bold;732 }733 734 .taskTextOutsideRight.clickable {735 cursor: pointer;736 fill: ${i.taskTextClickableColor} !important;737 font-weight: bold;738 }739 740 741 /* Specific task settings for the sections*/742 743 .taskText0,744 .taskText1,745 .taskText2,746 .taskText3 {747 fill: ${i.taskTextColor};748 }749 750 .task0,751 .task1,752 .task2,753 .task3 {754 fill: ${i.taskBkgColor};755 stroke: ${i.taskBorderColor};756 }757 758 .taskTextOutside0,759 .taskTextOutside2760 {761 fill: ${i.taskTextOutsideColor};762 }763 764 .taskTextOutside1,765 .taskTextOutside3 {766 fill: ${i.taskTextOutsideColor};767 }768 769 770 /* Active task */771 772 .active0,773 .active1,774 .active2,775 .active3 {776 fill: ${i.activeTaskBkgColor};777 stroke: ${i.activeTaskBorderColor};778 }779 780 .activeText0,781 .activeText1,782 .activeText2,783 .activeText3 {784 fill: ${i.taskTextDarkColor} !important;785 }786 787 788 /* Completed task */789 790 .done0,791 .done1,792 .done2,793 .done3 {794 stroke: ${i.doneTaskBorderColor};795 fill: ${i.doneTaskBkgColor};796 stroke-width: 2;797 }798 799 .doneText0,800 .doneText1,801 .doneText2,802 .doneText3 {803 fill: ${i.taskTextDarkColor} !important;804 }805 806 807 /* Tasks on the critical line */808 809 .crit0,810 .crit1,811 .crit2,812 .crit3 {813 stroke: ${i.critBorderColor};814 fill: ${i.critBkgColor};815 stroke-width: 2;816 }817 818 .activeCrit0,819 .activeCrit1,820 .activeCrit2,821 .activeCrit3 {822 stroke: ${i.critBorderColor};823 fill: ${i.activeTaskBkgColor};824 stroke-width: 2;825 }826 827 .doneCrit0,828 .doneCrit1,829 .doneCrit2,830 .doneCrit3 {831 stroke: ${i.critBorderColor};832 fill: ${i.doneTaskBkgColor};833 stroke-width: 2;834 cursor: pointer;835 shape-rendering: crispEdges;836 }837 838 .milestone {839 transform: rotate(45deg) scale(0.8,0.8);840 }841 842 .milestoneText {843 font-style: italic;844 }845 .doneCritText0,846 .doneCritText1,847 .doneCritText2,848 .doneCritText3 {849 fill: ${i.taskTextDarkColor} !important;850 }851 852 .activeCritText0,853 .activeCritText1,854 .activeCritText2,855 .activeCritText3 {856 fill: ${i.taskTextDarkColor} !important;857 }858 859 .titleText {860 text-anchor: middle;861 font-size: 18px;862 fill: ${i.titleColor||i.textColor};863 font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);864 }865`}},Symbol.toStringTag,{value:"Module"}));var Sve=function(){var i=function(v,b,y,E){for(y=y||{},E=v.length;E--;y[v[E]]=b);return y},a=[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,E,_,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(a,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(a,[2,3]),i(a,[2,4]),i(a,[2,5]),i(a,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,y){if(y.recoverable)this.trace(b);else{var E=new Error(b);throw E.hash=y,E}},parse:function(b){var y=this,E=[0],_=[],A=[null],P=[],R=this.table,B="",j=0,W=0,ee=2,ie=1,oe=P.slice.call(arguments,1),be=Object.create(this.lexer),ge={yy:{}};for(var ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ae)&&(ge.yy[ae]=this.yy[ae]);be.setInput(b,ge.yy),ge.yy.lexer=be,ge.yy.parser=this,typeof be.yylloc>"u"&&(be.yylloc={});var ne=be.yylloc;P.push(ne);var se=be.options&&be.options.ranges;typeof ge.yy.parseError=="function"?this.parseError=ge.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function de(){var Ce;return Ce=_.pop()||be.lex()||ie,typeof Ce!="number"&&(Ce instanceof Array&&(_=Ce,Ce=_.pop()),Ce=y.symbols_[Ce]||Ce),Ce}for(var X,pe,G,xe,U={},Be,Pe,je,Ie;;){if(pe=E[E.length-1],this.defaultActions[pe]?G=this.defaultActions[pe]:((X===null||typeof X>"u")&&(X=de()),G=R[pe]&&R[pe][X]),typeof G>"u"||!G.length||!G[0]){var Se="";Ie=[];for(Be in R[pe])this.terminals_[Be]&&Be>ee&&Ie.push("'"+this.terminals_[Be]+"'");be.showPosition?Se="Parse error on line "+(j+1)+`:866`+be.showPosition()+`867Expecting `+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:be.match,token:this.terminals_[X]||X,line:be.yylineno,loc:ne,expected:Ie})}if(G[0]instanceof Array&&G.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pe+", token: "+X);switch(G[0]){case 1:E.push(X),A.push(be.yytext),P.push(be.yylloc),E.push(G[1]),X=null,W=be.yyleng,B=be.yytext,j=be.yylineno,ne=be.yylloc;break;case 2:if(Pe=this.productions_[G[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,[B,W,j,ge.yy,G[1],A,P].concat(oe)),typeof xe<"u")return xe;Pe&&(E=E.slice(0,-1*Pe*2),A=A.slice(0,-1*Pe),P=P.slice(0,-1*Pe)),E.push(this.productions_[G[1]][0]),A.push(U.$),P.push(U._$),je=R[E[E.length-2]][E[E.length-1]],E.push(je);break;case 3:return!0}}return!0}},d=function(){var v={EOF:1,parseError:function(y,E){if(this.yy.parser)this.yy.parser.parseError(y,E);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,E=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),E.length-1&&(this.yylineno-=E.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:E?(E.length===_.length?this.yylloc.first_column:0)+_[_.length-E.length].length-E[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).868`+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()+`869`+y+"^"},test_match:function(b,y){var E,_,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],E=this.performAction.call(this,this.yy,this,y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),E)return E;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,E,_;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),P=0;P<A.length;P++)if(E=this._input.match(this.rules[A[P]]),E&&(!y||E[0].length>y[0].length)){if(y=E,_=P,this.options.backtrack_lexer){if(b=this.test_match(E,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.870`+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,E,_,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}();Sve.parser=Sve;const Fnn=Sve,$Ge={info:!1};let _ve=$Ge.info;const Rnn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fnn,db:{clear:()=>{_ve=$Ge.info},setInfo:i=>{_ve=i},getInfo:()=>_ve},renderer:{draw:(i,a,u)=>{Xe.debug(`rendering info diagram871`+i);const d=dR(a);Fg(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 Ave=function(){var i=function(be,ge,ae,ne){for(ae=ae||{},ne=be.length;ne--;ae[be[ne]]=ge);return ae},a=[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],E=[20,21,22],_=[2,7],A=[1,12],P=[1,13],R=[1,14],B=[1,15],j=[1,16],W=[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(ge,ae,ne,se,de,X,pe){var G=X.length-1;switch(de){case 3:se.setShowData(!0);break;case 6:this.$=X[G-1];break;case 8:se.addSection(X[G-1],se.cleanupValue(X[G]));break;case 9:this.$=X[G].trim(),se.setDiagramTitle(this.$);break;case 10:this.$=X[G].trim(),se.setAccTitle(this.$);break;case 11:case 12:this.$=X[G].trim(),se.setAccDescription(this.$);break;case 13:se.addSection(X[G].substr(8)),this.$=X[G].substr(8);break}},table:[{3:1,4:2,5:a,20:u,21:d,22:p},{1:[3]},{3:7,4:2,5:a,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(E,_,{8:10,9:11,1:[2,2],10:A,12:P,14:R,16:B,18:j,19:W}),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(E,[2,12]),i(E,[2,13]),i(E,_,{8:10,9:11,1:[2,3],10:A,12:P,14:R,16:B,18:j,19:W}),i(v,[2,6]),i(E,[2,8]),i(E,[2,9]),i(E,[2,10]),i(E,[2,11])],defaultActions:{7:[2,1]},parseError:function(ge,ae){if(ae.recoverable)this.trace(ge);else{var ne=new Error(ge);throw ne.hash=ae,ne}},parse:function(ge){var ae=this,ne=[0],se=[],de=[null],X=[],pe=this.table,G="",xe=0,U=0,Be=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(ge,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 zt(){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,pn,Tt,Et,Wt={},un,yt,Bt,Ze;;){if(pn=ne[ne.length-1],this.defaultActions[pn]?Tt=this.defaultActions[pn]:((Ne===null||typeof Ne>"u")&&(Ne=zt()),Tt=pe[pn]&&pe[pn][Ne]),typeof Tt>"u"||!Tt.length||!Tt[0]){var Dt="";Ze=[];for(un in pe[pn])this.terminals_[un]&&un>Be&&Ze.push("'"+this.terminals_[un]+"'");Ie.showPosition?Dt="Parse error on line "+(xe+1)+`:872`+Ie.showPosition()+`873Expecting `+Ze.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:Ze})}if(Tt[0]instanceof Array&&Tt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pn+", token: "+Ne);switch(Tt[0]){case 1:ne.push(Ne),de.push(Ie.yytext),X.push(Ie.yylloc),ne.push(Tt[1]),Ne=null,U=Ie.yyleng,G=Ie.yytext,xe=Ie.yylineno,ke=Ie.yylloc;break;case 2:if(yt=this.productions_[Tt[1]][1],Wt.$=de[de.length-yt],Wt._$={first_line:X[X.length-(yt||1)].first_line,last_line:X[X.length-1].last_line,first_column:X[X.length-(yt||1)].first_column,last_column:X[X.length-1].last_column},Ke&&(Wt._$.range=[X[X.length-(yt||1)].range[0],X[X.length-1].range[1]]),Et=this.performAction.apply(Wt,[G,U,xe,Se.yy,Tt[1],de,X].concat(je)),typeof Et<"u")return Et;yt&&(ne=ne.slice(0,-1*yt*2),de=de.slice(0,-1*yt),X=X.slice(0,-1*yt)),ne.push(this.productions_[Tt[1]][0]),de.push(Wt.$),X.push(Wt._$),Bt=pe[ne[ne.length-2]][ne[ne.length-1]],ne.push(Bt);break;case 3:return!0}}return!0}},ie=function(){var be={EOF:1,parseError:function(ae,ne){if(this.yy.parser)this.yy.parser.parseError(ae,ne);else throw new Error(ae)},setInput:function(ge,ae){return this.yy=ae||this.yy||{},this._input=ge,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 ge=this._input[0];this.yytext+=ge,this.yyleng++,this.offset++,this.match+=ge,this.matched+=ge;var ae=ge.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),ge},unput:function(ge){var ae=ge.length,ne=ge.split(/(?:\r\n?|\n)/g);this._input=ge+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).874`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ge){this.unput(this.match.slice(ge))},pastInput:function(){var ge=this.matched.substr(0,this.matched.length-this.match.length);return(ge.length>20?"...":"")+ge.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ge=this.match;return ge.length<20&&(ge+=this._input.substr(0,20-ge.length)),(ge.substr(0,20)+(ge.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ge=this.pastInput(),ae=new Array(ge.length+1).join("-");return ge+this.upcomingInput()+`875`+ae+"^"},test_match:function(ge,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=ge[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+ge[0].length},this.yytext+=ge[0],this.match+=ge[0],this.matches=ge,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(ge[0].length),this.matched+=ge[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 ge,ae,ne,se;this._more||(this.yytext="",this.match="");for(var de=this._currentRules(),X=0;X<de.length;X++)if(ne=this._input.match(this.rules[de[X]]),ne&&(!ae||ne[0].length>ae[0].length)){if(ae=ne,se=X,this.options.backtrack_lexer){if(ge=this.test_match(ne,de[X]),ge!==!1)return ge;if(this._backtrack){ae=!1;continue}else return!1}else if(!this.options.flex)break}return ae?(ge=this.test_match(ae,de[se]),ge!==!1?ge:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.876`+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 be}();ee.lexer=ie;function oe(){this.yy={}}return oe.prototype=ee,ee.Parser=oe,new oe}();Ave.parser=Ave;const jnn=Ave,zGe=nh.pie,SJ={sections:{},showData:!1,config:zGe};let _J=SJ.sections,Lve=SJ.showData;const $nn=structuredClone(zGe),znn={getConfig:()=>structuredClone($nn),clear:()=>{_J=structuredClone(SJ.sections),Lve=SJ.showData,Rg()},setDiagramTitle:pm,getDiagramTitle:Op,setAccTitle:jg,getAccTitle:Mp,setAccDescription:Dp,getAccDescription:Ip,addSection:(i,a)=>{i=bh(i,qt()),_J[i]===void 0&&(_J[i]=a,Xe.debug(`added new section: ${i}, with value: ${a}`))},getSections:()=>_J,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{Lve=i},getShowData:()=>Lve},qnn=i=>`877 .pieCircle{878 stroke: ${i.pieStrokeColor};879 stroke-width : ${i.pieStrokeWidth};880 opacity : ${i.pieOpacity};881 }882 .pieOuterCircle{883 stroke: ${i.pieOuterStrokeColor};884 stroke-width: ${i.pieOuterStrokeWidth};885 fill: none;886 }887 .pieTitleText {888 text-anchor: middle;889 font-size: ${i.pieTitleTextSize};890 fill: ${i.pieTitleTextColor};891 font-family: ${i.fontFamily};892 }893 .slice {894 font-family: ${i.fontFamily};895 fill: ${i.pieSectionTextColor};896 font-size:${i.pieSectionTextSize};897 // fill: white;898 }899 .legend text {900 fill: ${i.pieLegendTextColor};901 font-family: ${i.fontFamily};902 font-size: ${i.pieLegendTextSize};903 }904`,Hnn=i=>{const a=Object.entries(i).map(d=>({label:d[0],value:d[1]})).sort((d,p)=>p.value-d.value);return nPt().value(d=>d.value)(a)},Unn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:jnn,db:znn,renderer:{draw:(i,a,u,d)=>{Xe.debug(`rendering pie chart905`+i);const p=d.db,v=qt(),b=cR(p.getConfig(),v.pie),y=40,E=18,_=4,A=450,P=A,R=dR(a),B=R.append("g"),j=p.getSections();B.attr("transform","translate("+P/2+","+A/2+")");const{themeVariables:W}=v;let[ee]=PC(W.pieOuterStrokeWidth);ee??(ee=2);const ie=b.textPosition,oe=Math.min(P,A)/2-y,be=hD().innerRadius(0).outerRadius(oe),ge=hD().innerRadius(oe*ie).outerRadius(oe*ie);B.append("circle").attr("cx",0).attr("cy",0).attr("r",oe+ee/2).attr("class","pieOuterCircle");const ae=Hnn(j),ne=[W.pie1,W.pie2,W.pie3,W.pie4,W.pie5,W.pie6,W.pie7,W.pie8,W.pie9,W.pie10,W.pie11,W.pie12],se=PF(ne);B.selectAll("mySlices").data(ae).enter().append("path").attr("d",be).attr("fill",xe=>se(xe.data.label)).attr("class","pieCircle");let de=0;Object.keys(j).forEach(xe=>{de+=j[xe]}),B.selectAll("mySlices").data(ae).enter().append("text").text(xe=>(xe.data.value/de*100).toFixed(0)+"%").attr("transform",xe=>"translate("+ge.centroid(xe)+")").style("text-anchor","middle").attr("class","slice"),B.append("text").text(p.getDiagramTitle()).attr("x",0).attr("y",-(A-50)/2).attr("class","pieTitleText");const X=B.selectAll(".legend").data(se.domain()).enter().append("g").attr("class","legend").attr("transform",(xe,U)=>{const Be=E+_,Pe=Be*se.domain().length/2,je=12*E,Ie=U*Be-Pe;return"translate("+je+","+Ie+")"});X.append("rect").attr("width",E).attr("height",E).style("fill",se).style("stroke",se),X.data(ae).append("text").attr("x",E+_).attr("y",E-_).text(xe=>{const{label:U,value:Be}=xe.data;return p.getShowData()?`${U} [${Be}]`:U});const pe=Math.max(...X.selectAll("text").nodes().map(xe=>(xe==null?void 0:xe.getBoundingClientRect().width)??0)),G=P+y+E+_+pe;R.attr("viewBox",`0 0 ${G} ${A}`),Fg(R,A,G,b.useMaxWidth)}},styles:qnn}},Symbol.toStringTag,{value:"Module"}));var Mve=function(){var i=function(Tt,Et,Wt,un){for(Wt=Wt||{},un=Tt.length;un--;Wt[Tt[un]]=Et);return Wt},a=[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],E=[32,33,34],_=[2,7],A=[1,13],P=[1,17],R=[1,18],B=[1,19],j=[1,20],W=[1,21],ee=[1,22],ie=[1,23],oe=[1,24],be=[1,25],ge=[1,26],ae=[1,27],ne=[1,30],se=[1,31],de=[1,32],X=[1,33],pe=[1,34],G=[1,35],xe=[1,36],U=[1,37],Be=[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],zt={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,Wt,un,yt,Bt,Ze,Dt){var kt=Ze.length-1;switch(Bt){case 12:this.$=Ze[kt].trim(),yt.setDiagramTitle(this.$);break;case 13:this.$=Ze[kt].trim(),yt.setAccTitle(this.$);break;case 14:case 15:this.$=Ze[kt].trim(),yt.setAccDescription(this.$);break;case 16:yt.addSection(Ze[kt].substr(8)),this.$=Ze[kt].substr(8);break;case 17:yt.addPoint(Ze[kt-3],Ze[kt-1],Ze[kt]);break;case 18:yt.setXAxisLeftText(Ze[kt-2]),yt.setXAxisRightText(Ze[kt]);break;case 19:Ze[kt-1].text+=" โถ ",yt.setXAxisLeftText(Ze[kt-1]);break;case 20:yt.setXAxisLeftText(Ze[kt]);break;case 21:yt.setYAxisBottomText(Ze[kt-2]),yt.setYAxisTopText(Ze[kt]);break;case 22:Ze[kt-1].text+=" โถ ",yt.setYAxisBottomText(Ze[kt-1]);break;case 23:yt.setYAxisBottomText(Ze[kt]);break;case 24:yt.setQuadrant1Text(Ze[kt]);break;case 25:yt.setQuadrant2Text(Ze[kt]);break;case 26:yt.setQuadrant3Text(Ze[kt]);break;case 27:yt.setQuadrant4Text(Ze[kt]);break;case 31:this.$={text:Ze[kt],type:"text"};break;case 32:this.$={text:Ze[kt-1].text+""+Ze[kt],type:Ze[kt-1].type};break;case 33:this.$={text:Ze[kt],type:"text"};break;case 34:this.$={text:Ze[kt],type:"markdown"};break;case 35:this.$=Ze[kt];break;case 36:this.$=Ze[kt-1]+""+Ze[kt];break}},table:[{3:1,4:2,5:a,6:u,32:d,33:p,34:v},{1:[3]},{3:8,4:2,5:a,6:u,32:d,33:p,34:v},{3:9,4:2,5:a,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(E,_,{8:11,9:12,10:14,11:15,12:16,21:28,35:29,1:[2,3],5:A,13:P,15:R,17:B,19:j,20:W,25:ee,27:ie,28:oe,29:be,30:ge,31:ae,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se}),i(b,[2,5]),{4:43,32:d,33:p,34:v},i(E,_,{10:14,11:15,12:16,21:28,35:29,9:44,5:A,13:P,15:R,17:B,19:j,20:W,25:ee,27:ie,28:oe,29:be,30:ge,31:ae,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se}),i(E,[2,9]),i(E,[2,10]),i(E,[2,11]),{14:[1,45]},{16:[1,46]},{18:[1,47]},i(E,[2,15]),i(E,[2,16]),{21:48,35:29,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se},{21:49,35:29,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se},{21:50,35:29,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se},{21:51,35:29,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se},{21:52,35:29,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se},{21:53,35:29,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se},{5:Ce,22:[1,54],35:56,36:55,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,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(E,[2,8]),i(E,[2,12]),i(E,[2,13]),i(E,[2,14]),i(E,[2,20],{36:55,35:56,5:Ce,26:[1,59],40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,23],{36:55,35:56,5:Ce,26:[1,60],40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,24],{36:55,35:56,5:Ce,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,25],{36:55,35:56,5:Ce,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,26],{36:55,35:56,5:Ce,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,27],{36:55,35:56,5:Ce,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,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(E,[2,19],{35:29,21:62,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se}),i(E,[2,22],{35:29,21:63,37:ne,38:se,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se}),{24:[1,64]},i(E,[2,18],{36:55,35:56,5:Ce,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,21],{36:55,35:56,5:Ce,40:de,41:X,42:pe,43:G,44:xe,45:U,46:Be,47:Pe,48:je,49:Ie,50:Se,51:ke}),i(E,[2,17])],defaultActions:{8:[2,1],9:[2,2]},parseError:function(Et,Wt){if(Wt.recoverable)this.trace(Et);else{var un=new Error(Et);throw un.hash=Wt,un}},parse:function(Et){var Wt=this,un=[0],yt=[],Bt=[null],Ze=[],Dt=this.table,kt="",Nn=0,ht=0,qr=2,xt=1,Ri=Ze.slice.call(arguments,1),wi=Object.create(this.lexer),ia={yy:{}};for(var Hs in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Hs)&&(ia.yy[Hs]=this.yy[Hs]);wi.setInput(Et,ia.yy),ia.yy.lexer=wi,ia.yy.parser=this,typeof wi.yylloc>"u"&&(wi.yylloc={});var mo=wi.yylloc;Ze.push(mo);var Tr=wi.options&&wi.options.ranges;typeof ia.yy.parseError=="function"?this.parseError=ia.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function On(){var Us;return Us=yt.pop()||wi.lex()||xt,typeof Us!="number"&&(Us instanceof Array&&(yt=Us,Us=yt.pop()),Us=Wt.symbols_[Us]||Us),Us}for(var Rn,zn,Ct,gt,on={},dn,Ln,Io,Oo;;){if(zn=un[un.length-1],this.defaultActions[zn]?Ct=this.defaultActions[zn]:((Rn===null||typeof Rn>"u")&&(Rn=On()),Ct=Dt[zn]&&Dt[zn][Rn]),typeof Ct>"u"||!Ct.length||!Ct[0]){var No="";Oo=[];for(dn in Dt[zn])this.terminals_[dn]&&dn>qr&&Oo.push("'"+this.terminals_[dn]+"'");wi.showPosition?No="Parse error on line "+(Nn+1)+`:906`+wi.showPosition()+`907Expecting `+Oo.join(", ")+", got '"+(this.terminals_[Rn]||Rn)+"'":No="Parse error on line "+(Nn+1)+": Unexpected "+(Rn==xt?"end of input":"'"+(this.terminals_[Rn]||Rn)+"'"),this.parseError(No,{text:wi.match,token:this.terminals_[Rn]||Rn,line:wi.yylineno,loc:mo,expected:Oo})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+zn+", token: "+Rn);switch(Ct[0]){case 1:un.push(Rn),Bt.push(wi.yytext),Ze.push(wi.yylloc),un.push(Ct[1]),Rn=null,ht=wi.yyleng,kt=wi.yytext,Nn=wi.yylineno,mo=wi.yylloc;break;case 2:if(Ln=this.productions_[Ct[1]][1],on.$=Bt[Bt.length-Ln],on._$={first_line:Ze[Ze.length-(Ln||1)].first_line,last_line:Ze[Ze.length-1].last_line,first_column:Ze[Ze.length-(Ln||1)].first_column,last_column:Ze[Ze.length-1].last_column},Tr&&(on._$.range=[Ze[Ze.length-(Ln||1)].range[0],Ze[Ze.length-1].range[1]]),gt=this.performAction.apply(on,[kt,ht,Nn,ia.yy,Ct[1],Bt,Ze].concat(Ri)),typeof gt<"u")return gt;Ln&&(un=un.slice(0,-1*Ln*2),Bt=Bt.slice(0,-1*Ln),Ze=Ze.slice(0,-1*Ln)),un.push(this.productions_[Ct[1]][0]),Bt.push(on.$),Ze.push(on._$),Io=Dt[un[un.length-2]][un[un.length-1]],un.push(Io);break;case 3:return!0}}return!0}},Ne=function(){var Tt={EOF:1,parseError:function(Wt,un){if(this.yy.parser)this.yy.parser.parseError(Wt,un);else throw new Error(Wt)},setInput:function(Et,Wt){return this.yy=Wt||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 Wt=Et.match(/(?:\r\n?|\n).*/g);return Wt?(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 Wt=Et.length,un=Et.split(/(?:\r\n?|\n)/g);this._input=Et+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Wt),this.offset-=Wt;var yt=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 Bt=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===yt.length?this.yylloc.first_column:0)+yt[yt.length-un.length].length-un[0].length:this.yylloc.first_column-Wt},this.options.ranges&&(this.yylloc.range=[Bt[0],Bt[0]+this.yyleng-Wt]),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).908`+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(),Wt=new Array(Et.length+1).join("-");return Et+this.upcomingInput()+`909`+Wt+"^"},test_match:function(Et,Wt){var un,yt,Bt;if(this.options.backtrack_lexer&&(Bt={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&&(Bt.yylloc.range=this.yylloc.range.slice(0))),yt=Et[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.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],un=this.performAction.call(this,this.yy,this,Wt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),un)return un;if(this._backtrack){for(var Ze in Bt)this[Ze]=Bt[Ze];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Et,Wt,un,yt;this._more||(this.yytext="",this.match="");for(var Bt=this._currentRules(),Ze=0;Ze<Bt.length;Ze++)if(un=this._input.match(this.rules[Bt[Ze]]),un&&(!Wt||un[0].length>Wt[0].length)){if(Wt=un,yt=Ze,this.options.backtrack_lexer){if(Et=this.test_match(un,Bt[Ze]),Et!==!1)return Et;if(this._backtrack){Wt=!1;continue}else return!1}else if(!this.options.flex)break}return Wt?(Et=this.test_match(Wt,Bt[yt]),Et!==!1?Et:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.910`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Wt=this.next();return Wt||this.lex()},begin:function(Wt){this.conditionStack.push(Wt)},popState:function(){var Wt=this.conditionStack.length-1;return Wt>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(Wt){return Wt=this.conditionStack.length-1-Math.abs(Wt||0),Wt>=0?this.conditionStack[Wt]:"INITIAL"},pushState:function(Wt){this.begin(Wt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Wt,un,yt,Bt){switch(yt){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 Tt}();zt.lexer=Ne;function pn(){this.yy={}}return pn.prototype=zt,zt.Parser=pn,new pn}();Mve.parser=Mve;const Vnn=Mve,zp=S2e();class Gnn{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 a,u,d,p,v,b,y,E,_,A,P,R,B,j,W,ee,ie,oe;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((a=nh.quadrantChart)==null?void 0:a.chartWidth)||500,chartWidth:((u=nh.quadrantChart)==null?void 0:u.chartHeight)||500,titlePadding:((d=nh.quadrantChart)==null?void 0:d.titlePadding)||10,titleFontSize:((p=nh.quadrantChart)==null?void 0:p.titleFontSize)||20,quadrantPadding:((v=nh.quadrantChart)==null?void 0:v.quadrantPadding)||5,xAxisLabelPadding:((b=nh.quadrantChart)==null?void 0:b.xAxisLabelPadding)||5,yAxisLabelPadding:((y=nh.quadrantChart)==null?void 0:y.yAxisLabelPadding)||5,xAxisLabelFontSize:((E=nh.quadrantChart)==null?void 0:E.xAxisLabelFontSize)||16,yAxisLabelFontSize:((_=nh.quadrantChart)==null?void 0:_.yAxisLabelFontSize)||16,quadrantLabelFontSize:((A=nh.quadrantChart)==null?void 0:A.quadrantLabelFontSize)||16,quadrantTextTopPadding:((P=nh.quadrantChart)==null?void 0:P.quadrantTextTopPadding)||5,pointTextPadding:((R=nh.quadrantChart)==null?void 0:R.pointTextPadding)||5,pointLabelFontSize:((B=nh.quadrantChart)==null?void 0:B.pointLabelFontSize)||12,pointRadius:((j=nh.quadrantChart)==null?void 0:j.pointRadius)||5,xAxisPosition:((W=nh.quadrantChart)==null?void 0:W.xAxisPosition)||"top",yAxisPosition:((ee=nh.quadrantChart)==null?void 0:ee.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:((ie=nh.quadrantChart)==null?void 0:ie.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:((oe=nh.quadrantChart)==null?void 0:oe.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:zp.quadrant1Fill,quadrant2Fill:zp.quadrant2Fill,quadrant3Fill:zp.quadrant3Fill,quadrant4Fill:zp.quadrant4Fill,quadrant1TextFill:zp.quadrant1TextFill,quadrant2TextFill:zp.quadrant2TextFill,quadrant3TextFill:zp.quadrant3TextFill,quadrant4TextFill:zp.quadrant4TextFill,quadrantPointFill:zp.quadrantPointFill,quadrantPointTextFill:zp.quadrantPointTextFill,quadrantXAxisTextFill:zp.quadrantXAxisTextFill,quadrantYAxisTextFill:zp.quadrantYAxisTextFill,quadrantTitleFill:zp.quadrantTitleFill,quadrantInternalBorderStrokeFill:zp.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:zp.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),Xe.info("clear called")}setData(a){this.data={...this.data,...a}}addPoints(a){this.data.points=[...a,...this.data.points]}setConfig(a){Xe.trace("setConfig called with: ",a),this.config={...this.config,...a}}setThemeConfig(a){Xe.trace("setThemeConfig called with: ",a),this.themeConfig={...this.themeConfig,...a}}calculateSpace(a,u,d,p){const v=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,b={top:a==="top"&&u?v:0,bottom:a==="bottom"&&u?v:0},y=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,E={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+E.left,R=this.config.quadrantPadding+b.top+A.top,B=this.config.chartWidth-this.config.quadrantPadding*2-E.left-E.right,j=this.config.chartHeight-this.config.quadrantPadding*2-b.top-b.bottom-A.top,W=B/2,ee=j/2;return{xAxisSpace:b,yAxisSpace:E,titleSpace:A,quadrantSpace:{quadrantLeft:P,quadrantTop:R,quadrantWidth:B,quadrantHalfWidth:W,quadrantHeight:j,quadrantHalfHeight:ee}}}getAxisLabels(a,u,d,p){const{quadrantSpace:v,titleSpace:b}=p,{quadrantHalfHeight:y,quadrantHeight:E,quadrantLeft:_,quadrantHalfWidth:A,quadrantTop:P,quadrantWidth:R}=v,B=!!this.data.xAxisRightText,j=!!this.data.yAxisTopText,W=[];return this.data.xAxisLeftText&&u&&W.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:_+(B?A/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+P+E+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&u&&W.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:_+A+(B?A/2:0),y:a==="top"?this.config.xAxisLabelPadding+b.top:this.config.xAxisLabelPadding+P+E+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&d&&W.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+E-(j?y/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:j?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&d&&W.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}),W}getQuadrants(a){const{quadrantSpace:u}=a,{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 E of y)E.text.x=E.x+E.width/2,this.data.points.length===0?(E.text.y=E.y+E.height/2,E.text.horizontalPos="middle"):(E.text.y=E.y+this.config.quadrantTextTopPadding,E.text.horizontalPos="top");return y}getQuadrantPoints(a){const{quadrantSpace:u}=a,{quadrantHeight:d,quadrantLeft:p,quadrantTop:v,quadrantWidth:b}=u,y=aD().domain([0,1]).range([p,b+p]),E=aD().domain([0,1]).range([d+v,v]);return this.data.points.map(A=>({x:y(A.x),y:E(A.y),fill:this.themeConfig.quadrantPointFill,radius:this.config.pointRadius,text:{text:A.text,fill:this.themeConfig.quadrantPointTextFill,x:y(A.x),y:E(A.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0}}))}getBorders(a){const u=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:d}=a,{quadrantHalfHeight:p,quadrantHeight:v,quadrantLeft:b,quadrantHalfWidth:y,quadrantTop:E,quadrantWidth:_}=d;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-u,y1:E,x2:b+_+u,y2:E},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b+_,y1:E+u,x2:b+_,y2:E+v-u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b-u,y1:E+v,x2:b+_+u,y2:E+v},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:b,y1:E+u,x2:b,y2:E+v-u},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+y,y1:E+u,x2:b+y,y2:E+v-u},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:b+u,y1:E+p,x2:b+_-u,y2:E+p}]}getTitle(a){if(a)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 a=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,a,u,d);return{points:this.getQuadrantPoints(v),quadrants:this.getQuadrants(v),axisLabels:this.getAxisLabels(p,a,u,v),borderLines:this.getBorders(v),title:this.getTitle(d)}}}const Knn=qt();function G7(i){return bh(i.trim(),Knn)}const qg=new Gnn;function Wnn(i){qg.setData({quadrant1Text:G7(i.text)})}function Ynn(i){qg.setData({quadrant2Text:G7(i.text)})}function Xnn(i){qg.setData({quadrant3Text:G7(i.text)})}function Qnn(i){qg.setData({quadrant4Text:G7(i.text)})}function Jnn(i){qg.setData({xAxisLeftText:G7(i.text)})}function Znn(i){qg.setData({xAxisRightText:G7(i.text)})}function ern(i){qg.setData({yAxisTopText:G7(i.text)})}function trn(i){qg.setData({yAxisBottomText:G7(i.text)})}function nrn(i,a,u){qg.addPoints([{x:a,y:u,text:G7(i.text)}])}function rrn(i){qg.setConfig({chartWidth:i})}function irn(i){qg.setConfig({chartHeight:i})}function srn(){const i=qt(),{themeVariables:a,quadrantChart:u}=i;return u&&qg.setConfig(u),qg.setThemeConfig({quadrant1Fill:a.quadrant1Fill,quadrant2Fill:a.quadrant2Fill,quadrant3Fill:a.quadrant3Fill,quadrant4Fill:a.quadrant4Fill,quadrant1TextFill:a.quadrant1TextFill,quadrant2TextFill:a.quadrant2TextFill,quadrant3TextFill:a.quadrant3TextFill,quadrant4TextFill:a.quadrant4TextFill,quadrantPointFill:a.quadrantPointFill,quadrantPointTextFill:a.quadrantPointTextFill,quadrantXAxisTextFill:a.quadrantXAxisTextFill,quadrantYAxisTextFill:a.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:a.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:a.quadrantInternalBorderStrokeFill,quadrantTitleFill:a.quadrantTitleFill}),qg.setData({titleText:Op()}),qg.build()}const arn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Vnn,db:{setWidth:rrn,setHeight:irn,setQuadrant1Text:Wnn,setQuadrant2Text:Ynn,setQuadrant3Text:Xnn,setQuadrant4Text:Qnn,setXAxisLeftText:Jnn,setXAxisRightText:Znn,setYAxisTopText:ern,setYAxisBottomText:trn,addPoint:nrn,getQuadrantData:srn,clear:function(){qg.clear(),Rg()},setAccTitle:jg,getAccTitle:Mp,setDiagramTitle:pm,getDiagramTitle:Op,getAccDescription:Ip,setAccDescription:Dp},renderer:{draw:(i,a,u,d)=>{var de,X,pe;function p(G){return G==="top"?"hanging":"middle"}function v(G){return G==="left"?"start":"middle"}function b(G){return`translate(${G.x}, ${G.y}) rotate(${G.rotation||0})`}const y=qt();Xe.debug(`Rendering quadrant chart911`+i);const E=y.securityLevel;let _;E==="sandbox"&&(_=Dr("#i"+a));const P=Dr(E==="sandbox"?_.nodes()[0].contentDocument.body:"body").select(`[id="${a}"]`),R=P.append("g").attr("class","main"),B=((de=y.quadrantChart)==null?void 0:de.chartWidth)||500,j=((X=y.quadrantChart)==null?void 0:X.chartHeight)||500;Fg(P,j,B,((pe=y.quadrantChart)==null?void 0:pe.useMaxWidth)||!0),P.attr("viewBox","0 0 "+B+" "+j),d.db.setHeight(j),d.db.setWidth(B);const W=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"),be=R.append("g").attr("class","labels"),ge=R.append("g").attr("class","title");W.title&&ge.append("text").attr("x",0).attr("y",0).attr("fill",W.title.fill).attr("font-size",W.title.fontSize).attr("dominant-baseline",p(W.title.horizontalPos)).attr("text-anchor",v(W.title.verticalPos)).attr("transform",b(W.title)).text(W.title.text),W.borderLines&&ie.selectAll("line").data(W.borderLines).enter().append("line").attr("x1",G=>G.x1).attr("y1",G=>G.y1).attr("x2",G=>G.x2).attr("y2",G=>G.y2).style("stroke",G=>G.strokeFill).style("stroke-width",G=>G.strokeWidth);const ae=ee.selectAll("g.quadrant").data(W.quadrants).enter().append("g").attr("class","quadrant");ae.append("rect").attr("x",G=>G.x).attr("y",G=>G.y).attr("width",G=>G.width).attr("height",G=>G.height).attr("fill",G=>G.fill),ae.append("text").attr("x",0).attr("y",0).attr("fill",G=>G.text.fill).attr("font-size",G=>G.text.fontSize).attr("dominant-baseline",G=>p(G.text.horizontalPos)).attr("text-anchor",G=>v(G.text.verticalPos)).attr("transform",G=>b(G.text)).text(G=>G.text.text),be.selectAll("g.label").data(W.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(G=>G.text).attr("fill",G=>G.fill).attr("font-size",G=>G.fontSize).attr("dominant-baseline",G=>p(G.horizontalPos)).attr("text-anchor",G=>v(G.verticalPos)).attr("transform",G=>b(G));const se=oe.selectAll("g.data-point").data(W.points).enter().append("g").attr("class","data-point");se.append("circle").attr("cx",G=>G.x).attr("cy",G=>G.y).attr("r",G=>G.radius).attr("fill",G=>G.fill),se.append("text").attr("x",0).attr("y",0).text(G=>G.text.text).attr("fill",G=>G.text.fill).attr("font-size",G=>G.text.fontSize).attr("dominant-baseline",G=>p(G.text.horizontalPos)).attr("text-anchor",G=>v(G.text.verticalPos)).attr("transform",G=>b(G.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},a=[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],E=[1,25],_=[1,26],A=[1,28],P=[1,29],R=[1,30],B=[1,31],j=[1,32],W=[1,33],ee=[1,34],ie=[1,35],oe=[1,36],be=[1,37],ge=[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],pe=[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],G=[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,zt){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(a,u,{3:1,4:2,7:4,5:d,34:p,35:v,36:b}),{1:[3]},i(a,u,{4:2,7:4,3:8,5:d,34:p,35:v,36:b}),i(a,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(a,u,{4:2,7:4,3:21,5:d,34:p,35:v,36:b}),{1:[2,3]},i(y,[2,5]),i(a,[2,7],{4:22,34:p,35:v,36:b}),{11:23,37:24,38:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},{11:39,13:38,24:ge,27:ae,29:40,30:41,37:24,38:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},{11:45,15:44,27:ne,33:46,37:24,38:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},{11:49,17:48,24:se,37:24,38:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},{11:52,17:51,24:se,37:24,38:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},{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:B,45:j,46:W,47:ee,48:ie,49:oe,50:be}),i(X,[2,38]),i(X,[2,39]),i(pe,[2,40]),i(pe,[2,42]),i(pe,[2,43]),i(pe,[2,44]),i(pe,[2,45]),i(pe,[2,46]),i(pe,[2,47]),i(pe,[2,48]),i(pe,[2,49]),i(pe,[2,50]),i(pe,[2,51]),i(de,[2,10]),i(de,[2,22],{30:41,29:56,24:ge,27:ae}),i(de,[2,24]),i(de,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},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:G},i(de,[2,14]),{17:65,24:se},i(de,[2,16]),i(de,[2,17]),i(pe,[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:E,39:_,40:27,41:A,42:P,43:R,44:B,45:j,46:W,47:ee,48:ie,49:oe,50:be},i(de,[2,33]),i(de,[2,19]),{25:73,27:G},{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=[],zt=this.table,Ne="",pn=0,Tt=0,Et=2,Wt=1,un=Ke.slice.call(arguments,1),yt=Object.create(this.lexer),Bt={yy:{}};for(var Ze in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ze)&&(Bt.yy[Ze]=this.yy[Ze]);yt.setInput(je,Bt.yy),Bt.yy.lexer=yt,Bt.yy.parser=this,typeof yt.yylloc>"u"&&(yt.yylloc={});var Dt=yt.yylloc;Ke.push(Dt);var kt=yt.options&&yt.options.ranges;typeof Bt.yy.parseError=="function"?this.parseError=Bt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Nn(){var Rn;return Rn=Ce.pop()||yt.lex()||Wt,typeof Rn!="number"&&(Rn instanceof Array&&(Ce=Rn,Rn=Ce.pop()),Rn=Ie.symbols_[Rn]||Rn),Rn}for(var ht,qr,xt,Ri,wi={},ia,Hs,mo,Tr;;){if(qr=Se[Se.length-1],this.defaultActions[qr]?xt=this.defaultActions[qr]:((ht===null||typeof ht>"u")&&(ht=Nn()),xt=zt[qr]&&zt[qr][ht]),typeof xt>"u"||!xt.length||!xt[0]){var On="";Tr=[];for(ia in zt[qr])this.terminals_[ia]&&ia>Et&&Tr.push("'"+this.terminals_[ia]+"'");yt.showPosition?On="Parse error on line "+(pn+1)+`:912`+yt.showPosition()+`913Expecting `+Tr.join(", ")+", got '"+(this.terminals_[ht]||ht)+"'":On="Parse error on line "+(pn+1)+": Unexpected "+(ht==Wt?"end of input":"'"+(this.terminals_[ht]||ht)+"'"),this.parseError(On,{text:yt.match,token:this.terminals_[ht]||ht,line:yt.yylineno,loc:Dt,expected:Tr})}if(xt[0]instanceof Array&&xt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+qr+", token: "+ht);switch(xt[0]){case 1:Se.push(ht),ke.push(yt.yytext),Ke.push(yt.yylloc),Se.push(xt[1]),ht=null,Tt=yt.yyleng,Ne=yt.yytext,pn=yt.yylineno,Dt=yt.yylloc;break;case 2:if(Hs=this.productions_[xt[1]][1],wi.$=ke[ke.length-Hs],wi._$={first_line:Ke[Ke.length-(Hs||1)].first_line,last_line:Ke[Ke.length-1].last_line,first_column:Ke[Ke.length-(Hs||1)].first_column,last_column:Ke[Ke.length-1].last_column},kt&&(wi._$.range=[Ke[Ke.length-(Hs||1)].range[0],Ke[Ke.length-1].range[1]]),Ri=this.performAction.apply(wi,[Ne,Tt,pn,Bt.yy,xt[1],ke,Ke].concat(un)),typeof Ri<"u")return Ri;Hs&&(Se=Se.slice(0,-1*Hs*2),ke=ke.slice(0,-1*Hs),Ke=Ke.slice(0,-1*Hs)),Se.push(this.productions_[xt[1]][0]),ke.push(wi.$),Ke.push(wi._$),mo=zt[Se[Se.length-2]][Se[Se.length-1]],Se.push(mo);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).914`+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()+`915`+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;Ke<ke.length;Ke++)if(Se=this._input.match(this.rules[ke[Ke]]),Se&&(!Ie||Se[0].length>Ie[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.916`+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<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/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 Be(){this.yy={}}return Be.prototype=xe,xe.Parser=Be,new Be}();Dve.parser=Dve;const orn=Dve;function qGe(i){return i.type==="bar"}function HGe(i){return i.type==="band"}function KR(i){return i.type==="linear"}class UGe{constructor(a){this.parentGroup=a}getMaxDimension(a,u){if(!this.parentGroup)return{width:a.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 a){const b=sen(p,1,v),y=b?b.width:v.length*u,E=b?b.height:u;d.width=Math.max(d.width,y),d.height=Math.max(d.height,E)}return p.remove(),d}}const VGe=.7,GGe=.2;class KGe{constructor(a,u,d,p){this.axisConfig=a,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(a){this.range=a,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=a[1]-a[0]:this.boundingRect.width=a[1]-a[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(a){this.axisPosition=a,this.setRange(this.range)}getTickDistance(){const a=this.getRange();return Math.abs(a[0]-a[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(a=>a.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){VGe*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(VGe*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(a){let u=a.height;if(this.axisConfig.showAxisLine&&u>this.axisConfig.axisLineWidth&&(u-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const d=this.getLabelDimension(),p=GGe*a.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=a.width,this.boundingRect.height=a.height-u}calculateSpaceIfDrawnVertical(a){let u=a.width;if(this.axisConfig.showAxisLine&&u>this.axisConfig.axisLineWidth&&(u-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const d=this.getLabelDimension(),p=GGe*a.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=a.width-u,this.boundingRect.height=a.height}calculateSpace(a){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(a):this.calculateSpaceIfDrawnHorizontally(a),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}getDrawableElementsForLeftAxis(){const a=[];if(this.showAxisLine){const u=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;a.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&&a.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);a.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&&a.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"}]}),a}getDrawableElementsForBottomAxis(){const a=[];if(this.showAxisLine){const u=this.boundingRect.y+this.axisConfig.axisLineWidth/2;a.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&&a.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);a.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&&a.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"}]}),a}getDrawableElementsForTopAxis(){const a=[];if(this.showAxisLine){const u=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;a.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&&a.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;a.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&&a.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"}]}),a}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 crn extends KGe{constructor(a,u,d,p,v){super(a,p,v,u),this.categories=d,this.scale=n2e().domain(this.categories).range(this.getRange())}setRange(a){super.setRange(a)}recalculateScale(){this.scale=n2e().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(a){return this.scale(a)||this.getRange()[0]}}class urn extends KGe{constructor(a,u,d,p,v){super(a,p,v,u),this.domain=d,this.scale=aD().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){const a=[...this.domain];this.axisPosition==="left"&&a.reverse(),this.scale=aD().domain(a).range(this.getRange())}getScaleValue(a){return this.scale(a)}}function WGe(i,a,u,d){const p=new UGe(d);return HGe(i)?new crn(a,u,i.categories,i.title,p):new urn(a,u,[i.min,i.max],i.title,p)}class lrn{constructor(a,u,d,p){this.textDimensionCalculator=a,this.chartConfig=u,this.chartData=d,this.chartThemeConfig=p,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}calculateSpace(a){const u=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),d=Math.max(u.width,a.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 a=[];return this.showChartTitle&&a.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}]}),a}}function hrn(i,a,u,d){const p=new UGe(d);return new lrn(p,i,a,u)}class frn{constructor(a,u,d,p,v){this.plotData=a,this.xAxis=u,this.yAxis=d,this.orientation=p,this.plotIndex=v}getDrawableElement(){const a=this.plotData.data.map(d=>[this.xAxis.getScaleValue(d[0]),this.yAxis.getScaleValue(d[1])]);let u;return this.orientation==="horizontal"?u=E7().y(d=>d[0]).x(d=>d[1])(a):u=E7().x(d=>d[0]).y(d=>d[1])(a),u?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:u,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}class drn{constructor(a,u,d,p,v,b){this.barData=a,this.boundingRect=u,this.xAxis=d,this.yAxis=p,this.orientation=v,this.plotIndex=b}getDrawableElement(){const a=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:a.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:a.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 grn{constructor(a,u,d){this.chartConfig=a,this.chartData=u,this.chartThemeConfig=d,this.boundingRect={x:0,y:0,width:0,height:0}}setAxes(a,u){this.xAxis=a,this.yAxis=u}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}calculateSpace(a){return this.boundingRect.width=a.width,this.boundingRect.height=a.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 a=[];for(const[u,d]of this.chartData.plots.entries())switch(d.type){case"line":{const p=new frn(d,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,u);a.push(...p.getDrawableElement())}break;case"bar":{const p=new drn(d,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,u);a.push(...p.getDrawableElement())}break}return a}}function prn(i,a,u){return new grn(i,a,u)}class brn{constructor(a,u,d,p){this.chartConfig=a,this.chartData=u,this.componentStore={title:hrn(a,u,d,p),plot:prn(a,u,d),xAxis:WGe(u.xAxis,a.xAxis,{titleColor:d.xAxisTitleColor,labelColor:d.xAxisLabelColor,tickColor:d.xAxisTickColor,axisLineColor:d.xAxisLineColor},p),yAxis:WGe(u.yAxis,a.yAxis,{titleColor:d.yAxisTitleColor,labelColor:d.yAxisLabelColor,tickColor:d.yAxisTickColor,axisLineColor:d.yAxisLineColor},p)}}calculateVerticalSpace(){let a=this.chartConfig.width,u=this.chartConfig.height,d=0,p=0,v=Math.floor(a*this.chartConfig.plotReservedSpacePercent/100),b=Math.floor(u*this.chartConfig.plotReservedSpacePercent/100),y=this.componentStore.plot.calculateSpace({width:v,height:b});a-=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:a,height:u}),u-=y.height,this.componentStore.yAxis.setAxisPosition("left"),y=this.componentStore.yAxis.calculateSpace({width:a,height:u}),d=y.width,a-=y.width,a>0&&(v+=a,a=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(E=>qGe(E))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let a=this.chartConfig.width,u=this.chartConfig.height,d=0,p=0,v=0,b=Math.floor(a*this.chartConfig.plotReservedSpacePercent/100),y=Math.floor(u*this.chartConfig.plotReservedSpacePercent/100),E=this.componentStore.plot.calculateSpace({width:b,height:y});a-=E.width,u-=E.height,E=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:u}),d=E.height,u-=E.height,this.componentStore.xAxis.setAxisPosition("left"),E=this.componentStore.xAxis.calculateSpace({width:a,height:u}),a-=E.width,p=E.width,this.componentStore.yAxis.setAxisPosition("top"),E=this.componentStore.yAxis.calculateSpace({width:a,height:u}),u-=E.height,v=d+E.height,a>0&&(b+=a,a=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(_=>qGe(_))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();const a=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(const u of Object.values(this.componentStore))a.push(...u.getDrawableElements());return a}}class mrn{static build(a,u,d,p){return new brn(a,u,d,p).getDrawableElement()}}let WR=0,YGe,YR=QGe(),XR=XGe(),el=JGe(),Ive=XR.plotColorPalette.split(",").map(i=>i.trim()),AJ=!1,Ove=!1;function XGe(){const i=S2e(),a=mh();return cR(i.xyChart,a.themeVariables.xyChart)}function QGe(){const i=mh();return cR(nh.xyChart,i.xyChart)}function JGe(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function Nve(i){const a=mh();return bh(i.trim(),a)}function vrn(i){YGe=i}function wrn(i){i==="horizontal"?YR.chartOrientation="horizontal":YR.chartOrientation="vertical"}function yrn(i){el.xAxis.title=Nve(i.text)}function ZGe(i,a){el.xAxis={type:"linear",title:el.xAxis.title,min:i,max:a},AJ=!0}function xrn(i){el.xAxis={type:"band",title:el.xAxis.title,categories:i.map(a=>Nve(a.text))},AJ=!0}function krn(i){el.yAxis.title=Nve(i.text)}function Trn(i,a){el.yAxis={type:"linear",title:el.yAxis.title,min:i,max:a},Ove=!0}function Ern(i){const a=Math.min(...i),u=Math.max(...i),d=KR(el.yAxis)?el.yAxis.min:1/0,p=KR(el.yAxis)?el.yAxis.max:-1/0;el.yAxis={type:"linear",title:el.yAxis.title,min:Math.min(d,a),max:Math.max(p,u)}}function eKe(i){let a=[];if(i.length===0)return a;if(!AJ){const u=KR(el.xAxis)?el.xAxis.min:1/0,d=KR(el.xAxis)?el.xAxis.max:-1/0;ZGe(Math.min(u,1),Math.max(d,i.length))}if(Ove||Ern(i),HGe(el.xAxis)&&(a=el.xAxis.categories.map((u,d)=>[u,i[d]])),KR(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}`);a=v.map((b,y)=>[b,i[y]])}return a}function tKe(i){return Ive[i===0?0:i%Ive.length]}function Crn(i,a){const u=eKe(a);el.plots.push({type:"line",strokeFill:tKe(WR),strokeWidth:2,data:u}),WR++}function Srn(i,a){const u=eKe(a);el.plots.push({type:"bar",fill:tKe(WR),data:u}),WR++}function _rn(){if(el.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return el.title=Op(),mrn.build(YR,el,XR,YGe)}function Arn(){return XR}function Lrn(){return YR}const Mrn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:orn,db:{getDrawableElem:_rn,clear:function(){Rg(),WR=0,YR=QGe(),el=JGe(),XR=XGe(),Ive=XR.plotColorPalette.split(",").map(i=>i.trim()),AJ=!1,Ove=!1},setAccTitle:jg,getAccTitle:Mp,setDiagramTitle:pm,getDiagramTitle:Op,getAccDescription:Ip,setAccDescription:Dp,setOrientation:wrn,setXAxisTitle:yrn,setXAxisRangeData:ZGe,setXAxisBand:xrn,setYAxisTitle:krn,setYAxisRangeData:Trn,setLineData:Crn,setBarData:Srn,setTmpSVGG:vrn,getChartThemeConfig:Arn,getChartConfig:Lrn},renderer:{draw:(i,a,u,d)=>{const p=d.db,v=p.getChartThemeConfig(),b=p.getChartConfig();function y(ee){return ee==="top"?"text-before-edge":"middle"}function E(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 chart917`+i);const A=dR(a),P=A.append("g").attr("class","main"),R=P.append("rect").attr("width",b.width).attr("height",b.height).attr("class","background");Fg(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 B=p.getDrawableElem(),j={};function W(ee){let ie=P,oe="";for(const[be]of ee.entries()){let ge=P;be>0&&j[oe]&&(ge=j[oe]),oe+=ee[be],ie=j[oe],ie||(ie=j[oe]=ge.append("g").attr("class",ee[be]))}return ie}for(const ee of B){if(ee.data.length===0)continue;const ie=W(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=>E(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 Pve=function(){var i=function(Tt,Et,Wt,un){for(Wt=Wt||{},un=Tt.length;un--;Wt[Tt[un]]=Et);return Wt},a=[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],E=[1,22],_=[1,23],A=[1,24],P=[1,25],R=[1,26],B=[1,27],j=[1,20],W=[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],be=[1,47],ge=[1,48],ae=[1,49],ne=[1,50],se=[1,51],de=[1,52],X=[1,53],pe=[53,54],G=[1,64],xe=[1,60],U=[1,61],Be=[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],zt={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,Wt,un,yt,Bt,Ze,Dt){var kt=Ze.length-1;switch(Bt){case 4:this.$=Ze[kt].trim(),yt.setAccTitle(this.$);break;case 5:case 6:this.$=Ze[kt].trim(),yt.setAccDescription(this.$);break;case 7:this.$=[];break;case 13:yt.addRequirement(Ze[kt-3],Ze[kt-4]);break;case 14:yt.setNewReqId(Ze[kt-2]);break;case 15:yt.setNewReqText(Ze[kt-2]);break;case 16:yt.setNewReqRisk(Ze[kt-2]);break;case 17:yt.setNewReqVerifyMethod(Ze[kt-2]);break;case 20:this.$=yt.RequirementType.REQUIREMENT;break;case 21:this.$=yt.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 22:this.$=yt.RequirementType.INTERFACE_REQUIREMENT;break;case 23:this.$=yt.RequirementType.PERFORMANCE_REQUIREMENT;break;case 24:this.$=yt.RequirementType.PHYSICAL_REQUIREMENT;break;case 25:this.$=yt.RequirementType.DESIGN_CONSTRAINT;break;case 26:this.$=yt.RiskLevel.LOW_RISK;break;case 27:this.$=yt.RiskLevel.MED_RISK;break;case 28:this.$=yt.RiskLevel.HIGH_RISK;break;case 29:this.$=yt.VerifyType.VERIFY_ANALYSIS;break;case 30:this.$=yt.VerifyType.VERIFY_DEMONSTRATION;break;case 31:this.$=yt.VerifyType.VERIFY_INSPECTION;break;case 32:this.$=yt.VerifyType.VERIFY_TEST;break;case 33:yt.addElement(Ze[kt-3]);break;case 34:yt.setNewElementType(Ze[kt-2]);break;case 35:yt.setNewElementDocRef(Ze[kt-2]);break;case 38:yt.addRelationship(Ze[kt-2],Ze[kt],Ze[kt-4]);break;case 39:yt.addRelationship(Ze[kt-2],Ze[kt-4],Ze[kt]);break;case 40:this.$=yt.Relationships.CONTAINS;break;case 41:this.$=yt.Relationships.COPIES;break;case 42:this.$=yt.Relationships.DERIVES;break;case 43:this.$=yt.Relationships.SATISFIES;break;case 44:this.$=yt.Relationships.VERIFIES;break;case 45:this.$=yt.Relationships.REFINES;break;case 46:this.$=yt.Relationships.TRACES;break}},table:[{3:1,4:2,6:a,9:u,11:d,13:p},{1:[3]},{3:8,4:2,5:[1,7],6:a,9:u,11:d,13:p},{5:[1,9]},{10:[1,10]},{12:[1,11]},i(v,[2,6]),{3:12,4:2,6:a,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:E,32:_,33:A,34:P,35:R,36:B,44:j,62:W,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:E,32:_,33:A,34:P,35:R,36:B,44:j,62:W,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:E,32:_,33:A,34:P,35:R,36:B,44:j,62:W,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:E,32:_,33:A,34:P,35:R,36:B,44:j,62:W,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:E,32:_,33:A,34:P,35:R,36:B,44:j,62:W,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:E,32:_,33:A,34:P,35:R,36:B,44:j,62:W,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:be,56:ge,57:ae,58:ne,59:se,60:de,61:X},{52:54,55:be,56:ge,57:ae,58:ne,59:se,60:de,61:X},{5:[1,55]},{5:[1,56]},{53:[1,57]},i(pe,[2,40]),i(pe,[2,41]),i(pe,[2,42]),i(pe,[2,43]),i(pe,[2,44]),i(pe,[2,45]),i(pe,[2,46]),{54:[1,58]},{5:G,20:59,21:xe,24:U,26:Be,28:Pe,30:je},{5:Ie,30:Se,46:66,47:Ce,49:ke},{23:71,62:W,63:ee},{23:72,62:W,63:ee},i(Ke,[2,13]),{22:[1,73]},{22:[1,74]},{22:[1,75]},{22:[1,76]},{5:G,20:77,21:xe,24:U,26:Be,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:W,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:G,20:106,21:xe,24:U,26:Be,28:Pe,30:je},{5:G,20:107,21:xe,24:U,26:Be,28:Pe,30:je},{5:G,20:108,21:xe,24:U,26:Be,28:Pe,30:je},{5:G,20:109,21:xe,24:U,26:Be,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,Wt){if(Wt.recoverable)this.trace(Et);else{var un=new Error(Et);throw un.hash=Wt,un}},parse:function(Et){var Wt=this,un=[0],yt=[],Bt=[null],Ze=[],Dt=this.table,kt="",Nn=0,ht=0,qr=2,xt=1,Ri=Ze.slice.call(arguments,1),wi=Object.create(this.lexer),ia={yy:{}};for(var Hs in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Hs)&&(ia.yy[Hs]=this.yy[Hs]);wi.setInput(Et,ia.yy),ia.yy.lexer=wi,ia.yy.parser=this,typeof wi.yylloc>"u"&&(wi.yylloc={});var mo=wi.yylloc;Ze.push(mo);var Tr=wi.options&&wi.options.ranges;typeof ia.yy.parseError=="function"?this.parseError=ia.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function On(){var Us;return Us=yt.pop()||wi.lex()||xt,typeof Us!="number"&&(Us instanceof Array&&(yt=Us,Us=yt.pop()),Us=Wt.symbols_[Us]||Us),Us}for(var Rn,zn,Ct,gt,on={},dn,Ln,Io,Oo;;){if(zn=un[un.length-1],this.defaultActions[zn]?Ct=this.defaultActions[zn]:((Rn===null||typeof Rn>"u")&&(Rn=On()),Ct=Dt[zn]&&Dt[zn][Rn]),typeof Ct>"u"||!Ct.length||!Ct[0]){var No="";Oo=[];for(dn in Dt[zn])this.terminals_[dn]&&dn>qr&&Oo.push("'"+this.terminals_[dn]+"'");wi.showPosition?No="Parse error on line "+(Nn+1)+`:918`+wi.showPosition()+`919Expecting `+Oo.join(", ")+", got '"+(this.terminals_[Rn]||Rn)+"'":No="Parse error on line "+(Nn+1)+": Unexpected "+(Rn==xt?"end of input":"'"+(this.terminals_[Rn]||Rn)+"'"),this.parseError(No,{text:wi.match,token:this.terminals_[Rn]||Rn,line:wi.yylineno,loc:mo,expected:Oo})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+zn+", token: "+Rn);switch(Ct[0]){case 1:un.push(Rn),Bt.push(wi.yytext),Ze.push(wi.yylloc),un.push(Ct[1]),Rn=null,ht=wi.yyleng,kt=wi.yytext,Nn=wi.yylineno,mo=wi.yylloc;break;case 2:if(Ln=this.productions_[Ct[1]][1],on.$=Bt[Bt.length-Ln],on._$={first_line:Ze[Ze.length-(Ln||1)].first_line,last_line:Ze[Ze.length-1].last_line,first_column:Ze[Ze.length-(Ln||1)].first_column,last_column:Ze[Ze.length-1].last_column},Tr&&(on._$.range=[Ze[Ze.length-(Ln||1)].range[0],Ze[Ze.length-1].range[1]]),gt=this.performAction.apply(on,[kt,ht,Nn,ia.yy,Ct[1],Bt,Ze].concat(Ri)),typeof gt<"u")return gt;Ln&&(un=un.slice(0,-1*Ln*2),Bt=Bt.slice(0,-1*Ln),Ze=Ze.slice(0,-1*Ln)),un.push(this.productions_[Ct[1]][0]),Bt.push(on.$),Ze.push(on._$),Io=Dt[un[un.length-2]][un[un.length-1]],un.push(Io);break;case 3:return!0}}return!0}},Ne=function(){var Tt={EOF:1,parseError:function(Wt,un){if(this.yy.parser)this.yy.parser.parseError(Wt,un);else throw new Error(Wt)},setInput:function(Et,Wt){return this.yy=Wt||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 Wt=Et.match(/(?:\r\n?|\n).*/g);return Wt?(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 Wt=Et.length,un=Et.split(/(?:\r\n?|\n)/g);this._input=Et+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Wt),this.offset-=Wt;var yt=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 Bt=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===yt.length?this.yylloc.first_column:0)+yt[yt.length-un.length].length-un[0].length:this.yylloc.first_column-Wt},this.options.ranges&&(this.yylloc.range=[Bt[0],Bt[0]+this.yyleng-Wt]),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).920`+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(),Wt=new Array(Et.length+1).join("-");return Et+this.upcomingInput()+`921`+Wt+"^"},test_match:function(Et,Wt){var un,yt,Bt;if(this.options.backtrack_lexer&&(Bt={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&&(Bt.yylloc.range=this.yylloc.range.slice(0))),yt=Et[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.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],un=this.performAction.call(this,this.yy,this,Wt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),un)return un;if(this._backtrack){for(var Ze in Bt)this[Ze]=Bt[Ze];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Et,Wt,un,yt;this._more||(this.yytext="",this.match="");for(var Bt=this._currentRules(),Ze=0;Ze<Bt.length;Ze++)if(un=this._input.match(this.rules[Bt[Ze]]),un&&(!Wt||un[0].length>Wt[0].length)){if(Wt=un,yt=Ze,this.options.backtrack_lexer){if(Et=this.test_match(un,Bt[Ze]),Et!==!1)return Et;if(this._backtrack){Wt=!1;continue}else return!1}else if(!this.options.flex)break}return Wt?(Et=this.test_match(Wt,Bt[yt]),Et!==!1?Et:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.922`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Wt=this.next();return Wt||this.lex()},begin:function(Wt){this.conditionStack.push(Wt)},popState:function(){var Wt=this.conditionStack.length-1;return Wt>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(Wt){return Wt=this.conditionStack.length-1-Math.abs(Wt||0),Wt>=0?this.conditionStack[Wt]:"INITIAL"},pushState:function(Wt){this.begin(Wt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Wt,un,yt,Bt){switch(yt){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 un.yytext=un.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 Tt}();zt.lexer=Ne;function pn(){this.yy={}}return pn.prototype=zt,zt.Parser=pn,new pn}();Pve.parser=Pve;const Drn=Pve;let Bve=[],Z2={},QR={},j9={},JR={};const Irn={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,a)=>(QR[i]===void 0&&(QR[i]={name:i,type:a,id:Z2.id,text:Z2.text,risk:Z2.risk,verifyMethod:Z2.verifyMethod}),Z2={},QR[i]),getRequirements:()=>QR,setNewReqId:i=>{Z2!==void 0&&(Z2.id=i)},setNewReqText:i=>{Z2!==void 0&&(Z2.text=i)},setNewReqRisk:i=>{Z2!==void 0&&(Z2.risk=i)},setNewReqVerifyMethod:i=>{Z2!==void 0&&(Z2.verifyMethod=i)},setAccTitle:jg,getAccTitle:Mp,setAccDescription:Dp,getAccDescription:Ip,addElement:i=>(JR[i]===void 0&&(JR[i]={name:i,type:j9.type,docRef:j9.docRef},Xe.info("Added new requirement: ",i)),j9={},JR[i]),getElements:()=>JR,setNewElementType:i=>{j9!==void 0&&(j9.type=i)},setNewElementDocRef:i=>{j9!==void 0&&(j9.docRef=i)},addRelationship:(i,a,u)=>{Bve.push({type:i,src:a,dst:u})},getRelationships:()=>Bve,clear:()=>{Bve=[],Z2={},QR={},j9={},JR={},Rg()}},Orn=i=>`923 924 marker {925 fill: ${i.relationColor};926 stroke: ${i.relationColor};927 }928 929 marker.cross {930 stroke: ${i.lineColor};931 }932 933 svg {934 font-family: ${i.fontFamily};935 font-size: ${i.fontSize};936 }937 938 .reqBox {939 fill: ${i.requirementBackground};940 fill-opacity: 1.0;941 stroke: ${i.requirementBorderColor};942 stroke-width: ${i.requirementBorderSize};943 }944 945 .reqTitle, .reqLabel{946 fill: ${i.requirementTextColor};947 }948 .reqLabelBox {949 fill: ${i.relationLabelBackground};950 fill-opacity: 1.0;951 }952 953 .req-title-line {954 stroke: ${i.requirementBorderColor};955 stroke-width: ${i.requirementBorderSize};956 }957 .relationshipLine {958 stroke: ${i.relationColor};959 stroke-width: 1;960 }961 .relationshipLabel {962 fill: ${i.relationLabelColor};963 }964 965`,Fve={CONTAINS:"contains",ARROW:"arrow"},nKe={ReqMarkers:Fve,insertLineEndings:(i,a)=>{let u=i.append("defs").append("marker").attr("id",Fve.CONTAINS+"_line_ending").attr("refX",0).attr("refY",a.line_height/2).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("g");u.append("circle").attr("cx",a.line_height/2).attr("cy",a.line_height/2).attr("r",a.line_height/2).attr("fill","none"),u.append("line").attr("x1",0).attr("x2",a.line_height).attr("y1",a.line_height/2).attr("y2",a.line_height/2).attr("stroke-width",1),u.append("line").attr("y1",0).attr("y2",a.line_height).attr("x1",a.line_height/2).attr("x2",a.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",Fve.ARROW+"_line_ending").attr("refX",a.line_height).attr("refY",.5*a.line_height).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("path").attr("d",`M0,0966 L${a.line_height},${a.line_height/2}967 M${a.line_height},${a.line_height/2}968 L0,${a.line_height}`).attr("stroke-width",1)}};let Ef={},rKe=0;const iKe=(i,a)=>i.insert("rect","#"+a).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Ef.rect_min_width+"px").attr("height",Ef.rect_min_height+"px"),sKe=(i,a,u)=>{let d=Ef.rect_min_width/2,p=i.append("text").attr("class","req reqLabel reqTitle").attr("id",a).attr("x",d).attr("y",Ef.rect_padding).attr("dominant-baseline","hanging"),v=0;u.forEach(_=>{v==0?p.append("tspan").attr("text-anchor","middle").attr("x",Ef.rect_min_width/2).attr("dy",0).text(_):p.append("tspan").attr("text-anchor","middle").attr("x",Ef.rect_min_width/2).attr("dy",Ef.line_height*.75).text(_),v++});let b=1.5*Ef.rect_padding,y=v*Ef.line_height*.75,E=b+y;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Ef.rect_min_width).attr("y1",E).attr("y2",E),{titleNode:p,y:E}},aKe=(i,a,u,d)=>{let p=i.append("text").attr("class","req reqLabel").attr("id",a).attr("x",Ef.rect_padding).attr("y",d).attr("dominant-baseline","hanging"),v=0;const b=30;let y=[];return u.forEach(E=>{let _=E.length;for(;_>b&&v<3;){let A=E.substring(0,b);E=E.substring(b,E.length),_=E.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]=E;v=0}),y.forEach(E=>{p.append("tspan").attr("x",Ef.rect_padding).attr("dy",Ef.line_height).text(E)}),p},Nrn=(i,a,u,d)=>{const p=a.node().getTotalLength(),v=a.node().getPointAtLength(p*.5),b="rel"+rKe;rKe++;const E=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-E.width/2).attr("y",v.y-E.height/2).attr("width",E.width).attr("height",E.height).attr("fill","white").attr("fill-opacity","85%")},Prn=function(i,a,u,d,p){const v=u.edge(nI(a.src),nI(a.dst)),b=E7().x(function(E){return E.x}).y(function(E){return E.y}),y=i.insert("path","#"+d).attr("class","er relationshipLine").attr("d",b(v.points)).attr("fill","none");a.type==p.db.Relationships.CONTAINS?y.attr("marker-start","url("+oi.getUrl(Ef.arrowMarkerAbsolute)+"#"+a.type+"_line_ending)"):(y.attr("stroke-dasharray","10,7"),y.attr("marker-end","url("+oi.getUrl(Ef.arrowMarkerAbsolute)+"#"+nKe.ReqMarkers.ARROW+"_line_ending)")),Nrn(i,y,Ef,`<<${a.type}>>`)},Brn=(i,a,u)=>{Object.keys(i).forEach(d=>{let p=i[d];d=nI(d),Xe.info("Added new requirement: ",d);const v=u.append("g").attr("id",d),b="req-"+d,y=iKe(v,b);let E=sKe(v,d+"_title",[`<<${p.type}>>`,`${p.name}`]);aKe(v,d+"_body",[`Id: ${p.id}`,`Text: ${p.text}`,`Risk: ${p.risk}`,`Verification: ${p.verifyMethod}`],E.y);const _=y.node().getBBox();a.setNode(d,{width:_.width,height:_.height,shape:"rect",id:d})})},Frn=(i,a,u)=>{Object.keys(i).forEach(d=>{let p=i[d];const v=nI(d),b=u.append("g").attr("id",v),y="element-"+v,E=iKe(b,y);let _=sKe(b,y+"_title",["<<Element>>",`${d}`]);aKe(b,y+"_body",[`Type: ${p.type||"Not Specified"}`,`Doc Ref: ${p.docRef||"None"}`],_.y);const A=E.node().getBBox();a.setNode(v,{width:A.width,height:A.height,shape:"rect",id:v})})},Rrn=(i,a)=>(i.forEach(function(u){let d=nI(u.src),p=nI(u.dst);a.setEdge(d,p,{relationship:u})}),i),jrn=function(i,a){a.nodes().forEach(function(u){u!==void 0&&a.node(u)!==void 0&&(i.select("#"+u),i.select("#"+u).attr("transform","translate("+(a.node(u).x-a.node(u).width/2)+","+(a.node(u).y-a.node(u).height/2)+" )"))})},nI=i=>i.replace(/\s/g,"").replace(/\./g,"_"),$rn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Drn,db:Irn,renderer:{draw:(i,a,u,d)=>{Ef=qt().requirement;const p=Ef.securityLevel;let v;p==="sandbox"&&(v=Dr("#i"+a));const y=Dr(p==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);nKe.insertLineEndings(y,Ef);const E=new R0({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Ef.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();Brn(_,E,y),Frn(A,E,y),Rrn(P,E),XD(E),jrn(y,E),P.forEach(function(ee){Prn(y,ee,E,a,d)});const R=Ef.rect_padding,B=y.node().getBBox(),j=B.width+R*2,W=B.height+R*2;Fg(y,W,j,Ef.useMaxWidth),y.attr("viewBox",`${B.x-R} ${B.y-R} ${j} ${W}`)}},styles:Orn}},Symbol.toStringTag,{value:"Module"}));var Rve=function(){var i=function(yt,Bt,Ze,Dt){for(Ze=Ze||{},Dt=yt.length;Dt--;Ze[yt[Dt]]=Bt);return Ze},a=[1,2],u=[1,3],d=[1,4],p=[2,4],v=[1,9],b=[1,11],y=[1,13],E=[1,14],_=[1,16],A=[1,17],P=[1,18],R=[1,24],B=[1,25],j=[1,26],W=[1,27],ee=[1,28],ie=[1,29],oe=[1,30],be=[1,31],ge=[1,32],ae=[1,33],ne=[1,34],se=[1,35],de=[1,36],X=[1,37],pe=[1,38],G=[1,39],xe=[1,41],U=[1,42],Be=[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],zt=[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],pn=[68,69,70],Tt=[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(Bt,Ze,Dt,kt,Nn,ht,qr){var xt=ht.length-1;switch(Nn){case 3:return kt.apply(ht[xt]),ht[xt];case 4:case 9:this.$=[];break;case 5:case 10:ht[xt-1].push(ht[xt]),this.$=ht[xt-1];break;case 6:case 7:case 11:case 12:this.$=ht[xt];break;case 8:case 13:this.$=[];break;case 15:ht[xt].type="createParticipant",this.$=ht[xt];break;case 16:ht[xt-1].unshift({type:"boxStart",boxData:kt.parseBoxData(ht[xt-2])}),ht[xt-1].push({type:"boxEnd",boxText:ht[xt-2]}),this.$=ht[xt-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(ht[xt-2]),sequenceIndexStep:Number(ht[xt-1]),sequenceVisible:!0,signalType:kt.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(ht[xt-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[xt-1]};break;case 23:this.$={type:"activeEnd",signalType:kt.LINETYPE.ACTIVE_END,actor:ht[xt-1]};break;case 29:kt.setDiagramTitle(ht[xt].substring(6)),this.$=ht[xt].substring(6);break;case 30:kt.setDiagramTitle(ht[xt].substring(7)),this.$=ht[xt].substring(7);break;case 31:this.$=ht[xt].trim(),kt.setAccTitle(this.$);break;case 32:case 33:this.$=ht[xt].trim(),kt.setAccDescription(this.$);break;case 34:ht[xt-1].unshift({type:"loopStart",loopText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.LOOP_START}),ht[xt-1].push({type:"loopEnd",loopText:ht[xt-2],signalType:kt.LINETYPE.LOOP_END}),this.$=ht[xt-1];break;case 35:ht[xt-1].unshift({type:"rectStart",color:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.RECT_START}),ht[xt-1].push({type:"rectEnd",color:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.RECT_END}),this.$=ht[xt-1];break;case 36:ht[xt-1].unshift({type:"optStart",optText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.OPT_START}),ht[xt-1].push({type:"optEnd",optText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.OPT_END}),this.$=ht[xt-1];break;case 37:ht[xt-1].unshift({type:"altStart",altText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.ALT_START}),ht[xt-1].push({type:"altEnd",signalType:kt.LINETYPE.ALT_END}),this.$=ht[xt-1];break;case 38:ht[xt-1].unshift({type:"parStart",parText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.PAR_START}),ht[xt-1].push({type:"parEnd",signalType:kt.LINETYPE.PAR_END}),this.$=ht[xt-1];break;case 39:ht[xt-1].unshift({type:"parStart",parText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.PAR_OVER_START}),ht[xt-1].push({type:"parEnd",signalType:kt.LINETYPE.PAR_END}),this.$=ht[xt-1];break;case 40:ht[xt-1].unshift({type:"criticalStart",criticalText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.CRITICAL_START}),ht[xt-1].push({type:"criticalEnd",signalType:kt.LINETYPE.CRITICAL_END}),this.$=ht[xt-1];break;case 41:ht[xt-1].unshift({type:"breakStart",breakText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.BREAK_START}),ht[xt-1].push({type:"breakEnd",optText:kt.parseMessage(ht[xt-2]),signalType:kt.LINETYPE.BREAK_END}),this.$=ht[xt-1];break;case 43:this.$=ht[xt-3].concat([{type:"option",optionText:kt.parseMessage(ht[xt-1]),signalType:kt.LINETYPE.CRITICAL_OPTION},ht[xt]]);break;case 45:this.$=ht[xt-3].concat([{type:"and",parText:kt.parseMessage(ht[xt-1]),signalType:kt.LINETYPE.PAR_AND},ht[xt]]);break;case 47:this.$=ht[xt-3].concat([{type:"else",altText:kt.parseMessage(ht[xt-1]),signalType:kt.LINETYPE.ALT_ELSE},ht[xt]]);break;case 48:ht[xt-3].draw="participant",ht[xt-3].type="addParticipant",ht[xt-3].description=kt.parseMessage(ht[xt-1]),this.$=ht[xt-3];break;case 49:ht[xt-1].draw="participant",ht[xt-1].type="addParticipant",this.$=ht[xt-1];break;case 50:ht[xt-3].draw="actor",ht[xt-3].type="addParticipant",ht[xt-3].description=kt.parseMessage(ht[xt-1]),this.$=ht[xt-3];break;case 51:ht[xt-1].draw="actor",ht[xt-1].type="addParticipant",this.$=ht[xt-1];break;case 52:ht[xt-1].type="destroyParticipant",this.$=ht[xt-1];break;case 53:this.$=[ht[xt-1],{type:"addNote",placement:ht[xt-2],actor:ht[xt-1].actor,text:ht[xt]}];break;case 54:ht[xt-2]=[].concat(ht[xt-1],ht[xt-1]).slice(0,2),ht[xt-2][0]=ht[xt-2][0].actor,ht[xt-2][1]=ht[xt-2][1].actor,this.$=[ht[xt-1],{type:"addNote",placement:kt.PLACEMENT.OVER,actor:ht[xt-2].slice(0,2),text:ht[xt]}];break;case 55:this.$=[ht[xt-1],{type:"addLinks",actor:ht[xt-1].actor,text:ht[xt]}];break;case 56:this.$=[ht[xt-1],{type:"addALink",actor:ht[xt-1].actor,text:ht[xt]}];break;case 57:this.$=[ht[xt-1],{type:"addProperties",actor:ht[xt-1].actor,text:ht[xt]}];break;case 58:this.$=[ht[xt-1],{type:"addDetails",actor:ht[xt-1].actor,text:ht[xt]}];break;case 61:this.$=[ht[xt-2],ht[xt]];break;case 62:this.$=ht[xt];break;case 63:this.$=kt.PLACEMENT.LEFTOF;break;case 64:this.$=kt.PLACEMENT.RIGHTOF;break;case 65:this.$=[ht[xt-4],ht[xt-1],{type:"addMessage",from:ht[xt-4].actor,to:ht[xt-1].actor,signalType:ht[xt-3],msg:ht[xt],activate:!0},{type:"activeStart",signalType:kt.LINETYPE.ACTIVE_START,actor:ht[xt-1]}];break;case 66:this.$=[ht[xt-4],ht[xt-1],{type:"addMessage",from:ht[xt-4].actor,to:ht[xt-1].actor,signalType:ht[xt-3],msg:ht[xt]},{type:"activeEnd",signalType:kt.LINETYPE.ACTIVE_END,actor:ht[xt-4]}];break;case 67:this.$=[ht[xt-3],ht[xt-1],{type:"addMessage",from:ht[xt-3].actor,to:ht[xt-1].actor,signalType:ht[xt-2],msg:ht[xt]}];break;case 68:this.$={type:"addParticipant",actor:ht[xt]};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[xt].trim().substring(1));break}},table:[{3:1,4:a,5:u,6:d},{1:[3]},{3:5,4:a,5:u,6:d},{3:6,4:a,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:E,17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},i(Se,[2,5]),{9:47,12:12,13:y,14:E,17:15,18:_,21:A,22:40,23:P,24:19,25:20,26:21,27:22,28:23,29:R,30:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},i(Se,[2,7]),i(Se,[2,8]),i(Se,[2,14]),{12:48,50:X,52:pe,53:G},{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(zt,p,{42:102,7:103}),i(zt,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(pn,[2,69]),i(pn,[2,70]),i(pn,[2,71]),i(pn,[2,72]),i(pn,[2,73]),i(pn,[2,74]),i(pn,[2,75]),i(pn,[2,76]),{22:116,70:Ie},{22:118,58:117,70:Ie},{70:[2,63]},{70:[2,64]},{56:119,79:Tt},{56:121,79:Tt},{56:122,79:Tt},{56:123,79:Tt},{4:[1,126],5:[1,128],11:125,12:127,16:[1,124],50:X,52:pe,53:G},{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:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},{4:v,5:b,8:8,9:10,12:12,13:y,14:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},{4:v,5:b,8:8,9:10,12:12,13:y,14:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},{16:[1,133]},{4:v,5:b,8:8,9:10,12:12,13:y,14:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,49:[1,134],50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},{16:[1,135]},{4:v,5:b,8:8,9:10,12:12,13:y,14:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,48:[1,136],50:X,52:pe,53:G,54:xe,59:U,60:Be,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:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,47:[1,139],50:X,52:pe,53:G,54:xe,59:U,60:Be,61:Pe,62:je,70:Ie},{4:v,5:b,8:8,9:10,12:12,13:y,14:E,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:B,31:j,33:W,35:ee,36:ie,37:oe,38:be,39:ge,41:ae,43:ne,44:se,46:de,50:X,52:pe,53:G,54:xe,59:U,60:Be,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:Tt},{56:146,79:Tt},{56:147,79:Tt},{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:pe,53:G},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:Tt},{56:156,79:Tt},{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(zt,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(Bt,Ze){if(Ze.recoverable)this.trace(Bt);else{var Dt=new Error(Bt);throw Dt.hash=Ze,Dt}},parse:function(Bt){var Ze=this,Dt=[0],kt=[],Nn=[null],ht=[],qr=this.table,xt="",Ri=0,wi=0,ia=2,Hs=1,mo=ht.slice.call(arguments,1),Tr=Object.create(this.lexer),On={yy:{}};for(var Rn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Rn)&&(On.yy[Rn]=this.yy[Rn]);Tr.setInput(Bt,On.yy),On.yy.lexer=Tr,On.yy.parser=this,typeof Tr.yylloc>"u"&&(Tr.yylloc={});var zn=Tr.yylloc;ht.push(zn);var Ct=Tr.options&&Tr.options.ranges;typeof On.yy.parseError=="function"?this.parseError=On.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gt(){var _c;return _c=kt.pop()||Tr.lex()||Hs,typeof _c!="number"&&(_c instanceof Array&&(kt=_c,_c=kt.pop()),_c=Ze.symbols_[_c]||_c),_c}for(var on,dn,Ln,Io,Oo={},No,Us,uo,Es;;){if(dn=Dt[Dt.length-1],this.defaultActions[dn]?Ln=this.defaultActions[dn]:((on===null||typeof on>"u")&&(on=gt()),Ln=qr[dn]&&qr[dn][on]),typeof Ln>"u"||!Ln.length||!Ln[0]){var Ou="";Es=[];for(No in qr[dn])this.terminals_[No]&&No>ia&&Es.push("'"+this.terminals_[No]+"'");Tr.showPosition?Ou="Parse error on line "+(Ri+1)+`:969`+Tr.showPosition()+`970Expecting `+Es.join(", ")+", got '"+(this.terminals_[on]||on)+"'":Ou="Parse error on line "+(Ri+1)+": Unexpected "+(on==Hs?"end of input":"'"+(this.terminals_[on]||on)+"'"),this.parseError(Ou,{text:Tr.match,token:this.terminals_[on]||on,line:Tr.yylineno,loc:zn,expected:Es})}if(Ln[0]instanceof Array&&Ln.length>1)throw new Error("Parse Error: multiple actions possible at state: "+dn+", token: "+on);switch(Ln[0]){case 1:Dt.push(on),Nn.push(Tr.yytext),ht.push(Tr.yylloc),Dt.push(Ln[1]),on=null,wi=Tr.yyleng,xt=Tr.yytext,Ri=Tr.yylineno,zn=Tr.yylloc;break;case 2:if(Us=this.productions_[Ln[1]][1],Oo.$=Nn[Nn.length-Us],Oo._$={first_line:ht[ht.length-(Us||1)].first_line,last_line:ht[ht.length-1].last_line,first_column:ht[ht.length-(Us||1)].first_column,last_column:ht[ht.length-1].last_column},Ct&&(Oo._$.range=[ht[ht.length-(Us||1)].range[0],ht[ht.length-1].range[1]]),Io=this.performAction.apply(Oo,[xt,wi,Ri,On.yy,Ln[1],Nn,ht].concat(mo)),typeof Io<"u")return Io;Us&&(Dt=Dt.slice(0,-1*Us*2),Nn=Nn.slice(0,-1*Us),ht=ht.slice(0,-1*Us)),Dt.push(this.productions_[Ln[1]][0]),Nn.push(Oo.$),ht.push(Oo._$),uo=qr[Dt[Dt.length-2]][Dt[Dt.length-1]],Dt.push(uo);break;case 3:return!0}}return!0}},Wt=function(){var yt={EOF:1,parseError:function(Ze,Dt){if(this.yy.parser)this.yy.parser.parseError(Ze,Dt);else throw new Error(Ze)},setInput:function(Bt,Ze){return this.yy=Ze||this.yy||{},this._input=Bt,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 Bt=this._input[0];this.yytext+=Bt,this.yyleng++,this.offset++,this.match+=Bt,this.matched+=Bt;var Ze=Bt.match(/(?:\r\n?|\n).*/g);return Ze?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Bt},unput:function(Bt){var Ze=Bt.length,Dt=Bt.split(/(?:\r\n?|\n)/g);this._input=Bt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ze),this.offset-=Ze;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 Nn=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-Ze},this.options.ranges&&(this.yylloc.range=[Nn[0],Nn[0]+this.yyleng-Ze]),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).971`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Bt){this.unput(this.match.slice(Bt))},pastInput:function(){var Bt=this.matched.substr(0,this.matched.length-this.match.length);return(Bt.length>20?"...":"")+Bt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Bt=this.match;return Bt.length<20&&(Bt+=this._input.substr(0,20-Bt.length)),(Bt.substr(0,20)+(Bt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Bt=this.pastInput(),Ze=new Array(Bt.length+1).join("-");return Bt+this.upcomingInput()+`972`+Ze+"^"},test_match:function(Bt,Ze){var Dt,kt,Nn;if(this.options.backtrack_lexer&&(Nn={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&&(Nn.yylloc.range=this.yylloc.range.slice(0))),kt=Bt[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+Bt[0].length},this.yytext+=Bt[0],this.match+=Bt[0],this.matches=Bt,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(Bt[0].length),this.matched+=Bt[0],Dt=this.performAction.call(this,this.yy,this,Ze,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Dt)return Dt;if(this._backtrack){for(var ht in Nn)this[ht]=Nn[ht];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Bt,Ze,Dt,kt;this._more||(this.yytext="",this.match="");for(var Nn=this._currentRules(),ht=0;ht<Nn.length;ht++)if(Dt=this._input.match(this.rules[Nn[ht]]),Dt&&(!Ze||Dt[0].length>Ze[0].length)){if(Ze=Dt,kt=ht,this.options.backtrack_lexer){if(Bt=this.test_match(Dt,Nn[ht]),Bt!==!1)return Bt;if(this._backtrack){Ze=!1;continue}else return!1}else if(!this.options.flex)break}return Ze?(Bt=this.test_match(Ze,Nn[kt]),Bt!==!1?Bt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.973`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ze=this.next();return Ze||this.lex()},begin:function(Ze){this.conditionStack.push(Ze)},popState:function(){var Ze=this.conditionStack.length-1;return Ze>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(Ze){return Ze=this.conditionStack.length-1-Math.abs(Ze||0),Ze>=0?this.conditionStack[Ze]:"INITIAL"},pushState:function(Ze){this.begin(Ze)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ze,Dt,kt,Nn){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 yt}();Et.lexer=Wt;function un(){this.yy={}}return un.prototype=Et,Et.Parser=un,new un}();Rve.parser=Rve;const zrn=Rve;class qrn{constructor(a){this.init=a,this.records=this.init()}reset(){this.records=this.init()}}const Is=new qrn(()=>({prevActor:void 0,actors:{},createdActors:{},destroyedActors:{},boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),Hrn=function(i){Is.records.boxes.push({name:i.text,wrap:i.wrap===void 0&&ZC()||!!i.wrap,fill:i.color,actorKeys:[]}),Is.records.currentBox=Is.records.boxes.slice(-1)[0]},jve=function(i,a,u,d){let p=Is.records.currentBox;const v=Is.records.actors[i];if(v){if(Is.records.currentBox&&v.box&&Is.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 '"+Is.records.currentBox.name+"' at the same time.");if(p=v.box?v.box:Is.records.currentBox,v.box=p,v&&a===v.name&&u==null)return}(u==null||u.text==null)&&(u={text:a,wrap:null,type:d}),(d==null||u.text==null)&&(u={text:a,wrap:null,type:d}),Is.records.actors[i]={box:p,name:a,description:u.text,wrap:u.wrap===void 0&&ZC()||!!u.wrap,prevActor:Is.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:d||"participant"},Is.records.prevActor&&Is.records.actors[Is.records.prevActor]&&(Is.records.actors[Is.records.prevActor].nextActor=i),Is.records.currentBox&&Is.records.currentBox.actorKeys.push(i),Is.records.prevActor=i},Urn=i=>{let a,u=0;for(a=0;a<Is.records.messages.length;a++)Is.records.messages[a].type===ej.ACTIVE_START&&Is.records.messages[a].from.actor===i&&u++,Is.records.messages[a].type===ej.ACTIVE_END&&Is.records.messages[a].from.actor===i&&u--;return u},Vrn=function(i,a,u,d){Is.records.messages.push({from:i,to:a,message:u.text,wrap:u.wrap===void 0&&ZC()||!!u.wrap,answer:d})},Xf=function(i,a,u={text:void 0,wrap:void 0},d,p=!1){if(d===ej.ACTIVE_END&&Urn(i.actor)<1){let b=new Error("Trying to inactivate an inactive participant ("+i.actor+")");throw b.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},b}return Is.records.messages.push({from:i,to:a,message:u.text,wrap:u.wrap===void 0&&ZC()||!!u.wrap,type:d,activate:p}),!0},Grn=function(){return Is.records.boxes.length>0},Krn=function(){return Is.records.boxes.some(i=>i.name)},Wrn=function(){return Is.records.messages},Yrn=function(){return Is.records.boxes},Xrn=function(){return Is.records.actors},Qrn=function(){return Is.records.createdActors},Jrn=function(){return Is.records.destroyedActors},ZR=function(i){return Is.records.actors[i]},Zrn=function(){return Object.keys(Is.records.actors)},ein=function(){Is.records.sequenceNumbersEnabled=!0},tin=function(){Is.records.sequenceNumbersEnabled=!1},nin=()=>Is.records.sequenceNumbersEnabled,rin=function(i){Is.records.wrapEnabled=i},ZC=()=>Is.records.wrapEnabled!==void 0?Is.records.wrapEnabled:qt().sequence.wrap,iin=function(){Is.reset(),Rg()},sin=function(i){const a=i.trim(),u={text:a.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:a.match(/^:?wrap:/)!==null?!0:a.match(/^:?nowrap:/)!==null?!1:void 0};return Xe.debug("parseMessage:",u),u},ain=function(i){const a=i.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let u=a!=null&&a[1]?a[1].trim():"transparent",d=a!=null&&a[2]?a[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?bh(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}},ej={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},oin={FILLED:0,OPEN:1},cin={LEFTOF:0,RIGHTOF:1,OVER:2},oKe=function(i,a,u){const d={actor:i,placement:a,message:u.text,wrap:u.wrap===void 0&&ZC()||!!u.wrap},p=[].concat(i,i);Is.records.notes.push(d),Is.records.messages.push({from:p[0],to:p[1],message:u.text,wrap:u.wrap===void 0&&ZC()||!!u.wrap,type:ej.NOTE,placement:a})},cKe=function(i,a){const u=ZR(i);try{let d=bh(a.text,qt());d=d.replace(/&/g,"&"),d=d.replace(/=/g,"=");const p=JSON.parse(d);$ve(u,p)}catch(d){Xe.error("error while parsing actor link text",d)}},uin=function(i,a){const u=ZR(i);try{const b={};let y=bh(a.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,$ve(u,b)}catch(b){Xe.error("error while parsing actor link text",b)}};function $ve(i,a){if(i.links==null)i.links=a;else for(let u in a)i.links[u]=a[u]}const uKe=function(i,a){const u=ZR(i);try{let d=bh(a.text,qt());const p=JSON.parse(d);lKe(u,p)}catch(d){Xe.error("error while parsing actor properties text",d)}};function lKe(i,a){if(i.properties==null)i.properties=a;else for(let u in a)i.properties[u]=a[u]}function lin(){Is.records.currentBox=void 0}const hKe=function(i,a){const u=ZR(i),d=document.getElementById(a.text);try{const p=d.innerHTML,v=JSON.parse(p);v.properties&&lKe(u,v.properties),v.links&&$ve(u,v.links)}catch(p){Xe.error("error while parsing actor details text",p)}},hin=function(i,a){if(i!==void 0&&i.properties!==void 0)return i.properties[a]},fKe=function(i){if(Array.isArray(i))i.forEach(function(a){fKe(a)});else switch(i.type){case"sequenceIndex":Is.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":jve(i.actor,i.actor,i.description,i.draw);break;case"createParticipant":if(Is.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");Is.records.lastCreated=i.actor,jve(i.actor,i.actor,i.description,i.draw),Is.records.createdActors[i.actor]=Is.records.messages.length;break;case"destroyParticipant":Is.records.lastDestroyed=i.actor,Is.records.destroyedActors[i.actor]=Is.records.messages.length;break;case"activeStart":Xf(i.actor,void 0,void 0,i.signalType);break;case"activeEnd":Xf(i.actor,void 0,void 0,i.signalType);break;case"addNote":oKe(i.actor,i.placement,i.text);break;case"addLinks":cKe(i.actor,i.text);break;case"addALink":uin(i.actor,i.text);break;case"addProperties":uKe(i.actor,i.text);break;case"addDetails":hKe(i.actor,i.text);break;case"addMessage":if(Is.records.lastCreated){if(i.to!==Is.records.lastCreated)throw new Error("The created participant "+Is.records.lastCreated+" does not have an associated creating message after its declaration. Please check the sequence diagram.");Is.records.lastCreated=void 0}else if(Is.records.lastDestroyed){if(i.to!==Is.records.lastDestroyed&&i.from!==Is.records.lastDestroyed)throw new Error("The destroyed participant "+Is.records.lastDestroyed+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");Is.records.lastDestroyed=void 0}Xf(i.from,i.to,i.msg,i.signalType,i.activate);break;case"boxStart":Hrn(i.boxData);break;case"boxEnd":lin();break;case"loopStart":Xf(void 0,void 0,i.loopText,i.signalType);break;case"loopEnd":Xf(void 0,void 0,void 0,i.signalType);break;case"rectStart":Xf(void 0,void 0,i.color,i.signalType);break;case"rectEnd":Xf(void 0,void 0,void 0,i.signalType);break;case"optStart":Xf(void 0,void 0,i.optText,i.signalType);break;case"optEnd":Xf(void 0,void 0,void 0,i.signalType);break;case"altStart":Xf(void 0,void 0,i.altText,i.signalType);break;case"else":Xf(void 0,void 0,i.altText,i.signalType);break;case"altEnd":Xf(void 0,void 0,void 0,i.signalType);break;case"setAccTitle":jg(i.text);break;case"parStart":Xf(void 0,void 0,i.parText,i.signalType);break;case"and":Xf(void 0,void 0,i.parText,i.signalType);break;case"parEnd":Xf(void 0,void 0,void 0,i.signalType);break;case"criticalStart":Xf(void 0,void 0,i.criticalText,i.signalType);break;case"option":Xf(void 0,void 0,i.optionText,i.signalType);break;case"criticalEnd":Xf(void 0,void 0,void 0,i.signalType);break;case"breakStart":Xf(void 0,void 0,i.breakText,i.signalType);break;case"breakEnd":Xf(void 0,void 0,void 0,i.signalType);break}},dKe={addActor:jve,addMessage:Vrn,addSignal:Xf,addLinks:cKe,addDetails:hKe,addProperties:uKe,autoWrap:ZC,setWrap:rin,enableSequenceNumbers:ein,disableSequenceNumbers:tin,showSequenceNumbers:nin,getMessages:Wrn,getActors:Xrn,getCreatedActors:Qrn,getDestroyedActors:Jrn,getActor:ZR,getActorKeys:Zrn,getActorProperty:hin,getAccTitle:Mp,getBoxes:Yrn,getDiagramTitle:Op,setDiagramTitle:pm,getConfig:()=>qt().sequence,clear:iin,parseMessage:sin,parseBoxData:ain,LINETYPE:ej,ARROWTYPE:oin,PLACEMENT:cin,addNote:oKe,setAccTitle:jg,apply:fKe,setAccDescription:Dp,getAccDescription:Ip,hasAtLeastOneBox:Grn,hasAtLeastOneBoxWithTitle:Krn},fin=i=>`.actor {974 stroke: ${i.actorBorder};975 fill: ${i.actorBkg};976 }977 978 text.actor > tspan {979 fill: ${i.actorTextColor};980 stroke: none;981 }982 983 .actor-line {984 stroke: ${i.actorLineColor};985 }986 987 .messageLine0 {988 stroke-width: 1.5;989 stroke-dasharray: none;990 stroke: ${i.signalColor};991 }992 993 .messageLine1 {994 stroke-width: 1.5;995 stroke-dasharray: 2, 2;996 stroke: ${i.signalColor};997 }998 999 #arrowhead path {1000 fill: ${i.signalColor};1001 stroke: ${i.signalColor};1002 }1003 1004 .sequenceNumber {1005 fill: ${i.sequenceNumberColor};1006 }1007 1008 #sequencenumber {1009 fill: ${i.signalColor};1010 }1011 1012 #crosshead path {1013 fill: ${i.signalColor};1014 stroke: ${i.signalColor};1015 }1016 1017 .messageText {1018 fill: ${i.signalTextColor};1019 stroke: none;1020 }1021 1022 .labelBox {1023 stroke: ${i.labelBoxBorderColor};1024 fill: ${i.labelBoxBkgColor};1025 }1026 1027 .labelText, .labelText > tspan {1028 fill: ${i.labelTextColor};1029 stroke: none;1030 }1031 1032 .loopText, .loopText > tspan {1033 fill: ${i.loopTextColor};1034 stroke: none;1035 }1036 1037 .loopLine {1038 stroke-width: 2px;1039 stroke-dasharray: 2, 2;1040 stroke: ${i.labelBoxBorderColor};1041 fill: ${i.labelBoxBorderColor};1042 }1043 1044 .note {1045 //stroke: #decc93;1046 stroke: ${i.noteBorderColor};1047 fill: ${i.noteBkgColor};1048 }1049 1050 .noteText, .noteText > tspan {1051 fill: ${i.noteTextColor};1052 stroke: none;1053 }1054 1055 .activation0 {1056 fill: ${i.activationBkgColor};1057 stroke: ${i.activationBorderColor};1058 }1059 1060 .activation1 {1061 fill: ${i.activationBkgColor};1062 stroke: ${i.activationBorderColor};1063 }1064 1065 .activation2 {1066 fill: ${i.activationBkgColor};1067 stroke: ${i.activationBorderColor};1068 }1069 1070 .actorPopupMenu {1071 position: absolute;1072 }1073 1074 .actorPopupMenuPanel {1075 position: absolute;1076 fill: ${i.actorBkg};1077 box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);1078 filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));1079}1080 .actor-man line {1081 stroke: ${i.actorBorder};1082 fill: ${i.actorBkg};1083 }1084 .actor-man circle, line {1085 stroke: ${i.actorBorder};1086 fill: ${i.actorBkg};1087 stroke-width: 2px;1088 }1089`,eS=18*2,gKe="actor-top",pKe="actor-bottom",zve=function(i,a){return qQ(i,a)},din=function(i,a,u,d,p){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const v=a.links,b=a.actorCnt,y=a.rectData;var E="none";p&&(E="block !important");const _=i.append("g");_.attr("id","actor"+b+"_popup"),_.attr("class","actorPopupMenu"),_.attr("display",E);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 B=20;for(let ee in v){var j=_.append("a"),W=b9.sanitizeUrl(v[ee]);j.attr("xlink:href",W),j.attr("target","_blank"),Min(d)(ee,j,y.x+10,y.height+B,P,20,{class:"actor"},d),B+=30}}return R.attr("height",B),{height:y.height+B,width:P}},gin=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},LJ=async function(i,a,u=null){let d=i.append("foreignObject");const p=await SC(a.text,mh()),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)),a.class==="noteText"){const y=i.node().firstChild;y.setAttribute("height",b.height+2*a.textMargin);const E=y.getBBox();d.attr("x",Math.round(E.x+E.width/2-b.width/2)).attr("y",Math.round(E.y+E.height/2-b.height/2))}else if(u){let{startx:y,stopx:E,starty:_}=u;if(y>E){const A=y;y=E,E=A}d.attr("x",Math.round(y+Math.abs(y-E)/2-b.width/2)),a.class==="loopText"?d.attr("y",Math.round(_)):d.attr("y",Math.round(_-b.height))}return[d]},rI=function(i,a){let u=0,d=0;const p=a.text.split(oi.lineBreakRegex),[v,b]=PC(a.fontSize);let y=[],E=0,_=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":_=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":_=()=>Math.round(a.y+(u+d+a.textMargin)/2);break;case"bottom":case"end":_=()=>Math.round(a.y+(u+d+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[A,P]of p.entries()){a.textMargin!==void 0&&a.textMargin===0&&v!==void 0&&(E=A*v);const R=i.append("text");R.attr("x",a.x),R.attr("y",_()),a.anchor!==void 0&&R.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&R.style("font-family",a.fontFamily),b!==void 0&&R.style("font-size",b),a.fontWeight!==void 0&&R.style("font-weight",a.fontWeight),a.fill!==void 0&&R.attr("fill",a.fill),a.class!==void 0&&R.attr("class",a.class),a.dy!==void 0?R.attr("dy",a.dy):E!==0&&R.attr("dy",E);const B=P||Nje;if(a.tspan){const j=R.append("tspan");j.attr("x",a.x),a.fill!==void 0&&j.attr("fill",a.fill),j.text(B)}else R.text(B);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(d+=(R._groups||R)[0][0].getBBox().height,u=d),y.push(R)}return y},bKe=function(i,a){function u(p,v,b,y,E){return p+","+v+" "+(p+b)+","+v+" "+(p+b)+","+(v+y-E)+" "+(p+b-E*1.2)+","+(v+y)+" "+p+","+(v+y)}const d=i.append("polygon");return d.attr("points",u(a.x,a.y,a.width,a.height,7)),d.attr("class","labelBox"),a.y=a.y+a.height/2,rI(i,a),d};let o5=-1;const mKe=(i,a,u,d)=>{i.select&&u.forEach(p=>{const v=a[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)})},pin=async function(i,a,u,d){const p=d?a.stopy:a.starty,v=a.x+a.width/2,b=p+5,y=i.append("g").lower();var E=y;d||(o5++,Object.keys(a.links||{}).length&&!u.forceMenus&&E.attr("onclick",gin(`actor${o5}_popup`)).attr("cursor","pointer"),E.append("line").attr("id","actor"+o5).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"),E=y.append("g"),a.actorCnt=o5,a.links!=null&&E.attr("id","root-"+o5));const _=HC();var A="actor";a.properties!=null&&a.properties.class?A=a.properties.class:_.fill="#eaeaea",d?A+=` ${pKe}`:A+=` ${gKe}`,_.x=a.x,_.y=p,_.width=a.width,_.height=a.height,_.class=A,_.rx=3,_.ry=3,_.name=a.name;const P=zve(E,_);if(a.rectData=_,a.properties!=null&&a.properties.icon){const B=a.properties.icon.trim();B.charAt(0)==="@"?EVt(E,_.x+_.width-20,_.y+10,B.substr(1)):TVt(E,_.x+_.width-20,_.y+10,B)}await qve(u,$v(a.description))(a.description,E,_.x,_.y,_.width,_.height,{class:"actor"},u);let R=a.height;if(P.node){const B=P.node().getBBox();a.height=B.height,R=B.height}return R},bin=async function(i,a,u,d){const p=d?a.stopy:a.starty,v=a.x+a.width/2,b=p+80;i.lower(),d||(o5++,i.append("line").attr("id","actor"+o5).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"),a.actorCnt=o5);const y=i.append("g");let E="actor-man";d?E+=` ${pKe}`:E+=` ${gKe}`,y.attr("class",E),y.attr("name",a.name);const _=HC();_.x=a.x,_.y=p,_.fill="#eaeaea",_.width=a.width,_.height=a.height,_.class="actor",_.rx=3,_.ry=3,y.append("line").attr("id","actor-man-torso"+o5).attr("x1",v).attr("y1",p+25).attr("x2",v).attr("y2",p+45),y.append("line").attr("id","actor-man-arms"+o5).attr("x1",v-eS/2).attr("y1",p+33).attr("x2",v+eS/2).attr("y2",p+33),y.append("line").attr("x1",v-eS/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+eS/2-2).attr("y2",p+60);const A=y.append("circle");A.attr("cx",a.x+a.width/2),A.attr("cy",p+10),A.attr("r",15),A.attr("width",a.width),A.attr("height",a.height);const P=y.node().getBBox();return a.height=P.height,await qve(u,$v(a.description))(a.description,y,_.x,_.y+35,_.width,_.height,{class:"actor"},u),a.height},min=async function(i,a,u,d){switch(a.type){case"actor":return await bin(i,a,u,d);case"participant":return await pin(i,a,u,d)}},vin=async function(i,a,u){const p=i.append("g");vKe(p,a),a.name&&await qve(u)(a.name,p,a.x,a.y+(a.textMaxHeight||0)/2,a.width,0,{class:"text"},u),p.lower()},win=function(i){return i.append("g")},yin=function(i,a,u,d,p){const v=HC(),b=a.anchored;v.x=a.startx,v.y=a.starty,v.class="activation"+p%3,v.width=a.stopx-a.startx,v.height=u-a.starty,zve(b,v)},xin=async function(i,a,u,d){const{boxMargin:p,boxTextMargin:v,labelBoxHeight:b,labelBoxWidth:y,messageFontFamily:E,messageFontSize:_,messageFontWeight:A}=d,P=i.append("g"),R=function(W,ee,ie,oe){return P.append("line").attr("x1",W).attr("y1",ee).attr("x2",ie).attr("y2",oe).attr("class","loopLine")};R(a.startx,a.starty,a.stopx,a.starty),R(a.stopx,a.starty,a.stopx,a.stopy),R(a.startx,a.stopy,a.stopx,a.stopy),R(a.startx,a.starty,a.startx,a.stopy),a.sections!==void 0&&a.sections.forEach(function(W){R(a.startx,W.y,a.stopx,W.y).style("stroke-dasharray","3, 3")});let B=sme();B.text=u,B.x=a.startx,B.y=a.starty,B.fontFamily=E,B.fontSize=_,B.fontWeight=A,B.anchor="middle",B.valign="middle",B.tspan=!1,B.width=y||50,B.height=b||20,B.textMargin=v,B.class="labelText",bKe(P,B),B=wKe(),B.text=a.title,B.x=a.startx+y/2+(a.stopx-a.startx)/2,B.y=a.starty+p+v,B.anchor="middle",B.valign="middle",B.textMargin=v,B.class="loopText",B.fontFamily=E,B.fontSize=_,B.fontWeight=A,B.wrap=!0;let j=$v(B.text)?await LJ(P,B,a):rI(P,B);if(a.sectionTitles!==void 0){for(const[W,ee]of Object.entries(a.sectionTitles))if(ee.message){B.text=ee.message,B.x=a.startx+(a.stopx-a.startx)/2,B.y=a.sections[W].y+p+v,B.class="loopText",B.anchor="middle",B.valign="middle",B.tspan=!1,B.fontFamily=E,B.fontSize=_,B.fontWeight=A,B.wrap=a.wrap,$v(B.text)?(a.starty=a.sections[W].y,await LJ(P,B,a)):rI(P,B);let ie=Math.round(j.map(oe=>(oe._groups||oe)[0][0].getBBox().height).reduce((oe,be)=>oe+be));a.sections[W].height+=ie-(p+v)}}return a.height=Math.round(a.stopy-a.starty),P},vKe=function(i,a){Zqe(i,a)},kin=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")},Tin=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")},Ein=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")},Cin=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")},_in=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)},Ain=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")},wKe=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}},Lin=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},qve=function(){function i(v,b,y,E,_,A,P){const R=b.append("text").attr("x",y+_/2).attr("y",E+A/2+5).style("text-anchor","middle").text(v);p(R,P)}function a(v,b,y,E,_,A,P,R){const{actorFontSize:B,actorFontFamily:j,actorFontWeight:W}=R,[ee,ie]=PC(B),oe=v.split(oi.lineBreakRegex);for(let be=0;be<oe.length;be++){const ge=be*ee-ee*(oe.length-1)/2,ae=b.append("text").attr("x",y+_/2).attr("y",E).style("text-anchor","middle").style("font-size",ie).style("font-weight",W).style("font-family",j);ae.append("tspan").attr("x",y+_/2).attr("dy",ge).text(oe[be]),ae.attr("y",E+A/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),p(ae,P)}}function u(v,b,y,E,_,A,P,R){const B=b.append("switch"),W=B.append("foreignObject").attr("x",y).attr("y",E).attr("width",_).attr("height",A).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");W.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(v),a(v,B,y,E,_,A,P,R),p(W,P)}async function d(v,b,y,E,_,A,P,R){const B=await ZF(v,mh()),j=b.append("switch"),ee=j.append("foreignObject").attr("x",y+_/2-B.width/2).attr("y",E+A/2-B.height/2).attr("width",B.width).attr("height",B.height).append("xhtml:div").style("height","100%").style("width","100%");ee.append("div").style("text-align","center").style("vertical-align","middle").html(await SC(v,mh())),a(v,j,y,E,_,A,P,R),p(ee,P)}function p(v,b){for(const y in b)b.hasOwnProperty(y)&&v.attr(y,b[y])}return function(v,b=!1){return b?d:v.textPlacement==="fo"?u:v.textPlacement==="old"?i:a}}(),Min=function(){function i(p,v,b,y,E,_,A){const P=v.append("text").attr("x",b).attr("y",y).style("text-anchor","start").text(p);d(P,A)}function a(p,v,b,y,E,_,A,P){const{actorFontSize:R,actorFontFamily:B,actorFontWeight:j}=P,W=p.split(oi.lineBreakRegex);for(let ee=0;ee<W.length;ee++){const ie=ee*R-R*(W.length-1)/2,oe=v.append("text").attr("x",b).attr("y",y).style("text-anchor","start").style("font-size",R).style("font-weight",j).style("font-family",B);oe.append("tspan").attr("x",b).attr("dy",ie).text(W[ee]),oe.attr("y",y+_/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),d(oe,A)}}function u(p,v,b,y,E,_,A,P){const R=v.append("switch"),j=R.append("foreignObject").attr("x",b).attr("y",y).attr("width",E).attr("height",_).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");j.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(p),a(p,R,b,y,E,_,A,P),d(j,A)}function d(p,v){for(const b in v)v.hasOwnProperty(b)&&p.attr(b,v[b])}return function(p){return p.textPlacement==="fo"?u:p.textPlacement==="old"?i:a}}(),Qf={drawRect:zve,drawText:rI,drawLabel:bKe,drawActor:min,drawBox:vin,drawPopup:din,anchorElement:win,drawActivation:yin,drawLoop:xin,drawBackgroundRect:vKe,insertArrowHead:Cin,insertArrowFilledHead:Sin,insertSequenceNumber:_in,insertArrowCrossHead:Ain,insertDatabaseIcon:kin,insertComputerIcon:Tin,insertClockIcon:Ein,getTextObj:wKe,getNoteRect:Lin,fixLifeLineHeights:mKe,sanitizeUrl:b9.sanitizeUrl};let Tn={};const ni={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(i=>i.height||0))+(this.loops.length===0?0:this.loops.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.messages.length===0?0:this.messages.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.notes.length===0?0:this.notes.map(i=>i.height||0).reduce((i,a)=>i+a))},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,xKe(qt())},updateVal:function(i,a,u,d){i[a]===void 0?i[a]=u:i[a]=d(u,i[a])},updateBounds:function(i,a,u,d){const p=this;let v=0;function b(y){return function(_){v++;const A=p.sequenceItems.length-v+1;p.updateVal(_,"starty",a-A*Tn.boxMargin,Math.min),p.updateVal(_,"stopy",d+A*Tn.boxMargin,Math.max),p.updateVal(ni.data,"startx",i-A*Tn.boxMargin,Math.min),p.updateVal(ni.data,"stopx",u+A*Tn.boxMargin,Math.max),y!=="activation"&&(p.updateVal(_,"startx",i-A*Tn.boxMargin,Math.min),p.updateVal(_,"stopx",u+A*Tn.boxMargin,Math.max),p.updateVal(ni.data,"starty",a-A*Tn.boxMargin,Math.min),p.updateVal(ni.data,"stopy",d+A*Tn.boxMargin,Math.max))}}this.sequenceItems.forEach(b()),this.activations.forEach(b("activation"))},insert:function(i,a,u,d){const p=oi.getMin(i,u),v=oi.getMax(i,u),b=oi.getMin(a,d),y=oi.getMax(a,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,a,u){const d=u[i.from.actor],p=MJ(i.from.actor).length||0,v=d.x+d.width/2+(p-1)*Tn.activationWidth/2;this.activations.push({startx:v,starty:this.verticalPos+2,stopx:v+Tn.activationWidth,stopy:void 0,actor:i.from.actor,anchored:Qf.anchorElement(a)})},endActivation:function(i){const a=this.activations.map(function(u){return u.actor}).lastIndexOf(i.from.actor);return this.activations.splice(a,1)[0]},createLoop:function(i={message:void 0,wrap:!1,width:void 0},a){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:a}},newLoop:function(i={message:void 0,wrap:!1,width:void 0},a){this.sequenceItems.push(this.createLoop(i,a))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(i){const a=this.sequenceItems.pop();a.sections=a.sections||[],a.sectionTitles=a.sectionTitles||[],a.sections.push({y:ni.getVerticalPos(),height:0}),a.sectionTitles.push(i),this.sequenceItems.push(a)},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=oi.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},Din=async function(i,a){ni.bumpVerticalPos(Tn.boxMargin),a.height=Tn.boxMargin,a.starty=ni.getVerticalPos();const u=HC();u.x=a.startx,u.y=a.starty,u.width=a.width||Tn.width,u.class="note";const d=i.append("g"),p=Qf.drawRect(d,u),v=sme();v.x=a.startx,v.y=a.starty,v.width=u.width,v.dy="1em",v.text=a.message,v.class="noteText",v.fontFamily=Tn.noteFontFamily,v.fontSize=Tn.noteFontSize,v.fontWeight=Tn.noteFontWeight,v.anchor=Tn.noteAlign,v.textMargin=Tn.noteMargin,v.valign="center";const b=$v(v.text)?await LJ(d,v):rI(d,v),y=Math.round(b.map(E=>(E._groups||E)[0][0].getBBox().height).reduce((E,_)=>E+_));p.attr("height",y+2*Tn.noteMargin),a.height+=y+2*Tn.noteMargin,ni.bumpVerticalPos(y+2*Tn.noteMargin),a.stopy=a.starty+y+2*Tn.noteMargin,a.stopx=a.startx+u.width,ni.insert(a.startx,a.starty,a.stopx,a.stopy),ni.models.addNote(a)},tS=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight}),iI=i=>({fontFamily:i.noteFontFamily,fontSize:i.noteFontSize,fontWeight:i.noteFontWeight}),Hve=i=>({fontFamily:i.actorFontFamily,fontSize:i.actorFontSize,fontWeight:i.actorFontWeight});async function Iin(i,a){ni.bumpVerticalPos(10);const{startx:u,stopx:d,message:p}=a,v=oi.splitBreaks(p).length,b=$v(p),y=b?await ZF(p,qt()):So.calculateTextDimensions(p,tS(Tn));if(!b){const P=y.height/v;a.height+=P,ni.bumpVerticalPos(P)}let E,_=y.height-10;const A=y.width;if(u===d){E=ni.getVerticalPos()+_,Tn.rightAngles||(_+=Tn.boxMargin,E=ni.getVerticalPos()+_),_+=30;const P=oi.getMax(A/2,Tn.width/2);ni.insert(u-P,ni.getVerticalPos()-10+_,d+P,ni.getVerticalPos()+30+_)}else _+=Tn.boxMargin,E=ni.getVerticalPos()+_,ni.insert(u,E-10,d,E);return ni.bumpVerticalPos(_),a.height+=_,a.stopy=a.starty+a.height,ni.insert(a.fromBounds,a.starty,a.toBounds,a.stopy),E}const Oin=async function(i,a,u,d){const{startx:p,stopx:v,starty:b,message:y,type:E,sequenceIndex:_,sequenceVisible:A}=a,P=So.calculateTextDimensions(y,tS(Tn)),R=sme();R.x=p,R.y=b+10,R.width=v-p,R.class="messageText",R.dy="1em",R.text=y,R.fontFamily=Tn.messageFontFamily,R.fontSize=Tn.messageFontSize,R.fontWeight=Tn.messageFontWeight,R.anchor=Tn.messageAlign,R.valign="center",R.textMargin=Tn.wrapPadding,R.tspan=!1,$v(R.text)?await LJ(i,R,{startx:p,stopx:v,starty:u}):rI(i,R);const B=P.width;let j;p===v?Tn.rightAngles?j=i.append("path").attr("d",`M ${p},${u} H ${p+oi.getMax(Tn.width/2,B/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)),E===d.db.LINETYPE.DOTTED||E===d.db.LINETYPE.DOTTED_CROSS||E===d.db.LINETYPE.DOTTED_POINT||E===d.db.LINETYPE.DOTTED_OPEN?(j.style("stroke-dasharray","3, 3"),j.attr("class","messageLine1")):j.attr("class","messageLine0");let W="";Tn.arrowMarkerAbsolute&&(W=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,W=W.replace(/\(/g,"\\("),W=W.replace(/\)/g,"\\)")),j.attr("stroke-width",2),j.attr("stroke","none"),j.style("fill","none"),(E===d.db.LINETYPE.SOLID||E===d.db.LINETYPE.DOTTED)&&j.attr("marker-end","url("+W+"#arrowhead)"),(E===d.db.LINETYPE.SOLID_POINT||E===d.db.LINETYPE.DOTTED_POINT)&&j.attr("marker-end","url("+W+"#filled-head)"),(E===d.db.LINETYPE.SOLID_CROSS||E===d.db.LINETYPE.DOTTED_CROSS)&&j.attr("marker-end","url("+W+"#crosshead)"),(A||Tn.showSequenceNumbers)&&(j.attr("marker-start","url("+W+"#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(_))},Nin=async function(i,a,u,d,p,v,b){let y=0,E=0,_,A=0;for(const P of d){const R=a[P],B=R.box;_&&_!=B&&(b||ni.models.addBox(_),E+=Tn.boxMargin+_.margin),B&&B!=_&&(b||(B.x=y+E,B.y=p),E+=B.margin),R.width=R.width||Tn.width,R.height=oi.getMax(R.height||Tn.height,Tn.height),R.margin=R.margin||Tn.actorMargin,A=oi.getMax(A,R.height),u[R.name]&&(E+=R.width/2),R.x=y+E,R.starty=ni.getVerticalPos(),ni.insert(R.x,p,R.x+R.width,R.height),y+=R.width+E,R.box&&(R.box.width=y+B.margin-R.box.x),E=R.margin,_=R.box,ni.models.addActor(R)}_&&!b&&ni.models.addBox(_),ni.bumpVerticalPos(A)},Uve=async function(i,a,u,d){if(d){let p=0;ni.bumpVerticalPos(Tn.boxMargin*2);for(const v of u){const b=a[v];b.stopy||(b.stopy=ni.getVerticalPos());const y=await Qf.drawActor(i,b,Tn,!0);p=oi.getMax(p,y)}ni.bumpVerticalPos(p+Tn.boxMargin)}else for(const p of u){const v=a[p];await Qf.drawActor(i,v,Tn,!1)}},yKe=function(i,a,u,d){let p=0,v=0;for(const b of u){const y=a[b],E=Rin(y),_=Qf.drawPopup(i,y,E,Tn,Tn.forceMenus,d);_.height>p&&(p=_.height),_.width+y.x>v&&(v=_.width+y.x)}return{maxHeight:p,maxWidth:v}},xKe=function(i){id(Tn,i),i.fontFamily&&(Tn.actorFontFamily=Tn.noteFontFamily=Tn.messageFontFamily=i.fontFamily),i.fontSize&&(Tn.actorFontSize=Tn.noteFontSize=Tn.messageFontSize=i.fontSize),i.fontWeight&&(Tn.actorFontWeight=Tn.noteFontWeight=Tn.messageFontWeight=i.fontWeight)},MJ=function(i){return ni.activations.filter(function(a){return a.actor===i})},kKe=function(i,a){const u=a[i],d=MJ(i),p=d.reduce(function(b,y){return oi.getMin(b,y.startx)},u.x+u.width/2-1),v=d.reduce(function(b,y){return oi.getMax(b,y.stopx)},u.x+u.width/2+1);return[p,v]};function c5(i,a,u,d,p){ni.bumpVerticalPos(u);let v=d;if(a.id&&a.message&&i[a.id]){const b=i[a.id].width,y=tS(Tn);a.message=So.wrapLabel(`[${a.message}]`,b-2*Tn.wrapPadding,y),a.width=b,a.wrap=!0;const E=So.calculateTextDimensions(a.message,y),_=oi.getMax(E.height,Tn.labelBoxHeight);v=d+_,Xe.debug(`${_} - ${a.message}`)}p(a),ni.bumpVerticalPos(v)}function Pin(i,a,u,d,p,v,b){function y(_,A){_.x<p[i.from].x?(ni.insert(a.stopx-A,a.starty,a.startx,a.stopy+_.height/2+Tn.noteMargin),a.stopx=a.stopx+A):(ni.insert(a.startx,a.starty,a.stopx+A,a.stopy+_.height/2+Tn.noteMargin),a.stopx=a.stopx-A)}function E(_,A){_.x<p[i.to].x?(ni.insert(a.startx-A,a.starty,a.stopx,a.stopy+_.height/2+Tn.noteMargin),a.startx=a.startx+A):(ni.insert(a.stopx,a.starty,a.startx+A,a.stopy+_.height/2+Tn.noteMargin),a.startx=a.startx-A)}if(v[i.to]==d){const _=p[i.to],A=_.type=="actor"?eS/2+3:_.width/2+3;y(_,A),_.starty=u-_.height/2,ni.bumpVerticalPos(_.height/2)}else if(b[i.from]==d){const _=p[i.from];if(Tn.mirrorActors){const A=_.type=="actor"?eS/2:_.width/2;E(_,A)}_.stopy=u-_.height/2,ni.bumpVerticalPos(_.height/2)}else if(b[i.to]==d){const _=p[i.to];if(Tn.mirrorActors){const A=_.type=="actor"?eS/2+3:_.width/2+3;y(_,A)}_.stopy=u-_.height/2,ni.bumpVerticalPos(_.height/2)}}const Bin=async function(i,a,u,d){const{securityLevel:p,sequence:v}=qt();Tn=v;let b;p==="sandbox"&&(b=Dr("#i"+a));const y=Dr(p==="sandbox"?b.nodes()[0].contentDocument.body:"body"),E=p==="sandbox"?b.nodes()[0].contentDocument:document;ni.init(),Xe.debug(d.db);const _=p==="sandbox"?y.select(`[id="${a}"]`):Dr(`[id="${a}"]`),A=d.db.getActors(),P=d.db.getCreatedActors(),R=d.db.getDestroyedActors(),B=d.db.getBoxes();let j=d.db.getActorKeys();const W=d.db.getMessages(),ee=d.db.getDiagramTitle(),ie=d.db.hasAtLeastOneBox(),oe=d.db.hasAtLeastOneBoxWithTitle(),be=await Fin(A,W,d);if(Tn.height=await jin(A,be,B),Qf.insertComputerIcon(_),Qf.insertDatabaseIcon(_),Qf.insertClockIcon(_),ie&&(ni.bumpVerticalPos(Tn.boxMargin),oe&&ni.bumpVerticalPos(B[0].textMaxHeight)),Tn.hideUnusedParticipants===!0){const Se=new Set;W.forEach(Ce=>{Se.add(Ce.from),Se.add(Ce.to)}),j=j.filter(Ce=>Se.has(Ce))}await Nin(_,A,P,j,0,W,!1);const ge=await qin(W,A,be,d);Qf.insertArrowHead(_),Qf.insertArrowCrossHead(_),Qf.insertArrowFilledHead(_),Qf.insertSequenceNumber(_);function ae(Se,Ce){const ke=ni.endActivation(Se);ke.starty+18>Ce&&(ke.starty=Ce-6,Ce+=12),Qf.drawActivation(_,ke,Ce,Tn,MJ(Se.from.actor).length),ni.insert(ke.startx,Ce-10,ke.stopx,Ce)}let ne=1,se=1;const de=[],X=[];let pe=0;for(const Se of W){let Ce,ke,Ke;switch(Se.type){case d.db.LINETYPE.NOTE:ni.resetVerticalPos(),ke=Se.noteModel,await Din(_,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:c5(ge,Se,Tn.boxMargin,Tn.boxMargin+Tn.boxTextMargin,zt=>ni.newLoop(zt));break;case d.db.LINETYPE.LOOP_END:Ce=ni.endLoop(),await Qf.drawLoop(_,Ce,"loop",Tn),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.RECT_START:c5(ge,Se,Tn.boxMargin,Tn.boxMargin,zt=>ni.newLoop(void 0,zt.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:c5(ge,Se,Tn.boxMargin,Tn.boxMargin+Tn.boxTextMargin,zt=>ni.newLoop(zt));break;case d.db.LINETYPE.OPT_END:Ce=ni.endLoop(),await Qf.drawLoop(_,Ce,"opt",Tn),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.ALT_START:c5(ge,Se,Tn.boxMargin,Tn.boxMargin+Tn.boxTextMargin,zt=>ni.newLoop(zt));break;case d.db.LINETYPE.ALT_ELSE:c5(ge,Se,Tn.boxMargin+Tn.boxTextMargin,Tn.boxMargin,zt=>ni.addSectionToLoop(zt));break;case d.db.LINETYPE.ALT_END:Ce=ni.endLoop(),await Qf.drawLoop(_,Ce,"alt",Tn),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.PAR_START:case d.db.LINETYPE.PAR_OVER_START:c5(ge,Se,Tn.boxMargin,Tn.boxMargin+Tn.boxTextMargin,zt=>ni.newLoop(zt)),ni.saveVerticalPos();break;case d.db.LINETYPE.PAR_AND:c5(ge,Se,Tn.boxMargin+Tn.boxTextMargin,Tn.boxMargin,zt=>ni.addSectionToLoop(zt));break;case d.db.LINETYPE.PAR_END:Ce=ni.endLoop(),await Qf.drawLoop(_,Ce,"par",Tn),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:c5(ge,Se,Tn.boxMargin,Tn.boxMargin+Tn.boxTextMargin,zt=>ni.newLoop(zt));break;case d.db.LINETYPE.CRITICAL_OPTION:c5(ge,Se,Tn.boxMargin+Tn.boxTextMargin,Tn.boxMargin,zt=>ni.addSectionToLoop(zt));break;case d.db.LINETYPE.CRITICAL_END:Ce=ni.endLoop(),await Qf.drawLoop(_,Ce,"critical",Tn),ni.bumpVerticalPos(Ce.stopy-ni.getVerticalPos()),ni.models.addLoop(Ce);break;case d.db.LINETYPE.BREAK_START:c5(ge,Se,Tn.boxMargin,Tn.boxMargin+Tn.boxTextMargin,zt=>ni.newLoop(zt));break;case d.db.LINETYPE.BREAK_END:Ce=ni.endLoop(),await Qf.drawLoop(_,Ce,"break",Tn),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 zt=await Iin(_,Ke);Pin(Se,Ke,zt,pe,A,P,R),de.push({messageModel:Ke,lineStartY:zt}),ni.models.addMessage(Ke)}catch(zt){Xe.error("error while drawing message",zt)}}[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),pe++}Xe.debug("createdActors",P),Xe.debug("destroyedActors",R),await Uve(_,A,j,!1);for(const Se of de)await Oin(_,Se.messageModel,Se.lineStartY,d);Tn.mirrorActors&&await Uve(_,A,j,!0),X.forEach(Se=>Qf.drawBackgroundRect(_,Se)),mKe(_,A,j,Tn);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 Qf.drawBox(_,Se,Tn);ie&&ni.bumpVerticalPos(Tn.boxMargin);const G=yKe(_,A,j,E),{bounds:xe}=ni.getBounds();let U=xe.stopy-xe.starty;U<G.maxHeight&&(U=G.maxHeight);let Be=U+2*Tn.diagramMarginY;Tn.mirrorActors&&(Be=Be-Tn.boxMargin+Tn.bottomMarginAdj);let Pe=xe.stopx-xe.startx;Pe<G.maxWidth&&(Pe=G.maxWidth);const je=Pe+2*Tn.diagramMarginX;ee&&_.append("text").text(ee).attr("x",(xe.stopx-xe.startx)/2-2*Tn.diagramMarginX).attr("y",-25),Fg(_,Be,je,Tn.useMaxWidth);const Ie=ee?40:0;_.attr("viewBox",xe.startx-Tn.diagramMarginX+" -"+(Tn.diagramMarginY+Ie)+" "+je+" "+(Be+Ie)),Xe.debug("models:",ni.models)};async function Fin(i,a,u){const d={};for(const p of a)if(i[p.to]&&i[p.from]){const v=i[p.to];if(p.placement===u.db.PLACEMENT.LEFTOF&&!v.prevActor||p.placement===u.db.PLACEMENT.RIGHTOF&&!v.nextActor)continue;const b=p.placement!==void 0,y=!b,E=b?iI(Tn):tS(Tn),_=p.wrap?So.wrapLabel(p.message,Tn.width-2*Tn.wrapPadding,E):p.message,P=($v(_)?await ZF(p.message,qt()):So.calculateTextDimensions(_,E)).width+2*Tn.wrapPadding;y&&p.from===v.nextActor?d[p.to]=oi.getMax(d[p.to]||0,P):y&&p.from===v.prevActor?d[p.from]=oi.getMax(d[p.from]||0,P):y&&p.from===p.to?(d[p.from]=oi.getMax(d[p.from]||0,P/2),d[p.to]=oi.getMax(d[p.to]||0,P/2)):p.placement===u.db.PLACEMENT.RIGHTOF?d[p.from]=oi.getMax(d[p.from]||0,P):p.placement===u.db.PLACEMENT.LEFTOF?d[v.prevActor]=oi.getMax(d[v.prevActor]||0,P):p.placement===u.db.PLACEMENT.OVER&&(v.prevActor&&(d[v.prevActor]=oi.getMax(d[v.prevActor]||0,P/2)),v.nextActor&&(d[p.from]=oi.getMax(d[p.from]||0,P/2)))}return Xe.debug("maxMessageWidthPerActor:",d),d}const Rin=function(i){let a=0;const u=Hve(Tn);for(const d in i.links){const v=So.calculateTextDimensions(d,u).width+2*Tn.wrapPadding+2*Tn.boxMargin;a<v&&(a=v)}return a};async function jin(i,a,u){let d=0;for(const v of Object.keys(i)){const b=i[v];b.wrap&&(b.description=So.wrapLabel(b.description,Tn.width-2*Tn.wrapPadding,Hve(Tn)));const y=$v(b.description)?await ZF(b.description,qt()):So.calculateTextDimensions(b.description,Hve(Tn));b.width=b.wrap?Tn.width:oi.getMax(Tn.width,y.width+2*Tn.wrapPadding),b.height=b.wrap?oi.getMax(y.height,Tn.height):Tn.height,d=oi.getMax(d,b.height)}for(const v in a){const b=i[v];if(!b)continue;const y=i[b.nextActor];if(!y){const P=a[v]+Tn.actorMargin-b.width/2;b.margin=oi.getMax(P,Tn.actorMargin);continue}const _=a[v]+Tn.actorMargin-b.width/2-y.width/2;b.margin=oi.getMax(_,Tn.actorMargin)}let p=0;return u.forEach(v=>{const b=tS(Tn);let y=v.actorKeys.reduce((A,P)=>A+=i[P].width+(i[P].margin||0),0);y-=2*Tn.boxTextMargin,v.wrap&&(v.name=So.wrapLabel(v.name,y-2*Tn.wrapPadding,b));const E=So.calculateTextDimensions(v.name,b);p=oi.getMax(E.height,p);const _=oi.getMax(y,E.width+2*Tn.wrapPadding);if(v.margin=Tn.boxTextMargin,y<_){const A=(_-y)/2;v.margin+=A}}),u.forEach(v=>v.textMaxHeight=p),oi.getMax(d,Tn.height)}const $in=async function(i,a,u){const d=a[i.from].x,p=a[i.to].x,v=i.wrap&&i.message;let b=$v(i.message)?await ZF(i.message,qt()):So.calculateTextDimensions(v?So.wrapLabel(i.message,Tn.width,iI(Tn)):i.message,iI(Tn));const y={width:v?Tn.width:oi.getMax(Tn.width,b.width+2*Tn.noteMargin),height:0,startx:a[i.from].x,stopx:0,starty:0,stopy:0,message:i.message};return i.placement===u.db.PLACEMENT.RIGHTOF?(y.width=v?oi.getMax(Tn.width,b.width):oi.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*Tn.noteMargin),y.startx=d+(a[i.from].width+Tn.actorMargin)/2):i.placement===u.db.PLACEMENT.LEFTOF?(y.width=v?oi.getMax(Tn.width,b.width+2*Tn.noteMargin):oi.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*Tn.noteMargin),y.startx=d-y.width+(a[i.from].width-Tn.actorMargin)/2):i.to===i.from?(b=So.calculateTextDimensions(v?So.wrapLabel(i.message,oi.getMax(Tn.width,a[i.from].width),iI(Tn)):i.message,iI(Tn)),y.width=v?oi.getMax(Tn.width,a[i.from].width):oi.getMax(a[i.from].width,Tn.width,b.width+2*Tn.noteMargin),y.startx=d+(a[i.from].width-y.width)/2):(y.width=Math.abs(d+a[i.from].width/2-(p+a[i.to].width/2))+Tn.actorMargin,y.startx=d<p?d+a[i.from].width/2-Tn.actorMargin/2:p+a[i.to].width/2-Tn.actorMargin/2),v&&(y.message=So.wrapLabel(i.message,y.width-2*Tn.wrapPadding,iI(Tn))),Xe.debug(`NM:[${y.startx},${y.stopx},${y.starty},${y.stopy}:${y.width},${y.height}=${i.message}]`),y},zin=function(i,a,u){if(![u.db.LINETYPE.SOLID_OPEN,u.db.LINETYPE.DOTTED_OPEN,u.db.LINETYPE.SOLID,u.db.LINETYPE.DOTTED,u.db.LINETYPE.SOLID_CROSS,u.db.LINETYPE.DOTTED_CROSS,u.db.LINETYPE.SOLID_POINT,u.db.LINETYPE.DOTTED_POINT].includes(i.type))return{};const[d,p]=kKe(i.from,a),[v,b]=kKe(i.to,a),y=d<=v,E=y?p:d;let _=y?v:b;const A=Math.abs(v-b)>2,P=W=>y?-W:W;i.from===i.to?_=E:(i.activate&&!A&&(_+=P(Tn.activationWidth/2-1)),[u.db.LINETYPE.SOLID_OPEN,u.db.LINETYPE.DOTTED_OPEN].includes(i.type)||(_+=P(3)));const R=[d,p,v,b],B=Math.abs(E-_);i.wrap&&i.message&&(i.message=So.wrapLabel(i.message,oi.getMax(B+2*Tn.wrapPadding,Tn.width),tS(Tn)));const j=So.calculateTextDimensions(i.message,tS(Tn));return{width:oi.getMax(i.wrap?0:j.width+2*Tn.wrapPadding,B+2*Tn.wrapPadding,Tn.width),height:0,startx:E,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)}},qin=async function(i,a,u,d){const p={},v=[];let b,y,E;for(const _ of i){switch(_.id=So.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=a[_.from?_.from.actor:_.to.actor],R=MJ(_.from?_.from.actor:_.to.actor).length,B=P.x+P.width/2+(R-1)*Tn.activationWidth/2,j={startx:B,stopx:B+Tn.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 $in(_,a,d),_.noteModel=y,v.forEach(P=>{b=P,b.from=oi.getMin(b.from,y.startx),b.to=oi.getMax(b.to,y.startx+y.width),b.width=oi.getMax(b.width,Math.abs(b.from-b.to))-Tn.labelBoxWidth})):(E=zin(_,a,d),_.msgModel=E,E.startx&&E.stopx&&v.length>0&&v.forEach(P=>{if(b=P,E.startx===E.stopx){const R=a[_.from],B=a[_.to];b.from=oi.getMin(R.x-E.width/2,R.x-R.width/2,b.from),b.to=oi.getMax(B.x+E.width/2,B.x+R.width/2,b.to),b.width=oi.getMax(b.width,Math.abs(b.to-b.from))-Tn.labelBoxWidth}else b.from=oi.getMin(E.startx,b.from),b.to=oi.getMax(E.stopx,b.to),b.width=oi.getMax(b.width,E.width)-Tn.labelBoxWidth}))}return ni.activations=[],Xe.debug("Loop type widths:",p),p},Hin=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:zrn,db:dKe,renderer:{bounds:ni,drawActors:Uve,drawActorsPopup:yKe,setConf:xKe,draw:Bin},styles:fin,init:({wrap:i})=>{dKe.setWrap(i)}}},Symbol.toStringTag,{value:"Module"}));var Vve=function(){var i=function(mo,Tr,On,Rn){for(On=On||{},Rn=mo.length;Rn--;On[mo[Rn]]=Tr);return On},a=[1,17],u=[1,18],d=[1,19],p=[1,39],v=[1,40],b=[1,25],y=[1,23],E=[1,24],_=[1,31],A=[1,32],P=[1,33],R=[1,34],B=[1,35],j=[1,36],W=[1,26],ee=[1,27],ie=[1,28],oe=[1,29],be=[1,43],ge=[1,30],ae=[1,42],ne=[1,44],se=[1,41],de=[1,45],X=[1,9],pe=[1,8,9],G=[1,56],xe=[1,57],U=[1,58],Be=[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],zt=[13,74,80,95,97,98],Ne=[13,64,65,74,80,95,97,98],pn=[13,59,60,61,62,63,74,80,95,97,98],Tt=[1,93],Et=[1,110],Wt=[1,108],un=[1,102],yt=[1,103],Bt=[1,104],Ze=[1,105],Dt=[1,106],kt=[1,107],Nn=[1,109],ht=[1,8,9,37,39,42],qr=[1,8,9,21],xt=[1,8,9,78],Ri=[1,8,9,21,73,74,78,80,81,82,83,84,85],wi={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,On,Rn,zn,Ct,gt,on){var dn=gt.length-1;switch(Ct){case 8:this.$=gt[dn-1];break;case 9:case 11:case 12:this.$=gt[dn];break;case 10:case 13:this.$=gt[dn-1]+gt[dn];break;case 14:case 15:this.$=gt[dn-1]+"~"+gt[dn]+"~";break;case 16:zn.addRelation(gt[dn]);break;case 17:gt[dn-1].title=zn.cleanupLabel(gt[dn]),zn.addRelation(gt[dn-1]);break;case 27:this.$=gt[dn].trim(),zn.setAccTitle(this.$);break;case 28:case 29:this.$=gt[dn].trim(),zn.setAccDescription(this.$);break;case 30:zn.addClassesToNamespace(gt[dn-3],gt[dn-1]);break;case 31:zn.addClassesToNamespace(gt[dn-4],gt[dn-1]);break;case 32:this.$=gt[dn],zn.addNamespace(gt[dn]);break;case 33:this.$=[gt[dn]];break;case 34:this.$=[gt[dn-1]];break;case 35:gt[dn].unshift(gt[dn-2]),this.$=gt[dn];break;case 37:zn.setCssClass(gt[dn-2],gt[dn]);break;case 38:zn.addMembers(gt[dn-3],gt[dn-1]);break;case 39:zn.setCssClass(gt[dn-5],gt[dn-3]),zn.addMembers(gt[dn-5],gt[dn-1]);break;case 40:this.$=gt[dn],zn.addClass(gt[dn]);break;case 41:this.$=gt[dn-1],zn.addClass(gt[dn-1]),zn.setClassLabel(gt[dn-1],gt[dn]);break;case 42:zn.addAnnotation(gt[dn],gt[dn-2]);break;case 43:this.$=[gt[dn]];break;case 44:gt[dn].push(gt[dn-1]),this.$=gt[dn];break;case 45:break;case 46:zn.addMember(gt[dn-1],zn.cleanupLabel(gt[dn]));break;case 47:break;case 48:break;case 49:this.$={id1:gt[dn-2],id2:gt[dn],relation:gt[dn-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:gt[dn-3],id2:gt[dn],relation:gt[dn-1],relationTitle1:gt[dn-2],relationTitle2:"none"};break;case 51:this.$={id1:gt[dn-3],id2:gt[dn],relation:gt[dn-2],relationTitle1:"none",relationTitle2:gt[dn-1]};break;case 52:this.$={id1:gt[dn-4],id2:gt[dn],relation:gt[dn-2],relationTitle1:gt[dn-3],relationTitle2:gt[dn-1]};break;case 53:zn.addNote(gt[dn],gt[dn-1]);break;case 54:zn.addNote(gt[dn]);break;case 55:zn.setDirection("TB");break;case 56:zn.setDirection("BT");break;case 57:zn.setDirection("RL");break;case 58:zn.setDirection("LR");break;case 59:this.$={type1:gt[dn-2],type2:gt[dn],lineType:gt[dn-1]};break;case 60:this.$={type1:"none",type2:gt[dn],lineType:gt[dn-1]};break;case 61:this.$={type1:gt[dn-1],type2:"none",lineType:gt[dn]};break;case 62:this.$={type1:"none",type2:"none",lineType:gt[dn]};break;case 63:this.$=zn.relationType.AGGREGATION;break;case 64:this.$=zn.relationType.EXTENSION;break;case 65:this.$=zn.relationType.COMPOSITION;break;case 66:this.$=zn.relationType.DEPENDENCY;break;case 67:this.$=zn.relationType.LOLLIPOP;break;case 68:this.$=zn.lineType.LINE;break;case 69:this.$=zn.lineType.DOTTED_LINE;break;case 70:case 76:this.$=gt[dn-2],zn.setClickEvent(gt[dn-1],gt[dn]);break;case 71:case 77:this.$=gt[dn-3],zn.setClickEvent(gt[dn-2],gt[dn-1]),zn.setTooltip(gt[dn-2],gt[dn]);break;case 72:this.$=gt[dn-2],zn.setLink(gt[dn-1],gt[dn]);break;case 73:this.$=gt[dn-3],zn.setLink(gt[dn-2],gt[dn-1],gt[dn]);break;case 74:this.$=gt[dn-3],zn.setLink(gt[dn-2],gt[dn-1]),zn.setTooltip(gt[dn-2],gt[dn]);break;case 75:this.$=gt[dn-4],zn.setLink(gt[dn-3],gt[dn-2],gt[dn]),zn.setTooltip(gt[dn-3],gt[dn-1]);break;case 78:this.$=gt[dn-3],zn.setClickEvent(gt[dn-2],gt[dn-1],gt[dn]);break;case 79:this.$=gt[dn-4],zn.setClickEvent(gt[dn-3],gt[dn-2],gt[dn-1]),zn.setTooltip(gt[dn-3],gt[dn]);break;case 80:this.$=gt[dn-3],zn.setLink(gt[dn-2],gt[dn]);break;case 81:this.$=gt[dn-4],zn.setLink(gt[dn-3],gt[dn-1],gt[dn]);break;case 82:this.$=gt[dn-4],zn.setLink(gt[dn-3],gt[dn-1]),zn.setTooltip(gt[dn-3],gt[dn]);break;case 83:this.$=gt[dn-5],zn.setLink(gt[dn-4],gt[dn-2],gt[dn]),zn.setTooltip(gt[dn-4],gt[dn-1]);break;case 84:this.$=gt[dn-2],zn.setCssStyle(gt[dn-1],gt[dn]);break;case 85:zn.setCssClass(gt[dn-1],gt[dn]);break;case 86:this.$=[gt[dn]];break;case 87:gt[dn-2].push(gt[dn]),this.$=gt[dn-2];break;case 89:this.$=gt[dn-1]+gt[dn];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:a,33:u,35:d,36:21,40:p,41:22,44:v,45:b,47:y,48:E,50:_,52:A,53:P,54:R,55:B,56:j,66:W,67:ee,69:ie,73:oe,74:be,76:ge,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(pe,[2,16],{21:[1,48]}),i(pe,[2,18]),i(pe,[2,19]),i(pe,[2,20]),i(pe,[2,21]),i(pe,[2,22]),i(pe,[2,23]),i(pe,[2,24]),i(pe,[2,25]),i(pe,[2,26]),{32:[1,49]},{34:[1,50]},i(pe,[2,29]),i(pe,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:G,60:xe,61:U,62:Be,63:Pe,64:je,65:Ie}),{37:[1,63]},i(Se,[2,36],{37:[1,65],42:[1,64]}),i(pe,[2,47]),i(pe,[2,48]),{16:66,74:be,80:ae,95:ne,97:se},{16:37,17:67,18:38,74:be,80:ae,95:ne,97:se,98:de},{16:37,17:68,18:38,74:be,80:ae,95:ne,97:se,98:de},{16:37,17:69,18:38,74:be,80:ae,95:ne,97:se,98:de},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:be,80:ae,95:ne,97:se,98:de},{13:Ce,51:73},i(pe,[2,55]),i(pe,[2,56]),i(pe,[2,57]),i(pe,[2,58]),i(ke,[2,11],{16:37,18:38,17:75,19:[1,76],74:be,80:ae,95:ne,97:se,98:de}),i(ke,[2,12],{19:[1,77]}),{15:78,16:79,74:be,80:ae,95:ne,97:se},{16:37,17:80,18:38,74:be,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:a,33:u,35:d,40:p,44:v,45:b,47:y,48:E,50:_,52:A,53:P,54:R,55:B,56:j,66:W,67:ee,69:ie,73:oe,74:be,76:ge,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:a,33:u,35:d,36:21,40:p,41:22,44:v,45:b,47:y,48:E,50:_,52:A,53:P,54:R,55:B,56:j,66:W,67:ee,69:ie,73:oe,74:be,76:ge,80:ae,95:ne,97:se,98:de},i(pe,[2,17]),i(pe,[2,27]),i(pe,[2,28]),{13:[1,84],16:37,17:83,18:38,74:be,80:ae,95:ne,97:se,98:de},{49:85,57:54,58:55,59:G,60:xe,61:U,62:Be,63:Pe,64:je,65:Ie},i(pe,[2,46]),{58:86,64:je,65:Ie},i(zt,[2,62],{57:87,59:G,60:xe,61:U,62:Be,63:Pe}),i(Ne,[2,63]),i(Ne,[2,64]),i(Ne,[2,65]),i(Ne,[2,66]),i(Ne,[2,67]),i(pn,[2,68]),i(pn,[2,69]),{8:[1,89],23:90,38:88,41:22,44:v},{16:91,74:be,80:ae,95:ne,97:se},{43:92,47:Tt},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:Et,73:Wt,74:un,75:99,77:100,79:101,80:yt,81:Bt,82:Ze,83:Dt,84:kt,85:Nn},{74:[1,111]},{13:Ce,51:112},i(pe,[2,54]),i(pe,[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:be,80:ae,95:ne,97:se},i(ht,[2,40],{11:114,12:[1,115]}),i(X,[2,7]),{9:[1,116]},i(qr,[2,49]),{16:37,17:117,18:38,74:be,80:ae,95:ne,97:se,98:de},{13:[1,119],16:37,17:118,18:38,74:be,80:ae,95:ne,97:se,98:de},i(zt,[2,61],{57:120,59:G,60:xe,61:U,62:Be,63:Pe}),i(zt,[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:Tt},{16:37,17:127,18:38,74:be,80:ae,95:ne,97:se,98:de},i(pe,[2,70],{13:[1,128]}),i(pe,[2,72],{13:[1,130],68:[1,129]}),i(pe,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},i(pe,[2,84],{78:[1,134]}),i(xt,[2,86],{79:135,21:Et,73:Wt,74:un,80:yt,81:Bt,82:Ze,83:Dt,84:kt,85:Nn}),i(Ri,[2,88]),i(Ri,[2,90]),i(Ri,[2,91]),i(Ri,[2,92]),i(Ri,[2,93]),i(Ri,[2,94]),i(Ri,[2,95]),i(Ri,[2,96]),i(Ri,[2,97]),i(Ri,[2,98]),i(pe,[2,85]),i(pe,[2,53]),{37:[2,10]},i(ht,[2,41]),{13:[1,136]},{1:[2,4]},i(qr,[2,51]),i(qr,[2,50]),{16:37,17:137,18:38,74:be,80:ae,95:ne,97:se,98:de},i(zt,[2,59]),i(pe,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:v},{43:140,47:Tt},i(Se,[2,38]),{39:[2,44]},i(pe,[2,42]),i(pe,[2,71]),i(pe,[2,73]),i(pe,[2,74],{68:[1,141]}),i(pe,[2,77]),i(pe,[2,78],{13:[1,142]}),i(pe,[2,80],{13:[1,144],68:[1,143]}),{21:Et,73:Wt,74:un,77:145,79:101,80:yt,81:Bt,82:Ze,83:Dt,84:kt,85:Nn},i(Ri,[2,89]),{14:[1,146]},i(qr,[2,52]),i(pe,[2,31]),{39:[2,35]},{39:[1,147]},i(pe,[2,75]),i(pe,[2,79]),i(pe,[2,81]),i(pe,[2,82],{68:[1,148]}),i(xt,[2,87],{79:135,21:Et,73:Wt,74:un,80:yt,81:Bt,82:Ze,83:Dt,84:kt,85:Nn}),i(ht,[2,8]),i(Se,[2,39]),i(pe,[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,On){if(On.recoverable)this.trace(Tr);else{var Rn=new Error(Tr);throw Rn.hash=On,Rn}},parse:function(Tr){var On=this,Rn=[0],zn=[],Ct=[null],gt=[],on=this.table,dn="",Ln=0,Io=0,Oo=2,No=1,Us=gt.slice.call(arguments,1),uo=Object.create(this.lexer),Es={yy:{}};for(var Ou in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ou)&&(Es.yy[Ou]=this.yy[Ou]);uo.setInput(Tr,Es.yy),Es.yy.lexer=uo,Es.yy.parser=this,typeof uo.yylloc>"u"&&(uo.yylloc={});var _c=uo.yylloc;gt.push(_c);var Kd=uo.options&&uo.options.ranges;typeof Es.yy.parseError=="function"?this.parseError=Es.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function qp(){var ma;return ma=zn.pop()||uo.lex()||No,typeof ma!="number"&&(ma instanceof Array&&(zn=ma,ma=zn.pop()),ma=On.symbols_[ma]||ma),ma}for(var Ul,Ac,Jc,Ya,Ba={},ha,$o,Lc,Fa;;){if(Ac=Rn[Rn.length-1],this.defaultActions[Ac]?Jc=this.defaultActions[Ac]:((Ul===null||typeof Ul>"u")&&(Ul=qp()),Jc=on[Ac]&&on[Ac][Ul]),typeof Jc>"u"||!Jc.length||!Jc[0]){var Ra="";Fa=[];for(ha in on[Ac])this.terminals_[ha]&&ha>Oo&&Fa.push("'"+this.terminals_[ha]+"'");uo.showPosition?Ra="Parse error on line "+(Ln+1)+`:1090`+uo.showPosition()+`1091Expecting `+Fa.join(", ")+", got '"+(this.terminals_[Ul]||Ul)+"'":Ra="Parse error on line "+(Ln+1)+": Unexpected "+(Ul==No?"end of input":"'"+(this.terminals_[Ul]||Ul)+"'"),this.parseError(Ra,{text:uo.match,token:this.terminals_[Ul]||Ul,line:uo.yylineno,loc:_c,expected:Fa})}if(Jc[0]instanceof Array&&Jc.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ac+", token: "+Ul);switch(Jc[0]){case 1:Rn.push(Ul),Ct.push(uo.yytext),gt.push(uo.yylloc),Rn.push(Jc[1]),Ul=null,Io=uo.yyleng,dn=uo.yytext,Ln=uo.yylineno,_c=uo.yylloc;break;case 2:if($o=this.productions_[Jc[1]][1],Ba.$=Ct[Ct.length-$o],Ba._$={first_line:gt[gt.length-($o||1)].first_line,last_line:gt[gt.length-1].last_line,first_column:gt[gt.length-($o||1)].first_column,last_column:gt[gt.length-1].last_column},Kd&&(Ba._$.range=[gt[gt.length-($o||1)].range[0],gt[gt.length-1].range[1]]),Ya=this.performAction.apply(Ba,[dn,Io,Ln,Es.yy,Jc[1],Ct,gt].concat(Us)),typeof Ya<"u")return Ya;$o&&(Rn=Rn.slice(0,-1*$o*2),Ct=Ct.slice(0,-1*$o),gt=gt.slice(0,-1*$o)),Rn.push(this.productions_[Jc[1]][0]),Ct.push(Ba.$),gt.push(Ba._$),Lc=on[Rn[Rn.length-2]][Rn[Rn.length-1]],Rn.push(Lc);break;case 3:return!0}}return!0}},ia=function(){var mo={EOF:1,parseError:function(On,Rn){if(this.yy.parser)this.yy.parser.parseError(On,Rn);else throw new Error(On)},setInput:function(Tr,On){return this.yy=On||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 On=Tr.match(/(?:\r\n?|\n).*/g);return On?(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 On=Tr.length,Rn=Tr.split(/(?:\r\n?|\n)/g);this._input=Tr+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-On),this.offset-=On;var zn=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),Rn.length-1&&(this.yylineno-=Rn.length-1);var Ct=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:Rn?(Rn.length===zn.length?this.yylloc.first_column:0)+zn[zn.length-Rn.length].length-Rn[0].length:this.yylloc.first_column-On},this.options.ranges&&(this.yylloc.range=[Ct[0],Ct[0]+this.yyleng-On]),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).1092`+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(),On=new Array(Tr.length+1).join("-");return Tr+this.upcomingInput()+`1093`+On+"^"},test_match:function(Tr,On){var Rn,zn,Ct;if(this.options.backtrack_lexer&&(Ct={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&&(Ct.yylloc.range=this.yylloc.range.slice(0))),zn=Tr[0].match(/(?:\r\n?|\n).*/g),zn&&(this.yylineno+=zn.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:zn?zn[zn.length-1].length-zn[zn.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],Rn=this.performAction.call(this,this.yy,this,On,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Rn)return Rn;if(this._backtrack){for(var gt in Ct)this[gt]=Ct[gt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Tr,On,Rn,zn;this._more||(this.yytext="",this.match="");for(var Ct=this._currentRules(),gt=0;gt<Ct.length;gt++)if(Rn=this._input.match(this.rules[Ct[gt]]),Rn&&(!On||Rn[0].length>On[0].length)){if(On=Rn,zn=gt,this.options.backtrack_lexer){if(Tr=this.test_match(Rn,Ct[gt]),Tr!==!1)return Tr;if(this._backtrack){On=!1;continue}else return!1}else if(!this.options.flex)break}return On?(Tr=this.test_match(On,Ct[zn]),Tr!==!1?Tr:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.1094`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var On=this.next();return On||this.lex()},begin:function(On){this.conditionStack.push(On)},popState:function(){var On=this.conditionStack.length-1;return On>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(On){return On=this.conditionStack.length-1-Math.abs(On||0),On>=0?this.conditionStack[On]:"INITIAL"},pushState:function(On){this.begin(On)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(On,Rn,zn,Ct){switch(zn){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 mo}();wi.lexer=ia;function Hs(){this.yy={}}return Hs.prototype=wi,wi.Parser=Hs,new Hs}();Vve.parser=Vve;const TKe=Vve,EKe=["#","+","~","-",""];class CKe{constructor(a,u){this.memberType=u,this.visibility="",this.classifier="";const d=bh(a,qt());this.parseMember(d)}getDisplayDetails(){let a=this.visibility+JF(this.id);this.memberType==="method"&&(a+=`(${JF(this.parameters.trim())})`,this.returnType&&(a+=" : "+JF(this.returnType))),a=a.trim();const u=this.parseClassifier();return{displayText:a,cssStyle:u}}parseMember(a){let u="";if(this.memberType==="method"){const d=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/,p=a.match(d);if(p){const v=p[1]?p[1].trim():"";if(EKe.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=a.length,p=a.substring(0,1),v=a.substring(d-1);EKe.includes(p)&&(this.visibility=p),v.match(/[$*]/)&&(u=v),this.id=a.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 DJ="classId-";let Gve=[],xh={},IJ=[],SKe=0,$9={},Kve=0,tj=[];const nS=i=>oi.sanitizeText(i,qt()),rS=function(i){const a=oi.sanitizeText(i,qt());let u="",d=a;if(a.indexOf("~")>0){const p=a.split("~");d=nS(p[0]),u=nS(p[1])}return{className:d,type:u}},Uin=function(i,a){const u=oi.sanitizeText(i,qt());a&&(a=nS(a));const{className:d}=rS(u);xh[d].label=a},OJ=function(i){const a=oi.sanitizeText(i,qt()),{className:u,type:d}=rS(a);if(Object.hasOwn(xh,u))return;const p=oi.sanitizeText(u,qt());xh[p]={id:p,type:d,label:p,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:DJ+p+"-"+SKe},SKe++},_Ke=function(i){const a=oi.sanitizeText(i,qt());if(a in xh)return xh[a].domId;throw new Error("Class not found: "+a)},Vin=function(){Gve=[],xh={},IJ=[],tj=[],tj.push(LKe),$9={},Kve=0,Rg()},Gin=function(i){return xh[i]},Kin=function(){return xh},Win=function(){return Gve},Yin=function(){return IJ},Xin=function(i){Xe.debug("Adding relation: "+JSON.stringify(i)),OJ(i.id1),OJ(i.id2),i.id1=rS(i.id1).className,i.id2=rS(i.id2).className,i.relationTitle1=oi.sanitizeText(i.relationTitle1.trim(),qt()),i.relationTitle2=oi.sanitizeText(i.relationTitle2.trim(),qt()),Gve.push(i)},Qin=function(i,a){const u=rS(i).className;xh[u].annotations.push(a)},AKe=function(i,a){OJ(i);const u=rS(i).className,d=xh[u];if(typeof a=="string"){const p=a.trim();p.startsWith("<<")&&p.endsWith(">>")?d.annotations.push(nS(p.substring(2,p.length-2))):p.indexOf(")")>0?d.methods.push(new CKe(p,"method")):p&&d.members.push(new CKe(p,"attribute"))}},Jin=function(i,a){Array.isArray(a)&&(a.reverse(),a.forEach(u=>AKe(i,u)))},Zin=function(i,a){const u={id:`note${IJ.length}`,class:a,text:i};IJ.push(u)},esn=function(i){return i.startsWith(":")&&(i=i.substring(1)),nS(i.trim())},Wve=function(i,a){i.split(",").forEach(function(u){let d=u;u[0].match(/\d/)&&(d=DJ+d),xh[d]!==void 0&&xh[d].cssClasses.push(a)})},tsn=function(i,a){i.split(",").forEach(function(u){a!==void 0&&(xh[u].tooltip=nS(a))})},nsn=function(i,a){return a?$9[a].classes[i].tooltip:xh[i].tooltip},rsn=function(i,a,u){const d=qt();i.split(",").forEach(function(p){let v=p;p[0].match(/\d/)&&(v=DJ+v),xh[v]!==void 0&&(xh[v].link=So.formatUrl(a,d),d.securityLevel==="sandbox"?xh[v].linkTarget="_top":typeof u=="string"?xh[v].linkTarget=nS(u):xh[v].linkTarget="_blank")}),Wve(i,"clickable")},isn=function(i,a,u){i.split(",").forEach(function(d){ssn(d,a,u),xh[d].haveCallback=!0}),Wve(i,"clickable")},ssn=function(i,a,u){const d=oi.sanitizeText(i,qt());if(qt().securityLevel!=="loose"||a===void 0)return;const v=d;if(xh[v]!==void 0){const b=_Ke(v);let y=[];if(typeof u=="string"){y=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let E=0;E<y.length;E++){let _=y[E].trim();_.charAt(0)==='"'&&_.charAt(_.length-1)==='"'&&(_=_.substr(1,_.length-2)),y[E]=_}}y.length===0&&y.push(b),tj.push(function(){const E=document.querySelector(`[id="${b}"]`);E!==null&&E.addEventListener("click",function(){So.runFunc(a,...y)},!1)})}},asn=function(i){tj.forEach(function(a){a(i)})},osn={LINE:0,DOTTED_LINE:1},csn={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},LKe=function(i){let a=Dr(".mermaidTooltip");(a._groups||a)[0][0]===null&&(a=Dr("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),Dr(i).select("svg").selectAll("g.node").on("mouseover",function(){const p=Dr(this);if(p.attr("title")===null)return;const b=this.getBoundingClientRect();a.transition().duration(200).style("opacity",".9"),a.text(p.attr("title")).style("left",window.scrollX+b.left+(b.right-b.left)/2+"px").style("top",window.scrollY+b.top-14+document.body.scrollTop+"px"),a.html(a.html().replace(/<br\/>/g,"<br/>")),p.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),Dr(this).classed("hover",!1)})};tj.push(LKe);let MKe="TB";const NJ={setAccTitle:jg,getAccTitle:Mp,getAccDescription:Ip,setAccDescription:Dp,getConfig:()=>qt().class,addClass:OJ,bindFunctions:asn,clear:Vin,getClass:Gin,getClasses:Kin,getNotes:Yin,addAnnotation:Qin,addNote:Zin,getRelations:Win,addRelation:Xin,getDirection:()=>MKe,setDirection:i=>{MKe=i},addMember:AKe,addMembers:Jin,cleanupLabel:esn,lineType:osn,relationType:csn,setClickEvent:isn,setCssClass:Wve,setLink:rsn,getTooltip:nsn,setTooltip:tsn,lookUpDomId:_Ke,setDiagramTitle:pm,getDiagramTitle:Op,setClassLabel:Uin,addNamespace:function(i){$9[i]===void 0&&($9[i]={id:i,classes:{},children:{},domId:DJ+i+"-"+Kve},Kve++)},addClassesToNamespace:function(i,a){if($9[i]!==void 0)for(const u of a){const{className:d}=rS(u);xh[d].parent=i,$9[i].classes[d]=xh[d]}},getNamespace:function(i){return $9[i]},getNamespaces:function(){return $9},setCssStyle:function(i,a){const u=xh[i];if(!(!a||!u))for(const d of a)d.includes(",")?u.styles.push(...d.split(",")):u.styles.push(d)}},DKe=i=>`g.classGroup text {1095 fill: ${i.nodeBorder||i.classText};1096 stroke: none;1097 font-family: ${i.fontFamily};1098 font-size: 10px;1099 1100 .title {1101 font-weight: bolder;1102 }1103 1104}1105 1106.nodeLabel, .edgeLabel {1107 color: ${i.classText};1108}1109.edgeLabel .label rect {1110 fill: ${i.mainBkg};1111}1112.label text {1113 fill: ${i.classText};1114}1115.edgeLabel .label span {1116 background: ${i.mainBkg};1117}1118 1119.classTitle {1120 font-weight: bolder;1121}1122.node rect,1123 .node circle,1124 .node ellipse,1125 .node polygon,1126 .node path {1127 fill: ${i.mainBkg};1128 stroke: ${i.nodeBorder};1129 stroke-width: 1px;1130 }1131 1132 1133.divider {1134 stroke: ${i.nodeBorder};1135 stroke-width: 1;1136}1137 1138g.clickable {1139 cursor: pointer;1140}1141 1142g.classGroup rect {1143 fill: ${i.mainBkg};1144 stroke: ${i.nodeBorder};1145}1146 1147g.classGroup line {1148 stroke: ${i.nodeBorder};1149 stroke-width: 1;1150}1151 1152.classLabel .box {1153 stroke: none;1154 stroke-width: 0;1155 fill: ${i.mainBkg};1156 opacity: 0.5;1157}1158 1159.classLabel .label {1160 fill: ${i.nodeBorder};1161 font-size: 10px;1162}1163 1164.relation {1165 stroke: ${i.lineColor};1166 stroke-width: 1;1167 fill: none;1168}1169 1170.dashed-line{1171 stroke-dasharray: 3;1172}1173 1174.dotted-line{1175 stroke-dasharray: 1 2;1176}1177 1178#compositionStart, .composition {1179 fill: ${i.lineColor} !important;1180 stroke: ${i.lineColor} !important;1181 stroke-width: 1;1182}1183 1184#compositionEnd, .composition {1185 fill: ${i.lineColor} !important;1186 stroke: ${i.lineColor} !important;1187 stroke-width: 1;1188}1189 1190#dependencyStart, .dependency {1191 fill: ${i.lineColor} !important;1192 stroke: ${i.lineColor} !important;1193 stroke-width: 1;1194}1195 1196#dependencyStart, .dependency {1197 fill: ${i.lineColor} !important;1198 stroke: ${i.lineColor} !important;1199 stroke-width: 1;1200}